diff --git a/Makefile.in b/Makefile.in index 2660f660..c5dee90c 100644 --- a/Makefile.in +++ b/Makefile.in @@ -1,8 +1,8 @@ -# Makefile.in generated by automake 1.10.1 from Makefile.am. +# Makefile.in generated by automake 1.10 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006 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. @@ -372,8 +372,8 @@ ID: $(HEADERS) $(SOURCES) $(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; nonemtpy = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ mkid -fID $$unique tags: TAGS @@ -398,8 +398,8 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \ 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; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ @@ -409,12 +409,13 @@ ctags: CTAGS CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ + here=`pwd`; \ list='$(SOURCES) $(HEADERS) config.h.in $(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; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ test -z "$(CTAGS_ARGS)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique @@ -485,10 +486,6 @@ 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-tarZ: distdir tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z $(am__remove_distdir) @@ -515,8 +512,6 @@ distcheck: dist GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\ *.tar.bz2*) \ bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\ - *.tar.lzma*) \ - unlzma -c $(distdir).tar.lzma | $(am__untar) ;;\ *.tar.Z*) \ uncompress -c $(distdir).tar.Z | $(am__untar) ;;\ *.shar.gz*) \ @@ -668,8 +663,8 @@ uninstall-am: .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ all all-am am--refresh check check-am clean clean-generic \ clean-libtool ctags ctags-recursive dist dist-all dist-bzip2 \ - dist-gzip dist-lzma dist-shar dist-tarZ dist-zip distcheck \ - distclean distclean-generic distclean-hdr distclean-libtool \ + dist-gzip dist-shar dist-tarZ 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 \ diff --git a/aclocal.m4 b/aclocal.m4 index f8967a17..26ae5db8 100644 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -1,7 +1,7 @@ -# generated automatically by aclocal 1.10.1 -*- Autoconf -*- +# generated automatically by aclocal 1.10 -*- Autoconf -*- # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, -# 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# 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. @@ -11,15 +11,6648 @@ # 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(AC_AUTOCONF_VERSION, [2.63],, -[m4_warning([this file was generated for autoconf 2.63. -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'.])]) +m4_if(m4_PACKAGE_VERSION, [2.63],, +[m4_fatal([this file was generated for autoconf 2.63. +You have another version of autoconf. If you want to use that, +you should regenerate the build system entirely.], [63])]) -# Copyright (C) 2002, 2003, 2005, 2006, 2007 Free Software Foundation, Inc. +# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- + +# serial 52 AC_PROG_LIBTOOL + + +# AC_PROVIDE_IFELSE(MACRO-NAME, IF-PROVIDED, IF-NOT-PROVIDED) +# ----------------------------------------------------------- +# If this macro is not defined by Autoconf, define it here. +m4_ifdef([AC_PROVIDE_IFELSE], + [], + [m4_define([AC_PROVIDE_IFELSE], + [m4_ifdef([AC_PROVIDE_$1], + [$2], [$3])])]) + + +# AC_PROG_LIBTOOL +# --------------- +AC_DEFUN([AC_PROG_LIBTOOL], +[AC_REQUIRE([_AC_PROG_LIBTOOL])dnl +dnl If AC_PROG_CXX has already been expanded, run AC_LIBTOOL_CXX +dnl immediately, otherwise, hook it in at the end of AC_PROG_CXX. + AC_PROVIDE_IFELSE([AC_PROG_CXX], + [AC_LIBTOOL_CXX], + [define([AC_PROG_CXX], defn([AC_PROG_CXX])[AC_LIBTOOL_CXX + ])]) +dnl And a similar setup for Fortran 77 support + AC_PROVIDE_IFELSE([AC_PROG_F77], + [AC_LIBTOOL_F77], + [define([AC_PROG_F77], defn([AC_PROG_F77])[AC_LIBTOOL_F77 +])]) + +dnl Quote A][M_PROG_GCJ so that aclocal doesn't bring it in needlessly. +dnl If either AC_PROG_GCJ or A][M_PROG_GCJ have already been expanded, run +dnl AC_LIBTOOL_GCJ immediately, otherwise, hook it in at the end of both. + AC_PROVIDE_IFELSE([AC_PROG_GCJ], + [AC_LIBTOOL_GCJ], + [AC_PROVIDE_IFELSE([A][M_PROG_GCJ], + [AC_LIBTOOL_GCJ], + [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ], + [AC_LIBTOOL_GCJ], + [ifdef([AC_PROG_GCJ], + [define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[AC_LIBTOOL_GCJ])]) + ifdef([A][M_PROG_GCJ], + [define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[AC_LIBTOOL_GCJ])]) + ifdef([LT_AC_PROG_GCJ], + [define([LT_AC_PROG_GCJ], + defn([LT_AC_PROG_GCJ])[AC_LIBTOOL_GCJ])])])]) +])])# AC_PROG_LIBTOOL + + +# _AC_PROG_LIBTOOL +# ---------------- +AC_DEFUN([_AC_PROG_LIBTOOL], +[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl +AC_BEFORE([$0],[AC_LIBTOOL_CXX])dnl +AC_BEFORE([$0],[AC_LIBTOOL_F77])dnl +AC_BEFORE([$0],[AC_LIBTOOL_GCJ])dnl + +# This can be used to rebuild libtool when needed +LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh" + +# Always use our own libtool. +LIBTOOL='$(SHELL) $(top_builddir)/libtool' +AC_SUBST(LIBTOOL)dnl + +# Prevent multiple expansion +define([AC_PROG_LIBTOOL], []) +])# _AC_PROG_LIBTOOL + + +# AC_LIBTOOL_SETUP +# ---------------- +AC_DEFUN([AC_LIBTOOL_SETUP], +[AC_PREREQ(2.50)dnl +AC_REQUIRE([AC_ENABLE_SHARED])dnl +AC_REQUIRE([AC_ENABLE_STATIC])dnl +AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl +AC_REQUIRE([AC_CANONICAL_HOST])dnl +AC_REQUIRE([AC_CANONICAL_BUILD])dnl +AC_REQUIRE([AC_PROG_CC])dnl +AC_REQUIRE([AC_PROG_LD])dnl +AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl +AC_REQUIRE([AC_PROG_NM])dnl + +AC_REQUIRE([AC_PROG_LN_S])dnl +AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl +# Autoconf 2.13's AC_OBJEXT and AC_EXEEXT macros only works for C compilers! +AC_REQUIRE([AC_OBJEXT])dnl +AC_REQUIRE([AC_EXEEXT])dnl +dnl +AC_LIBTOOL_SYS_MAX_CMD_LEN +AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE +AC_LIBTOOL_OBJDIR + +AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl +_LT_AC_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. +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'] + +# 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 avoid accidental globbing in evaled expressions +no_glob_subst='s/\*/\\\*/g' + +# Constants: +rm="rm -f" + +# Global variables: +default_ofile=libtool +can_build_shared=yes + +# All known linkers require a `.a' archive for static linking (except MSVC, +# which needs '.lib'). +libext=a +ltmain="$ac_aux_dir/ltmain.sh" +ofile="$default_ofile" +with_gnu_ld="$lt_cv_prog_gnu_ld" + +AC_CHECK_TOOL(AR, ar, false) +AC_CHECK_TOOL(RANLIB, ranlib, :) +AC_CHECK_TOOL(STRIP, strip, :) + +old_CC="$CC" +old_CFLAGS="$CFLAGS" + +# Set sane defaults for various variables +test -z "$AR" && AR=ar +test -z "$AR_FLAGS" && AR_FLAGS=cru +test -z "$AS" && AS=as +test -z "$CC" && CC=cc +test -z "$LTCC" && LTCC=$CC +test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS +test -z "$DLLTOOL" && DLLTOOL=dlltool +test -z "$LD" && LD=ld +test -z "$LN_S" && LN_S="ln -s" +test -z "$MAGIC_CMD" && MAGIC_CMD=file +test -z "$NM" && NM=nm +test -z "$SED" && SED=sed +test -z "$OBJDUMP" && OBJDUMP=objdump +test -z "$RANLIB" && RANLIB=: +test -z "$STRIP" && STRIP=: +test -z "$ac_objext" && ac_objext=o + +# 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_CC_BASENAME([$compiler]) + +# Only perform the check for file, if the check method requires it +case $deplibs_check_method in +file_magic*) + if test "$file_magic_cmd" = '$MAGIC_CMD'; then + AC_PATH_MAGIC + fi + ;; +esac + +_LT_REQUIRED_DARWIN_CHECKS + +AC_PROVIDE_IFELSE([AC_LIBTOOL_DLOPEN], enable_dlopen=yes, enable_dlopen=no) +AC_PROVIDE_IFELSE([AC_LIBTOOL_WIN32_DLL], +enable_win32_dll=yes, enable_win32_dll=no) + +AC_ARG_ENABLE([libtool-lock], + [AC_HELP_STRING([--disable-libtool-lock], + [avoid locking (might break parallel builds)])]) +test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes + +AC_ARG_WITH([pic], + [AC_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=default + +# Use C for the default configuration in the libtool script +tagname= +AC_LIBTOOL_LANG_C_CONFIG +_LT_AC_TAGCONFIG +])# AC_LIBTOOL_SETUP + + +# _LT_AC_SYS_COMPILER +# ------------------- +AC_DEFUN([_LT_AC_SYS_COMPILER], +[AC_REQUIRE([AC_PROG_CC])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_AC_SYS_COMPILER + + +# _LT_CC_BASENAME(CC) +# ------------------- +# Calculate cc_basename. Skip known compiler wrappers and cross-prefix. +AC_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_COMPILER_BOILERPLATE +# ------------------------ +# Check for compiler boilerplate output or warnings with +# the simple compiler test code. +AC_DEFUN([_LT_COMPILER_BOILERPLATE], +[AC_REQUIRE([LT_AC_PROG_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. +AC_DEFUN([_LT_LINKER_BOILERPLATE], +[AC_REQUIRE([LT_AC_PROG_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 +# -------------------------- +# Check for some things on darwin +AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS],[ + case $host_os in + rhapsody* | darwin*) + AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:]) + AC_CHECK_TOOL([NMEDIT], [nmedit], [:]) + + 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. + echo "int foo(void){return 1;}" > conftest.c + $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ + -dynamiclib ${wl}-single_module conftest.c + if test -f libconftest.dylib; then + lt_cv_apple_cc_single_mod=yes + rm -rf libconftest.dylib* + fi + rm conftest.c + 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.[[0123]]) + _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;; + darwin1.*) + _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; + darwin*) + # 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_AC_SYS_LIBPATH_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. +AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX], +[AC_REQUIRE([LT_AC_PROG_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_AC_SYS_LIBPATH_AIX + + +# _LT_AC_SHELL_INIT(ARG) +# ---------------------- +AC_DEFUN([_LT_AC_SHELL_INIT], +[ifdef([AC_DIVERSION_NOTICE], + [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)], + [AC_DIVERT_PUSH(NOTICE)]) +$1 +AC_DIVERT_POP +])# _LT_AC_SHELL_INIT + + +# _LT_AC_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. +AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH], +[_LT_AC_SHELL_INIT([ +# Check that we are running under the correct shell. +SHELL=${CONFIG_SHELL-/bin/sh} + +case X$ECHO in +X*--fallback-echo) + # Remove one level of quotation (which was required for Make). + ECHO=`echo "$ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','` + ;; +esac + +echo=${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 </dev/null 2>&1 && unset CDPATH + +if test -z "$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 && + echo_test_string=`eval $cmd` && + (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. +ECHO=$echo +if test "X$ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then + ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo" +fi + +AC_SUBST(ECHO) +])])# _LT_AC_PROG_ECHO_BACKSLASH + + +# _LT_AC_LOCK +# ----------- +AC_DEFUN([_LT_AC_LOCK], +[AC_ARG_ENABLE([libtool-lock], + [AC_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*|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*) + 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_TRY_LINK([],[],[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* + ;; + +AC_PROVIDE_IFELSE([AC_LIBTOOL_WIN32_DLL], +[*-*-cygwin* | *-*-mingw* | *-*-pw32*) + AC_CHECK_TOOL(DLLTOOL, dlltool, false) + AC_CHECK_TOOL(AS, as, false) + AC_CHECK_TOOL(OBJDUMP, objdump, false) + ;; + ]) +esac + +need_locks="$enable_libtool_lock" + +])# _LT_AC_LOCK + + +# AC_LIBTOOL_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, +# [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE]) +# ---------------------------------------------------------------- +# Check whether the given compiler option works +AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], +[AC_REQUIRE([LT_AC_PROG_SED]) +AC_CACHE_CHECK([$1], [$2], + [$2=no + ifelse([$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 + ifelse([$5], , :, [$5]) +else + ifelse([$6], , :, [$6]) +fi +])# AC_LIBTOOL_COMPILER_OPTION + + +# AC_LIBTOOL_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, +# [ACTION-SUCCESS], [ACTION-FAILURE]) +# ------------------------------------------------------------ +# Check whether the given compiler option works +AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], +[AC_REQUIRE([LT_AC_PROG_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 + ifelse([$4], , :, [$4]) +else + ifelse([$5], , :, [$5]) +fi +])# AC_LIBTOOL_LINKER_OPTION + + +# AC_LIBTOOL_SYS_MAX_CMD_LEN +# -------------------------- +AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], +[# 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*) + # 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 + SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}} + while (test "X"`$SHELL [$]0 --fallback-echo "X$teststring" 2>/dev/null` \ + = "XX$teststring") >/dev/null 2>&1 && + new_result=`expr "X$teststring" : ".*" 2>&1` && + lt_cv_sys_max_cmd_len=$new_result && + test $i != 17 # 1/2 MB should be enough + do + i=`expr $i + 1` + teststring=$teststring$teststring + done + 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 +])# AC_LIBTOOL_SYS_MAX_CMD_LEN + + +# _LT_AC_CHECK_DLFCN +# ------------------ +AC_DEFUN([_LT_AC_CHECK_DLFCN], +[AC_CHECK_HEADERS(dlfcn.h)dnl +])# _LT_AC_CHECK_DLFCN + + +# _LT_AC_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE, +# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING) +# --------------------------------------------------------------------- +AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF], +[AC_REQUIRE([_LT_AC_CHECK_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 < +#endif + +#include + +#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 + +#ifdef __cplusplus +extern "C" void exit (int); +#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 ()); + + exit (status); +}] +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_AC_TRY_DLOPEN_SELF + + +# AC_LIBTOOL_DLOPEN_SELF +# ---------------------- +AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], +[AC_REQUIRE([_LT_AC_CHECK_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*) + 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_AC_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_AC_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 +])# AC_LIBTOOL_DLOPEN_SELF + + +# AC_LIBTOOL_PROG_CC_C_O([TAGNAME]) +# --------------------------------- +# Check to see if options -c and -o are simultaneously supported by compiler +AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O], +[AC_REQUIRE([LT_AC_PROG_SED])dnl +AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl +AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext], + [_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)], + [_LT_AC_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_AC_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 .. + rmdir conftest + $rm conftest* +]) +])# AC_LIBTOOL_PROG_CC_C_O + + +# AC_LIBTOOL_SYS_HARD_LINK_LOCKS([TAGNAME]) +# ----------------------------------------- +# Check to see if we can do hard links to lock some files if needed +AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], +[AC_REQUIRE([_LT_AC_LOCK])dnl + +hard_links="nottested" +if test "$_LT_AC_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 +])# AC_LIBTOOL_SYS_HARD_LINK_LOCKS + + +# AC_LIBTOOL_OBJDIR +# ----------------- +AC_DEFUN([AC_LIBTOOL_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 +])# AC_LIBTOOL_OBJDIR + + +# AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH([TAGNAME]) +# ---------------------------------------------- +# Check hardcoding attributes. +AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], +[AC_MSG_CHECKING([how to hardcode library paths into programs]) +_LT_AC_TAGVAR(hardcode_action, $1)= +if test -n "$_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)" || \ + test -n "$_LT_AC_TAGVAR(runpath_var, $1)" || \ + test "X$_LT_AC_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then + + # We can hardcode non-existant directories. + if test "$_LT_AC_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_AC_TAGVAR(hardcode_shlibpath_var, $1)" != no && + test "$_LT_AC_TAGVAR(hardcode_minus_L, $1)" != no; then + # Linking always hardcodes the temporary library directory. + _LT_AC_TAGVAR(hardcode_action, $1)=relink + else + # We can link without hardcoding, and we can hardcode nonexisting dirs. + _LT_AC_TAGVAR(hardcode_action, $1)=immediate + fi +else + # We cannot hardcode anything, or else we can only hardcode existing + # directories. + _LT_AC_TAGVAR(hardcode_action, $1)=unsupported +fi +AC_MSG_RESULT([$_LT_AC_TAGVAR(hardcode_action, $1)]) + +if test "$_LT_AC_TAGVAR(hardcode_action, $1)" = relink; 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 +])# AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH + + +# AC_LIBTOOL_SYS_LIB_STRIP +# ------------------------ +AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP], +[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 +])# AC_LIBTOOL_SYS_LIB_STRIP + + +# AC_LIBTOOL_SYS_DYNAMIC_LINKER +# ----------------------------- +# PORTME Fill in your ld.so characteristics +AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER], +[AC_REQUIRE([LT_AC_PROG_SED])dnl +AC_MSG_CHECKING([dynamic linker characteristics]) +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" +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]) +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.so + # instead of lib.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*) + 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' + ;; + +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*) + version_type=windows + shrext_cmds=".dll" + need_version=no + need_lib_prefix=no + + case $GCC,$host_os in + yes,cygwin* | yes,mingw* | yes,pw32*) + 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' + 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*) + # 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}${versuffix}$shared_ext ${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) + 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 + # 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' + ;; + +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=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 + ;; + +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 + export_dynamic_flag_spec='${wl}-Blargedynsym' + 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 + 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' + shlibpath_overrides_runpath=no + else + sys_lib_search_path_spec='/usr/ccs/lib /usr/lib' + shlibpath_overrides_runpath=yes + 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' + ;; + +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 + +AC_CACHE_VAL([lt_cv_sys_lib_search_path_spec], +[lt_cv_sys_lib_search_path_spec="$sys_lib_search_path_spec"]) +sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec" +AC_CACHE_VAL([lt_cv_sys_lib_dlsearch_path_spec], +[lt_cv_sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec"]) +sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec" + +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 +])# AC_LIBTOOL_SYS_DYNAMIC_LINKER + + +# _LT_AC_TAGCONFIG +# ---------------- +AC_DEFUN([_LT_AC_TAGCONFIG], +[AC_REQUIRE([LT_AC_PROG_SED])dnl +AC_ARG_WITH([tags], + [AC_HELP_STRING([--with-tags@<:@=TAGS@:>@], + [include additional configurations @<:@automatic@:>@])], + [tagnames="$withval"]) + +if test -f "$ltmain" && test -n "$tagnames"; then + if test ! -f "${ofile}"; then + AC_MSG_WARN([output file `$ofile' does not exist]) + fi + + if test -z "$LTCC"; then + eval "`$SHELL ${ofile} --config | grep '^LTCC='`" + if test -z "$LTCC"; then + AC_MSG_WARN([output file `$ofile' does not look like a libtool script]) + else + AC_MSG_WARN([using `LTCC=$LTCC', extracted from `$ofile']) + fi + fi + if test -z "$LTCFLAGS"; then + eval "`$SHELL ${ofile} --config | grep '^LTCFLAGS='`" + fi + + # Extract list of available tagged configurations in $ofile. + # Note that this assumes the entire list is on one line. + available_tags=`grep "^available_tags=" "${ofile}" | $SED -e 's/available_tags=\(.*$\)/\1/' -e 's/\"//g'` + + lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + for tagname in $tagnames; do + IFS="$lt_save_ifs" + # Check whether tagname contains only valid characters + case `$echo "X$tagname" | $Xsed -e 's:[[-_ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890,/]]::g'` in + "") ;; + *) AC_MSG_ERROR([invalid tag name: $tagname]) + ;; + esac + + if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "${ofile}" > /dev/null + then + AC_MSG_ERROR([tag name \"$tagname\" already exists]) + fi + + # Update the list of available tags. + if test -n "$tagname"; then + echo appending configuration tag \"$tagname\" to $ofile + + case $tagname in + 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_LIBTOOL_LANG_CXX_CONFIG + else + tagname="" + fi + ;; + + F77) + if test -n "$F77" && test "X$F77" != "Xno"; then + AC_LIBTOOL_LANG_F77_CONFIG + else + tagname="" + fi + ;; + + GCJ) + if test -n "$GCJ" && test "X$GCJ" != "Xno"; then + AC_LIBTOOL_LANG_GCJ_CONFIG + else + tagname="" + fi + ;; + + RC) + AC_LIBTOOL_LANG_RC_CONFIG + ;; + + *) + AC_MSG_ERROR([Unsupported tag name: $tagname]) + ;; + esac + + # Append the new tag name to the list of available tags. + if test -n "$tagname" ; then + available_tags="$available_tags $tagname" + fi + fi + done + IFS="$lt_save_ifs" + + # Now substitute the updated list of available tags. + if eval "sed -e 's/^available_tags=.*\$/available_tags=\"$available_tags\"/' \"$ofile\" > \"${ofile}T\""; then + mv "${ofile}T" "$ofile" + chmod +x "$ofile" + else + rm -f "${ofile}T" + AC_MSG_ERROR([unable to update list of available tagged configurations.]) + fi +fi +])# _LT_AC_TAGCONFIG + + +# AC_LIBTOOL_DLOPEN +# ----------------- +# enable checks for dlopen support +AC_DEFUN([AC_LIBTOOL_DLOPEN], + [AC_BEFORE([$0],[AC_LIBTOOL_SETUP]) +])# AC_LIBTOOL_DLOPEN + + +# AC_LIBTOOL_WIN32_DLL +# -------------------- +# declare package support for building win32 DLLs +AC_DEFUN([AC_LIBTOOL_WIN32_DLL], +[AC_BEFORE([$0], [AC_LIBTOOL_SETUP]) +])# AC_LIBTOOL_WIN32_DLL + + +# AC_ENABLE_SHARED([DEFAULT]) +# --------------------------- +# implement the --enable-shared flag +# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. +AC_DEFUN([AC_ENABLE_SHARED], +[define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl +AC_ARG_ENABLE([shared], + [AC_HELP_STRING([--enable-shared@<:@=PKGS@:>@], + [build shared libraries @<:@default=]AC_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=]AC_ENABLE_SHARED_DEFAULT) +])# AC_ENABLE_SHARED + + +# AC_DISABLE_SHARED +# ----------------- +# set the default shared flag to --disable-shared +AC_DEFUN([AC_DISABLE_SHARED], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +AC_ENABLE_SHARED(no) +])# AC_DISABLE_SHARED + + +# AC_ENABLE_STATIC([DEFAULT]) +# --------------------------- +# implement the --enable-static flag +# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. +AC_DEFUN([AC_ENABLE_STATIC], +[define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl +AC_ARG_ENABLE([static], + [AC_HELP_STRING([--enable-static@<:@=PKGS@:>@], + [build static libraries @<:@default=]AC_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=]AC_ENABLE_STATIC_DEFAULT) +])# AC_ENABLE_STATIC + + +# AC_DISABLE_STATIC +# ----------------- +# set the default static flag to --disable-static +AC_DEFUN([AC_DISABLE_STATIC], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +AC_ENABLE_STATIC(no) +])# AC_DISABLE_STATIC + + +# AC_ENABLE_FAST_INSTALL([DEFAULT]) +# --------------------------------- +# implement the --enable-fast-install flag +# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. +AC_DEFUN([AC_ENABLE_FAST_INSTALL], +[define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl +AC_ARG_ENABLE([fast-install], + [AC_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@], + [optimize for fast installation @<:@default=]AC_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=]AC_ENABLE_FAST_INSTALL_DEFAULT) +])# AC_ENABLE_FAST_INSTALL + + +# AC_DISABLE_FAST_INSTALL +# ----------------------- +# set the default to --disable-fast-install +AC_DEFUN([AC_DISABLE_FAST_INSTALL], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +AC_ENABLE_FAST_INSTALL(no) +])# AC_DISABLE_FAST_INSTALL + + +# AC_LIBTOOL_PICMODE([MODE]) +# -------------------------- +# implement the --with-pic flag +# MODE is either `yes' or `no'. If omitted, it defaults to `both'. +AC_DEFUN([AC_LIBTOOL_PICMODE], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +pic_mode=ifelse($#,1,$1,default) +])# AC_LIBTOOL_PICMODE + + +# AC_PROG_EGREP +# ------------- +# This is predefined starting with Autoconf 2.54, so this conditional +# definition can be removed once we require Autoconf 2.54 or later. +m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP], +[AC_CACHE_CHECK([for egrep], [ac_cv_prog_egrep], + [if echo a | (grep -E '(a|b)') >/dev/null 2>&1 + then ac_cv_prog_egrep='grep -E' + else ac_cv_prog_egrep='egrep' + fi]) + EGREP=$ac_cv_prog_egrep + AC_SUBST([EGREP]) +])]) + + +# AC_PATH_TOOL_PREFIX +# ------------------- +# find a file program which can recognize shared library +AC_DEFUN([AC_PATH_TOOL_PREFIX], +[AC_REQUIRE([AC_PROG_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="ifelse([$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 <&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@gnu.org + +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 +])# AC_PATH_TOOL_PREFIX + + +# AC_PATH_MAGIC +# ------------- +# find a file program which can recognize a shared library +AC_DEFUN([AC_PATH_MAGIC], +[AC_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 + AC_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH) + else + MAGIC_CMD=: + fi +fi +])# AC_PATH_MAGIC + + +# AC_PROG_LD +# ---------- +# find the pathname to the GNU or non-GNU linker +AC_DEFUN([AC_PROG_LD], +[AC_ARG_WITH([gnu-ld], + [AC_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]) +AC_REQUIRE([LT_AC_PROG_SED])dnl +AC_REQUIRE([AC_PROG_CC])dnl +AC_REQUIRE([AC_CANONICAL_HOST])dnl +AC_REQUIRE([AC_CANONICAL_BUILD])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 &1 /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 + ;; + +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) + lt_cv_deplibs_check_method=pass_all + ;; + +netbsd*) + 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=unknown + ;; + +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 + ;; + +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 + ;; + +sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) + 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 +])# AC_DEPLIBS_CHECK_METHOD + + +# AC_PROG_NM +# ---------- +# find the pathname to a BSD-compatible name lister +AC_DEFUN([AC_PROG_NM], +[AC_CACHE_CHECK([for BSD-compatible 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 + test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm +fi]) +NM="$lt_cv_path_NM" +])# AC_PROG_NM + + +# AC_CHECK_LIBM +# ------------- +# check for math library +AC_DEFUN([AC_CHECK_LIBM], +[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_CHECK_LIBM + + +# AC_LIBLTDL_CONVENIENCE([DIRECTORY]) +# ----------------------------------- +# sets LIBLTDL to the link flags for the libltdl convenience library and +# LTDLINCL to the include flags for the libltdl header and adds +# --enable-ltdl-convenience to the configure arguments. Note that +# AC_CONFIG_SUBDIRS is not called here. If DIRECTORY is not provided, +# it is assumed to be `libltdl'. LIBLTDL will be prefixed with +# '${top_builddir}/' and LTDLINCL will be prefixed with '${top_srcdir}/' +# (note the single quotes!). If your package is not flat and you're not +# using automake, define top_builddir and top_srcdir appropriately in +# the Makefiles. +AC_DEFUN([AC_LIBLTDL_CONVENIENCE], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl + case $enable_ltdl_convenience in + no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;; + "") enable_ltdl_convenience=yes + ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;; + esac + LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la + LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) + # For backwards non-gettext consistent compatibility... + INCLTDL="$LTDLINCL" +])# AC_LIBLTDL_CONVENIENCE + + +# AC_LIBLTDL_INSTALLABLE([DIRECTORY]) +# ----------------------------------- +# sets LIBLTDL to the link flags for the libltdl installable library and +# LTDLINCL to the include flags for the libltdl header and adds +# --enable-ltdl-install to the configure arguments. Note that +# AC_CONFIG_SUBDIRS is not called here. If DIRECTORY is not provided, +# and an installed libltdl is not found, it is assumed to be `libltdl'. +# LIBLTDL will be prefixed with '${top_builddir}/'# and LTDLINCL with +# '${top_srcdir}/' (note the single quotes!). If your package is not +# flat and you're not using automake, define top_builddir and top_srcdir +# appropriately in the Makefiles. +# In the future, this macro may have to be called after AC_PROG_LIBTOOL. +AC_DEFUN([AC_LIBLTDL_INSTALLABLE], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl + AC_CHECK_LIB(ltdl, lt_dlinit, + [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no], + [if test x"$enable_ltdl_install" = xno; then + AC_MSG_WARN([libltdl not installed, but installation disabled]) + else + enable_ltdl_install=yes + fi + ]) + if test x"$enable_ltdl_install" = x"yes"; then + ac_configure_args="$ac_configure_args --enable-ltdl-install" + LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la + LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) + else + ac_configure_args="$ac_configure_args --enable-ltdl-install=no" + LIBLTDL="-lltdl" + LTDLINCL= + fi + # For backwards non-gettext consistent compatibility... + INCLTDL="$LTDLINCL" +])# AC_LIBLTDL_INSTALLABLE + + +# AC_LIBTOOL_CXX +# -------------- +# enable support for C++ libraries +AC_DEFUN([AC_LIBTOOL_CXX], +[AC_REQUIRE([_LT_AC_LANG_CXX]) +])# AC_LIBTOOL_CXX + + +# _LT_AC_LANG_CXX +# --------------- +AC_DEFUN([_LT_AC_LANG_CXX], +[AC_REQUIRE([AC_PROG_CXX]) +AC_REQUIRE([_LT_AC_PROG_CXXCPP]) +_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}CXX]) +])# _LT_AC_LANG_CXX + +# _LT_AC_PROG_CXXCPP +# ------------------ +AC_DEFUN([_LT_AC_PROG_CXXCPP], +[ +AC_REQUIRE([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 +fi +])# _LT_AC_PROG_CXXCPP + +# AC_LIBTOOL_F77 +# -------------- +# enable support for Fortran 77 libraries +AC_DEFUN([AC_LIBTOOL_F77], +[AC_REQUIRE([_LT_AC_LANG_F77]) +])# AC_LIBTOOL_F77 + + +# _LT_AC_LANG_F77 +# --------------- +AC_DEFUN([_LT_AC_LANG_F77], +[AC_REQUIRE([AC_PROG_F77]) +_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}F77]) +])# _LT_AC_LANG_F77 + + +# AC_LIBTOOL_GCJ +# -------------- +# enable support for GCJ libraries +AC_DEFUN([AC_LIBTOOL_GCJ], +[AC_REQUIRE([_LT_AC_LANG_GCJ]) +])# AC_LIBTOOL_GCJ + + +# _LT_AC_LANG_GCJ +# --------------- +AC_DEFUN([_LT_AC_LANG_GCJ], +[AC_PROVIDE_IFELSE([AC_PROG_GCJ],[], + [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],[], + [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ],[], + [ifdef([AC_PROG_GCJ],[AC_REQUIRE([AC_PROG_GCJ])], + [ifdef([A][M_PROG_GCJ],[AC_REQUIRE([A][M_PROG_GCJ])], + [AC_REQUIRE([A][C_PROG_GCJ_OR_A][M_PROG_GCJ])])])])])]) +_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}GCJ]) +])# _LT_AC_LANG_GCJ + + +# AC_LIBTOOL_RC +# ------------- +# enable support for Windows resource files +AC_DEFUN([AC_LIBTOOL_RC], +[AC_REQUIRE([LT_AC_PROG_RC]) +_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}RC]) +])# AC_LIBTOOL_RC + + +# AC_LIBTOOL_LANG_C_CONFIG +# ------------------------ +# Ensure that the configuration vars for the C compiler are +# suitably defined. Those variables are subsequently used by +# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'. +AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG], [_LT_AC_LANG_C_CONFIG]) +AC_DEFUN([_LT_AC_LANG_C_CONFIG], +[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_AC_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_AC_SYS_COMPILER + +# save warnings/boilerplate of simple test code +_LT_COMPILER_BOILERPLATE +_LT_LINKER_BOILERPLATE + +AC_LIBTOOL_PROG_COMPILER_NO_RTTI($1) +AC_LIBTOOL_PROG_COMPILER_PIC($1) +AC_LIBTOOL_PROG_CC_C_O($1) +AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1) +AC_LIBTOOL_PROG_LD_SHLIBS($1) +AC_LIBTOOL_SYS_DYNAMIC_LINKER($1) +AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1) +AC_LIBTOOL_SYS_LIB_STRIP +AC_LIBTOOL_DLOPEN_SELF + +# 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]) + +AC_LIBTOOL_CONFIG($1) + +AC_LANG_POP +CC="$lt_save_CC" +])# AC_LIBTOOL_LANG_C_CONFIG + + +# AC_LIBTOOL_LANG_CXX_CONFIG +# -------------------------- +# Ensure that the configuration vars for the C compiler are +# suitably defined. Those variables are subsequently used by +# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'. +AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG], [_LT_AC_LANG_CXX_CONFIG(CXX)]) +AC_DEFUN([_LT_AC_LANG_CXX_CONFIG], +[AC_LANG_PUSH(C++) +AC_REQUIRE([AC_PROG_CXX]) +AC_REQUIRE([_LT_AC_PROG_CXXCPP]) + +_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no +_LT_AC_TAGVAR(allow_undefined_flag, $1)= +_LT_AC_TAGVAR(always_export_symbols, $1)=no +_LT_AC_TAGVAR(archive_expsym_cmds, $1)= +_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)= +_LT_AC_TAGVAR(hardcode_direct, $1)=no +_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)= +_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= +_LT_AC_TAGVAR(hardcode_libdir_separator, $1)= +_LT_AC_TAGVAR(hardcode_minus_L, $1)=no +_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported +_LT_AC_TAGVAR(hardcode_automatic, $1)=no +_LT_AC_TAGVAR(module_cmds, $1)= +_LT_AC_TAGVAR(module_expsym_cmds, $1)= +_LT_AC_TAGVAR(link_all_deplibs, $1)=unknown +_LT_AC_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds +_LT_AC_TAGVAR(no_undefined_flag, $1)= +_LT_AC_TAGVAR(whole_archive_flag_spec, $1)= +_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=no + +# Dependencies to place before and after the object being linked: +_LT_AC_TAGVAR(predep_objects, $1)= +_LT_AC_TAGVAR(postdep_objects, $1)= +_LT_AC_TAGVAR(predeps, $1)= +_LT_AC_TAGVAR(postdeps, $1)= +_LT_AC_TAGVAR(compiler_lib_search_path, $1)= +_LT_AC_TAGVAR(compiler_lib_search_dirs, $1)= + +# Source file extension for C++ test sources. +ac_ext=cpp + +# Object file extension for compiled C++ test sources. +objext=o +_LT_AC_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(int, char *[[]]) { return(0); }' + +# ltmain only uses $CC for tagged configurations so make sure $CC is set. +_LT_AC_SYS_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_AC_TAGVAR(compiler, $1)=$CC +_LT_CC_BASENAME([$compiler]) + +# We don't want -fno-exception wen compiling C++ code, so set the +# no_builtin_flag separately +if test "$GXX" = yes; then + _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' +else + _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= +fi + +if test "$GXX" = yes; then + # Set up default GNU C++ configuration + + AC_PROG_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_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_AC_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_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir' + _LT_AC_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_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + else + _LT_AC_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_AC_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_AC_TAGVAR(ld_shlibs, $1)=yes +case $host_os in + aix3*) + # FIXME: insert proper C++ library support + _LT_AC_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_AC_TAGVAR(archive_cmds, $1)='' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':' + _LT_AC_TAGVAR(link_all_deplibs, $1)=yes + + 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_AC_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_AC_TAGVAR(hardcode_minus_L, $1)=yes + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_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 + + # It seems that -bexpall does not export symbols beginning with + # underscore (_), so it is better to generate a list of symbols to export. + _LT_AC_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_AC_TAGVAR(allow_undefined_flag, $1)='-berok' + # Determine the default libpath from the value encoded in an empty executable. + _LT_AC_SYS_LIBPATH_AIX + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" + + _LT_AC_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 "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" + else + if test "$host_cpu" = ia64; then + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib' + _LT_AC_TAGVAR(allow_undefined_flag, $1)="-z nodefs" + _LT_AC_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_AC_SYS_LIBPATH_AIX + _LT_AC_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_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok' + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok' + # Exported symbols can be pulled into shared objects from archives + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='$convenience' + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes + # This is similar to how AIX traditionally builds its shared libraries. + _LT_AC_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_AC_TAGVAR(allow_undefined_flag, $1)=unsupported + # Joseph Beckenbach says some releases of gcc + # support --undefined. This deserves some investigation. FIXME + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + else + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + chorus*) + case $cc_basename in + *) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + esac + ;; + + cygwin* | mingw* | pw32*) + # _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, + # as there is no search path for DLLs. + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported + _LT_AC_TAGVAR(always_export_symbols, $1)=no + _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes + + if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then + _LT_AC_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_AC_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_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + darwin* | rhapsody*) + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_AC_TAGVAR(hardcode_direct, $1)=no + _LT_AC_TAGVAR(hardcode_automatic, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='' + _LT_AC_TAGVAR(link_all_deplibs, $1)=yes + _LT_AC_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined" + if test "$GXX" = yes ; then + output_verbose_link_cmd='echo' + _LT_AC_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_AC_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}" + _LT_AC_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_AC_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}" + if test "$lt_cv_apple_cc_single_mod" != "yes"; then + _LT_AC_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_AC_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 + case $cc_basename in + xlc*) + output_verbose_link_cmd='echo' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj ${wl}-single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $xlcverstring' + _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags' + # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj ${wl}-single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $xlcverstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + ;; + *) + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + esac + fi + ;; + + dgux*) + case $cc_basename in + ec++*) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + ghcx*) + # Green Hills C++ Compiler + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + *) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + esac + ;; + freebsd[[12]]*) + # C++ shared libraries reported to be fairly broken before switch to ELF + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + freebsd-elf*) + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no + ;; + freebsd* | dragonfly*) + # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF + # conventions + _LT_AC_TAGVAR(ld_shlibs, $1)=yes + ;; + gnu*) + ;; + hpux9*) + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_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_AC_TAGVAR(ld_shlibs, $1)=no + ;; + aCC*) + _LT_AC_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) | grep "[[-]]L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + ;; + *) + if test "$GXX" = yes; then + _LT_AC_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_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + ;; + hpux10*|hpux11*) + if test $with_gnu_ld = no; then + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + + case $host_cpu in + hppa*64*|ia64*) ;; + *) + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + ;; + esac + fi + case $host_cpu in + hppa*64*|ia64*) + _LT_AC_TAGVAR(hardcode_direct, $1)=no + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + *) + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_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_AC_TAGVAR(ld_shlibs, $1)=no + ;; + aCC*) + case $host_cpu in + hppa*64*) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + ia64*) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + *) + _LT_AC_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 $list' + ;; + *) + if test "$GXX" = yes; then + if test $with_gnu_ld = no; then + case $host_cpu in + hppa*64*) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + ia64*) + _LT_AC_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_AC_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_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + ;; + interix[[3-9]]*) + _LT_AC_TAGVAR(hardcode_direct, $1)=no + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + _LT_AC_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_AC_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_AC_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_AC_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -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_AC_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_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + else + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` -o $lib' + fi + fi + _LT_AC_TAGVAR(link_all_deplibs, $1)=yes + ;; + esac + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + ;; + linux* | k*bsd*-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_AC_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_AC_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 $list' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath,$libdir' + _LT_AC_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_AC_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' + ;; + icpc*) + # 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_AC_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_AC_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_AC_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_AC_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_AC_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive' + ;; + pgCC* | pgcpp*) + # Portland Group C++ compiler + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib' + _LT_AC_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' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir' + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' + _LT_AC_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_AC_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_AC_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_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' + _LT_AC_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 $templist | $SED "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 $list' + ;; + *) + case `$CC -V 2>&1 | sed 5q` in + *Sun\ C*) + # Sun C++ 5.9 + _LT_AC_TAGVAR(no_undefined_flag, $1)=' -zdefs' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + _LT_AC_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_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_AC_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' + + # 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_AC_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs' + ;; + esac + ;; + esac + ;; + lynxos*) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + m88k*) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + mvs*) + case $cc_basename in + cxx*) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + *) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + esac + ;; + netbsd*) + if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags' + wlarc= + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_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::"' + ;; + openbsd2*) + # C++ shared libraries are fairly broken + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + openbsd*) + if test -f /usr/libexec/ld.so; then + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' + _LT_AC_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_AC_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_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + fi + output_verbose_link_cmd='echo' + else + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + osf3*) + 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_AC_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_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + + # Archives containing C++ object files must be created using + # "CC -Bstatic", where "CC" is the KAI C++ compiler. + _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' + + ;; + RCC*) + # Rational C++ 2.4.1 + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + cxx*) + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && echo ${wl}-set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_AC_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 $templist | $SED "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 $list' + ;; + *) + if test "$GXX" = yes && test "$with_gnu_ld" = no; then + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' + _LT_AC_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 ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_AC_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_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + ;; + 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_AC_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_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + + # Archives containing C++ object files must be created using + # the KAI C++ compiler. + _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' + ;; + RCC*) + # Rational C++ 2.4.1 + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + cxx*) + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' + _LT_AC_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 -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib~ + $rm $lib.exp' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' + _LT_AC_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 $templist | $SED "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 $list' + ;; + *) + if test "$GXX" = yes && test "$with_gnu_ld" = no; then + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' + _LT_AC_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` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_AC_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_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + ;; + psos*) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + sunos4*) + case $cc_basename in + CC*) + # Sun C++ 4.x + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + lcc*) + # Lucid + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + *) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + esac + ;; + solaris*) + case $cc_basename in + CC*) + # Sun C++ 4.2, 5.x and Centerline C++ + _LT_AC_TAGVAR(archive_cmds_need_lc,$1)=yes + _LT_AC_TAGVAR(no_undefined_flag, $1)=' -zdefs' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + _LT_AC_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_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_AC_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_AC_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' + ;; + esac + _LT_AC_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_AC_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs' + ;; + gcx*) + # Green Hills C++ Compiler + _LT_AC_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_AC_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_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs' + if $CC --version | grep -v '^2\.7' > /dev/null; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' + _LT_AC_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_AC_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' + _LT_AC_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_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir' + case $host_os in + solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; + *) + _LT_AC_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_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + runpath_var='LD_RUN_PATH' + + case $cc_basename in + CC*) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + *) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_AC_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. + # 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. + # So that behaviour is only enabled if SCOABSPATH is set to a + # non-empty value in the environment. Most likely only useful for + # creating official distributions of packages. + # This is a hack until libtool officially supports absolute path + # names for shared libraries. + _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' + _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs' + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='`test -z "$SCOABSPATH" && echo ${wl}-R,$libdir`' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':' + _LT_AC_TAGVAR(link_all_deplibs, $1)=yes + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport' + runpath_var='LD_RUN_PATH' + + case $cc_basename in + CC*) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + *) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$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_AC_TAGVAR(ld_shlibs, $1)=no + ;; + *) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + esac + ;; + vxworks*) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + *) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; +esac +AC_MSG_RESULT([$_LT_AC_TAGVAR(ld_shlibs, $1)]) +test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no + +_LT_AC_TAGVAR(GCC, $1)="$GXX" +_LT_AC_TAGVAR(LD, $1)="$LD" + +AC_LIBTOOL_POSTDEP_PREDEP($1) +AC_LIBTOOL_PROG_COMPILER_PIC($1) +AC_LIBTOOL_PROG_CC_C_O($1) +AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1) +AC_LIBTOOL_PROG_LD_SHLIBS($1) +AC_LIBTOOL_SYS_DYNAMIC_LINKER($1) +AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1) + +AC_LIBTOOL_CONFIG($1) + +AC_LANG_POP +CC=$lt_save_CC +LDCXX=$LD +LD=$lt_save_LD +GCC=$lt_save_GCC +with_gnu_ldcxx=$with_gnu_ld +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 +])# AC_LIBTOOL_LANG_CXX_CONFIG + +# AC_LIBTOOL_POSTDEP_PREDEP([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. +AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP], +[AC_REQUIRE([LT_AC_PROG_SED])dnl +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... +ifelse([$1],[],[cat > conftest.$ac_ext < conftest.$ac_ext < conftest.$ac_ext < conftest.$ac_ext <&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_AC_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_AC_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun' + fi + ;; + esac + ;; +esac +]) +case " $_LT_AC_TAGVAR(postdeps, $1) " in +*" -lc "*) _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no ;; +esac +])# AC_LIBTOOL_POSTDEP_PREDEP + +# AC_LIBTOOL_LANG_F77_CONFIG +# -------------------------- +# Ensure that the configuration vars for the C compiler are +# suitably defined. Those variables are subsequently used by +# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'. +AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG], [_LT_AC_LANG_F77_CONFIG(F77)]) +AC_DEFUN([_LT_AC_LANG_F77_CONFIG], +[AC_REQUIRE([AC_PROG_F77]) +AC_LANG_PUSH(Fortran 77) + +_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no +_LT_AC_TAGVAR(allow_undefined_flag, $1)= +_LT_AC_TAGVAR(always_export_symbols, $1)=no +_LT_AC_TAGVAR(archive_expsym_cmds, $1)= +_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)= +_LT_AC_TAGVAR(hardcode_direct, $1)=no +_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)= +_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= +_LT_AC_TAGVAR(hardcode_libdir_separator, $1)= +_LT_AC_TAGVAR(hardcode_minus_L, $1)=no +_LT_AC_TAGVAR(hardcode_automatic, $1)=no +_LT_AC_TAGVAR(module_cmds, $1)= +_LT_AC_TAGVAR(module_expsym_cmds, $1)= +_LT_AC_TAGVAR(link_all_deplibs, $1)=unknown +_LT_AC_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds +_LT_AC_TAGVAR(no_undefined_flag, $1)= +_LT_AC_TAGVAR(whole_archive_flag_spec, $1)= +_LT_AC_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_AC_TAGVAR(objext, $1)=$objext + +# 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_AC_SYS_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" +CC=${F77-"f77"} +compiler=$CC +_LT_AC_TAGVAR(compiler, $1)=$CC +_LT_CC_BASENAME([$compiler]) + +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_AC_TAGVAR(GCC, $1)="$G77" +_LT_AC_TAGVAR(LD, $1)="$LD" + +AC_LIBTOOL_PROG_COMPILER_PIC($1) +AC_LIBTOOL_PROG_CC_C_O($1) +AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1) +AC_LIBTOOL_PROG_LD_SHLIBS($1) +AC_LIBTOOL_SYS_DYNAMIC_LINKER($1) +AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1) + +AC_LIBTOOL_CONFIG($1) + +AC_LANG_POP +CC="$lt_save_CC" +])# AC_LIBTOOL_LANG_F77_CONFIG + + +# AC_LIBTOOL_LANG_GCJ_CONFIG +# -------------------------- +# Ensure that the configuration vars for the C compiler are +# suitably defined. Those variables are subsequently used by +# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'. +AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG], [_LT_AC_LANG_GCJ_CONFIG(GCJ)]) +AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG], +[AC_LANG_SAVE + +# Source file extension for Java test sources. +ac_ext=java + +# Object file extension for compiled Java test sources. +objext=o +_LT_AC_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_AC_SYS_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" +CC=${GCJ-"gcj"} +compiler=$CC +_LT_AC_TAGVAR(compiler, $1)=$CC +_LT_CC_BASENAME([$compiler]) + +# GCJ did not exist at the time GCC didn't implicitly link libc in. +_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no + +_LT_AC_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds + +AC_LIBTOOL_PROG_COMPILER_NO_RTTI($1) +AC_LIBTOOL_PROG_COMPILER_PIC($1) +AC_LIBTOOL_PROG_CC_C_O($1) +AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1) +AC_LIBTOOL_PROG_LD_SHLIBS($1) +AC_LIBTOOL_SYS_DYNAMIC_LINKER($1) +AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1) + +AC_LIBTOOL_CONFIG($1) + +AC_LANG_RESTORE +CC="$lt_save_CC" +])# AC_LIBTOOL_LANG_GCJ_CONFIG + + +# AC_LIBTOOL_LANG_RC_CONFIG +# ------------------------- +# Ensure that the configuration vars for the Windows resource compiler are +# suitably defined. Those variables are subsequently used by +# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'. +AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG], [_LT_AC_LANG_RC_CONFIG(RC)]) +AC_DEFUN([_LT_AC_LANG_RC_CONFIG], +[AC_LANG_SAVE + +# Source file extension for RC test sources. +ac_ext=rc + +# Object file extension for compiled RC test sources. +objext=o +_LT_AC_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_AC_SYS_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" +CC=${RC-"windres"} +compiler=$CC +_LT_AC_TAGVAR(compiler, $1)=$CC +_LT_CC_BASENAME([$compiler]) +_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes + +AC_LIBTOOL_CONFIG($1) + +AC_LANG_RESTORE +CC="$lt_save_CC" +])# AC_LIBTOOL_LANG_RC_CONFIG + + +# AC_LIBTOOL_CONFIG([TAGNAME]) +# ---------------------------- +# If TAGNAME is not passed, then 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 +# TAGNAME from the matching tagged config vars. +AC_DEFUN([AC_LIBTOOL_CONFIG], +[# The else clause should only fire when bootstrapping the +# libtool distribution, otherwise you forgot to ship ltmain.sh +# with your package, and you will get complaints that there are +# no rules to generate ltmain.sh. +if test -f "$ltmain"; then + # 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 + # Now quote all the things that may contain metacharacters while being + # careful not to overquote the AC_SUBSTed values. We take copies of the + # variables and quote the copies for generation of the libtool script. + for var in echo old_CC old_CFLAGS AR AR_FLAGS EGREP RANLIB LN_S LTCC LTCFLAGS NM \ + SED SHELL STRIP \ + libname_spec library_names_spec soname_spec extract_expsyms_cmds \ + old_striplib striplib file_magic_cmd finish_cmds finish_eval \ + deplibs_check_method reload_flag reload_cmds need_locks \ + lt_cv_sys_global_symbol_pipe lt_cv_sys_global_symbol_to_cdecl \ + lt_cv_sys_global_symbol_to_c_name_address \ + sys_lib_search_path_spec sys_lib_dlsearch_path_spec \ + old_postinstall_cmds old_postuninstall_cmds \ + _LT_AC_TAGVAR(compiler, $1) \ + _LT_AC_TAGVAR(CC, $1) \ + _LT_AC_TAGVAR(LD, $1) \ + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1) \ + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1) \ + _LT_AC_TAGVAR(lt_prog_compiler_static, $1) \ + _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) \ + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1) \ + _LT_AC_TAGVAR(thread_safe_flag_spec, $1) \ + _LT_AC_TAGVAR(whole_archive_flag_spec, $1) \ + _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1) \ + _LT_AC_TAGVAR(old_archive_cmds, $1) \ + _LT_AC_TAGVAR(old_archive_from_new_cmds, $1) \ + _LT_AC_TAGVAR(predep_objects, $1) \ + _LT_AC_TAGVAR(postdep_objects, $1) \ + _LT_AC_TAGVAR(predeps, $1) \ + _LT_AC_TAGVAR(postdeps, $1) \ + _LT_AC_TAGVAR(compiler_lib_search_path, $1) \ + _LT_AC_TAGVAR(compiler_lib_search_dirs, $1) \ + _LT_AC_TAGVAR(archive_cmds, $1) \ + _LT_AC_TAGVAR(archive_expsym_cmds, $1) \ + _LT_AC_TAGVAR(postinstall_cmds, $1) \ + _LT_AC_TAGVAR(postuninstall_cmds, $1) \ + _LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1) \ + _LT_AC_TAGVAR(allow_undefined_flag, $1) \ + _LT_AC_TAGVAR(no_undefined_flag, $1) \ + _LT_AC_TAGVAR(export_symbols_cmds, $1) \ + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) \ + _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1) \ + _LT_AC_TAGVAR(hardcode_libdir_separator, $1) \ + _LT_AC_TAGVAR(hardcode_automatic, $1) \ + _LT_AC_TAGVAR(module_cmds, $1) \ + _LT_AC_TAGVAR(module_expsym_cmds, $1) \ + _LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1) \ + _LT_AC_TAGVAR(fix_srcfile_path, $1) \ + _LT_AC_TAGVAR(exclude_expsyms, $1) \ + _LT_AC_TAGVAR(include_expsyms, $1); do + + case $var in + _LT_AC_TAGVAR(old_archive_cmds, $1) | \ + _LT_AC_TAGVAR(old_archive_from_new_cmds, $1) | \ + _LT_AC_TAGVAR(archive_cmds, $1) | \ + _LT_AC_TAGVAR(archive_expsym_cmds, $1) | \ + _LT_AC_TAGVAR(module_cmds, $1) | \ + _LT_AC_TAGVAR(module_expsym_cmds, $1) | \ + _LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1) | \ + _LT_AC_TAGVAR(export_symbols_cmds, $1) | \ + extract_expsyms_cmds | reload_cmds | finish_cmds | \ + postinstall_cmds | postuninstall_cmds | \ + old_postinstall_cmds | old_postuninstall_cmds | \ + sys_lib_search_path_spec | sys_lib_dlsearch_path_spec) + # Double-quote double-evaled strings. + eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\"" + ;; + *) + eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\"" + ;; + esac + done + + case $lt_echo in + *'\[$]0 --fallback-echo"') + lt_echo=`$echo "X$lt_echo" | $Xsed -e 's/\\\\\\\[$]0 --fallback-echo"[$]/[$]0 --fallback-echo"/'` + ;; + esac + +ifelse([$1], [], + [cfgfile="${ofile}T" + trap "$rm \"$cfgfile\"; exit 1" 1 2 15 + $rm -f "$cfgfile" + AC_MSG_NOTICE([creating $ofile])], + [cfgfile="$ofile"]) + + cat <<__EOF__ >> "$cfgfile" +ifelse([$1], [], +[#! $SHELL + +# `$echo "$cfgfile" | sed 's%^.*/%%'` - Provide generalized library-building support services. +# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP) +# NOTE: Changes made to this file will be lost: look at ltmain.sh. +# +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 +# Free Software Foundation, Inc. +# +# This file is part of GNU Libtool: +# Originally by Gordon Matzigkeit , 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 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. + +# 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//" + +# 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 + +# The names of the tagged configurations supported by this script. +available_tags= + +# ### BEGIN LIBTOOL CONFIG], +[# ### BEGIN LIBTOOL TAG CONFIG: $tagname]) + +# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: + +# Shell to use when invoking shell scripts. +SHELL=$lt_SHELL + +# Whether or not to build shared libraries. +build_libtool_libs=$enable_shared + +# Whether or not to build static libraries. +build_old_libs=$enable_static + +# Whether or not to add -lc for building shared libraries. +build_libtool_need_lc=$_LT_AC_TAGVAR(archive_cmds_need_lc, $1) + +# Whether or not to disallow shared libs when runtime libs are static +allow_libtool_libs_with_static_runtimes=$_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1) + +# 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 + +# An echo program that does not interpret backslashes. +echo=$lt_echo + +# The archiver. +AR=$lt_AR +AR_FLAGS=$lt_AR_FLAGS + +# A C compiler. +LTCC=$lt_LTCC + +# LTCC compiler flags. +LTCFLAGS=$lt_LTCFLAGS + +# A language-specific compiler. +CC=$lt_[]_LT_AC_TAGVAR(compiler, $1) + +# Is the compiler the GNU C compiler? +with_gcc=$_LT_AC_TAGVAR(GCC, $1) + +# An ERE matcher. +EGREP=$lt_EGREP + +# The linker used to build libraries. +LD=$lt_[]_LT_AC_TAGVAR(LD, $1) + +# Whether we need hard or soft links. +LN_S=$lt_LN_S + +# A BSD-compatible nm program. +NM=$lt_NM + +# A symbol stripping program +STRIP=$lt_STRIP + +# Used to examine libraries when file_magic_cmd begins "file" +MAGIC_CMD=$MAGIC_CMD + +# Used on cygwin: DLL creation program. +DLLTOOL="$DLLTOOL" + +# Used on cygwin: object dumper. +OBJDUMP="$OBJDUMP" + +# Used on cygwin: assembler. +AS="$AS" + +# The name of the directory that contains temporary libtool files. +objdir=$objdir + +# How to create reloadable object files. +reload_flag=$lt_reload_flag +reload_cmds=$lt_reload_cmds + +# How to pass a linker flag through the compiler. +wl=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_wl, $1) + +# Object file suffix (normally "o"). +objext="$ac_objext" + +# Old archive suffix (normally "a"). +libext="$libext" + +# Shared library suffix (normally ".so"). +shrext_cmds='$shrext_cmds' + +# Executable file suffix (normally ""). +exeext="$exeext" + +# Additional compiler flags for building library objects. +pic_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) +pic_mode=$pic_mode + +# What is the maximum length of a command? +max_cmd_len=$lt_cv_sys_max_cmd_len + +# Does compiler simultaneously support -c and -o options? +compiler_c_o=$lt_[]_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1) + +# Must we lock files when doing compilation? +need_locks=$lt_need_locks + +# 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 + +# 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 + +# Compiler flag to prevent dynamic linking. +link_static_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_static, $1) + +# Compiler flag to turn off builtin functions. +no_builtin_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) + +# Compiler flag to allow reflexive dlopens. +export_dynamic_flag_spec=$lt_[]_LT_AC_TAGVAR(export_dynamic_flag_spec, $1) + +# Compiler flag to generate shared objects directly from archives. +whole_archive_flag_spec=$lt_[]_LT_AC_TAGVAR(whole_archive_flag_spec, $1) + +# Compiler flag to generate thread-safe objects. +thread_safe_flag_spec=$lt_[]_LT_AC_TAGVAR(thread_safe_flag_spec, $1) + +# Library versioning type. +version_type=$version_type + +# 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 + +# Commands used to build and install an old-style archive. +RANLIB=$lt_RANLIB +old_archive_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_cmds, $1) +old_postinstall_cmds=$lt_old_postinstall_cmds +old_postuninstall_cmds=$lt_old_postuninstall_cmds + +# Create an old-style archive from a shared archive. +old_archive_from_new_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_from_new_cmds, $1) + +# Create a temporary old-style archive to link instead of a shared archive. +old_archive_from_expsyms_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1) + +# Commands used to build and install a shared archive. +archive_cmds=$lt_[]_LT_AC_TAGVAR(archive_cmds, $1) +archive_expsym_cmds=$lt_[]_LT_AC_TAGVAR(archive_expsym_cmds, $1) +postinstall_cmds=$lt_postinstall_cmds +postuninstall_cmds=$lt_postuninstall_cmds + +# Commands used to build a loadable module (assumed same as above if empty) +module_cmds=$lt_[]_LT_AC_TAGVAR(module_cmds, $1) +module_expsym_cmds=$lt_[]_LT_AC_TAGVAR(module_expsym_cmds, $1) + +# Commands to strip libraries. +old_striplib=$lt_old_striplib +striplib=$lt_striplib + +# Dependencies to place before the objects being linked to create a +# shared library. +predep_objects=$lt_[]_LT_AC_TAGVAR(predep_objects, $1) + +# Dependencies to place after the objects being linked to create a +# shared library. +postdep_objects=$lt_[]_LT_AC_TAGVAR(postdep_objects, $1) + +# Dependencies to place before the objects being linked to create a +# shared library. +predeps=$lt_[]_LT_AC_TAGVAR(predeps, $1) + +# Dependencies to place after the objects being linked to create a +# shared library. +postdeps=$lt_[]_LT_AC_TAGVAR(postdeps, $1) + +# The directories searched by this compiler when creating a shared +# library +compiler_lib_search_dirs=$lt_[]_LT_AC_TAGVAR(compiler_lib_search_dirs, $1) + +# The library search path used internally by the compiler when linking +# a shared library. +compiler_lib_search_path=$lt_[]_LT_AC_TAGVAR(compiler_lib_search_path, $1) + +# 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 + +# Flag that allows shared libraries with undefined symbols to be built. +allow_undefined_flag=$lt_[]_LT_AC_TAGVAR(allow_undefined_flag, $1) + +# Flag that forces no undefined symbols. +no_undefined_flag=$lt_[]_LT_AC_TAGVAR(no_undefined_flag, $1) + +# Commands used to finish a libtool library installation in a directory. +finish_cmds=$lt_finish_cmds + +# Same as above, but a single script fragment to be evaled but not shown. +finish_eval=$lt_finish_eval + +# 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 + +# This is the shared library runtime path variable. +runpath_var=$runpath_var + +# This is the shared library path variable. +shlibpath_var=$shlibpath_var + +# Is shlibpath searched before the hard-coded library search path? +shlibpath_overrides_runpath=$shlibpath_overrides_runpath + +# How to hardcode a shared library path into an executable. +hardcode_action=$_LT_AC_TAGVAR(hardcode_action, $1) + +# Whether we should hardcode library paths into libraries. +hardcode_into_libs=$hardcode_into_libs + +# Flag to hardcode \$libdir into a binary during linking. +# This must work even if \$libdir does not exist. +hardcode_libdir_flag_spec=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $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. +hardcode_libdir_flag_spec_ld=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1) + +# Whether we need a single -rpath flag with a separated argument. +hardcode_libdir_separator=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_separator, $1) + +# Set to yes if using DIR/libNAME${shared_ext} during linking hardcodes DIR into the +# resulting binary. +hardcode_direct=$_LT_AC_TAGVAR(hardcode_direct, $1) + +# Set to yes if using the -LDIR flag during linking hardcodes DIR into the +# resulting binary. +hardcode_minus_L=$_LT_AC_TAGVAR(hardcode_minus_L, $1) + +# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into +# the resulting binary. +hardcode_shlibpath_var=$_LT_AC_TAGVAR(hardcode_shlibpath_var, $1) + +# 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=$_LT_AC_TAGVAR(hardcode_automatic, $1) + +# Variables whose values should be saved in libtool wrapper scripts and +# restored at relink time. +variables_saved_for_relink="$variables_saved_for_relink" + +# Whether libtool must link a program against all its dependency libraries. +link_all_deplibs=$_LT_AC_TAGVAR(link_all_deplibs, $1) + +# 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 + +# 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=$_LT_AC_TAGVAR(always_export_symbols, $1) + +# The commands to list exported symbols. +export_symbols_cmds=$lt_[]_LT_AC_TAGVAR(export_symbols_cmds, $1) + +# The commands to extract the exported symbol list from a shared archive. +extract_expsyms_cmds=$lt_extract_expsyms_cmds + +# Symbols that should not be listed in the preloaded symbols. +exclude_expsyms=$lt_[]_LT_AC_TAGVAR(exclude_expsyms, $1) + +# Symbols that must always be exported. +include_expsyms=$lt_[]_LT_AC_TAGVAR(include_expsyms, $1) + +ifelse([$1],[], +[# ### END LIBTOOL CONFIG], +[# ### END LIBTOOL TAG CONFIG: $tagname]) + +__EOF__ + +ifelse([$1],[], [ + case $host_os in + aix3*) + cat <<\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 +EOF + ;; + esac + + # 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 '$q' "$ltmain" >> "$cfgfile" || (rm -f "$cfgfile"; exit 1) + + mv -f "$cfgfile" "$ofile" || \ + (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") + chmod +x "$ofile" +]) +else + # If there is no Makefile yet, we rely on a make rule to execute + # `config.status --recheck' to rerun these tests and create the + # libtool script then. + ltmain_in=`echo $ltmain | sed -e 's/\.sh$/.in/'` + if test -f "$ltmain_in"; then + test -f Makefile && make "$ltmain" + fi +fi +])# AC_LIBTOOL_CONFIG + + +# AC_LIBTOOL_PROG_COMPILER_NO_RTTI([TAGNAME]) +# ------------------------------------------- +AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], +[AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl + +_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= + +if test "$GCC" = yes; then + _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' + + AC_LIBTOOL_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions], + lt_cv_prog_compiler_rtti_exceptions, + [-fno-rtti -fno-exceptions], [], + [_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"]) +fi +])# AC_LIBTOOL_PROG_COMPILER_NO_RTTI + + +# AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE +# --------------------------------- +AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], +[AC_REQUIRE([AC_CANONICAL_HOST]) +AC_REQUIRE([LT_AC_PROG_SED]) +AC_REQUIRE([AC_PROG_NM]) +AC_REQUIRE([AC_OBJEXT]) +# 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]]*\)' + +# Transform an extracted symbol line into a proper C declaration +lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern int \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\\\", (lt_ptr) 0},/p' -e 's/^$symcode \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" + +# Define system-specific variables. +case $host_os in +aix*) + symcode='[[BCDT]]' + ;; +cygwin* | mingw* | pw32*) + symcode='[[ABCDGISTW]]' + ;; +hpux*) # Its linker distinguishes data from code symbols + if test "$host_cpu" = ia64; then + symcode='[[ABCDEGRST]]' + fi + lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" + lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" + ;; +linux* | k*bsd*-gnu) + if test "$host_cpu" = ia64; then + symcode='[[ABCDGIRSTW]]' + lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" + lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" + 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 + +# 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 + +# If we're using GNU nm, then use its standard symbol codes. +case `$NM -V 2>&1` in +*GNU* | *'with BFD'*) + symcode='[[ABCDGIRSTW]]' ;; +esac + +# Try without a prefix undercore, 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. + lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" + + # Check to see that the pipe works correctly. + pipe_works=no + + rm -f conftest* + cat > conftest.$ac_ext < $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 < conftest.$ac_ext +#ifdef __cplusplus +extern "C" { +#endif + +EOF + # Now generate the symbol file. + eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | grep -v main >> conftest.$ac_ext' + + cat <> conftest.$ac_ext +#if defined (__STDC__) && __STDC__ +# define lt_ptr_t void * +#else +# define lt_ptr_t char * +# define const +#endif + +/* The mapping between symbol names and symbols. */ +const struct { + const char *name; + lt_ptr_t address; +} +lt_preloaded_symbols[[]] = +{ +EOF + $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (lt_ptr_t) \&\2},/" < "$nlist" | grep -v main >> conftest.$ac_ext + cat <<\EOF >> conftest.$ac_ext + {0, (lt_ptr_t) 0} +}; + +#ifdef __cplusplus +} +#endif +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_AC_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 +]) # AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE + + +# AC_LIBTOOL_PROG_COMPILER_PIC([TAGNAME]) +# --------------------------------------- +AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC], +[_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)= +_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= +_LT_AC_TAGVAR(lt_prog_compiler_static, $1)= + +AC_MSG_CHECKING([for $compiler option to produce PIC]) + ifelse([$1],[CXX],[ + # C++ specific cases for pic, static, wl, etc. + if test "$GXX" = yes; then + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_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_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + fi + ;; + amigaos*) + # 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_AC_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' + ;; + beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) + # PIC is the default for these OSes. + ;; + mingw* | cygwin* | os2* | pw32*) + # 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_AC_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_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' + ;; + *djgpp*) + # DJGPP does not support shared libraries at all + _LT_AC_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_AC_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic + fi + ;; + hpux*) + # 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*) + ;; + *) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + esac + ;; + *) + _LT_AC_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_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + else + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' + fi + ;; + chorus*) + case $cc_basename in + cxch68*) + # Green Hills C++ Compiler + # _LT_AC_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 + ;; + darwin*) + # PIC is the default on this platform + # Common symbols not allowed in MH_DYLIB files + case $cc_basename in + xlc*) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-qnocommon' + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + ;; + esac + ;; + dgux*) + case $cc_basename in + ec++*) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + ;; + ghcx*) + # Green Hills C++ Compiler + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' + ;; + *) + ;; + esac + ;; + freebsd* | dragonfly*) + # FreeBSD uses GNU C++ + ;; + hpux9* | hpux10* | hpux11*) + case $cc_basename in + CC*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' + if test "$host_cpu" != ia64; then + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z' + fi + ;; + aCC*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' + case $host_cpu in + hppa*64*|ia64*) + # +Z the default + ;; + *) + _LT_AC_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_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + # CC pic flag -KPIC is the default. + ;; + *) + ;; + esac + ;; + linux* | k*bsd*-gnu) + case $cc_basename in + KCC*) + # KAI C++ Compiler + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + icpc* | ecpc*) + # Intel C++ + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static' + ;; + pgCC* | pgcpp*) + # Portland Group C++ compiler. + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' + _LT_AC_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_AC_TAGVAR(lt_prog_compiler_pic, $1)= + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + *) + case `$CC -V 2>&1 | sed 5q` in + *Sun\ C*) + # Sun C++ 5.9 + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' + ;; + esac + ;; + esac + ;; + lynxos*) + ;; + m88k*) + ;; + mvs*) + case $cc_basename in + cxx*) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall' + ;; + *) + ;; + esac + ;; + netbsd*) + ;; + osf3* | osf4* | osf5*) + case $cc_basename in + KCC*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' + ;; + RCC*) + # Rational C++ 2.4.1 + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' + ;; + cxx*) + # Digital/Compaq C++ + _LT_AC_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_AC_TAGVAR(lt_prog_compiler_pic, $1)= + _LT_AC_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_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' + ;; + gcx*) + # Green Hills C++ Compiler + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' + ;; + *) + ;; + esac + ;; + sunos4*) + case $cc_basename in + CC*) + # Sun C++ 4.x + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + lcc*) + # Lucid + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' + ;; + *) + ;; + esac + ;; + tandem*) + case $cc_basename in + NCC*) + # NonStop-UX NCC 3.20 + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + ;; + *) + ;; + esac + ;; + sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) + case $cc_basename in + CC*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + esac + ;; + vxworks*) + ;; + *) + _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no + ;; + esac + fi +], +[ + if test "$GCC" = yes; then + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_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_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + fi + ;; + + amigaos*) + # 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_AC_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' + ;; + + beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) + # PIC is the default for these OSes. + ;; + + mingw* | cygwin* | pw32* | os2*) + # 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_AC_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_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' + ;; + + 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_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no + enable_shared=no + ;; + + sysv4*MP*) + if test -d /usr/nec; then + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic + fi + ;; + + hpux*) + # 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_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + esac + ;; + + *) + _LT_AC_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_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + if test "$host_cpu" = ia64; then + # AIX 5 now supports IA64 processor + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + else + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' + fi + ;; + darwin*) + # PIC is the default on this platform + # Common symbols not allowed in MH_DYLIB files + case $cc_basename in + xlc*) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-qnocommon' + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + ;; + esac + ;; + + mingw* | cygwin* | pw32* | os2*) + # 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_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) + ;; + + hpux9* | hpux10* | hpux11*) + _LT_AC_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_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z' + ;; + esac + # Is there a better lt_prog_compiler_static that works with the bundled CC? + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' + ;; + + irix5* | irix6* | nonstopux*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + # PIC (with -KPIC) is the default. + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + + newsos6) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + + linux* | k*bsd*-gnu) + case $cc_basename in + icc* | ecc*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_AC_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_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + ccc*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + # All Alpha code is PIC. + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + *) + case `$CC -V 2>&1 | sed 5q` in + *Sun\ C*) + # Sun C 5.9 + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + ;; + *Sun\ F*) + # Sun Fortran 8.3 passes all unrecognized flags to the linker + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='' + ;; + esac + ;; + esac + ;; + + osf3* | osf4* | osf5*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + # All OSF/1 code is PIC. + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + + rdos*) + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + + solaris*) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + case $cc_basename in + f77* | f90* | f95*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';; + *) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';; + esac + ;; + + sunos4*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + + sysv4 | sysv4.2uw2* | sysv4.3*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + + sysv4*MP*) + if test -d /usr/nec ;then + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + fi + ;; + + sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + + unicos*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no + ;; + + uts4*) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + + *) + _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no + ;; + esac + fi +]) +AC_MSG_RESULT([$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)]) + +# +# Check to make sure the PIC flag actually works. +# +if test -n "$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)"; then + AC_LIBTOOL_COMPILER_OPTION([if $compiler PIC flag $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) works], + _LT_AC_TAGVAR(lt_cv_prog_compiler_pic_works, $1), + [$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)ifelse([$1],[],[ -DPIC],[ifelse([$1],[CXX],[ -DPIC],[])])], [], + [case $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) in + "" | " "*) ;; + *) _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)" ;; + esac], + [_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= + _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no]) +fi +case $host_os in + # For platforms which do not support PIC, -DPIC is meaningless: + *djgpp*) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= + ;; + *) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)ifelse([$1],[],[ -DPIC],[ifelse([$1],[CXX],[ -DPIC],[])])" + ;; +esac + +# +# Check to make sure the static flag actually works. +# +wl=$_LT_AC_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_AC_TAGVAR(lt_prog_compiler_static, $1)\" +AC_LIBTOOL_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works], + _LT_AC_TAGVAR(lt_cv_prog_compiler_static_works, $1), + $lt_tmp_static_flag, + [], + [_LT_AC_TAGVAR(lt_prog_compiler_static, $1)=]) +]) + + +# AC_LIBTOOL_PROG_LD_SHLIBS([TAGNAME]) +# ------------------------------------ +# See if the linker supports building shared libraries. +AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS], +[AC_REQUIRE([LT_AC_PROG_SED])dnl +AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) +ifelse([$1],[CXX],[ + _LT_AC_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_AC_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_AC_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_AC_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds" + ;; + cygwin* | mingw*) + _LT_AC_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' + ;; + *) + _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' + ;; + esac + _LT_AC_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'] +],[ + runpath_var= + _LT_AC_TAGVAR(allow_undefined_flag, $1)= + _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=no + _LT_AC_TAGVAR(archive_cmds, $1)= + _LT_AC_TAGVAR(archive_expsym_cmds, $1)= + _LT_AC_TAGVAR(old_archive_From_new_cmds, $1)= + _LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1)= + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)= + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)= + _LT_AC_TAGVAR(thread_safe_flag_spec, $1)= + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)= + _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)= + _LT_AC_TAGVAR(hardcode_direct, $1)=no + _LT_AC_TAGVAR(hardcode_minus_L, $1)=no + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported + _LT_AC_TAGVAR(link_all_deplibs, $1)=unknown + _LT_AC_TAGVAR(hardcode_automatic, $1)=no + _LT_AC_TAGVAR(module_cmds, $1)= + _LT_AC_TAGVAR(module_expsym_cmds, $1)= + _LT_AC_TAGVAR(always_export_symbols, $1)=no + _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' + # include_expsyms should be a list of space-separated symbols to be *always* + # included in the symbol list + _LT_AC_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_AC_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= + # Just being paranoid about ensuring that cc_basename is set. + _LT_CC_BASENAME([$compiler]) + case $host_os in + cygwin* | mingw* | pw32*) + # 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 + ;; + esac + + _LT_AC_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_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir' + _LT_AC_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_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + else + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)= + fi + supports_anon_versioning=no + case `$LD -v 2>/dev/null` in + *\ [[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_AC_TAGVAR(ld_shlibs, $1)=no + cat <&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. + +EOF + fi + ;; + + amigaos*) + _LT_AC_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_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + + # Samuel A. Falvo II reports + # that the semantics of dynamic libraries on AmigaOS, at least up + # to version 4, is to share data among multiple programs linked + # with the same dynamic library. Since this doesn't match the + # behavior of shared libraries on other platforms, we can't use + # them. + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + + beos*) + if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then + _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported + # Joseph Beckenbach says some releases of gcc + # support --undefined. This deserves some investigation. FIXME + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + else + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + cygwin* | mingw* | pw32*) + # _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, + # as there is no search path for DLLs. + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported + _LT_AC_TAGVAR(always_export_symbols, $1)=no + _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes + _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/'\'' -e '\''/^[[AITW]][[ ]]/s/.*[[ ]]//'\'' | sort | uniq > $export_symbols' + + if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then + _LT_AC_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_AC_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_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + interix[[3-9]]*) + _LT_AC_TAGVAR(hardcode_direct, $1)=no + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + _LT_AC_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_AC_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_AC_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* | k*bsd*-gnu) + if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then + tmp_addflag= + case $cc_basename,$host_cpu in + pgcc*) # Portland Group C compiler + _LT_AC_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_AC_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' ;; + esac + case `$CC -V 2>&1 | sed 5q` in + *Sun\ C*) # Sun C 5.9 + _LT_AC_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' + tmp_sharedflag='-G' ;; + *Sun\ F*) # Sun Fortran 8.3 + tmp_sharedflag='-G' ;; + *) + tmp_sharedflag='-shared' ;; + esac + _LT_AC_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + + if test $supports_anon_versioning = yes; then + _LT_AC_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 + else + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + netbsd*) + if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' + wlarc= + else + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_AC_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_AC_TAGVAR(ld_shlibs, $1)=no + cat <&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. + +EOF + elif $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_AC_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_AC_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_AC_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 + ;; + *) + if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='`test -z "$SCOABSPATH" && echo ${wl}-rpath,$libdir`' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname,\${SCOABSPATH:+${install_libdir}/}$soname,-retain-symbols-file,$export_symbols -o $lib' + else + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + ;; + + sunos4*) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' + wlarc= + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + *) + if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_AC_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_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + + if test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no; then + runpath_var= + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)= + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)= + _LT_AC_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_AC_TAGVAR(allow_undefined_flag, $1)=unsupported + _LT_AC_TAGVAR(always_export_symbols, $1)=yes + _LT_AC_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_AC_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_AC_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_AC_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_AC_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_AC_TAGVAR(archive_cmds, $1)='' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':' + _LT_AC_TAGVAR(link_all_deplibs, $1)=yes + + 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_AC_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_AC_TAGVAR(hardcode_minus_L, $1)=yes + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_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 + + # It seems that -bexpall does not export symbols beginning with + # underscore (_), so it is better to generate a list of symbols to export. + _LT_AC_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_AC_TAGVAR(allow_undefined_flag, $1)='-berok' + # Determine the default libpath from the value encoded in an empty executable. + _LT_AC_SYS_LIBPATH_AIX + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" + _LT_AC_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 "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" + else + if test "$host_cpu" = ia64; then + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib' + _LT_AC_TAGVAR(allow_undefined_flag, $1)="-z nodefs" + _LT_AC_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_AC_SYS_LIBPATH_AIX + _LT_AC_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_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok' + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok' + # Exported symbols can be pulled into shared objects from archives + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='$convenience' + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes + # This is similar to how AIX traditionally builds its shared libraries. + _LT_AC_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*) + _LT_AC_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_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + # see comment about different semantics on the GNU ld section + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + + bsdi[[45]]*) + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic + ;; + + cygwin* | mingw* | pw32*) + # 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_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' + _LT_AC_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_AC_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | $SED -e '\''s/ -lc$//'\''` -link -dll~linknames=' + # The linker will automatically build a .lib file if we build a DLL. + _LT_AC_TAGVAR(old_archive_From_new_cmds, $1)='true' + # FIXME: Should let the user specify the lib program. + _LT_AC_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs' + _LT_AC_TAGVAR(fix_srcfile_path, $1)='`cygpath -w "$srcfile"`' + _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes + ;; + + darwin* | rhapsody*) + case $host_os in + rhapsody* | darwin1.[[012]]) + _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}suppress' + ;; + *) # Darwin 1.3 on + if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then + _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' + else + case ${MACOSX_DEPLOYMENT_TARGET} in + 10.[[012]]) + _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' + ;; + 10.*) + _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}dynamic_lookup' + ;; + esac + fi + ;; + esac + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_AC_TAGVAR(hardcode_direct, $1)=no + _LT_AC_TAGVAR(hardcode_automatic, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='' + _LT_AC_TAGVAR(link_all_deplibs, $1)=yes + if test "$GCC" = yes ; then + output_verbose_link_cmd='echo' + _LT_AC_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_AC_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}" + _LT_AC_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_AC_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}" + else + case $cc_basename in + xlc*) + output_verbose_link_cmd='echo' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $xlcverstring' + _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags' + # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $xlcverstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + ;; + *) + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + esac + fi + ;; + + dgux*) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + freebsd1*) + _LT_AC_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_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + # Unfortunately, older versions of FreeBSD 2 do not have this feature. + freebsd2*) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + # FreeBSD 3 and greater uses gcc -shared to do shared libraries. + freebsd* | dragonfly*) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -o $lib $libobjs $deplibs $compiler_flags' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + hpux9*) + if test "$GCC" = yes; then + _LT_AC_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_AC_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_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + + # hardcode_minus_L: Not really in the search PATH, + # but as the default location of the library. + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + ;; + + hpux10*) + if test "$GCC" = yes -a "$with_gnu_ld" = no; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' + else + _LT_AC_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_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_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_AC_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_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + ia64*) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' + ;; + *) + _LT_AC_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_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + ia64*) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' + ;; + *) + _LT_AC_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_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + + case $host_cpu in + hppa*64*|ia64*) + _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir' + _LT_AC_TAGVAR(hardcode_direct, $1)=no + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + *) + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_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_AC_TAGVAR(hardcode_minus_L, $1)=yes + ;; + esac + fi + ;; + + irix5* | irix6* | nonstopux*) + if test "$GCC" = yes; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + else + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='-rpath $libdir' + fi + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + _LT_AC_TAGVAR(link_all_deplibs, $1)=yes + ;; + + netbsd*) + if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out + else + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF + fi + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + newsos6) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + openbsd*) + if test -f /usr/libexec/ld.so; then + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + else + case $host_os in + openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + ;; + *) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + ;; + esac + fi + else + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + os2*) + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported + _LT_AC_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_AC_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' + ;; + + osf3*) + if test "$GCC" = yes; then + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + else + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' + fi + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + ;; + + osf4* | osf5*) # as osf3* with the addition of -msym flag + if test "$GCC" = yes; then + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + else + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' + _LT_AC_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~ + $LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib~$rm $lib.exp' + + # Both c and cxx compiler support -rpath directly + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' + fi + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + ;; + + solaris*) + _LT_AC_TAGVAR(no_undefined_flag, $1)=' -z text' + if test "$GCC" = yes; then + wlarc='${wl}' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_AC_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}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$rm $lib.exp' + else + wlarc='' + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_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' + fi + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_AC_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_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' + else + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' + fi + ;; + esac + _LT_AC_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_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags' + else + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' + fi + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + sysv4) + case $host_vendor in + sni) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes # is this really true??? + ;; + siemens) + ## LD is ld it makes a PLAMLIB + ## CC just makes a GrossModule. + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs' + _LT_AC_TAGVAR(hardcode_direct, $1)=no + ;; + motorola) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie + ;; + esac + runpath_var='LD_RUN_PATH' + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + sysv4.3*) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport' + ;; + + sysv4*MP*) + if test -d /usr/nec; then + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + runpath_var=LD_RUN_PATH + hardcode_runpath_var=yes + _LT_AC_TAGVAR(ld_shlibs, $1)=yes + fi + ;; + + sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*) + _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + runpath_var='LD_RUN_PATH' + + if test "$GCC" = yes; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + else + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_AC_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_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' + _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs' + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='`test -z "$SCOABSPATH" && echo ${wl}-R,$libdir`' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':' + _LT_AC_TAGVAR(link_all_deplibs, $1)=yes + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport' + runpath_var='LD_RUN_PATH' + + if test "$GCC" = yes; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags' + else + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags' + fi + ;; + + uts4*) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + *) + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + esac + fi +]) +AC_MSG_RESULT([$_LT_AC_TAGVAR(ld_shlibs, $1)]) +test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no + +# +# Do we need to explicitly link libc? +# +case "x$_LT_AC_TAGVAR(archive_cmds_need_lc, $1)" in +x|xyes) + # Assume -lc should be added + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes + + if test "$enable_shared" = yes && test "$GCC" = yes; then + case $_LT_AC_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_AC_TAGVAR(lt_prog_compiler_wl, $1) + pic_flag=$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) + compiler_flags=-v + linker_flags=-v + verstring= + output_objdir=. + libname=conftest + lt_save_allow_undefined_flag=$_LT_AC_TAGVAR(allow_undefined_flag, $1) + _LT_AC_TAGVAR(allow_undefined_flag, $1)= + if AC_TRY_EVAL(_LT_AC_TAGVAR(archive_cmds, $1) 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1) + then + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no + else + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes + fi + _LT_AC_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag + else + cat conftest.err 1>&5 + fi + $rm conftest* + AC_MSG_RESULT([$_LT_AC_TAGVAR(archive_cmds_need_lc, $1)]) + ;; + esac + fi + ;; +esac +])# AC_LIBTOOL_PROG_LD_SHLIBS + + +# _LT_AC_FILE_LTDLL_C +# ------------------- +# Be careful that the start marker always follows a newline. +AC_DEFUN([_LT_AC_FILE_LTDLL_C], [ +# /* ltdll.c starts here */ +# #define WIN32_LEAN_AND_MEAN +# #include +# #undef WIN32_LEAN_AND_MEAN +# #include +# +# #ifndef __CYGWIN__ +# # ifdef __CYGWIN32__ +# # define __CYGWIN__ __CYGWIN32__ +# # endif +# #endif +# +# #ifdef __cplusplus +# extern "C" { +# #endif +# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved); +# #ifdef __cplusplus +# } +# #endif +# +# #ifdef __CYGWIN__ +# #include +# DECLARE_CYGWIN_DLL( DllMain ); +# #endif +# HINSTANCE __hDllInstance_base; +# +# BOOL APIENTRY +# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved) +# { +# __hDllInstance_base = hInst; +# return TRUE; +# } +# /* ltdll.c ends here */ +])# _LT_AC_FILE_LTDLL_C + + +# _LT_AC_TAGVAR(VARNAME, [TAGNAME]) +# --------------------------------- +AC_DEFUN([_LT_AC_TAGVAR], [ifelse([$2], [], [$1], [$1_$2])]) + + +# old names +AC_DEFUN([AM_PROG_LIBTOOL], [AC_PROG_LIBTOOL]) +AC_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)]) +AC_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)]) +AC_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)]) +AC_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)]) +AC_DEFUN([AM_PROG_LD], [AC_PROG_LD]) +AC_DEFUN([AM_PROG_NM], [AC_PROG_NM]) + +# This is just to silence aclocal about the macro not being used +ifelse([AC_DISABLE_FAST_INSTALL]) + +AC_DEFUN([LT_AC_PROG_GCJ], +[AC_CHECK_TOOL(GCJ, gcj, no) + test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2" + AC_SUBST(GCJFLAGS) +]) + +AC_DEFUN([LT_AC_PROG_RC], +[AC_CHECK_TOOL(RC, windres, no) +]) + + +# Cheap backport of AS_EXECUTABLE_P and required macros +# from Autoconf 2.59; we should not use $as_executable_p directly. + +# _AS_TEST_PREPARE +# ---------------- +m4_ifndef([_AS_TEST_PREPARE], +[m4_defun([_AS_TEST_PREPARE], +[if test -x / >/dev/null 2>&1; then + as_executable_p='test -x' +else + as_executable_p='test -f' +fi +])])# _AS_TEST_PREPARE + +# AS_EXECUTABLE_P +# --------------- +# Check whether a file is executable. +m4_ifndef([AS_EXECUTABLE_P], +[m4_defun([AS_EXECUTABLE_P], +[AS_REQUIRE([_AS_TEST_PREPARE])dnl +$as_executable_p $1[]dnl +])])# AS_EXECUTABLE_P + +# 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. # +# LT_AC_PROG_SED +# -------------- +# Check for a fully-functional sed program, that truncates +# as few characters as possible. Prefer GNU sed if found. +AC_DEFUN([LT_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]) +]) + +# Copyright (C) 2002, 2003, 2005, 2006 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -34,7 +6667,7 @@ AC_DEFUN([AM_AUTOMAKE_VERSION], [am__api_version='1.10' 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.10.1], [], +m4_if([$1], [1.10], [], [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl ]) @@ -50,10 +6683,8 @@ m4_define([_AM_AUTOCONF_VERSION], []) # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced. # This function is AC_REQUIREd by AC_INIT_AUTOMAKE. AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], -[AM_AUTOMAKE_VERSION([1.10.1])dnl -m4_ifndef([AC_AUTOCONF_VERSION], - [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl -_AM_AUTOCONF_VERSION(AC_AUTOCONF_VERSION)]) +[AM_AUTOMAKE_VERSION([1.10])dnl +_AM_AUTOCONF_VERSION(m4_PACKAGE_VERSION)]) # AM_AUX_DIR_EXPAND -*- Autoconf -*- @@ -325,7 +6956,7 @@ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], # 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 + if sed 10q "$mf" | grep '^#.*generated by automake' > /dev/null 2>&1; then dirpart=`AS_DIRNAME("$mf")` else continue @@ -373,13 +7004,13 @@ AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS], # Do all the work for Automake. -*- Autoconf -*- # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, -# 2005, 2006, 2008 Free Software Foundation, Inc. +# 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. -# serial 13 +# serial 12 # 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. @@ -484,17 +7115,16 @@ AC_PROVIDE_IFELSE([AC_PROG_OBJC], # 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:* ) + $1 | $1:* ) 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]) +echo "timestamp for $1" >`AS_DIRNAME([$1])`/stamp-h[]$_am_stamp_count]) # Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc. # @@ -766,7 +7396,7 @@ AC_SUBST([INSTALL_STRIP_PROGRAM])]) # _AM_SUBST_NOTMAKE(VARIABLE) # --------------------------- -# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in. +# Prevent Automake from outputing VARIABLE = @VARIABLE@ in Makefile.in. # This macro is traced by Automake. AC_DEFUN([_AM_SUBST_NOTMAKE]) diff --git a/doc/ng4.tex b/doc/ng4.tex index d03926b3..52278767 100644 --- a/doc/ng4.tex +++ b/doc/ng4.tex @@ -1,3 +1,14 @@ +% +% Requires latex and latex2html packages +% +% Generate pdf-file with +% pdflatex ng4.tex +% +% Generate html docu with +% latex2html ng4.tex +% + + \documentclass[12pt]{book} \usepackage{a4, epsf, graphicx} \usepackage{html} diff --git a/libsrc/Makefile.in b/libsrc/Makefile.in index 78d3ab21..ff432f27 100644 --- a/libsrc/Makefile.in +++ b/libsrc/Makefile.in @@ -1,8 +1,8 @@ -# Makefile.in generated by automake 1.10.1 from Makefile.am. +# Makefile.in generated by automake 1.10 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006 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. @@ -333,8 +333,8 @@ ID: $(HEADERS) $(SOURCES) $(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; nonemtpy = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ mkid -fID $$unique tags: TAGS @@ -359,8 +359,8 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ 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; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ @@ -370,12 +370,13 @@ ctags: CTAGS CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ + 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; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ test -z "$(CTAGS_ARGS)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique diff --git a/libsrc/csg/Makefile.in b/libsrc/csg/Makefile.in index b19dcd68..bc47fd7b 100644 --- a/libsrc/csg/Makefile.in +++ b/libsrc/csg/Makefile.in @@ -1,8 +1,8 @@ -# Makefile.in generated by automake 1.10.1 from Makefile.am. +# Makefile.in generated by automake 1.10 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006 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. @@ -54,7 +54,7 @@ am_libcsg_la_OBJECTS = algprim.lo brick.lo bspline2d.lo csgeom.lo \ meshsurf.lo polyhedra.lo revolution.lo singularref.lo solid.lo \ specpoin.lo spline3d.lo surface.lo triapprox.lo libcsg_la_OBJECTS = $(am_libcsg_la_OBJECTS) -DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) +DEFAULT_INCLUDES = -I. -I$(top_builddir)@am__isrc@ depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ @@ -349,8 +349,8 @@ ID: $(HEADERS) $(SOURCES) $(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; nonemtpy = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ mkid -fID $$unique tags: TAGS @@ -362,8 +362,8 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ 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; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ @@ -373,12 +373,13 @@ ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ + 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; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ test -z "$(CTAGS_ARGS)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique diff --git a/libsrc/csg/algprim.cpp b/libsrc/csg/algprim.cpp index b9e8b6d9..f101638a 100644 --- a/libsrc/csg/algprim.cpp +++ b/libsrc/csg/algprim.cpp @@ -108,7 +108,7 @@ namespace netgen void Plane :: GetPrimitiveData (const char *& classname, - ARRAY & coeffs) const + Array & coeffs) const { classname = "plane"; coeffs.SetSize (6); @@ -120,7 +120,7 @@ namespace netgen coeffs.Elem(6) = n(2); } - void Plane :: SetPrimitiveData (ARRAY & coeffs) + void Plane :: SetPrimitiveData (Array & coeffs) { p(0) = coeffs.Elem(1); p(1) = coeffs.Elem(2); @@ -376,7 +376,7 @@ namespace netgen c1 = (c(0) * c(0) + c(1) * c(1) + c(2) * c(2)) / (2 * r) - r / 2; } - void Sphere :: GetPrimitiveData (const char *& classname, ARRAY & coeffs) const + void Sphere :: GetPrimitiveData (const char *& classname, Array & coeffs) const { classname = "sphere"; coeffs.SetSize (4); @@ -386,7 +386,7 @@ namespace netgen coeffs.Elem(4) = r; } - void Sphere :: SetPrimitiveData (ARRAY & coeffs) + void Sphere :: SetPrimitiveData (Array & coeffs) { c(0) = coeffs.Elem(1); c(1) = coeffs.Elem(2); @@ -734,7 +734,7 @@ namespace netgen - Cylinder :: Cylinder (ARRAY & coeffs) + Cylinder :: Cylinder (Array & coeffs) { SetPrimitiveData(coeffs); } @@ -776,7 +776,7 @@ namespace netgen - void Cylinder :: GetPrimitiveData (const char *& classname, ARRAY & coeffs) const + void Cylinder :: GetPrimitiveData (const char *& classname, Array & coeffs) const { classname = "cylinder"; coeffs.SetSize (7); @@ -789,7 +789,7 @@ namespace netgen coeffs.Elem(7) = r; } - void Cylinder :: SetPrimitiveData (ARRAY & coeffs) + void Cylinder :: SetPrimitiveData (Array & coeffs) { a(0) = coeffs.Elem(1); a(1) = coeffs.Elem(2); @@ -1266,7 +1266,7 @@ namespace netgen - void Cone :: GetPrimitiveData (const char *& classname, ARRAY & coeffs) const + void Cone :: GetPrimitiveData (const char *& classname, Array & coeffs) const { classname = "cone"; coeffs.SetSize (8); @@ -1280,7 +1280,7 @@ namespace netgen coeffs.Elem(8) = rb; } - void Cone :: SetPrimitiveData (ARRAY & coeffs) + void Cone :: SetPrimitiveData (Array & coeffs) { a(0) = coeffs.Elem(1); a(1) = coeffs.Elem(2); @@ -1469,7 +1469,7 @@ namespace netgen r = ar; } - void Torus :: GetPrimitiveData (const char *& classname, ARRAY & coeffs) const + void Torus :: GetPrimitiveData (const char *& classname, Array & coeffs) const { classname = "torus"; coeffs.SetSize (8); @@ -1483,7 +1483,7 @@ namespace netgen coeffs.Elem(8) = r; } - void Torus :: SetPrimitiveData (ARRAY & coeffs) + void Torus :: SetPrimitiveData (Array & coeffs) { c(0) = coeffs.Elem(1); c(1) = coeffs.Elem(2); diff --git a/libsrc/csg/algprim.hpp b/libsrc/csg/algprim.hpp index 6a669b68..4c56edd7 100644 --- a/libsrc/csg/algprim.hpp +++ b/libsrc/csg/algprim.hpp @@ -62,8 +62,8 @@ public: Plane (const Point<3> & ap, Vec<3> an); virtual void GetPrimitiveData (const char *& classname, - ARRAY & coeffs) const; - virtual void SetPrimitiveData (ARRAY & coeffs); + Array & coeffs) const; + virtual void SetPrimitiveData (Array & coeffs); static Primitive * CreateDefault (); virtual Primitive * Copy () const; @@ -124,8 +124,8 @@ public: Sphere (const Point<3> & ac, double ar); virtual void GetPrimitiveData (const char *& classname, - ARRAY & coeffs) const; - virtual void SetPrimitiveData (ARRAY & coeffs); + Array & coeffs) const; + virtual void SetPrimitiveData (Array & coeffs); static Primitive * CreateDefault (); virtual Primitive * Copy () const; @@ -177,10 +177,10 @@ class Cylinder : public QuadraticSurface public: Cylinder (const Point<3> & aa, const Point<3> & ab, double ar); - Cylinder (ARRAY & coeffs); + Cylinder (Array & coeffs); - virtual void GetPrimitiveData (const char *& classname, ARRAY & coeffs) const; - virtual void SetPrimitiveData (ARRAY & coeffs); + virtual void GetPrimitiveData (const char *& classname, Array & coeffs) const; + virtual void SetPrimitiveData (Array & coeffs); static Primitive * CreateDefault (); virtual Primitive * Copy () const; @@ -238,8 +238,8 @@ public: /* static Primitive * CreateDefault (); - virtual void GetPrimitiveData (const char *& classname, ARRAY & coeffs) const; - virtual void SetPrimitiveData (ARRAY & coeffs); + virtual void GetPrimitiveData (const char *& classname, Array & coeffs) const; + virtual void SetPrimitiveData (Array & coeffs); */ /// virtual INSOLID_TYPE BoxInSolid (const BoxSphere<3> & box) const; @@ -324,8 +324,8 @@ public: Cone (const Point<3> & aa, const Point<3> & ab, double ara, double arb); /// static Primitive * CreateDefault (); - virtual void GetPrimitiveData (const char *& classname, ARRAY & coeffs) const; - virtual void SetPrimitiveData (ARRAY & coeffs); + virtual void GetPrimitiveData (const char *& classname, Array & coeffs) const; + virtual void SetPrimitiveData (Array & coeffs); /// virtual INSOLID_TYPE BoxInSolid (const BoxSphere<3> & box) const; @@ -392,9 +392,9 @@ public: virtual Point<3> GetSurfacePoint () const; /// OK virtual void GetPrimitiveData (const char *& classname, - ARRAY & coeffs) const; + Array & coeffs) const; /// OK - virtual void SetPrimitiveData (ARRAY & coeffs); + virtual void SetPrimitiveData (Array & coeffs); /// OK static Primitive * CreateDefault (); /// OK diff --git a/libsrc/csg/brick.cpp b/libsrc/csg/brick.cpp index 014538ac..54c23b17 100644 --- a/libsrc/csg/brick.cpp +++ b/libsrc/csg/brick.cpp @@ -343,7 +343,7 @@ INSOLID_TYPE Brick :: VecInSolid4 (const Point<3> & p, void Brick :: -GetPrimitiveData (const char *& classname, ARRAY & coeffs) const +GetPrimitiveData (const char *& classname, Array & coeffs) const { classname = "brick"; coeffs.SetSize(12); @@ -364,7 +364,7 @@ GetPrimitiveData (const char *& classname, ARRAY & coeffs) const coeffs.Elem(12) = p4(2); } -void Brick :: SetPrimitiveData (ARRAY & coeffs) +void Brick :: SetPrimitiveData (Array & coeffs) { p1(0) = coeffs.Elem(1); p1(1) = coeffs.Elem(2); @@ -414,7 +414,7 @@ void Brick :: CalcData() { 1, 5, 3, 7 }, { 2, 4, 6, 8 } }; - ARRAY data(6); + Array data(6); for (i = 0; i < 6; i++) { const Point<3> lp1 = pi[lface[i][0]-1]; diff --git a/libsrc/csg/brick.hpp b/libsrc/csg/brick.hpp index a5238075..53265050 100644 --- a/libsrc/csg/brick.hpp +++ b/libsrc/csg/brick.hpp @@ -51,8 +51,8 @@ class Brick : public Primitive { Point<3> p1, p2, p3, p4; Vec<3> v12, v13, v14; - // ARRAY faces; - ARRAY faces; + // Array faces; + Array faces; public: Brick (Point<3> ap1, Point<3> ap2, Point<3> ap3, Point<3> ap4); @@ -95,8 +95,8 @@ public: { return *faces[i]; } - virtual void GetPrimitiveData (const char *& classname, ARRAY & coeffs) const; - virtual void SetPrimitiveData (ARRAY & coeffs); + virtual void GetPrimitiveData (const char *& classname, Array & coeffs) const; + virtual void SetPrimitiveData (Array & coeffs); virtual void Reduce (const BoxSphere<3> & box); virtual void UnReduce (); diff --git a/libsrc/csg/csgeom.cpp b/libsrc/csg/csgeom.cpp index ec0ca6e9..1310605f 100644 --- a/libsrc/csg/csgeom.cpp +++ b/libsrc/csg/csgeom.cpp @@ -73,7 +73,7 @@ namespace netgen void CSGeometry :: Clean () { - ARRAY< Solid* > to_delete; + Array< Solid* > to_delete; for (int i = 0; i < solids.Size(); i++) if(!to_delete.Contains(solids[i]->S1())) @@ -151,7 +151,7 @@ namespace netgen if (prim) { const char * classname; - ARRAY coeffs; + Array coeffs; prim -> GetPrimitiveData (classname, coeffs); @@ -222,7 +222,7 @@ namespace netgen char key[100], name[100], classname[100], sname[100]; int ncoeff, i, j; - ARRAY coeff; + Array coeff; while (ist.good()) { @@ -320,7 +320,7 @@ namespace netgen - ARRAY coeffs; + Array coeffs; const char * classname; out << "csgsurfaces " << GetNSurf() << "\n"; @@ -361,7 +361,7 @@ namespace netgen void CSGeometry :: LoadSurfaces (istream & in) { - ARRAY coeffs; + Array coeffs; string classname; int nsurfaces,size; @@ -632,7 +632,7 @@ namespace netgen void CSGeometry :: SetFlags (const char * solidname, const Flags & flags) { Solid * solid = solids.Elem(solidname); - ARRAY surfind; + Array surfind; int i; double maxh = flags.GetNumFlag ("maxh", -1); @@ -662,7 +662,7 @@ namespace netgen if (flags.StringListFlagDefined ("bcname")) { - const ARRAY & bcname = flags.GetStringListFlag("bcname"); + const Array & bcname = flags.GetStringListFlag("bcname"); Polyhedra * polyh; if(solid->S1()) @@ -672,7 +672,7 @@ namespace netgen if(polyh) { - ARRAY < ARRAY * > polysurfs; + Array < Array * > polysurfs; polyh->GetPolySurfs(polysurfs); if(bcname.Size() != polysurfs.Size()) cerr << "WARNING: solid \"" << solidname << "\" has " << polysurfs.Size() @@ -716,7 +716,7 @@ namespace netgen if (flags.NumListFlagDefined ("bc")) { - const ARRAY & bcnum = flags.GetNumListFlag("bc"); + const Array & bcnum = flags.GetNumListFlag("bc"); Polyhedra * polyh; if(solid->S1()) @@ -726,7 +726,7 @@ namespace netgen if(polyh) { - ARRAY < ARRAY * > polysurfs; + Array < Array * > polysurfs; polyh->GetPolySurfs(polysurfs); if(bcnum.Size() != polysurfs.Size()) cerr << "WARNING: solid \"" << solidname << "\" has " << polysurfs.Size() @@ -797,7 +797,7 @@ namespace netgen void CSGeometry :: GetSurfaceIndices (const Solid * sol, const BoxSphere<3> & box, - ARRAY & locsurf) const + Array & locsurf) const { ReducePrimitiveIterator rpi(box); UnReducePrimitiveIterator urpi; @@ -826,7 +826,7 @@ namespace netgen void CSGeometry :: GetIndependentSurfaceIndices (const Solid * sol, const BoxSphere<3> & box, - ARRAY & locsurf) const + Array & locsurf) const { ReducePrimitiveIterator rpi(box); UnReducePrimitiveIterator urpi; @@ -885,7 +885,7 @@ namespace netgen void CSGeometry :: GetIndependentSurfaceIndices (const Solid * sol, const Point<3> & p, Vec<3> & v, - ARRAY & locsurf) const + Array & locsurf) const { cout << "very dangerous" << endl; Point<3> p2 = p + 1e-2 * v; @@ -897,7 +897,7 @@ namespace netgen void CSGeometry :: - GetIndependentSurfaceIndices (ARRAY & locsurf) const + GetIndependentSurfaceIndices (Array & locsurf) const { for (int i = 0; i < locsurf.Size(); i++) locsurf[i] = isidenticto[locsurf[i]]; @@ -938,7 +938,7 @@ namespace netgen delete triapprox[i]; triapprox.SetSize (ntlo); - ARRAY surfind; + Array surfind; IndexSet iset(GetNSurf()); for (int i = 0; i < ntlo; i++) @@ -1062,7 +1062,7 @@ namespace netgen // IndexSet iset(GetNSurf()); locsol -> GetSurfaceIndices (iset); - const ARRAY & lsurfi = iset.Array(); + const Array & lsurfi = iset.Array(); locsol -> IterateSolid (urpi); diff --git a/libsrc/csg/csgeom.hpp b/libsrc/csg/csgeom.hpp index a71c9c03..9e22c76b 100644 --- a/libsrc/csg/csgeom.hpp +++ b/libsrc/csg/csgeom.hpp @@ -93,10 +93,10 @@ private: public: /// primitive of surface - ARRAY surf2prim; + Array surf2prim; private: - ARRAY delete_them; + Array delete_them; /// all named solids SYMBOLTABLE solids; @@ -107,16 +107,16 @@ private: SYMBOLTABLE< SplineGeometry<3>* > splinecurves3d; /// all top level objects: solids and surfaces - ARRAY toplevelobjects; + Array toplevelobjects; /// additional points specified by user - ARRAY > userpoints; - ARRAY userpoints_ref_factor; + Array > userpoints; + Array userpoints_ref_factor; - mutable ARRAY > identpoints; + mutable Array > identpoints; /// triangular approximation of top level objects - ARRAY triapprox; + Array triapprox; /// increment, if geometry is changed static int changeval; @@ -129,7 +129,7 @@ private: /// identic surfaces are stored by pair of indizes, val = inverse INDEX_2_HASHTABLE identicsurfaces; - ARRAY isidenticto; + Array isidenticto; /// identification of boundaries (periodic, thin domains, ...) double ideps; @@ -223,10 +223,10 @@ public: // quick implementations: - ARRAY singfaces; - ARRAY singedges; - ARRAY singpoints; - ARRAY identifications; + Array singfaces; + Array singedges; + Array singpoints; + Array identifications; int GetNIdentifications (void) const { return identifications.Size(); } void AddIdentification (Identification * ident); @@ -241,17 +241,17 @@ public: /// void GetSurfaceIndices (const Solid * sol, const BoxSphere<3> & box, - ARRAY & locsurf) const; + Array & locsurf) const; /// void GetIndependentSurfaceIndices (const Solid * sol, const BoxSphere<3> & box, - ARRAY & locsurf) const; + Array & locsurf) const; /// void GetIndependentSurfaceIndices (const Solid * sol, const Point<3> & p, Vec<3> & v, - ARRAY & locsurf) const; + Array & locsurf) const; /// - void GetIndependentSurfaceIndices (ARRAY & locsurf) const; + void GetIndependentSurfaceIndices (Array & locsurf) const; /// int GetSurfaceClassRepresentant (int si) const @@ -302,7 +302,7 @@ public: string * bcname; }; - ARRAY bcmodifications; + Array bcmodifications; }; #endif diff --git a/libsrc/csg/csgparser.cpp b/libsrc/csg/csgparser.cpp index c9e4a928..6f7b32f8 100644 --- a/libsrc/csg/csgparser.cpp +++ b/libsrc/csg/csgparser.cpp @@ -389,7 +389,7 @@ namespace netgen int inputface = 0; while (1) { - ARRAY pnums,cleaned_pnums; + Array pnums,cleaned_pnums; for(int i=0; i<3; i++) { pnums.Append((int) (ParseNumber (scan))); @@ -717,7 +717,7 @@ namespace netgen if(scan.GetToken() == '-' || scan.GetToken() == TOK_NUM) { - ARRAY vals; + Array vals; vals.Append (ParseNumber(scan)); while (scan.GetToken() == ',') { @@ -729,7 +729,7 @@ namespace netgen } else { // string list - ARRAY vals; + Array vals; string val = scan.GetStringValue(); vals.Append(new char[val.size()+1]); strcpy(vals.Last(),val.c_str()); @@ -833,7 +833,7 @@ namespace netgen if (flags.NumListFlagDefined ("col")) { - const ARRAY & col = + const Array & col = flags.GetNumListFlag ("col"); tlo->SetRGB (col[0], col[1], col[2]); } @@ -859,7 +859,7 @@ namespace netgen ParseChar (scan, ';'); - ARRAY si; + Array si; geom->GetSolid(surfname)->GetSurfaceIndices(si); int tlonr = geom->SetTopLevelObject ((Solid*)geom->GetSolid(name), @@ -867,7 +867,7 @@ namespace netgen TopLevelObject * tlo = geom->GetTopLevelObject (tlonr); if (flags.NumListFlagDefined ("col")) { - const ARRAY & col = flags.GetNumListFlag ("col"); + const Array & col = flags.GetNumListFlag ("col"); tlo->SetRGB (col.Get(1), col.Get(2), col.Get(3)); } if (flags.GetDefineFlag ("transparent")) @@ -905,7 +905,7 @@ namespace netgen ParseChar (scan, ';'); - ARRAY si1, si2; + Array si1, si2; geom->GetSolid(name1)->GetSurfaceIndices(si1); geom->GetSolid(name2)->GetSurfaceIndices(si2); @@ -941,7 +941,7 @@ namespace netgen ParseChar (scan, ';'); - ARRAY si1, si2; + Array si1, si2; geom->GetSolid(name1)->GetSurfaceIndices(si1); geom->GetSolid(name2)->GetSurfaceIndices(si2); @@ -1169,7 +1169,7 @@ namespace netgen CSGeometry::BCModification bcm; bcm.bcname = NULL; - ARRAY si; + Array si; geom->GetSolid(name1)->GetSurfaceIndices(si); if(si.Size() == 0) @@ -1221,7 +1221,7 @@ namespace netgen bcm.bcname = NULL; - ARRAY si; + Array si; geom->GetSolid(name1)->GetSurfaceIndices(si); if(si.Size() == 0) diff --git a/libsrc/csg/edgeflw.cpp b/libsrc/csg/edgeflw.cpp index ca802f51..cb24a9ba 100644 --- a/libsrc/csg/edgeflw.cpp +++ b/libsrc/csg/edgeflw.cpp @@ -10,7 +10,7 @@ namespace netgen EdgeCalculation :: EdgeCalculation (const CSGeometry & ageometry, - ARRAY & aspecpoints) + Array & aspecpoints) : geometry(ageometry), specpoints(aspecpoints) { Box<3> bbox = geometry.BoundingBox(); @@ -44,7 +44,7 @@ namespace netgen // add all special points before edge points (important for periodic identification) // JS, Jan 2007 const double di=1e-7*geometry.MaxSize(); - ARRAY locsearch; + Array locsearch; for (int i = 0; i < specpoints.Size(); i++) if (specpoints[i].unconditional) @@ -91,9 +91,9 @@ namespace netgen void EdgeCalculation :: CalcEdges1 (double h, Mesh & mesh) { - ARRAY hsp(specpoints.Size()); - ARRAY glob2hsp(specpoints.Size()); - ARRAY startpoints, endpoints; + Array hsp(specpoints.Size()); + Array glob2hsp(specpoints.Size()); + Array startpoints, endpoints; int pos, ep; @@ -102,11 +102,11 @@ namespace netgen Point<3> p, np; int pi1, s1, s2, s1_orig, s2_orig; - ARRAY > edgepoints; - ARRAY curvelength; + Array > edgepoints; + Array curvelength; int copyedge = 0, copyfromedge = -1, copyedgeidentification = -1; - ARRAY locsurfind, locind; + Array locsurfind, locind; int checkedcopy = 0; @@ -401,8 +401,8 @@ namespace netgen } - ARRAY refedges; - ARRAY refedgesinv; + Array refedges; + Array refedgesinv; AnalyzeEdge (s1_orig, s2_orig, s1, s2, pos, layer, @@ -505,7 +505,7 @@ namespace netgen SegmentIndex si; PointIndex pi; - ARRAY osedges(cntedge); + Array osedges(cntedge); INDEX_2_HASHTABLE osedgesht (cntedge+1); osedges = 2; @@ -634,17 +634,17 @@ namespace netgen void EdgeCalculation :: FollowEdge (int pi1, int & ep, int & pos, - const ARRAY & hsp, + const Array & hsp, double h, const Mesh & mesh, - ARRAY > & edgepoints, - ARRAY & curvelength) + Array > & edgepoints, + Array & curvelength) { int s1, s2, s1_rep, s2_rep; double len, steplen, cursteplen, loch; Point<3> p, np, pnp; Vec<3> a1, a2, t; - ARRAY locind; + Array locind; double size = geometry.MaxSize(); double epspointdist2 = size * 1e-6; @@ -862,9 +862,9 @@ namespace netgen void EdgeCalculation :: AnalyzeEdge (int s1, int s2, int s1_rep, int s2_rep, int pos, int layer, - const ARRAY > & edgepoints, - ARRAY & refedges, - ARRAY & refedgesinv) + const Array > & edgepoints, + Array & refedges, + Array & refedgesinv) { int j, k, l; int hi; @@ -872,9 +872,9 @@ namespace netgen Vec<3> t, a1, a2, m, n; Segment seg; Solid * locsol; - ARRAY locsurfind, locsurfind2; + Array locsurfind, locsurfind2; - ARRAY edges_priority; + Array edges_priority; double size = geometry.MaxSize(); bool debug = 0; @@ -1020,7 +1020,7 @@ namespace netgen //int k; double eps = 1e-8*size; - ARRAY pre_ok(2); + Array pre_ok(2); do { @@ -1223,10 +1223,10 @@ namespace netgen void EdgeCalculation :: - StoreEdge (const ARRAY & refedges, - const ARRAY & refedgesinv, - const ARRAY > & edgepoints, - const ARRAY & curvelength, + StoreEdge (const Array & refedges, + const Array & refedgesinv, + const Array > & edgepoints, + const Array & curvelength, int layer, Mesh & mesh) { @@ -1272,7 +1272,7 @@ namespace netgen const double di=1e-7*geometry.MaxSize(); - ARRAY locsearch; + Array locsearch; meshpoint_tree -> GetIntersecting (p-Vec<3> (di,di,di), p+Vec<3> (di,di,di), locsearch); if (locsearch.Size()) @@ -1395,10 +1395,10 @@ namespace netgen void EdgeCalculation :: - StoreShortEdge (const ARRAY & refedges, - const ARRAY & refedgesinv, - const ARRAY > & edgepoints, - const ARRAY & curvelength, + StoreShortEdge (const Array & refedges, + const Array & refedgesinv, + const Array > & edgepoints, + const Array & curvelength, int layer, Mesh & mesh) { @@ -1526,8 +1526,8 @@ namespace netgen void EdgeCalculation :: - CopyEdge (const ARRAY & refedges, - const ARRAY & refedgesinv, + CopyEdge (const Array & refedges, + const Array & refedgesinv, int copyfromedge, const Point<3> & fromstart, const Point<3> & fromend, const Point<3> & tostart, const Point<3> & toend, @@ -1679,7 +1679,7 @@ namespace netgen Point<3> p1, p2; Vec<3> nv, tv; Solid * tansol; - ARRAY tansurfind; + Array tansurfind; // const Solid * sol; double size = geometry.MaxSize(); diff --git a/libsrc/csg/edgeflw.hpp b/libsrc/csg/edgeflw.hpp index ad386183..fcd6d1da 100644 --- a/libsrc/csg/edgeflw.hpp +++ b/libsrc/csg/edgeflw.hpp @@ -21,7 +21,7 @@ points have to be given. */ extern void CalcEdges (const CSGeometry & geometry, - const ARRAY & specpoints, + const Array & specpoints, double h, Mesh & mesh); @@ -31,7 +31,7 @@ extern void CalcEdges (const CSGeometry & geometry, class EdgeCalculation { const CSGeometry & geometry; - ARRAY & specpoints; + Array & specpoints; Point3dTree * searchtree; Point3dTree * meshpoint_tree; int cntedge; @@ -40,7 +40,7 @@ class EdgeCalculation public: EdgeCalculation (const CSGeometry & ageometry, - ARRAY & aspecpoints); + Array & aspecpoints); ~EdgeCalculation(); @@ -54,34 +54,34 @@ private: void FollowEdge (int pi1, int & ep, int & pos, - // const ARRAY & hsp, - const ARRAY & hsp, + // const Array & hsp, + const Array & hsp, double h, const Mesh & mesh, - ARRAY > & edgepoints, - ARRAY & curvelength); + Array > & edgepoints, + Array & curvelength); void AnalyzeEdge (int s1, int s2, int s1_rep, int s2_rep, int pos, int layer, - const ARRAY > & edgepoints, - ARRAY & refedges, - ARRAY & refedgesinv); + const Array > & edgepoints, + Array & refedges, + Array & refedgesinv); - void StoreEdge (const ARRAY & refedges, - const ARRAY & refedgesinv, - const ARRAY > & edgepoints, - const ARRAY & curvelength, + void StoreEdge (const Array & refedges, + const Array & refedgesinv, + const Array > & edgepoints, + const Array & curvelength, int layer, Mesh & mesh); - void StoreShortEdge (const ARRAY & refedges, - const ARRAY & refedgesinv, - const ARRAY > & edgepoints, - const ARRAY & curvelength, + void StoreShortEdge (const Array & refedges, + const Array & refedgesinv, + const Array > & edgepoints, + const Array & curvelength, int layer, Mesh & mesh); - void CopyEdge (const ARRAY & refedges, - const ARRAY & refedgesinv, + void CopyEdge (const Array & refedges, + const Array & refedgesinv, int copyfromedge, const Point<3> & fromstart, const Point<3> & fromend, const Point<3> & tostart, const Point<3> & toend, diff --git a/libsrc/csg/explicitcurve2d.hpp b/libsrc/csg/explicitcurve2d.hpp index af405aed..8b596f0f 100644 --- a/libsrc/csg/explicitcurve2d.hpp +++ b/libsrc/csg/explicitcurve2d.hpp @@ -66,9 +66,9 @@ public: class BSplineCurve2d : public ExplicitCurve2d { /// - ARRAY > points; + Array > points; /// - ARRAY intervallused; + Array intervallused; /// int redlevel; diff --git a/libsrc/csg/extrusion.cpp b/libsrc/csg/extrusion.cpp index 51f1e57e..c9e1bbf2 100644 --- a/libsrc/csg/extrusion.cpp +++ b/libsrc/csg/extrusion.cpp @@ -54,13 +54,13 @@ namespace netgen Init(); } - ExtrusionFace :: ExtrusionFace(const ARRAY & raw_data) + ExtrusionFace :: ExtrusionFace(const Array & raw_data) { deletable = true; int pos=0; - ARRAY< Point<2> > p(3); + Array< Point<2> > p(3); int ptype = int(raw_data[pos]); pos++; @@ -147,7 +147,7 @@ namespace netgen - ARRAY mindist(path->GetNSplines()); + Array mindist(path->GetNSplines()); for(int i=0; iGetNSplines(); i++) { @@ -355,12 +355,12 @@ namespace netgen grad_t *= 1./facA; - ARRAY < Vec<3> > dphi_dX(3); + Array < Vec<3> > dphi_dX(3); for(i=0; i<3; i++) dphi_dX[i] = grad_t(i)*phip; - ARRAY < Vec<3> > dy_dir_dX(3); + Array < Vec<3> > dy_dir_dX(3); double lphip = phip.Length(); @@ -370,7 +370,7 @@ namespace netgen for(i=0; i<3; i++) dy_dir_dX[i] *= grad_t(i); - ARRAY < Vec<3> > dx_dir_dX(3); + Array < Vec<3> > dx_dir_dX(3); for(i=0; i<3; i++) dx_dir_dX[i] = Cross(dy_dir_dX[i],z_dir[seg]); @@ -557,7 +557,7 @@ namespace netgen v2d(1) = v * loc_z_dir[seg]; Vec<2> n(v2d(1),-v2d(0)); - ARRAY < Point<2> > ips; + Array < Point<2> > ips; profile->LineIntersections(v2d(1), @@ -702,7 +702,7 @@ namespace netgen } - void ExtrusionFace :: GetRawData(ARRAY & data) const + void ExtrusionFace :: GetRawData(Array & data) const { data.DeleteAll(); profile->GetRawData(data); @@ -759,7 +759,7 @@ namespace netgen INSOLID_TYPE Extrusion :: PointInSolid (const Point<3> & p, const double eps, - ARRAY * const facenums) const + Array * const facenums) const { Vec<3> random_vec(-0.4561,0.7382,0.4970247); @@ -805,7 +805,7 @@ namespace netgen const Vec<3> & v, double eps) const { - ARRAY facenums; + Array facenums; INSOLID_TYPE pInSolid = PointInSolid(p,eps,&facenums); if(pInSolid != DOES_INTERSECT) diff --git a/libsrc/csg/extrusion.hpp b/libsrc/csg/extrusion.hpp index 2dff5b65..d05cd55f 100644 --- a/libsrc/csg/extrusion.hpp +++ b/libsrc/csg/extrusion.hpp @@ -13,11 +13,11 @@ private: bool deletable; - ARRAY< const SplineSeg3<3> * > spline3_path; - ARRAY< const LineSeg<3> * > line_path; + Array< const SplineSeg3<3> * > spline3_path; + Array< const LineSeg<3> * > line_path; - mutable ARRAY < Vec<3> > x_dir, y_dir, z_dir, loc_z_dir; - mutable ARRAY < Point<3> > p0; + mutable Array < Vec<3> > x_dir, y_dir, z_dir, loc_z_dir; + mutable Array < Point<3> > p0; mutable Vec<3> profile_tangent; mutable double profile_par; @@ -46,7 +46,7 @@ public: const SplineGeometry<3> * path_in, const Vec<3> & z_direction); - ExtrusionFace(const ARRAY & raw_data); + ExtrusionFace(const Array & raw_data); ~ExtrusionFace(); @@ -91,7 +91,7 @@ public: const Vec<3> & GetProfileTangent (void) const {return profile_tangent;} double GetProfilePar(void) const {return profile_par;} - void GetRawData(ARRAY & data) const; + void GetRawData(Array & data) const; }; @@ -104,7 +104,7 @@ private: const Vec<3> & z_direction; - ARRAY faces; + Array faces; mutable int latestfacenum; @@ -118,7 +118,7 @@ public: double eps) const; INSOLID_TYPE PointInSolid (const Point<3> & p, double eps, - ARRAY * const facenums) const; + Array * const facenums) const; virtual INSOLID_TYPE VecInSolid (const Point<3> & p, const Vec<3> & v, double eps) const; diff --git a/libsrc/csg/genmesh.cpp b/libsrc/csg/genmesh.cpp index 17d2fcce..722b42b6 100644 --- a/libsrc/csg/genmesh.cpp +++ b/libsrc/csg/genmesh.cpp @@ -10,8 +10,8 @@ namespace netgen { - ARRAY specpoints; - static ARRAY spoints; + Array specpoints; + static Array spoints; #define TCL_OK 0 #define TCL_ERROR 1 @@ -130,7 +130,7 @@ namespace netgen } } - ARRAY loc; + Array loc; if (!ec.point_on_edge_problem) for (SegmentIndex si = 0; si < mesh.GetNSeg(); si++) { @@ -224,17 +224,17 @@ namespace netgen const char * savetask = multithread.task; multithread.task = "Surface meshing"; - ARRAY segments; + Array segments; int noldp = mesh.GetNP(); double starttime = GetTime(); // find master faces from identified - ARRAY masterface(mesh.GetNFD()); + Array masterface(mesh.GetNFD()); for (int i = 1; i <= mesh.GetNFD(); i++) masterface.Elem(i) = i; - ARRAY fpairs; + Array fpairs; bool changed; do { @@ -373,7 +373,7 @@ namespace netgen for (int j = 0; j < geom.singfaces.Size(); j++) { - ARRAY surfs; + Array surfs; geom.GetIndependentSurfaceIndices (geom.singfaces[j]->GetSolid(), geom.BoundingBox(), surfs); for (int k = 1; k <= mesh.GetNFD(); k++) @@ -680,7 +680,7 @@ namespace netgen mesh->SetGlobalH (mparam.maxh); mesh->SetMinimalH (mparam.minh); - ARRAY maxhdom(geom.GetNTopLevelObjects()); + Array maxhdom(geom.GetNTopLevelObjects()); for (int i = 0; i < maxhdom.Size(); i++) maxhdom[i] = geom.GetTopLevelObject(i)->GetMaxH(); diff --git a/libsrc/csg/identify.cpp b/libsrc/csg/identify.cpp index b6e8e539..2e42117f 100644 --- a/libsrc/csg/identify.cpp +++ b/libsrc/csg/identify.cpp @@ -28,7 +28,7 @@ ostream & operator<< (ostream & ost, Identification & ident) /* -void Identification :: IdentifySpecialPoints (ARRAY & points) +void Identification :: IdentifySpecialPoints (Array & points) { ; } @@ -84,7 +84,7 @@ void Identification :: IdentifyFaces (class Mesh & mesh) } void Identification :: -BuildSurfaceElements (ARRAY & segs, +BuildSurfaceElements (Array & segs, Mesh & mesh, const Surface * surf) { cout << "Identification::BuildSurfaceElements called for base-class" << endl; @@ -93,14 +93,14 @@ BuildSurfaceElements (ARRAY & segs, void Identification :: -BuildVolumeElements (ARRAY & surfels, +BuildVolumeElements (Array & surfels, class Mesh & mesh) { ; } void Identification :: -GetIdentifiedFaces (ARRAY & idfaces) const +GetIdentifiedFaces (Array & idfaces) const { idfaces.SetSize(0); for (int i = 1; i <= identfaces.GetNBags(); i++) @@ -134,7 +134,7 @@ PeriodicIdentification :: ~PeriodicIdentification () /* void PeriodicIdentification :: IdentifySpecialPoints -(ARRAY & points) +(Array & points) { int i, j; int bestj; @@ -438,7 +438,7 @@ void PeriodicIdentification :: IdentifyFaces (class Mesh & mesh) void PeriodicIdentification :: -BuildSurfaceElements (ARRAY & segs, +BuildSurfaceElements (Array & segs, Mesh & mesh, const Surface * surf) { int found = 0; @@ -450,7 +450,7 @@ BuildSurfaceElements (ARRAY & segs, if (geom.GetSurface(surfnr) == s1 || geom.GetSurface(surfnr) == s2) { - ARRAY copy_points; + Array copy_points; for (int i = 1; i <= mesh.GetNSE(); i++) { @@ -601,7 +601,7 @@ void CloseSurfaceIdentification :: GetData (ostream & ost) const /* void CloseSurfaceIdentification :: IdentifySpecialPoints -(ARRAY & points) +(Array & points) { int i, j; int bestj; @@ -669,7 +669,7 @@ Identifyable (const SpecialPoint & sp1, const SpecialPoint & sp2, if (!dom_surf_valid) { const_cast (dom_surf_valid) = 1; - ARRAY & hsurf = const_cast&> (domain_surfaces); + Array & hsurf = const_cast&> (domain_surfaces); if (domain) { @@ -879,7 +879,7 @@ GetIdentifiedPoint (class Mesh & mesh, int pi) const Surface * sold, *snew; const Point<3> & p = mesh.Point (pi); - ARRAY identmap(mesh.GetNP()); + Array identmap(mesh.GetNP()); mesh.GetIdentifications().GetMap (nr, identmap); if (identmap.Get(pi)) return identmap.Get(pi); @@ -950,13 +950,13 @@ void CloseSurfaceIdentification :: IdentifyPoints (Mesh & mesh) { int np = mesh.GetNP(); - ARRAY points_on_surf2; + Array points_on_surf2; for (int i2 = 1; i2 <= np; i2++) if (s2->PointOnSurface (mesh.Point(i2))) points_on_surf2.Append (i2); - ARRAY surfs_of_p1; + Array surfs_of_p1; for (int i1 = 1; i1 <= np; i1++) { @@ -1072,7 +1072,7 @@ void CloseSurfaceIdentification :: IdentifyFaces (class Mesh & mesh) s2rep = geom.GetSurfaceClassRepresentant(i); } - ARRAY segs_on_face1, segs_on_face2; + Array segs_on_face1, segs_on_face2; identfaces.DeleteData(); @@ -1201,13 +1201,13 @@ void CloseSurfaceIdentification :: IdentifyFaces (class Mesh & mesh) void CloseSurfaceIdentification :: -BuildSurfaceElements (ARRAY & segs, +BuildSurfaceElements (Array & segs, Mesh & mesh, const Surface * surf) { bool found = 0; int cntquads = 0; - ARRAY identmap; + Array identmap; identmap = 0; mesh.GetIdentifications().GetMap (nr, identmap); @@ -1222,7 +1222,7 @@ BuildSurfaceElements (ARRAY & segs, //(*testout) << "segs = " << endl << segs << endl; //(*testout) << "identmap = " << endl << identmap << endl; - //ARRAY foundseg(segs.Size()); + //Array foundseg(segs.Size()); //foundseg = false; // insert quad layer: @@ -1275,7 +1275,7 @@ BuildSurfaceElements (ARRAY & segs, { PrintMessage(3, "insert quad layer of ", cntquads, " elements at face ", segs.Get(1).si); - //ARRAY aux; + //Array aux; //for(int i=0; i & segs, void CloseSurfaceIdentification :: -BuildSurfaceElements2 (ARRAY & segs, +BuildSurfaceElements2 (Array & segs, Mesh & mesh, const Surface * surf) { // copy mesh @@ -1398,7 +1398,7 @@ BuildSurfaceElements2 (ARRAY & segs, void CloseSurfaceIdentification :: -BuildVolumeElements (ARRAY & surfels, +BuildVolumeElements (Array & surfels, class Mesh & mesh) { ; @@ -1459,7 +1459,7 @@ void CloseEdgesIdentification :: GetData (ostream & ost) const /* void CloseEdgesIdentification :: IdentifySpecialPoints -(ARRAY & points) +(Array & points) { int i, j; int bestj; @@ -1614,7 +1614,7 @@ void CloseEdgesIdentification :: IdentifyPoints (Mesh & mesh) } void CloseEdgesIdentification :: -BuildSurfaceElements (ARRAY & segs, +BuildSurfaceElements (Array & segs, Mesh & mesh, const Surface * surf) { int i1, i2; diff --git a/libsrc/csg/identify.hpp b/libsrc/csg/identify.hpp index 651ef39f..f53a9bf0 100644 --- a/libsrc/csg/identify.hpp +++ b/libsrc/csg/identify.hpp @@ -30,7 +30,7 @@ public: virtual void GetData (ostream & ost) const = 0; /// obsolete - // virtual void IdentifySpecialPoints (ARRAY & points); + // virtual void IdentifySpecialPoints (Array & points); /// can identify both special points (fixed direction) /// (identified points, same tangent) @@ -55,16 +55,16 @@ public: virtual int GetIdentifiedPoint (class Mesh & mesh, int pi1); /// copy surfaces, or fill rectangles - virtual void BuildSurfaceElements (ARRAY & segs, + virtual void BuildSurfaceElements (Array & segs, class Mesh & mesh, const Surface * surf); /// insert volume elements in thin layers - virtual void BuildVolumeElements (ARRAY & surfels, + virtual void BuildVolumeElements (Array & surfels, class Mesh & mesh); /// get list of identified faces - virtual void GetIdentifiedFaces (ARRAY & idfaces) const; + virtual void GetIdentifiedFaces (Array & idfaces) const; friend ostream & operator<< (ostream & ost, Identification & ident); }; @@ -84,7 +84,7 @@ public: virtual void GetData (ostream & ost) const; - // virtual void IdentifySpecialPoints (ARRAY & points); + // virtual void IdentifySpecialPoints (Array & points); virtual int Identifyable (const SpecialPoint & sp1, const SpecialPoint & sp2, const TABLE & specpoint2solid, const TABLE & specpoint2surface) const; @@ -93,7 +93,7 @@ public: virtual int GetIdentifiedPoint (class Mesh & mesh, int pi1); virtual void IdentifyPoints (class Mesh & mesh); virtual void IdentifyFaces (class Mesh & mesh); - virtual void BuildSurfaceElements (ARRAY & segs, + virtual void BuildSurfaceElements (Array & segs, class Mesh & mesh, const Surface * surf); }; @@ -116,9 +116,9 @@ class CloseSurfaceIdentification : public Identification int ref_levels_s2; /// double eps_n; - ARRAY slices; + Array slices; /// used only for domain-local identification: - ARRAY domain_surfaces; + Array domain_surfaces; /// bool dom_surf_valid; @@ -139,7 +139,7 @@ public: virtual void GetData (ostream & ost) const; - // virtual void IdentifySpecialPoints (ARRAY & points); + // virtual void IdentifySpecialPoints (Array & points); virtual int Identifyable (const SpecialPoint & sp1, const SpecialPoint & sp2, const TABLE & specpoint2solid, const TABLE & specpoint2surface) const; @@ -147,17 +147,17 @@ public: virtual int IdentifyableCandidate (const SpecialPoint & sp1) const; virtual int ShortEdge (const SpecialPoint & sp1, const SpecialPoint & sp2) const; virtual int GetIdentifiedPoint (class Mesh & mesh, int pi1); - const ARRAY & GetSlices () const { return slices; } + const Array & GetSlices () const { return slices; } virtual void IdentifyPoints (class Mesh & mesh); virtual void IdentifyFaces (class Mesh & mesh); - virtual void BuildSurfaceElements (ARRAY & segs, + virtual void BuildSurfaceElements (Array & segs, class Mesh & mesh, const Surface * surf); - void BuildSurfaceElements2 (ARRAY & segs, + void BuildSurfaceElements2 (Array & segs, class Mesh & mesh, const Surface * surf); - virtual void BuildVolumeElements (ARRAY & surfels, + virtual void BuildVolumeElements (Array & surfels, class Mesh & mesh); int RefLevels () const { return ref_levels; } @@ -189,14 +189,14 @@ public: virtual void Print (ostream & ost) const; virtual void GetData (ostream & ost) const; - // virtual void IdentifySpecialPoints (ARRAY & points); + // virtual void IdentifySpecialPoints (Array & points); virtual int Identifyable (const SpecialPoint & sp1, const SpecialPoint & sp2, const TABLE & specpoint2solid, const TABLE & specpoint2surface) const; virtual void IdentifyPoints (class Mesh & mesh); - virtual void BuildSurfaceElements (ARRAY & segs, + virtual void BuildSurfaceElements (Array & segs, class Mesh & mesh, const Surface * surf); }; diff --git a/libsrc/csg/polyhedra.cpp b/libsrc/csg/polyhedra.cpp index c82819e9..6d96d7b4 100644 --- a/libsrc/csg/polyhedra.cpp +++ b/libsrc/csg/polyhedra.cpp @@ -7,7 +7,7 @@ namespace netgen { Polyhedra::Face::Face (int pi1, int pi2, int pi3, - const ARRAY > & points, + const Array > & points, int ainputnr) { inputnr = ainputnr; @@ -165,7 +165,7 @@ INSOLID_TYPE Polyhedra :: PointInSolid (const Point<3> & p, void Polyhedra :: GetTangentialSurfaceIndices (const Point<3> & p, - ARRAY & surfind, double eps) const + Array & surfind, double eps) const { for (int i = 0; i < faces.Size(); i++) { @@ -192,7 +192,7 @@ INSOLID_TYPE Polyhedra :: VecInSolid (const Point<3> & p, const Vec<3> & v, double eps) const { - ARRAY point_on_faces; + Array point_on_faces; INSOLID_TYPE res(DOES_INTERSECT); Vec<3> vn = v; @@ -388,7 +388,7 @@ INSOLID_TYPE Polyhedra :: VecInSolid2 (const Point<3> & p, void Polyhedra :: GetTangentialVecSurfaceIndices2 (const Point<3> & p, const Vec<3> & v1, const Vec<3> & v2, - ARRAY & surfind, double eps) const + Array & surfind, double eps) const { Vec<3> v1n = v1; v1n.Normalize(); @@ -447,7 +447,7 @@ void Polyhedra :: GetTangentialVecSurfaceIndices2 (const Point<3> & p, const Vec void Polyhedra :: GetPrimitiveData (const char *& classname, - ARRAY & coeffs) const + Array & coeffs) const { classname = "Polyhedra"; coeffs.SetSize(0); @@ -471,7 +471,7 @@ void Polyhedra :: GetPrimitiveData (const char *& classname, */ } -void Polyhedra :: SetPrimitiveData (ARRAY & /* coeffs */) +void Polyhedra :: SetPrimitiveData (Array & /* coeffs */) { ; } @@ -589,7 +589,7 @@ int Polyhedra :: FaceBoxIntersection (int fnr, const BoxSphere<3> & box) const } -void Polyhedra :: GetPolySurfs(ARRAY < ARRAY * > & polysurfs) +void Polyhedra :: GetPolySurfs(Array < Array * > & polysurfs) { int maxnum = -1; @@ -601,14 +601,14 @@ void Polyhedra :: GetPolySurfs(ARRAY < ARRAY * > & polysurfs) polysurfs.SetSize(maxnum+1); for(int i=0; i; + polysurfs[i] = new Array; for(int i = 0; iAppend(faces[i].planenr); } -void Polyhedra::CalcSpecialPoints (ARRAY > & pts) const +void Polyhedra::CalcSpecialPoints (Array > & pts) const { for (int i = 0; i < points.Size(); i++) pts.Append (points[i]); @@ -616,7 +616,7 @@ void Polyhedra::CalcSpecialPoints (ARRAY > & pts) const void Polyhedra :: AnalyzeSpecialPoint (const Point<3> & /* pt */, - ARRAY > & /* specpts */) const + Array > & /* specpts */) const { ; } diff --git a/libsrc/csg/polyhedra.hpp b/libsrc/csg/polyhedra.hpp index 2fcd05d9..4b95e9ea 100644 --- a/libsrc/csg/polyhedra.hpp +++ b/libsrc/csg/polyhedra.hpp @@ -32,13 +32,13 @@ class Polyhedra : public Primitive Face () { ; } Face (int pi1, int pi2, int pi3, - const ARRAY > & points, + const Array > & points, int ainputnr); }; - ARRAY > points; - ARRAY faces; - ARRAY planes; + Array > points; + Array faces; + Array planes; Box<3> poly_bbox; double eps_base1; @@ -62,15 +62,15 @@ public: double eps) const; virtual void GetTangentialSurfaceIndices (const Point<3> & p, - ARRAY & surfind, double eps) const; + Array & surfind, double eps) const; virtual void GetTangentialVecSurfaceIndices2 (const Point<3> & p, const Vec<3> & v1, const Vec<3> & v2, - ARRAY & surfind, double eps) const; + Array & surfind, double eps) const; - virtual void CalcSpecialPoints (ARRAY > & pts) const; + virtual void CalcSpecialPoints (Array > & pts) const; virtual void AnalyzeSpecialPoint (const Point<3> & pt, - ARRAY > & specpts) const; + Array > & specpts) const; virtual Vec<3> SpecialPointTangentialVector (const Point<3> & p, int s1, int s2) const; virtual int GetNSurfaces() const @@ -80,8 +80,8 @@ public: virtual const Surface & GetSurface (int i) const { return *planes[i]; } - virtual void GetPrimitiveData (const char *& classname, ARRAY & coeffs) const; - virtual void SetPrimitiveData (ARRAY & coeffs); + virtual void GetPrimitiveData (const char *& classname, Array & coeffs) const; + virtual void SetPrimitiveData (Array & coeffs); virtual void Reduce (const BoxSphere<3> & box); virtual void UnReduce (); @@ -89,7 +89,7 @@ public: int AddPoint (const Point<3> & p); int AddFace (int pi1, int pi2, int pi3, int inputnum); - void GetPolySurfs(ARRAY < ARRAY * > & polysurfs); + void GetPolySurfs(Array < Array * > & polysurfs); protected: int FaceBoxIntersection (int fnr, const BoxSphere<3> & box) const; diff --git a/libsrc/csg/revolution.cpp b/libsrc/csg/revolution.cpp index 4096260c..b81198d5 100644 --- a/libsrc/csg/revolution.cpp +++ b/libsrc/csg/revolution.cpp @@ -52,13 +52,13 @@ namespace netgen } - RevolutionFace :: RevolutionFace(const ARRAY & raw_data) + RevolutionFace :: RevolutionFace(const Array & raw_data) { deletable = true; int pos = 0; - ARRAY< Point<2> > p(3); + Array< Point<2> > p(3); int stype = int(raw_data[pos]); pos++; @@ -293,7 +293,7 @@ namespace netgen { double retval = spline->MaxCurvature(); - ARRAY < Point<2> > checkpoints; + Array < Point<2> > checkpoints; const SplineSeg3<2> * ss3 = dynamic_cast *>(spline); const LineSeg<2> * ls = dynamic_cast *>(spline); @@ -346,7 +346,7 @@ namespace netgen // find smallest y value of spline: - ARRAY testt; + Array testt; if(!isfirst) testt.Append(0); @@ -574,7 +574,7 @@ namespace netgen - void RevolutionFace :: GetRawData(ARRAY & data) const + void RevolutionFace :: GetRawData(Array & data) const { data.DeleteAll(); spline->GetRawData(data); @@ -668,7 +668,7 @@ namespace netgen return DOES_INTERSECT; else { - ARRAY < Point<3> > pext(2); + Array < Point<3> > pext(2); Point<3> p; pext[0] = box.PMin(); @@ -722,7 +722,7 @@ namespace netgen const double b = -randomx; const double c = -a*p2d(0)-b*p2d(1); - ARRAY < Point<2> > points; + Array < Point<2> > points; //(*testout) << "face intersections at: " << endl; for(int i=0; i intersecting_faces; + Array intersecting_faces; for(int i=0; iPointInFace(p,eps) == DOES_INTERSECT) diff --git a/libsrc/csg/revolution.hpp b/libsrc/csg/revolution.hpp index bc97c5b4..344c4526 100644 --- a/libsrc/csg/revolution.hpp +++ b/libsrc/csg/revolution.hpp @@ -18,9 +18,9 @@ private: mutable Vector spline_coefficient; - ARRAY < Vec<2>* > checklines_vec; - ARRAY < Point<2>* > checklines_start; - ARRAY < Vec<2>* > checklines_normal; + Array < Vec<2>* > checklines_vec; + Array < Point<2>* > checklines_start; + Array < Vec<2>* > checklines_normal; private: void Init (void); @@ -39,7 +39,7 @@ public: bool last = false, const int id_in = 0); - RevolutionFace(const ARRAY & raw_data); + RevolutionFace(const Array & raw_data); ~RevolutionFace(); @@ -73,7 +73,7 @@ public: INSOLID_TYPE PointInFace (const Point<3> & p, const double eps) const; - void GetRawData(ARRAY & data) const; + void GetRawData(Array & data) const; }; @@ -99,7 +99,7 @@ private: int type; - ARRAY faces; + Array faces; mutable int intersecting_face; diff --git a/libsrc/csg/singularref.cpp b/libsrc/csg/singularref.cpp index 4fbfdeef..8d65f2a1 100644 --- a/libsrc/csg/singularref.cpp +++ b/libsrc/csg/singularref.cpp @@ -41,7 +41,7 @@ void SingularEdge :: FindPointsOnEdge (class Mesh & mesh) segms.SetSize(0); - ARRAY si1, si2; + Array si1, si2; sol1->GetSurfaceIndices (si1); sol2->GetSurfaceIndices (si2); @@ -150,7 +150,7 @@ SingularPoint :: SingularPoint (double abeta, void SingularPoint :: FindPoints (class Mesh & mesh) { points.SetSize(0); - ARRAY surfk, surf; + Array surfk, surf; for (PointIndex pi = PointIndex::BASE; diff --git a/libsrc/csg/singularref.hpp b/libsrc/csg/singularref.hpp index a0c72833..ffe073f5 100644 --- a/libsrc/csg/singularref.hpp +++ b/libsrc/csg/singularref.hpp @@ -25,8 +25,8 @@ public: int domnr; const Solid *sol; double factor; - // ARRAY > points; - // ARRAY segms; + // Array > points; + // Array segms; public: SingularFace (int adomnr, const Solid * asol, double sf) : domnr(adomnr), sol(asol), factor(sf) { ; } @@ -43,8 +43,8 @@ public: int domnr; const CSGeometry& geom; const Solid *sol1, *sol2; - ARRAY > points; - ARRAY segms; + Array > points; + Array segms; double factor; double maxhinit; @@ -64,7 +64,7 @@ class SingularPoint public: double beta; const Solid *sol1, *sol2, *sol3; - ARRAY > points; + Array > points; double factor; public: diff --git a/libsrc/csg/solid.cpp b/libsrc/csg/solid.cpp index 8c7cf9cd..39edc9c9 100644 --- a/libsrc/csg/solid.cpp +++ b/libsrc/csg/solid.cpp @@ -550,14 +550,14 @@ namespace netgen - void Solid :: Boundaries (const Point<3> & p, ARRAY & bounds) const + void Solid :: Boundaries (const Point<3> & p, Array & bounds) const { int in, strin; bounds.SetSize (0); RecBoundaries (p, bounds, in, strin); } - void Solid :: RecBoundaries (const Point<3> & p, ARRAY & bounds, + void Solid :: RecBoundaries (const Point<3> & p, Array & bounds, int & in, int & strin) const { switch (op) @@ -578,7 +578,7 @@ namespace netgen case SECTION: { int i, in1, in2, strin1, strin2; - ARRAY bounds1, bounds2; + Array bounds1, bounds2; s1 -> RecBoundaries (p, bounds1, in1, strin1); s2 -> RecBoundaries (p, bounds2, in2, strin2); @@ -597,7 +597,7 @@ namespace netgen case UNION: { int i, in1, in2, strin1, strin2; - ARRAY bounds1, bounds2; + Array bounds1, bounds2; s1 -> RecBoundaries (p, bounds1, in1, strin1); s2 -> RecBoundaries (p, bounds2, in2, strin2); @@ -631,7 +631,7 @@ namespace netgen } - void Solid :: TangentialSolid (const Point<3> & p, Solid *& tansol, ARRAY & surfids, double eps) const + void Solid :: TangentialSolid (const Point<3> & p, Solid *& tansol, Array & surfids, double eps) const { int in, strin; RecTangentialSolid (p, tansol, surfids, in, strin, eps); @@ -641,7 +641,7 @@ namespace netgen } - void Solid :: RecTangentialSolid (const Point<3> & p, Solid *& tansol, ARRAY & surfids, + void Solid :: RecTangentialSolid (const Point<3> & p, Solid *& tansol, Array & surfids, int & in, int & strin, double eps) const { tansol = NULL; @@ -730,7 +730,7 @@ namespace netgen void Solid :: TangentialSolid2 (const Point<3> & p, const Vec<3> & t, - Solid *& tansol, ARRAY & surfids, double eps) const + Solid *& tansol, Array & surfids, double eps) const { int in, strin; surfids.SetSize (0); @@ -740,7 +740,7 @@ namespace netgen } void Solid :: RecTangentialSolid2 (const Point<3> & p, const Vec<3> & t, - Solid *& tansol, ARRAY & surfids, + Solid *& tansol, Array & surfids, int & in, int & strin, double eps) const { tansol = NULL; @@ -844,7 +844,7 @@ namespace netgen void Solid :: TangentialSolid3 (const Point<3> & p, const Vec<3> & t, const Vec<3> & t2, - Solid *& tansol, ARRAY & surfids, + Solid *& tansol, Array & surfids, double eps) const { int in, strin; @@ -857,7 +857,7 @@ namespace netgen void Solid :: RecTangentialSolid3 (const Point<3> & p, const Vec<3> & t, const Vec<3> & t2, - Solid *& tansol, ARRAY & surfids, + Solid *& tansol, Array & surfids, int & in, int & strin, double eps) const { tansol = NULL; @@ -959,7 +959,7 @@ namespace netgen void Solid :: TangentialEdgeSolid (const Point<3> & p, const Vec<3> & t, const Vec<3> & t2, const Vec<3> & m, - Solid *& tansol, ARRAY & surfids, + Solid *& tansol, Array & surfids, double eps) const { int in, strin; @@ -974,7 +974,7 @@ namespace netgen void Solid :: RecTangentialEdgeSolid (const Point<3> & p, const Vec<3> & t, const Vec<3> & t2, const Vec<3> & m, - Solid *& tansol, ARRAY & surfids, + Solid *& tansol, Array & surfids, int & in, int & strin, double eps) const { tansol = NULL; @@ -1361,13 +1361,13 @@ namespace netgen return 0; } - void Solid :: GetSurfaceIndices (ARRAY & surfind) const + void Solid :: GetSurfaceIndices (Array & surfind) const { surfind.SetSize (0); RecGetSurfaceIndices (surfind); } - void Solid :: RecGetSurfaceIndices (ARRAY & surfind) const + void Solid :: RecGetSurfaceIndices (Array & surfind) const { switch (op) { @@ -1415,13 +1415,13 @@ namespace netgen - void Solid :: GetTangentialSurfaceIndices (const Point<3> & p, ARRAY & surfind, double eps) const + void Solid :: GetTangentialSurfaceIndices (const Point<3> & p, Array & surfind, double eps) const { surfind.SetSize (0); RecGetTangentialSurfaceIndices (p, surfind, eps); } - void Solid :: RecGetTangentialSurfaceIndices (const Point<3> & p, ARRAY & surfind, double eps) const + void Solid :: RecGetTangentialSurfaceIndices (const Point<3> & p, Array & surfind, double eps) const { switch (op) { @@ -1458,14 +1458,14 @@ namespace netgen void Solid :: GetTangentialSurfaceIndices2 (const Point<3> & p, const Vec<3> & v, - ARRAY & surfind, double eps) const + Array & surfind, double eps) const { surfind.SetSize (0); RecGetTangentialSurfaceIndices2 (p, v, surfind, eps); } void Solid :: RecGetTangentialSurfaceIndices2 (const Point<3> & p, const Vec<3> & v, - ARRAY & surfind, double eps) const + Array & surfind, double eps) const { switch (op) { @@ -1510,14 +1510,14 @@ namespace netgen void Solid :: GetTangentialSurfaceIndices3 (const Point<3> & p, const Vec<3> & v, const Vec<3> & v2, - ARRAY & surfind, double eps) const + Array & surfind, double eps) const { surfind.SetSize (0); RecGetTangentialSurfaceIndices3 (p, v, v2, surfind, eps); } void Solid :: RecGetTangentialSurfaceIndices3 (const Point<3> & p, const Vec<3> & v, const Vec<3> & v2, - ARRAY & surfind, double eps) const + Array & surfind, double eps) const { switch (op) { @@ -1567,7 +1567,7 @@ namespace netgen void Solid :: RecGetTangentialEdgeSurfaceIndices (const Point<3> & p, const Vec<3> & v, const Vec<3> & v2, const Vec<3> & m, - ARRAY & surfind, double eps) const + Array & surfind, double eps) const { switch (op) { @@ -1671,7 +1671,7 @@ namespace netgen } - void Solid :: CalcOnePrimitiveSpecialPoints (const Box<3> & box, ARRAY > & pts) const + void Solid :: CalcOnePrimitiveSpecialPoints (const Box<3> & box, Array > & pts) const { double eps = 1e-8 * box.Diam (); @@ -1684,7 +1684,7 @@ namespace netgen } } - void Solid :: RecCalcOnePrimitiveSpecialPoints (ARRAY > & pts) const + void Solid :: RecCalcOnePrimitiveSpecialPoints (Array > & pts) const { switch (op) { diff --git a/libsrc/csg/solid.hpp b/libsrc/csg/solid.hpp index cae1a554..1511cadc 100644 --- a/libsrc/csg/solid.hpp +++ b/libsrc/csg/solid.hpp @@ -60,14 +60,14 @@ public: void IterateSolid (SolidIterator & it, bool only_once = 0); - void Boundaries (const Point<3> & p, ARRAY & bounds) const; + void Boundaries (const Point<3> & p, Array & bounds) const; int NumPrimitives () const; - void GetSurfaceIndices (ARRAY & surfind) const; + void GetSurfaceIndices (Array & surfind) const; void GetSurfaceIndices (IndexSet & iset) const; - void GetTangentialSurfaceIndices (const Point<3> & p, ARRAY & surfids, double eps) const; - void GetTangentialSurfaceIndices2 (const Point<3> & p, const Vec<3> & v, ARRAY & surfids, double eps) const; - void GetTangentialSurfaceIndices3 (const Point<3> & p, const Vec<3> & v, const Vec<3> & v2, ARRAY & surfids, double eps) const; + void GetTangentialSurfaceIndices (const Point<3> & p, Array & surfids, double eps) const; + void GetTangentialSurfaceIndices2 (const Point<3> & p, const Vec<3> & v, Array & surfids, double eps) const; + void GetTangentialSurfaceIndices3 (const Point<3> & p, const Vec<3> & v, const Vec<3> & v2, Array & surfids, double eps) const; Primitive * GetPrimitive () @@ -92,16 +92,16 @@ public: /// compute localization in point p - void TangentialSolid (const Point<3> & p, Solid *& tansol, ARRAY & surfids, double eps) const; + void TangentialSolid (const Point<3> & p, Solid *& tansol, Array & surfids, double eps) const; /// compute localization in point p tangential to vector t void TangentialSolid2 (const Point<3> & p, const Vec<3> & t, - Solid *& tansol, ARRAY & surfids, double eps) const; + Solid *& tansol, Array & surfids, double eps) const; /** compute localization in point p, with second order approximation to edge p + s t + s*s/2 t2 **/ void TangentialSolid3 (const Point<3> & p, const Vec<3> & t, const Vec<3> & t2, - Solid *& tansol, ARRAY & surfids, double eps) const; + Solid *& tansol, Array & surfids, double eps) const; @@ -113,10 +113,10 @@ public: **/ void TangentialEdgeSolid (const Point<3> & p, const Vec<3> & t, const Vec<3> & t2, const Vec<3> & m, - Solid *& tansol, ARRAY & surfids, double eps) const; + Solid *& tansol, Array & surfids, double eps) const; - void CalcOnePrimitiveSpecialPoints (const Box<3> & box, ARRAY > & pts) const; + void CalcOnePrimitiveSpecialPoints (const Box<3> & box, Array > & pts) const; /// int Edge (const Point<3> & p, const Vec<3> & v, double eps) const; @@ -154,23 +154,23 @@ public: protected: /// - void RecBoundaries (const Point<3> & p, ARRAY & bounds, + void RecBoundaries (const Point<3> & p, Array & bounds, int & in, int & strin) const; /// - void RecTangentialSolid (const Point<3> & p, Solid *& tansol, ARRAY & surfids, + void RecTangentialSolid (const Point<3> & p, Solid *& tansol, Array & surfids, int & in, int & strin, double eps) const; void RecTangentialSolid2 (const Point<3> & p, const Vec<3> & vec, - Solid *& tansol, ARRAY & surfids, + Solid *& tansol, Array & surfids, int & in, int & strin, double eps) const; /// void RecTangentialSolid3 (const Point<3> & p, const Vec<3> & vec,const Vec<3> & vec2, - Solid *& tansol, ARRAY & surfids, + Solid *& tansol, Array & surfids, int & in, int & strin, double eps) const; /// void RecTangentialEdgeSolid (const Point<3> & p, const Vec<3> & t, const Vec<3> & t2, const Vec<3> & m, - Solid *& tansol, ARRAY & surfids, + Solid *& tansol, Array & surfids, int & in, int & strin, double eps) const; /// @@ -181,16 +181,16 @@ protected: /// Solid * RecGetReducedSolid (const BoxSphere<3> & box, INSOLID_TYPE & in) const; /// - void RecGetSurfaceIndices (ARRAY & surfind) const; - void RecGetTangentialSurfaceIndices (const Point<3> & p, ARRAY & surfids, double eps) const; - void RecGetTangentialSurfaceIndices2 (const Point<3> & p, const Vec<3> & v, ARRAY & surfids, double eps) const; + void RecGetSurfaceIndices (Array & surfind) const; + void RecGetTangentialSurfaceIndices (const Point<3> & p, Array & surfids, double eps) const; + void RecGetTangentialSurfaceIndices2 (const Point<3> & p, const Vec<3> & v, Array & surfids, double eps) const; void RecGetTangentialSurfaceIndices3 (const Point<3> & p, const Vec<3> & v, const Vec<3> & v2, - ARRAY & surfids, double eps) const; + Array & surfids, double eps) const; void RecGetTangentialEdgeSurfaceIndices (const Point<3> & p, const Vec<3> & v, const Vec<3> & v2, const Vec<3> & m, - ARRAY & surfids, double eps) const; + Array & surfids, double eps) const; void RecGetSurfaceIndices (IndexSet & iset) const; - void RecCalcOnePrimitiveSpecialPoints (ARRAY > & pts) const; + void RecCalcOnePrimitiveSpecialPoints (Array > & pts) const; friend class SolidIterator; friend class ClearVisitedIt; diff --git a/libsrc/csg/specpoin.cpp b/libsrc/csg/specpoin.cpp index a6cc9b26..25a5af1b 100644 --- a/libsrc/csg/specpoin.cpp +++ b/libsrc/csg/specpoin.cpp @@ -22,7 +22,7 @@ namespace netgen { - ARRAY > boxes; + Array > boxes; void ProjectToEdge (const Surface * f1, const Surface * f2, Point<3> & hp); @@ -65,7 +65,7 @@ namespace netgen } - static ARRAY numprim_hist; + static Array numprim_hist; SpecialPointCalculation :: SpecialPointCalculation () { @@ -74,7 +74,7 @@ namespace netgen void SpecialPointCalculation :: CalcSpecialPoints (const CSGeometry & ageometry, - ARRAY & apoints) + Array & apoints) { geometry = &ageometry; points = &apoints; @@ -109,7 +109,7 @@ namespace netgen if (tlo->GetSolid()) { - ARRAY > hpts; + Array > hpts; tlo->GetSolid()->CalcOnePrimitiveSpecialPoints (box, hpts); // if (hpts.Size()) // cout << "oneprimitivespecialpoints = " << hpts << endl; @@ -201,7 +201,7 @@ namespace netgen bool possiblecrossp, possibleexp; // possible cross or extremalpoint bool surecrossp = 0, sureexp = 0; // sure ... - static ARRAY locsurf; // attention: array is static + static Array locsurf; // attention: array is static static int cntbox = 0; cntbox++; @@ -260,8 +260,8 @@ namespace netgen if (nquad == numprim && nplane >= numprim-1) { - ARRAY > pts; - ARRAY surfids; + Array > pts; + Array surfids; for (int k1 = 0; k1 < numprim - 2; k1++) for (int k2 = k1 + 1; k2 < numprim - 1; k2++) @@ -447,7 +447,7 @@ namespace netgen BoxSphere<3> boxp (pp, pp); boxp.Increase (1e-3*size); boxp.CalcDiamCenter(); - ARRAY locsurf2; + Array locsurf2; geometry -> GetIndependentSurfaceIndices (sol, boxp, locsurf2); @@ -1035,7 +1035,7 @@ namespace netgen ComputeCrossPoints (const Plane * plane1, const Plane * plane2, const Plane * plane3, - ARRAY > & pts) + Array > & pts) { Mat<3> mat; Vec<3> rhs, sol; @@ -1077,7 +1077,7 @@ namespace netgen ComputeCrossPoints (const Plane * plane1, const Plane * plane2, const QuadraticSurface * quadric, - ARRAY > & pts) + Array > & pts) { Mat<2,3> mat; Mat<3,2> inv; @@ -1153,7 +1153,7 @@ namespace netgen void SpecialPointCalculation :: ComputeExtremalPoints (const Plane * plane, const QuadraticSurface * quadric, - ARRAY > & pts) + Array > & pts) { // 3 equations: // surf1 = 0 <===> plane_a + plane_b x = 0; @@ -1362,15 +1362,15 @@ namespace netgen void SpecialPointCalculation :: AnalyzeSpecialPoints (const CSGeometry & ageometry, - ARRAY & apoints, - ARRAY & specpoints) + Array & apoints, + Array & specpoints) { - ARRAY surfind, rep_surfind, surfind2, rep_surfind2, surfind3; + Array surfind, rep_surfind, surfind2, rep_surfind2, surfind3; - ARRAY > normalvecs; + Array > normalvecs; Vec<3> nsurf; - ARRAY specpoint2point; + Array specpoint2point; specpoints.SetSize (0); geometry = &ageometry; @@ -1406,7 +1406,7 @@ namespace netgen (*testout) << "points = " << apoints << endl; Point3dTree searchtree (bbox.PMin(), bbox.PMax()); - ARRAY locsearch; + Array locsearch; for (int si = 0; si < ageometry.GetNTopLevelObjects(); si++) { @@ -1570,7 +1570,7 @@ namespace netgen #ifdef DEVELOP (*testout) << "surfind2 = " << endl << surfind2 << endl; #endif - ARRAY surfind2_aux(surfind2); + Array surfind2_aux(surfind2); ageometry.GetIndependentSurfaceIndices (surfind2_aux); #ifdef DEVELOP (*testout) << "surfind2,rep = " << endl << surfind2_aux << endl; @@ -1754,7 +1754,7 @@ namespace netgen if(testuncond.Test(i)) continue; - ARRAY same; + Array same; same.Append(i); for(int j = i+1; j * points; + Array * points; /// - ARRAY boxesinlevel; + Array boxesinlevel; /// double size; @@ -97,11 +97,11 @@ public: /// void CalcSpecialPoints (const CSGeometry & ageometry, - ARRAY & points); + Array & points); /// void AnalyzeSpecialPoints (const CSGeometry & geometry, - ARRAY & points, - ARRAY & specpoints); + Array & points, + Array & specpoints); protected: /// @@ -156,17 +156,17 @@ protected: void ComputeExtremalPoints (const Plane * plane, const QuadraticSurface * quadric, - ARRAY > & pts); + Array > & pts); void ComputeCrossPoints (const Plane * plane1, const Plane * plane2, const Plane * plane3, - ARRAY > & pts); + Array > & pts); void ComputeCrossPoints (const Plane * plane1, const Plane * plane2, const QuadraticSurface * quadratic, - ARRAY > & pts); + Array > & pts); }; #endif diff --git a/libsrc/csg/spline3d.hpp b/libsrc/csg/spline3d.hpp index 75378845..fca2eecf 100644 --- a/libsrc/csg/spline3d.hpp +++ b/libsrc/csg/spline3d.hpp @@ -24,7 +24,7 @@ class splinesegment3d class spline3d { /// - ARRAY segments; + Array segments; public: /// diff --git a/libsrc/csg/surface.cpp b/libsrc/csg/surface.cpp index 290c4f5d..fe0415ec 100644 --- a/libsrc/csg/surface.cpp +++ b/libsrc/csg/surface.cpp @@ -229,13 +229,13 @@ void Primitive :: SetSurfaceId (int i, int id) void Primitive :: GetPrimitiveData (const char *& classname, - ARRAY & coeffs) const + Array & coeffs) const { classname = "undef"; coeffs.SetSize (0); } -void Primitive :: SetPrimitiveData (ARRAY & coeffs) +void Primitive :: SetPrimitiveData (Array & coeffs) { ; } @@ -276,7 +276,7 @@ void Primitive :: Transform (Transformation<3> & trans) } void Primitive :: GetTangentialSurfaceIndices (const Point<3> & p, - ARRAY & surfind, double eps) const + Array & surfind, double eps) const { for (int j = 0; j < GetNSurfaces(); j++) if (fabs (GetSurface(j).CalcFunctionValue (p)) < eps) @@ -287,7 +287,7 @@ void Primitive :: GetTangentialSurfaceIndices (const Point<3> & p, void Primitive :: GetTangentialVecSurfaceIndices (const Point<3> & p, const Vec<3> & v, - ARRAY & surfind, double eps) const + Array & surfind, double eps) const { cout << "get tangvecsurfind not implemented" << endl; surfind.SetSize (0); @@ -295,7 +295,7 @@ GetTangentialVecSurfaceIndices (const Point<3> & p, const Vec<3> & v, void Primitive :: GetTangentialVecSurfaceIndices2 (const Point<3> & p, const Vec<3> & v1, const Vec<3> & v2, - ARRAY & surfind, double eps) const + Array & surfind, double eps) const { for (int j = 0; j < GetNSurfaces(); j++) { diff --git a/libsrc/csg/surface.hpp b/libsrc/csg/surface.hpp index c5e7b768..42a77bfe 100644 --- a/libsrc/csg/surface.hpp +++ b/libsrc/csg/surface.hpp @@ -237,7 +237,7 @@ public: double eps) const = 0; virtual void GetTangentialSurfaceIndices (const Point<3> & p, - ARRAY & surfind, double eps) const; + Array & surfind, double eps) const; virtual INSOLID_TYPE VecInSolid (const Point<3> & p, const Vec<3> & v, @@ -263,15 +263,15 @@ public: double eps) const; virtual void GetTangentialVecSurfaceIndices (const Point<3> & p, const Vec<3> & v, - ARRAY & surfind, double eps) const; + Array & surfind, double eps) const; virtual void GetTangentialVecSurfaceIndices2 (const Point<3> & p, const Vec<3> & v1, const Vec<3> & v2, - ARRAY & surfind, double eps) const; + Array & surfind, double eps) const; - virtual void CalcSpecialPoints (ARRAY > & /* pts */) const { ; } + virtual void CalcSpecialPoints (Array > & /* pts */) const { ; } virtual void AnalyzeSpecialPoint (const Point<3> & /* pt */, - ARRAY > & /* specpts */) const { ; } + Array > & /* specpts */) const { ; } virtual Vec<3> SpecialPointTangentialVector (const Point<3> & /* p */, int /* s1 */, int /* s2 */) const { return Vec<3> (0,0,0); } @@ -281,8 +281,8 @@ public: virtual Surface & GetSurface (int i = 0) = 0; virtual const Surface & GetSurface (int i = 0) const = 0; - ARRAY surfaceids; - ARRAY surfaceactive; + Array surfaceids; + Array surfaceactive; int GetSurfaceId (int i = 0) const; void SetSurfaceId (int i, int id); @@ -290,8 +290,8 @@ public: virtual int SurfaceInverted (int /* i */ = 0) const { return 0; } virtual void GetPrimitiveData (const char *& classname, - ARRAY & coeffs) const; - virtual void SetPrimitiveData (ARRAY & coeffs); + Array & coeffs) const; + virtual void SetPrimitiveData (Array & coeffs); static Primitive * CreatePrimitive (const char * classname); diff --git a/libsrc/csg/triapprox.cpp b/libsrc/csg/triapprox.cpp index 40371615..0c4f2b14 100644 --- a/libsrc/csg/triapprox.cpp +++ b/libsrc/csg/triapprox.cpp @@ -29,7 +29,7 @@ namespace netgen void TriangleApproximation :: RemoveUnusedPoints () { BitArray used(GetNP()); - ARRAY map (GetNP()); + Array map (GetNP()); int i, j; int cnt = 0; diff --git a/libsrc/csg/triapprox.hpp b/libsrc/csg/triapprox.hpp index 7b2db16b..3f71c589 100644 --- a/libsrc/csg/triapprox.hpp +++ b/libsrc/csg/triapprox.hpp @@ -32,9 +32,9 @@ public: class TriangleApproximation { - ARRAY > points; - ARRAY > normals; - ARRAY trigs; + Array > points; + Array > normals; + Array trigs; public: TriangleApproximation(); diff --git a/libsrc/general/Makefile.in b/libsrc/general/Makefile.in index c6657991..2cbba579 100644 --- a/libsrc/general/Makefile.in +++ b/libsrc/general/Makefile.in @@ -1,8 +1,8 @@ -# Makefile.in generated by automake 1.10.1 from Makefile.am. +# Makefile.in generated by automake 1.10 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006 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. @@ -53,7 +53,7 @@ am_libgeneral_la_OBJECTS = array.lo bitarray.lo dynamicmem.lo flags.lo \ optmem.lo parthreads.lo profiler.lo seti.lo sort.lo \ spbita2d.lo symbolta.lo table.lo libgeneral_la_OBJECTS = $(am_libgeneral_la_OBJECTS) -DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) +DEFAULT_INCLUDES = -I. -I$(top_builddir)@am__isrc@ depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ @@ -361,8 +361,8 @@ ID: $(HEADERS) $(SOURCES) $(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; nonemtpy = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ mkid -fID $$unique tags: TAGS @@ -374,8 +374,8 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ 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; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ @@ -385,12 +385,13 @@ ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ + 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; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ test -z "$(CTAGS_ARGS)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique diff --git a/libsrc/general/array.cpp b/libsrc/general/array.cpp index 95d711a9..d3f48d36 100644 --- a/libsrc/general/array.cpp +++ b/libsrc/general/array.cpp @@ -1,5 +1,5 @@ -#ifndef FILE_NGSTD_ARRAYCPP -#define FILE_NGSTD_ARRAYCPP +#ifndef FILE_NGSTD_ArrayCPP +#define FILE_NGSTD_ArrayCPP // necessary for SGI ???? /**************************************************************************/ @@ -9,7 +9,7 @@ /**************************************************************************/ /* - Abstract data type ARRAY + Abstract data type Array */ #include @@ -22,7 +22,7 @@ namespace netgen //using namespace netgen; #ifdef NONE - void BASE_ARRAY :: ReSize (int minsize, int elementsize) + void BASE_Array :: ReSize (int minsize, int elementsize) { cout << "resize, minsize = " << minsize << endl; @@ -55,13 +55,13 @@ namespace netgen - void BASE_ARRAY :: RangeCheck (int i) const + void BASE_Array :: RangeCheck (int i) const { if (i < 0 || i >= actsize) throw ArrayRangeException (); } - void BASE_ARRAY :: CheckNonEmpty () const + void BASE_Array :: CheckNonEmpty () const { if (!actsize) { diff --git a/libsrc/general/array.hpp b/libsrc/general/array.hpp index 91b53f96..d3fad4a6 100644 --- a/libsrc/general/array.hpp +++ b/libsrc/general/array.hpp @@ -1,5 +1,5 @@ -#ifndef FILE_ARRAY -#define FILE_ARRAY +#ifndef FILE_Array +#define FILE_Array /**************************************************************************/ /* File: array.hpp */ @@ -77,7 +77,7 @@ public: { #ifdef DEBUG if (i < 1 || i > size) - cout << "ARRAY<" << typeid(T).name() + cout << "Array<" << typeid(T).name() << ">::Elem out of range, i = " << i << ", s = " << size << endl; #endif @@ -90,7 +90,7 @@ public: { #ifdef DEBUG if (i < 1 || i > size) - cout << "ARRAY<" << typeid(T).name() << ">::Get out of range, i = " << i + cout << "Array<" << typeid(T).name() << ">::Get out of range, i = " << i << ", s = " << size << endl; #endif @@ -102,7 +102,7 @@ public: { #ifdef DEBUG if (i < 1 || i > size) - cout << "ARRAY<" << typeid(T).name() << ">::Set out of range, i = " << i + cout << "Array<" << typeid(T).name() << ">::Set out of range, i = " << i << ", s = " << size << endl; #endif @@ -170,13 +170,13 @@ inline ostream & operator<< (ostream & s, const FlatArray & a) /** Dynamic array container. - ARRAY is an automatically increasing array container. + Array is an automatically increasing array container. The allocated memory doubles on overflow. Either the container takes care of memory allocation and deallocation, or the user provides one block of data. */ template -class ARRAY : public FlatArray +class Array : public FlatArray { protected: /// physical size of array @@ -187,7 +187,7 @@ protected: public: /// Generate array of logical and physical size asize - explicit ARRAY(int asize = 0) + explicit Array(int asize = 0) : FlatArray (asize, asize ? new T[asize] : 0) { allocsize = asize; @@ -195,7 +195,7 @@ public: } /// Generate array in user data - ARRAY(int asize, T* adata) + Array(int asize, T* adata) : FlatArray (asize, adata) { allocsize = asize; @@ -203,7 +203,7 @@ public: } /// array copy - explicit ARRAY (const ARRAY & a2) + explicit Array (const Array & a2) : FlatArray (a2.Size(), a2.Size() ? new T[a2.Size()] : 0) { allocsize = this->size; @@ -215,7 +215,7 @@ public: /// if responsible, deletes memory - ~ARRAY() + ~Array() { if (ownmem) delete [] this->data; @@ -273,7 +273,7 @@ public: /// Delete element i (0-based). Move last element to position i. void Delete (int i) { -#ifdef CHECK_ARRAY_RANGE +#ifdef CHECK_Array_RANGE RangeCheck (i+1); #endif @@ -286,7 +286,7 @@ public: /// Delete element i (1-based). Move last element to position i. void DeleteElement (int i) { -#ifdef CHECK_ARRAY_RANGE +#ifdef CHECK_Array_RANGE RangeCheck (i); #endif @@ -310,14 +310,14 @@ public: } /// Fill array with val - ARRAY & operator= (const T & val) + Array & operator= (const T & val) { FlatArray::operator= (val); return *this; } /// array copy - ARRAY & operator= (const ARRAY & a2) + Array & operator= (const Array & a2) { SetSize (a2.Size()); for (int i = BASE; i < this->size+BASE; i++) @@ -326,7 +326,7 @@ public: } /// array copy - ARRAY & operator= (const FlatArray & a2) + Array & operator= (const FlatArray & a2) { SetSize (a2.Size()); for (int i = BASE; i < this->size+BASE; i++) @@ -368,7 +368,7 @@ private: template -class ArrayMem : public ARRAY +class ArrayMem : public Array { // T mem[S]; // Intel C++ calls dummy constructor // char mem[S*sizeof(T)]; @@ -376,7 +376,7 @@ class ArrayMem : public ARRAY public: /// Generate array of logical and physical size asize explicit ArrayMem(int asize = 0) - : ARRAY (S, static_cast (static_cast(&mem[0]))) + : Array (S, static_cast (static_cast(&mem[0]))) { this->size = asize; if (asize > S) @@ -389,7 +389,7 @@ public: ArrayMem & operator= (const T & val) { - ARRAY::operator= (val); + Array::operator= (val); return *this; } }; @@ -614,7 +614,7 @@ inline void BubbleSort (FlatArray & data, FlatArray & slave) template void Intersection (const FlatArray & in1, const FlatArray & in2, - ARRAY & out) + Array & out) { out.SetSize(0); for(int i=0; i & in1, const FlatArray & in2, } template void Intersection (const FlatArray & in1, const FlatArray & in2, const FlatArray & in3, - ARRAY & out) + Array & out) { out.SetSize(0); for(int i=0; i class BitArrayChar { /// - ARRAY data; + Array data; public: /// diff --git a/libsrc/general/flags.cpp b/libsrc/general/flags.cpp index b6b5ccf2..ba6b8356 100644 --- a/libsrc/general/flags.cpp +++ b/libsrc/general/flags.cpp @@ -56,9 +56,9 @@ namespace netgen } - void Flags :: SetFlag (const char * name, const ARRAY & val) + void Flags :: SetFlag (const char * name, const Array & val) { - ARRAY * strarray = new ARRAY; + Array * strarray = new Array; for (int i = 1; i <= val.Size(); i++) { strarray->Append (new char[strlen(val.Get(i))+1]); @@ -67,9 +67,9 @@ namespace netgen strlistflags.Set (name, strarray); } - void Flags :: SetFlag (const char * name, const ARRAY & val) + void Flags :: SetFlag (const char * name, const Array & val) { - ARRAY * numarray = new ARRAY; + Array * numarray = new Array; for (int i = 1; i <= val.Size(); i++) numarray->Append (val.Get(i)); numlistflags.Set (name, numarray); @@ -118,26 +118,26 @@ namespace netgen } - const ARRAY & + const Array & Flags :: GetStringListFlag (const char * name) const { if (strlistflags.Used (name)) return *strlistflags.Get(name); else { - static ARRAY hstra(0); + static Array hstra(0); return hstra; } } - const ARRAY & + const Array & Flags ::GetNumListFlag (const char * name) const { if (numlistflags.Used (name)) return *numlistflags.Get(name); else { - static ARRAY hnuma(0); + static Array hnuma(0); return hnuma; } } diff --git a/libsrc/general/flags.hpp b/libsrc/general/flags.hpp index 59c365ee..f765e608 100644 --- a/libsrc/general/flags.hpp +++ b/libsrc/general/flags.hpp @@ -22,9 +22,9 @@ class Flags /// SYMBOLTABLE defflags; /// - SYMBOLTABLE*> strlistflags; + SYMBOLTABLE*> strlistflags; /// - SYMBOLTABLE*> numlistflags; + SYMBOLTABLE*> numlistflags; public: /// Flags (); @@ -40,9 +40,9 @@ public: /// Sets boolean flag void SetFlag (const char * name); /// Sets string arary falg - void SetFlag (const char * name, const ARRAY & val); + void SetFlag (const char * name, const Array & val); /// Sets double array flag - void SetFlag (const char * name, const ARRAY & val); + void SetFlag (const char * name, const Array & val); /// Save flags to file void SaveFlags (const char * filename) const; @@ -64,9 +64,9 @@ public: /// Returns boolean flag bool GetDefineFlag (const char * name) const; /// Returns string list flag, empty array if not exist - const ARRAY & GetStringListFlag (const char * name) const; + const Array & GetStringListFlag (const char * name) const; /// Returns num list flag, empty array if not exist - const ARRAY & GetNumListFlag (const char * name) const; + const Array & GetNumListFlag (const char * name) const; /// Test, if string flag is defined diff --git a/libsrc/general/optmem.cpp b/libsrc/general/optmem.cpp index d3f939ac..f6ad3be9 100644 --- a/libsrc/general/optmem.cpp +++ b/libsrc/general/optmem.cpp @@ -5,7 +5,7 @@ /**************************************************************************/ /* - Abstract data type ARRAY + Abstract data type Array */ diff --git a/libsrc/general/optmem.hpp b/libsrc/general/optmem.hpp index 0015b20b..f036f7e1 100644 --- a/libsrc/general/optmem.hpp +++ b/libsrc/general/optmem.hpp @@ -19,7 +19,7 @@ private: /// void * freelist; /// - ARRAY bablocks; + Array bablocks; public: /// BlockAllocator (unsigned asize, unsigned ablocks = 100); diff --git a/libsrc/general/seti.hpp b/libsrc/general/seti.hpp index 4ca0b8eb..b0b3c813 100644 --- a/libsrc/general/seti.hpp +++ b/libsrc/general/seti.hpp @@ -13,7 +13,7 @@ */ class IndexSet { - ARRAY set; + Array set; BitArray flags; public: IndexSet (int maxind); @@ -38,7 +38,7 @@ public: void Del (int ind); void Clear (); - const ARRAY & Array() { return set; } + const Array & Array() { return set; } }; #endif diff --git a/libsrc/general/sort.cpp b/libsrc/general/sort.cpp index 264a132a..2a628ccb 100644 --- a/libsrc/general/sort.cpp +++ b/libsrc/general/sort.cpp @@ -16,8 +16,8 @@ namespace netgen { -void Sort (const ARRAY & values, - ARRAY & order) +void Sort (const Array & values, + Array & order) { int n = values.Size(); int i, j; @@ -35,8 +35,8 @@ void Sort (const ARRAY & values, } -void QickSortRec (const ARRAY & values, - ARRAY & order, +void QickSortRec (const Array & values, + Array & order, int left, int right) { int i, j; @@ -62,8 +62,8 @@ void QickSortRec (const ARRAY & values, if (i < right) QickSortRec (values, order, i, right); } -void QickSort (const ARRAY & values, - ARRAY & order) +void QickSort (const Array & values, + Array & order) { int i, n = values.Size(); order.SetSize (n); diff --git a/libsrc/general/sort.hpp b/libsrc/general/sort.hpp index f65aa24f..542bdf05 100644 --- a/libsrc/general/sort.hpp +++ b/libsrc/general/sort.hpp @@ -9,11 +9,11 @@ // order(i) is sorted index of element i -extern void Sort (const ARRAY & values, - ARRAY & order); +extern void Sort (const Array & values, + Array & order); -extern void QickSort (const ARRAY & values, - ARRAY & order); +extern void QickSort (const Array & values, + Array & order); @@ -33,7 +33,7 @@ inline void BubbleSort (int size, T * data) } template -inline void BubbleSort (ARRAY & data) +inline void BubbleSort (Array & data) { if(data.Size() > 0) BubbleSort (data.Size(), &data[data.Begin()]); diff --git a/libsrc/general/spbita2d.cpp b/libsrc/general/spbita2d.cpp index 5badfe9a..45e86413 100644 --- a/libsrc/general/spbita2d.cpp +++ b/libsrc/general/spbita2d.cpp @@ -16,20 +16,20 @@ namespace netgen { //using namespace netgen; - SPARSE_BIT_ARRAY_2D :: SPARSE_BIT_ARRAY_2D (int ah, int aw) + SPARSE_BIT_Array_2D :: SPARSE_BIT_Array_2D (int ah, int aw) { lines = NULL; SetSize (ah, aw); } - SPARSE_BIT_ARRAY_2D :: ~SPARSE_BIT_ARRAY_2D () + SPARSE_BIT_Array_2D :: ~SPARSE_BIT_Array_2D () { DeleteElements (); delete lines; } - void SPARSE_BIT_ARRAY_2D :: SetSize (int ah, int aw) + void SPARSE_BIT_Array_2D :: SetSize (int ah, int aw) { DeleteElements(); if (lines) @@ -58,13 +58,13 @@ namespace netgen else { height = width = 0; - MyError ("SPARSE_ARRAY::SetSize: Out of memory"); + MyError ("SPARSE_Array::SetSize: Out of memory"); } } - void SPARSE_BIT_ARRAY_2D :: DeleteElements () + void SPARSE_BIT_Array_2D :: DeleteElements () { if (lines) { @@ -82,7 +82,7 @@ namespace netgen } - int SPARSE_BIT_ARRAY_2D :: Test (int i, int j) const + int SPARSE_BIT_Array_2D :: Test (int i, int j) const { int k, max, *col; @@ -100,7 +100,7 @@ namespace netgen - void SPARSE_BIT_ARRAY_2D :: Set(int i, int j) + void SPARSE_BIT_Array_2D :: Set(int i, int j) { int k, max, *col; @@ -126,7 +126,7 @@ namespace netgen } else { - MyError ("SPARSE_BIT_ARRAY::Set: Out of mem 1"); + MyError ("SPARSE_BIT_Array::Set: Out of mem 1"); return; } } @@ -149,7 +149,7 @@ namespace netgen } else { - MyError ("SPARSE_ARRAY::Set: Out of memory 2"); + MyError ("SPARSE_Array::Set: Out of memory 2"); } } else diff --git a/libsrc/general/spbita2d.hpp b/libsrc/general/spbita2d.hpp index db656653..1dd4dc90 100644 --- a/libsrc/general/spbita2d.hpp +++ b/libsrc/general/spbita2d.hpp @@ -12,7 +12,7 @@ */ -class SPARSE_BIT_ARRAY_2D +class SPARSE_BIT_Array_2D { class linestruct { public: INDEX size; INDEX maxsize; INDEX * col; }; @@ -24,9 +24,9 @@ class SPARSE_BIT_ARRAY_2D public: /// - SPARSE_BIT_ARRAY_2D (INDEX ah = 0, INDEX aw = 0); + SPARSE_BIT_Array_2D (INDEX ah = 0, INDEX aw = 0); /// - ~SPARSE_BIT_ARRAY_2D (); + ~SPARSE_BIT_Array_2D (); /// void SetSize (INDEX ah, INDEX aw = 0); diff --git a/libsrc/general/stack.hpp b/libsrc/general/stack.hpp index db8dfad2..4a7d95c6 100644 --- a/libsrc/general/stack.hpp +++ b/libsrc/general/stack.hpp @@ -39,7 +39,7 @@ public: private: /// - ARRAY elems; + Array elems; /// INDEX size; }; diff --git a/libsrc/general/symbolta.hpp b/libsrc/general/symbolta.hpp index 38895dee..6105a0e6 100644 --- a/libsrc/general/symbolta.hpp +++ b/libsrc/general/symbolta.hpp @@ -16,7 +16,7 @@ class BASE_SYMBOLTABLE { protected: /// identifiers - ARRAY names; + Array names; public: /// Constructor @@ -41,7 +41,7 @@ class SYMBOLTABLE : public BASE_SYMBOLTABLE { private: /// Associated data - ARRAY data; + Array data; public: /// Creates a symboltable diff --git a/libsrc/general/table.hpp b/libsrc/general/table.hpp index f9ed02f1..a7f31444 100644 --- a/libsrc/general/table.hpp +++ b/libsrc/general/table.hpp @@ -25,7 +25,7 @@ protected: }; /// - ARRAY data; + Array data; char * oneblock; public: diff --git a/libsrc/geom2d/Makefile.in b/libsrc/geom2d/Makefile.in index 64fd8b72..75447cbf 100644 --- a/libsrc/geom2d/Makefile.in +++ b/libsrc/geom2d/Makefile.in @@ -1,8 +1,8 @@ -# Makefile.in generated by automake 1.10.1 from Makefile.am. +# Makefile.in generated by automake 1.10 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006 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. @@ -51,7 +51,7 @@ libgeom2d_la_LIBADD = am_libgeom2d_la_OBJECTS = genmesh2d.lo geom2dmesh.lo spline.lo \ splinegeometry.lo libgeom2d_la_OBJECTS = $(am_libgeom2d_la_OBJECTS) -DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) +DEFAULT_INCLUDES = -I. -I$(top_builddir)@am__isrc@ depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ @@ -320,8 +320,8 @@ ID: $(HEADERS) $(SOURCES) $(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; nonemtpy = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ mkid -fID $$unique tags: TAGS @@ -333,8 +333,8 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ 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; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ @@ -344,12 +344,13 @@ ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ + 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; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ test -z "$(CTAGS_ARGS)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique diff --git a/libsrc/geom2d/genmesh2d.cpp b/libsrc/geom2d/genmesh2d.cpp index b3820e03..8c606eac 100644 --- a/libsrc/geom2d/genmesh2d.cpp +++ b/libsrc/geom2d/genmesh2d.cpp @@ -6,8 +6,8 @@ namespace netgen { - // static ARRAY > points2; - // static ARRAY lp1, lp2; + // static Array > points2; + // static Array lp1, lp2; extern void Optimize2d (Mesh & mesh, MeshingParameters & mp); @@ -69,7 +69,7 @@ namespace netgen for (int i = 1; i <= maxdomnr; i++) mesh->AddFaceDescriptor (FaceDescriptor (i, 0, 0, i)); - // set ARRAY bcnames... + // set Array bcnames... // number of bcnames int maxsegmentindex = 0; for (SegmentIndex si = 0; si < mesh->GetNSeg(); si++) @@ -105,8 +105,8 @@ namespace netgen if (geometry.GetDomainTensorMeshing (domnr)) { // tensor product mesh - ARRAY nextpi(bnp); - ARRAY si1(bnp), si2(bnp); + Array nextpi(bnp); + Array si1(bnp), si2(bnp); PointIndex firstpi; nextpi = -1; @@ -145,7 +145,7 @@ namespace netgen - ARRAY pts ( (nex+1) * (ney+1) ); // x ... inner loop + Array pts ( (nex+1) * (ney+1) ); // x ... inner loop pts = -1; for (PointIndex pi = c1, i = 0; pi != c2; pi = nextpi[pi], i++) diff --git a/libsrc/geom2d/spline.cpp b/libsrc/geom2d/spline.cpp index f77c4875..51b43499 100644 --- a/libsrc/geom2d/spline.cpp +++ b/libsrc/geom2d/spline.cpp @@ -282,7 +282,7 @@ namespace netgen */ void CalcPartition (double l, double h, double r1, double r2, - double ra, double elto0, ARRAY & points) + double ra, double elto0, Array & points) { int i, j, n, nel; double sum, t, dt, fun, fperel, oldf, f; diff --git a/libsrc/geom2d/spline.hpp b/libsrc/geom2d/spline.hpp index d5ae3777..264a3234 100644 --- a/libsrc/geom2d/spline.hpp +++ b/libsrc/geom2d/spline.hpp @@ -9,7 +9,7 @@ void CalcPartition (double l, double h, double r1, double r2, - double ra, double elto0, ARRAY & points); + double ra, double elto0, Array & points); /* Spline curves for 2D mesh generation @@ -84,13 +84,13 @@ public: virtual void GetCoeff (Vector & coeffs) const = 0; - virtual void GetPoints (int n, ARRAY > & points); + virtual void GetPoints (int n, Array > & points); /** calculates (2D) lineintersections: for lines $$ a x + b y + c = 0 $$ the interecting points are calculated and stored in points */ virtual void LineIntersections (const double a, const double b, const double c, - ARRAY < Point > & points, const double eps) const + Array < Point > & points, const double eps) const {points.SetSize(0);} virtual double MaxCurvature(void) const = 0; @@ -100,7 +100,7 @@ public: virtual void Project (const Point point, Point & point_on_curve, double & t) const { cerr << "Project not implemented for spline base-class" << endl;} - virtual void GetRawData (ARRAY & data) const + virtual void GetRawData (Array & data) const { cerr << "GetRawData not implemented for spline base-class" << endl;} }; @@ -138,13 +138,13 @@ public: virtual string GetType(void) const {return "line";} virtual void LineIntersections (const double a, const double b, const double c, - ARRAY < Point > & points, const double eps) const; + Array < Point > & points, const double eps) const; virtual double MaxCurvature(void) const {return 0;} virtual void Project (const Point point, Point & point_on_curve, double & t) const; - virtual void GetRawData (ARRAY & data) const; + virtual void GetRawData (Array & data) const; }; @@ -184,13 +184,13 @@ public: const GeomPoint & TangentPoint (void) const { return p2; } virtual void LineIntersections (const double a, const double b, const double c, - ARRAY < Point > & points, const double eps) const; + Array < Point > & points, const double eps) const; virtual double MaxCurvature(void) const; virtual void Project (const Point point, Point & point_on_curve, double & t) const; - virtual void GetRawData (ARRAY & data) const; + virtual void GetRawData (Array & data) const; }; @@ -230,7 +230,7 @@ public: virtual string GetType(void) const {return "circle";} virtual void LineIntersections (const double a, const double b, const double c, - ARRAY < Point > & points, const double eps) const; + Array < Point > & points, const double eps) const; virtual double MaxCurvature(void) const {return 1./radius;} }; @@ -244,11 +244,11 @@ public: template class DiscretePointsSeg : public SplineSeg { - ARRAY > pts; + Array > pts; GeomPoint p1, p2; public: /// - DiscretePointsSeg (const ARRAY > & apts); + DiscretePointsSeg (const Array > & apts); /// virtual ~DiscretePointsSeg (); /// @@ -302,7 +302,7 @@ void SplineSeg :: Partition (double h, double elto0, double lold, dt, frac; int n = 100; Point p, pold, mark, oldmark; - ARRAY curvepoints; + Array curvepoints; double edgelength, edgelengthold; l = Length(); @@ -323,7 +323,7 @@ void SplineSeg :: Partition (double h, double elto0, lold = 0; oldmark = pold; edgelengthold = 0; - ARRAY locsearch; + Array locsearch; for (i = 1; i <= n; i++) { @@ -401,7 +401,7 @@ void SplineSeg :: Partition (double h, double elto0, template -void SplineSeg :: GetPoints (int n, ARRAY > & points) +void SplineSeg :: GetPoints (int n, Array > & points) { points.SetSize (n); if (n >= 2) @@ -486,7 +486,7 @@ void LineSeg :: GetCoeff (Vector & coeffs) const template void LineSeg :: LineIntersections (const double a, const double b, const double c, - ARRAY < Point > & points, const double eps) const + Array < Point > & points, const double eps) const { points.SetSize(0); @@ -519,7 +519,7 @@ void LineSeg :: Project (const Point point, Point & point_on_curve, dou template -void LineSeg :: GetRawData (ARRAY & data) const +void LineSeg :: GetRawData (Array & data) const { data.Append(2); for(int i=0; i :: MaxCurvature(void) const template void SplineSeg3 :: LineIntersections (const double a, const double b, const double c, - ARRAY < Point > & points, const double eps) const + Array < Point > & points, const double eps) const { points.SetSize(0); @@ -872,7 +872,7 @@ void SplineSeg3 :: LineIntersections (const double a, const double b, const d template < int D > -void SplineSeg3 :: GetRawData (ARRAY & data) const +void SplineSeg3 :: GetRawData (Array & data) const { data.Append(3); for(int i=0; i :: GetCoeff (Vector & coeff) const template void CircleSeg :: LineIntersections (const double a, const double b, const double c, - ARRAY < Point > & points, const double eps) const + Array < Point > & points, const double eps) const { points.SetSize(0); @@ -971,7 +971,7 @@ void CircleSeg :: LineIntersections (const double a, const double b, const do if(discr < 0) return; - ARRAY t; + Array t; if(fabs(discr) < 1e-20) t.Append(-0.5*c2/c1); @@ -996,7 +996,7 @@ void CircleSeg :: LineIntersections (const double a, const double b, const do template -DiscretePointsSeg :: DiscretePointsSeg (const ARRAY > & apts) +DiscretePointsSeg :: DiscretePointsSeg (const Array > & apts) : pts (apts) { for(int i=0; i > & points); + virtual void GetPoints (int n, Array > & points); /** calculates lineintersections: for lines $$ a x + b y + c = 0 $$ the interecting points are calculated and stored in points */ virtual void LineIntersections (const double a, const double b, const double c, - ARRAY < Point<2> > & points, const double eps) const + Array < Point<2> > & points, const double eps) const {points.SetSize(0);} virtual double MaxCurvature(void) const = 0; @@ -123,7 +123,7 @@ public: virtual string GetType(void) const {return "line";} virtual void LineIntersections (const double a, const double b, const double c, - ARRAY < Point<2> > & points, const double eps) const; + Array < Point<2> > & points, const double eps) const; virtual double MaxCurvature(void) const {return 0;} }; @@ -154,7 +154,7 @@ public: const GeomPoint2d & TangentPoint (void) const { return p2; } virtual void LineIntersections (const double a, const double b, const double c, - ARRAY < Point<2> > & points, const double eps) const; + Array < Point<2> > & points, const double eps) const; virtual double MaxCurvature(void) const; }; @@ -195,7 +195,7 @@ public: virtual string GetType(void) const {return "circle";} virtual void LineIntersections (const double a, const double b, const double c, - ARRAY < Point<2> > & points, const double eps) const; + Array < Point<2> > & points, const double eps) const; virtual double MaxCurvature(void) const {return 1./radius;} }; @@ -208,11 +208,11 @@ public: /// class DiscretePointsSegment : public SplineSegment { - ARRAY > pts; + Array > pts; GeomPoint2d p1, p2; public: /// - DiscretePointsSegment (const ARRAY > & apts); + DiscretePointsSegment (const Array > & apts); /// virtual ~DiscretePointsSegment (); /// diff --git a/libsrc/geom2d/splinegeometry.cpp b/libsrc/geom2d/splinegeometry.cpp index 013421e0..7d3a7989 100644 --- a/libsrc/geom2d/splinegeometry.cpp +++ b/libsrc/geom2d/splinegeometry.cpp @@ -28,8 +28,8 @@ void SplineGeometry :: LoadDataV2 ( ifstream & infile ) string keyword; - ARRAY < GeomPoint > infilepoints (0); - ARRAY pointnrs (0); + Array < GeomPoint > infilepoints (0); + Array pointnrs (0); nump = 0; int numdomains = 0; @@ -193,7 +193,7 @@ void SplineGeometry :: LoadDataV2 ( ifstream & infile ) { int npts; infile >> npts; - ARRAY< Point > pts(npts); + Array< Point > pts(npts); for (int j = 0; j < npts; j++) for(int k=0; k> pts[j](k); @@ -428,7 +428,7 @@ SplineGeometry :: ~SplineGeometry() template -int SplineGeometry :: Load (const ARRAY & raw_data, const int startpos) +int SplineGeometry :: Load (const Array & raw_data, const int startpos) { int pos = startpos; if(raw_data[pos] != D) @@ -441,7 +441,7 @@ int SplineGeometry :: Load (const ARRAY & raw_data, const int startpo splines.SetSize(int(raw_data[pos])); pos++; - ARRAY< Point > pts(3); + Array< Point > pts(3); for(int i=0; i :: Load (const ARRAY & raw_data, const int startpo } template -void SplineGeometry :: GetRawData (ARRAY & raw_data) const +void SplineGeometry :: GetRawData (Array & raw_data) const { raw_data.Append(D); raw_data.Append(elto0); @@ -714,7 +714,7 @@ void SplineGeometry :: LoadDataNew ( ifstream & infile ) { int npts; infile >> npts; - ARRAY< Point > pts(npts); + Array< Point > pts(npts); for (int j = 0; j < npts; j++) for(int k=0; k> pts[j](k); @@ -922,7 +922,7 @@ void SplineGeometry :: LoadData ( ifstream & infile ) { int npts; infile >> npts; - ARRAY< Point > pts(npts); + Array< Point > pts(npts); for (int j = 0; j < npts; j++) for(int k=0; k> pts[j](k); @@ -1018,8 +1018,8 @@ void SplineGeometry :: CopyEdgeMesh (int from, int to, Mesh & mesh, Point3dTr { int i; - ARRAY mappoints (mesh.GetNP()); - ARRAY param (mesh.GetNP()); + Array mappoints (mesh.GetNP()); + Array param (mesh.GetNP()); mappoints = -1; param = 0; @@ -1112,7 +1112,7 @@ void SplineGeometry :: GetBoundingBox (Box & box) const return; } - ARRAY > points; + Array > points; for (int i = 0; i < splines.Size(); i++) { splines[i]->GetPoints (20, points); @@ -1192,7 +1192,7 @@ void SplineGeometry :: AppendCircleSegment (const int n1, const int n2, const } template -void SplineGeometry :: AppendDiscretePointsSegment (const ARRAY< Point > & points, const int leftdomain, const int rightdomain, +void SplineGeometry :: AppendDiscretePointsSegment (const Array< Point > & points, const int leftdomain, const int rightdomain, const int bc, const double reffac, const bool hprefleft, const bool hprefright, const int copyfrom) diff --git a/libsrc/geom2d/splinegeometry.hpp b/libsrc/geom2d/splinegeometry.hpp index eb01ef86..6096f8ce 100644 --- a/libsrc/geom2d/splinegeometry.hpp +++ b/libsrc/geom2d/splinegeometry.hpp @@ -21,11 +21,11 @@ in geom2d only 2D - Geometry classes (with material properties etc.) /// extern void LoadBoundarySplines (const char * filename, - ARRAY < GeomPoint<2> > & geompoints, - ARRAY < SplineSeg<2>* > & splines, + Array < GeomPoint<2> > & geompoints, + Array < SplineSeg<2>* > & splines, double & elto0); /// -extern void PartitionBoundary (const ARRAY < SplineSeg<2>* > & splines, +extern void PartitionBoundary (const Array < SplineSeg<2>* > & splines, double h, double elto0, Mesh & mesh2d); @@ -36,14 +36,14 @@ extern int printmessage_importance; template < int D > class SplineGeometry { - ARRAY < GeomPoint > geompoints; - ARRAY < SplineSeg* > splines; + Array < GeomPoint > geompoints; + Array < SplineSeg* > splines; double elto0; - ARRAY materials; - ARRAY bcnames; - ARRAY maxh; - ARRAY quadmeshing; - ARRAY tensormeshing; + Array materials; + Array bcnames; + Array maxh; + Array quadmeshing; + Array tensormeshing; private: void AppendSegment(SplineSeg * spline, const int leftdomain, const int rightdomain, @@ -54,7 +54,7 @@ private: public: ~SplineGeometry(); - int Load (const ARRAY & raw_data, const int startpos = 0); + int Load (const Array & raw_data, const int startpos = 0); void Load (const char * filename); void CSGLoad (CSGScanner & scan); @@ -64,11 +64,11 @@ public: void PartitionBoundary (double h, Mesh & mesh2d); - void GetRawData (ARRAY & raw_data) const; + void GetRawData (Array & raw_data) const; void CopyEdgeMesh (int from, int to, Mesh & mesh2d, Point3dTree & searchtree); - const ARRAY*> & GetSplines () const + const Array*> & GetSplines () const { return splines; } int GetNSplines (void) const { return splines.Size(); } @@ -102,7 +102,7 @@ public: const double reffac = 1., const bool hprefleft = false, const bool hprefright = false, const int copyfrom = -1); - void AppendDiscretePointsSegment (const ARRAY< Point > & points, + void AppendDiscretePointsSegment (const Array< Point > & points, const int leftdomain, const int rightdomain, const int bc = -1, const double reffac = 1., const bool hprefleft = false, const bool hprefright = false, diff --git a/libsrc/geom2d/splinegeometry2.hpp b/libsrc/geom2d/splinegeometry2.hpp index 88166df9..6b1428be 100644 --- a/libsrc/geom2d/splinegeometry2.hpp +++ b/libsrc/geom2d/splinegeometry2.hpp @@ -21,11 +21,11 @@ OLD IMPLEMENTATION, NOT USED ANYMORE! /// extern void LoadBoundarySplines (const char * filename, - ARRAY & geompoints, - ARRAY & splines, + Array & geompoints, + Array & splines, double & elto0); /// -extern void PartitionBoundary (const ARRAY & splines, +extern void PartitionBoundary (const Array & splines, double h, double elto0, Mesh & mesh2d); @@ -34,8 +34,8 @@ class CSGScanner; class SplineGeometry2d { - ARRAY geompoints; - ARRAY splines; + Array geompoints; + Array splines; double elto0; @@ -54,7 +54,7 @@ public: void CopyEdgeMesh (int from, int to, Mesh & mesh2d, Point3dTree & searchtree); - const ARRAY & GetSplines () const + const Array & GetSplines () const { return splines; } int GetNSplines (void) const { return splines.Size(); } @@ -85,7 +85,7 @@ public: const double reffac = 1., const bool hprefleft = false, const bool hprefright = false, const int copyfrom = -1); - void AppendDiscretePointsSegment (const ARRAY< Point<2> > & points, + void AppendDiscretePointsSegment (const Array< Point<2> > & points, const int leftdomain, const int rightdomain, const int bc = -1, const double reffac = 1., const bool hprefleft = false, const bool hprefright = false, diff --git a/libsrc/gprim/Makefile.in b/libsrc/gprim/Makefile.in index 555d2198..9a50fa1b 100644 --- a/libsrc/gprim/Makefile.in +++ b/libsrc/gprim/Makefile.in @@ -1,8 +1,8 @@ -# Makefile.in generated by automake 1.10.1 from Makefile.am. +# Makefile.in generated by automake 1.10 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006 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. @@ -51,7 +51,7 @@ libgprim_la_LIBADD = am_libgprim_la_OBJECTS = adtree.lo geom2d.lo geom3d.lo geomfuncs.lo \ geomtest3d.lo transform3d.lo libgprim_la_OBJECTS = $(am_libgprim_la_OBJECTS) -DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) +DEFAULT_INCLUDES = -I. -I$(top_builddir)@am__isrc@ depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ @@ -322,8 +322,8 @@ ID: $(HEADERS) $(SOURCES) $(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; nonemtpy = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ mkid -fID $$unique tags: TAGS @@ -335,8 +335,8 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ 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; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ @@ -346,12 +346,13 @@ ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ + 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; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ test -z "$(CTAGS_ARGS)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique diff --git a/libsrc/gprim/adtree.cpp b/libsrc/gprim/adtree.cpp index 0b5a3197..71ec7211 100644 --- a/libsrc/gprim/adtree.cpp +++ b/libsrc/gprim/adtree.cpp @@ -206,7 +206,7 @@ namespace netgen } - void ADTree :: GetMatch (ARRAY & matches) + void ADTree :: GetMatch (Array & matches) { int nodenr; @@ -398,10 +398,10 @@ namespace netgen void ADTree3 :: GetIntersecting (const float * bmin, const float * bmax, - ARRAY & pis) const + Array & pis) const { - static ARRAY stack(1000); - static ARRAY stackdir(1000); + static Array stack(1000); + static Array stackdir(1000); ADTreeNode3 * node; int dir, stacks; @@ -658,10 +658,10 @@ namespace netgen void ADTree3Div :: GetIntersecting (const float * bmin, const float * bmax, - ARRAY & pis) const + Array & pis) const { - static ARRAY stack(1000); - static ARRAY stackdir(1000); + static Array stack(1000); + static Array stackdir(1000); ADTreeNode3Div * node; int dir, i, stacks; @@ -917,10 +917,10 @@ namespace netgen void ADTree3M :: GetIntersecting (const float * bmin, const float * bmax, - ARRAY & pis) const + Array & pis) const { - static ARRAY stack(1000); - static ARRAY stackdir(1000); + static Array stack(1000); + static Array stackdir(1000); ADTreeNode3M * node; int dir, i, stacks; @@ -1163,9 +1163,9 @@ namespace netgen void ADTree3F :: GetIntersecting (const float * bmin, const float * bmax, - ARRAY & pis) const + Array & pis) const { - static ARRAY stack(1000); + static Array stack(1000); ADTreeNode3F * node; int dir, i, stacks; @@ -1427,9 +1427,9 @@ namespace netgen void ADTree3FM :: GetIntersecting (const float * bmin, const float * bmax, - ARRAY & pis) const + Array & pis) const { - static ARRAY stack(1000); + static Array stack(1000); ADTreeNode3FM * node; int dir, i, stacks; @@ -1700,9 +1700,9 @@ namespace netgen void ADTree6 :: GetIntersecting (const float * bmin, const float * bmax, - ARRAY & pis) const + Array & pis) const { - static ARRAY stack(10000); + static Array stack(10000); stack.SetSize (10000); pis.SetSize(0); @@ -1959,9 +1959,9 @@ namespace netgen void ADTree6F :: GetIntersecting (const float * bmin, const float * bmax, - ARRAY & pis) const + Array & pis) const { - static ARRAY stack(1000); + static Array stack(1000); ADTreeNode6F * node; int dir, i, stacks; @@ -2093,7 +2093,7 @@ namespace netgen } void Point3dTree :: GetIntersecting (const Point3d & pmin, const Point3d & pmax, - ARRAY & pis) const + Array & pis) const { float pmi[3], pma[3]; for (int i = 0; i < 3; i++) @@ -2145,7 +2145,7 @@ namespace netgen } void Box3dTree ::GetIntersecting (const Point3d & pmin, const Point3d & pmax, - ARRAY & pis) const + Array & pis) const { float tpmin[6]; float tpmax[6]; diff --git a/libsrc/gprim/adtree.hpp b/libsrc/gprim/adtree.hpp index 4cac0f29..b731723b 100644 --- a/libsrc/gprim/adtree.hpp +++ b/libsrc/gprim/adtree.hpp @@ -49,11 +49,11 @@ class ADTree int dim; ADTreeNode * root; float *cmin, *cmax; - ARRAY ela; + Array ela; const ADTreeCriterion * criterion; - ARRAY stack; - ARRAY stackdir; + Array stack; + Array stackdir; int stackindex; public: @@ -63,11 +63,11 @@ public: void Insert (const float * p, int pi); // void GetIntersecting (const float * bmin, const float * bmax, - // ARRAY & pis) const; + // Array & pis) const; void SetCriterion (ADTreeCriterion & acriterion); void Reset (); int Next (); - void GetMatch (ARRAY & matches); + void GetMatch (Array & matches); void DeleteElement (int pi); @@ -103,7 +103,7 @@ class ADTree3 { ADTreeNode3 * root; float cmin[3], cmax[3]; - ARRAY ela; + Array ela; public: ADTree3 (const float * acmin, @@ -112,7 +112,7 @@ public: void Insert (const float * p, int pi); void GetIntersecting (const float * bmin, const float * bmax, - ARRAY & pis) const; + Array & pis) const; void DeleteElement (int pi); @@ -153,7 +153,7 @@ class ADTree3Div { ADTreeNode3Div * root; float cmin[3], cmax[3]; - ARRAY ela; + Array ela; public: ADTree3Div (const float * acmin, @@ -162,7 +162,7 @@ public: void Insert (const float * p, int pi); void GetIntersecting (const float * bmin, const float * bmax, - ARRAY & pis) const; + Array & pis) const; void DeleteElement (int pi); @@ -202,7 +202,7 @@ class ADTree3M { ADTreeNode3M * root; float cmin[3], cmax[3]; - ARRAY ela; + Array ela; public: ADTree3M (const float * acmin, @@ -211,7 +211,7 @@ public: void Insert (const float * p, int pi); void GetIntersecting (const float * bmin, const float * bmax, - ARRAY & pis) const; + Array & pis) const; void DeleteElement (int pi); @@ -251,7 +251,7 @@ class ADTree3F { ADTreeNode3F * root; float cmin[3], cmax[3]; - ARRAY ela; + Array ela; public: ADTree3F (const float * acmin, @@ -260,7 +260,7 @@ public: void Insert (const float * p, int pi); void GetIntersecting (const float * bmin, const float * bmax, - ARRAY & pis) const; + Array & pis) const; void DeleteElement (int pi); @@ -298,7 +298,7 @@ class ADTree3FM { ADTreeNode3FM * root; float cmin[3], cmax[3]; - ARRAY ela; + Array ela; public: ADTree3FM (const float * acmin, @@ -307,7 +307,7 @@ public: void Insert (const float * p, int pi); void GetIntersecting (const float * bmin, const float * bmax, - ARRAY & pis) const; + Array & pis) const; void DeleteElement (int pi); @@ -349,7 +349,7 @@ class ADTree6 { ADTreeNode6 * root; float cmin[6], cmax[6]; - ARRAY ela; + Array ela; public: ADTree6 (const float * acmin, @@ -358,7 +358,7 @@ public: void Insert (const float * p, int pi); void GetIntersecting (const float * bmin, const float * bmax, - ARRAY & pis) const; + Array & pis) const; void DeleteElement (int pi); @@ -407,7 +407,7 @@ class ADTree6F { ADTreeNode6F * root; float cmin[6], cmax[6]; - ARRAY ela; + Array ela; public: ADTree6F (const float * acmin, @@ -416,7 +416,7 @@ public: void Insert (const float * p, int pi); void GetIntersecting (const float * bmin, const float * bmax, - ARRAY & pis) const; + Array & pis) const; void DeleteElement (int pi); @@ -453,7 +453,7 @@ public: void DeleteElement (int pi) { tree->DeleteElement(pi); } void GetIntersecting (const Point3d & pmin, const Point3d & pmax, - ARRAY & pis) const; + Array & pis) const; const ADTree3 & Tree() const { return *tree; }; }; @@ -474,7 +474,7 @@ public: void DeleteElement (int pi) { tree->DeleteElement(pi); } void GetIntersecting (const Point3d & pmin, const Point3d & pmax, - ARRAY & pis) const; + Array & pis) const; const ADTree6 & Tree() const { return *tree; }; }; diff --git a/libsrc/gprim/geom2d.hpp b/libsrc/gprim/geom2d.hpp index 1d4bcb3a..e05f7443 100644 --- a/libsrc/gprim/geom2d.hpp +++ b/libsrc/gprim/geom2d.hpp @@ -612,7 +612,7 @@ public: class Polygon2d { protected: - ARRAY points; + Array points; public: Polygon2d (); diff --git a/libsrc/gprim/geom3d.cpp b/libsrc/gprim/geom3d.cpp index 71970ffe..04ecd137 100644 --- a/libsrc/gprim/geom3d.cpp +++ b/libsrc/gprim/geom3d.cpp @@ -698,8 +698,8 @@ void referencetransform :: ToPlain (const Point3d & p, Point3d & pp) const pp.Z() = (ez_h * v); } -void referencetransform :: ToPlain (const ARRAY & p, - ARRAY & pp) const +void referencetransform :: ToPlain (const Array & p, + Array & pp) const { Vec3d v; int i; diff --git a/libsrc/gprim/geom3d.hpp b/libsrc/gprim/geom3d.hpp index 9c6ffae4..279e7e11 100644 --- a/libsrc/gprim/geom3d.hpp +++ b/libsrc/gprim/geom3d.hpp @@ -723,7 +723,7 @@ public: /// void ToPlain (const Point3d & p, Point3d & pp) const; /// - void ToPlain (const ARRAY & p, ARRAY & pp) const; + void ToPlain (const Array & p, Array & pp) const; /// void FromPlain (const Point3d & pp, Point3d & p) const; }; diff --git a/libsrc/include/Makefile.in b/libsrc/include/Makefile.in index 459f290d..b61ccf64 100644 --- a/libsrc/include/Makefile.in +++ b/libsrc/include/Makefile.in @@ -1,8 +1,8 @@ -# Makefile.in generated by automake 1.10.1 from Makefile.am. +# Makefile.in generated by automake 1.10 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006 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. @@ -284,8 +284,8 @@ ID: $(HEADERS) $(SOURCES) $(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; nonemtpy = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ mkid -fID $$unique tags: TAGS @@ -297,8 +297,8 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ 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; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ @@ -308,12 +308,13 @@ ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ + 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; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ test -z "$(CTAGS_ARGS)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique diff --git a/libsrc/interface/Makefile.in b/libsrc/interface/Makefile.in index 18371b9b..3aac3f70 100644 --- a/libsrc/interface/Makefile.in +++ b/libsrc/interface/Makefile.in @@ -1,8 +1,8 @@ -# Makefile.in generated by automake 1.10.1 from Makefile.am. +# Makefile.in generated by automake 1.10 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006 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. @@ -54,7 +54,7 @@ am_libinterface_la_OBJECTS = read_fnf_mesh.lo readtetmesh.lo \ writejcm.lo writepermas.lo writetecplot.lo writetet.lo \ writetochnog.lo writeuser.lo wuchemnitz.lo libinterface_la_OBJECTS = $(am_libinterface_la_OBJECTS) -DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) +DEFAULT_INCLUDES = -I. -I$(top_builddir)@am__isrc@ depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ @@ -340,8 +340,8 @@ ID: $(HEADERS) $(SOURCES) $(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; nonemtpy = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ mkid -fID $$unique tags: TAGS @@ -353,8 +353,8 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ 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; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ @@ -364,12 +364,13 @@ ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ + 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; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ test -z "$(CTAGS_ARGS)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique diff --git a/libsrc/interface/read_fnf_mesh.cpp b/libsrc/interface/read_fnf_mesh.cpp index 0f962607..8e3d35d5 100644 --- a/libsrc/interface/read_fnf_mesh.cpp +++ b/libsrc/interface/read_fnf_mesh.cpp @@ -53,7 +53,7 @@ namespace netgen string name; string placement; string valuetype; - ARRAY places; + Array places; }; @@ -173,7 +173,7 @@ namespace netgen else if (token == "MATERIALS") { - ARRAY young_modulus, poisson_ratio, mass_density; + Array young_modulus, poisson_ratio, mass_density; while (1) { @@ -246,7 +246,7 @@ namespace netgen string propid; sbuf >> elnr >> def >> ch; sbuf >> typid >> matid >> propid; - ARRAY pnums; + Array pnums; while (1) { int pn; @@ -287,7 +287,7 @@ namespace netgen sbuf >> nr >> kw >> ch; if (kw == "NODES") { - ARRAY enums; + Array enums; while (1) { int en; @@ -311,7 +311,7 @@ namespace netgen sbuf >> nr >> kw >> ch; if (kw == "FACES") { - ARRAY fnums; + Array fnums; while (1) { int fn; @@ -354,7 +354,7 @@ namespace netgen else if (token == "LOADS") { - ARRAY loadtypes; + Array loadtypes; while (1) { diff --git a/libsrc/interface/readtetmesh.cpp b/libsrc/interface/readtetmesh.cpp index 4a81e5e7..0a8a7bca 100644 --- a/libsrc/interface/readtetmesh.cpp +++ b/libsrc/interface/readtetmesh.cpp @@ -49,17 +49,17 @@ namespace netgen Point3d p; int numObj3D,numObj2D,numObj1D,numObj0D; bool nullstarted; - ARRAY eldom; + Array eldom; int minId3D,minId2D; int maxId3D(-1), maxId2D(-1), maxId1D(-1), maxId0D(-1); - ARRAY *> segmentdata; - ARRAY tris; + Array *> segmentdata; + Array tris; - ARRAY userdata_int; // just save data for 1:1 output - ARRAY userdata_double; - ARRAY point_pids; - ARRAY tetfacedata; - ARRAY uid_to_group_3D, uid_to_group_2D, uid_to_group_1D, uid_to_group_0D; + Array userdata_int; // just save data for 1:1 output + Array userdata_double; + Array point_pids; + Array tetfacedata; + Array uid_to_group_3D, uid_to_group_2D, uid_to_group_1D, uid_to_group_0D; while(!done) { @@ -226,7 +226,7 @@ namespace netgen segmentdata.SetSize(nedges); for(int i=0; i(7); + segmentdata[i] = new Array(7); *segmentdata[i] = -1; in >> dummyint; in >> (*segmentdata[i])[0] >> (*segmentdata[i])[1]; @@ -350,8 +350,8 @@ namespace netgen for(int i=0; i nodes1(3),nodes2(3); - ARRAY sortval1(3),sortval2(3); + Array nodes1(3),nodes2(3); + Array sortval1(3),sortval2(3); in >> tri1 >> tri2 >> transl; if(transl > maxtransl) @@ -455,7 +455,7 @@ namespace netgen cout << endl; - // ARRAY indextodescriptor(maxId2D+1); + // Array indextodescriptor(maxId2D+1); // for(int i=1; i<=mesh.GetNFD(); i++) // indextodescriptor[mesh.GetFaceDescriptor(i).SurfNr()] = i; @@ -538,7 +538,7 @@ namespace netgen case 27: // Object2D GroupID, #Faces FaceID List { - ARRAY ports; + Array ports; //int totnum = 0; uid_to_group_2D.SetSize(maxId2D+1); uid_to_group_2D = -1; @@ -665,7 +665,7 @@ namespace netgen mesh.SetUserData("TETmesh:uid_to_group_0D",uid_to_group_0D); - ARRAY surfindices(tris.Size()); + Array surfindices(tris.Size()); surfindices = -1; for(int i=0; i indextodescriptor(maxId2D+1); + // Array indextodescriptor(maxId2D+1); // for(int i=1; i<=mesh.GetNFD(); i++) // indextodescriptor[mesh.GetFaceDescriptor(i).SurfNr()] = i; diff --git a/libsrc/interface/readuser.cpp b/libsrc/interface/readuser.cpp index e962e173..f5b11f79 100644 --- a/libsrc/interface/readuser.cpp +++ b/libsrc/interface/readuser.cpp @@ -305,7 +305,7 @@ namespace netgen int num, bcprop; ifstream inpkt (pktfile.c_str()); inpkt >> np; - ARRAY values(np); + Array values(np); for (i = 1; i <= np; i++) { Point3d p(0,0,0); diff --git a/libsrc/interface/writeabaqus.cpp b/libsrc/interface/writeabaqus.cpp index 2564da0b..6f2f165c 100644 --- a/libsrc/interface/writeabaqus.cpp +++ b/libsrc/interface/writeabaqus.cpp @@ -139,7 +139,7 @@ void WriteAbaqusFormat (const Mesh & mesh, int masternode(0); - ARRAY pairs; + Array pairs; BitArray master(np), help(np); master.Set(); for (i = 1; i <= 3; i++) @@ -158,7 +158,7 @@ void WriteAbaqusFormat (const Mesh & mesh, cout << "masternode = " << masternode << " = " << mesh.Point(masternode) << endl; - ARRAY slaves(3); + Array slaves(3); for (i = 1; i <= 3; i++) { mesh.GetIdentifications().GetPairs (i, pairs); diff --git a/libsrc/interface/writediffpack.cpp b/libsrc/interface/writediffpack.cpp index 64970252..82eb236d 100644 --- a/libsrc/interface/writediffpack.cpp +++ b/libsrc/interface/writediffpack.cpp @@ -37,8 +37,8 @@ void WriteDiffPackFormat (const Mesh & mesh, int np = mesh.GetNP(); int ne = mesh.GetNE(); int nse = mesh.GetNSE(); - ARRAY BIname; - ARRAY BCsinpoint; + Array BIname; + Array BCsinpoint; int i, j, k, l; @@ -186,8 +186,8 @@ void WriteDiffPackFormat (const Mesh & mesh, int np = mesh.GetNP(); //int ne = mesh.GetNE(); int nse = mesh.GetNSE(); - ARRAY BIname; - ARRAY BCsinpoint; + Array BIname; + Array BCsinpoint; int i, j, k, l; diff --git a/libsrc/interface/writefluent.cpp b/libsrc/interface/writefluent.cpp index 5c08d598..c5dac392 100644 --- a/libsrc/interface/writefluent.cpp +++ b/libsrc/interface/writefluent.cpp @@ -65,9 +65,9 @@ void WriteFluentFormat (const Mesh & mesh, Element2d face, face2; int i2, j2; - ARRAY surfaceelp; - ARRAY surfaceeli; - ARRAY locels; + Array surfaceelp; + Array surfaceeli; + Array locels; //no cells=no tets //no faces=2*tets diff --git a/libsrc/interface/writejcm.cpp b/libsrc/interface/writejcm.cpp index 00ef4f9f..fc00955d 100644 --- a/libsrc/interface/writejcm.cpp +++ b/libsrc/interface/writejcm.cpp @@ -33,7 +33,7 @@ void WriteJCMFormat (const Mesh & mesh, int np = mesh.GetNP(); // Identic points - ARRAY identmap1, identmap2, identmap3; + Array identmap1, identmap2, identmap3; mesh.GetIdentifications().GetMap(1, identmap1); mesh.GetIdentifications().GetMap(2, identmap2); mesh.GetIdentifications().GetMap(3, identmap3); @@ -95,7 +95,7 @@ void WriteJCMFormat (const Mesh & mesh, int nbquad = 0; // array with 1 if point on any tetra, 0 else // this is needed in order to arrange the prism points in the right order - ARRAY pointsOnTetras; + Array pointsOnTetras; pointsOnTetras.SetSize (mesh.GetNP()); pointsOnTetras = 0; for (i = 1; i <= ne; i++) diff --git a/libsrc/interface/writetecplot.cpp b/libsrc/interface/writetecplot.cpp index 6f606374..4730b983 100644 --- a/libsrc/interface/writetecplot.cpp +++ b/libsrc/interface/writetecplot.cpp @@ -27,7 +27,7 @@ void WriteTecPlotFormat (const Mesh & mesh, INDEX ne = mesh.GetNE(); INDEX nse = mesh.GetNSE(); - ARRAY sn(np); + Array sn(np); ofstream outfile(filename.c_str()); outfile << "TITLE=\" " << filename << "\"" << endl; diff --git a/libsrc/interface/writetet.cpp b/libsrc/interface/writetet.cpp index 581cc0a3..93c7074f 100644 --- a/libsrc/interface/writetet.cpp +++ b/libsrc/interface/writetet.cpp @@ -23,16 +23,16 @@ namespace netgen cout << "starting .tet export to file " << filename << endl; - ARRAY point_ids,edge_ids,face_ids; - ARRAY elnum(mesh.GetNE()); + Array point_ids,edge_ids,face_ids; + Array elnum(mesh.GetNE()); elnum = -1; - ARRAY userdata_int; - ARRAY userdata_double; - ARRAY ports; + Array userdata_int; + Array userdata_double; + Array ports; - ARRAY uid_to_group_3D, uid_to_group_2D, uid_to_group_1D, uid_to_group_0D; + Array uid_to_group_3D, uid_to_group_2D, uid_to_group_1D, uid_to_group_0D; int pos_int = 0; int pos_double = 0; @@ -98,9 +98,9 @@ namespace netgen INDEX_2_CLOSED_HASHTABLE edgenumbers(6*mesh.GetNE()+3*mesh.GetNSE());; INDEX_3_CLOSED_HASHTABLE facenumbers(4*mesh.GetNE()+mesh.GetNSE()); - ARRAY edge2node; - ARRAY face2edge; - ARRAY element2face; + Array edge2node; + Array face2edge; + Array element2face; int numelems(0),numfaces(0),numedges(0),numnodes(0); @@ -285,7 +285,7 @@ namespace netgen int numObj0D,numObj1D,numObj2D,numObj3D; int numports = ports.Size(); - ARRAY nodenum(point_ids.Size()+1); + Array nodenum(point_ids.Size()+1); nodenum = -1; @@ -367,18 +367,18 @@ namespace netgen uidpid = "UID"; - ARRAY< ARRAY* > idmaps; + Array< Array* > idmaps; for(int i=1; i<=mesh.GetIdentifications().GetMaxNr(); i++) { if(mesh.GetIdentifications().GetType(i) == Identifications::PERIODIC) { - idmaps.Append(new ARRAY); + idmaps.Append(new Array); mesh.GetIdentifications().GetMap(i,*idmaps.Last(),true); } } - ARRAY id_num,id_type; - ARRAY< ARRAY *> id_groups; + Array id_num,id_type; + Array< Array *> id_groups; // sst 2008-03-12: Write problem class... @@ -449,7 +449,7 @@ namespace netgen if(nodenum[i] == -1) continue; - ARRAY group; + Array group; group.Append(i); for(int j=0; j 1) { - id_groups.Append(new ARRAY(group)); + id_groups.Append(new Array(group)); if(group.Size() == 2) { id_type[i] = 1; @@ -590,18 +590,18 @@ namespace netgen - ARRAY< ARRAY* > vertex_to_edge(mesh.GetNP()+1); + Array< Array* > vertex_to_edge(mesh.GetNP()+1); for(int i=0; i<=mesh.GetNP(); i++) - vertex_to_edge[i] = new ARRAY; + vertex_to_edge[i] = new Array; - ARRAY< ARRAY* > idmaps_edge(idmaps.Size()); + Array< Array* > idmaps_edge(idmaps.Size()); for(int i=0; i(numedges); + idmaps_edge[i] = new Array(numedges); (*idmaps_edge[i]) = 0; } - ARRAY possible; + Array possible; for(int i=0; i group; + Array group; group.Append(i); for(int j=0; j 1) { id_num[i] = 1; - id_groups.Append(new ARRAY(group)); + id_groups.Append(new Array(group)); if(group.Size() == 2) { id_type[i] = 1; @@ -701,7 +701,7 @@ namespace netgen continue; - ARRAY group; + Array group; group.Append(i); for(int j=0; j 1) { id_num[i] = 1; - id_groups.Append(new ARRAY(group)); + id_groups.Append(new Array(group)); if(group.Size() == 2) { id_type[i] = 1; @@ -805,9 +805,9 @@ namespace netgen - ARRAY< ARRAY* > edge_to_face(numedges+1); + Array< Array* > edge_to_face(numedges+1); for(int i=0; i; + edge_to_face[i] = new Array; for(int i=0; i group; + Array group; group.Append(i); for(int j=0; j 1) { id_num[i] = -1; - id_groups.Append(new ARRAY(group)); + id_groups.Append(new Array(group)); if(group.Size() == 2) n2++; else @@ -981,7 +981,7 @@ namespace netgen << endl; - ARRAY< ARRAY * > groups; + Array< Array * > groups; int maxg = -1; for(int i = 0; i; + groups[i] = new Array; for(ElementIndex i=0; i= 0) diff --git a/libsrc/interface/writeuser.cpp b/libsrc/interface/writeuser.cpp index 92b76520..77f8ab94 100644 --- a/libsrc/interface/writeuser.cpp +++ b/libsrc/interface/writeuser.cpp @@ -15,7 +15,7 @@ namespace netgen #include "writeuser.hpp" -void RegisterUserFormats (ARRAY & names) +void RegisterUserFormats (Array & names) { const char *types[] = { @@ -631,7 +631,7 @@ void WriteEdgeElementFormat (const Mesh & mesh, int inverttets = mparam.inverttets; int invertsurf = mparam.inverttrigs; - ARRAY edges; + Array edges; ofstream outfile (filename.c_str()); @@ -788,7 +788,7 @@ void WriteFile (int typ, INDEX_2_HASHTABLE edgeht(mesh.GetNP()); // list of edges - ARRAY edgelist; + Array edgelist; // edge (point) on boundary ? BitArray bedge, bpoint(mesh.GetNP()); diff --git a/libsrc/interface/writeuser.hpp b/libsrc/interface/writeuser.hpp index 9265f30c..e11d5370 100644 --- a/libsrc/interface/writeuser.hpp +++ b/libsrc/interface/writeuser.hpp @@ -127,7 +127,7 @@ void WriteDolfinFormat (const Mesh & mesh, const string & filename); -extern void RegisterUserFormats (ARRAY & names); +extern void RegisterUserFormats (Array & names); extern bool WriteUserFormat (const string & format, const Mesh & mesh, diff --git a/libsrc/interface/wuchemnitz.cpp b/libsrc/interface/wuchemnitz.cpp index 147d0d4d..df7919e3 100644 --- a/libsrc/interface/wuchemnitz.cpp +++ b/libsrc/interface/wuchemnitz.cpp @@ -50,12 +50,12 @@ class EDGE int p1, p2; }; -static ARRAY points; -static ARRAY volelements; -static ARRAY surfelements; +static Array points; +static Array volelements; +static Array surfelements; -static ARRAY faces; -static ARRAY edges; +static Array faces; +static Array edges; void ReadFile (char * filename) diff --git a/libsrc/linalg/Makefile.in b/libsrc/linalg/Makefile.in index feabee33..d584367a 100644 --- a/libsrc/linalg/Makefile.in +++ b/libsrc/linalg/Makefile.in @@ -1,8 +1,8 @@ -# Makefile.in generated by automake 1.10.1 from Makefile.am. +# Makefile.in generated by automake 1.10 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006 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. @@ -53,7 +53,7 @@ libla_la_OBJECTS = $(am_libla_la_OBJECTS) libla_la_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \ $(CXXFLAGS) $(libla_la_LDFLAGS) $(LDFLAGS) -o $@ -DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) +DEFAULT_INCLUDES = -I. -I$(top_builddir)@am__isrc@ depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ @@ -320,8 +320,8 @@ ID: $(HEADERS) $(SOURCES) $(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; nonemtpy = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ mkid -fID $$unique tags: TAGS @@ -333,8 +333,8 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ 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; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ @@ -344,12 +344,13 @@ ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ + 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; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ test -z "$(CTAGS_ARGS)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique diff --git a/libsrc/linalg/densemat.cpp b/libsrc/linalg/densemat.cpp index 762792f5..56b6c158 100644 --- a/libsrc/linalg/densemat.cpp +++ b/libsrc/linalg/densemat.cpp @@ -456,7 +456,7 @@ void CalcInverse (const DenseMatrix & m1, DenseMatrix & m2) double max, hr; - ARRAY p(n); // pivot-permutation + Array p(n); // pivot-permutation Vector hv(n); @@ -1213,7 +1213,7 @@ double DenseMatrix :: EvaluateBilinearform (const Vector & hx) const } -void DenseMatrix :: MultElementMatrix (const ARRAY & pnum, +void DenseMatrix :: MultElementMatrix (const Array & pnum, const Vector & hx, Vector & hy) { int i, j; @@ -1239,7 +1239,7 @@ void DenseMatrix :: MultElementMatrix (const ARRAY & pnum, } -void DenseMatrix :: MultTransElementMatrix (const ARRAY & pnum, +void DenseMatrix :: MultTransElementMatrix (const Array & pnum, const Vector & hx, Vector & hy) { int i, j; diff --git a/libsrc/linalg/vector.cpp b/libsrc/linalg/vector.cpp index b9dabda3..56c2059f 100644 --- a/libsrc/linalg/vector.cpp +++ b/libsrc/linalg/vector.cpp @@ -81,7 +81,7 @@ BaseVector :: Copy () const -void BaseVector :: GetElementVector (const ARRAY & pnum, +void BaseVector :: GetElementVector (const Array & pnum, BaseVector & elvec) const { int i; @@ -89,7 +89,7 @@ void BaseVector :: GetElementVector (const ARRAY & pnum, elvec(i) = (*this)(pnum.Get(i)); } -void BaseVector :: SetElementVector (const ARRAY & pnum, +void BaseVector :: SetElementVector (const Array & pnum, const BaseVector & elvec) { int i; @@ -98,7 +98,7 @@ void BaseVector :: SetElementVector (const ARRAY & pnum, } -void BaseVector :: AddElementVector (const ARRAY & pnum, +void BaseVector :: AddElementVector (const Array & pnum, const BaseVector & elvec) { int i; @@ -176,8 +176,8 @@ double Vector :: shit = 0; class clVecpool { public: - ARRAY vecs; - ARRAY veclens; + Array vecs; + Array veclens; ~clVecpool(); }; @@ -755,7 +755,7 @@ void Vector :: Swap (BaseVector & v2) -void Vector :: GetElementVector (const ARRAY & pnum, +void Vector :: GetElementVector (const Array & pnum, BaseVector & elvec) const { int i; @@ -764,7 +764,7 @@ void Vector :: GetElementVector (const ARRAY & pnum, helvec.Elem(i) = Get(pnum.Get(i)); } -void Vector :: SetElementVector (const ARRAY & pnum, +void Vector :: SetElementVector (const Array & pnum, const BaseVector & elvec) { int i; @@ -774,7 +774,7 @@ void Vector :: SetElementVector (const ARRAY & pnum, } -void Vector :: AddElementVector (const ARRAY & pnum, +void Vector :: AddElementVector (const Array & pnum, const BaseVector & elvec) { int i; diff --git a/libsrc/meshing/Makefile.in b/libsrc/meshing/Makefile.in index 54de88dc..5b6b6c74 100644 --- a/libsrc/meshing/Makefile.in +++ b/libsrc/meshing/Makefile.in @@ -1,8 +1,8 @@ -# Makefile.in generated by automake 1.10.1 from Makefile.am. +# Makefile.in generated by automake 1.10 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006 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. @@ -59,7 +59,7 @@ am_libmesh_la_OBJECTS = adfront2.lo adfront3.lo bisect.lo \ smoothing2.lo smoothing3.lo specials.lo tetrarls.lo \ topology.lo triarls.lo validate.lo zrefine.lo libmesh_la_OBJECTS = $(am_libmesh_la_OBJECTS) -DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) +DEFAULT_INCLUDES = -I. -I$(top_builddir)@am__isrc@ depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ @@ -383,8 +383,8 @@ ID: $(HEADERS) $(SOURCES) $(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; nonemtpy = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ mkid -fID $$unique tags: TAGS @@ -396,8 +396,8 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ 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; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ @@ -407,12 +407,13 @@ ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ + 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; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ test -z "$(CTAGS_ARGS)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique diff --git a/libsrc/meshing/adfront2.cpp b/libsrc/meshing/adfront2.cpp index 37a7c385..fbe048fc 100644 --- a/libsrc/meshing/adfront2.cpp +++ b/libsrc/meshing/adfront2.cpp @@ -62,7 +62,7 @@ namespace netgen } /* - void AdFront2 :: GetPoints (ARRAY > & apoints) const + void AdFront2 :: GetPoints (Array > & apoints) const { apoints.Append (points); // for (int i = 0; i < points.Size(); i++) @@ -280,11 +280,11 @@ namespace netgen int AdFront2 :: GetLocals (int baselineindex, - ARRAY & locpoints, - ARRAY & pgeominfo, - ARRAY & loclines, // local index - ARRAY & pindex, - ARRAY & lindex, + Array & locpoints, + Array & pgeominfo, + Array & loclines, // local index + Array & pindex, + Array & lindex, double xh) { // baselineindex += 1-lines.Begin(); @@ -298,9 +298,9 @@ namespace netgen loclines.Append(lines[baselineindex].L()); lindex.Append(baselineindex); // +1-lines.Begin()); - static ARRAY nearlines; + static Array nearlines; nearlines.SetSize(0); - static ARRAY nearpoints; + static Array nearpoints; nearpoints.SetSize(0); linesearchtree.GetIntersecting (p0 - Vec3d(xh, xh, xh), @@ -322,7 +322,7 @@ namespace netgen } } - static ARRAY invpindex; + static Array invpindex; invpindex.SetSize (points.Size()); // invpindex = -1; for (int i = 0; i < nearpoints.Size(); i++) diff --git a/libsrc/meshing/adfront2.hpp b/libsrc/meshing/adfront2.hpp index 4266d333..3f71ff7c 100644 --- a/libsrc/meshing/adfront2.hpp +++ b/libsrc/meshing/adfront2.hpp @@ -165,16 +165,16 @@ class AdFront2 /// - ARRAY points; /// front points - ARRAY lines; /// front lines + Array points; /// front points + Array lines; /// front lines Box3d boundingbox; Box3dTree linesearchtree; /// search tree for lines Point3dTree pointsearchtree; /// search tree for points Point3dTree cpointsearchtree; /// search tree for cone points (not used ???) - ARRAY delpointl; /// list of deleted front points - ARRAY dellinel; /// list of deleted front lines + Array delpointl; /// list of deleted front points + Array dellinel; /// list of deleted front lines int nfl; /// number of front lines; INDEX_2_HASHTABLE * allflines; /// all front lines ever have been @@ -191,7 +191,7 @@ public: ~AdFront2 (); /// - // void GetPoints (ARRAY > & apoints) const; + // void GetPoints (Array > & apoints) const; /// void Print (ostream & ost) const; @@ -210,11 +210,11 @@ public: /// int GetLocals (int baseline, - ARRAY & locpoints, - ARRAY & pgeominfo, - ARRAY & loclines, // local index - ARRAY & pindex, - ARRAY & lindex, + Array & locpoints, + Array & pgeominfo, + Array & loclines, // local index + Array & pindex, + Array & lindex, double xh); /// diff --git a/libsrc/meshing/adfront3.cpp b/libsrc/meshing/adfront3.cpp index dfe2edc8..85c4abf8 100644 --- a/libsrc/meshing/adfront3.cpp +++ b/libsrc/meshing/adfront3.cpp @@ -84,7 +84,7 @@ AdFront3 :: ~AdFront3 () delete connectedpairs; } -void AdFront3 :: GetPoints (ARRAY > & apoints) const +void AdFront3 :: GetPoints (Array > & apoints) const { for (PointIndex pi = PointIndex::BASE; pi < points.Size()+PointIndex::BASE; pi++) @@ -266,7 +266,7 @@ void AdFront3 :: CreateTrees () void AdFront3 :: GetIntersectingFaces (const Point<3> & pmin, const Point<3> & pmax, - ARRAY & ifaces) const + Array & ifaces) const { facetree -> GetIntersecting (pmin, pmax, ifaces); } @@ -357,7 +357,7 @@ void AdFront3 :: RebuildInternalTables () if (usecl.Test(i)) cntcl++; - ARRAY clvol (np); + Array clvol (np); clvol = 0.0; for (int i = 1; i <= faces.Size(); i++) @@ -486,10 +486,10 @@ int AdFront3 :: SelectBaseElement () int AdFront3 :: GetLocals (int fstind, - ARRAY & locpoints, - ARRAY & locfaces, // local index - ARRAY & pindex, - ARRAY & findex, + Array & locpoints, + Array & locfaces, // local index + Array & pindex, + Array & findex, INDEX_2_HASHTABLE & getconnectedpairs, float xh, float relh, @@ -511,11 +511,11 @@ int AdFront3 :: GetLocals (int fstind, INDEX pi; Point3d midp, p0; - static ARRAY invpindex; + static Array invpindex; - static ARRAY locfaces2; //all local faces in radius xh - static ARRAY locfaces3; // all faces in outer radius relh - static ARRAY findex2; + static Array locfaces2; //all local faces in radius xh + static Array locfaces3; // all faces in outer radius relh + static Array findex2; locfaces2.SetSize(0); locfaces3.SetSize(0); @@ -658,12 +658,12 @@ int AdFront3 :: GetLocals (int fstind, // returns all points connected with fi void AdFront3 :: GetGroup (int fi, - ARRAY & grouppoints, - ARRAY & groupelements, - ARRAY & pindex, - ARRAY & findex) const + Array & grouppoints, + Array & groupelements, + Array & pindex, + Array & findex) const { - static ARRAY pingroup; + static Array pingroup; int i, j, changed; pingroup.SetSize(points.Size()); @@ -699,7 +699,7 @@ void AdFront3 :: GetGroup (int fi, while (changed); - static ARRAY invpindex; + static Array invpindex; invpindex.SetSize (points.Size()); @@ -825,7 +825,7 @@ bool AdFront3 :: Inside (const Point<3> & p) const int AdFront3 :: SameSide (const Point<3> & lp1, const Point<3> & lp2, - const ARRAY * testfaces) const + const Array * testfaces) const { int i, ii, cnt; @@ -841,7 +841,7 @@ int AdFront3 :: SameSide (const Point<3> & lp1, const Point<3> & lp2, pmin.SetToMin (lp2); pmax.SetToMax (lp2); - static ARRAY aprif; + static Array aprif; aprif.SetSize(0); if (!testfaces) diff --git a/libsrc/meshing/adfront3.hpp b/libsrc/meshing/adfront3.hpp index 40d6eabb..f2f7bd5d 100644 --- a/libsrc/meshing/adfront3.hpp +++ b/libsrc/meshing/adfront3.hpp @@ -176,11 +176,11 @@ public: class AdFront3 { /// -ARRAY points; +Array points; /// -ARRAY faces; +Array faces; /// -ARRAY delpointl; +Array delpointl; /// which points are connected to pi ? TABLE * connectedpairs; @@ -218,7 +218,7 @@ public: /// ~AdFront3 (); /// - void GetPoints (ARRAY > & apoints) const; + void GetPoints (Array > & apoints) const; /// int GetNP() const { return points.Size(); } @@ -251,17 +251,17 @@ public: /// void GetIntersectingFaces (const Point<3> & pmin, const Point<3> & pmax, - ARRAY & ifaces) const; + Array & ifaces) const; /// void GetFaceBoundingBox (int i, Box3d & box) const; /// int GetLocals (int baseelement, - ARRAY & locpoints, - ARRAY & locfaces, // local index - ARRAY & pindex, - ARRAY & findex, + Array & locpoints, + Array & locfaces, // local index + Array & pindex, + Array & findex, INDEX_2_HASHTABLE & connectedpairs, float xh, float relh, @@ -269,10 +269,10 @@ public: /// void GetGroup (int fi, - ARRAY & grouppoints, - ARRAY & groupelements, - ARRAY & pindex, - ARRAY & findex + Array & grouppoints, + Array & groupelements, + Array & pindex, + Array & findex ) const; /// @@ -298,7 +298,7 @@ public: bool Inside (const Point<3> & p) const; /// both points on same side ? int SameSide (const Point<3> & lp1, const Point<3> & lp2, - const ARRAY * testfaces = NULL) const; + const Array * testfaces = NULL) const; /// diff --git a/libsrc/meshing/bisect.cpp b/libsrc/meshing/bisect.cpp index b177862e..39544160 100644 --- a/libsrc/meshing/bisect.cpp +++ b/libsrc/meshing/bisect.cpp @@ -291,7 +291,7 @@ namespace netgen int BTSortEdges (const Mesh & mesh, - const ARRAY< ARRAY* > & idmaps, + const Array< Array* > & idmaps, INDEX_2_CLOSED_HASHTABLE & edgenumber) { PrintMessage(4,"sorting ... "); @@ -301,8 +301,8 @@ namespace netgen { // new, fast version - ARRAY edges; - ARRAY eclasses; + Array edges; + Array eclasses; int i, j, k; int cntedges = 0; @@ -569,7 +569,7 @@ namespace netgen // } // compute classlength: - ARRAY edgelength(cntedges); + Array edgelength(cntedges); /* for (i = 1; i <= cntedges; i++) @@ -660,7 +660,7 @@ namespace netgen // sort edges: - ARRAY sorted(cntedges); + Array sorted(cntedges); QickSort (edgelength, sorted); @@ -957,7 +957,7 @@ namespace netgen bool BTDefineMarkedId(const Element2d & el, INDEX_2_CLOSED_HASHTABLE & edgenumber, - const ARRAY & idmap, + const Array & idmap, MarkedIdentification & mi) { @@ -1385,7 +1385,7 @@ namespace netgen void BTBisectIdentification (const MarkedIdentification & oldid, - ARRAY & newp, + Array & newp, MarkedIdentification & newid1, MarkedIdentification & newid2) { @@ -1619,10 +1619,10 @@ namespace netgen { int i,j,k; - ARRAY< ARRAY* > idmaps; + Array< Array* > idmaps; for(i=1; i<=mesh.GetIdentifications().GetMaxNr(); i++) { - idmaps.Append(new ARRAY); + idmaps.Append(new Array); mesh.GetIdentifications().GetMap(i,*idmaps.Last()); } @@ -1827,7 +1827,7 @@ namespace netgen void ConnectToNodeRec (int node, int tonode, - const TABLE & conto, ARRAY & connecttonode) + const TABLE & conto, Array & connecttonode) { int i, n2; // (*testout) << "connect " << node << " to " << tonode << endl; @@ -1936,7 +1936,7 @@ namespace netgen void BisectTetsCopyMesh (Mesh & mesh, const class CSGeometry *, BisectionOptions & opt, - const ARRAY< ARRAY* > & idmaps, + const Array< Array* > & idmaps, const string & refinfofile) { mtets.SetName ("bisection, tets"); @@ -2151,24 +2151,24 @@ namespace netgen /* void UpdateEdgeMarks2(Mesh & mesh, - const ARRAY< ARRAY* > & idmaps) + const Array< Array* > & idmaps) { - ARRAY< ARRAY*,PointIndex::BASE > mtets_old(mesh.GetNP()); - ARRAY< ARRAY*,PointIndex::BASE > mprisms_old(mesh.GetNP()); - ARRAY< ARRAY*,PointIndex::BASE > mids_old(mesh.GetNP()); - ARRAY< ARRAY*,PointIndex::BASE > mtris_old(mesh.GetNP()); - ARRAY< ARRAY*,PointIndex::BASE > mquads_old(mesh.GetNP()); + Array< Array*,PointIndex::BASE > mtets_old(mesh.GetNP()); + Array< Array*,PointIndex::BASE > mprisms_old(mesh.GetNP()); + Array< Array*,PointIndex::BASE > mids_old(mesh.GetNP()); + Array< Array*,PointIndex::BASE > mtris_old(mesh.GetNP()); + Array< Array*,PointIndex::BASE > mquads_old(mesh.GetNP()); for(int i=PointIndex::BASE; i; + mtets_old[i] = new Array; for(int i=PointIndex::BASE; i; + mprisms_old[i] = new Array; for(int i=PointIndex::BASE; i; + mids_old[i] = new Array; for(int i=PointIndex::BASE; i; + mtris_old[i] = new Array; for(int i=PointIndex::BASE; i; + mquads_old[i] = new Array; for(int i=0; iAppend(mtets[i]); @@ -2404,11 +2404,11 @@ namespace netgen void UpdateEdgeMarks (Mesh & mesh, - const ARRAY< ARRAY* > & idmaps) - //const ARRAY < ARRAY* > & elements_before, - //const ARRAY < ARRAY* > & markedelts_num, - // const ARRAY < ARRAY* > & surfelements_before, - // const ARRAY < ARRAY* > & markedsurfelts_num) + const Array< Array* > & idmaps) + //const Array < Array* > & elements_before, + //const Array < Array* > & markedelts_num, + // const Array < Array* > & surfelements_before, + // const Array < Array* > & markedsurfelts_num) { T_MTETS mtets_old; mtets_old.Copy(mtets); T_MPRISMS mprisms_old; mprisms_old.Copy(mprisms); @@ -2627,7 +2627,7 @@ namespace netgen void Refinement :: Bisect (Mesh & mesh, BisectionOptions & opt, - ARRAY * quality_loss) + Array * quality_loss) { PrintMessage(1,"Mesh bisection"); PushStatus("Mesh bisection"); @@ -2638,12 +2638,12 @@ namespace netgen LocalizeEdgePoints(mesh); delete loct; - ARRAY< ARRAY* > idmaps; + Array< Array* > idmaps; for(int i=1; i<=mesh.GetIdentifications().GetMaxNr(); i++) { if(mesh.GetIdentifications().GetType(i) == Identifications::PERIODIC) { - idmaps.Append(new ARRAY); + idmaps.Append(new Array); mesh.GetIdentifications().GetMap(i,*idmaps.Last(),true); } } @@ -2727,7 +2727,7 @@ namespace netgen /* #ifndef SABINE //Nachbarelemente mit ordx,ordy,ordz - ARRAY v_order (mesh.GetNP()); + Array v_order (mesh.GetNP()); v_order = 0; for (ElementIndex ei = 0; ei < ne; ei++) @@ -3103,7 +3103,7 @@ namespace netgen else { // vertices with 2 different bnds - ARRAY bndind(np); + Array bndind(np); bndind = 0; for (i = 1; i <= mesh.GetNSeg(); i++) { @@ -3275,11 +3275,11 @@ namespace netgen if (mids.Elem(i).marked) { MarkedIdentification oldid,newid1,newid2; - ARRAY newp; + Array newp; oldid = mids.Get(i); - ARRAY edges; + Array edges; edges.Append(INDEX_2(oldid.pnums[oldid.markededge], oldid.pnums[(oldid.markededge+1)%oldid.np])); edges.Append(INDEX_2(oldid.pnums[oldid.markededge + oldid.np], @@ -3535,7 +3535,7 @@ namespace netgen if (opt.refine_hp) { // - ARRAY v_order (mesh.GetNP()); + Array v_order (mesh.GetNP()); v_order = 0; if (mesh.GetDimension() == 3) { @@ -3781,7 +3781,7 @@ namespace netgen // update identification tables for (i = 1; i <= mesh.GetIdentifications().GetMaxNr(); i++) { - ARRAY identmap; + Array identmap; mesh.GetIdentifications().GetMap (i, identmap); @@ -3859,8 +3859,8 @@ namespace netgen NgProfiler::RegionTimer * regt(NULL); regt = new NgProfiler::RegionTimer(reptimer); - ARRAY bad_elts; - ARRAY pure_badness; + Array bad_elts; + Array pure_badness; if(do_repair || quality_loss != NULL) { diff --git a/libsrc/meshing/bisect.hpp b/libsrc/meshing/bisect.hpp index 9ae0b1de..8f023727 100644 --- a/libsrc/meshing/bisect.hpp +++ b/libsrc/meshing/bisect.hpp @@ -47,7 +47,7 @@ public: virtual ~Refinement (); void Refine (Mesh & mesh); - void Bisect (Mesh & mesh, class BisectionOptions & opt, ARRAY * quality_loss = NULL); + void Bisect (Mesh & mesh, class BisectionOptions & opt, Array * quality_loss = NULL); void MakeSecondOrder (Mesh & mesh); virtual void PointBetween (const Point<3> & p1, const Point<3> & p2, double secpoint, @@ -81,7 +81,7 @@ public: void ValidateSecondOrder (Mesh & mesh); void ValidateRefinedMesh (Mesh & mesh, - ARRAY & parents); + Array & parents); MeshOptimize2d * Get2dOptimizer(void) { diff --git a/libsrc/meshing/boundarylayer.cpp b/libsrc/meshing/boundarylayer.cpp index 1dd34038..359b0cab 100644 --- a/libsrc/meshing/boundarylayer.cpp +++ b/libsrc/meshing/boundarylayer.cpp @@ -20,7 +20,7 @@ void InsertVirtualBoundaryLayer (Mesh & mesh) cout << "Trigs: " << mesh.GetNSE() << endl; BitArray bndnodes(np); - ARRAY mapto(np); + Array mapto(np); bndnodes.Clear(); for (i = 1; i <= mesh.GetNSeg(); i++) diff --git a/libsrc/meshing/classifyhpel.hpp b/libsrc/meshing/classifyhpel.hpp index 96bf1b62..75ef84ca 100644 --- a/libsrc/meshing/classifyhpel.hpp +++ b/libsrc/meshing/classifyhpel.hpp @@ -1,6 +1,6 @@ HPREF_ELEMENT_TYPE ClassifyTet(HPRefElement & el, INDEX_2_HASHTABLE & edges, INDEX_2_HASHTABLE & edgepoint_dom, BitArray & cornerpoint, BitArray & edgepoint, INDEX_3_HASHTABLE & faces, INDEX_2_HASHTABLE & face_edges, - INDEX_2_HASHTABLE & surf_edges, ARRAY & facepoint) + INDEX_2_HASHTABLE & surf_edges, Array & facepoint) { int ep1(0), ep2(0), ep3(0), ep4(0), cp1(0), cp2(0), cp3(0), cp4(0), fp1, fp2, fp3, fp4; int isedge1(0), isedge2(0), isedge3(0), isedge4(0), isedge5(0), isedge6(0); @@ -424,7 +424,7 @@ HPREF_ELEMENT_TYPE ClassifyTet(HPRefElement & el, INDEX_2_HASHTABLE & edges HPREF_ELEMENT_TYPE ClassifyPrism(HPRefElement & el, INDEX_2_HASHTABLE & edges, INDEX_2_HASHTABLE & edgepoint_dom, BitArray & cornerpoint, BitArray & edgepoint, INDEX_3_HASHTABLE & faces, INDEX_2_HASHTABLE & face_edges, - INDEX_2_HASHTABLE & surf_edges, ARRAY & facepoint) + INDEX_2_HASHTABLE & surf_edges, Array & facepoint) { HPREF_ELEMENT_TYPE type = HP_NONE; @@ -659,7 +659,7 @@ HPREF_ELEMENT_TYPE ClassifyPrism(HPRefElement & el, INDEX_2_HASHTABLE & edg // #ifdef SABINE HPREF_ELEMENT_TYPE ClassifyTrig(HPRefElement & el, INDEX_2_HASHTABLE & edges, INDEX_2_HASHTABLE & edgepoint_dom, BitArray & cornerpoint, BitArray & edgepoint, INDEX_3_HASHTABLE & faces, INDEX_2_HASHTABLE & face_edges, - INDEX_2_HASHTABLE & surf_edges, ARRAY & facepoint, int dim, const FaceDescriptor & fd) + INDEX_2_HASHTABLE & surf_edges, Array & facepoint, int dim, const FaceDescriptor & fd) { HPREF_ELEMENT_TYPE type = HP_NONE; @@ -868,7 +868,7 @@ HPREF_ELEMENT_TYPE ClassifyTrig(HPRefElement & el, INDEX_2_HASHTABLE & edge #ifdef HPREF_OLD HPREF_ELEMENT_TYPE ClassifyTrig(HPRefElement & el, INDEX_2_HASHTABLE & edges, INDEX_2_HASHTABLE & edgepoint_dom, BitArray & cornerpoint, BitArray & edgepoint, INDEX_3_HASHTABLE & faces, INDEX_2_HASHTABLE & face_edges, - INDEX_2_HASHTABLE & surf_edges, ARRAY & facepoint, int dim, const FaceDescriptor & fd) + INDEX_2_HASHTABLE & surf_edges, Array & facepoint, int dim, const FaceDescriptor & fd) { HPREF_ELEMENT_TYPE type = HP_NONE; @@ -1129,7 +1129,7 @@ HPREF_ELEMENT_TYPE ClassifyTrig(HPRefElement & el, INDEX_2_HASHTABLE & edge #endif HPREF_ELEMENT_TYPE ClassifyQuad(HPRefElement & el, INDEX_2_HASHTABLE & edges, INDEX_2_HASHTABLE & edgepoint_dom, BitArray & cornerpoint, BitArray & edgepoint, INDEX_3_HASHTABLE & faces, INDEX_2_HASHTABLE & face_edges, - INDEX_2_HASHTABLE & surf_edges, ARRAY & facepoint, int dim, const FaceDescriptor & fd) + INDEX_2_HASHTABLE & surf_edges, Array & facepoint, int dim, const FaceDescriptor & fd) { HPREF_ELEMENT_TYPE type = HP_NONE; @@ -1472,7 +1472,7 @@ HPREF_ELEMENT_TYPE ClassifyQuad(HPRefElement & el, INDEX_2_HASHTABLE & edge HPREF_ELEMENT_TYPE ClassifyHex(HPRefElement & el, INDEX_2_HASHTABLE & edges, INDEX_2_HASHTABLE & edgepoint_dom, BitArray & cornerpoint, BitArray & edgepoint, INDEX_3_HASHTABLE & faces, INDEX_2_HASHTABLE & face_edges, - INDEX_2_HASHTABLE & surf_edges, ARRAY & facepoint) + INDEX_2_HASHTABLE & surf_edges, Array & facepoint) { HPREF_ELEMENT_TYPE type = HP_NONE; @@ -1572,7 +1572,7 @@ HPREF_ELEMENT_TYPE ClassifyHex(HPRefElement & el, INDEX_2_HASHTABLE & edges HPREF_ELEMENT_TYPE ClassifySegm(HPRefElement & hpel, INDEX_2_HASHTABLE & edges, INDEX_2_HASHTABLE & edgepoint_dom, BitArray & cornerpoint, BitArray & edgepoint, INDEX_3_HASHTABLE & faces, INDEX_2_HASHTABLE & face_edges, - INDEX_2_HASHTABLE & surf_edges, ARRAY & facepoint) + INDEX_2_HASHTABLE & surf_edges, Array & facepoint) { int cp1 = cornerpoint.Test (hpel[0]); @@ -1615,7 +1615,7 @@ HPREF_ELEMENT_TYPE ClassifySegm(HPRefElement & hpel, INDEX_2_HASHTABLE & ed HPREF_ELEMENT_TYPE ClassifyPyramid(HPRefElement & el, INDEX_2_HASHTABLE & edges, INDEX_2_HASHTABLE & edgepoint_dom, BitArray & cornerpoint, BitArray & edgepoint, INDEX_3_HASHTABLE & faces, INDEX_2_HASHTABLE & face_edges, - INDEX_2_HASHTABLE & surf_edges, ARRAY & facepoint) + INDEX_2_HASHTABLE & surf_edges, Array & facepoint) { HPREF_ELEMENT_TYPE type = HP_NONE; diff --git a/libsrc/meshing/clusters.cpp b/libsrc/meshing/clusters.cpp index da6c66fe..412ec8b4 100644 --- a/libsrc/meshing/clusters.cpp +++ b/libsrc/meshing/clusters.cpp @@ -38,7 +38,7 @@ void AnisotropicClusters :: Update() cluster_reps.SetSize (nv+ned+nfa+ne); - ARRAY nnums, ednums, fanums; + Array nnums, ednums, fanums; int changed; for (i = 1; i <= cluster_reps.Size(); i++) diff --git a/libsrc/meshing/clusters.hpp b/libsrc/meshing/clusters.hpp index b0eea1b5..fa0de93a 100644 --- a/libsrc/meshing/clusters.hpp +++ b/libsrc/meshing/clusters.hpp @@ -21,7 +21,7 @@ class AnisotropicClusters int nv, ned, nfa, ne; // connected nodes, nodes = vertices, edges, faces, elements - ARRAY cluster_reps; + Array cluster_reps; public: AnisotropicClusters (const Mesh & amesh); diff --git a/libsrc/meshing/curvedelems.cpp b/libsrc/meshing/curvedelems.cpp index f6d285f5..68f3202a 100644 --- a/libsrc/meshing/curvedelems.cpp +++ b/libsrc/meshing/curvedelems.cpp @@ -12,7 +12,7 @@ namespace netgen - static void ComputeGaussRule (int n, ARRAY & xi, ARRAY & wi) + static void ComputeGaussRule (int n, Array & xi, Array & wi) { xi.SetSize (n); wi.SetSize (n); @@ -451,7 +451,7 @@ inline void ScaledJacobiPolynomial (int n, S x, St t, double alpha, double beta, rational = arational; - ARRAY edgenrs; + Array edgenrs; edgeorder.SetSize (top.GetNEdges()); faceorder.SetSize (top.GetNFaces()); @@ -531,7 +531,7 @@ inline void ScaledJacobiPolynomial (int n, S x, St t, double alpha, double beta, return; } - ARRAY xi, weight; + Array xi, weight; ComputeGaussRule (aorder+4, xi, weight); // on (0,1) @@ -1025,7 +1025,7 @@ inline void ScaledJacobiPolynomial (int n, S x, St t, double alpha, double beta, Vector shapes, dshapes; - ARRAY > coefs; + Array > coefs; SegmentInfo info; info.elnr = elnr; @@ -1145,7 +1145,7 @@ inline void ScaledJacobiPolynomial (int n, S x, St t, double alpha, double beta, } void CurvedElements :: - GetCoefficients (SegmentInfo & info, ARRAY > & coefs) const + GetCoefficients (SegmentInfo & info, Array > & coefs) const { const Segment & el = mesh[info.elnr]; @@ -1270,7 +1270,7 @@ inline void ScaledJacobiPolynomial (int n, S x, St t, double alpha, double beta, Vector shapes; DenseMatrix dshapes; - ARRAY > coefs; + Array > coefs; const Element2d & el = mesh[elnr]; ELEMENT_TYPE type = el.GetType(); @@ -1752,7 +1752,7 @@ inline void ScaledJacobiPolynomial (int n, S x, St t, double alpha, double beta, void CurvedElements :: - GetCoefficients (SurfaceElementInfo & info, ARRAY > & coefs) const + GetCoefficients (SurfaceElementInfo & info, Array > & coefs) const { const Element2d & el = mesh[info.elnr]; coefs.SetSize (info.ndof); @@ -2716,17 +2716,17 @@ inline void ScaledJacobiPolynomial (int n, S x, St t, double alpha, double beta, void CurvedElements :: - CalcMultiPointSegmentTransformation (ARRAY * xi, SegmentIndex segnr, - ARRAY > * x, - ARRAY > * dxdxi) + CalcMultiPointSegmentTransformation (Array * xi, SegmentIndex segnr, + Array > * x, + Array > * dxdxi) { ; } void CurvedElements :: - CalcMultiPointSurfaceTransformation (ARRAY< Point<2> > * xi, SurfaceElementIndex elnr, - ARRAY< Point<3> > * x, - ARRAY< Mat<3,2> > * dxdxi) + CalcMultiPointSurfaceTransformation (Array< Point<2> > * xi, SurfaceElementIndex elnr, + Array< Point<3> > * x, + Array< Mat<3,2> > * dxdxi) { if (mesh.coarsemesh) { @@ -2787,7 +2787,7 @@ inline void ScaledJacobiPolynomial (int n, S x, St t, double alpha, double beta, Vector shapes; DenseMatrix dshapes; - ARRAY > coefs; + Array > coefs; const Element2d & el = mesh[elnr]; @@ -2859,9 +2859,9 @@ inline void ScaledJacobiPolynomial (int n, S x, St t, double alpha, double beta, } void CurvedElements :: - CalcMultiPointElementTransformation (ARRAY< Point<3> > * xi, ElementIndex elnr, - ARRAY< Point<3> > * x, - ARRAY< Mat<3,3> > * dxdxi) + CalcMultiPointElementTransformation (Array< Point<3> > * xi, ElementIndex elnr, + Array< Point<3> > * x, + Array< Mat<3,3> > * dxdxi) { if (mesh.coarsemesh) { @@ -2953,7 +2953,7 @@ inline void ScaledJacobiPolynomial (int n, S x, St t, double alpha, double beta, // info.ndof += facecoeffsindex[info.facenr+1] - facecoeffsindex[info.facenr]; } - ARRAY > coefs(info.ndof); + Array > coefs(info.ndof); GetCoefficients (info, &coefs[0]); if (x) { @@ -3110,7 +3110,7 @@ inline void ScaledJacobiPolynomial (int n, S x, St t, double alpha, double beta, // info.ndof += facecoeffsindex[info.facenr+1] - facecoeffsindex[info.facenr]; } - ARRAY > coefs(info.ndof); + Array > coefs(info.ndof); GetCoefficients (info, &coefs[0]); if (x) { diff --git a/libsrc/meshing/curvedelems.hpp b/libsrc/meshing/curvedelems.hpp index 252622d1..2cf4e6e8 100644 --- a/libsrc/meshing/curvedelems.hpp +++ b/libsrc/meshing/curvedelems.hpp @@ -18,16 +18,16 @@ class CurvedElements { const Mesh & mesh; - ARRAY edgeorder; - ARRAY faceorder; + Array edgeorder; + Array faceorder; - ARRAY edgecoeffsindex; - ARRAY facecoeffsindex; + Array edgecoeffsindex; + Array facecoeffsindex; - ARRAY< Vec<3> > edgecoeffs; - ARRAY< Vec<3> > facecoeffs; + Array< Vec<3> > edgecoeffs; + Array< Vec<3> > facecoeffs; - ARRAY< double > edgeweight; // for rational 2nd order splines + Array< double > edgeweight; // for rational 2nd order splines int order; bool rational; @@ -115,17 +115,17 @@ public: - void CalcMultiPointSegmentTransformation (ARRAY * xi, SegmentIndex segnr, - ARRAY > * x, - ARRAY > * dxdxi); + void CalcMultiPointSegmentTransformation (Array * xi, SegmentIndex segnr, + Array > * x, + Array > * dxdxi); - void CalcMultiPointSurfaceTransformation (ARRAY< Point<2> > * xi, SurfaceElementIndex elnr, - ARRAY< Point<3> > * x, - ARRAY< Mat<3,2> > * dxdxi); + void CalcMultiPointSurfaceTransformation (Array< Point<2> > * xi, SurfaceElementIndex elnr, + Array< Point<3> > * x, + Array< Mat<3,2> > * dxdxi); - void CalcMultiPointElementTransformation (ARRAY< Point<3> > * xi, ElementIndex elnr, - ARRAY< Point<3> > * x, - ARRAY< Mat<3,3> > * dxdxi); + void CalcMultiPointElementTransformation (Array< Point<3> > * xi, ElementIndex elnr, + Array< Point<3> > * x, + Array< Mat<3,3> > * dxdxi); void CalcMultiPointElementTransformation (ElementIndex elnr, int n, const double * xi, int sxi, @@ -163,7 +163,7 @@ private: }; void CalcElementShapes (SegmentInfo & elnr, double xi, Vector & shapes) const; - void GetCoefficients (SegmentInfo & elnr, ARRAY > & coefs) const; + void GetCoefficients (SegmentInfo & elnr, Array > & coefs) const; void CalcElementDShapes (SegmentInfo & elnr, double xi, Vector & dshapes) const; @@ -200,7 +200,7 @@ private: }; void CalcElementShapes (SurfaceElementInfo & elinfo, const Point<2> & xi, Vector & shapes) const; - void GetCoefficients (SurfaceElementInfo & elinfo, ARRAY > & coefs) const; + void GetCoefficients (SurfaceElementInfo & elinfo, Array > & coefs) const; void CalcElementDShapes (SurfaceElementInfo & elinfo, const Point<2> & xi, DenseMatrix & dshapes) const; }; diff --git a/libsrc/meshing/delaunay.cpp b/libsrc/meshing/delaunay.cpp index e74afec3..c3a623cc 100644 --- a/libsrc/meshing/delaunay.cpp +++ b/libsrc/meshing/delaunay.cpp @@ -112,12 +112,12 @@ namespace netgen INDEX_3_CLOSED_HASHTABLE faces; // - ARRAY & tets; + Array & tets; public: // estimated number of points - MeshNB (ARRAY & atets, int np) + MeshNB (Array & atets, int np) : faces(200), tets(atets) { ; } @@ -187,7 +187,7 @@ namespace netgen */ class SphereList { - ARRAY links; + Array links; public: SphereList () { ; } @@ -210,11 +210,11 @@ namespace netgen links.Elem (toi) = eli; } - void GetList (int eli, ARRAY & linked) const; + void GetList (int eli, Array & linked) const; }; - void SphereList :: GetList (int eli, ARRAY & linked) const + void SphereList :: GetList (int eli, Array & linked) const { linked.SetSize (0); int pi = eli; @@ -244,13 +244,13 @@ namespace netgen void AddDelaunayPoint (PointIndex newpi, const Point3d & newp, - ARRAY & tempels, + Array & tempels, Mesh & mesh, Box3dTree & tettree, MeshNB & meshnb, - ARRAY > & centers, ARRAY & radi2, - ARRAY & connected, ARRAY & treesearch, - ARRAY & freelist, SphereList & list, + Array > & centers, Array & radi2, + Array & connected, Array & treesearch, + Array & freelist, SphereList & list, IndexSet & insphere, IndexSet & closesphere) { /* @@ -446,7 +446,7 @@ namespace netgen } // while (changed) // (*testout) << "newels: " << endl; - ARRAY newels; + Array newels; Element2d face(TRIG); @@ -602,14 +602,14 @@ namespace netgen void Delaunay1 (Mesh & mesh, const MeshingParameters & mp, AdFront3 * adfront, - ARRAY & tempels, + Array & tempels, int oldnp, DelaunayTet & startel, Point3d & pmin, Point3d & pmax) { int i, j, k; const Point<3> * pp[4]; - ARRAY > centers; - ARRAY radi2; + Array > centers; + Array radi2; Point3d tpmin, tpmax; @@ -676,7 +676,7 @@ namespace netgen usep.Set (mesh.LockedPoints()[i]); - ARRAY freelist; + Array freelist; int cntp = 0; @@ -693,7 +693,7 @@ namespace netgen tempels.Append (startel); meshnb.Add (1); list.AddElement (1); - ARRAY connected, treesearch; + Array connected, treesearch; tpmin = tpmax = mesh.Point(startel[0]); @@ -726,7 +726,7 @@ namespace netgen // "random" reordering of points (speeds a factor 3 - 5 !!!) - ARRAY mixed(np); + Array mixed(np); int prims[] = { 11, 13, 17, 19, 23, 29, 31, 37 }; int prim; @@ -799,7 +799,7 @@ namespace netgen PushStatus ("Delaunay meshing"); - ARRAY tempels; + Array tempels; Point3d pmin, pmax; DelaunayTet startel; @@ -959,7 +959,7 @@ namespace netgen // find surface triangles which are no face of any tet INDEX_3_HASHTABLE openeltab(mesh.GetNOpenElements()+3); - ARRAY openels; + Array openels; for (int i = 1; i <= mesh.GetNOpenElements(); i++) { const Element2d & tri = mesh.OpenElement(i); @@ -1147,7 +1147,7 @@ namespace netgen } } - ARRAY neartrias; + Array neartrias; for (int i = 1; i <= tempels.Size(); i++) { const Point<3> *pp[4]; @@ -1407,7 +1407,7 @@ namespace netgen BitArray inner(ne), outer(ne); inner.Clear(); outer.Clear(); - ARRAY elstack; + Array elstack; /* int starti = 0; diff --git a/libsrc/meshing/findip.hpp b/libsrc/meshing/findip.hpp index 2d9058fc..0ce90597 100644 --- a/libsrc/meshing/findip.hpp +++ b/libsrc/meshing/findip.hpp @@ -2,8 +2,8 @@ -inline void Minimize (const ARRAY & a, - const ARRAY & c, +inline void Minimize (const Array & a, + const Array & c, int * act, Vec<3> & x, double & f, int * sol) @@ -67,16 +67,16 @@ inline void Minimize (const ARRAY & a, -template -inline int FindInnerPoint (POINTARRAY & points, - FACEARRAY & faces, +template +inline int FindInnerPoint (POINTArray & points, + FACEArray & faces, Point3d & p) { static int timer = NgProfiler::CreateTimer ("FindInnerPoint"); NgProfiler::RegionTimer reg (timer); - ARRAY a; - ARRAY c; + Array a; + Array c; Mat<3> m, inv; Vec<3> rs, x, center; double f; diff --git a/libsrc/meshing/findip2.hpp b/libsrc/meshing/findip2.hpp index fa9215d9..95385534 100644 --- a/libsrc/meshing/findip2.hpp +++ b/libsrc/meshing/findip2.hpp @@ -1,15 +1,15 @@ // find inner point -template -inline int FindInnerPoint2 (POINTARRAY & points, - FACEARRAY & faces, +template +inline int FindInnerPoint2 (POINTArray & points, + FACEArray & faces, Point3d & p) { static int timer = NgProfiler::CreateTimer ("FindInnerPoint2"); NgProfiler::RegionTimer reg (timer); - ARRAY a; - ARRAY c; + Array a; + Array c; Mat<3> m, inv; Vec<3> rs, x, pmin; diff --git a/libsrc/meshing/geomsearch.cpp b/libsrc/meshing/geomsearch.cpp index 1bedd23c..dc217a48 100644 --- a/libsrc/meshing/geomsearch.cpp +++ b/libsrc/meshing/geomsearch.cpp @@ -19,7 +19,7 @@ namespace netgen } } - void GeomSearch3d :: Init (ARRAY *pointsi, ARRAY *facesi) + void GeomSearch3d :: Init (Array *pointsi, Array *facesi) { points = pointsi; faces = facesi; @@ -120,7 +120,7 @@ namespace netgen for (k = 1; k <= size.i3; k++) { INDEX ind=i+(j-1)*size.i1+(k-1)*size.i2*size.i1; - hashtable.Elem(ind) = new ARRAY (); + hashtable.Elem(ind) = new Array (); } } } @@ -175,7 +175,7 @@ namespace netgen } } - void GeomSearch3d :: GetLocals(ARRAY & locfaces, ARRAY & findex, + void GeomSearch3d :: GetLocals(Array & locfaces, Array & findex, INDEX fstind, const Point3d& p0, double xh) { hashcount++; @@ -212,7 +212,7 @@ namespace netgen INDEX ind=ix+(iy-1)*size.i1+(iz-1)*size.i2*size.i1; //go through all elements in one hash area - const ARRAY & area = *hashtable.Elem(ind); + const Array & area = *hashtable.Elem(ind); for (k = 1; k <= area.Size(); k++) { cnt2++; diff --git a/libsrc/meshing/geomsearch.hpp b/libsrc/meshing/geomsearch.hpp index 236c98b1..052073de 100644 --- a/libsrc/meshing/geomsearch.hpp +++ b/libsrc/meshing/geomsearch.hpp @@ -22,7 +22,7 @@ public: virtual ~GeomSearch3d(); /// - void Init (ARRAY *pointsi, ARRAY *facesi); + void Init (Array *pointsi, Array *facesi); ///get elements max extension void ElemMaxExt(Point3d& minp, Point3d& maxp, const MiniElement2d& elem); @@ -41,15 +41,15 @@ public: void AddElem(const MiniElement2d& elem, INDEX elemnum); ///GetLocal faces in sphere with radius xh and middlepoint p - void GetLocals(ARRAY & locfaces, ARRAY & findex, + void GetLocals(Array & locfaces, Array & findex, INDEX fstind, const Point3d& p0, double xh); private: - ARRAY *faces; // Pointers to Arrays in Adfront - ARRAY *points; + Array *faces; // Pointers to Arrays in Adfront + Array *points; - ARRAY *> hashtable; + Array *> hashtable; Point3d minext; //extension of Hashdomain Point3d maxext; diff --git a/libsrc/meshing/global.cpp b/libsrc/meshing/global.cpp index 54f01e29..676d29b9 100644 --- a/libsrc/meshing/global.cpp +++ b/libsrc/meshing/global.cpp @@ -29,7 +29,7 @@ namespace netgen string ngdir = "."; - ARRAY tets_in_qualclass; + Array tets_in_qualclass; multithreadt :: multithreadt() diff --git a/libsrc/meshing/global.hpp b/libsrc/meshing/global.hpp index c0e31f73..a79b5a4c 100644 --- a/libsrc/meshing/global.hpp +++ b/libsrc/meshing/global.hpp @@ -24,7 +24,7 @@ extern Flags parameters; extern MeshingParameters mparam; -extern ARRAY tets_in_qualclass; +extern Array tets_in_qualclass; class multithreadt diff --git a/libsrc/meshing/hprefinement.cpp b/libsrc/meshing/hprefinement.cpp index 0ba4238b..09314b01 100644 --- a/libsrc/meshing/hprefinement.cpp +++ b/libsrc/meshing/hprefinement.cpp @@ -561,12 +561,12 @@ namespace netgen bool CheckSingularities(Mesh & mesh, INDEX_2_HASHTABLE & edges, INDEX_2_HASHTABLE & edgepoiclt_dom, BitArray & cornerpoint, BitArray & edgepoint, INDEX_3_HASHTABLE & faces, INDEX_2_HASHTABLE & face_edges, - INDEX_2_HASHTABLE & surf_edges, ARRAY & facepoint, int & levels, int & act_ref); + INDEX_2_HASHTABLE & surf_edges, Array & facepoint, int & levels, int & act_ref); - bool ClassifyHPElements (Mesh & mesh, ARRAY & elements, int & act_ref, int & levels); + bool ClassifyHPElements (Mesh & mesh, Array & elements, int & act_ref, int & levels); - void InitHPElements(Mesh & mesh, ARRAY & elements) + void InitHPElements(Mesh & mesh, Array & elements) { for(ElementIndex i=0;i & elements, + void DoRefinement (Mesh & mesh, Array & elements, Refinement * ref, double fac1) { elements.SetAllocSize (5 * elements.Size()); @@ -868,7 +868,7 @@ namespace netgen /* ************************** DoRefineDummies ******************************** */ - void DoRefineDummies (Mesh & mesh, ARRAY & elements, + void DoRefineDummies (Mesh & mesh, Array & elements, Refinement * ref) { int oldelsize = elements.Size(); @@ -942,7 +942,7 @@ namespace netgen - void SubdivideDegeneratedHexes (Mesh & mesh, ARRAY & elements, double fac1) + void SubdivideDegeneratedHexes (Mesh & mesh, Array & elements, double fac1) { int oldne = elements.Size(); for (int i = 0; i < oldne; i++) @@ -983,7 +983,7 @@ namespace netgen for (int j = 0; j < 6; j++) { - ARRAY pts; + Array pts; for (int k = 0; k < 4; k++) { bool same = 0; @@ -1081,7 +1081,7 @@ namespace netgen } - void CalcStatistics (ARRAY & elements) + void CalcStatistics (Array & elements) { return; #ifdef ABC @@ -1233,9 +1233,9 @@ namespace netgen - void ReorderPoints (Mesh & mesh, ARRAY & hpelements) + void ReorderPoints (Mesh & mesh, Array & hpelements) { - ARRAY map (mesh.GetNP()); + Array map (mesh.GetNP()); for (int i = 1; i <= mesh.GetNP(); i++) map[i] = i; @@ -1276,7 +1276,7 @@ namespace netgen cout << nwrong << " wrong prisms, " << nright << " right prisms" << endl; - ARRAY hpts(mesh.GetNP()); + Array hpts(mesh.GetNP()); for (int i = 1; i <= mesh.GetNP(); i++) hpts[map[i]] = mesh.Point(i); @@ -1313,13 +1313,13 @@ namespace netgen delete mesh.hpelements; - mesh.hpelements = new ARRAY; + mesh.hpelements = new Array; - ARRAY & hpelements = *mesh.hpelements; + Array & hpelements = *mesh.hpelements; InitHPElements(mesh,hpelements); - ARRAY nplevel; + Array nplevel; nplevel.Append (mesh.GetNP()); int act_ref=1; @@ -1548,7 +1548,7 @@ namespace netgen bool CheckSingularities(Mesh & mesh, INDEX_2_HASHTABLE & edges, INDEX_2_HASHTABLE & edgepoint_dom, BitArray & cornerpoint, BitArray & edgepoint, INDEX_3_HASHTABLE & faces, INDEX_2_HASHTABLE & face_edges, - INDEX_2_HASHTABLE & surf_edges, ARRAY & facepoint, int & levels, int & act_ref) + INDEX_2_HASHTABLE & surf_edges, Array & facepoint, int & levels, int & act_ref) { bool sing=0; if (mesh.GetDimension() == 3) @@ -1556,7 +1556,7 @@ bool CheckSingularities(Mesh & mesh, INDEX_2_HASHTABLE & edges, INDEX_2_HAS /* // check, if point has as least 3 different surfs: - ARRAY surfonpoint(mesh.GetNP()); + Array surfonpoint(mesh.GetNP()); surfonpoint = INDEX_3(0,0,0); for (SurfaceElementIndex sei = 0; sei < mesh.GetNSE(); sei++) @@ -1699,7 +1699,7 @@ bool CheckSingularities(Mesh & mesh, INDEX_2_HASHTABLE & edges, INDEX_2_HAS // 2D case // check, if point has as least 3 different surfs: - ARRAY surfonpoint(mesh.GetNP()); + Array surfonpoint(mesh.GetNP()); for (int i = 1; i <= mesh.GetNP(); i++) surfonpoint.Elem(i) = INDEX_3(0,0,0); @@ -1801,7 +1801,7 @@ bool CheckSingularities(Mesh & mesh, INDEX_2_HASHTABLE & edges, INDEX_2_HAS - bool ClassifyHPElements (Mesh & mesh, ARRAY & elements, int & act_ref, int & levels) + bool ClassifyHPElements (Mesh & mesh, Array & elements, int & act_ref, int & levels) { INDEX_2_HASHTABLE edges(mesh.GetNSeg()+1); @@ -1817,7 +1817,7 @@ bool CheckSingularities(Mesh & mesh, INDEX_2_HASHTABLE & edges, INDEX_2_HAS INDEX_3_HASHTABLE faces(mesh.GetNSE()+1); INDEX_2_HASHTABLE face_edges(mesh.GetNSE()+1); INDEX_2_HASHTABLE surf_edges(mesh.GetNSE()+1); - ARRAY facepoint(mesh.GetNP()); + Array facepoint(mesh.GetNP()); bool sing = CheckSingularities(mesh, edges, edgepoint_dom, cornerpoint, edgepoint, faces, face_edges, @@ -1826,7 +1826,7 @@ bool CheckSingularities(Mesh & mesh, INDEX_2_HASHTABLE & edges, INDEX_2_HAS if(sing==0) return(sing); int cnt_undef = 0, cnt_nonimplement = 0; - ARRAY misses(10000); + Array misses(10000); misses = 0; (*testout) << "edgepoint_dom = " << endl << edgepoint_dom << endl; diff --git a/libsrc/meshing/improve2.cpp b/libsrc/meshing/improve2.cpp index 4824d4eb..8eeb7a22 100644 --- a/libsrc/meshing/improve2.cpp +++ b/libsrc/meshing/improve2.cpp @@ -77,7 +77,7 @@ void MeshOptimize2d :: EdgeSwapping (Mesh & mesh, int usemetric) bool should; PointIndex pi; - ARRAY seia; + Array seia; mesh.GetSurfaceElementsOfFace (faceindex, seia); for (i = 0; i < seia.Size(); i++) @@ -89,13 +89,13 @@ void MeshOptimize2d :: EdgeSwapping (Mesh & mesh, int usemetric) int surfnr = mesh.GetFaceDescriptor (faceindex).SurfNr(); - ARRAY neighbors(mesh.GetNSE()); + Array neighbors(mesh.GetNSE()); INDEX_2_HASHTABLE other(seia.Size() + 2); - ARRAY swapped(mesh.GetNSE()); - ARRAY pdef(mesh.GetNP()); - ARRAY pangle(mesh.GetNP()); + Array swapped(mesh.GetNSE()); + Array pdef(mesh.GetNP()); + Array pangle(mesh.GetNP()); SurfaceElementIndex t1, t2; int o1, o2; @@ -158,7 +158,7 @@ void MeshOptimize2d :: EdgeSwapping (Mesh & mesh, int usemetric) } /* - ARRAY normals(mesh.GetNP()); + Array normals(mesh.GetNP()); for (i = 1; i <= mesh.GetNSE(); i++) { Element2d & hel = mesh.SurfaceElement(i); @@ -448,7 +448,7 @@ void MeshOptimize2d :: CombineImprove (Mesh & mesh) SurfaceElementIndex sei; - ARRAY seia; + Array seia; mesh.GetSurfaceElementsOfFace (faceindex, seia); @@ -472,7 +472,7 @@ void MeshOptimize2d :: CombineImprove (Mesh & mesh) //int nse = mesh.GetNSE(); TABLE elementsonnode(np); - ARRAY hasonepi, hasbothpi; + Array hasonepi, hasbothpi; for (i = 0; i < seia.Size(); i++) { @@ -484,7 +484,7 @@ void MeshOptimize2d :: CombineImprove (Mesh & mesh) } - ARRAY fixed(np); + Array fixed(np); fixed = false; SegmentIndex si; @@ -499,7 +499,7 @@ void MeshOptimize2d :: CombineImprove (Mesh & mesh) fixed[mesh.LockedPoints()[i]] = true; - ARRAY,PointIndex::BASE> normals(np); + Array,PointIndex::BASE> normals(np); for (pi = PointIndex::BASE; pi < np + PointIndex::BASE; pi++) @@ -787,7 +787,7 @@ void MeshOptimize2d :: CheckMeshApproximation (Mesh & mesh) int surfnr; Vec3d n, ng; - ARRAY ngs(3); + Array ngs(3); (*mycout) << "Check Surface Approxiamtion" << endl; (*testout) << "Check Surface Approxiamtion" << endl; diff --git a/libsrc/meshing/improve2.hpp b/libsrc/meshing/improve2.hpp index 4f25863d..aa049c5f 100644 --- a/libsrc/meshing/improve2.hpp +++ b/libsrc/meshing/improve2.hpp @@ -18,8 +18,8 @@ public: void ImproveMesh (Mesh & mesh2d); void ImproveMeshJacobian (Mesh & mesh2d); void ImproveVolumeMesh (Mesh & mesh); - void ProjectBoundaryPoints(ARRAY & surfaceindex, - const ARRAY* > & from, ARRAY* > & dest); + void ProjectBoundaryPoints(Array & surfaceindex, + const Array* > & from, Array* > & dest); void EdgeSwapping (Mesh & mesh, int usemetric); void CombineImprove (Mesh & mesh); diff --git a/libsrc/meshing/improve2gen.cpp b/libsrc/meshing/improve2gen.cpp index 75ffc801..e5b65308 100644 --- a/libsrc/meshing/improve2gen.cpp +++ b/libsrc/meshing/improve2gen.cpp @@ -9,11 +9,11 @@ namespace netgen class ImprovementRule { public: - ARRAY oldels; - ARRAY newels; - ARRAY deledges; - ARRAY incelsonnode; - ARRAY reused; + Array oldels; + Array newels; + Array deledges; + Array incelsonnode; + Array reused; int bonus; int onp; }; @@ -50,11 +50,11 @@ namespace netgen bool ok; int olddef, newdef; - ARRAY rules; - ARRAY elmap; - ARRAY elrot; - ARRAY pmap; - ARRAY pgi; + Array rules; + Array elmap; + Array elrot; + Array pmap; + Array pgi; int surfnr = mesh.GetFaceDescriptor (faceindex).SurfNr(); @@ -195,8 +195,8 @@ namespace netgen - ARRAY mapped(rules.Size()); - ARRAY used(rules.Size()); + Array mapped(rules.Size()); + Array used(rules.Size()); used = 0; mapped = 0; @@ -236,7 +236,7 @@ namespace netgen TABLE elonnode(np); - ARRAY nelonnode(np); + Array nelonnode(np); TABLE nbels(ne); nelonnode = -4; diff --git a/libsrc/meshing/improve3.cpp b/libsrc/meshing/improve3.cpp index c2db1e8b..c92bd898 100644 --- a/libsrc/meshing/improve3.cpp +++ b/libsrc/meshing/improve3.cpp @@ -25,10 +25,10 @@ void MeshOptimize3d :: CombineImprove (Mesh & mesh, int ne = mesh.GetNE(); TABLE elementsonnode(np); - ARRAY hasonepi, hasbothpi; + Array hasonepi, hasbothpi; - ARRAY oneperr; - ARRAY elerrs (ne); + Array oneperr; + Array elerrs (ne); PrintMessage (3, "CombineImprove"); (*testout) << "Start CombineImprove" << "\n"; @@ -281,12 +281,12 @@ void MeshOptimize3d :: SplitImprove (Mesh & mesh, int ne = mesh.GetNE(); TABLE elementsonnode(np); - ARRAY hasbothpoints; + Array hasbothpoints; BitArray origpoint(np), boundp(np); origpoint.Set(); - ARRAY elerrs(ne); + Array elerrs(ne); BitArray illegaltet(ne); illegaltet.Clear(); @@ -297,7 +297,7 @@ void MeshOptimize3d :: SplitImprove (Mesh & mesh, PrintMessage (3, "SplitImprove"); (*testout) << "start SplitImprove" << "\n"; - ARRAY locfaces; + Array locfaces; INDEX_2_HASHTABLE edgetested (np); @@ -605,7 +605,7 @@ void MeshOptimize3d :: SwapImprove (Mesh & mesh, OPTIMIZEGOAL goal, // contains at least all elements at node TABLE elementsonnode(np); - ARRAY hasbothpoints; + Array hasbothpoints; PrintMessage (3, "SwapImprove "); (*testout) << "\n" << "Start SwapImprove" << endl; @@ -1492,10 +1492,10 @@ void MeshOptimize3d :: SwapImprove (Mesh & mesh, OPTIMIZEGOAL goal, void MeshOptimize3d :: SwapImproveSurface (Mesh & mesh, OPTIMIZEGOAL goal, const BitArray * working_elements, - const ARRAY< ARRAY* > * idmaps) + const Array< Array* > * idmaps) { - ARRAY< ARRAY* > locidmaps; - const ARRAY< ARRAY* > * used_idmaps; + Array< Array* > locidmaps; + const Array< Array* > * used_idmaps; if(idmaps) used_idmaps = idmaps; @@ -1507,7 +1507,7 @@ void MeshOptimize3d :: SwapImproveSurface (Mesh & mesh, OPTIMIZEGOAL goal, { if(mesh.GetIdentifications().GetType(i) == Identifications::PERIODIC) { - locidmaps.Append(new ARRAY); + locidmaps.Append(new Array); mesh.GetIdentifications().GetMap(i,*locidmaps.Last(),true); } } @@ -1536,8 +1536,8 @@ void MeshOptimize3d :: SwapImproveSurface (Mesh & mesh, OPTIMIZEGOAL goal, TABLE surfaceelementsonnode(np); TABLE surfaceindicesonnode(np); - ARRAY hasbothpoints; - ARRAY hasbothpointsother; + Array hasbothpoints; + Array hasbothpointsother; PrintMessage (3, "SwapImproveSurface "); (*testout) << "\n" << "Start SwapImproveSurface" << endl; @@ -1862,7 +1862,7 @@ void MeshOptimize3d :: SwapImproveSurface (Mesh & mesh, OPTIMIZEGOAL goal, int nsuround = hasbothpoints.Size(); int nsuroundother = hasbothpointsother.Size(); - ARRAY < int > outerpoints(nsuround+1); + Array < int > outerpoints(nsuround+1); outerpoints[0] = sp1; for(int i=0; i outerpointsother; + Array < int > outerpointsother; if(nsuroundother > 0) { @@ -2033,8 +2033,8 @@ void MeshOptimize3d :: SwapImproveSurface (Mesh & mesh, OPTIMIZEGOAL goal, startpointsother = outerpointsother.Size(); - ARRAY < ARRAY < Element* > * > newelts(startpoints); - ARRAY < ARRAY < Element* > * > neweltsother(startpointsother); + Array < Array < Element* > * > newelts(startpoints); + Array < Array < Element* > * > neweltsother(startpointsother); double minbad = 1e50, minbadother = 1e50, currbad; int minpos = -1, minposother = -1; @@ -2043,7 +2043,7 @@ void MeshOptimize3d :: SwapImproveSurface (Mesh & mesh, OPTIMIZEGOAL goal, for(int i=0; i(2*(nsuround-1)); + newelts[i] = new Array (2*(nsuround-1)); for(int jj=0; jj face_index; + Array face_index; for(int k = 0; k(2*(nsuroundother)); + neweltsother[i] = new Array (2*(nsuroundother)); for(int jj=0; jj* > * idmaps = NULL); + const Array< Array* > * idmaps = NULL); void SwapImprove2 (Mesh & mesh, OPTIMIZEGOAL goal = OPT_QUALITY); }; @@ -35,7 +35,7 @@ extern int WrongOrientation (const Mesh::T_POINTS & points, const Element & el); class MinFunctionSum : public MinFunction { protected: - ARRAY functions; + Array functions; public: @@ -56,11 +56,11 @@ public: class PointFunction1 : public MinFunction { Mesh::T_POINTS & points; - const ARRAY & faces; + const Array & faces; double h; public: PointFunction1 (Mesh::T_POINTS & apoints, - const ARRAY & afaces, + const Array & afaces, double ah); virtual double Func (const Vector & x) const; diff --git a/libsrc/meshing/localh.cpp b/libsrc/meshing/localh.cpp index 1a9f3d34..ba313f22 100644 --- a/libsrc/meshing/localh.cpp +++ b/libsrc/meshing/localh.cpp @@ -358,8 +358,8 @@ void LocalH :: FindInnerBoxes ( // int (*sameside)(const Point3d & p1, const Poi (*testout) << "inner = " << root->flags.pinner << " =?= " << testinner(Point3d(root->xmid[0], root->xmid[1], root->xmid[2])) << endl; - ARRAY faceinds(nf); - ARRAY faceboxes(nf); + Array faceinds(nf); + Array faceboxes(nf); for (i = 1; i <= nf; i++) { @@ -375,8 +375,8 @@ void LocalH :: FindInnerBoxes ( // int (*sameside)(const Point3d & p1, const Poi void LocalH :: FindInnerBoxesRec2 (GradingBox * box, class AdFront3 * adfront, - ARRAY & faceboxes, - ARRAY & faceinds, int nfinbox) + Array & faceboxes, + Array & faceinds, int nfinbox) { if (!box) return; @@ -395,9 +395,9 @@ FindInnerBoxesRec2 (GradingBox * box, Box3d boxcfc(c,fc); - static ARRAY faceused; - static ARRAY faceused2; - static ARRAY facenotused; + static Array faceused; + static Array faceused2; + static Array facenotused; faceused.SetSize(0); facenotused.SetSize(0); @@ -585,7 +585,7 @@ void LocalH :: WidenRefinement () } } -void LocalH :: GetInnerPoints (ARRAY & points) +void LocalH :: GetInnerPoints (Array & points) { int i, nb = boxes.Size(); @@ -611,7 +611,7 @@ void LocalH :: GetInnerPoints (ARRAY & points) -void LocalH :: GetOuterPoints (ARRAY & points) +void LocalH :: GetOuterPoints (Array & points) { int i, nb = boxes.Size(); diff --git a/libsrc/meshing/localh.hpp b/libsrc/meshing/localh.hpp index 7531bc7f..3c1aa0d9 100644 --- a/libsrc/meshing/localh.hpp +++ b/libsrc/meshing/localh.hpp @@ -63,7 +63,7 @@ class LocalH /// double grading; /// - ARRAY boxes; + Array boxes; /// Box3d boundingbox; public: @@ -99,10 +99,10 @@ public: void WidenRefinement (); /// get points in inner elements - void GetInnerPoints (ARRAY & points); + void GetInnerPoints (Array & points); /// get points in outer closure - void GetOuterPoints (ARRAY & points); + void GetOuterPoints (Array & points); /// void Convexify (); @@ -127,8 +127,8 @@ private: /// void FindInnerBoxesRec2 (GradingBox * box, class AdFront3 * adfront, - ARRAY & faceboxes, - ARRAY & finds, int nfinbox); + Array & faceboxes, + Array & finds, int nfinbox); /// diff --git a/libsrc/meshing/meshclass.cpp b/libsrc/meshing/meshclass.cpp index 735f3e5b..5aedf38c 100644 --- a/libsrc/meshing/meshclass.cpp +++ b/libsrc/meshing/meshclass.cpp @@ -585,7 +585,7 @@ namespace netgen if (ident -> GetMaxNr() > 0) { outfile << "identifications\n"; - ARRAY identpairs; + Array identpairs; int cnt = 0; for (i = 1; i <= ident -> GetMaxNr(); i++) { @@ -1012,7 +1012,7 @@ namespace netgen if ( strcmp (str, "bcnames" ) == 0 ) { infile >> n; - ARRAY bcnrs(n); + Array bcnrs(n); SetNBCNames(n); for ( i = 1; i <= n; i++ ) @@ -1667,7 +1667,7 @@ namespace netgen int ne = GetNE(); int nse = GetNSE(); - ARRAY numonpoint(np); + Array numonpoint(np); numonpoint = 0; @@ -1717,7 +1717,7 @@ namespace netgen - ARRAY hasface(GetNFD()); + Array hasface(GetNFD()); int i; for (i = 1; i <= GetNFD(); i++) @@ -2262,7 +2262,7 @@ namespace netgen int i, j, k; PointIndex pi; const int large = 9999; - ARRAY dist(GetNP()); + Array dist(GetNP()); dist = large; @@ -2395,7 +2395,7 @@ namespace netgen return 1e10; } - void Mesh :: SetMaxHDomain (const ARRAY & mhd) + void Mesh :: SetMaxHDomain (const Array & mhd) { maxhdomain.SetSize(mhd.Size()); for (int i = 1; i <= mhd.Size(); i++) @@ -2728,7 +2728,7 @@ namespace netgen int nseg = GetNSeg(); int nse = GetNSE(); - ARRAY normals(np); + Array normals(np); BitArray linepoint(np); linepoint.Clear(); @@ -2962,8 +2962,8 @@ namespace netgen void Mesh :: Compress () { int i, j; - ARRAY op2np(GetNP()); - ARRAY hpoints; + Array op2np(GetNP()); + Array hpoints; BitArrayChar pused(GetNP()); /* @@ -3192,7 +3192,7 @@ namespace netgen Point3d pmin, pmax; GetBox (pmin, pmax); Box3dTree setree(pmin, pmax); - ARRAY inters; + Array inters; bool overlap = 0; bool incons_layers = 0; @@ -4044,7 +4044,7 @@ namespace netgen static Vec3d rhs, sol; const double eps = 1e-6; - static ARRAY loctrigs; + static Array loctrigs; //SZ @@ -4324,7 +4324,7 @@ namespace netgen static Vec3d rhs, sol; const double eps = 1.e-4; - static ARRAY loctets; + static Array loctets; VolumeElement(element).GetTets (loctets); @@ -4355,8 +4355,8 @@ namespace netgen if (sol.X() >= -eps && sol.Y() >= -eps && sol.Z() >= -eps && sol.X() + sol.Y() + sol.Z() <= 1+eps) { - ARRAY loctetsloc; - ARRAY > pointsloc; + Array loctetsloc; + Array > pointsloc; VolumeElement(element).GetTetsLocal (loctetsloc); VolumeElement(element).GetNodesLocalNew (pointsloc); @@ -4388,7 +4388,7 @@ namespace netgen { if(index != -1) { - ARRAY dummy(1); + Array dummy(1); dummy[0] = index; return GetElementOfPoint(p,lami,&dummy,build_searchtree,allowindex); } @@ -4401,7 +4401,7 @@ namespace netgen int Mesh :: GetElementOfPoint (const Point3d & p, double lami[3], - const ARRAY * const indices, + const Array * const indices, bool build_searchtree, const bool allowindex) const { @@ -4414,7 +4414,7 @@ namespace netgen if(ps_startelement != 0 && ps_startelement <= GetNSE() && PointContainedIn2DElement(p,lami,ps_startelement)) return ps_startelement; - ARRAY locels; + Array locels; if (0) { elementsearchtree->GetIntersecting (p, p, locels); @@ -4454,7 +4454,7 @@ namespace netgen if(ps_startelement != 0 && PointContainedIn3DElement(p,lami,ps_startelement)) return ps_startelement; - ARRAY locels; + Array locels; if (elementsearchtree || build_searchtree) { // update if necessary: @@ -4530,7 +4530,7 @@ namespace netgen { if(index != -1) { - ARRAY dummy(1); + Array dummy(1); dummy[0] = index; return GetSurfaceElementOfPoint(p,lami,&dummy,build_searchtree,allowindex); } @@ -4543,7 +4543,7 @@ namespace netgen int Mesh :: GetSurfaceElementOfPoint (const Point3d & p, double lami[3], - const ARRAY * const indices, + const Array * const indices, bool build_searchtree, const bool allowindex) const { @@ -4559,7 +4559,7 @@ namespace netgen //(*testout) << "p " << p << endl; //(*testout) << "velement " << velement << endl; - ARRAY faces; + Array faces; topology->GetElementFaces(velement,faces); //(*testout) << "faces " << faces << endl; @@ -4598,7 +4598,7 @@ namespace netgen void Mesh::GetIntersectingVolEls(const Point3d& p1, const Point3d& p2, - ARRAY & locels) const + Array & locels) const { elementsearchtree->GetIntersecting (p1, p2, locels); } @@ -4723,7 +4723,7 @@ namespace netgen int np = GetNP(); BitArray usedp(np); - ARRAY els_of_face; + Array els_of_face; fdi = 1; while (fdi <= GetNFD()) @@ -4884,7 +4884,7 @@ namespace netgen } - void Mesh :: GetSurfaceElementsOfFace (int facenr, ARRAY & sei) const + void Mesh :: GetSurfaceElementsOfFace (int facenr, Array & sei) const { static int timer = NgProfiler::CreateTimer ("GetSurfaceElementsOfFace"); NgProfiler::RegionTimer reg (timer); @@ -5120,7 +5120,7 @@ namespace netgen // } -// void Mesh :: GetIdentificationMap (int identnr, ARRAY & identmap) const +// void Mesh :: GetIdentificationMap (int identnr, Array & identmap) const // { // int i, j; @@ -5143,7 +5143,7 @@ namespace netgen // } -// void Mesh :: GetIdentificationPairs (int identnr, ARRAY & identpairs) const +// void Mesh :: GetIdentificationPairs (int identnr, Array & identpairs) const // { // int i, j; @@ -5427,16 +5427,16 @@ namespace netgen return "default"; } - void Mesh :: SetUserData(const char * id, ARRAY & data) + void Mesh :: SetUserData(const char * id, Array & data) { if(userdata_int.Used(id)) delete userdata_int.Get(id); - ARRAY * newdata = new ARRAY(data); + Array * newdata = new Array(data); userdata_int.Set(id,newdata); } - bool Mesh :: GetUserData(const char * id, ARRAY & data, int shift) const + bool Mesh :: GetUserData(const char * id, Array & data, int shift) const { if(userdata_int.Used(id)) { @@ -5452,16 +5452,16 @@ namespace netgen return false; } } - void Mesh :: SetUserData(const char * id, ARRAY & data) + void Mesh :: SetUserData(const char * id, Array & data) { if(userdata_double.Used(id)) delete userdata_double.Get(id); - ARRAY * newdata = new ARRAY(data); + Array * newdata = new Array(data); userdata_double.Set(id,newdata); } - bool Mesh :: GetUserData(const char * id, ARRAY & data, int shift) const + bool Mesh :: GetUserData(const char * id, Array & data, int shift) const { if(userdata_double.Used(id)) { diff --git a/libsrc/meshing/meshclass.hpp b/libsrc/meshing/meshclass.hpp index 7f377ee5..00474389 100644 --- a/libsrc/meshing/meshclass.hpp +++ b/libsrc/meshing/meshclass.hpp @@ -27,9 +27,9 @@ public: typedef MoveableArray T_VOLELEMENTS; typedef MoveableArray T_SURFELEMENTS; - // typedef ARRAY T_POINTS; - // typedef ARRAY T_VOLELEMENTS; - // typedef ARRAY T_SURFELEMENTS; + // typedef Array T_POINTS; + // typedef Array T_VOLELEMENTS; + // typedef Array T_SURFELEMENTS; private: @@ -37,16 +37,16 @@ private: T_POINTS points; /// type of element, set in calcsurfacesofnode - // ARRAY eltyps; + // Array eltyps; /// line-segments at edges - ARRAY segments; + Array segments; /// surface elements, 2d-inner elements T_SURFELEMENTS surfelements; /// volume elements T_VOLELEMENTS volelements; /// points will be fixed forever - ARRAY lockedpoints; + Array lockedpoints; /// surface indices at boundary nodes @@ -59,9 +59,9 @@ private: INDEX_3_CLOSED_HASHTABLE * surfelementht; /// faces of rest-solid - ARRAY openelements; + Array openelements; /// open segmenets for surface meshing - ARRAY opensegments; + Array opensegments; @@ -74,18 +74,18 @@ private: /// double hmin; /// - ARRAY maxhdomain; + Array maxhdomain; /** the face-index of the surface element maps into this table. */ - ARRAY facedecoding; + Array facedecoding; /// sub-domain materials - ARRAY materials; + Array materials; - ARRAY bcnames; + Array bcnames; /// Periodic surface, close surface, etc. identifications Identifications * ident; @@ -120,13 +120,13 @@ private: /// mesh access semaphors. NgMutex majormutex; - SYMBOLTABLE< ARRAY* > userdata_int; - SYMBOLTABLE< ARRAY* > userdata_double; + SYMBOLTABLE< Array* > userdata_int; + SYMBOLTABLE< Array* > userdata_double; - mutable ARRAY< Point3d > pointcurves; - mutable ARRAY pointcurves_startpoint; - mutable ARRAY pointcurves_red,pointcurves_green,pointcurves_blue; + mutable Array< Point3d > pointcurves; + mutable Array pointcurves_startpoint; + mutable Array pointcurves_red,pointcurves_green,pointcurves_blue; /// start element for point search (GetElementOfPoint) @@ -158,18 +158,18 @@ public: public: // store coarse mesh before hp-refinement - ARRAY * hpelements; + Array * hpelements; Mesh * coarsemesh; /// number of refinement levels int mglevels; /// refinement hierarchy - ARRAY mlbetweennodes; + Array mlbetweennodes; /// parent element of volume element - ARRAY mlparentelement; + Array mlparentelement; /// parent element of surface element - ARRAY mlparentsurfaceelement; + Array mlparentsurfaceelement; @@ -283,7 +283,7 @@ public: { return surfelements[ei]; } - void GetSurfaceElementsOfFace (int facenr, ARRAY & sei) const; + void GetSurfaceElementsOfFace (int facenr, Array & sei) const; ElementIndex AddVolumeElement (const Element & el); @@ -316,7 +316,7 @@ public: /// void ClearLockedPoints (); - const ARRAY & LockedPoints() const + const Array & LockedPoints() const { return lockedpoints; } /// Returns number of domains @@ -403,7 +403,7 @@ public: /// double MaxHDomain (int dom) const; /// - void SetMaxHDomain (const ARRAY & mhd); + void SetMaxHDomain (const Array & mhd); /// double GetH (const Point3d & p) const; /// @@ -491,9 +491,9 @@ public: void ImproveMeshJacobian (OPTIMIZEGOAL goal = OPT_QUALITY, const BitArray * usepoint = NULL); /// void ImproveMeshJacobianOnSurface (const BitArray & usepoint, - const ARRAY< Vec<3>* > & nv, + const Array< Vec<3>* > & nv, OPTIMIZEGOAL goal = OPT_QUALITY, - const ARRAY< ARRAY* > * idmaps = NULL); + const Array< Array* > * idmaps = NULL); /** free nodes in environment of openelements for optimiztion @@ -546,7 +546,7 @@ public: const bool allowindex = true) const; int GetElementOfPoint (const Point3d & p, double * lami, - const ARRAY * const indices, + const Array * const indices, bool build_searchtree = 0, const bool allowindex = true) const; int GetSurfaceElementOfPoint (const Point3d & p, @@ -556,13 +556,13 @@ public: const bool allowindex = true) const; int GetSurfaceElementOfPoint (const Point3d & p, double * lami, - const ARRAY * const indices, + const Array * const indices, bool build_searchtree = 0, const bool allowindex = true) const; /// give list of vol elements which are int the box(p1,p2) void GetIntersectingVolEls(const Point3d& p1, const Point3d& p2, - ARRAY & locels) const; + Array & locels) const; /// int AddFaceDescriptor(const FaceDescriptor& fd) @@ -614,9 +614,9 @@ public: // } // /// -// void GetIdentificationMap (int identnr, ARRAY & identmap) const; +// void GetIdentificationMap (int identnr, Array & identmap) const; // /// -// void GetIdentificationPairs (int identnr, ARRAY & identpairs) const; +// void GetIdentificationPairs (int identnr, Array & identpairs) const; // /// // int GetMaxIdentificationNr () const // { @@ -687,13 +687,13 @@ public: /// - void SetUserData(const char * id, ARRAY & data); + void SetUserData(const char * id, Array & data); /// - bool GetUserData(const char * id, ARRAY & data, int shift = 0) const; + bool GetUserData(const char * id, Array & data, int shift = 0) const; /// - void SetUserData(const char * id, ARRAY & data); + void SetUserData(const char * id, Array & data); /// - bool GetUserData(const char * id, ARRAY & data, int shift = 0) const; + bool GetUserData(const char * id, Array & data, int shift = 0) const; /// friend void OptimizeRestart (Mesh & mesh3d); @@ -727,13 +727,13 @@ public: // void FindExchangeFaces (); /// use metis to decompose master mesh - void ParallelMetis (); // ARRAY & neloc ); - void PartHybridMesh (); // ARRAY & neloc ); - void PartDualHybridMesh (); // ARRAY & neloc ); - void PartDualHybridMesh2D (); // ( ARRAY & neloc ); + void ParallelMetis (); // Array & neloc ); + void PartHybridMesh (); // Array & neloc ); + void PartDualHybridMesh (); // Array & neloc ); + void PartDualHybridMesh2D (); // ( Array & neloc ); /// send mesh to parallel machine, keep global mesh at master - void SendMesh ( ) const; // Mesh * mastermesh, ARRAY & neloc) const; + void SendMesh ( ) const; // Mesh * mastermesh, Array & neloc) const; void UpdateOverlap (); diff --git a/libsrc/meshing/meshfunc.cpp b/libsrc/meshing/meshfunc.cpp index 06fb451d..406aa53e 100644 --- a/libsrc/meshing/meshfunc.cpp +++ b/libsrc/meshing/meshfunc.cpp @@ -20,7 +20,7 @@ namespace netgen int cntsteps; - ARRAY connectednodes; + Array connectednodes; mesh3d.Compress(); @@ -219,7 +219,7 @@ namespace netgen // Meshing3 meshing(rulefile); Meshing3 meshing(tetrules); - ARRAY glob2loc(mesh3d.GetNP()); + Array glob2loc(mesh3d.GetNP()); glob2loc = -1; for (pi = PointIndex::BASE; diff --git a/libsrc/meshing/meshing2.cpp b/libsrc/meshing/meshing2.cpp index 7793ecbb..60bebf35 100644 --- a/libsrc/meshing/meshing2.cpp +++ b/libsrc/meshing/meshing2.cpp @@ -8,11 +8,11 @@ namespace netgen // global variable for visualization - static ARRAY locpoints; - static ARRAY legalpoints; - static ARRAY plainpoints; - static ARRAY plainzones; - static ARRAY loclines; + static Array locpoints; + static Array legalpoints; + static Array plainpoints; + static Array plainzones; + static Array loclines; static int geomtrig; //static const char * rname; static int cntelem, trials, nfaces; @@ -176,9 +176,9 @@ namespace netgen } void Meshing2 :: - GetChartBoundary (ARRAY & points, - ARRAY & points3d, - ARRAY & lines, double h) const + GetChartBoundary (Array & points, + Array & points3d, + Array & lines, double h) const { points.SetSize (0); points3d.SetSize (0); @@ -196,13 +196,13 @@ namespace netgen MESHING2_RESULT Meshing2 :: GenerateMesh (Mesh & mesh, double gh, int facenr) { - ARRAY pindex, lindex; - ARRAY delpoints, dellines; + Array pindex, lindex; + Array delpoints, dellines; - ARRAY upgeominfo; // unique info - ARRAY mpgeominfo; // multiple info + Array upgeominfo; // unique info + Array mpgeominfo; // multiple info - ARRAY locelements; + Array locelements; int z1, z2, oldnp(-1); SurfaceElementIndex sei; @@ -224,8 +224,8 @@ namespace netgen Box3dTree surfeltree (boundingbox.PMin(), boundingbox.PMax()); - ARRAY intersecttrias; - ARRAY critpoints; + Array intersecttrias; + Array critpoints; // test for doubled edges //INDEX_2_HASHTABLE doubleedge(300000); @@ -235,14 +235,14 @@ namespace netgen StartMesh(); - ARRAY chartboundpoints; - ARRAY chartboundpoints3d; - ARRAY chartboundlines; + Array chartboundpoints; + Array chartboundpoints3d; + Array chartboundlines; // illegal points: points with more then 50 elements per node int maxlegalpoint(-1), maxlegalline(-1); - ARRAY trigsonnode; - ARRAY illegalpoint; + Array trigsonnode; + Array illegalpoint; trigsonnode.SetSize (mesh.GetNP()); illegalpoint.SetSize (mesh.GetNP()); diff --git a/libsrc/meshing/meshing2.hpp b/libsrc/meshing/meshing2.hpp index 8bb5d96f..ce80c8a7 100644 --- a/libsrc/meshing/meshing2.hpp +++ b/libsrc/meshing/meshing2.hpp @@ -31,9 +31,9 @@ class Meshing2 /// the current advancing front AdFront2 * adfront; /// rules for mesh generation - ARRAY rules; + Array rules; /// statistics - ARRAY ruleused, canuse, foundmap; + Array ruleused, canuse, foundmap; /// Box<3> boundingbox; /// @@ -119,21 +119,21 @@ protected: /* get (projected) boundary of current chart */ - virtual void GetChartBoundary (ARRAY & points, - ARRAY & points3d, - ARRAY & lines, double p) const; + virtual void GetChartBoundary (Array & points, + Array & points3d, + Array & lines, double p) const; virtual double Area () const; /** Applies 2D rules. Tests all 2D rules */ - int ApplyRules (ARRAY & lpoints, - ARRAY & legalpoints, + int ApplyRules (Array & lpoints, + Array & legalpoints, int maxlegalpoint, - ARRAY & llines, + Array & llines, int maxlegelline, - ARRAY & elements, ARRAY & dellines, + Array & elements, Array & dellines, int tolerance); diff --git a/libsrc/meshing/meshing3.cpp b/libsrc/meshing/meshing3.cpp index 075fd6b3..ff683d63 100644 --- a/libsrc/meshing/meshing3.cpp +++ b/libsrc/meshing/meshing3.cpp @@ -74,8 +74,8 @@ Meshing3 :: ~Meshing3 () -static double CalcLocH (const ARRAY & locpoints, - const ARRAY & locfaces, +static double CalcLocH (const Array & locpoints, + const Array & locfaces, double h) { return h; @@ -175,16 +175,16 @@ GenerateMesh (Mesh & mesh, const MeshingParameters & mp) NgProfiler::RegionTimer reg (meshing3_timer); - ARRAY locpoints; // local points - ARRAY locfaces; // local faces - ARRAY pindex; // mapping from local to front point numbering - ARRAY allowpoint; // point is allowd ? - ARRAY findex; // mapping from local to front face numbering + Array locpoints; // local points + Array locfaces; // local faces + Array pindex; // mapping from local to front point numbering + Array allowpoint; // point is allowd ? + Array findex; // mapping from local to front face numbering //INDEX_2_HASHTABLE connectedpairs(100); // connecgted pairs for prism meshing - ARRAY plainpoints; // points in reference coordinates - ARRAY delpoints, delfaces; // points and lines to be deleted - ARRAY locelements; // new generated elements + Array plainpoints; // points in reference coordinates + Array delpoints, delfaces; // points and lines to be deleted + Array locelements; // new generated elements int i, j, oldnp, oldnf; int found; @@ -206,10 +206,10 @@ GenerateMesh (Mesh & mesh, const MeshingParameters & mp) // for star-shaped domain meshing - ARRAY grouppoints; - ARRAY groupfaces; - ARRAY grouppindex; - ARRAY groupfindex; + Array grouppoints; + Array groupfaces; + Array grouppindex; + Array groupfindex; float minerr; @@ -218,10 +218,10 @@ GenerateMesh (Mesh & mesh, const MeshingParameters & mp) // int giveup = 0; - ARRAY tempnewpoints; - ARRAY tempnewfaces; - ARRAY tempdelfaces; - ARRAY templocelements; + Array tempnewpoints; + Array tempnewfaces; + Array tempdelfaces; + Array templocelements; stat.h = mp.maxh; @@ -776,8 +776,8 @@ void Meshing3 :: BlockFill (Mesh & mesh, double gh) PrintMessage (5, "n1 = ", n1, " n2 = ", n2, " n3 = ", n3); - ARRAY inner(n); - ARRAY pointnr(n), frontpointnr(n); + Array inner(n); + Array pointnr(n), frontpointnr(n); // initialize inner to 1 @@ -1111,7 +1111,7 @@ void Meshing3 :: BlockFillLocalH (Mesh & mesh, (*mycout) << "boxes: " << mesh.LocalHFunction().GetNBoxes() << endl << "filldist = " << filldist << endl; */ - ARRAY npoints; + Array npoints; adfront -> CreateTrees(); diff --git a/libsrc/meshing/meshing3.hpp b/libsrc/meshing/meshing3.hpp index 3a4732d1..84e9ca6b 100644 --- a/libsrc/meshing/meshing3.hpp +++ b/libsrc/meshing/meshing3.hpp @@ -21,11 +21,11 @@ class Meshing3 /// current state of front AdFront3 * adfront; /// 3d generation rules - ARRAY rules; + Array rules; /// counts how often a rule is used - ARRAY ruleused, canuse, foundmap; + Array ruleused, canuse, foundmap; /// describes, why a rule is not applied - ARRAY problems; + Array problems; /// tolerance criterion double tolfak; public: @@ -42,11 +42,11 @@ public: MESHING3_RESULT GenerateMesh (Mesh & mesh, const MeshingParameters & mp); /// - int ApplyRules (ARRAY & lpoints, ARRAY & allowpoint, - ARRAY & lfaces, INDEX lfacesplit, + int ApplyRules (Array & lpoints, Array & allowpoint, + Array & lfaces, INDEX lfacesplit, INDEX_2_HASHTABLE & connectedpairs, - ARRAY & elements, - ARRAY & delfaces, int tolerance, + Array & elements, + Array & delfaces, int tolerance, double sloppy, int rotind1, float & retminerr); @@ -106,9 +106,9 @@ public: /* -template -extern int FindInnerPoint (POINTARRAY & grouppoints, - FACEARRAY & groupfaces, +template +extern int FindInnerPoint (POINTArray & grouppoints, + FACEArray & groupfaces, Point3d & p); */ diff --git a/libsrc/meshing/meshtool.cpp b/libsrc/meshing/meshtool.cpp index 9b0ef20f..e85104ac 100644 --- a/libsrc/meshing/meshtool.cpp +++ b/libsrc/meshing/meshtool.cpp @@ -129,7 +129,7 @@ namespace netgen void MeshQuality2d (const Mesh & mesh) { int ncl = 20, cl; - ARRAY incl(ncl); + Array incl(ncl); INDEX i; SurfaceElementIndex sei; double qual; @@ -529,7 +529,7 @@ namespace netgen /* - double CalcVolume (const ARRAY & points, + double CalcVolume (const Array & points, const Element & el) { Vec3d v1 = points.Get(el.PNum(2)) - @@ -543,8 +543,8 @@ namespace netgen } */ - double CalcVolume (const ARRAY & points, - const ARRAY & elements) + double CalcVolume (const Array & points, + const Array & elements) { double vol; Vec3d v1, v2, v3; @@ -563,11 +563,11 @@ namespace netgen - void MeshQuality3d (const Mesh & mesh, ARRAY * inclass) + void MeshQuality3d (const Mesh & mesh, Array * inclass) { int ncl = 20; signed int cl; - ARRAY incl(ncl); + Array incl(ncl); INDEX i; double qual; double sum = 0; @@ -686,7 +686,7 @@ namespace netgen #ifdef OLD void Save2DMesh ( const Mesh & mesh2d, - const ARRAY * splines, + const Array * splines, ostream & outfile) { diff --git a/libsrc/meshing/meshtool.hpp b/libsrc/meshing/meshtool.hpp index 9ffaad11..6b7b7526 100644 --- a/libsrc/meshing/meshtool.hpp +++ b/libsrc/meshing/meshtool.hpp @@ -7,7 +7,7 @@ extern void MeshQuality2d (const Mesh & mesh); /// extern void MeshQuality3d (const Mesh & mesh, - ARRAY * inclass = NULL); + Array * inclass = NULL); /// extern void SaveEdges (const Mesh & mesh, @@ -23,17 +23,17 @@ extern void SaveSurfaceMesh (const Mesh & mesh, /// extern void Save2DMesh ( const Mesh & mesh2d, - const ARRAY * splines, + const Array * splines, ostream & outfile); */ class Surface; /// extern void SaveVolumeMesh ( - const ARRAY & points, - const ARRAY & elements, - const ARRAY & volelements, - const ARRAY & surfaces, + const Array & points, + const Array & elements, + const Array & volelements, + const Array & surfaces, char * filename); /// @@ -63,13 +63,13 @@ extern double CalcTetBadnessGrad (const Point3d & p1, /** Calculates volume of an element. The volume of the tetrahedron el is computed */ -// extern double CalcVolume (const ARRAY & points, +// extern double CalcVolume (const Array & points, // const Element & el); /** The total volume of all elements is computed. This function calculates the volume of the mesh */ -extern double CalcVolume (const ARRAY & points, - const ARRAY & elements); +extern double CalcVolume (const Array & points, + const Array & elements); /// extern int CheckSurfaceMesh (const Mesh & mesh); diff --git a/libsrc/meshing/meshtype.cpp b/libsrc/meshing/meshtype.cpp index 4ef1bdd2..1379be8c 100644 --- a/libsrc/meshing/meshtype.cpp +++ b/libsrc/meshing/meshtype.cpp @@ -386,8 +386,8 @@ void Element2d :: NormalizeNumbering2 () -ARRAY ipdtrig; -ARRAY ipdquad; +Array ipdtrig; +Array ipdquad; int Element2d :: GetNIP () const @@ -433,7 +433,7 @@ GetIntegrationPoint (int ip, Point2d & p, double & weight) const } void Element2d :: -GetTransformation (int ip, const ARRAY & points, +GetTransformation (int ip, const Array & points, DenseMatrix & trans) const { int np = GetNP(); @@ -623,7 +623,7 @@ GetDShapeNew (const Point<2> & p, MatrixFixWidth<2> & dshape) const void Element2d :: -GetPointMatrix (const ARRAY & points, +GetPointMatrix (const Array & points, DenseMatrix & pmat) const { int np = GetNP(); @@ -648,7 +648,7 @@ GetPointMatrix (const ARRAY & points, -double Element2d :: CalcJacobianBadness (const ARRAY & points) const +double Element2d :: CalcJacobianBadness (const Array & points) const { int i, j; int nip = GetNIP(); @@ -692,7 +692,7 @@ static const int qip_table[4][4] = }; double Element2d :: -CalcJacobianBadnessDirDeriv (const ARRAY & points, +CalcJacobianBadnessDirDeriv (const Array & points, int pi, Vec2d & dir, double & dd) const { if (typ == QUAD) @@ -1210,7 +1210,7 @@ void Element :: GetFace2 (int i, Element2d & face) const -void Element :: GetTets (ARRAY & locels) const +void Element :: GetTets (Array & locels) const { GetTetsLocal (locels); int i, j; @@ -1219,7 +1219,7 @@ void Element :: GetTets (ARRAY & locels) const locels.Elem(i).PNum(j) = PNum ( locels.Elem(i).PNum(j) ); } -void Element :: GetTetsLocal (ARRAY & locels) const +void Element :: GetTetsLocal (Array & locels) const { int i, j; locels.SetSize(0); @@ -1327,7 +1327,7 @@ bool Element :: operator==(const Element & el2) const #ifdef OLD -void Element :: GetNodesLocal (ARRAY & points) const +void Element :: GetNodesLocal (Array & points) const { const static double tetpoints[4][3] = { { 0, 0, 0 }, @@ -1427,7 +1427,7 @@ void Element :: GetNodesLocal (ARRAY & points) const -void Element :: GetNodesLocalNew (ARRAY > & points) const +void Element :: GetNodesLocalNew (Array > & points) const { const static double tetpoints[4][3] = { @@ -1543,7 +1543,7 @@ void Element :: GetNodesLocalNew (ARRAY > & points) const -void Element :: GetSurfaceTriangles (ARRAY & surftrigs) const +void Element :: GetSurfaceTriangles (Array & surftrigs) const { static int tet4trigs[][3] = { { 2, 3, 4 }, @@ -1656,8 +1656,8 @@ void Element :: GetSurfaceTriangles (ARRAY & surftrigs) const -ARRAY< AutoPtr < IntegrationPointData > > ipdtet; -ARRAY< AutoPtr < IntegrationPointData > > ipdtet10; +Array< AutoPtr < IntegrationPointData > > ipdtet; +Array< AutoPtr < IntegrationPointData > > ipdtet10; @@ -2438,7 +2438,7 @@ int Identifications :: GetSymmetric (PointIndex pi1, PointIndex pi2) const } -void Identifications :: GetMap (int identnr, ARRAY & identmap, bool symmetric) const +void Identifications :: GetMap (int identnr, Array & identmap, bool symmetric) const { identmap.SetSize (mesh.GetNP()); identmap = 0; @@ -2476,7 +2476,7 @@ void Identifications :: GetMap (int identnr, ARRAY & ident void Identifications :: GetPairs (int identnr, - ARRAY & identpairs) const + Array & identpairs) const { identpairs.SetSize(0); diff --git a/libsrc/meshing/meshtype.hpp b/libsrc/meshing/meshtype.hpp index 339f764f..43e959be 100644 --- a/libsrc/meshing/meshtype.hpp +++ b/libsrc/meshing/meshtype.hpp @@ -281,7 +281,7 @@ ostream & operator<<(ostream & s, const MeshPoint & pt); typedef MoveableArray T_POINTS; -// typedef ARRAY T_POINTS; +// typedef Array T_POINTS; class Element2d; @@ -429,7 +429,7 @@ public: /// get number of 'integration points' int GetNIP () const; void GetIntegrationPoint (int ip, Point2d & p, double & weight) const; - void GetTransformation (int ip, const ARRAY & points, + void GetTransformation (int ip, const Array & points, class DenseMatrix & trans) const; void GetTransformation (int ip, class DenseMatrix & pmat, class DenseMatrix & trans) const; @@ -440,16 +440,16 @@ public: void GetDShape (const Point2d & p, class DenseMatrix & dshape) const; void GetDShapeNew (const Point<2> & p, class MatrixFixWidth<2> & dshape) const; /// matrix 2 * np - void GetPointMatrix (const ARRAY & points, + void GetPointMatrix (const Array & points, class DenseMatrix & pmat) const; void ComputeIntegrationPointData () const; - double CalcJacobianBadness (const ARRAY & points) const; + double CalcJacobianBadness (const Array & points) const; double CalcJacobianBadness (const T_POINTS & points, const Vec<3> & n) const; - double CalcJacobianBadnessDirDeriv (const ARRAY & points, + double CalcJacobianBadnessDirDeriv (const Array & points, int pi, Vec2d & dir, double & dd) const; @@ -669,15 +669,15 @@ public: void Invert (); /// split into 4 node tets - void GetTets (ARRAY & locels) const; + void GetTets (Array & locels) const; /// split into 4 node tets, local point nrs - void GetTetsLocal (ARRAY & locels) const; + void GetTetsLocal (Array & locels) const; /// returns coordinates of nodes - // void GetNodesLocal (ARRAY > & points) const; - void GetNodesLocalNew (ARRAY > & points) const; + // void GetNodesLocal (Array > & points) const; + void GetNodesLocalNew (Array > & points) const; /// split surface into 3 node trigs - void GetSurfaceTriangles (ARRAY & surftrigs) const; + void GetSurfaceTriangles (Array & surftrigs) const; /// get number of 'integration points' @@ -1147,7 +1147,7 @@ private: /// sorted by identification nr TABLE idpoints_table; - ARRAY type; + Array type; /// number of identifications (or, actually used identifications ?) int maxidentnr; @@ -1192,7 +1192,7 @@ public: } /// - void GetMap (int identnr, ARRAY & identmap, bool symmetric = false) const; + void GetMap (int identnr, Array & identmap, bool symmetric = false) const; /// ID_TYPE GetType(int identnr) const { @@ -1209,7 +1209,7 @@ public: } /// - void GetPairs (int identnr, ARRAY & identpairs) const; + void GetPairs (int identnr, Array & identpairs) const; /// int GetMaxNr () const { return maxidentnr; } diff --git a/libsrc/meshing/msghandler.cpp b/libsrc/meshing/msghandler.cpp index 88e30fb1..79b65fee 100644 --- a/libsrc/meshing/msghandler.cpp +++ b/libsrc/meshing/msghandler.cpp @@ -112,8 +112,8 @@ void PrintTime(const MyStr& s1, const MyStr& s2, const MyStr& s3, const MyStr& s } -static ARRAY msgstatus_stack(0); -static ARRAY threadpercent_stack(0); +static Array msgstatus_stack(0); +static Array threadpercent_stack(0); static MyStr msgstatus = ""; diff --git a/libsrc/meshing/netrule2.cpp b/libsrc/meshing/netrule2.cpp index 42fe341a..02e19746 100644 --- a/libsrc/meshing/netrule2.cpp +++ b/libsrc/meshing/netrule2.cpp @@ -21,7 +21,7 @@ netrule :: ~netrule() /* -void netrule :: GetFreeArea (ARRAY & afreearea) +void netrule :: GetFreeArea (Array & afreearea) { int i; diff --git a/libsrc/meshing/netrule3.cpp b/libsrc/meshing/netrule3.cpp index 2b7bdfd9..50c44ae8 100644 --- a/libsrc/meshing/netrule3.cpp +++ b/libsrc/meshing/netrule3.cpp @@ -86,7 +86,7 @@ void vnetrule :: SetFreeZoneTransformation (const Vector & allp, int tolclass) for (fs = 1; fs <= freesets.Size(); fs++) { - ARRAY & freesetfaces = *freefaces.Get(fs); + Array & freesetfaces = *freefaces.Get(fs); DenseMatrix & freesetinequ = *freefaceinequ.Get(fs); for (i = 1; i <= freesetfaces.Size(); i++) @@ -144,9 +144,9 @@ int vnetrule :: ConvexFreeZone () const { const DenseMatrix & freesetinequ = *freefaceinequ.Get(fs); - // const ARRAY & freeset = *freesets.Get(fs); - const ARRAY & freesetedges = *freeedges.Get(fs); - // const ARRAY & freesetfaces = *freefaces.Get(fs); + // const Array & freeset = *freesets.Get(fs); + const Array & freesetedges = *freeedges.Get(fs); + // const Array & freesetfaces = *freefaces.Get(fs); for (i = 1; i <= freesetedges.Size(); i++) { @@ -177,7 +177,7 @@ int vnetrule :: IsInFreeZone (const Point3d & p) const for (fs = 1; fs <= freesets.Size(); fs++) { inthis = 1; - ARRAY & freesetfaces = *freefaces.Get(fs); + Array & freesetfaces = *freefaces.Get(fs); DenseMatrix & freesetinequ = *freefaceinequ.Get(fs); for (i = 1; i <= freesetfaces.Size() && inthis; i++) @@ -197,13 +197,13 @@ int vnetrule :: IsInFreeZone (const Point3d & p) const int vnetrule :: IsTriangleInFreeZone (const Point3d & p1, const Point3d & p2, const Point3d & p3, - const ARRAY & pi, int newone) + const Array & pi, int newone) { int fs; int infreeset, cannot = 0; - static ARRAY pfi(3), pfi2(3); + static Array pfi(3), pfi2(3); // convert from local index to freeset index int i, j; @@ -220,7 +220,7 @@ int vnetrule :: IsTriangleInFreeZone (const Point3d & p1, for (fs = 1; fs <= freesets.Size(); fs++) { - const ARRAY & freeseti = *freesets.Get(fs); + const Array & freeseti = *freesets.Get(fs); for (i = 1; i <= 3; i++) { pfi2.Elem(i) = 0; @@ -241,7 +241,7 @@ int vnetrule :: IsTriangleInFreeZone (const Point3d & p1, int vnetrule :: IsTriangleInFreeSet (const Point3d & p1, const Point3d & p2, const Point3d & p3, int fs, - const ARRAY & pi, int newone) + const Array & pi, int newone) { int i, ii; Vec3d n; @@ -253,13 +253,13 @@ int vnetrule :: IsTriangleInFreeSet (const Point3d & p1, const Point3d & p2, double hpx, hpy, hpz, v1x, v1y, v1z, v2x, v2y, v2z; int act1, act2, act3, it; int cntout; - static ARRAY activefaces; + static Array activefaces; int isin; // MARK(triinfz); - ARRAY & freesetfaces = *freefaces.Get(fs); + Array & freesetfaces = *freefaces.Get(fs); DenseMatrix & freesetinequ = *freefaceinequ.Get(fs); @@ -577,7 +577,7 @@ int vnetrule :: IsTriangleInFreeSet (const Point3d & p1, const Point3d & p2, case 3: trivec = (p3 - p2); break; } - ARRAY lpi(freezonepi.Size()); + Array lpi(freezonepi.Size()); for (i = 1; i <= lpi.Size(); i++) lpi.Elem(i) = 0; lpi.Elem(pi1) = 1; @@ -616,7 +616,7 @@ int vnetrule :: IsTriangleInFreeSet (const Point3d & p1, const Point3d & p2, { // MARK(triinfz3); - ARRAY lpi(freezonepi.Size()); + Array lpi(freezonepi.Size()); for (i = 1; i <= lpi.Size(); i++) lpi.Elem(i) = 0; @@ -864,13 +864,13 @@ int vnetrule :: IsQuadInFreeZone (const Point3d & p1, const Point3d & p2, const Point3d & p3, const Point3d & p4, - const ARRAY & pi, int newone) + const Array & pi, int newone) { int fs; int infreeset, cannot = 0; - static ARRAY pfi(4), pfi2(4); + static Array pfi(4), pfi2(4); // convert from local index to freeset index int i, j; @@ -887,7 +887,7 @@ int vnetrule :: IsQuadInFreeZone (const Point3d & p1, for (fs = 1; fs <= freesets.Size(); fs++) { - const ARRAY & freeseti = *freesets.Get(fs); + const Array & freeseti = *freesets.Get(fs); for (i = 1; i <= 4; i++) { pfi2.Elem(i) = 0; @@ -907,7 +907,7 @@ int vnetrule :: IsQuadInFreeZone (const Point3d & p1, int vnetrule :: IsQuadInFreeSet (const Point3d & p1, const Point3d & p2, const Point3d & p3, const Point3d & p4, - int fs, const ARRAY & pi, int newone) + int fs, const Array & pi, int newone) { int i; @@ -933,7 +933,7 @@ int vnetrule :: IsQuadInFreeSet (const Point3d & p1, const Point3d & p2, return 1; } - static ARRAY pi3(3); + static Array pi3(3); int res; pi3.Elem(1) = pi.Get(1); @@ -987,9 +987,9 @@ float vnetrule :: CalcPointDist (int pi, const Point3d & p) const int vnetrule :: TestOk () const { - ARRAY cntpused(points.Size()); - ARRAY edge1, edge2; - ARRAY delf(faces.Size()); + Array cntpused(points.Size()); + Array edge1, edge2; + Array delf(faces.Size()); int i, j, k; int pi1, pi2; int found; diff --git a/libsrc/meshing/parser2.cpp b/libsrc/meshing/parser2.cpp index eb502cfe..a3c8af75 100644 --- a/libsrc/meshing/parser2.cpp +++ b/libsrc/meshing/parser2.cpp @@ -433,7 +433,7 @@ void netrule :: LoadRule (istream & ist) { char ok; int minn; - ARRAY pnearness (noldp); + Array pnearness (noldp); for (i = 1; i <= pnearness.Size(); i++) pnearness.Elem(i) = 1000; diff --git a/libsrc/meshing/parser3.cpp b/libsrc/meshing/parser3.cpp index 382ae9df..15284012 100644 --- a/libsrc/meshing/parser3.cpp +++ b/libsrc/meshing/parser3.cpp @@ -53,8 +53,8 @@ void LoadVMatrixLine (istream & ist, DenseMatrix & m, int line) int vnetrule :: NeighbourTrianglePoint (const threeint & t1, const threeint & t2) const { - ARRAY tr1(3); - ARRAY tr2(3); + Array tr1(3); + Array tr2(3); tr1.Elem(1)=t1.i1; tr1.Elem(2)=t1.i2; tr1.Elem(3)=t1.i3; @@ -472,7 +472,7 @@ void vnetrule :: LoadRule (istream & ist) else if (strcmp (buf, "freeset") == 0) { - freesets.Append (new ARRAY); + freesets.Append (new Array); ist >> ch; @@ -691,7 +691,7 @@ void vnetrule :: LoadRule (istream & ist) if (freesets.Size() == 0) { - freesets.Append (new ARRAY); + freesets.Append (new Array); for (i = 1; i <= freezone.Size(); i++) freesets.Elem(1)->Append(i); } @@ -721,10 +721,10 @@ void vnetrule :: LoadRule (istream & ist) for (fs = 1; fs <= freesets.Size(); fs++) { - freefaces.Append (new ARRAY); + freefaces.Append (new Array); - ARRAY & freeset = *freesets.Elem(fs); - ARRAY & freesetfaces = *freefaces.Last(); + Array & freeset = *freesets.Elem(fs); + Array & freesetfaces = *freefaces.Last(); for (ii1 = 1; ii1 <= freeset.Size(); ii1++) for (ii2 = 1; ii2 <= freeset.Size(); ii2++) @@ -770,7 +770,7 @@ void vnetrule :: LoadRule (istream & ist) { int minn; - // ARRAY pnearness (noldp); + // Array pnearness (noldp); pnearness.SetSize (noldp); for (i = 1; i <= pnearness.Size(); i++) @@ -859,11 +859,11 @@ void vnetrule :: LoadRule (istream & ist) //Table of edges: for (fs = 1; fs <= freesets.Size(); fs++) { - freeedges.Append (new ARRAY); + freeedges.Append (new Array); - // ARRAY & freeset = *freesets.Get(fs); - ARRAY & freesetedges = *freeedges.Last(); - ARRAY & freesetfaces = *freefaces.Get(fs); + // Array & freeset = *freesets.Get(fs); + Array & freesetedges = *freeedges.Last(); + Array & freesetfaces = *freefaces.Get(fs); int k,l; INDEX ind; diff --git a/libsrc/meshing/refine.cpp b/libsrc/meshing/refine.cpp index f34aa6a4..a04519de 100644 --- a/libsrc/meshing/refine.cpp +++ b/libsrc/meshing/refine.cpp @@ -17,7 +17,7 @@ namespace netgen // refine edges - ARRAY epgi; + Array epgi; oldns = mesh.GetNSeg(); for (SegmentIndex si = 0; si < oldns; si++) @@ -64,7 +64,7 @@ namespace netgen } // refine surface elements - ARRAY surfgi (8*mesh.GetNP()); + Array surfgi (8*mesh.GetNP()); for (int i = PointIndex::BASE; i < surfgi.Size()+PointIndex::BASE; i++) surfgi[i].trignum = -1; @@ -581,7 +581,7 @@ namespace netgen // update identification tables for (int i = 1; i <= mesh.GetIdentifications().GetMaxNr(); i++) { - ARRAY identmap; + Array identmap; mesh.GetIdentifications().GetMap (i, identmap); for (int j = 1; j <= between.GetNBags(); j++) @@ -621,8 +621,8 @@ namespace netgen cout << "WARNING: " << wrongels << " with wrong orientation found" << endl; int np = mesh.GetNP(); - ARRAY > should(np); - ARRAY > can(np); + Array > should(np); + Array > can(np); for (int i = 1; i <= np; i++) { should.Elem(i) = can.Elem(i) = mesh.Point(i); diff --git a/libsrc/meshing/ruler2.cpp b/libsrc/meshing/ruler2.cpp index 6040ad21..6b52a7cf 100644 --- a/libsrc/meshing/ruler2.cpp +++ b/libsrc/meshing/ruler2.cpp @@ -5,7 +5,7 @@ namespace netgen { -static double CalcElementBadness (const ARRAY & points, +static double CalcElementBadness (const Array & points, const Element2d & elem) { // badness = sqrt(3) /36 * circumference^2 / area - 1 + @@ -45,13 +45,13 @@ static double CalcElementBadness (const ARRAY & points, -int Meshing2 ::ApplyRules (ARRAY & lpoints, - ARRAY & legalpoints, +int Meshing2 ::ApplyRules (Array & lpoints, + Array & legalpoints, int maxlegalpoint, - ARRAY & llines, + Array & llines, int maxlegalline, - ARRAY & elements, - ARRAY & dellines, int tolerance) + Array & elements, + Array & dellines, int tolerance) { int i, j, ri, nlok, npok, incnpok, refpi, locli = 0; @@ -70,14 +70,14 @@ int Meshing2 ::ApplyRules (ARRAY & lpoints, int noldlp, noldll; int loctestmode; - static ARRAY pused, pmap, pfixed; - static ARRAY lmap, lused; - static ARRAY pnearness, lnearness; + static Array pused, pmap, pfixed; + static Array lmap, lused; + static Array pnearness, lnearness; - static ARRAY tempnewpoints; - static ARRAY tempnewlines; - static ARRAY tempdellines; - static ARRAY tempelements; + static Array tempnewpoints; + static Array tempnewlines; + static Array tempdellines; + static Array tempelements; diff --git a/libsrc/meshing/ruler2.hpp b/libsrc/meshing/ruler2.hpp index bfb71f9c..229784e7 100644 --- a/libsrc/meshing/ruler2.hpp +++ b/libsrc/meshing/ruler2.hpp @@ -23,31 +23,31 @@ private: /// char * name; /// - ARRAY points; + Array points; /// - ARRAY lines; + Array lines; /// - ARRAY freezone, freezonelimit; + Array freezone, freezonelimit; /// - ARRAY transfreezone; + Array transfreezone; /// - ARRAY dellines; + Array dellines; /// - ARRAY elements; + Array elements; /// - ARRAY tolerances, linetolerances; + Array tolerances, linetolerances; /// - ARRAY orientations; + Array orientations; /// DenseMatrix oldutonewu, oldutofreearea, oldutofreearealimit; /// - ARRAY oldutofreearea_i; + Array oldutofreearea_i; /// MatrixFixWidth<3> freesetinequ; /// - ARRAY linevecs; + Array linevecs; /// int noldp, noldl; @@ -55,7 +55,7 @@ private: float fzminx, fzmaxx, fzminy, fzmaxy; /// topological distance of line to base element - ARRAY lnearness; + Array lnearness; public: @@ -94,9 +94,9 @@ public: /// int GetDelLine (int i) const { return dellines.Get(i); } /// - const ARRAY & GetDelLines() const { return dellines; } + const Array & GetDelLines() const { return dellines; } /// - void GetFreeZone (ARRAY & afreearea); + void GetFreeZone (Array & afreearea); /// double CalcPointDist (int pi, const Point2d & p) const @@ -142,7 +142,7 @@ public: /// int ConvexFreeZone () const; /// - const ARRAY & GetTransFreeZone () { return transfreezone; } + const Array & GetTransFreeZone () { return transfreezone; } /// int GetPointNr (int ln, int endp) const { return lines.Get(ln).I(endp); } diff --git a/libsrc/meshing/ruler3.cpp b/libsrc/meshing/ruler3.cpp index 30a812bc..647cf15b 100644 --- a/libsrc/meshing/ruler3.cpp +++ b/libsrc/meshing/ruler3.cpp @@ -8,7 +8,7 @@ extern double minother; extern double minwithoutother; -static double CalcElementBadness (const ARRAY & points, +static double CalcElementBadness (const Array & points, const Element & elem) { double vol, l, l4, l5, l6; @@ -49,13 +49,13 @@ static double CalcElementBadness (const ARRAY & points, int Meshing3 :: ApplyRules ( - ARRAY & lpoints, // in: local points, out: old+new local points - ARRAY & allowpoint, // in: 2 .. it is allowed to use pointi, 1..will be allowed later, 0..no means - ARRAY & lfaces, // in: local faces, out: old+new local faces + Array & lpoints, // in: local points, out: old+new local points + Array & allowpoint, // in: 2 .. it is allowed to use pointi, 1..will be allowed later, 0..no means + Array & lfaces, // in: local faces, out: old+new local faces INDEX lfacesplit, // for local faces in outer radius INDEX_2_HASHTABLE & connectedpairs, // connected pairs for prism-meshing - ARRAY & elements, // out: new elements - ARRAY & delfaces, // out: face indices of faces to delete + Array & elements, // out: new elements + Array & delfaces, // out: face indices of faces to delete int tolerance, // quality class: 1 best double sloppy, // quality strength int rotind1, // how to rotate base element @@ -77,25 +77,25 @@ int Meshing3 :: ApplyRules int loktestmode; - static ARRAY pused; // point is already mapped - static ARRAY fused; // face is already mapped - static ARRAY pmap; // map of reference point to local point - static ARRAY pfixed; // point mapped by face-map - static ARRAY fmapi; // face in reference is mapped to face nr ... - static ARRAY fmapr; // face in reference is rotated to map - static ARRAY transfreezone; // transformed free-zone + static Array pused; // point is already mapped + static Array fused; // face is already mapped + static Array pmap; // map of reference point to local point + static Array pfixed; // point mapped by face-map + static Array fmapi; // face in reference is mapped to face nr ... + static Array fmapr; // face in reference is rotated to map + static Array transfreezone; // transformed free-zone static int cnt = 0; static INDEX_2_CLOSED_HASHTABLE ledges(100); // edges in local environment - static ARRAY tempnewpoints; - static ARRAY tempnewfaces; - static ARRAY tempdelfaces; - static ARRAY tempelements; - static ARRAY triboxes; // bounding boxes of local faces + static Array tempnewpoints; + static Array tempnewfaces; + static Array tempdelfaces; + static Array tempelements; + static Array triboxes; // bounding boxes of local faces - static ARRAY pnearness; - static ARRAY fnearness; + static Array pnearness; + static Array fnearness; cnt++; @@ -642,7 +642,7 @@ int Meshing3 :: ApplyRules if (loktestmode) { - const ARRAY & fz = rule->GetTransFreeZone(); + const Array & fz = rule->GetTransFreeZone(); (*testout) << "Freezone: " << endl; for (i = 1; i <= fz.Size(); i++) (*testout) << fz.Get(i) << endl; @@ -677,7 +677,7 @@ int Meshing3 :: ApplyRules for (i = 1; i <= lfaces.Size() && ok; i++) { - static ARRAY lpi(4); + static Array lpi(4); if (!fused.Get(i)) { diff --git a/libsrc/meshing/ruler3.hpp b/libsrc/meshing/ruler3.hpp index 483d83ed..fcbf8f59 100644 --- a/libsrc/meshing/ruler3.hpp +++ b/libsrc/meshing/ruler3.hpp @@ -13,33 +13,33 @@ private: /// name of rule char * name; /// point coordinates in reference position - ARRAY points; + Array points; /// old and new faces in reference numbering - ARRAY faces; + Array faces; /// additional edges of rule - ARRAY edges; + Array edges; /// points of freezone in reference coordinates - ARRAY freezone; + Array freezone; /// points of freezone in reference coordinates if tolcalss to infty - ARRAY freezonelimit; + Array freezonelimit; /// point index, if point equal to mappoint, otherwise 0 - ARRAY freezonepi; + Array freezonepi; /// faces of each convex part of freezone - ARRAY*> freefaces; + Array*> freefaces; /// set of points of each convex part of freezone - ARRAY*> freesets; + Array*> freesets; /// points of transformed freezone - ARRAY transfreezone; + Array transfreezone; /// edges of each convex part of freezone - ARRAY*> freeedges; + Array*> freeedges; /// face numbers to be deleted - ARRAY delfaces; + Array delfaces; /// elements to be generated - ARRAY elements; + Array elements; /// tolerances for points and faces (used ??) - ARRAY tolerances, linetolerances; + Array tolerances, linetolerances; /// transformation matrix DenseMatrix oldutonewu; /// transformation matrix: deviation old point to dev. freezone @@ -55,21 +55,21 @@ private: a point is outside of convex part of freezone, iff mat * (point, 1) >= 0 for each component (correct ?) */ - ARRAY freefaceinequ; + Array freefaceinequ; /// - ARRAY orientations; + Array orientations; /** flags specified in rule-description file: t .. test rule */ - ARRAY flags; + Array flags; /** topological distance of face to base element non-connected: > 100 (??) */ - ARRAY fnearness; - ARRAY pnearness; + Array fnearness; + Array pnearness; int maxpnearness; /// number of old points in rule @@ -144,19 +144,19 @@ public: -1 maybe */ int IsTriangleInFreeZone (const Point3d & p1, const Point3d & p2, - const Point3d & p3, const ARRAY & pi, int newone); + const Point3d & p3, const Array & pi, int newone); /// int IsQuadInFreeZone (const Point3d & p1, const Point3d & p2, const Point3d & p3, const Point3d & p4, - const ARRAY & pi, int newone); + const Array & pi, int newone); /// int IsTriangleInFreeSet (const Point3d & p1, const Point3d & p2, - const Point3d & p3, int fs, const ARRAY & pi, int newone); + const Point3d & p3, int fs, const Array & pi, int newone); /// int IsQuadInFreeSet (const Point3d & p1, const Point3d & p2, const Point3d & p3, const Point3d & p4, - int fs, const ARRAY & pi, int newone); + int fs, const Array & pi, int newone); /// int ConvexFreeZone () const; @@ -194,7 +194,7 @@ public: void LoadRule (istream & ist); /// - const ARRAY & GetTransFreeZone () { return transfreezone; } + const Array & GetTransFreeZone () { return transfreezone; } /// int TestOk () const; diff --git a/libsrc/meshing/secondorder.cpp b/libsrc/meshing/secondorder.cpp index 4e75e77d..6b3cd25a 100644 --- a/libsrc/meshing/secondorder.cpp +++ b/libsrc/meshing/secondorder.cpp @@ -224,7 +224,7 @@ namespace netgen // update identification tables for (int i = 1; i <= mesh.GetIdentifications().GetMaxNr(); i++) { - ARRAY identmap; + Array identmap; mesh.GetIdentifications().GetMap (i, identmap); for (INDEX_2_HASHTABLE::Iterator it = between.Begin(); @@ -298,7 +298,7 @@ namespace netgen int np = mesh.GetNP(); int ne = mesh.GetNE(); // int i, j; - ARRAY parents(np); + Array parents(np); for (int i = 1; i <= np; i++) parents.Elem(i) = INDEX_2(0,0); @@ -332,7 +332,7 @@ namespace netgen void Refinement :: ValidateRefinedMesh (Mesh & mesh, - ARRAY & parents) + Array & parents) { // int i, j, k; @@ -363,8 +363,8 @@ namespace netgen cout << "WARNING: " << wrongels << " illegal element(s) found" << endl; int np = mesh.GetNP(); - ARRAY > should(np); - ARRAY > can(np); + Array > should(np); + Array > can(np); for (int i = 1; i <= np; i++) { diff --git a/libsrc/meshing/smoothing2.5.cpp b/libsrc/meshing/smoothing2.5.cpp index 2789b785..52e94617 100644 --- a/libsrc/meshing/smoothing2.5.cpp +++ b/libsrc/meshing/smoothing2.5.cpp @@ -7,8 +7,8 @@ namespace netgen { - void MeshOptimize2d :: ProjectBoundaryPoints(ARRAY & surfaceindex, - const ARRAY* > & from, ARRAY* > & dest) + void MeshOptimize2d :: ProjectBoundaryPoints(Array & surfaceindex, + const Array* > & from, Array* > & dest) { for(int i=0; i seia; + Array seia; mesh.GetSurfaceElementsOfFace (faceindex, seia); bool mixed = 0; @@ -72,9 +72,9 @@ namespace netgen Vector x(3); - ARRAY savepoints(mesh.GetNP()); + Array savepoints(mesh.GetNP()); - ARRAY nelementsonpoint(mesh.GetNP()); + Array nelementsonpoint(mesh.GetNP()); nelementsonpoint = 0; for (i = 0; i < seia.Size(); i++) @@ -138,8 +138,8 @@ namespace netgen int cnt = 0; - ARRAY locelements(0); - ARRAY locrots(0); + Array locelements(0); + Array locrots(0); for (PointIndex pi = PointIndex::BASE; pi < mesh.GetNP()+PointIndex::BASE; pi++) diff --git a/libsrc/meshing/smoothing2.cpp b/libsrc/meshing/smoothing2.cpp index e4335282..1395d046 100644 --- a/libsrc/meshing/smoothing2.cpp +++ b/libsrc/meshing/smoothing2.cpp @@ -261,9 +261,9 @@ namespace netgen static MeshPoint sp1; static PointGeomInfo gi1; static Vec<3> normal, t1, t2; - static ARRAY locelements(0); - static ARRAY locrots(0); - static ARRAY lochs(0); + static Array locelements(0); + static Array locrots(0); + static Array lochs(0); // static int locerr2; static double locmetricweight = 0; static double loch; @@ -521,7 +521,7 @@ namespace netgen // meshthis -> ProjectPoint (surfi, pp1); // meshthis -> GetNormalVector (surfi, pp1, n); - static ARRAY pts2d; + static Array pts2d; pts2d.SetSize(mesh.GetNP()); grad = 0; @@ -592,7 +592,7 @@ namespace netgen // pp1.Add2 (x.Get(1), t1, x.Get(2), t2); pp1 = sp1 + x.Get(1) * t1 + x.Get(2) * t2; - static ARRAY pts2d; + static Array pts2d; pts2d.SetSize(mesh.GetNP()); deriv = 0; @@ -676,7 +676,7 @@ namespace netgen SurfaceElementIndex sei; - ARRAY seia; + Array seia; mesh.GetSurfaceElementsOfFace (faceindex, seia); bool mixed = 0; @@ -697,10 +697,10 @@ namespace netgen Vec3d n1, n2; Vector x(2), xedge(1); - ARRAY savepoints(mesh.GetNP()); + Array savepoints(mesh.GetNP()); uselocalh = mparam.uselocalh; - ARRAY nelementsonpoint(mesh.GetNP()); + Array nelementsonpoint(mesh.GetNP()); nelementsonpoint = 0; for (int i = 0; i < seia.Size(); i++) diff --git a/libsrc/meshing/smoothing3.cpp b/libsrc/meshing/smoothing3.cpp index dc3d6741..7a77de4e 100644 --- a/libsrc/meshing/smoothing3.cpp +++ b/libsrc/meshing/smoothing3.cpp @@ -89,7 +89,7 @@ namespace netgen PointFunction1 :: PointFunction1 (Mesh::T_POINTS & apoints, - const ARRAY & afaces, + const Array & afaces, double ah) : points(apoints), faces(afaces) { @@ -178,12 +178,12 @@ namespace netgen class CheapPointFunction1 : public MinFunction { Mesh::T_POINTS & points; - const ARRAY & faces; + const Array & faces; DenseMatrix m; double h; public: CheapPointFunction1 (Mesh::T_POINTS & apoints, - const ARRAY & afaces, + const Array & afaces, double ah); virtual double Func (const Vector & x) const; @@ -191,7 +191,7 @@ namespace netgen }; CheapPointFunction1 :: CheapPointFunction1 (Mesh::T_POINTS & apoints, - const ARRAY & afaces, + const Array & afaces, double ah) : points(apoints), faces(afaces) { @@ -349,7 +349,7 @@ namespace netgen INDEX eli; const Element * el; double badness; - // ARRAY p(4); + // Array p(4); Point<3> hp; badness = 0; @@ -483,7 +483,7 @@ namespace netgen int PointFunction :: MovePointToInner () { // try point movement - ARRAY faces; + Array faces; for (int j = 0; j < elementsonpoint[actpind].Size(); j++) { @@ -1434,7 +1434,7 @@ void Mesh :: ImproveMesh (OPTIMIZEGOAL goal) int ne = GetNE(); - ARRAY perrs(np); + Array perrs(np); perrs = 1.0; double bad1 = 0; @@ -1490,7 +1490,7 @@ void Mesh :: ImproveMesh (OPTIMIZEGOAL goal) par.maxit_linsearch = 20; par.maxit_bfgs = 20; - ARRAY pointh (points.Size()); + Array pointh (points.Size()); if(lochfunc) { @@ -1627,7 +1627,7 @@ void Mesh :: ImproveMeshJacobian (OPTIMIZEGOAL goal, const BitArray * usepoint) badnodes.Set (el.PNum(j)); } - ARRAY pointh (points.Size()); + Array pointh (points.Size()); if(lochfunc) { @@ -1714,9 +1714,9 @@ void Mesh :: ImproveMeshJacobian (OPTIMIZEGOAL goal, const BitArray * usepoint) // Improve Condition number of Jacobian, any elements void Mesh :: ImproveMeshJacobianOnSurface (const BitArray & usepoint, - const ARRAY< Vec<3>* > & nv, + const Array< Vec<3>* > & nv, OPTIMIZEGOAL goal, - const ARRAY< ARRAY* > * idmaps) + const Array< Array* > * idmaps) { int i, j; @@ -1733,8 +1733,8 @@ void Mesh :: ImproveMeshJacobianOnSurface (const BitArray & usepoint, JacobianPointFunction pf(points, volelements); - ARRAY< ARRAY* > locidmaps; - const ARRAY< ARRAY* > * used_idmaps; + Array< Array* > locidmaps; + const Array< Array* > * used_idmaps; if(idmaps) used_idmaps = idmaps; @@ -1746,7 +1746,7 @@ void Mesh :: ImproveMeshJacobianOnSurface (const BitArray & usepoint, { if(GetIdentifications().GetType(i) == Identifications::PERIODIC) { - locidmaps.Append(new ARRAY); + locidmaps.Append(new Array); GetIdentifications().GetMap(i,*locidmaps.Last(),true); } } @@ -1781,7 +1781,7 @@ void Mesh :: ImproveMeshJacobianOnSurface (const BitArray & usepoint, badnodes.Set (el.PNum(j)); } - ARRAY pointh (points.Size()); + Array pointh (points.Size()); if(lochfunc) { diff --git a/libsrc/meshing/specials.cpp b/libsrc/meshing/specials.cpp index e224f4a7..977b08f9 100644 --- a/libsrc/meshing/specials.cpp +++ b/libsrc/meshing/specials.cpp @@ -20,7 +20,7 @@ void CutOffAndCombine (Mesh & mesh, const Mesh & othermesh) othermesh.GetNP(), " points, ", othermesh.GetNSE(), " surface elements."); - ARRAY otherbounds(nse); + Array otherbounds(nse); Box3d otherbox; double maxh = 0; @@ -135,7 +135,7 @@ void CutOffAndCombine (Mesh & mesh, const Mesh & othermesh) - ARRAY pmat(onp); + Array pmat(onp); for (i = 1; i <= onp; i++) pmat.Elem(i) = mesh.AddPoint (othermesh.Point(i)); diff --git a/libsrc/meshing/topology.cpp b/libsrc/meshing/topology.cpp index 73ee1a87..21d29eaf 100644 --- a/libsrc/meshing/topology.cpp +++ b/libsrc/meshing/topology.cpp @@ -72,8 +72,8 @@ void MeshTopology :: Update() delete vert2surfelement; delete vert2segment; - ARRAY cnt(nv); - ARRAY vnums; + Array cnt(nv); + Array vnums; /* generate: @@ -184,12 +184,12 @@ void MeshTopology :: Update() } - ARRAY edgenr(nv); - ARRAY edgeflag(nv); + Array edgenr(nv); + Array edgeflag(nv); edgeflag = 0; ned = edge2vert.Size(); - ARRAY missing; + Array missing; for (int i = 1; i <= nv; i++) { @@ -675,10 +675,10 @@ void MeshTopology :: Update() paralleltop.Reset (); #endif - ARRAY face_els(nfa), face_surfels(nfa); + Array face_els(nfa), face_surfels(nfa); face_els = 0; face_surfels = 0; - ARRAY hfaces; + Array hfaces; for (i = 1; i <= ne; i++) { GetElementFaces (i, hfaces); @@ -726,7 +726,7 @@ void MeshTopology :: Update() paralleltop.SetExchangeVert(face2vert[i].I(j+1)); } - ARRAY faceedges; + Array faceedges; GetFaceEdges (i+1, faceedges); for ( int j = 0; j < faceedges.Size(); j++) { @@ -1104,14 +1104,14 @@ const Point3d * MeshTopology :: GetVertices (ELEMENT_TYPE et) -void MeshTopology :: GetElementEdges (int elnr, ARRAY & eledges) const +void MeshTopology :: GetElementEdges (int elnr, Array & eledges) const { int ned = GetNEdges (mesh.VolumeElement(elnr).GetType()); eledges.SetSize (ned); for (int i = 0; i < ned; i++) eledges[i] = abs (edges.Get(elnr)[i]); } -void MeshTopology :: GetElementFaces (int elnr, ARRAY & elfaces, bool withorientation) const +void MeshTopology :: GetElementFaces (int elnr, Array & elfaces, bool withorientation) const { int i; int nfa = GetNFaces (mesh.VolumeElement(elnr).GetType()); @@ -1128,7 +1128,7 @@ void MeshTopology :: GetElementFaces (int elnr, ARRAY & elfaces, bool witho } } -void MeshTopology :: GetElementEdgeOrientations (int elnr, ARRAY & eorient) const +void MeshTopology :: GetElementEdgeOrientations (int elnr, Array & eorient) const { int i; int ned = GetNEdges (mesh.VolumeElement(elnr).GetType()); @@ -1137,7 +1137,7 @@ void MeshTopology :: GetElementEdgeOrientations (int elnr, ARRAY & eorient) eorient.Elem(i) = (edges.Get(elnr)[i-1] > 0) ? 1 : -1; } -void MeshTopology :: GetElementFaceOrientations (int elnr, ARRAY & forient) const +void MeshTopology :: GetElementFaceOrientations (int elnr, Array & forient) const { int i; int nfa = GetNFaces (mesh.VolumeElement(elnr).GetType()); @@ -1223,7 +1223,7 @@ int MeshTopology :: GetElementFaces (int elnr, int * elfaces, int * orient) cons return 6; } -void MeshTopology :: GetSurfaceElementEdges (int elnr, ARRAY & eledges) const +void MeshTopology :: GetSurfaceElementEdges (int elnr, Array & eledges) const { int i; if (mesh.GetDimension()==3 || 1) @@ -1248,7 +1248,7 @@ int MeshTopology :: GetSurfaceElementFace (int elnr) const } void MeshTopology :: -GetSurfaceElementEdgeOrientations (int elnr, ARRAY & eorient) const +GetSurfaceElementEdgeOrientations (int elnr, Array & eorient) const { int ned = GetNEdges (mesh.SurfaceElement(elnr).GetType()); eorient.SetSize (ned); @@ -1295,7 +1295,7 @@ int MeshTopology :: GetSurfaceElementEdges (int elnr, int * eledges, int * orien } -void MeshTopology :: GetFaceVertices (int fnr, ARRAY & vertices) const +void MeshTopology :: GetFaceVertices (int fnr, Array & vertices) const { vertices.SetSize(4); int i; @@ -1319,7 +1319,7 @@ void MeshTopology :: GetEdgeVertices (int ednr, int & v1, int & v2) const } -void MeshTopology :: GetFaceEdges (int fnr, ARRAY & fedges, bool withorientation) const +void MeshTopology :: GetFaceEdges (int fnr, Array & fedges, bool withorientation) const { ArrayMem pi(4); ArrayMem eledges; @@ -1426,7 +1426,7 @@ ELEMENT_TYPE MeshTopology :: GetFaceType (int fnr) const } -void MeshTopology :: GetVertexElements (int vnr, ARRAY & elements) const +void MeshTopology :: GetVertexElements (int vnr, Array & elements) const { if (vert2element) { @@ -1455,7 +1455,7 @@ FlatArray MeshTopology :: GetVertexSurfaceElements (int vnr) const void MeshTopology :: GetVertexSurfaceElements( int vnr, - ARRAY& elements ) const + Array& elements ) const { if (vert2surfelement) { @@ -1470,7 +1470,7 @@ void MeshTopology :: GetVertexSurfaceElements( int vnr, int MeshTopology :: GetVerticesEdge ( int v1, int v2 ) const { - ARRAY elements_v1, elementedges; + Array elements_v1, elementedges; GetVertexElements ( v1, elements_v1); int edv1, edv2; @@ -1490,11 +1490,11 @@ int MeshTopology :: GetVerticesEdge ( int v1, int v2 ) const -void MeshTopology :: GetSegmentVolumeElements ( int segnr, ARRAY & volels ) const +void MeshTopology :: GetSegmentVolumeElements ( int segnr, Array & volels ) const { int v1, v2; GetEdgeVertices ( GetSegmentEdge (segnr), v1, v2 ); - ARRAY volels1, volels2; + Array volels1, volels2; GetVertexElements ( v1, volels1 ); GetVertexElements ( v2, volels2 ); volels.SetSize(0); diff --git a/libsrc/meshing/topology.hpp b/libsrc/meshing/topology.hpp index 9dda8ba1..c067651f 100644 --- a/libsrc/meshing/topology.hpp +++ b/libsrc/meshing/topology.hpp @@ -75,24 +75,24 @@ public: orient = segedges.Get(segnr) > 0 ? 1 : -1; } - void GetElementEdges (int elnr, ARRAY & edges) const; - void GetElementFaces (int elnr, ARRAY & faces, bool withorientation = false) const; - void GetElementEdgeOrientations (int elnr, ARRAY & eorient) const; - void GetElementFaceOrientations (int elnr, ARRAY & forient) const; + void GetElementEdges (int elnr, Array & edges) const; + void GetElementFaces (int elnr, Array & faces, bool withorientation = false) const; + void GetElementEdgeOrientations (int elnr, Array & eorient) const; + void GetElementFaceOrientations (int elnr, Array & forient) const; int GetElementEdges (int elnr, int * edges, int * orient) const; int GetElementFaces (int elnr, int * faces, int * orient) const; - void GetFaceVertices (int fnr, ARRAY & vertices) const; + void GetFaceVertices (int fnr, Array & vertices) const; void GetFaceVertices (int fnr, int * vertices) const; void GetEdgeVertices (int fnr, int & v1, int & v2) const; - void GetFaceEdges (int fnr, ARRAY & edges, bool withorientation = false) const; + void GetFaceEdges (int fnr, Array & edges, bool withorientation = false) const; ELEMENT_TYPE GetFaceType (int fnr) const; - void GetSurfaceElementEdges (int elnr, ARRAY & edges) const; + void GetSurfaceElementEdges (int elnr, Array & edges) const; int GetSurfaceElementFace (int elnr) const; - void GetSurfaceElementEdgeOrientations (int elnr, ARRAY & eorient) const; + void GetSurfaceElementEdgeOrientations (int elnr, Array & eorient) const; int GetSurfaceElementFaceOrientation (int elnr) const; int GetSurfaceElementEdges (int elnr, int * edges, int * orient) const; @@ -105,16 +105,16 @@ public: int GetFace2SurfaceElement (int fnr) const { return face2surfel[fnr-1]; } - void GetVertexElements (int vnr, ARRAY & elements) const; + void GetVertexElements (int vnr, Array & elements) const; FlatArray GetVertexElements (int vnr) const; - void GetVertexSurfaceElements( int vnr, ARRAY& elements ) const; + void GetVertexSurfaceElements( int vnr, Array& elements ) const; FlatArray GetVertexSurfaceElements (int vnr) const; int GetVerticesEdge ( int v1, int v2) const; - void GetSegmentVolumeElements ( int segnr, ARRAY & surfels ) const; + void GetSegmentVolumeElements ( int segnr, Array & surfels ) const; }; diff --git a/libsrc/meshing/validate.cpp b/libsrc/meshing/validate.cpp index d519e27c..01ace40f 100644 --- a/libsrc/meshing/validate.cpp +++ b/libsrc/meshing/validate.cpp @@ -5,7 +5,7 @@ namespace netgen { - void GetPureBadness(Mesh & mesh, ARRAY & pure_badness, + void GetPureBadness(Mesh & mesh, Array & pure_badness, const BitArray & isnewpoint) { //const int ne = mesh.GetNE(); @@ -14,7 +14,7 @@ namespace netgen pure_badness.SetSize(np+PointIndex::BASE+1); pure_badness = -1; - ARRAY< Point<3>* > backup(np); + Array< Point<3>* > backup(np); for(int i=0; i & bad_elements, - const ARRAY & pure_badness, + double Validate(const Mesh & mesh, Array & bad_elements, + const Array & pure_badness, double max_worsening, const bool uselocalworsening, - ARRAY * quality_loss) + Array * quality_loss) { PrintMessage(3,"!!!! Validating !!!!"); //if(max_worsening > 0) @@ -105,7 +105,7 @@ namespace netgen void GetWorkingArea(BitArray & working_elements, BitArray & working_points, - const Mesh & mesh, const ARRAY & bad_elements, + const Mesh & mesh, const Array & bad_elements, const int width) { working_elements.Clear(); @@ -151,11 +151,11 @@ namespace netgen - void RepairBisection(Mesh & mesh, ARRAY & bad_elements, + void RepairBisection(Mesh & mesh, Array & bad_elements, const BitArray & isnewpoint, Refinement & refinement, - const ARRAY & pure_badness, + const Array & pure_badness, double max_worsening, const bool uselocalworsening, - const ARRAY< ARRAY* > & idmaps) + const Array< Array* > & idmaps) { ostringstream ostrstr; @@ -175,9 +175,9 @@ namespace netgen PushStatus("Repair Bisection"); - ARRAY* > should(np); - ARRAY* > can(np); - ARRAY* > nv(np); + Array* > should(np); + Array* > can(np); + Array* > nv(np); for(int i=0; i; @@ -196,7 +196,7 @@ namespace netgen isedgepoint.Set(seg.p2); } - ARRAY surfaceindex(np); + Array surfaceindex(np); surfaceindex = -1; for (int i = 1; i <= mesh.GetNSE(); i++) diff --git a/libsrc/meshing/validate.hpp b/libsrc/meshing/validate.hpp index 5f898c17..67ae251e 100644 --- a/libsrc/meshing/validate.hpp +++ b/libsrc/meshing/validate.hpp @@ -3,15 +3,15 @@ -void GetPureBadness(Mesh & mesh, ARRAY & pure_badness, +void GetPureBadness(Mesh & mesh, Array & pure_badness, const BitArray & isnewpoint); -double Validate(const Mesh & mesh, ARRAY & bad_elements, - const ARRAY & pure_badness, +double Validate(const Mesh & mesh, Array & bad_elements, + const Array & pure_badness, double max_worsening, const bool uselocalworsening, - ARRAY * quality_loss = NULL); -void RepairBisection(Mesh & mesh, ARRAY & bad_elements, const BitArray & isnewpoint, Refinement & refinement, - const ARRAY & pure_badness, + Array * quality_loss = NULL); +void RepairBisection(Mesh & mesh, Array & bad_elements, const BitArray & isnewpoint, Refinement & refinement, + const Array & pure_badness, double max_worsening, const bool uselocalworsening, - const ARRAY< ARRAY* > & idmaps); + const Array< Array* > & idmaps); #endif // VALIDATE_HPP diff --git a/libsrc/meshing/zrefine.cpp b/libsrc/meshing/zrefine.cpp index 1218a6d7..00da8153 100644 --- a/libsrc/meshing/zrefine.cpp +++ b/libsrc/meshing/zrefine.cpp @@ -215,7 +215,7 @@ namespace netgen { int i, j; int nseg = mesh.GetNSeg(); - ARRAY edgesonpoint(mesh.GetNP()); + Array edgesonpoint(mesh.GetNP()); for (i = 1; i <= mesh.GetNP(); i++) edgesonpoint.Elem(i) = 0; @@ -255,9 +255,9 @@ namespace netgen // markers for z-refinement: p1, p2, levels // p1-p2 is an edge to be refined - ARRAY ref_uniform; - ARRAY ref_singular; - ARRAY ref_slices; + Array ref_uniform; + Array ref_singular; + Array ref_slices; BitArray first_id(geom->identifications.Size()); first_id.Set(); @@ -291,7 +291,7 @@ namespace netgen } else { - //const ARRAY & slices = csid->GetSlices(); + //const Array & slices = csid->GetSlices(); INDEX_4 i4; i4[0] = pair.I1(); i4[1] = pair.I2(); @@ -305,7 +305,7 @@ namespace netgen - ARRAY epgi; + Array epgi; while (1) { @@ -393,7 +393,7 @@ namespace netgen edge.Sort(); if (!refedges.Used(edge)) { - const ARRAY & slices = csid->GetSlices(); + const Array & slices = csid->GetSlices(); //(*testout) << "idnr " << idnr << " i " << i << endl; //(*testout) << "slices " << slices << endl; double slicefac = slices.Get(slicenr); diff --git a/libsrc/occ/Makefile.in b/libsrc/occ/Makefile.in index 26433cca..88a82f8a 100644 --- a/libsrc/occ/Makefile.in +++ b/libsrc/occ/Makefile.in @@ -1,8 +1,8 @@ -# Makefile.in generated by automake 1.10.1 from Makefile.am. +# Makefile.in generated by automake 1.10 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006 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. @@ -53,7 +53,7 @@ am_libocc_la_OBJECTS = Partition_Inter2d.lo Partition_Inter3d.lo \ Partition_Spliter.lo occconstruction.lo occgenmesh.lo \ occgeom.lo occmeshsurf.lo libocc_la_OBJECTS = $(am_libocc_la_OBJECTS) -DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) +DEFAULT_INCLUDES = -I. -I$(top_builddir)@am__isrc@ depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ @@ -359,8 +359,8 @@ ID: $(HEADERS) $(SOURCES) $(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; nonemtpy = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ mkid -fID $$unique tags: TAGS @@ -372,8 +372,8 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ 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; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ @@ -383,12 +383,13 @@ ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ + 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; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ test -z "$(CTAGS_ARGS)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique diff --git a/libsrc/occ/occgenmesh.cpp b/libsrc/occ/occgenmesh.cpp index 623732d1..2817ba18 100644 --- a/libsrc/occ/occgenmesh.cpp +++ b/libsrc/occ/occgenmesh.cpp @@ -29,8 +29,8 @@ namespace netgen } void DivideEdge (TopoDS_Edge & edge, - ARRAY & ps, - ARRAY & params, + Array & ps, + Array & params, Mesh & mesh) { double s0, s1; @@ -148,7 +148,7 @@ namespace netgen int first_ep = mesh.GetNP()+1; - ARRAY face2solid[2]; + Array face2solid[2]; for (int i = 0; i<2; i++) { face2solid[i].SetSize (geom.fmap.Extent()); @@ -253,13 +253,13 @@ namespace netgen int geomedgenr = geom.emap.FindIndex(edge); - ARRAY mp; - ARRAY params; + Array mp; + Array params; DivideEdge (edge, mp, params, mesh); - ARRAY pnums; + Array pnums; pnums.SetSize (mp.Size()+2); if (!merge_solids) @@ -403,7 +403,7 @@ namespace netgen double starttime = GetTime(); - ARRAY glob2loc(noldp); + Array glob2loc(noldp); //int projecttype = PARAMETERSPACE; @@ -509,7 +509,7 @@ namespace netgen cntp+=2; - ARRAY< PointGeomInfo > gis; + Array< PointGeomInfo > gis; gis.SetAllocSize (cntp); gis.SetSize (0); @@ -1101,7 +1101,7 @@ namespace netgen mesh->SetGlobalH (mparam.maxh); mesh->SetMinimalH (mparam.minh); - ARRAY maxhdom; + Array maxhdom; maxhdom.SetSize (geom.NrSolids()); maxhdom = mparam.maxh; @@ -1256,7 +1256,7 @@ namespace netgen int sections = 100; - ARRAY lines(sections*nedges); + Array lines(sections*nedges); Box3dTree* searchtree = new Box3dTree (bb.PMin(), bb.PMax()); @@ -1303,7 +1303,7 @@ namespace netgen } } - ARRAY linenums; + Array linenums; for (int i = 0; i < nlines; i++) { @@ -1365,7 +1365,7 @@ namespace netgen int i, j; int np = mesh->GetNP(); - ARRAY equalto; + Array equalto; equalto.SetSize (np); equalto = 0; diff --git a/libsrc/occ/occgeom.cpp b/libsrc/occ/occgeom.cpp index c0282927..8b0399ee 100644 --- a/libsrc/occ/occgeom.cpp +++ b/libsrc/occ/occgeom.cpp @@ -1422,8 +1422,8 @@ namespace netgen double dmax; int cnt = 0; - ARRAY edgeLengths; - ARRAY order; + Array edgeLengths; + Array order; edgeLengths.SetSize (emap.Extent()); order.SetSize (emap.Extent()); diff --git a/libsrc/occ/occgeom.hpp b/libsrc/occ/occgeom.hpp index a97254f4..085b1459 100644 --- a/libsrc/occ/occgeom.hpp +++ b/libsrc/occ/occgeom.hpp @@ -163,13 +163,13 @@ class OCCGeometry public: TopoDS_Shape shape; TopTools_IndexedMapOfShape fmap, emap, vmap, somap, shmap, wmap; - ARRAY fsingular, esingular, vsingular; + Array fsingular, esingular, vsingular; Box<3> boundingbox; int changed; - ARRAY facemeshstatus; + Array facemeshstatus; - ARRAY fvispar, evispar, vvispar; + Array fvispar, evispar, vvispar; double tolerance; bool fixsmalledges; diff --git a/libsrc/opti/Makefile.in b/libsrc/opti/Makefile.in index e0c0e9d9..ccfe4ca7 100644 --- a/libsrc/opti/Makefile.in +++ b/libsrc/opti/Makefile.in @@ -1,8 +1,8 @@ -# Makefile.in generated by automake 1.10.1 from Makefile.am. +# Makefile.in generated by automake 1.10 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006 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. @@ -50,7 +50,7 @@ LTLIBRARIES = $(noinst_LTLIBRARIES) libopti_la_LIBADD = am_libopti_la_OBJECTS = bfgs.lo linopt.lo linsearch.lo libopti_la_OBJECTS = $(am_libopti_la_OBJECTS) -DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) +DEFAULT_INCLUDES = -I. -I$(top_builddir)@am__isrc@ depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ @@ -316,8 +316,8 @@ ID: $(HEADERS) $(SOURCES) $(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; nonemtpy = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ mkid -fID $$unique tags: TAGS @@ -329,8 +329,8 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ 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; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ @@ -340,12 +340,13 @@ ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ + 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; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ test -z "$(CTAGS_ARGS)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique diff --git a/libsrc/parallel/Makefile.in b/libsrc/parallel/Makefile.in index efa5ab6c..d9ec3ebd 100644 --- a/libsrc/parallel/Makefile.in +++ b/libsrc/parallel/Makefile.in @@ -1,8 +1,8 @@ -# Makefile.in generated by automake 1.10.1 from Makefile.am. +# Makefile.in generated by automake 1.10 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006 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. @@ -50,7 +50,7 @@ LTLIBRARIES = $(noinst_LTLIBRARIES) libparallel_la_LIBADD = am_libparallel_la_OBJECTS = parallelmesh.lo paralleltop.lo libparallel_la_OBJECTS = $(am_libparallel_la_OBJECTS) -DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) +DEFAULT_INCLUDES = -I. -I$(top_builddir)@am__isrc@ depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ @@ -314,8 +314,8 @@ ID: $(HEADERS) $(SOURCES) $(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; nonemtpy = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ mkid -fID $$unique tags: TAGS @@ -327,8 +327,8 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ 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; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ @@ -338,12 +338,13 @@ ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ + 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; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ test -z "$(CTAGS_ARGS)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique diff --git a/libsrc/parallel/parallelinterface.hpp b/libsrc/parallel/parallelinterface.hpp index ed262e6b..6127acd1 100644 --- a/libsrc/parallel/parallelinterface.hpp +++ b/libsrc/parallel/parallelinterface.hpp @@ -23,7 +23,7 @@ extern "C" { // number on distant processor // gibt anzahl an distant pnums zurueck - // * pnums entspricht ARRAY + // * pnums entspricht Array int NgPar_GetDistantNodeNums ( int nodetype, int locnum, int * pnums ); int NgPar_GetNDistantNodeNums ( int nodetype, int locnum ); diff --git a/libsrc/parallel/paralleltop.hpp b/libsrc/parallel/paralleltop.hpp index 70449355..b5bcb5c5 100644 --- a/libsrc/parallel/paralleltop.hpp +++ b/libsrc/parallel/paralleltop.hpp @@ -57,7 +57,7 @@ public: int GetLoc2Glob_Vert ( int locnum ) const { return loc2distvert[locnum][0]; } int GetLoc2Glob_VolEl ( int locnum ) const { return loc2distel[locnum-1][0]; } - void GetVertNeighbours ( int vnum, ARRAY & dests ) const; + void GetVertNeighbours ( int vnum, Array & dests ) const; int Glob2Loc_SurfEl ( int globnum ); int Glob2Loc_VolEl ( int globnum ); diff --git a/libsrc/stlgeom/Makefile.in b/libsrc/stlgeom/Makefile.in index f4d22c49..3ffe62ca 100644 --- a/libsrc/stlgeom/Makefile.in +++ b/libsrc/stlgeom/Makefile.in @@ -1,8 +1,8 @@ -# Makefile.in generated by automake 1.10.1 from Makefile.am. +# Makefile.in generated by automake 1.10 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006 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. @@ -51,7 +51,7 @@ libstl_la_LIBADD = am_libstl_la_OBJECTS = meshstlsurface.lo stlgeom.lo stlgeomchart.lo \ stlgeommesh.lo stlline.lo stltool.lo stltopology.lo libstl_la_OBJECTS = $(am_libstl_la_OBJECTS) -DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) +DEFAULT_INCLUDES = -I. -I$(top_builddir)@am__isrc@ depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ @@ -325,8 +325,8 @@ ID: $(HEADERS) $(SOURCES) $(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; nonemtpy = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ mkid -fID $$unique tags: TAGS @@ -338,8 +338,8 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ 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; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ @@ -349,12 +349,13 @@ ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ + 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; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ test -z "$(CTAGS_ARGS)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique diff --git a/libsrc/stlgeom/meshstlsurface.cpp b/libsrc/stlgeom/meshstlsurface.cpp index 3640201d..89264c98 100644 --- a/libsrc/stlgeom/meshstlsurface.cpp +++ b/libsrc/stlgeom/meshstlsurface.cpp @@ -28,8 +28,8 @@ static void STLFindEdges (STLGeometry & geom, PushStatusF("Mesh Lines"); - ARRAY meshlines; - ARRAY meshpoints; + Array meshlines; + Array meshpoints; PrintMessage(3,"Mesh Lines"); @@ -472,8 +472,8 @@ int STLSurfaceMeshing (STLGeometry & geom, - ARRAY refpts; - ARRAY refh; + Array refpts; + Array refh; // was commented: @@ -558,7 +558,7 @@ void STLSurfaceMeshing1 (STLGeometry & geom, mesh.FindOpenSegments(); - ARRAY spiralps(0); + Array spiralps(0); spiralps.SetSize(0); for (i = 1; i <= geom.GetNP(); i++) { @@ -570,7 +570,7 @@ void STLSurfaceMeshing1 (STLGeometry & geom, int sppointnum; int spcnt = 0; - ARRAY meshsp(mesh.GetNP()); + Array meshsp(mesh.GetNP()); for (i = 1; i <= mesh.GetNP(); i++) { meshsp.Elem(i) = 0; @@ -580,7 +580,7 @@ void STLSurfaceMeshing1 (STLGeometry & geom, } - ARRAY opensegsperface(mesh.GetNFD()); + Array opensegsperface(mesh.GetNFD()); for (i = 1; i <= mesh.GetNFD(); i++) opensegsperface.Elem(i) = 0; for (i = 1; i <= mesh.GetNOpenSegments(); i++) @@ -882,9 +882,9 @@ IsLineVertexOnChart (const Point3d & p1, const Point3d & p2, } void MeshingSTLSurface :: -GetChartBoundary (ARRAY & points, - ARRAY & points3d, - ARRAY & lines, double h) const +GetChartBoundary (Array & points, + Array & points3d, + Array & lines, double h) const { points.SetSize (0); points3d.SetSize (0); diff --git a/libsrc/stlgeom/meshstlsurface.hpp b/libsrc/stlgeom/meshstlsurface.hpp index c132b30c..a1c85f30 100644 --- a/libsrc/stlgeom/meshstlsurface.hpp +++ b/libsrc/stlgeom/meshstlsurface.hpp @@ -52,9 +52,9 @@ protected: virtual int IsLineVertexOnChart (const Point3d & p1, const Point3d & p2, int endpoint, const PointGeomInfo & gi); - virtual void GetChartBoundary (ARRAY & points, - ARRAY & poitns3d, - ARRAY & lines, double h) const; + virtual void GetChartBoundary (Array & points, + Array & poitns3d, + Array & lines, double h) const; /// virtual double CalcLocalH (const Point3d & p, double gh) const; diff --git a/libsrc/stlgeom/stlgeom.cpp b/libsrc/stlgeom/stlgeom.cpp index e376fa07..2e055c7d 100644 --- a/libsrc/stlgeom/stlgeom.cpp +++ b/libsrc/stlgeom/stlgeom.cpp @@ -264,7 +264,7 @@ void STLGeometry :: SmoothNormals() // find critical: - ARRAY critpairs; + Array critpairs; for (i = 1; i <= nt; i++) { const STLTriangle & trig = GetTriangle (i); @@ -317,7 +317,7 @@ void STLGeometry :: SmoothNormals() if (critpairs.Size()) { - ARRAY friends; + Array friends; double area1 = 0, area2 = 0; for (i = 1; i <= critpairs.Size(); i++) @@ -553,7 +553,7 @@ twoint STLGeometry :: GetNearestSelectedDefinedEdge() //Point3d pestimate = GetTriangle(GetSelectTrig()).center; int i, j, en; - ARRAY vic; + Array vic; GetVicinity(GetSelectTrig(),4,vic); @@ -672,7 +672,7 @@ void STLGeometry :: ImportEdges() int ne; fin >> ne; - ARRAY > eps; + Array > eps; int i; Point<3> p; @@ -686,18 +686,18 @@ void STLGeometry :: ImportEdges() AddEdges(eps); } -void STLGeometry :: AddEdges(const ARRAY >& eps) +void STLGeometry :: AddEdges(const Array >& eps) { int i; int ne = eps.Size()/2; - ARRAY epsi; + Array epsi; Box<3> bb = GetBoundingBox(); bb.Increase(1); Point3dTree ptree (bb.PMin(), bb.PMax()); - ARRAY pintersect; + Array pintersect; double gtol = GetBoundingBox().Diam()/1.E10; Point<3> p; @@ -765,9 +765,9 @@ void STLGeometry :: ImportExternalEdges(const char * filename) filter[flen] = 0; char buf[20]; - ARRAY importpoints; - ARRAY importlines; - ARRAY importpnums; + Array importpoints; + Array importlines; + Array importpnums; while (inf.good()) { @@ -853,7 +853,7 @@ void STLGeometry :: ImportExternalEdges(const char * filename) ebb.AddPoint (importpoints.Get(i)); PrintMessage(7,"edgep - bb: ", ebb.PMin(), " - ", ebb.PMax()); - ARRAY pintersect; + Array pintersect; double gtol = GetBoundingBox().Diam()/1.E6; @@ -1478,7 +1478,7 @@ void STLGeometry :: ShowSelectedTrigCoords() /* //testing!!!! - ARRAY trigs; + Array trigs; GetSortedTrianglesAroundPoint(GetTriangle(st).PNum(GetNodeOfSelTrig()),st,trigs); */ @@ -1569,11 +1569,11 @@ void STLGeometry :: NeighbourAnglesOfSelectedTrig() } } -void STLGeometry :: GetVicinity(int starttrig, int size, ARRAY& vic) +void STLGeometry :: GetVicinity(int starttrig, int size, Array& vic) { if (starttrig == 0 || starttrig > GetNT()) {return;} - ARRAY vicarray; + Array vicarray; vicarray.SetSize(GetNT()); int i; @@ -1586,9 +1586,9 @@ void STLGeometry :: GetVicinity(int starttrig, int size, ARRAY& vic) int j = 0,k; - ARRAY list1; + Array list1; list1.SetSize(0); - ARRAY list2; + Array list2; list2.SetSize(0); list1.Append(starttrig); @@ -1640,9 +1640,9 @@ void STLGeometry :: CalcVicinity(int starttrig) int j = 0,k; - ARRAY list1; + Array list1; list1.SetSize(0); - ARRAY list2; + Array list2; list2.SetSize(0); list1.Append(starttrig); @@ -1991,7 +1991,7 @@ double STLGeometry :: GetGeomAngle(int t1, int t2) } -void STLGeometry :: InitSTLGeometry(const ARRAY & readtrias) +void STLGeometry :: InitSTLGeometry(const Array & readtrias) { PrintFnStart("Init STL Geometry"); STLTopology::InitSTLGeometry(readtrias); @@ -2003,7 +2003,7 @@ void STLGeometry :: InitSTLGeometry(const ARRAY & readtrias) int np = GetNP(); PrintMessage(5,"NO points= ", GetNP()); normals.SetSize(GetNP()); - ARRAY normal_cnt(GetNP()); // counts number of added normals in a point + Array normal_cnt(GetNP()); // counts number of added normals in a point for (i = 1; i <= np; i++) { @@ -2076,7 +2076,7 @@ int STLGeometry :: CheckGeometryOverlapping() Point<3> pmax = geombox.PMax(); Box3dTree setree(pmin, pmax); - ARRAY inters; + Array inters; int oltrigs = 0; markedtrigs.SetSize(GetNT()); @@ -2157,14 +2157,14 @@ void STLGeometry :: InitSTLGeometry() points.SetSize(0); normals.SetSize(0); - ARRAY normal_cnt; // counts number of added normals in a point + Array normal_cnt; // counts number of added normals in a point Box3d bb (GetBoundingBox().PMin() + Vec3d (-1,-1,-1), GetBoundingBox().PMax() + Vec3d (1, 1, 1)); Point3dTree pointtree (bb.PMin(), bb.PMax()); - ARRAY pintersect; + Array pintersect; double gtol = GetBoundingBox().CalcDiam()/geometry_tol_fact; @@ -2604,8 +2604,8 @@ void STLGeometry :: AddFaceEdges() //für Kugel eine STLLine hinzufügen (Vorteil: verfeinerbar, unabhängig von Auflösung der Geometrie!!!): //Grenze von 1. gefundener chart - ARRAY edgecnt; - ARRAY chartindex; + Array edgecnt; + Array chartindex; edgecnt.SetSize(GetNOFaces()); chartindex.SetSize(GetNOFaces()); @@ -2674,7 +2674,7 @@ void STLGeometry :: LinkEdges() int rev(0); //indicates, that edge is inserted reverse //worked edges - ARRAY we(GetNE()); + Array we(GetNE()); //setlineendpoints; wenn 180°, dann keine endpunkte //nur punkte mit 2 edges kommen in frage, da bei mehr oder weniger punkten ohnehin ein meshpoint hinkommt @@ -2865,7 +2865,7 @@ int STLGeometry :: GetNOBodys() int i, k, nnt; int bodycnt = 0; - ARRAY bodynum(GetNT()); + Array bodynum(GetNT()); for (i = 1; i <= GetNT(); i++) bodynum.Elem(i)=0; @@ -2882,8 +2882,8 @@ int STLGeometry :: GetNOBodys() } } //add all triangles around starttriangle, which is reachable without going over an edge - ARRAY todolist; - ARRAY nextlist; + Array todolist; + Array nextlist; bodycnt++; markedtrigs1++; bodynum.Elem(starttrig) = bodycnt; @@ -2944,8 +2944,8 @@ void STLGeometry :: CalcFaceNums() } } //add all triangles around starttriangle, which is reachable without going over an edge - ARRAY todolist; - ARRAY nextlist; + Array todolist; + Array nextlist; facecnt++; markedtrigs1++; GetTriangle(starttrig).SetFaceNum(facecnt); @@ -3070,7 +3070,7 @@ int STLGeometry :: IsSmoothEdge (int pi1, int pi2) const //function is not used now -int IsInArray(int n, const ARRAY& ia) +int IsInArray(int n, const Array& ia) { int i; for (i = 1; i <= ia.Size(); i++) @@ -3132,8 +3132,8 @@ void STLGeometry :: AddConeAndSpiralEdges() cnt = 0; int edgecnt = 0; - ARRAY trigsaroundp; - ARRAY chartpointchecked; //gets number of chart, if in this chart already checked + Array trigsaroundp; + Array chartpointchecked; //gets number of chart, if in this chart already checked chartpointchecked.SetSize(GetNP()); for (i = 1; i <= GetNP(); i++) @@ -3356,7 +3356,7 @@ void STLGeometry :: AddConeAndSpiralEdges() } //get trigs at a point, started with starttrig, then every left -void STLGeometry :: GetSortedTrianglesAroundPoint(int p, int starttrig, ARRAY& trigs) +void STLGeometry :: GetSortedTrianglesAroundPoint(int p, int starttrig, Array& trigs) { int acttrig = starttrig; trigs.SetAllocSize(trigsperpoint.EntrySize(p)); diff --git a/libsrc/stlgeom/stlgeom.hpp b/libsrc/stlgeom/stlgeom.hpp index 198804aa..9f9cc857 100644 --- a/libsrc/stlgeom/stlgeom.hpp +++ b/libsrc/stlgeom/stlgeom.hpp @@ -28,8 +28,8 @@ namespace netgen { - extern int IsInArray(int n, const ARRAY& ia); - extern int AddIfNotExists(ARRAY& list, int x); + extern int IsInArray(int n, const Array& ia); + extern int AddIfNotExists(Array& list, int x); #include "stltopology.hpp" @@ -44,7 +44,7 @@ namespace netgen class STLEdgeDataList { - ARRAY storedstatus; + Array storedstatus; STLTopology & geom; public: @@ -76,8 +76,8 @@ namespace netgen void Write(ofstream& of) const; void Read(ifstream& ifs); - void BuildLineWithEdge(int ep1, int ep2, ARRAY& line); - void BuildClusterWithEdge(int ep1, int ep2, ARRAY& line); + void BuildLineWithEdge(int ep1, int ep2, Array& line); + void BuildClusterWithEdge(int ep1, int ep2, Array& line); int GetNEPPStat(int p, int status) const; int GetNConfCandEPP(int p) const; @@ -91,20 +91,20 @@ namespace netgen class STLGeometry : public STLTopology { // edges to be meshed: - ARRAY edges; + Array edges; //edges per point TABLE edgesperpoint; // line: a connection of edges - ARRAY lines; - ARRAY lineendpoints; //per geometrypoint, 1 = is endpoint; 0 = no endpoint, + Array lines; + Array lineendpoints; //per geometrypoint, 1 = is endpoint; 0 = no endpoint, - ARRAY normals; //normals belong to points! + Array normals; //normals belong to points! - ARRAY externaledges; + Array externaledges; int undoexternaledges; - ARRAY storedexternaledges; + Array storedexternaledges; STLEdgeDataList * edgedata; // STLEdgeDataList edgedata_store; @@ -117,27 +117,27 @@ namespace netgen int facecnt; //meshpoint is only set, if an edge is at this point!!! - ARRAY vicinity; //is one, if a triangle belongs to vicinity (eg. of selecttrig) - ARRAY markedtrigs; //is one, if a triangle belongs to marked triangles (calcdirtystrigs) - ARRAY markedsegs; //every pointpair is a segment!!! - ARRAY selectedmultiedge; + Array vicinity; //is one, if a triangle belongs to vicinity (eg. of selecttrig) + Array markedtrigs; //is one, if a triangle belongs to marked triangles (calcdirtystrigs) + Array markedsegs; //every pointpair is a segment!!! + Array selectedmultiedge; //spiralpoints: - ARRAY spiralpoints; + Array spiralpoints; // - ARRAY atlas; + Array atlas; //marks all already charted trigs with chartnumber - ARRAY chartmark; + Array chartmark; //outerchartspertrig, ascending sorted TABLE outerchartspertrig; //for meshing and project: - ARRAY meshcharttrigs; //per trig: 1=belong to chart, 0 not + Array meshcharttrigs; //per trig: 1=belong to chart, 0 not int meshchart; - ARRAY ha_points; // help array, np long, filled with 0 + Array ha_points; // help array, np long, filled with 0 // sharp geometric edges not declared as edges @@ -162,8 +162,8 @@ namespace netgen //int selecttrig, nodeofseltrig; //only for testing; - ARRAY meshlines; - ARRAY meshpoints; + Array meshlines; + Array meshpoints; public: STLGeometry(); @@ -191,14 +191,14 @@ namespace netgen //void ClearSelectedMultiEdge() {selectedmultiedge.SetSize(0);} //void AddSelectedMultiEdge(twoint ep) {selectedmultiedge.Append(ep);} //int SelectedMultiEdgeSize() {return selectedmultiedge.Size();} - const ARRAY& SelectedMultiEdge() {return selectedmultiedge;} + const Array& SelectedMultiEdge() {return selectedmultiedge;} twoint GetNearestSelectedDefinedEdge(); void BuildSelectedMultiEdge(twoint ep); void BuildSelectedEdge(twoint ep); void BuildSelectedCluster(twoint ep); void ImportEdges(); - void AddEdges(const ARRAY >& eps); + void AddEdges(const Array >& eps); void ExportEdges(); void LoadEdgeData(const char* file); void SaveEdgeData(const char* file); @@ -267,7 +267,7 @@ namespace netgen } int GetNMarkedSegs() {return markedsegs.Size()/2;} void CalcVicinity(int starttrig); - void GetVicinity(int starttrig, int size, ARRAY& vic); + void GetVicinity(int starttrig, int size, Array& vic); int Vicinity(int trig) const; @@ -310,7 +310,7 @@ namespace netgen /// ///ReadTriangle->STLTriangle, initialise some important variables, always after load!!! - virtual void InitSTLGeometry (const ARRAY & readtrigs); + virtual void InitSTLGeometry (const Array & readtrigs); virtual void TopologyChanged(); //do some things, if topology changed! int CheckGeometryOverlapping(); @@ -347,14 +347,14 @@ namespace netgen void AddConeAndSpiralEdges(); void AddFaceEdges(); //each face should have at least one starting edge (outherwise it won't be meshed) - void GetDirtyChartTrigs(int chartnum, STLChart& chart, const ARRAY& outercharttrigs, - ARRAY& chartpointchecked, ARRAY& dirtytrigs); + void GetDirtyChartTrigs(int chartnum, STLChart& chart, const Array& outercharttrigs, + Array& chartpointchecked, Array& dirtytrigs); void ClearSpiralPoints(); void SetSpiralPoint(int pn) {spiralpoints.Elem(pn) = 1;}; int GetSpiralPoint(int pn) const {return spiralpoints.Get(pn);}; - void GetSortedTrianglesAroundPoint(int p, int starttrig, ARRAY& trigs); + void GetSortedTrianglesAroundPoint(int p, int starttrig, Array& trigs); // smooth edges: sharp geometric edges not declared as edges void BuildSmoothEdges (); @@ -383,13 +383,13 @@ namespace netgen STLChart& GetChart(int nr) {return *(atlas.Get(nr));}; int AtlasMade() const; - void GetInnerChartLimes(ARRAY& limes, int chartnum); + void GetInnerChartLimes(Array& limes, int chartnum); //FOR MESHING int GetMeshChartNr () { return meshchart; } - void GetMeshChartBoundary (ARRAY & points, - ARRAY & points3d, - ARRAY & lines, double h); + void GetMeshChartBoundary (Array & points, + Array & points3d, + Array & lines, double h); Point<3> PointBetween(const Point<3> & p1, int t1, const Point<3> & p2, int t2); @@ -432,7 +432,7 @@ namespace netgen void RestrictLocalH(class Mesh & mesh, double gh); void RestrictLocalHCurv(class Mesh & mesh, double gh); - void RestrictHChartDistOneChart(int chartnum, ARRAY& acttrigs, class Mesh & mesh, + void RestrictHChartDistOneChart(int chartnum, Array& acttrigs, class Mesh & mesh, double gh, double fact, double minh); friend class MeshingSTLSurface; diff --git a/libsrc/stlgeom/stlgeomchart.cpp b/libsrc/stlgeom/stlgeomchart.cpp index d075067d..105ba8c6 100644 --- a/libsrc/stlgeom/stlgeomchart.cpp +++ b/libsrc/stlgeom/stlgeomchart.cpp @@ -56,16 +56,16 @@ void STLGeometry :: MakeAtlas(Mesh & mesh) double sinchartangle = sin(chartangle); double sinouterchartangle = sin(outerchartangle); - ARRAY outermark(GetNT()); //marks all trigs form actual outer region - ARRAY outertested(GetNT()); //marks tested trigs for outer region - ARRAY pointstochart(GetNP()); //point in chart becomes chartnum - ARRAY innerpointstochart(GetNP()); //point in chart becomes chartnum - ARRAY chartpoints; //point in chart becomes chartnum - ARRAY innerchartpoints; - ARRAY dirtycharttrigs; - ARRAY chartpointchecked; + Array outermark(GetNT()); //marks all trigs form actual outer region + Array outertested(GetNT()); //marks tested trigs for outer region + Array pointstochart(GetNP()); //point in chart becomes chartnum + Array innerpointstochart(GetNP()); //point in chart becomes chartnum + Array chartpoints; //point in chart becomes chartnum + Array innerchartpoints; + Array dirtycharttrigs; + Array chartpointchecked; - ARRAY chartdistacttrigs; //outercharttrigs + Array chartdistacttrigs; //outercharttrigs chartdistacttrigs.SetSize(GetNT()); for (i = 1; i <= GetNT(); i++) { @@ -625,7 +625,7 @@ int STLGeometry :: AtlasMade() const //return 1 if not exists -int AddIfNotExists(ARRAY& list, int x) +int AddIfNotExists(Array& list, int x) { int i; for (i = 1; i <= list.Size(); i++) @@ -636,7 +636,7 @@ int AddIfNotExists(ARRAY& list, int x) return 1; } -void STLGeometry :: GetInnerChartLimes(ARRAY& limes, int chartnum) +void STLGeometry :: GetInnerChartLimes(Array& limes, int chartnum) { int j, k; @@ -697,9 +697,9 @@ void STLGeometry :: GetInnerChartLimes(ARRAY& limes, int chartnum) void STLGeometry :: GetDirtyChartTrigs(int chartnum, STLChart& chart, - const ARRAY& outercharttrigs, - ARRAY& chartpointchecked, - ARRAY& dirtytrigs) + const Array& outercharttrigs, + Array& chartpointchecked, + Array& dirtytrigs) { dirtytrigs.SetSize(0); int j,k,n; @@ -730,7 +730,7 @@ void STLGeometry :: GetDirtyChartTrigs(int chartnum, STLChart& chart, cnt = 0; int ap1, ap2, tn1, tn2, l, problem, pn; - ARRAY trigsaroundp; + Array trigsaroundp; for (j = chart.GetNChartT(); j >= 1; j--) { diff --git a/libsrc/stlgeom/stlgeommesh.cpp b/libsrc/stlgeom/stlgeommesh.cpp index 06aca8a8..641884d7 100644 --- a/libsrc/stlgeom/stlgeommesh.cpp +++ b/libsrc/stlgeom/stlgeommesh.cpp @@ -12,7 +12,7 @@ namespace netgen { -int EdgeUsed(int p1, int p2, ARRAY& edges, INDEX_2_HASHTABLE& hashtab) +int EdgeUsed(int p1, int p2, Array& edges, INDEX_2_HASHTABLE& hashtab) { if (p1 > p2) {swap (p1,p2);} @@ -41,9 +41,9 @@ Point<3> STLGeometry :: PointBetween(const Point<3> & ap1, int t1, TABLE edgepointorigines; TABLE edgepointoriginps; - ARRAY edgetrigs; - ARRAY edgepointnums; - ARRAY edgetriglocinds; + Array edgetrigs; + Array edgepointnums; + Array edgetriglocinds; int size = 3*GetNT(); INDEX_2_HASHTABLE hashtab(size); @@ -59,8 +59,8 @@ Point<3> STLGeometry :: PointBetween(const Point<3> & ap1, int t1, edgepointnums.SetSize(size); edgetriglocinds.SetSize(size); - ARRAY edgelist1; - ARRAY edgelist2; + Array edgelist1; + Array edgelist2; edgelist1.SetSize(0); edgelist2.SetSize(0); @@ -238,7 +238,7 @@ Point<3> STLGeometry :: PointBetween(const Point<3> & ap1, int t1, if (!endpointorigine) {PrintSysError("No connection found!");} - ARRAY plist; + Array plist; plist.Append(ap2); int laste = endpointorigine; @@ -302,9 +302,9 @@ void STLGeometry :: PrepareSurfaceMeshing() {meshcharttrigs.Elem(i) = 0;} } -void STLGeometry::GetMeshChartBoundary (ARRAY & apoints, - ARRAY & points3d, - ARRAY & alines, double h) +void STLGeometry::GetMeshChartBoundary (Array & apoints, + Array & points3d, + Array & alines, double h) { int i, j; twoint seg, newseg; @@ -406,7 +406,7 @@ void STLGeometry :: SelectChartOfPoint (const Point<3> & p) { int i, ii; - ARRAY trigsinbox; + Array trigsinbox; Box<3> box(p,p); box.Increase (1e-6); @@ -465,7 +465,7 @@ void STLGeometry :: ToPlane (const Point<3> & locpoint, int * trigs, else { - ARRAY trigsinbox; + Array trigsinbox; if (!geomsearchtreeon) { @@ -476,7 +476,7 @@ void STLGeometry :: ToPlane (const Point<3> & locpoint, int * trigs, } else { - ARRAY trigsinbox2; + Array trigsinbox2; Box<3> box(locpoint, locpoint); box.Increase (range); GetTrianglesInBox (box, trigsinbox2); @@ -740,7 +740,7 @@ void STLGeometry :: RestrictLocalHCurv(class Mesh & mesh, double gh) if (stlparam.resthatlasenable) { - ARRAY minh; //minimales h pro punkt + Array minh; //minimales h pro punkt minh.SetSize(GetNP()); for (i = 1; i <= GetNP(); i++) { @@ -844,7 +844,7 @@ void STLGeometry :: RestrictLocalH(class Mesh & mesh, double gh) { PushStatusF("Restrict H due to surface curvature"); - ARRAY minh; //minimales h pro punkt + Array minh; //minimales h pro punkt minh.SetSize(GetNP()); for (i = 1; i <= GetNP(); i++) { @@ -936,8 +936,8 @@ void STLGeometry :: RestrictLocalH(class Mesh & mesh, double gh) Box3dTree* lsearchtree = new Box3dTree (GetBoundingBox().PMin() - Vec3d(1,1,1), GetBoundingBox().PMax() + Vec3d(1,1,1)); - ARRAY pmins(GetNLines()); - ARRAY pmaxs(GetNLines()); + Array pmins(GetNLines()); + Array pmaxs(GetNLines()); double maxhline; for (i = 1; i <= GetNLines(); i++) @@ -961,7 +961,7 @@ void STLGeometry :: RestrictLocalH(class Mesh & mesh, double gh) pmaxs.Elem(i) = box.PMax(); } - ARRAY linenums; + Array linenums; int k2; for (i = 1; i <= GetNLines(); i++) @@ -1071,7 +1071,7 @@ void STLGeometry :: RestrictLocalH(class Mesh & mesh, double gh) //berechne minimale distanz von chart zu einem nicht-outerchart-punkt in jedem randpunkt einer chart - ARRAY acttrigs; //outercharttrigs + Array acttrigs; //outercharttrigs acttrigs.SetSize(GetNT()); for (i = 1; i <= GetNT(); i++) { @@ -1121,7 +1121,7 @@ void STLGeometry :: RestrictLocalH(class Mesh & mesh, double gh) } } -void STLGeometry :: RestrictHChartDistOneChart(int chartnum, ARRAY& acttrigs, +void STLGeometry :: RestrictHChartDistOneChart(int chartnum, Array& acttrigs, class Mesh & mesh, double gh, double fact, double minh) { int i = chartnum; @@ -1133,16 +1133,16 @@ void STLGeometry :: RestrictHChartDistOneChart(int chartnum, ARRAY& acttrig double f1,f2; // mincalch = 1E10; //maxcalch = -1E10; - ARRAY limes1; - ARRAY limes2; + Array limes1; + Array limes2; - ARRAY plimes1; - ARRAY plimes2; + Array plimes1; + Array plimes2; - ARRAY plimes1trigs; //check from wich trig the points come - ARRAY plimes2trigs; + Array plimes1trigs; //check from wich trig the points come + Array plimes2trigs; - ARRAY plimes1origin; //either the original pointnumber or zero, if new point + Array plimes1origin; //either the original pointnumber or zero, if new point int divisions = 10; @@ -1260,7 +1260,7 @@ void STLGeometry :: RestrictHChartDistOneChart(int chartnum, ARRAY& acttrig Point3dTree stree(bbox.PMin(), bbox.PMax()); for (j = 1; j <= plimes2.Size(); j++) stree.Insert (plimes2.Get(j), j); - ARRAY foundpts; + Array foundpts; for (j = 1; j <= plimes1.Size(); j++) { diff --git a/libsrc/stlgeom/stlline.cpp b/libsrc/stlgeom/stlline.cpp index f141fda3..15226eda 100644 --- a/libsrc/stlgeom/stlline.cpp +++ b/libsrc/stlgeom/stlline.cpp @@ -197,7 +197,7 @@ int STLEdgeDataList :: GetNConfCandEPP(int p) const } -void STLEdgeDataList :: BuildLineWithEdge(int ep1, int ep2, ARRAY& line) +void STLEdgeDataList :: BuildLineWithEdge(int ep1, int ep2, Array& line) { int status = Get(GetEdgeNum(ep1,ep2)).GetStatus(); @@ -424,7 +424,7 @@ int STLEdgeDataList :: GetNConfCandEPP(int p) const } -void STLEdgeDataList :: BuildLineWithEdge(int ep1, int ep2, ARRAY& line) +void STLEdgeDataList :: BuildLineWithEdge(int ep1, int ep2, Array& line) { int status = Get(GetEdgeNum(ep1,ep2)).GetStatus(); @@ -473,7 +473,7 @@ void STLEdgeDataList :: BuildLineWithEdge(int ep1, int ep2, ARRAY& line) } -int Exists(int p1, int p2, const ARRAY& line) +int Exists(int p1, int p2, const Array& line) { int i; for (i = 1; i <= line.Size(); i++) @@ -484,7 +484,7 @@ int Exists(int p1, int p2, const ARRAY& line) return 0; } -void STLEdgeDataList :: BuildClusterWithEdge(int ep1, int ep2, ARRAY& line) +void STLEdgeDataList :: BuildClusterWithEdge(int ep1, int ep2, Array& line) { int status = Get(GetEdgeNum(ep1,ep2)).GetStatus(); @@ -580,12 +580,12 @@ int STLLine :: GetRightTrig(int nr) const return righttrigs.Get(nr); }; -double STLLine :: GetSegLen(const ARRAY >& ap, int nr) const +double STLLine :: GetSegLen(const Array >& ap, int nr) const { return Dist(ap.Get(PNum(nr)),ap.Get(PNum(nr+1))); } -double STLLine :: GetLength(const ARRAY >& ap) const +double STLLine :: GetLength(const Array >& ap) const { double len = 0; for (int i = 2; i <= pts.Size(); i++) @@ -595,7 +595,7 @@ double STLLine :: GetLength(const ARRAY >& ap) const return len; } -void STLLine :: GetBoundingBox (const ARRAY > & ap, Box<3> & box) const +void STLLine :: GetBoundingBox (const Array > & ap, Box<3> & box) const { box.Set (ap.Get (pts[0])); for (int i = 1; i < pts.Size(); i++) @@ -605,7 +605,7 @@ void STLLine :: GetBoundingBox (const ARRAY > & ap, Box<3> & box) const Point<3> STLLine :: -GetPointInDist(const ARRAY >& ap, double dist, int& index) const +GetPointInDist(const Array >& ap, double dist, int& index) const { if (dist <= 0) { @@ -643,8 +643,8 @@ double GetH(const Point3d& p, double x) return stlgh;//+0.5)*(x+0.5); } */ -STLLine* STLLine :: Mesh(const ARRAY >& ap, - ARRAY& mp, double ghi, +STLLine* STLLine :: Mesh(const Array >& ap, + Array& mp, double ghi, class Mesh& mesh) const { STLLine* line = new STLLine(geometry); @@ -672,8 +672,8 @@ STLLine* STLLine :: Mesh(const ARRAY >& ap, int nph = 10+int(maxseglen / minh); //anzahl der integralauswertungen pro segment - ARRAY inthi(GetNS()*nph); - ARRAY curvelen(GetNS()*nph); + Array inthi(GetNS()*nph); + Array curvelen(GetNS()*nph); for (i = 1; i <= GetNS(); i++) diff --git a/libsrc/stlgeom/stlline.hpp b/libsrc/stlgeom/stlline.hpp index 70393ca0..06ce5857 100644 --- a/libsrc/stlgeom/stlline.hpp +++ b/libsrc/stlgeom/stlline.hpp @@ -79,7 +79,7 @@ class STLEdgeDataList { private: INDEX_2_HASHTABLE hashtab; - ARRAY edgedata; + Array edgedata; TABLE edgesperpoint; public: @@ -118,7 +118,7 @@ public: void Write(ofstream& of) const; void Read(ifstream& ifs); - void BuildLineWithEdge(int ep1, int ep2, ARRAY& line); + void BuildLineWithEdge(int ep1, int ep2, Array& line); int GetNEPPStat(int p, int status) const; int GetNConfCandEPP(int p) const; @@ -145,10 +145,10 @@ class STLLine { private: const STLGeometry * geometry; - ARRAY pts; - ARRAY lefttrigs; - ARRAY righttrigs; - ARRAY dists; + Array pts; + Array lefttrigs; + Array righttrigs; + Array dists; int split; public: @@ -158,11 +158,11 @@ public: int NP() const {return pts.Size();} int GetNS() const; void GetSeg(int nr, int& p1, int& p2) const; - double GetSegLen(const ARRAY >& ap, int nr) const; + double GetSegLen(const Array >& ap, int nr) const; int GetLeftTrig(int nr) const; int GetRightTrig(int nr) const; double GetDist(int nr) const { return dists.Get(nr);}; - void GetBoundingBox (const ARRAY > & ap, Box<3> & box) const; + void GetBoundingBox (const Array > & ap, Box<3> & box) const; void AddLeftTrig(int nr) {lefttrigs.Append(nr);} void AddRightTrig(int nr) {righttrigs.Append(nr);} @@ -170,15 +170,15 @@ public: int StartP() const {return pts.Get(1);} int EndP() const {return pts.Get(pts.Size());} - double GetLength(const ARRAY >& ap) const; + double GetLength(const Array >& ap) const; //suche punkt in entfernung (in linienkoordinaten) dist //in index ist letzter punkt VOR dist (d.h. max pts.Size()-1) - Point<3> GetPointInDist(const ARRAY >& ap, double dist, int& index) const; + Point<3> GetPointInDist(const Array >& ap, double dist, int& index) const; //return a meshed polyline - STLLine* Mesh(const ARRAY >& ap, - ARRAY& mp, double ghi, + STLLine* Mesh(const Array >& ap, + Array& mp, double ghi, class Mesh& mesh) const; void DoSplit() {split = 1;} diff --git a/libsrc/stlgeom/stltool.cpp b/libsrc/stlgeom/stltool.cpp index 921fddd5..432a621e 100644 --- a/libsrc/stlgeom/stltool.cpp +++ b/libsrc/stlgeom/stltool.cpp @@ -13,7 +13,7 @@ namespace netgen //add a point into a pointlist, return pointnumber -int AddPointIfNotExists(ARRAY& ap, const Point3d& p, double eps) +int AddPointIfNotExists(Array& ap, const Point3d& p, double eps) { int i; for (i = 1; i <= ap.Size(); i++) @@ -376,7 +376,7 @@ int STLTriangle :: GetNeighbourPointsAndOpposite(const STLTriangle& t, int& p1, return 0; } -Vec<3> STLTriangle :: GeomNormal(const ARRAY >& ap) const +Vec<3> STLTriangle :: GeomNormal(const Array >& ap) const { const Point<3> & p1 = ap.Get(PNum(1)); const Point<3> & p2 = ap.Get(PNum(2)); @@ -409,13 +409,13 @@ void STLTriangle :: ChangeOrientation() -double STLTriangle :: Area(const ARRAY >& ap) const +double STLTriangle :: Area(const Array >& ap) const { return 0.5 * Cross(ap.Get(PNum(2))-ap.Get(PNum(1)), ap.Get(PNum(3))-ap.Get(PNum(1))).Length(); } -double STLTriangle :: MinHeight(const ARRAY >& ap) const +double STLTriangle :: MinHeight(const Array >& ap) const { double ml = MaxLength(ap); if (ml != 0) {return 2.*Area(ap)/ml;} @@ -423,14 +423,14 @@ double STLTriangle :: MinHeight(const ARRAY >& ap) const return 0; } -double STLTriangle :: MaxLength(const ARRAY >& ap) const +double STLTriangle :: MaxLength(const Array >& ap) const { return max3(Dist(ap.Get(PNum(1)),ap.Get(PNum(2))), Dist(ap.Get(PNum(2)),ap.Get(PNum(3))), Dist(ap.Get(PNum(3)),ap.Get(PNum(1)))); } -void STLTriangle :: ProjectInPlain(const ARRAY >& ap, +void STLTriangle :: ProjectInPlain(const Array >& ap, const Vec<3> & n, Point<3> & pp) const { const Point<3> & p1 = ap.Get(PNum(1)); @@ -457,7 +457,7 @@ void STLTriangle :: ProjectInPlain(const ARRAY >& ap, } -int STLTriangle :: ProjectInPlain (const ARRAY >& ap, +int STLTriangle :: ProjectInPlain (const Array >& ap, const Vec<3> & nproj, Point<3> & pp, Vec<3> & lam) const { @@ -495,7 +495,7 @@ int STLTriangle :: ProjectInPlain (const ARRAY >& ap, -void STLTriangle :: ProjectInPlain(const ARRAY >& ap, +void STLTriangle :: ProjectInPlain(const Array >& ap, Point<3> & pp) const { const Point<3> & p1 = ap.Get(PNum(1)); @@ -515,7 +515,7 @@ void STLTriangle :: ProjectInPlain(const ARRAY >& ap, pp = pp + (nfact) * nt; } -int STLTriangle :: PointInside(const ARRAY > & ap, +int STLTriangle :: PointInside(const Array > & ap, const Point<3> & pp) const { const Point<3> & p1 = ap.Get(PNum(1)); @@ -559,7 +559,7 @@ int STLTriangle :: PointInside(const ARRAY > & ap, return 0; } -double STLTriangle :: GetNearestPoint(const ARRAY >& ap, +double STLTriangle :: GetNearestPoint(const Array >& ap, Point<3> & p3d) const { Point<3> p = p3d; @@ -638,10 +638,10 @@ STLTopEdge :: STLTopEdge (int p1, int p2, int trig1, int trig2) STLChart :: STLChart(STLGeometry * ageometry) { - charttrigs = new ARRAY (0,0); - outertrigs = new ARRAY (0,0); - ilimit = new ARRAY (0,0); - olimit = new ARRAY (0,0); + charttrigs = new Array (0,0); + outertrigs = new Array (0,0); + ilimit = new Array (0,0); + olimit = new Array (0,0); geometry = ageometry; @@ -706,7 +706,7 @@ int STLChart :: IsInWholeChart(int nr) const void STLChart :: GetTrianglesInBox (const Point3d & pmin, const Point3d & pmax, - ARRAY & trias) const + Array & trias) const { if (geomsearchtreeon) {PrintMessage(5,"geomsearchtreeon is set!!!");} @@ -740,7 +740,7 @@ void STLChart :: GetTrianglesInBox (const Point3d & pmin, } //trigs may contain the same triangle double -void STLChart :: MoveToOuterChart(const ARRAY& trigs) +void STLChart :: MoveToOuterChart(const Array& trigs) { if (!trigs.Size()) {return;} int i; @@ -754,7 +754,7 @@ void STLChart :: MoveToOuterChart(const ARRAY& trigs) } //trigs may contain the same triangle double -void STLChart :: DelChartTrigs(const ARRAY& trigs) +void STLChart :: DelChartTrigs(const Array& trigs) { if (!trigs.Size()) {return;} @@ -832,7 +832,7 @@ Point<2> STLChart :: Project2d (const Point<3> & p3d) const public: */ STLBoundarySeg :: -STLBoundarySeg (int ai1, int ai2, const ARRAY > & points, +STLBoundarySeg (int ai1, int ai2, const Array > & points, const STLChart * chart) { i1 = ai1; @@ -930,7 +930,7 @@ void STLBoundary ::AddTriangle(const STLTriangle & t) } int STLBoundary :: TestSeg(const Point<3>& p1, const Point<3> & p2, const Vec<3> & sn, - double sinchartangle, int divisions, ARRAY >& points, double eps) + double sinchartangle, int divisions, Array >& points, double eps) { if (usechartnormal) @@ -939,7 +939,7 @@ int STLBoundary :: TestSeg(const Point<3>& p1, const Point<3> & p2, const Vec<3> // for statistics { int i; - static ARRAY cntclass; + static Array cntclass; static int cnt = 0; static int cnti = 0, cnto = 0; static long int cntsegs = 0; diff --git a/libsrc/stlgeom/stltool.hpp b/libsrc/stlgeom/stltool.hpp index 278a7ce4..ca3d6e2f 100644 --- a/libsrc/stlgeom/stltool.hpp +++ b/libsrc/stlgeom/stltool.hpp @@ -18,7 +18,7 @@ extern int usechartnormal; extern int chartdebug; extern int geomsearchtreeon; -extern int AddPointIfNotExists(ARRAY& ap, const Point3d& p, double eps = 1e-8); +extern int AddPointIfNotExists(Array& ap, const Point3d& p, double eps = 1e-8); //get distance from line lp1-lp2 to point p extern double GetDistFromLine(const Point<3>& lp1, const Point<3>& lp2, Point<3>& p); extern double GetDistFromInfiniteLine(const Point<3>& lp1, const Point<3>& lp2, const Point<3>& p); @@ -35,7 +35,7 @@ extern void FIOReadStringE(istream& ios, char* str, int len); extern void FIOWriteString(ostream& ios, char* str, int len); -typedef ARRAY * ARRAYINTPTR; +typedef Array * ArrayINTPTR; class STLGeometry; @@ -43,12 +43,12 @@ class STLChart { private: STLGeometry * geometry; - ARRAY* charttrigs; // trigs which only belong to this chart - ARRAY* outertrigs; // trigs which belong to other charts + Array* charttrigs; // trigs which only belong to this chart + Array* outertrigs; // trigs which belong to other charts Box3dTree * searchtree; // ADT containing outer trigs - ARRAY* olimit; //outer limit of outer chart - ARRAY* ilimit; //outer limit of inner chart + Array* olimit; //outer limit of outer chart + Array* ilimit; //outer limit of inner chart public: @@ -74,7 +74,7 @@ public: void GetTrianglesInBox (const Point3d & pmin, const Point3d & pmax, - ARRAY & trias) const; + Array & trias) const; void AddOLimit(twoint l) {olimit->Append(l);} void AddILimit(twoint l) {ilimit->Append(l);} @@ -88,8 +88,8 @@ public: twoint GetILimit(int i) const {return ilimit->Get(i);} //move triangles trigs (local chart-trig numbers) to outer chart - void MoveToOuterChart(const ARRAY& trigs); - void DelChartTrigs(const ARRAY& trigs); + void MoveToOuterChart(const Array& trigs); + void DelChartTrigs(const Array& trigs); // define local coordinate system, JS: @@ -115,7 +115,7 @@ class STLBoundarySeg int smoothedge; public: STLBoundarySeg () { ; } - STLBoundarySeg (int ai1, int ai2, const ARRAY > & points, + STLBoundarySeg (int ai1, int ai2, const Array > & points, const STLChart * achart); int operator== (const STLBoundarySeg & s2) const @@ -143,7 +143,7 @@ class STLBoundary private: STLGeometry * geometry; const STLChart * chart; - ARRAY boundary; + Array boundary; public: STLBoundary(STLGeometry * ageometry); // : boundary() {}; @@ -160,7 +160,7 @@ public: const STLBoundarySeg & GetSegment(int i) {return boundary.Get(i);} int TestSeg(const Point<3> & p1, const Point<3> & p2, const Vec<3> & sn, - double sinchartangle, int divisions, ARRAY >& points, + double sinchartangle, int divisions, Array >& points, double eps); int TestSegChartNV(const Point3d& p1, const Point3d& p2, const Vec3d& sn); diff --git a/libsrc/stlgeom/stltopology.cpp b/libsrc/stlgeom/stltopology.cpp index 53deb52e..e8049eee 100644 --- a/libsrc/stlgeom/stltopology.cpp +++ b/libsrc/stlgeom/stltopology.cpp @@ -30,7 +30,7 @@ STLTopology :: ~STLTopology() STLGeometry * STLTopology :: LoadBinary (istream & ist) { STLGeometry * geom = new STLGeometry(); - ARRAY readtrigs; + Array readtrigs; PrintMessage(1,"Read STL binary file"); @@ -190,7 +190,7 @@ STLGeometry * STLTopology :: LoadNaomi (istream & ist) { int i; STLGeometry * geom = new STLGeometry(); - ARRAY readtrigs; + Array readtrigs; PrintFnStart("read NAOMI file format"); @@ -203,7 +203,7 @@ STLGeometry * STLTopology :: LoadNaomi (istream & ist) int noface, novertex; - ARRAY > readpoints; + Array > readpoints; ist >> buf; if (strcmp (buf, "NODES") == 0) @@ -340,7 +340,7 @@ STLGeometry * STLTopology ::Load (istream & ist) size_t i; STLGeometry * geom = new STLGeometry(); - ARRAY readtrigs; + Array readtrigs; char buf[100]; Point<3> pts[3]; @@ -433,7 +433,7 @@ STLGeometry * STLTopology ::Load (istream & ist) -void STLTopology :: InitSTLGeometry(const ARRAY & readtrigs) +void STLTopology :: InitSTLGeometry(const Array & readtrigs) { int i, k; @@ -464,7 +464,7 @@ void STLTopology :: InitSTLGeometry(const ARRAY & readtrigs) - ARRAY pintersect; + Array pintersect; pointtol = boundingbox.Diam() * stldoctor.geom_tol_fact; PrintMessage(5,"point tolerance = ", pointtol); @@ -523,7 +523,7 @@ int STLTopology :: GetPointNum (const Point<3> & p) Point<3> pmin = p - Vec<3> (pointtol, pointtol, pointtol); Point<3> pmax = p + Vec<3> (pointtol, pointtol, pointtol); - ARRAY pintersect; + Array pintersect; pointtree->GetIntersecting (pmin, pmax, pintersect); if (pintersect.Size() == 1) @@ -842,7 +842,7 @@ void STLTopology :: GetTrianglesInBox (/* const Point<3> & pmax, */ const Box<3> & box, - ARRAY & btrias) const + Array & btrias) const { if (searchtree) @@ -993,7 +993,7 @@ void STLTopology :: OrientAfterTrig (int trig) if (starttrig >= 1 && starttrig <= GetNT()) { - ARRAY oriented; + Array oriented; oriented.SetSize(GetNT()); int i; for (i = 1; i <= oriented.Size(); i++) @@ -1005,9 +1005,9 @@ void STLTopology :: OrientAfterTrig (int trig) int k; - ARRAY list1; + Array list1; list1.SetSize(0); - ARRAY list2; + Array list2; list2.SetSize(0); list1.Append(starttrig); diff --git a/libsrc/stlgeom/stltopology.hpp b/libsrc/stlgeom/stltopology.hpp index 80e5a681..4e7b9bc6 100644 --- a/libsrc/stlgeom/stltopology.hpp +++ b/libsrc/stlgeom/stltopology.hpp @@ -138,7 +138,7 @@ public: // NON-normalized geometry - normal vector - Vec<3> GeomNormal(const ARRAY >& ap) const; + Vec<3> GeomNormal(const Array >& ap) const; // Stored normal vector, normalized void SetNormal (const Vec<3> & n); @@ -148,10 +148,10 @@ public: void ChangeOrientation(); //project with a certain normal vector in plane - void ProjectInPlain(const ARRAY >& ap, + void ProjectInPlain(const Array >& ap, const Vec<3> & n, Point<3> & pp) const; //project with the triangle's normal vector in plane - void ProjectInPlain(const ARRAY > & ap, Point<3> & pp) const; + void ProjectInPlain(const Array > & ap, Point<3> & pp) const; /* @@ -166,20 +166,20 @@ public: pp(output) = P1 + lam1 v1 + lam2 v2 */ - int ProjectInPlain (const ARRAY >& ap, + int ProjectInPlain (const Array >& ap, const Vec<3> & nproj, Point<3> & pp, Vec<3> & lam) const; - int PointInside(const ARRAY >& ap, const Point<3> & pp) const; + int PointInside(const Array >& ap, const Point<3> & pp) const; //get nearest point on triangle and distance to it - double GetNearestPoint(const ARRAY >& ap, + double GetNearestPoint(const Array >& ap, Point<3> & p3d) const; - double Area(const ARRAY >& ap) const; + double Area(const Array >& ap) const; - double MinHeight(const ARRAY >& ap) const; - double MaxLength(const ARRAY >& ap) const; + double MinHeight(const Array >& ap) const; + double MaxLength(const Array >& ap) const; //max length of a side of triangle int GetFaceNum() {return facenum;} @@ -239,9 +239,9 @@ ostream& operator<<(ostream& os, const STLTriangle& t); class STLTopology { protected: - ARRAY trias; - ARRAY topedges; - ARRAY > points; + Array trias; + Array topedges; + Array > points; // mapping of sorted pair of points to topedge INDEX_2_HASHTABLE * ht_topedges; @@ -280,7 +280,7 @@ public: void SaveBinary (const char* filename, const char* aname); void SaveSTLE (const char * filename); // stores trigs and edges - virtual void InitSTLGeometry (const ARRAY & readtrigs); + virtual void InitSTLGeometry (const Array & readtrigs); virtual void TopologyChanged() {}; //do some things, if topology changed! @@ -289,7 +289,7 @@ public: void GetTrianglesInBox (const Box<3> & box, - ARRAY & trias) const; + Array & trias) const; int GetNP() const { return points.Size(); } @@ -297,7 +297,7 @@ public: const Point<3> & GetPoint(int nr) const { return points.Get(nr); } int GetPointNum (const Point<3> & p); void SetPoint(int nr, const Point<3> & p) { points.Elem(nr) = p; } - const ARRAY >& GetPoints() const { return points; } + const Array >& GetPoints() const { return points; } const Point<3> & operator[] (STLPointIndex i) const { return points[i]; } Point<3> & operator[] (STLPointIndex i) { return points[i]; } diff --git a/libsrc/visualization/Makefile.in b/libsrc/visualization/Makefile.in index db595942..14c9af4f 100644 --- a/libsrc/visualization/Makefile.in +++ b/libsrc/visualization/Makefile.in @@ -1,8 +1,8 @@ -# Makefile.in generated by automake 1.10.1 from Makefile.am. +# Makefile.in generated by automake 1.10 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006 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. @@ -55,7 +55,7 @@ am_libvisual_a_OBJECTS = meshdoc.$(OBJEXT) mvdraw.$(OBJEXT) \ vsmesh.$(OBJEXT) vsocc.$(OBJEXT) vssolution.$(OBJEXT) \ importsolution.$(OBJEXT) libvisual_a_OBJECTS = $(am_libvisual_a_OBJECTS) -DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) +DEFAULT_INCLUDES = -I. -I$(top_builddir)@am__isrc@ depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ @@ -354,8 +354,8 @@ ID: $(HEADERS) $(SOURCES) $(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; nonemtpy = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ mkid -fID $$unique tags: TAGS @@ -367,8 +367,8 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ 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; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ @@ -378,12 +378,13 @@ ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ + 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; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ test -z "$(CTAGS_ARGS)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique diff --git a/libsrc/visualization/meshdoc.hpp b/libsrc/visualization/meshdoc.hpp index 5cc11aef..65763385 100644 --- a/libsrc/visualization/meshdoc.hpp +++ b/libsrc/visualization/meshdoc.hpp @@ -9,7 +9,7 @@ class VisualSceneMeshDoctor : public VisualScene int selpoint, selpoint2; // for edgemarking: - ARRAY edgedist; + Array edgedist; int markedgedist; diff --git a/libsrc/visualization/mvdraw.cpp b/libsrc/visualization/mvdraw.cpp index d439d179..30aac051 100644 --- a/libsrc/visualization/mvdraw.cpp +++ b/libsrc/visualization/mvdraw.cpp @@ -83,8 +83,8 @@ namespace netgen extern STLGeometry * stlgeometry; extern AutoPtr geometry2d; extern AutoPtr mesh; - extern ARRAY specpoints; - extern ARRAY > boxes; + extern Array specpoints; + extern Array > boxes; VisualScene :: VisualScene () { @@ -182,7 +182,7 @@ namespace netgen } - void VisualScene :: ArbitraryRotation (const ARRAY & alpha, const ARRAY & vec) + void VisualScene :: ArbitraryRotation (const Array & alpha, const Array & vec) { glPushMatrix(); @@ -209,8 +209,8 @@ namespace netgen void VisualScene :: ArbitraryRotation (const double alpha, const Vec3d & vec) { - ARRAY a(1); a[0] = alpha; - ARRAY v(1); v[0] = vec; + Array a(1); a[0] = alpha; + Array v(1); v[0] = vec; ArbitraryRotation(a,v); } @@ -918,7 +918,7 @@ namespace netgen cout << "isdirect = " << glXIsDirect ( dpy, ctx ) << endl; cout << "extensionstring = " << glXQueryExtensionsString( dpy, 0 ) << endl; - ARRAY request(ntasks); + Array request(ntasks); MPI_Status status; for ( int dest = 1; dest < ntasks; dest++ ) { @@ -1010,7 +1010,7 @@ namespace netgen glColor3f (0, 0, 1); - ARRAY > points, otherpoints; + Array > points, otherpoints; for (int i = 1; i <= geometry2d->GetSplines().Size(); i++) { diff --git a/libsrc/visualization/mvdraw.hpp b/libsrc/visualization/mvdraw.hpp index 1db51d0a..695ec7e8 100644 --- a/libsrc/visualization/mvdraw.hpp +++ b/libsrc/visualization/mvdraw.hpp @@ -62,7 +62,7 @@ public: void CalcTransformationMatrices(); void StandardRotation (const char * dir); - void ArbitraryRotation (const ARRAY & alpha, const ARRAY & vec); + void ArbitraryRotation (const Array & alpha, const Array & vec); void ArbitraryRotation (const double alpha, const Vec3d & vec); void MouseMove(int oldx, int oldy, @@ -96,7 +96,7 @@ public: class VisualSceneGeometry : public VisualScene { - ARRAY trilists; + Array trilists; int selsurf; public: VisualSceneGeometry (); @@ -111,7 +111,7 @@ public: class VisualSceneSTLGeometry : public VisualScene { - ARRAY trilists; + Array trilists; public: VisualSceneSTLGeometry (); @@ -136,8 +136,8 @@ public: #ifdef OCCGEOMETRY class VisualSceneOCCGeometry : public VisualScene { - ARRAY trilists; - ARRAY linelists; + Array trilists; + Array linelists; int selsurf; public: VisualSceneOCCGeometry (); @@ -161,7 +161,7 @@ public: #ifdef STEP class VisualSceneSTEPGeometry : public VisualScene { - ARRAY gllists; + Array gllists; public: VisualSceneSTEPGeometry (); @@ -175,7 +175,7 @@ public: class VisualSceneSTLMeshing : public VisualScene { - ARRAY trilists; + Array trilists; int selecttrig, nodeofseltrig; public: @@ -241,8 +241,8 @@ class VisualSceneMesh : public VisualScene #ifdef PARALLELGL - ARRAY par_linelists; - ARRAY par_filledlists; + Array par_linelists; + Array par_filledlists; #endif diff --git a/libsrc/visualization/stlmeshing.cpp b/libsrc/visualization/stlmeshing.cpp index e2d149ff..eb633341 100644 --- a/libsrc/visualization/stlmeshing.cpp +++ b/libsrc/visualization/stlmeshing.cpp @@ -153,7 +153,7 @@ void VisualSceneSTLMeshing :: DrawScene () MoCombine cb1(&z1,&z2); model.Add(&cb1); - ARRAY trigs; + Array trigs; model.GetTriangles(trigs); int i, k; glBegin (GL_TRIANGLES); @@ -382,7 +382,7 @@ void VisualSceneSTLMeshing :: DrawScene () { //multiedge - const ARRAY& me = stlgeometry->SelectedMultiEdge(); + const Array& me = stlgeometry->SelectedMultiEdge(); if (stlgeometry->GetSelectTrig() > 0 && stlgeometry->GetSelectTrig() <= stlgeometry->GetNT() && me.Size()) diff --git a/libsrc/visualization/vsfieldlines.cpp b/libsrc/visualization/vsfieldlines.cpp index 161ad082..55af70ed 100644 --- a/libsrc/visualization/vsfieldlines.cpp +++ b/libsrc/visualization/vsfieldlines.cpp @@ -38,7 +38,7 @@ namespace netgen { c.SetSize(2); c[0] = 0; c[1] = 0.5; b.SetSize(2); b[0] = 0; b[1] = 1; - ARRAY size(2); + Array size(2); size[0] = 0; size[1] = 1; a = new TABLE(size); a->Set(2,1,0.5); // Set, Get: 1-based! @@ -48,7 +48,7 @@ namespace netgen { c.SetSize(3); c[0] = 0; c[1] = 1; c[2] = 0.5; b.SetSize(3); b[0] = b[1] = 1./6.; b[2] = 2./3.; - ARRAY size(3); + Array size(3); size[0] = 0; size[1] = 1; size[2] = 2; a = new TABLE(size); a->Set(2,1,1); @@ -59,7 +59,7 @@ namespace netgen { c.SetSize(4); c[0] = 0; c[1] = c[2] = 0.5; c[3] = 1; b.SetSize(4); b[0] = b[3] = 1./6.; b[1] = b[2] = 1./3.; - ARRAY size(4); + Array size(4); size[0] = 0; size[1] = 1; size[2] = 2; size[3] = 3; a = new TABLE(size); a->Set(2,1,0.5); @@ -181,16 +181,16 @@ namespace netgen - void FieldLineCalc :: GenerateFieldLines(ARRAY & potential_startpoints, const int numlines, const int gllist, + void FieldLineCalc :: GenerateFieldLines(Array & potential_startpoints, const int numlines, const int gllist, const double minval, const double maxval, const int logscale, double phaser, double phasei) { glNewList(gllist, GL_COMPILE); - ARRAY points; - ARRAY values; - ARRAY drawelems; - ARRAY dirstart; + Array points; + Array values; + Array drawelems; + Array dirstart; if(vsol -> iscomplex) @@ -315,7 +315,7 @@ namespace netgen - void FieldLineCalc :: Calc(const Point3d & startpoint, ARRAY & points, ARRAY & vals, ARRAY & drawelems, ARRAY & dirstart) + void FieldLineCalc :: Calc(const Point3d & startpoint, Array & points, Array & vals, Array & drawelems, Array & dirstart) { double lami[3], startlami[3]; double values[6]; @@ -438,7 +438,7 @@ namespace netgen - void VisualSceneSolution :: BuildFieldLinesFromBox(ARRAY & startpoints) + void VisualSceneSolution :: BuildFieldLinesFromBox(Array & startpoints) { if(fieldlines_startarea_parameter[0] > fieldlines_startarea_parameter[3] || fieldlines_startarea_parameter[1] > fieldlines_startarea_parameter[4] || @@ -465,7 +465,7 @@ namespace netgen } } - void VisualSceneSolution :: BuildFieldLinesFromLine(ARRAY & startpoints) + void VisualSceneSolution :: BuildFieldLinesFromLine(Array & startpoints) { for (int i = 1; i <= startpoints.Size(); i++) { @@ -480,7 +480,7 @@ namespace netgen } - void VisualSceneSolution :: BuildFieldLinesFromFile(ARRAY & startpoints) + void VisualSceneSolution :: BuildFieldLinesFromFile(Array & startpoints) { ifstream * infile; @@ -534,7 +534,7 @@ namespace netgen for(int i=0; i<6; i++) (*infile) >> fieldlines_startarea_parameter[i]; (*infile) >> iparam; - ARRAY auxpoints(iparam); + Array auxpoints(iparam); if (keyword == "box") BuildFieldLinesFromBox(auxpoints); @@ -559,9 +559,9 @@ namespace netgen } - void VisualSceneSolution :: BuildFieldLinesFromFace(ARRAY & startpoints) + void VisualSceneSolution :: BuildFieldLinesFromFace(Array & startpoints) { - ARRAY elements_2d; + Array elements_2d; //cout << "fieldlines_startface " << fieldlines_startface << endl; mesh->GetSurfaceElementsOfFace(fieldlines_startface,elements_2d); @@ -676,7 +676,7 @@ namespace netgen num_startpoints *= 10; - ARRAY startpoints(num_startpoints); + Array startpoints(num_startpoints); for (int ln = 0; ln < num_fieldlineslists; ln++) diff --git a/libsrc/visualization/vsmesh.cpp b/libsrc/visualization/vsmesh.cpp index 94d91472..964f7cd0 100644 --- a/libsrc/visualization/vsmesh.cpp +++ b/libsrc/visualization/vsmesh.cpp @@ -339,7 +339,7 @@ namespace netgen Point3d pmin, pmax; static double oldrad = 0; - ARRAY faces; + Array faces; int meshtimestamp = mesh->GetTimeStamp(); if (meshtimestamp > vstimestamp || zoomall) @@ -482,7 +482,7 @@ namespace netgen if (vispar.drawfacenumbers) { const MeshTopology & top = mesh->GetTopology(); - ARRAY v; + Array v; for (i = 1; i <= top.GetNFaces(); i++) { top.GetFaceVertices (i, v); @@ -512,11 +512,11 @@ namespace netgen if (vispar.drawelementnumbers) { - ARRAY v; + Array v; for (i = 1; i <= mesh->GetNE(); i++) { const ELEMENTTYPE & eltype = mesh->ElementType(i); - ARRAY pnums; + Array pnums; Point3d p; const Element & el = mesh->VolumeElement (i); @@ -1773,7 +1773,7 @@ namespace netgen - ARRAY faces; + Array faces; BitArray shownode(mesh->GetNP()); if (vispar.clipenable) @@ -1933,8 +1933,8 @@ namespace netgen int order = curv.GetOrder(); - ARRAY > ploc ( (order+1)*(order+1) ); - ARRAY > pglob ( (order+1)*(order+1) ); + Array > ploc ( (order+1)*(order+1) ); + Array > pglob ( (order+1)*(order+1) ); Point<3> fpts[3]; for (int trig = 0; trig < 4; trig++) @@ -2063,7 +2063,7 @@ namespace netgen static float prismcol[] = { 0.0f, 1.0f, 1.0f, 1.0f }; glLineWidth (1.0f); - ARRAY faces; + Array faces; glMaterialfv(GL_FRONT, GL_AMBIENT_AND_DIFFUSE, prismcol); @@ -2390,7 +2390,7 @@ namespace netgen glLineWidth (1.0f); glMaterialfv(GL_FRONT, GL_AMBIENT_AND_DIFFUSE, hexcol); - ARRAY faces; + Array faces; int hoplotn = 1 << vispar.subdivisions; for (ElementIndex ei = 0; ei < mesh->GetNE(); ei++) @@ -2600,7 +2600,7 @@ namespace netgen glMaterialfv(GL_FRONT, GL_AMBIENT_AND_DIFFUSE, pyramidcol); glLineWidth (1.0f); - ARRAY faces; + Array faces; for (ElementIndex ei = 0; ei < mesh->GetNE(); ei++) { diff --git a/libsrc/visualization/vssolution.cpp b/libsrc/visualization/vssolution.cpp index f4ef335f..c13787c4 100644 --- a/libsrc/visualization/vssolution.cpp +++ b/libsrc/visualization/vssolution.cpp @@ -714,8 +714,8 @@ namespace netgen { glDisable(GL_CLIP_PLANE0); - ARRAY cpt; - ARRAY pts; + Array cpt; + Array pts; GetClippingPlaneTrigs (cpt, pts); glNormal3d (-clipplane[0], -clipplane[1], -clipplane[2]); @@ -746,7 +746,7 @@ namespace netgen bool drawelem; - ARRAY cpp; + Array cpp; GetClippingPlaneGrid (cpp); for (int i = 0; i < cpp.Size(); i++) @@ -978,8 +978,8 @@ namespace netgen clipplane_isolinelist = glGenLists (1); glNewList (clipplane_isolinelist, GL_COMPILE); - ARRAY cpt; - ARRAY pts; + Array cpt; + Array pts; GetClippingPlaneTrigs (cpt, pts); bool drawelem; @@ -1078,9 +1078,9 @@ namespace netgen glLineWidth (1.0f); - ARRAY > pref; - ARRAY > points; - ARRAY > dxdxis; + Array > pref; + Array > points; + Array > dxdxis; /* Point<2> pref[1100]; @@ -1653,12 +1653,12 @@ namespace netgen int n = 1 << subdivisions; int n3 = (n+1)*(n+1)*(n+1); - ARRAY > grid(n3); - ARRAY > locgrid(n3); - ARRAY > trans(n3); - ARRAY val(n3); - ARRAY > grads(n3); - ARRAY compress(n3); + Array > grid(n3); + Array > locgrid(n3); + Array > trans(n3); + Array val(n3); + Array > grads(n3); + Array compress(n3); MatrixFixWidth<3> pointmat(8); grads = Vec<3> (0.0); @@ -1875,7 +1875,7 @@ namespace netgen - void VisualSceneSolution :: DrawTrigSurfaceVectors(const ARRAY< Point<3> > & lp, const Point<3> & pmin, const Point<3> & pmax, + void VisualSceneSolution :: DrawTrigSurfaceVectors(const Array< Point<3> > & lp, const Point<3> & pmin, const Point<3> & pmax, const int sei, const SolData * vsol) { int dir,dir1,dir2; @@ -2055,7 +2055,7 @@ namespace netgen if (el.GetType() == TRIG || el.GetType() == TRIG6) { - ARRAY< Point<3> > lp(3); + Array< Point<3> > lp(3); //Point<2> p2d[3]; /* for (k = 0; k < 3; k++) @@ -2165,7 +2165,7 @@ namespace netgen } else if (el.GetType() == QUAD) { - ARRAY < Point<3> > lp(3); + Array < Point<3> > lp(3); lp[0] = mesh->Point(el[0]); lp[1] = mesh->Point(el[1]); @@ -3801,8 +3801,8 @@ namespace netgen - void VisualSceneSolution :: GetClippingPlaneTrigs (ARRAY & trigs, - ARRAY & pts) + void VisualSceneSolution :: GetClippingPlaneTrigs (Array & trigs, + Array & pts) { static int timer1 = NgProfiler::CreateTimer ("ClipPlaneTrigs1"); static int timer2 = NgProfiler::CreateTimer ("ClipPlaneTrigs2"); @@ -3826,18 +3826,18 @@ namespace netgen int cntce; int cpe1 = 0, cpe2 = 0, cpe3 = 0; - // ARRAY loctets; - // ARRAY loctetsloc; - // ARRAY > pointsloc; + // Array loctets; + // Array loctetsloc; + // Array > pointsloc; int n = 1 << subdivisions; int n3 = (n+1)*(n+1)*(n+1); - ARRAY > grid(n3); - ARRAY > locgrid(n3); - ARRAY > trans(n3); - ARRAY val(n3); - ARRAY compress(n3); + Array > grid(n3); + Array > locgrid(n3); + Array > trans(n3); + Array val(n3); + Array compress(n3); for (ElementIndex ei = 0; ei < ne; ei++) @@ -4098,7 +4098,7 @@ namespace netgen /* - ARRAY nodevals(np); + Array nodevals(np); for (int i = 0; i < np; i++) { @@ -4186,7 +4186,7 @@ namespace netgen } } - void VisualSceneSolution :: GetClippingPlaneGrid (ARRAY & pts) + void VisualSceneSolution :: GetClippingPlaneGrid (Array & pts) { int i, j, k; int np = mesh->GetNV(); @@ -4511,8 +4511,8 @@ namespace netgen void VisualSceneSolution :: DrawClipPlaneTrigs (const SolData * sol, int comp, - const ARRAY & trigs, - const ARRAY & points) + const Array & trigs, + const Array & points) { int maxlpnr = 0; for (int i = 0; i < trigs.Size(); i++) diff --git a/libsrc/visualization/vssolution.hpp b/libsrc/visualization/vssolution.hpp index 3dc4c2bc..02d0f3e2 100644 --- a/libsrc/visualization/vssolution.hpp +++ b/libsrc/visualization/vssolution.hpp @@ -60,7 +60,7 @@ class VisualSceneSolution : public VisualScene int fieldlineslist; int num_fieldlineslists; int fieldlines_startarea; - ARRAY fieldlines_startarea_parameter; + Array fieldlines_startarea_parameter; int fieldlines_startface; string fieldlines_filename; double fieldlines_reltolerance; @@ -86,8 +86,8 @@ class VisualSceneSolution : public VisualScene #ifdef PARALLELGL - ARRAY par_linelists; - ARRAY par_surfellists; + Array par_linelists; + Array par_surfellists; #endif @@ -137,7 +137,7 @@ public: - ARRAY soldata; + Array soldata; @@ -168,10 +168,10 @@ public: bool imag_part; private: - void BuildFieldLinesFromFile(ARRAY & startpoints); - void BuildFieldLinesFromFace(ARRAY & startpoints); - void BuildFieldLinesFromBox(ARRAY & startpoints); - void BuildFieldLinesFromLine(ARRAY & startpoints); + void BuildFieldLinesFromFile(Array & startpoints); + void BuildFieldLinesFromFace(Array & startpoints); + void BuildFieldLinesFromBox(Array & startpoints); + void BuildFieldLinesFromLine(Array & startpoints); public: VisualSceneSolution (); @@ -207,8 +207,8 @@ public: private: void GetMinMax (int funcnr, int comp, double & minv, double & maxv) const; - void GetClippingPlaneTrigs (ARRAY & trigs, ARRAY & pts); - void GetClippingPlaneGrid (ARRAY & pts); + void GetClippingPlaneTrigs (Array & trigs, Array & pts); + void GetClippingPlaneGrid (Array & pts); void DrawCone (const Point<3> & p1, const Point<3> & p2, double r); void DrawCylinder (const Point<3> & p1, const Point<3> & p2, double r); @@ -266,7 +266,7 @@ public: void DrawSurfaceElements (); void DrawSurfaceElementLines (); void DrawSurfaceVectors (); - void DrawTrigSurfaceVectors(const ARRAY< Point<3> > & lp, const Point<3> & pmin, const Point<3> & pmax, + void DrawTrigSurfaceVectors(const Array< Point<3> > & lp, const Point<3> & pmin, const Point<3> & pmax, const int sei, const SolData * vsol); void DrawIsoSurface(const SolData * sol, const SolData * grad, int comp); @@ -287,8 +287,8 @@ public: void DrawClipPlaneTrigs (const SolData * sol, int comp, - const ARRAY & trigs, - const ARRAY & points); + const Array & trigs, + const Array & points); void SetOpenGlColor(double val, double valmin, double valmax, int logscale = 0); @@ -318,14 +318,14 @@ public: class RKStepper { private: - ARRAY c,b; + Array c,b; TABLE *a; int steps; int order; double tolerance; - ARRAY K; + Array K; int stepcount; @@ -399,9 +399,9 @@ public: void Randomized(void) { randomized = true; } void NotRandomized(void) { randomized = false; } - void Calc(const Point3d & startpoint, ARRAY & points, ARRAY & vals, ARRAY & drawelems, ARRAY & dirstart); + void Calc(const Point3d & startpoint, Array & points, Array & vals, Array & drawelems, Array & dirstart); - void GenerateFieldLines(ARRAY & potential_startpoints, const int numlines, const int gllist, + void GenerateFieldLines(Array & potential_startpoints, const int numlines, const int gllist, const double minval, const double maxval, const int logscale, double phaser, double phasei); }; diff --git a/ng/Makefile.in b/ng/Makefile.in index 2e28c906..64443ae0 100644 --- a/ng/Makefile.in +++ b/ng/Makefile.in @@ -1,8 +1,8 @@ -# Makefile.in generated by automake 1.10.1 from Makefile.am. +# Makefile.in generated by automake 1.10 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006 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. @@ -77,7 +77,7 @@ netgen_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ $(netgen_LDFLAGS) $(LDFLAGS) -o $@ dist_binSCRIPT_INSTALL = $(INSTALL_SCRIPT) SCRIPTS = $(dist_bin_SCRIPTS) -DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) +DEFAULT_INCLUDES = -I. -I$(top_builddir)@am__isrc@ depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ @@ -315,8 +315,8 @@ install-binPROGRAMS: $(bin_PROGRAMS) || test -f $$p1 \ ; then \ f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \ - echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(binPROGRAMS_INSTALL) '$$p' '$(DESTDIR)$(bindir)/$$f'"; \ - $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(binPROGRAMS_INSTALL) "$$p" "$(DESTDIR)$(bindir)/$$f" || exit 1; \ + echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(binPROGRAMS_INSTALL) '$$p' '$(DESTDIR)$(bindir)/$$f'"; \ + $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(binPROGRAMS_INSTALL) "$$p" "$(DESTDIR)$(bindir)/$$f" || exit 1; \ else :; fi; \ done @@ -403,8 +403,8 @@ ID: $(HEADERS) $(SOURCES) $(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; nonemtpy = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ mkid -fID $$unique tags: TAGS @@ -416,8 +416,8 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ 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; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ @@ -427,12 +427,13 @@ ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ + 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; }; }'`; \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ test -z "$(CTAGS_ARGS)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique diff --git a/ng/demoview.hpp b/ng/demoview.hpp index 27092bd0..fac448dc 100644 --- a/ng/demoview.hpp +++ b/ng/demoview.hpp @@ -98,7 +98,7 @@ template class InterpolationSpline { protected: - ARRAY < InterpolationPoint[3] > ip; + Array < InterpolationPoint[3] > ip; int finished; public: diff --git a/ng/ngappinit.cpp b/ng/ngappinit.cpp index f6ff7776..07d436c3 100644 --- a/ng/ngappinit.cpp +++ b/ng/ngappinit.cpp @@ -42,7 +42,7 @@ namespace netgen using netgen::parameters; using netgen::ngdir; using netgen::verbose; -using netgen::ARRAY; +using netgen::Array; using netgen::RegisterUserFormats; @@ -290,7 +290,7 @@ int main(int argc, char ** argv) // lookup user file formats and insert into format list: - ARRAY userformats; + Array userformats; RegisterUserFormats (userformats); ostringstream fstr; diff --git a/ng/nginterface.cpp b/ng/nginterface.cpp index 991b9515..1c0ee70c 100644 --- a/ng/nginterface.cpp +++ b/ng/nginterface.cpp @@ -60,8 +60,8 @@ namespace netgen #ifdef SOCKETS extern AutoPtr clientsocket; - //extern ARRAY< AutoPtr < ServerInfo > > servers; - extern ARRAY< ServerInfo* > servers; + //extern Array< AutoPtr < ServerInfo > > servers; + extern Array< ServerInfo* > servers; #endif } @@ -496,14 +496,14 @@ char * Ng_GetDomainMaterial (int dom) int Ng_GetUserDataSize (char * id) { - ARRAY da; + Array da; mesh->GetUserData (id, da); return da.Size(); } void Ng_GetUserData (char * id, double * data) { - ARRAY da; + Array da; mesh->GetUserData (id, da); for (int i = 0; i < da.Size(); i++) data[i] = da[i]; @@ -654,12 +654,12 @@ int Ng_FindElementOfPoint (double * p, double * lami, int build_searchtree, const int * const indices, const int numind) { - ARRAY * dummy(NULL); + Array * dummy(NULL); int ind = -1; if(indices != NULL) { - dummy = new ARRAY(numind); + dummy = new Array(numind); for(int i=0; i * dummy(NULL); + Array * dummy(NULL); int ind = -1; if(indices != NULL) { - dummy = new ARRAY(numind); + dummy = new Array(numind); for(int i=0; iGetTopology(); - ARRAY ia; + Array ia; topology.GetSurfaceElementEdges (elnr, ia); ned = ia.Size(); for (i = 1; i <= ned; i++) @@ -1989,7 +1989,7 @@ void PlayAnimFile(const char* name, int speed, int maxcnt) int Ng_GetNPeriodicVertices (int idnr) { - ARRAY apairs; + Array apairs; mesh->GetIdentifications().GetPairs (idnr, apairs); return apairs.Size(); } @@ -1998,7 +1998,7 @@ int Ng_GetNPeriodicVertices (int idnr) // pairs should be an integer array of 2*npairs void Ng_GetPeriodicVertices (int idnr, int * pairs) { - ARRAY apairs; + Array apairs; mesh->GetIdentifications().GetPairs (idnr, apairs); for (int i = 0; i < apairs.Size(); i++) { @@ -2012,7 +2012,7 @@ void Ng_GetPeriodicVertices (int idnr, int * pairs) int Ng_GetNPeriodicEdges (int idnr) { - ARRAY map; + Array map; //const MeshTopology & top = mesh->GetTopology(); int nse = mesh->GetNSeg(); @@ -2039,7 +2039,7 @@ int Ng_GetNPeriodicEdges (int idnr) void Ng_GetPeriodicEdges (int idnr, int * pairs) { - ARRAY map; + Array map; const MeshTopology & top = mesh->GetTopology(); int nse = mesh->GetNSeg(); @@ -2286,9 +2286,9 @@ int Ng_Bisect_WithInfo ( const char * refinementfile, double ** qualityloss, int mesh->LocalHFunction().SetGrading (mparam.grading); - ARRAY * qualityloss_arr = NULL; + Array * qualityloss_arr = NULL; if(qualityloss != NULL) - qualityloss_arr = new ARRAY; + qualityloss_arr = new Array; ref -> Bisect (*mesh, biopt, qualityloss_arr); diff --git a/ng/ngpkg.cpp b/ng/ngpkg.cpp index 267a946f..e7333844 100644 --- a/ng/ngpkg.cpp +++ b/ng/ngpkg.cpp @@ -111,8 +111,8 @@ namespace netgen #ifdef SOCKETS AutoPtr clientsocket; ServerSocketManager serversocketmanager; - //ARRAY< AutoPtr < ServerInfo > > servers; - ARRAY< ServerInfo* > servers; + //Array< AutoPtr < ServerInfo > > servers; + Array< ServerInfo* > servers; AutoPtr serversocketusernetgen; #endif @@ -971,7 +971,7 @@ namespace netgen tcl_const char * name = argv[1]; tcl_const char * value = argv[2]; - ARRAY coeffs; + Array coeffs; cout << "Set primitive data, name = " << name @@ -1023,7 +1023,7 @@ namespace netgen const char * classname; - ARRAY coeffs; + Array coeffs; geometry->GetSolid (name)->GetPrimitive()->GetPrimitiveData (classname, coeffs); @@ -3632,8 +3632,8 @@ namespace netgen int argc, tcl_const char *argv[]) { SetVisualScene(interp); - ARRAY alpha; - ARRAY vec; + Array alpha; + Array vec; for(int i=1; i readtrias; //only before initstlgeometry -ARRAY > readedges; //only before init stlgeometry +Array readtrias; //only before initstlgeometry +Array > readedges; //only before init stlgeometry void Ng_SaveMesh(Ng_Mesh * mesh, const char* filename) { diff --git a/nglib/nglib.h b/nglib/nglib.h index 8c6285f6..968aeb91 100644 --- a/nglib/nglib.h +++ b/nglib/nglib.h @@ -218,4 +218,4 @@ Ng_Result Ng_ACIS_GenerateSurfaceMesh (Ng_ACIS_Geometry * geom, #endif -#endif \ No newline at end of file +#endif diff --git a/tutorials/Makefile.in b/tutorials/Makefile.in index 32f5960c..660bec4a 100644 --- a/tutorials/Makefile.in +++ b/tutorials/Makefile.in @@ -1,8 +1,8 @@ -# Makefile.in generated by automake 1.10.1 from Makefile.am. +# Makefile.in generated by automake 1.10 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006 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.