v2.1.3
This commit is contained in:
parent
c04629cb7b
commit
27eff2f0ef
20 changed files with 903 additions and 404 deletions
10
ChangeLog
10
ChangeLog
|
@ -1,5 +1,15 @@
|
|||
XQilla: an XQuery and XPath 2.0 library and command line interpreter.
|
||||
|
||||
version 2.1.3 (2008.07.29):
|
||||
* Modified the StaticAnalysis class in order to reduce the memory
|
||||
footprint of a prepared query by at least 50%.
|
||||
* Changed the code so that compilation against a patched version of
|
||||
Xerces-C 2.8 is no longer required. XQilla will build with reduced
|
||||
functionality without the patches.
|
||||
* Workaround a Windows optimizer issue that caused instance of
|
||||
queries to fail in a release build on Windows.
|
||||
* Fixed another Solaris compilation bug.
|
||||
|
||||
version 2.1.2 (2008.04.28):
|
||||
* Fixed a bug in static resolution of replace expressions
|
||||
* Fixed the Xerces-C data model layer to work correctly with DOM Level 1
|
||||
|
|
|
@ -12,7 +12,7 @@ lib_LTLIBRARIES = libxqilla.la
|
|||
|
||||
# Library version, see http://sourceware.org/autobook/autobook/autobook_91.html
|
||||
# -no-undefined for Cygwin (bug #1639669)
|
||||
libxqilla_la_LDFLAGS = -version-info 4:1:0 -no-undefined
|
||||
libxqilla_la_LDFLAGS = -version-info 4:2:0 -no-undefined
|
||||
|
||||
libxqilla_la_SOURCES = \
|
||||
src/framework/ReferenceCounted.cpp \
|
||||
|
|
51
Makefile.in
51
Makefile.in
|
@ -1,8 +1,8 @@
|
|||
# Makefile.in generated by automake 1.10 from Makefile.am.
|
||||
# Makefile.in generated by automake 1.10.1 from Makefile.am.
|
||||
# @configure_input@
|
||||
|
||||
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
||||
# 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
|
||||
# 2003, 2004, 2005, 2006, 2007, 2008 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.
|
||||
|
@ -240,7 +240,7 @@ am_xqtsRunner_OBJECTS = runner.$(OBJEXT)
|
|||
xqtsRunner_OBJECTS = $(am_xqtsRunner_OBJECTS)
|
||||
xqtsRunner_LDADD = $(LDADD)
|
||||
xqtsRunner_DEPENDENCIES = libxqilla.la
|
||||
DEFAULT_INCLUDES = -I. -I$(top_builddir)/src/config@am__isrc@
|
||||
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src/config
|
||||
depcomp = $(SHELL) $(top_srcdir)/autotools/depcomp
|
||||
am__depfiles_maybe = depfiles
|
||||
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
||||
|
@ -312,6 +312,7 @@ CXXFLAGS = @CXXFLAGS@
|
|||
CYGPATH_W = @CYGPATH_W@
|
||||
DEFS = @DEFS@
|
||||
DEPDIR = @DEPDIR@
|
||||
DSYMUTIL = @DSYMUTIL@
|
||||
ECHO = @ECHO@
|
||||
ECHO_C = @ECHO_C@
|
||||
ECHO_N = @ECHO_N@
|
||||
|
@ -337,6 +338,7 @@ LN_S = @LN_S@
|
|||
LTLIBOBJS = @LTLIBOBJS@
|
||||
MAKEINFO = @MAKEINFO@
|
||||
MKDIR_P = @MKDIR_P@
|
||||
NMEDIT = @NMEDIT@
|
||||
OBJEXT = @OBJEXT@
|
||||
PACKAGE = @PACKAGE@
|
||||
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
||||
|
@ -425,7 +427,7 @@ lib_LTLIBRARIES = libxqilla.la
|
|||
|
||||
# Library version, see http://sourceware.org/autobook/autobook/autobook_91.html
|
||||
# -no-undefined for Cygwin (bug #1639669)
|
||||
libxqilla_la_LDFLAGS = -version-info 4:1:0 -no-undefined
|
||||
libxqilla_la_LDFLAGS = -version-info 4:2:0 -no-undefined
|
||||
libxqilla_la_SOURCES = \
|
||||
src/framework/ReferenceCounted.cpp \
|
||||
src/framework/BaseMemoryManager.cpp \
|
||||
|
@ -1043,8 +1045,8 @@ install-libLTLIBRARIES: $(lib_LTLIBRARIES)
|
|||
@list='$(lib_LTLIBRARIES)'; for p in $$list; do \
|
||||
if test -f $$p; then \
|
||||
f=$(am__strip_dir) \
|
||||
echo " $(LIBTOOL) --mode=install $(libLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(libdir)/$$f'"; \
|
||||
$(LIBTOOL) --mode=install $(libLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(libdir)/$$f"; \
|
||||
echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(libLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(libdir)/$$f'"; \
|
||||
$(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(libLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(libdir)/$$f"; \
|
||||
else :; fi; \
|
||||
done
|
||||
|
||||
|
@ -1052,8 +1054,8 @@ uninstall-libLTLIBRARIES:
|
|||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(lib_LTLIBRARIES)'; for p in $$list; do \
|
||||
p=$(am__strip_dir) \
|
||||
echo " $(LIBTOOL) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$p'"; \
|
||||
$(LIBTOOL) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$p"; \
|
||||
echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$p'"; \
|
||||
$(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$p"; \
|
||||
done
|
||||
|
||||
clean-libLTLIBRARIES:
|
||||
|
@ -1075,8 +1077,8 @@ install-binPROGRAMS: $(bin_PROGRAMS)
|
|||
|| test -f $$p1 \
|
||||
; then \
|
||||
f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \
|
||||
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; \
|
||||
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; \
|
||||
else :; fi; \
|
||||
done
|
||||
|
||||
|
@ -4523,8 +4525,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; } \
|
||||
END { for (i in files) print i; }'`; \
|
||||
$(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
|
||||
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
||||
mkid -fID $$unique
|
||||
tags: TAGS
|
||||
|
||||
|
@ -4549,8 +4551,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; } \
|
||||
END { for (i in files) print i; }'`; \
|
||||
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { 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) \
|
||||
|
@ -4560,13 +4562,12 @@ 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; } \
|
||||
END { for (i in files) print i; }'`; \
|
||||
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
||||
test -z "$(CTAGS_ARGS)$$tags$$unique" \
|
||||
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
|
||||
$$tags $$unique
|
||||
|
@ -4637,6 +4638,10 @@ 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)
|
||||
|
@ -4664,6 +4669,8 @@ 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*) \
|
||||
|
@ -4825,11 +4832,11 @@ uninstall-am: uninstall-binPROGRAMS uninstall-libLTLIBRARIES
|
|||
all all-am am--refresh check check-am clean clean-binPROGRAMS \
|
||||
clean-generic clean-libLTLIBRARIES clean-libtool \
|
||||
clean-noinstPROGRAMS ctags ctags-recursive dist dist-all \
|
||||
dist-bzip2 dist-gzip dist-shar dist-tarZ dist-zip distcheck \
|
||||
distclean distclean-compile distclean-generic distclean-hdr \
|
||||
distclean-libtool distclean-tags distcleancheck distdir \
|
||||
distuninstallcheck dvi dvi-am html html-am info info-am \
|
||||
install install-am install-binPROGRAMS install-data \
|
||||
dist-bzip2 dist-gzip dist-lzma dist-shar dist-tarZ dist-zip \
|
||||
distcheck distclean distclean-compile distclean-generic \
|
||||
distclean-hdr distclean-libtool distclean-tags distcleancheck \
|
||||
distdir distuninstallcheck dvi dvi-am html html-am info \
|
||||
info-am install install-am install-binPROGRAMS install-data \
|
||||
install-data-am install-dvi install-dvi-am install-exec \
|
||||
install-exec-am install-html install-html-am install-info \
|
||||
install-info-am install-libLTLIBRARIES install-man install-pdf \
|
||||
|
|
253
aclocal.m4
vendored
253
aclocal.m4
vendored
|
@ -1,7 +1,7 @@
|
|||
# generated automatically by aclocal 1.10 -*- Autoconf -*-
|
||||
# generated automatically by aclocal 1.10.1 -*- Autoconf -*-
|
||||
|
||||
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
|
||||
# 2005, 2006 Free Software Foundation, Inc.
|
||||
# 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
|
||||
# This file is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
@ -11,14 +11,17 @@
|
|||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||
# PARTICULAR PURPOSE.
|
||||
|
||||
m4_if(m4_PACKAGE_VERSION, [2.61],,
|
||||
[m4_fatal([this file was generated for autoconf 2.61.
|
||||
You have another version of autoconf. If you want to use that,
|
||||
you should regenerate the build system entirely.], [63])])
|
||||
m4_ifndef([AC_AUTOCONF_VERSION],
|
||||
[m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
|
||||
m4_if(AC_AUTOCONF_VERSION, [2.61],,
|
||||
[m4_warning([this file was generated for autoconf 2.61.
|
||||
You have another version of autoconf. It may work, but is not guaranteed to.
|
||||
If you have problems, you may need to regenerate the build system entirely.
|
||||
To do so, use the procedure documented by the package, typically `autoreconf'.])])
|
||||
|
||||
# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
|
||||
|
||||
# serial 51 Debian 1.5.24-1ubuntu1 AC_PROG_LIBTOOL
|
||||
# serial 52 Debian 1.5.26-1ubuntu1 AC_PROG_LIBTOOL
|
||||
|
||||
|
||||
# AC_PROVIDE_IFELSE(MACRO-NAME, IF-PROVIDED, IF-NOT-PROVIDED)
|
||||
|
@ -106,7 +109,6 @@ AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl
|
|||
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
|
||||
|
@ -208,6 +210,8 @@ file_magic*)
|
|||
;;
|
||||
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)
|
||||
|
@ -287,9 +291,80 @@ 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 conftest*
|
||||
$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
|
||||
# ----------------------
|
||||
|
@ -614,7 +689,11 @@ sparc*-*solaris*)
|
|||
*64-bit*)
|
||||
case $lt_cv_prog_gnu_ld in
|
||||
yes*) LD="${LD-ld} -m elf64_sparc" ;;
|
||||
*) LD="${LD-ld} -64" ;;
|
||||
*)
|
||||
if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
|
||||
LD="${LD-ld} -64"
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
esac
|
||||
|
@ -707,7 +786,7 @@ AC_CACHE_CHECK([$1], [$2],
|
|||
$2=yes
|
||||
fi
|
||||
fi
|
||||
$rm conftest*
|
||||
$rm -r conftest*
|
||||
LDFLAGS="$save_LDFLAGS"
|
||||
])
|
||||
|
||||
|
@ -978,7 +1057,7 @@ else
|
|||
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="-dld"],
|
||||
[lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"],
|
||||
[AC_CHECK_FUNC([dlopen],
|
||||
[lt_cv_dlopen="dlopen"],
|
||||
[AC_CHECK_LIB([dl], [dlopen],
|
||||
|
@ -986,7 +1065,7 @@ else
|
|||
[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="-dld"])
|
||||
[lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"])
|
||||
])
|
||||
])
|
||||
])
|
||||
|
@ -1303,7 +1382,7 @@ aix3*)
|
|||
soname_spec='${libname}${release}${shared_ext}$major'
|
||||
;;
|
||||
|
||||
aix4* | aix5*)
|
||||
aix[[4-9]]*)
|
||||
version_type=linux
|
||||
need_lib_prefix=no
|
||||
need_version=no
|
||||
|
@ -1836,6 +1915,13 @@ 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"
|
||||
|
@ -2335,7 +2421,7 @@ lt_cv_deplibs_check_method='unknown'
|
|||
# whether `pass_all' will *always* work, you probably want this one.
|
||||
|
||||
case $host_os in
|
||||
aix4* | aix5*)
|
||||
aix[[4-9]]*)
|
||||
lt_cv_deplibs_check_method=pass_all
|
||||
;;
|
||||
|
||||
|
@ -2771,7 +2857,7 @@ aix3*)
|
|||
fi
|
||||
;;
|
||||
|
||||
aix4* | aix5*)
|
||||
aix[[4-9]]*)
|
||||
if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
|
||||
test "$enable_shared" = yes && enable_static=no
|
||||
fi
|
||||
|
@ -2828,6 +2914,7 @@ _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
|
||||
|
@ -2937,7 +3024,7 @@ case $host_os in
|
|||
# FIXME: insert proper C++ library support
|
||||
_LT_AC_TAGVAR(ld_shlibs, $1)=no
|
||||
;;
|
||||
aix4* | aix5*)
|
||||
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.
|
||||
|
@ -2950,7 +3037,7 @@ case $host_os in
|
|||
# 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]].*|aix5*)
|
||||
case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
|
||||
for ld_flag in $LDFLAGS; do
|
||||
case $ld_flag in
|
||||
*-brtl*)
|
||||
|
@ -3096,51 +3183,23 @@ case $host_os in
|
|||
fi
|
||||
;;
|
||||
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 "$GXX" = yes ; then
|
||||
lt_int_apple_cc_single_mod=no
|
||||
_LT_AC_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined"
|
||||
if test "$GXX" = yes ; then
|
||||
output_verbose_link_cmd='echo'
|
||||
if $CC -dumpspecs 2>&1 | $EGREP 'single_module' >/dev/null ; then
|
||||
lt_int_apple_cc_single_mod=yes
|
||||
_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
|
||||
if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
|
||||
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
|
||||
else
|
||||
_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'
|
||||
fi
|
||||
_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
|
||||
if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
|
||||
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
|
||||
else
|
||||
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "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~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
|
||||
fi
|
||||
_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}'
|
||||
else
|
||||
case $cc_basename in
|
||||
xlc*)
|
||||
|
@ -3391,7 +3450,7 @@ case $host_os in
|
|||
_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*)
|
||||
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'
|
||||
|
@ -3826,7 +3885,8 @@ lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
|
|||
# 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_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
|
||||
|
@ -3951,6 +4011,11 @@ fi
|
|||
|
||||
$rm -f confest.$objext
|
||||
|
||||
_LT_AC_TAGVAR(compiler_lib_search_dirs, $1)=
|
||||
if test -n "$_LT_AC_TAGVAR(compiler_lib_search_path, $1)"; then
|
||||
_LT_AC_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_AC_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'`
|
||||
fi
|
||||
|
||||
# PORTME: override above test on systems where it is broken
|
||||
ifelse([$1],[CXX],
|
||||
[case $host_os in
|
||||
|
@ -4007,7 +4072,6 @@ solaris*)
|
|||
;;
|
||||
esac
|
||||
])
|
||||
|
||||
case " $_LT_AC_TAGVAR(postdeps, $1) " in
|
||||
*" -lc "*) _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no ;;
|
||||
esac
|
||||
|
@ -4092,7 +4156,7 @@ aix3*)
|
|||
postinstall_cmds='$RANLIB $lib'
|
||||
fi
|
||||
;;
|
||||
aix4* | aix5*)
|
||||
aix[[4-9]]*)
|
||||
if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
|
||||
test "$enable_shared" = yes && enable_static=no
|
||||
fi
|
||||
|
@ -4269,6 +4333,7 @@ if test -f "$ltmain"; then
|
|||
_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) \
|
||||
|
@ -4331,7 +4396,7 @@ ifelse([$1], [],
|
|||
# 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
|
||||
# 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:
|
||||
|
@ -4568,6 +4633,10 @@ predeps=$lt_[]_LT_AC_TAGVAR(predeps, $1)
|
|||
# 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)
|
||||
|
@ -4917,7 +4986,7 @@ EOF
|
|||
echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
|
||||
cat conftest.$ac_ext >&5
|
||||
fi
|
||||
rm -f conftest* conftst*
|
||||
rm -rf conftest* conftst*
|
||||
|
||||
# Do not use the global_symbol_pipe unless it works.
|
||||
if test "$pipe_works" = yes; then
|
||||
|
@ -4974,7 +5043,8 @@ AC_MSG_CHECKING([for $compiler option to produce PIC])
|
|||
# built for inclusion in a dll (and should export symbols for example).
|
||||
# Although the cygwin gcc ignores -fPIC, still need this for old-style
|
||||
# (--disable-auto-import) libraries
|
||||
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'
|
||||
m4_if([$1], [GCJ], [],
|
||||
[_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
|
||||
;;
|
||||
darwin* | rhapsody*)
|
||||
# PIC is the default on this platform
|
||||
|
@ -5011,7 +5081,7 @@ AC_MSG_CHECKING([for $compiler option to produce PIC])
|
|||
esac
|
||||
else
|
||||
case $host_os in
|
||||
aix4* | aix5*)
|
||||
aix[[4-9]]*)
|
||||
# All AIX code is PIC.
|
||||
if test "$host_cpu" = ia64; then
|
||||
# AIX 5 now supports IA64 processor
|
||||
|
@ -5107,7 +5177,7 @@ AC_MSG_CHECKING([for $compiler option to produce PIC])
|
|||
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
|
||||
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static'
|
||||
;;
|
||||
pgCC*)
|
||||
pgCC* | pgcpp*)
|
||||
# Portland Group C++ compiler.
|
||||
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
|
||||
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
|
||||
|
@ -5258,7 +5328,8 @@ AC_MSG_CHECKING([for $compiler option to produce PIC])
|
|||
# built for inclusion in a dll (and should export symbols for example).
|
||||
# Although the cygwin gcc ignores -fPIC, still need this for old-style
|
||||
# (--disable-auto-import) libraries
|
||||
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'
|
||||
m4_if([$1], [GCJ], [],
|
||||
[_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
|
||||
;;
|
||||
|
||||
darwin* | rhapsody*)
|
||||
|
@ -5328,7 +5399,8 @@ AC_MSG_CHECKING([for $compiler option to produce PIC])
|
|||
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).
|
||||
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'
|
||||
m4_if([$1], [GCJ], [],
|
||||
[_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
|
||||
;;
|
||||
|
||||
hpux9* | hpux10* | hpux11*)
|
||||
|
@ -5465,7 +5537,7 @@ AC_MSG_RESULT([$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)])
|
|||
#
|
||||
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_prog_compiler_pic_works, $1),
|
||||
_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
|
||||
"" | " "*) ;;
|
||||
|
@ -5489,7 +5561,7 @@ esac
|
|||
#
|
||||
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_prog_compiler_static_works, $1),
|
||||
_LT_AC_TAGVAR(lt_cv_prog_compiler_static_works, $1),
|
||||
$lt_tmp_static_flag,
|
||||
[],
|
||||
[_LT_AC_TAGVAR(lt_prog_compiler_static, $1)=])
|
||||
|
@ -5505,7 +5577,7 @@ 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
|
||||
aix4* | aix5*)
|
||||
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
|
||||
|
@ -5527,6 +5599,7 @@ ifelse([$1],[CXX],[
|
|||
_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)=
|
||||
|
@ -5557,12 +5630,14 @@ ifelse([$1],[CXX],[
|
|||
# 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_"
|
||||
_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])
|
||||
|
@ -5612,7 +5687,7 @@ ifelse([$1],[CXX],[
|
|||
|
||||
# See if GNU ld supports shared libraries.
|
||||
case $host_os in
|
||||
aix3* | aix4* | aix5*)
|
||||
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
|
||||
|
@ -5832,7 +5907,7 @@ _LT_EOF
|
|||
fi
|
||||
;;
|
||||
|
||||
aix4* | aix5*)
|
||||
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.
|
||||
|
@ -5852,7 +5927,7 @@ _LT_EOF
|
|||
# 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]].*|aix5*)
|
||||
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
|
||||
|
@ -6012,11 +6087,10 @@ _LT_EOF
|
|||
_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_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 -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~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(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*)
|
||||
|
@ -6597,7 +6671,7 @@ AC_SUBST([SED])
|
|||
AC_MSG_RESULT([$SED])
|
||||
])
|
||||
|
||||
# Copyright (C) 2002, 2003, 2005, 2006 Free Software Foundation, Inc.
|
||||
# Copyright (C) 2002, 2003, 2005, 2006, 2007 Free Software Foundation, Inc.
|
||||
#
|
||||
# This file is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
|
@ -6612,7 +6686,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], [],
|
||||
m4_if([$1], [1.10.1], [],
|
||||
[AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
|
||||
])
|
||||
|
||||
|
@ -6628,8 +6702,10 @@ 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])dnl
|
||||
_AM_AUTOCONF_VERSION(m4_PACKAGE_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_AUX_DIR_EXPAND -*- Autoconf -*-
|
||||
|
||||
|
@ -6901,7 +6977,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 10q "$mf" | grep '^#.*generated by automake' > /dev/null 2>&1; then
|
||||
if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
|
||||
dirpart=`AS_DIRNAME("$mf")`
|
||||
else
|
||||
continue
|
||||
|
@ -6949,13 +7025,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 Free Software Foundation, Inc.
|
||||
# 2005, 2006, 2008 Free Software Foundation, Inc.
|
||||
#
|
||||
# This file is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# serial 12
|
||||
# serial 13
|
||||
|
||||
# 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.
|
||||
|
@ -7060,16 +7136,17 @@ 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
|
||||
$1 | $1:* )
|
||||
$_am_arg | $_am_arg:* )
|
||||
break ;;
|
||||
* )
|
||||
_am_stamp_count=`expr $_am_stamp_count + 1` ;;
|
||||
esac
|
||||
done
|
||||
echo "timestamp for $1" >`AS_DIRNAME([$1])`/stamp-h[]$_am_stamp_count])
|
||||
echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
|
||||
|
||||
# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
|
||||
#
|
||||
|
@ -7362,7 +7439,7 @@ AC_SUBST([INSTALL_STRIP_PROGRAM])])
|
|||
|
||||
# _AM_SUBST_NOTMAKE(VARIABLE)
|
||||
# ---------------------------
|
||||
# Prevent Automake from outputing VARIABLE = @VARIABLE@ in Makefile.in.
|
||||
# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
|
||||
# This macro is traced by Automake.
|
||||
AC_DEFUN([_AM_SUBST_NOTMAKE])
|
||||
|
||||
|
|
|
@ -2,10 +2,10 @@
|
|||
# Process this file with autoconf to produce a configure script.
|
||||
|
||||
AC_PREREQ(2.59)
|
||||
AC_INIT([XQilla],[2.1.2],[])
|
||||
AC_INIT([XQilla],[2.1.3],[])
|
||||
AC_CONFIG_AUX_DIR(autotools)
|
||||
AC_CANONICAL_TARGET([])
|
||||
AM_INIT_AUTOMAKE(XQilla, 2.1.2,)
|
||||
AM_INIT_AUTOMAKE(XQilla, 2.1.3,)
|
||||
AC_CONFIG_SRCDIR([src/runtime/Result.cpp])
|
||||
AC_CONFIG_HEADERS([src/config/xqilla_config_unix.h])
|
||||
|
||||
|
@ -125,7 +125,7 @@ if test "$ac_found_getcontenttype" = yes
|
|||
then
|
||||
AC_DEFINE(HAVE_GETCONTENTTYPE)
|
||||
else
|
||||
AC_MSG_ERROR([The Xerces-C source code must be patched with the content type patch: xqilla/src/xercesc_content_type.patch])
|
||||
AC_MSG_WARN([XQilla will build with reduced functionality. To change this apply xqilla/src/xercesc_content_type.patch to Xerces-C 2.8.])
|
||||
fi
|
||||
|
||||
# Check for the RegularExpression::allMatches() method
|
||||
|
@ -144,7 +144,7 @@ if test "$ac_found_allmatches" = yes
|
|||
then
|
||||
AC_DEFINE(HAVE_ALLMATCHES)
|
||||
else
|
||||
AC_MSG_ERROR([The Xerces-C source code must be patched with the regex patch: xqilla/src/xercesc_regex.patch])
|
||||
AC_MSG_WARN([XQilla will build with reduced functionality. To change this apply xqilla/src/xercesc_regex.patch to Xerces-C 2.8.])
|
||||
fi
|
||||
|
||||
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
# Makefile.in generated by automake 1.10 from Makefile.am.
|
||||
# Makefile.in generated by automake 1.10.1 from Makefile.am.
|
||||
# @configure_input@
|
||||
|
||||
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
||||
# 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
|
||||
# 2003, 2004, 2005, 2006, 2007, 2008 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,6 +77,7 @@ CXXFLAGS = @CXXFLAGS@
|
|||
CYGPATH_W = @CYGPATH_W@
|
||||
DEFS = @DEFS@
|
||||
DEPDIR = @DEPDIR@
|
||||
DSYMUTIL = @DSYMUTIL@
|
||||
ECHO = @ECHO@
|
||||
ECHO_C = @ECHO_C@
|
||||
ECHO_N = @ECHO_N@
|
||||
|
@ -102,6 +103,7 @@ LN_S = @LN_S@
|
|||
LTLIBOBJS = @LTLIBOBJS@
|
||||
MAKEINFO = @MAKEINFO@
|
||||
MKDIR_P = @MKDIR_P@
|
||||
NMEDIT = @NMEDIT@
|
||||
OBJEXT = @OBJEXT@
|
||||
PACKAGE = @PACKAGE@
|
||||
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
||||
|
@ -571,9 +573,9 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
|
|||
exit 1;; \
|
||||
esac; \
|
||||
done; \
|
||||
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign include/Makefile'; \
|
||||
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu include/Makefile'; \
|
||||
cd $(top_srcdir) && \
|
||||
$(AUTOMAKE) --foreign include/Makefile
|
||||
$(AUTOMAKE) --gnu include/Makefile
|
||||
.PRECIOUS: Makefile
|
||||
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||
@case '$?' in \
|
||||
|
@ -622,8 +624,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; } \
|
||||
END { for (i in files) print i; }'`; \
|
||||
$(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
|
||||
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
||||
mkid -fID $$unique
|
||||
tags: TAGS
|
||||
|
||||
|
@ -635,8 +637,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; } \
|
||||
END { for (i in files) print i; }'`; \
|
||||
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { 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) \
|
||||
|
@ -646,13 +648,12 @@ 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; } \
|
||||
END { for (i in files) print i; }'`; \
|
||||
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
||||
test -z "$(CTAGS_ARGS)$$tags$$unique" \
|
||||
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
|
||||
$$tags $$unique
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*
|
||||
* $Id: StaticAnalysis.hpp 475 2008-01-08 18:47:44Z jpcs $
|
||||
* $Id: StaticAnalysis.hpp 556 2008-07-17 14:33:27Z jpcs $
|
||||
*/
|
||||
|
||||
#ifndef _STATICANALYSIS_HPP
|
||||
|
@ -27,16 +27,10 @@
|
|||
#include <xqilla/framework/XQillaExport.hpp>
|
||||
#include <xqilla/ast/StaticType.hpp>
|
||||
|
||||
#include <xercesc/util/RefHash2KeysTableOf.hpp>
|
||||
#include <xercesc/util/StringPool.hpp>
|
||||
|
||||
#include <vector>
|
||||
|
||||
class XPath2MemoryManager;
|
||||
|
||||
typedef XERCES_CPP_NAMESPACE_QUALIFIER RefHash2KeysTableOf<int> VariableAccessSet;
|
||||
typedef XERCES_CPP_NAMESPACE_QUALIFIER RefHash2KeysTableOfEnumerator<int> VariableAccessSetEnumerator;
|
||||
|
||||
/**
|
||||
* Records access to various parts of the context during static resolution.
|
||||
*/
|
||||
|
@ -136,9 +130,18 @@ private:
|
|||
unsigned int _properties;
|
||||
StaticType _staticType;
|
||||
|
||||
VariableAccessSet _dynamicVariables;
|
||||
XERCES_CPP_NAMESPACE_QUALIFIER XMLStringPool _uriPool;
|
||||
XPath2MemoryManager* _memMgr;
|
||||
class VarEntry
|
||||
{
|
||||
public:
|
||||
VarEntry(const XMLCh *u, const XMLCh *n, VarEntry *p)
|
||||
: uri(u), name(n), prev(p) {}
|
||||
|
||||
const XMLCh *uri, *name;
|
||||
VarEntry *prev;
|
||||
};
|
||||
|
||||
VarEntry *_dynamicVariables;
|
||||
XPath2MemoryManager *_memMgr;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*
|
||||
* $Id: QueryPathTreeGenerator.hpp 475 2008-01-08 18:47:44Z jpcs $
|
||||
* $Id: QueryPathTreeGenerator.hpp 549 2008-06-26 14:27:53Z lauren_foutz $
|
||||
*/
|
||||
|
||||
#ifndef _QUERYPATHTREEGENERATOR_HPP
|
||||
|
@ -37,7 +37,7 @@ typedef std::map<const XMLCh *, QueryPathNode*> QPNMap;
|
|||
* Generates QueryPathNode trees of the paths
|
||||
* in the documents that will be navigated.
|
||||
*/
|
||||
class QueryPathTreeGenerator : public Optimizer
|
||||
class XQILLA_API QueryPathTreeGenerator : public Optimizer
|
||||
{
|
||||
public:
|
||||
QueryPathTreeGenerator(DynamicContext *context, Optimizer *parent = 0);
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*
|
||||
* $Id: SequenceType.hpp 475 2008-01-08 18:47:44Z jpcs $
|
||||
* $Id: SequenceType.hpp 556 2008-07-17 14:33:27Z jpcs $
|
||||
*/
|
||||
|
||||
#ifndef _SEQUENCETYPE_HPP
|
||||
|
@ -32,6 +32,10 @@
|
|||
class Item;
|
||||
class XPath2MemoryManager;
|
||||
|
||||
XERCES_CPP_NAMESPACE_BEGIN
|
||||
class XMLBuffer;
|
||||
XERCES_CPP_NAMESPACE_END
|
||||
|
||||
class XQILLA_API SequenceType : public LocationInfo
|
||||
{
|
||||
public:
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*
|
||||
* $Id: StaticAnalysis.cpp 475 2008-01-08 18:47:44Z jpcs $
|
||||
* $Id: StaticAnalysis.cpp 556 2008-07-17 14:33:27Z jpcs $
|
||||
*/
|
||||
|
||||
#include "../config/xqilla_config.h"
|
||||
|
@ -27,19 +27,18 @@
|
|||
#include <xqilla/utils/XPath2NSUtils.hpp>
|
||||
#include <xqilla/utils/UTF8Str.hpp>
|
||||
|
||||
XERCES_CPP_NAMESPACE_USE;
|
||||
using namespace std;
|
||||
|
||||
StaticAnalysis::StaticAnalysis(XPath2MemoryManager* memMgr)
|
||||
: _dynamicVariables(17, false, memMgr),
|
||||
_uriPool(17, memMgr),
|
||||
: _dynamicVariables(0),
|
||||
_memMgr(memMgr)
|
||||
{
|
||||
clear();
|
||||
}
|
||||
|
||||
StaticAnalysis::StaticAnalysis(const StaticAnalysis &o, XPath2MemoryManager* memMgr)
|
||||
: _dynamicVariables(17, false, memMgr),
|
||||
_uriPool(17, memMgr),
|
||||
: _dynamicVariables(0),
|
||||
_memMgr(memMgr)
|
||||
{
|
||||
clear();
|
||||
|
@ -70,8 +69,12 @@ void StaticAnalysis::clear()
|
|||
_properties = 0;
|
||||
_staticType = StaticType();
|
||||
|
||||
_dynamicVariables.removeAll();
|
||||
_uriPool.flushAll();
|
||||
VarEntry *tmp;
|
||||
while(_dynamicVariables) {
|
||||
tmp = _dynamicVariables;
|
||||
_dynamicVariables = tmp->prev;
|
||||
_memMgr->deallocate(tmp);
|
||||
}
|
||||
}
|
||||
|
||||
void StaticAnalysis::contextItemUsed(bool value)
|
||||
|
@ -149,23 +152,27 @@ void StaticAnalysis::variableUsed(const XMLCh *namespaceURI, const XMLCh *name)
|
|||
{
|
||||
namespaceURI = _memMgr->getPooledString(namespaceURI);
|
||||
name = _memMgr->getPooledString(name);
|
||||
unsigned int nsID = _uriPool.addOrFind(namespaceURI);
|
||||
_dynamicVariables.put((void*)name, nsID, 0);
|
||||
|
||||
VarEntry *entry = _dynamicVariables;
|
||||
while(entry) {
|
||||
if(entry->uri == namespaceURI && entry->name == name) {
|
||||
return;
|
||||
}
|
||||
entry = entry->prev;
|
||||
}
|
||||
|
||||
_dynamicVariables = new (_memMgr) VarEntry(namespaceURI, name, _dynamicVariables);
|
||||
}
|
||||
|
||||
vector<pair<const XMLCh*, const XMLCh*> > StaticAnalysis::variablesUsed() const
|
||||
{
|
||||
vector<pair<const XMLCh*, const XMLCh*> > result;
|
||||
|
||||
const XMLCh* namespaceURI;
|
||||
const XMLCh* name;
|
||||
int nsID;
|
||||
VariableAccessSetEnumerator it(const_cast<VariableAccessSet *>(&_dynamicVariables));
|
||||
while(it.hasMoreElements()) {
|
||||
it.nextElementKey((void*&)name, nsID);
|
||||
namespaceURI = _uriPool.getValueForId(nsID);
|
||||
result.push_back(pair<const XMLCh*, const XMLCh*>(namespaceURI, name));
|
||||
}
|
||||
VarEntry *entry = _dynamicVariables;
|
||||
while(entry) {
|
||||
result.push_back(pair<const XMLCh*, const XMLCh*>(entry->uri, entry->name));
|
||||
entry = entry->prev;
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
@ -174,11 +181,19 @@ bool StaticAnalysis::removeVariable(const XMLCh *namespaceURI, const XMLCh *name
|
|||
{
|
||||
namespaceURI = _memMgr->getPooledString(namespaceURI);
|
||||
name = _memMgr->getPooledString(name);
|
||||
unsigned int nsID = _uriPool.getId(namespaceURI);
|
||||
if(nsID != 0 && _dynamicVariables.containsKey((void*)name, nsID)) {
|
||||
_dynamicVariables.removeKey((void*)name, nsID);
|
||||
return true;
|
||||
|
||||
VarEntry **parent = &_dynamicVariables;
|
||||
while(*parent) {
|
||||
if((*parent)->uri == namespaceURI && (*parent)->name == name) {
|
||||
VarEntry *tmp = *parent;
|
||||
*parent = tmp->prev;
|
||||
_memMgr->deallocate(tmp);
|
||||
return true;
|
||||
}
|
||||
|
||||
parent = &(*parent)->prev;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
|
@ -186,10 +201,15 @@ bool StaticAnalysis::isVariableUsed(const XMLCh *namespaceURI, const XMLCh *name
|
|||
{
|
||||
namespaceURI = _memMgr->getPooledString(namespaceURI);
|
||||
name = _memMgr->getPooledString(name);
|
||||
unsigned int nsID = _uriPool.getId(namespaceURI);
|
||||
if(nsID != 0 && _dynamicVariables.containsKey((void*)name, nsID)) {
|
||||
return true;
|
||||
|
||||
VarEntry *entry = _dynamicVariables;
|
||||
while(entry) {
|
||||
if(entry->uri == namespaceURI && entry->name == name) {
|
||||
return true;
|
||||
}
|
||||
entry = entry->prev;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
|
@ -208,15 +228,10 @@ void StaticAnalysis::add(const StaticAnalysis &o)
|
|||
if(o._updating) _updating = true;
|
||||
// Don't copy _possiblyUpdating
|
||||
|
||||
const XMLCh* namespaceURI;
|
||||
const XMLCh* name;
|
||||
int nsID;
|
||||
// No const enumerator is provided...
|
||||
VariableAccessSetEnumerator it(const_cast<VariableAccessSet *>(&o._dynamicVariables));
|
||||
while(it.hasMoreElements()) {
|
||||
it.nextElementKey((void*&)name, nsID);
|
||||
namespaceURI = o._uriPool.getValueForId(nsID);
|
||||
variableUsed(namespaceURI, name);
|
||||
VarEntry *entry = o._dynamicVariables;
|
||||
while(entry) {
|
||||
variableUsed(entry->uri, entry->name);
|
||||
entry = entry->prev;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -231,15 +246,10 @@ void StaticAnalysis::addExceptContextFlags(const StaticAnalysis &o)
|
|||
if(o._updating) _updating = true;
|
||||
// Don't copy _possiblyUpdating
|
||||
|
||||
const XMLCh* namespaceURI;
|
||||
const XMLCh* name;
|
||||
int nsID;
|
||||
// No const enumerator is provided...
|
||||
VariableAccessSetEnumerator it(const_cast<VariableAccessSet *>(&o._dynamicVariables));
|
||||
while(it.hasMoreElements()) {
|
||||
it.nextElementKey((void*&)name, nsID);
|
||||
namespaceURI = o._uriPool.getValueForId(nsID);
|
||||
variableUsed(namespaceURI, name);
|
||||
VarEntry *entry = o._dynamicVariables;
|
||||
while(entry) {
|
||||
variableUsed(entry->uri, entry->name);
|
||||
entry = entry->prev;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -249,13 +259,13 @@ bool StaticAnalysis::isUsed() const
|
|||
{
|
||||
return _contextItem || _contextPosition || _contextSize
|
||||
|| _currentTime || _implicitTimezone || _availableCollections
|
||||
|| _availableDocuments || _forceNoFolding || !_dynamicVariables.isEmpty();
|
||||
|| _availableDocuments || _forceNoFolding || _dynamicVariables;
|
||||
}
|
||||
|
||||
bool StaticAnalysis::isUsedExceptContextFlags() const
|
||||
{
|
||||
return _currentTime || _implicitTimezone || _availableCollections
|
||||
|| _availableDocuments || _forceNoFolding || !_dynamicVariables.isEmpty();
|
||||
|| _availableDocuments || _forceNoFolding || _dynamicVariables;
|
||||
}
|
||||
|
||||
void StaticAnalysis::creative(bool value)
|
||||
|
@ -324,16 +334,10 @@ std::string StaticAnalysis::toString() const
|
|||
s << "Updating: " << (_updating ? "true" : "false") << std::endl;
|
||||
s << "Possibly Updating: " << (_possiblyUpdating ? "true" : "false") << std::endl;
|
||||
|
||||
s << "Variables Used: [";
|
||||
const XMLCh* namespaceURI;
|
||||
const XMLCh* name;
|
||||
int nsID;
|
||||
s << "Variables Used: [";
|
||||
bool first = true;
|
||||
VariableAccessSetEnumerator it(const_cast<VariableAccessSet *>(&_dynamicVariables));
|
||||
while(it.hasMoreElements()) {
|
||||
it.nextElementKey((void*&)name, nsID);
|
||||
namespaceURI = _uriPool.getValueForId(nsID);
|
||||
|
||||
VarEntry *entry = _dynamicVariables;
|
||||
while(entry) {
|
||||
if(first) {
|
||||
first = false;
|
||||
}
|
||||
|
@ -341,8 +345,9 @@ std::string StaticAnalysis::toString() const
|
|||
s << ", ";
|
||||
}
|
||||
|
||||
s << "{" << UTF8(namespaceURI) << "}:" << UTF8(name);
|
||||
}
|
||||
s << "{" << UTF8(entry->uri) << "}" << UTF8(entry->name);
|
||||
entry = entry->prev;
|
||||
}
|
||||
s << "]" << std::endl;
|
||||
|
||||
return s.str();
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*
|
||||
* $Id: XQInstanceOf.cpp 475 2008-01-08 18:47:44Z jpcs $
|
||||
* $Id: XQInstanceOf.cpp 544 2008-05-15 15:20:55Z gmfeinberg $
|
||||
*/
|
||||
|
||||
#include "../config/xqilla_config.h"
|
||||
|
@ -129,8 +129,8 @@ Item::Ptr XQInstanceOf::InstanceOfResult::getSingleResult(DynamicContext *contex
|
|||
catch(const XPath2TypeMatchException &ex) {
|
||||
return (const Item::Ptr)context->getItemFactory()->createBoolean(false, context);
|
||||
}
|
||||
|
||||
return (const Item::Ptr)context->getItemFactory()->createBoolean(true, context);
|
||||
ATBooleanOrDerived::Ptr ptr = context->getItemFactory()->createBoolean(true, context);
|
||||
return Item::Ptr(ptr.get());
|
||||
}
|
||||
|
||||
std::string XQInstanceOf::InstanceOfResult::asString(DynamicContext *context, int indent) const
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*
|
||||
* $Id: ExternalFunction.cpp 475 2008-01-08 18:47:44Z jpcs $
|
||||
* $Id: ExternalFunction.cpp 556 2008-07-17 14:33:27Z jpcs $
|
||||
*/
|
||||
|
||||
#include "../config/xqilla_config.h"
|
||||
|
@ -25,6 +25,8 @@
|
|||
#include <xqilla/runtime/Result.hpp>
|
||||
#include <xqilla/update/PendingUpdateList.hpp>
|
||||
|
||||
#include <xercesc/framework/XMLBuffer.hpp>
|
||||
|
||||
XERCES_CPP_NAMESPACE_USE;
|
||||
|
||||
ExternalFunction::ExternalFunction(const XMLCh *uri, const XMLCh *name, unsigned int numberOfArgs, XPath2MemoryManager *mm)
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*
|
||||
* $Id: FunctionReplace.cpp 486 2008-02-01 19:21:10Z gmfeinberg $
|
||||
* $Id: FunctionReplace.cpp 561 2008-07-29 16:04:41Z jpcs $
|
||||
*/
|
||||
|
||||
#include "../config/xqilla_config.h"
|
||||
|
@ -135,5 +135,9 @@ const XMLCh *FunctionReplace::replace(const XMLCh *input, const XMLCh *pattern,
|
|||
|
||||
//Now attempt to replace
|
||||
RegularExpression regEx(pattern, optionsBuf.getRawBuffer(), mm);
|
||||
#ifdef HAVE_ALLMATCHES
|
||||
return regEx.replace(input, replacement, mm);
|
||||
#else
|
||||
return regEx.replace(input, replacement);
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*
|
||||
* $Id: FunctionSerializeJSON.cpp 506 2008-02-21 14:41:20Z jpcs $
|
||||
* $Id: FunctionSerializeJSON.cpp 541 2008-05-09 10:36:10Z jpcs $
|
||||
*/
|
||||
|
||||
#include "../config/xqilla_config.h"
|
||||
|
@ -328,6 +328,9 @@ private:
|
|||
XMLBuffer buffer_;
|
||||
const LocationInfo *loc_;
|
||||
|
||||
struct StackObject;
|
||||
friend struct StackObject;
|
||||
|
||||
struct StackObject {
|
||||
StackObject(Type t) : type(t), seenOne(false) {}
|
||||
Type type;
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*
|
||||
* $Id: FunctionUnparsedText.cpp 480 2008-01-29 02:25:38Z jpcs $
|
||||
* $Id: FunctionUnparsedText.cpp 556 2008-07-17 14:33:27Z jpcs $
|
||||
*/
|
||||
#include "../config/xqilla_config.h"
|
||||
#include <xqilla/functions/FunctionUnparsedText.hpp>
|
||||
|
@ -33,6 +33,7 @@
|
|||
#include <xercesc/framework/URLInputSource.hpp>
|
||||
#include <xercesc/framework/LocalFileInputSource.hpp>
|
||||
#include <xercesc/util/BinInputStream.hpp>
|
||||
#include <xercesc/util/Janitor.hpp>
|
||||
|
||||
XERCES_CPP_NAMESPACE_USE;
|
||||
using namespace std;
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*
|
||||
* $Id: xqilla-commandline.cpp 518 2008-03-07 17:46:47Z jpcs $
|
||||
* $Id: xqilla-commandline.cpp 556 2008-07-17 14:33:27Z jpcs $
|
||||
*/
|
||||
|
||||
#include <iostream>
|
||||
|
@ -120,6 +120,8 @@ private:
|
|||
vector<XQQuery*> queries_;
|
||||
};
|
||||
|
||||
static const XMLCh fwdSlashStr[] = { '/', 0 };
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
// First we parse the command line arguments
|
||||
|
@ -254,7 +256,7 @@ int main(int argc, char *argv[])
|
|||
if(pwd != NULL){
|
||||
XMLCh *baseURI = (XMLCh*)context->getMemoryManager()->allocate((XMLString::stringLen(pwd) + 10)*sizeof(XMLCh));
|
||||
XMLString::fixURI(pwd, baseURI);
|
||||
XMLString::catString(baseURI, &chForwardSlash);
|
||||
XMLString::catString(baseURI, fwdSlashStr);
|
||||
string queryPath(*it1);
|
||||
XMLUri base(baseURI);
|
||||
XMLUri resolved(&base, X(queryPath.c_str()));
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*
|
||||
* $Id: PrintAST.cpp 484 2008-01-31 17:37:16Z jpcs $
|
||||
* $Id: PrintAST.cpp 556 2008-07-17 14:33:27Z jpcs $
|
||||
*/
|
||||
|
||||
// #define SHOW_QUERY_PATH_TREES
|
||||
|
@ -173,7 +173,7 @@ string PrintAST::print(const XQQuery *query, const DynamicContext *context, int
|
|||
s << p.printASTNode(query->getQueryBody(), context, indent + INDENT);
|
||||
|
||||
if(query->getIsLibraryModule()) {
|
||||
s << in << "</Module>";
|
||||
s << in << "</Module>" << endl;
|
||||
}
|
||||
else {
|
||||
s << in << "</XQuery>";
|
||||
|
|
|
@ -41,7 +41,7 @@ declare function local:configurationType($projectType)
|
|||
else if ($projectType eq "app") then $appType
|
||||
else if ($projectType eq "static_lib") then $staticType
|
||||
else if ($projectType eq "static_app") then $appType
|
||||
else error("Unknown project type")
|
||||
else error(fn:QName("", "err"), "Unknown project type")
|
||||
};
|
||||
|
||||
(: "normalize" Windows file paths :)
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# $Id: lib_paths.sed 529 2008-04-09 14:08:31Z gmfeinberg $
|
||||
# $Id: lib_paths.sed 542 2008-05-09 11:07:17Z jpcs $
|
||||
# Default path for XQilla library, and paths to
|
||||
# Xerces
|
||||
#
|
||||
|
@ -16,7 +16,7 @@ s!@XQILLA_LIB_BASE@!xqilla!g
|
|||
|
||||
s!@XQILLA_VERSION_MAJOR@!2!g
|
||||
s!@XQILLA_VERSION_MINOR@!1!g
|
||||
s!@XQILLA_VERSION_PATCH@!2!g
|
||||
s!@XQILLA_VERSION_PATCH@!3!g
|
||||
|
||||
# Xerces is assumed to be source (vs installation)
|
||||
s!@XERCES_LIBHOME@!@XERCES_WINHOME@/Build/Win32/VC6!g
|
||||
|
|
Loading…
Add table
Reference in a new issue