From 28e68f245e49a7ce8bcb1f46fb046788551f9771 Mon Sep 17 00:00:00 2001 From: Axel Pietrois Date: Tue, 22 Nov 2022 16:34:41 +0100 Subject: [PATCH] =?UTF-8?q?Ajout=20de=20la=20biblioth=C3=A8que=20graphique?= =?UTF-8?q?=20et=20d'un=20exemple?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- bibliotheque-graphique-iut-1.1/Makefile | 794 + bibliotheque-graphique-iut-1.1/Makefile.am | 1 + bibliotheque-graphique-iut-1.1/Makefile.in | 794 + bibliotheque-graphique-iut-1.1/README | 8 + bibliotheque-graphique-iut-1.1/aclocal.m4 | 9796 +++++++++++ bibliotheque-graphique-iut-1.1/ar-lib | 270 + bibliotheque-graphique-iut-1.1/compile | 347 + bibliotheque-graphique-iut-1.1/config.guess | 1530 ++ bibliotheque-graphique-iut-1.1/config.h | 84 + bibliotheque-graphique-iut-1.1/config.h.in | 83 + bibliotheque-graphique-iut-1.1/config.log | 701 + bibliotheque-graphique-iut-1.1/config.status | 2059 +++ bibliotheque-graphique-iut-1.1/config.sub | 1782 ++ bibliotheque-graphique-iut-1.1/configure | 14136 ++++++++++++++++ bibliotheque-graphique-iut-1.1/configure.ac | 72 + bibliotheque-graphique-iut-1.1/depcomp | 707 + bibliotheque-graphique-iut-1.1/install-sh | 527 + bibliotheque-graphique-iut-1.1/libtool | 10077 +++++++++++ bibliotheque-graphique-iut-1.1/ltmain.sh | 9655 +++++++++++ bibliotheque-graphique-iut-1.1/missing | 330 + bibliotheque-graphique-iut-1.1/src/Makefile | 602 + .../src/Makefile.am | 5 + .../src/Makefile.in | 602 + .../src/exemples/.deps/ExempleGraphique.Po | 1 + .../src/exemples/.deps/ExempleMandelbrot.Po | 1 + .../src/exemples/.deps/ExempleSouris.Po | 1 + .../src/exemples/.deps/ExempleSprite.Po | 1 + .../src/exemples/ExempleGraphique.c | 334 + .../src/exemples/ExempleMandelbrot.c | 266 + .../src/exemples/ExempleSouris.c | 25 + .../src/exemples/ExempleSprite.c | 78 + .../src/exemples/Makefile | 738 + .../src/exemples/Makefile.am | 53 + .../src/exemples/Makefile.in | 738 + .../src/exemples/images/arctis2.jpg | Bin 0 -> 18374 bytes .../src/exemples/images/nouveau0.xpm | 288 + .../src/exemples/images/nouveau1.xpm | 222 + .../src/exemples/images/nouveau2.xpm | 259 + .../src/exemples/images/nouveau3.xpm | 314 + .../src/exemples/images/nouveau4.xpm | 257 + .../src/exemples/images/nouveau5.xpm | 276 + .../src/exemples/images/nouveauinverse0.xpm | 278 + .../src/exemples/images/nouveauinverse1.xpm | 222 + .../src/exemples/images/nouveauinverse2.xpm | 259 + .../src/exemples/images/nouveauinverse3.xpm | 314 + .../src/exemples/images/nouveauinverse4.xpm | 257 + .../src/exemples/images/nouveauinverse5.xpm | 276 + .../src/exemples/images/walk-0.png | Bin 0 -> 5010 bytes .../src/exemples/images/walk-1.png | Bin 0 -> 4640 bytes .../src/exemples/images/walk-2.png | Bin 0 -> 4979 bytes .../src/exemples/images/walk-3.png | Bin 0 -> 5440 bytes .../src/exemples/images/walk-4.png | Bin 0 -> 5069 bytes .../src/exemples/images/walk-5.png | Bin 0 -> 4953 bytes .../src/exemples/images/walks-0.png | Bin 0 -> 5277 bytes .../src/exemples/images/walks-1.png | Bin 0 -> 4903 bytes .../src/exemples/images/walks-2.png | Bin 0 -> 5254 bytes .../src/exemples/images/walks-3.png | Bin 0 -> 5633 bytes .../src/exemples/images/walks-4.png | Bin 0 -> 5288 bytes .../src/exemples/images/walks-5.png | Bin 0 -> 5142 bytes .../src/include/Makefile | 479 + .../src/include/Makefile.am | 3 + .../src/include/Makefile.in | 479 + .../src/include/graph.h | 149 + .../src/lib/.deps/graph.Plo | 117 + .../src/lib/.deps/image.Plo | 122 + .../src/lib/.libs/graph.o | Bin 0 -> 77968 bytes .../src/lib/.libs/image.o | Bin 0 -> 309240 bytes .../src/lib/.libs/libgraph.a | Bin 0 -> 399074 bytes .../src/lib/.libs/libgraph.la | 1 + .../src/lib/.libs/libgraph.lai | 41 + .../src/lib/.libs/libgraph.so | 1 + .../src/lib/.libs/libgraph.so.0 | 1 + .../src/lib/.libs/libgraph.so.0.0.0 | Bin 0 -> 349336 bytes .../src/lib/Makefile | 634 + .../src/lib/Makefile.am | 8 + .../src/lib/Makefile.in | 634 + .../src/lib/graph.c | 773 + .../src/lib/graph.lo | 12 + .../src/lib/graph.o | Bin 0 -> 81136 bytes .../src/lib/image.c | 4795 ++++++ .../src/lib/image.h | 5 + .../src/lib/image.lo | 12 + .../src/lib/image.o | Bin 0 -> 315560 bytes .../src/lib/libgraph.la | 41 + bibliotheque-graphique-iut-1.1/stamp-h1 | 1 + exemple | Bin 0 -> 20736 bytes exemple.c | 12 + include/graph.h | 149 + lib/libgraph.a | Bin 0 -> 399074 bytes lib/libgraph.la | 41 + lib/libgraph.so | 1 + lib/libgraph.so.0 | 1 + lib/libgraph.so.0.0.0 | Bin 0 -> 349336 bytes 93 files changed, 68932 insertions(+) create mode 100644 bibliotheque-graphique-iut-1.1/Makefile create mode 100644 bibliotheque-graphique-iut-1.1/Makefile.am create mode 100644 bibliotheque-graphique-iut-1.1/Makefile.in create mode 100644 bibliotheque-graphique-iut-1.1/README create mode 100644 bibliotheque-graphique-iut-1.1/aclocal.m4 create mode 100755 bibliotheque-graphique-iut-1.1/ar-lib create mode 100755 bibliotheque-graphique-iut-1.1/compile create mode 100755 bibliotheque-graphique-iut-1.1/config.guess create mode 100644 bibliotheque-graphique-iut-1.1/config.h create mode 100644 bibliotheque-graphique-iut-1.1/config.h.in create mode 100644 bibliotheque-graphique-iut-1.1/config.log create mode 100755 bibliotheque-graphique-iut-1.1/config.status create mode 100755 bibliotheque-graphique-iut-1.1/config.sub create mode 100755 bibliotheque-graphique-iut-1.1/configure create mode 100644 bibliotheque-graphique-iut-1.1/configure.ac create mode 100755 bibliotheque-graphique-iut-1.1/depcomp create mode 100755 bibliotheque-graphique-iut-1.1/install-sh create mode 100755 bibliotheque-graphique-iut-1.1/libtool create mode 100644 bibliotheque-graphique-iut-1.1/ltmain.sh create mode 100755 bibliotheque-graphique-iut-1.1/missing create mode 100644 bibliotheque-graphique-iut-1.1/src/Makefile create mode 100644 bibliotheque-graphique-iut-1.1/src/Makefile.am create mode 100644 bibliotheque-graphique-iut-1.1/src/Makefile.in create mode 100644 bibliotheque-graphique-iut-1.1/src/exemples/.deps/ExempleGraphique.Po create mode 100644 bibliotheque-graphique-iut-1.1/src/exemples/.deps/ExempleMandelbrot.Po create mode 100644 bibliotheque-graphique-iut-1.1/src/exemples/.deps/ExempleSouris.Po create mode 100644 bibliotheque-graphique-iut-1.1/src/exemples/.deps/ExempleSprite.Po create mode 100644 bibliotheque-graphique-iut-1.1/src/exemples/ExempleGraphique.c create mode 100644 bibliotheque-graphique-iut-1.1/src/exemples/ExempleMandelbrot.c create mode 100644 bibliotheque-graphique-iut-1.1/src/exemples/ExempleSouris.c create mode 100644 bibliotheque-graphique-iut-1.1/src/exemples/ExempleSprite.c create mode 100644 bibliotheque-graphique-iut-1.1/src/exemples/Makefile create mode 100644 bibliotheque-graphique-iut-1.1/src/exemples/Makefile.am create mode 100644 bibliotheque-graphique-iut-1.1/src/exemples/Makefile.in create mode 100644 bibliotheque-graphique-iut-1.1/src/exemples/images/arctis2.jpg create mode 100644 bibliotheque-graphique-iut-1.1/src/exemples/images/nouveau0.xpm create mode 100644 bibliotheque-graphique-iut-1.1/src/exemples/images/nouveau1.xpm create mode 100644 bibliotheque-graphique-iut-1.1/src/exemples/images/nouveau2.xpm create mode 100644 bibliotheque-graphique-iut-1.1/src/exemples/images/nouveau3.xpm create mode 100644 bibliotheque-graphique-iut-1.1/src/exemples/images/nouveau4.xpm create mode 100644 bibliotheque-graphique-iut-1.1/src/exemples/images/nouveau5.xpm create mode 100644 bibliotheque-graphique-iut-1.1/src/exemples/images/nouveauinverse0.xpm create mode 100644 bibliotheque-graphique-iut-1.1/src/exemples/images/nouveauinverse1.xpm create mode 100644 bibliotheque-graphique-iut-1.1/src/exemples/images/nouveauinverse2.xpm create mode 100644 bibliotheque-graphique-iut-1.1/src/exemples/images/nouveauinverse3.xpm create mode 100644 bibliotheque-graphique-iut-1.1/src/exemples/images/nouveauinverse4.xpm create mode 100644 bibliotheque-graphique-iut-1.1/src/exemples/images/nouveauinverse5.xpm create mode 100644 bibliotheque-graphique-iut-1.1/src/exemples/images/walk-0.png create mode 100644 bibliotheque-graphique-iut-1.1/src/exemples/images/walk-1.png create mode 100644 bibliotheque-graphique-iut-1.1/src/exemples/images/walk-2.png create mode 100644 bibliotheque-graphique-iut-1.1/src/exemples/images/walk-3.png create mode 100644 bibliotheque-graphique-iut-1.1/src/exemples/images/walk-4.png create mode 100644 bibliotheque-graphique-iut-1.1/src/exemples/images/walk-5.png create mode 100644 bibliotheque-graphique-iut-1.1/src/exemples/images/walks-0.png create mode 100644 bibliotheque-graphique-iut-1.1/src/exemples/images/walks-1.png create mode 100644 bibliotheque-graphique-iut-1.1/src/exemples/images/walks-2.png create mode 100644 bibliotheque-graphique-iut-1.1/src/exemples/images/walks-3.png create mode 100644 bibliotheque-graphique-iut-1.1/src/exemples/images/walks-4.png create mode 100644 bibliotheque-graphique-iut-1.1/src/exemples/images/walks-5.png create mode 100644 bibliotheque-graphique-iut-1.1/src/include/Makefile create mode 100644 bibliotheque-graphique-iut-1.1/src/include/Makefile.am create mode 100644 bibliotheque-graphique-iut-1.1/src/include/Makefile.in create mode 100644 bibliotheque-graphique-iut-1.1/src/include/graph.h create mode 100644 bibliotheque-graphique-iut-1.1/src/lib/.deps/graph.Plo create mode 100644 bibliotheque-graphique-iut-1.1/src/lib/.deps/image.Plo create mode 100644 bibliotheque-graphique-iut-1.1/src/lib/.libs/graph.o create mode 100644 bibliotheque-graphique-iut-1.1/src/lib/.libs/image.o create mode 100644 bibliotheque-graphique-iut-1.1/src/lib/.libs/libgraph.a create mode 120000 bibliotheque-graphique-iut-1.1/src/lib/.libs/libgraph.la create mode 100644 bibliotheque-graphique-iut-1.1/src/lib/.libs/libgraph.lai create mode 120000 bibliotheque-graphique-iut-1.1/src/lib/.libs/libgraph.so create mode 120000 bibliotheque-graphique-iut-1.1/src/lib/.libs/libgraph.so.0 create mode 100755 bibliotheque-graphique-iut-1.1/src/lib/.libs/libgraph.so.0.0.0 create mode 100644 bibliotheque-graphique-iut-1.1/src/lib/Makefile create mode 100644 bibliotheque-graphique-iut-1.1/src/lib/Makefile.am create mode 100644 bibliotheque-graphique-iut-1.1/src/lib/Makefile.in create mode 100644 bibliotheque-graphique-iut-1.1/src/lib/graph.c create mode 100644 bibliotheque-graphique-iut-1.1/src/lib/graph.lo create mode 100644 bibliotheque-graphique-iut-1.1/src/lib/graph.o create mode 100644 bibliotheque-graphique-iut-1.1/src/lib/image.c create mode 100644 bibliotheque-graphique-iut-1.1/src/lib/image.h create mode 100644 bibliotheque-graphique-iut-1.1/src/lib/image.lo create mode 100644 bibliotheque-graphique-iut-1.1/src/lib/image.o create mode 100644 bibliotheque-graphique-iut-1.1/src/lib/libgraph.la create mode 100644 bibliotheque-graphique-iut-1.1/stamp-h1 create mode 100755 exemple create mode 100644 exemple.c create mode 100644 include/graph.h create mode 100644 lib/libgraph.a create mode 100755 lib/libgraph.la create mode 120000 lib/libgraph.so create mode 120000 lib/libgraph.so.0 create mode 100755 lib/libgraph.so.0.0.0 diff --git a/bibliotheque-graphique-iut-1.1/Makefile b/bibliotheque-graphique-iut-1.1/Makefile new file mode 100644 index 0000000..2a2272c --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/Makefile @@ -0,0 +1,794 @@ +# Makefile.in generated by automake 1.14 from Makefile.am. +# Makefile. Generated from Makefile.in by configure. + +# Copyright (C) 1994-2013 Free Software Foundation, Inc. + +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + + + +am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)' +am__make_running_with_option = \ + case $${target_option-} in \ + ?) ;; \ + *) echo "am__make_running_with_option: internal error: invalid" \ + "target option '$${target_option-}' specified" >&2; \ + exit 1;; \ + esac; \ + has_opt=no; \ + sane_makeflags=$$MAKEFLAGS; \ + if $(am__is_gnu_make); then \ + sane_makeflags=$$MFLAGS; \ + else \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + bs=\\; \ + sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ + | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ + esac; \ + fi; \ + skip_next=no; \ + strip_trailopt () \ + { \ + flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ + }; \ + for flg in $$sane_makeflags; do \ + test $$skip_next = yes && { skip_next=no; continue; }; \ + case $$flg in \ + *=*|--*) continue;; \ + -*I) strip_trailopt 'I'; skip_next=yes;; \ + -*I?*) strip_trailopt 'I';; \ + -*O) strip_trailopt 'O'; skip_next=yes;; \ + -*O?*) strip_trailopt 'O';; \ + -*l) strip_trailopt 'l'; skip_next=yes;; \ + -*l?*) strip_trailopt 'l';; \ + -[dEDm]) skip_next=yes;; \ + -[JT]) skip_next=yes;; \ + esac; \ + case $$flg in \ + *$$target_option*) has_opt=yes; break;; \ + esac; \ + done; \ + test $$has_opt = yes +am__make_dryrun = (target_option=n; $(am__make_running_with_option)) +am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +pkgdatadir = $(datadir)/bibliotheque-graphique-iut +pkgincludedir = $(includedir)/bibliotheque-graphique-iut +pkglibdir = $(libdir)/bibliotheque-graphique-iut +pkglibexecdir = $(libexecdir)/bibliotheque-graphique-iut +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = x86_64-unknown-linux-gnu +host_triplet = x86_64-unknown-linux-gnu +subdir = . +DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \ + $(top_srcdir)/configure $(am__configure_deps) \ + $(srcdir)/config.h.in README ar-lib compile config.guess \ + config.sub depcomp install-sh missing ltmain.sh +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ + configure.lineno config.status.lineno +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = config.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +AM_V_P = $(am__v_P_$(V)) +am__v_P_ = $(am__v_P_$(AM_DEFAULT_VERBOSITY)) +am__v_P_0 = false +am__v_P_1 = : +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +am__v_GEN_1 = +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ +am__v_at_1 = +SOURCES = +DIST_SOURCES = +RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \ + ctags-recursive dvi-recursive html-recursive info-recursive \ + install-data-recursive install-dvi-recursive \ + install-exec-recursive install-html-recursive \ + install-info-recursive install-pdf-recursive \ + install-ps-recursive install-recursive installcheck-recursive \ + installdirs-recursive pdf-recursive ps-recursive \ + tags-recursive uninstall-recursive +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ + distclean-recursive maintainer-clean-recursive +am__recursive_targets = \ + $(RECURSIVE_TARGETS) \ + $(RECURSIVE_CLEAN_TARGETS) \ + $(am__extra_recursive_targets) +AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ + cscope distdir dist dist-all distcheck +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \ + $(LISP)config.h.in +# Read a list of newline-separated strings from the standard input, +# and print each of them once, without duplicates. Input order is +# *not* preserved. +am__uniquify_input = $(AWK) '\ + BEGIN { nonempty = 0; } \ + { items[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in items) print i; }; } \ +' +# Make sure the list of sources is unique. This is necessary because, +# e.g., the same source file might be shared among _SOURCES variables +# for different programs/libraries. +am__define_uniq_tagged_files = \ + list='$(am__tagged_files)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | $(am__uniquify_input)` +ETAGS = etags +CTAGS = ctags +CSCOPE = cscope +DIST_SUBDIRS = $(SUBDIRS) +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +distdir = $(PACKAGE)-$(VERSION) +top_distdir = $(distdir) +am__remove_distdir = \ + if test -d "$(distdir)"; then \ + find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \ + && rm -rf "$(distdir)" \ + || { sleep 5 && rm -rf "$(distdir)"; }; \ + else :; fi +am__post_remove_distdir = $(am__remove_distdir) +am__relativize = \ + dir0=`pwd`; \ + sed_first='s,^\([^/]*\)/.*$$,\1,'; \ + sed_rest='s,^[^/]*/*,,'; \ + sed_last='s,^.*/\([^/]*\)$$,\1,'; \ + sed_butlast='s,/*[^/]*$$,,'; \ + while test -n "$$dir1"; do \ + first=`echo "$$dir1" | sed -e "$$sed_first"`; \ + if test "$$first" != "."; then \ + if test "$$first" = ".."; then \ + dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ + dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ + else \ + first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ + if test "$$first2" = "$$first"; then \ + dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ + else \ + dir2="../$$dir2"; \ + fi; \ + dir0="$$dir0"/"$$first"; \ + fi; \ + fi; \ + dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ + done; \ + reldir="$$dir2" +DIST_ARCHIVES = $(distdir).tar.gz +GZIP_ENV = --best +DIST_TARGETS = dist-gzip +distuninstallcheck_listfiles = find . -type f -print +am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \ + | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$' +distcleancheck_listfiles = find . -type f -print +ACLOCAL = aclocal-1.14 +AMTAR = $${TAR-tar} +AM_DEFAULT_VERBOSITY = 1 +AR = ar +AUTOCONF = autoconf +AUTOHEADER = autoheader +AUTOMAKE = automake-1.14 +AWK = gawk +CC = gcc +CCDEPMODE = depmode=gcc3 +CFLAGS = -g -O2 +CPP = gcc -E +CPPFLAGS = +CYGPATH_W = echo +DEFS = -DHAVE_CONFIG_H +DEPDIR = .deps +DLLTOOL = false +DSYMUTIL = +DUMPBIN = +ECHO_C = +ECHO_N = -n +ECHO_T = +EGREP = /usr/bin/grep -E +EXEEXT = +EXEMPLES_IMAGES_DIR = ${datarootdir}/libgraph/images/ +FGREP = /usr/bin/grep -F +GREP = /usr/bin/grep +INSTALL = /usr/bin/install -c +INSTALL_DATA = ${INSTALL} -m 644 +INSTALL_PROGRAM = ${INSTALL} +INSTALL_SCRIPT = ${INSTALL} +INSTALL_STRIP_PROGRAM = $(install_sh) -c -s +LD = /usr/bin/ld -m elf_x86_64 +LDFLAGS = +LIBOBJS = +LIBS = -lXpm +LIBTOOL = $(SHELL) $(top_builddir)/libtool +LIPO = +LN_S = ln -s +LTLIBOBJS = +MAKEINFO = makeinfo +MANIFEST_TOOL = : +MKDIR_P = /usr/bin/mkdir -p +NM = /usr/bin/nm -B +NMEDIT = +OBJDUMP = objdump +OBJEXT = o +OTOOL = +OTOOL64 = +PACKAGE = bibliotheque-graphique-iut +PACKAGE_BUGREPORT = monnerat@u-pec.fr +PACKAGE_NAME = bibliotheque graphique iut +PACKAGE_STRING = bibliotheque graphique iut 1.1 +PACKAGE_TARNAME = bibliotheque-graphique-iut +PACKAGE_URL = +PACKAGE_VERSION = 1.1 +PATH_SEPARATOR = : +PREFIX = /export/home/an22/pietrois/SAE11_2022 +RANLIB = ranlib +SED = /usr/bin/sed +SET_MAKE = +SHELL = /bin/sh +STRIP = strip +VERSION = 1.1 +abs_builddir = /export/home/an22/pietrois/SAE11_2022/bibliotheque-graphique-iut-1.1 +abs_srcdir = /export/home/an22/pietrois/SAE11_2022/bibliotheque-graphique-iut-1.1 +abs_top_builddir = /export/home/an22/pietrois/SAE11_2022/bibliotheque-graphique-iut-1.1 +abs_top_srcdir = /export/home/an22/pietrois/SAE11_2022/bibliotheque-graphique-iut-1.1 +ac_ct_AR = ar +ac_ct_CC = gcc +ac_ct_DUMPBIN = +am__include = include +am__leading_dot = . +am__quote = +am__tar = $${TAR-tar} chof - "$$tardir" +am__untar = $${TAR-tar} xf - +bindir = ${exec_prefix}/bin +build = x86_64-unknown-linux-gnu +build_alias = +build_cpu = x86_64 +build_os = linux-gnu +build_vendor = unknown +builddir = . +datadir = ${datarootdir} +datarootdir = ${prefix}/share +docdir = ${datarootdir}/doc/${PACKAGE_TARNAME} +dvidir = ${docdir} +exec_prefix = /export/home/an22/pietrois/SAE11_2022 +host = x86_64-unknown-linux-gnu +host_alias = +host_cpu = x86_64 +host_os = linux-gnu +host_vendor = unknown +htmldir = ${docdir} +includedir = ${prefix}/include +infodir = ${datarootdir}/info +install_sh = ${SHELL} /export/home/an22/pietrois/SAE11_2022/bibliotheque-graphique-iut-1.1/install-sh +libdir = ${exec_prefix}/lib +libexecdir = ${exec_prefix}/libexec +localedir = ${datarootdir}/locale +localstatedir = ${prefix}/var +mandir = ${datarootdir}/man +mkdir_p = $(MKDIR_P) +oldincludedir = /usr/include +pdfdir = ${docdir} +prefix = /export/home/an22/pietrois/SAE11_2022 +program_transform_name = s,x,x, +psdir = ${docdir} +sbindir = ${exec_prefix}/sbin +sharedstatedir = ${prefix}/com +srcdir = . +sysconfdir = ${prefix}/etc +target_alias = +top_build_prefix = +top_builddir = . +top_srcdir = . +SUBDIRS = src +all: config.h + $(MAKE) $(AM_MAKEFLAGS) all-recursive + +.SUFFIXES: +am--refresh: Makefile + @: +$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + echo ' cd $(srcdir) && $(AUTOMAKE) --foreign'; \ + $(am__cd) $(srcdir) && $(AUTOMAKE) --foreign \ + && exit 0; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign Makefile +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + echo ' $(SHELL) ./config.status'; \ + $(SHELL) ./config.status;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + $(SHELL) ./config.status --recheck + +$(top_srcdir)/configure: $(am__configure_deps) + $(am__cd) $(srcdir) && $(AUTOCONF) +$(ACLOCAL_M4): $(am__aclocal_m4_deps) + $(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) +$(am__aclocal_m4_deps): + +config.h: stamp-h1 + @test -f $@ || rm -f stamp-h1 + @test -f $@ || $(MAKE) $(AM_MAKEFLAGS) stamp-h1 + +stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status + @rm -f stamp-h1 + cd $(top_builddir) && $(SHELL) ./config.status config.h +$(srcdir)/config.h.in: $(am__configure_deps) + ($(am__cd) $(top_srcdir) && $(AUTOHEADER)) + rm -f stamp-h1 + touch $@ + +distclean-hdr: + -rm -f config.h stamp-h1 + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +distclean-libtool: + -rm -f libtool config.lt + +# This directory's subdirectories are mostly independent; you can cd +# into them and run 'make' without going through this Makefile. +# To change the values of 'make' variables: instead of editing Makefiles, +# (1) if the variable is set in 'config.status', edit 'config.status' +# (which will cause the Makefiles to be regenerated when you run 'make'); +# (2) otherwise, pass the desired values on the 'make' command line. +$(am__recursive_targets): + @fail=; \ + if $(am__make_keepgoing); then \ + failcom='fail=yes'; \ + else \ + failcom='exit 1'; \ + fi; \ + dot_seen=no; \ + target=`echo $@ | sed s/-recursive//`; \ + case "$@" in \ + distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ + *) list='$(SUBDIRS)' ;; \ + esac; \ + for subdir in $$list; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + dot_seen=yes; \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || eval $$failcom; \ + done; \ + if test "$$dot_seen" = "no"; then \ + $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ + fi; test -z "$$fail" + +ID: $(am__tagged_files) + $(am__define_uniq_tagged_files); mkid -fID $$unique +tags: tags-recursive +TAGS: tags + +tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + set x; \ + here=`pwd`; \ + if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ + include_option=--etags-include; \ + empty_fix=.; \ + else \ + include_option=--include; \ + empty_fix=; \ + fi; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test ! -f $$subdir/TAGS || \ + set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ + fi; \ + done; \ + $(am__define_uniq_tagged_files); \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: ctags-recursive + +CTAGS: ctags +ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + $(am__define_uniq_tagged_files); \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" +cscope: cscope.files + test ! -s cscope.files \ + || $(CSCOPE) -b -q $(AM_CSCOPEFLAGS) $(CSCOPEFLAGS) -i cscope.files $(CSCOPE_ARGS) +clean-cscope: + -rm -f cscope.files +cscope.files: clean-cscope cscopelist +cscopelist: cscopelist-recursive + +cscopelist-am: $(am__tagged_files) + list='$(am__tagged_files)'; \ + case "$(srcdir)" in \ + [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ + *) sdir=$(subdir)/$(srcdir) ;; \ + esac; \ + for i in $$list; do \ + if test -f "$$i"; then \ + echo "$(subdir)/$$i"; \ + else \ + echo "$$sdir/$$i"; \ + fi; \ + done >> $(top_builddir)/cscope.files + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + -rm -f cscope.out cscope.in.out cscope.po.out cscope.files + +distdir: $(DISTFILES) + $(am__remove_distdir) + test -d "$(distdir)" || mkdir "$(distdir)" + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done + @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + $(am__make_dryrun) \ + || test -d "$(distdir)/$$subdir" \ + || $(MKDIR_P) "$(distdir)/$$subdir" \ + || exit 1; \ + dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ + $(am__relativize); \ + new_distdir=$$reldir; \ + dir1=$$subdir; dir2="$(top_distdir)"; \ + $(am__relativize); \ + new_top_distdir=$$reldir; \ + echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ + echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ + ($(am__cd) $$subdir && \ + $(MAKE) $(AM_MAKEFLAGS) \ + top_distdir="$$new_top_distdir" \ + distdir="$$new_distdir" \ + am__remove_distdir=: \ + am__skip_length_check=: \ + am__skip_mode_fix=: \ + distdir) \ + || exit 1; \ + fi; \ + done + -test -n "$(am__skip_mode_fix)" \ + || find "$(distdir)" -type d ! -perm -755 \ + -exec chmod u+rwx,go+rx {} \; -o \ + ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \ + ! -type d ! -perm -400 -exec chmod a+r {} \; -o \ + ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \ + || chmod -R a+r "$(distdir)" +dist-gzip: distdir + tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz + $(am__post_remove_distdir) + +dist-bzip2: distdir + tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2 + $(am__post_remove_distdir) + +dist-lzip: distdir + tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz + $(am__post_remove_distdir) + +dist-xz: distdir + tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz + $(am__post_remove_distdir) + +dist-tarZ: distdir + @echo WARNING: "Support for shar distribution archives is" \ + "deprecated." >&2 + @echo WARNING: "It will be removed altogether in Automake 2.0" >&2 + tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z + $(am__post_remove_distdir) + +dist-shar: distdir + @echo WARNING: "Support for distribution archives compressed with" \ + "legacy program 'compress' is deprecated." >&2 + @echo WARNING: "It will be removed altogether in Automake 2.0" >&2 + shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz + $(am__post_remove_distdir) + +dist-zip: distdir + -rm -f $(distdir).zip + zip -rq $(distdir).zip $(distdir) + $(am__post_remove_distdir) + +dist dist-all: + $(MAKE) $(AM_MAKEFLAGS) $(DIST_TARGETS) am__post_remove_distdir='@:' + $(am__post_remove_distdir) + +# This target untars the dist file and tries a VPATH configuration. Then +# it guarantees that the distribution is self-contained by making another +# tarfile. +distcheck: dist + case '$(DIST_ARCHIVES)' in \ + *.tar.gz*) \ + GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\ + *.tar.bz2*) \ + bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\ + *.tar.lz*) \ + lzip -dc $(distdir).tar.lz | $(am__untar) ;;\ + *.tar.xz*) \ + xz -dc $(distdir).tar.xz | $(am__untar) ;;\ + *.tar.Z*) \ + uncompress -c $(distdir).tar.Z | $(am__untar) ;;\ + *.shar.gz*) \ + GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\ + *.zip*) \ + unzip $(distdir).zip ;;\ + esac + chmod -R a-w $(distdir) + chmod u+w $(distdir) + mkdir $(distdir)/_build $(distdir)/_inst + chmod a-w $(distdir) + test -d $(distdir)/_build || exit 0; \ + dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \ + && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \ + && am__cwd=`pwd` \ + && $(am__cd) $(distdir)/_build \ + && ../configure --srcdir=.. --prefix="$$dc_install_base" \ + $(AM_DISTCHECK_CONFIGURE_FLAGS) \ + $(DISTCHECK_CONFIGURE_FLAGS) \ + && $(MAKE) $(AM_MAKEFLAGS) \ + && $(MAKE) $(AM_MAKEFLAGS) dvi \ + && $(MAKE) $(AM_MAKEFLAGS) check \ + && $(MAKE) $(AM_MAKEFLAGS) install \ + && $(MAKE) $(AM_MAKEFLAGS) installcheck \ + && $(MAKE) $(AM_MAKEFLAGS) uninstall \ + && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \ + distuninstallcheck \ + && chmod -R a-w "$$dc_install_base" \ + && ({ \ + (cd ../.. && umask 077 && mkdir "$$dc_destdir") \ + && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \ + && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \ + && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \ + distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \ + } || { rm -rf "$$dc_destdir"; exit 1; }) \ + && rm -rf "$$dc_destdir" \ + && $(MAKE) $(AM_MAKEFLAGS) dist \ + && rm -rf $(DIST_ARCHIVES) \ + && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \ + && cd "$$am__cwd" \ + || exit 1 + $(am__post_remove_distdir) + @(echo "$(distdir) archives ready for distribution: "; \ + list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \ + sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x' +distuninstallcheck: + @test -n '$(distuninstallcheck_dir)' || { \ + echo 'ERROR: trying to run $@ with an empty' \ + '$$(distuninstallcheck_dir)' >&2; \ + exit 1; \ + }; \ + $(am__cd) '$(distuninstallcheck_dir)' || { \ + echo 'ERROR: cannot chdir into $(distuninstallcheck_dir)' >&2; \ + exit 1; \ + }; \ + test `$(am__distuninstallcheck_listfiles) | wc -l` -eq 0 \ + || { echo "ERROR: files left after uninstall:" ; \ + if test -n "$(DESTDIR)"; then \ + echo " (check DESTDIR support)"; \ + fi ; \ + $(distuninstallcheck_listfiles) ; \ + exit 1; } >&2 +distcleancheck: distclean + @if test '$(srcdir)' = . ; then \ + echo "ERROR: distcleancheck can only run from a VPATH build" ; \ + exit 1 ; \ + fi + @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \ + || { echo "ERROR: files left in build directory after distclean:" ; \ + $(distcleancheck_listfiles) ; \ + exit 1; } >&2 +check-am: all-am +check: check-recursive +all-am: Makefile config.h +installdirs: installdirs-recursive +installdirs-am: +install: install-recursive +install-exec: install-exec-recursive +install-data: install-data-recursive +uninstall: uninstall-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-recursive +install-strip: + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-recursive + +clean-am: clean-generic clean-libtool mostlyclean-am + +distclean: distclean-recursive + -rm -f $(am__CONFIG_DISTCLEAN_FILES) + -rm -f Makefile +distclean-am: clean-am distclean-generic distclean-hdr \ + distclean-libtool distclean-tags + +dvi: dvi-recursive + +dvi-am: + +html: html-recursive + +html-am: + +info: info-recursive + +info-am: + +install-data-am: + +install-dvi: install-dvi-recursive + +install-dvi-am: + +install-exec-am: + +install-html: install-html-recursive + +install-html-am: + +install-info: install-info-recursive + +install-info-am: + +install-man: + +install-pdf: install-pdf-recursive + +install-pdf-am: + +install-ps: install-ps-recursive + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-recursive + -rm -f $(am__CONFIG_DISTCLEAN_FILES) + -rm -rf $(top_srcdir)/autom4te.cache + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-recursive + +mostlyclean-am: mostlyclean-generic mostlyclean-libtool + +pdf: pdf-recursive + +pdf-am: + +ps: ps-recursive + +ps-am: + +uninstall-am: + +.MAKE: $(am__recursive_targets) all install-am install-strip + +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ + am--refresh check check-am clean clean-cscope clean-generic \ + clean-libtool cscope cscopelist-am ctags ctags-am dist \ + dist-all dist-bzip2 dist-gzip dist-lzip dist-shar dist-tarZ \ + dist-xz dist-zip distcheck distclean distclean-generic \ + distclean-hdr distclean-libtool distclean-tags distcleancheck \ + distdir distuninstallcheck dvi dvi-am html html-am info \ + info-am install install-am install-data install-data-am \ + install-dvi install-dvi-am install-exec install-exec-am \ + install-html install-html-am install-info install-info-am \ + install-man install-pdf install-pdf-am install-ps \ + install-ps-am install-strip installcheck installcheck-am \ + installdirs installdirs-am maintainer-clean \ + maintainer-clean-generic mostlyclean mostlyclean-generic \ + mostlyclean-libtool pdf pdf-am ps ps-am tags tags-am uninstall \ + uninstall-am + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/bibliotheque-graphique-iut-1.1/Makefile.am b/bibliotheque-graphique-iut-1.1/Makefile.am new file mode 100644 index 0000000..af437a6 --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/Makefile.am @@ -0,0 +1 @@ +SUBDIRS = src diff --git a/bibliotheque-graphique-iut-1.1/Makefile.in b/bibliotheque-graphique-iut-1.1/Makefile.in new file mode 100644 index 0000000..29ff583 --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/Makefile.in @@ -0,0 +1,794 @@ +# Makefile.in generated by automake 1.14 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994-2013 Free Software Foundation, Inc. + +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ +VPATH = @srcdir@ +am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)' +am__make_running_with_option = \ + case $${target_option-} in \ + ?) ;; \ + *) echo "am__make_running_with_option: internal error: invalid" \ + "target option '$${target_option-}' specified" >&2; \ + exit 1;; \ + esac; \ + has_opt=no; \ + sane_makeflags=$$MAKEFLAGS; \ + if $(am__is_gnu_make); then \ + sane_makeflags=$$MFLAGS; \ + else \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + bs=\\; \ + sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ + | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ + esac; \ + fi; \ + skip_next=no; \ + strip_trailopt () \ + { \ + flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ + }; \ + for flg in $$sane_makeflags; do \ + test $$skip_next = yes && { skip_next=no; continue; }; \ + case $$flg in \ + *=*|--*) continue;; \ + -*I) strip_trailopt 'I'; skip_next=yes;; \ + -*I?*) strip_trailopt 'I';; \ + -*O) strip_trailopt 'O'; skip_next=yes;; \ + -*O?*) strip_trailopt 'O';; \ + -*l) strip_trailopt 'l'; skip_next=yes;; \ + -*l?*) strip_trailopt 'l';; \ + -[dEDm]) skip_next=yes;; \ + -[JT]) skip_next=yes;; \ + esac; \ + case $$flg in \ + *$$target_option*) has_opt=yes; break;; \ + esac; \ + done; \ + test $$has_opt = yes +am__make_dryrun = (target_option=n; $(am__make_running_with_option)) +am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +subdir = . +DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \ + $(top_srcdir)/configure $(am__configure_deps) \ + $(srcdir)/config.h.in README ar-lib compile config.guess \ + config.sub depcomp install-sh missing ltmain.sh +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ + configure.lineno config.status.lineno +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = config.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +AM_V_P = $(am__v_P_@AM_V@) +am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) +am__v_P_0 = false +am__v_P_1 = : +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) +am__v_GEN_0 = @echo " GEN " $@; +am__v_GEN_1 = +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) +am__v_at_0 = @ +am__v_at_1 = +SOURCES = +DIST_SOURCES = +RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \ + ctags-recursive dvi-recursive html-recursive info-recursive \ + install-data-recursive install-dvi-recursive \ + install-exec-recursive install-html-recursive \ + install-info-recursive install-pdf-recursive \ + install-ps-recursive install-recursive installcheck-recursive \ + installdirs-recursive pdf-recursive ps-recursive \ + tags-recursive uninstall-recursive +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ + distclean-recursive maintainer-clean-recursive +am__recursive_targets = \ + $(RECURSIVE_TARGETS) \ + $(RECURSIVE_CLEAN_TARGETS) \ + $(am__extra_recursive_targets) +AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ + cscope distdir dist dist-all distcheck +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \ + $(LISP)config.h.in +# Read a list of newline-separated strings from the standard input, +# and print each of them once, without duplicates. Input order is +# *not* preserved. +am__uniquify_input = $(AWK) '\ + BEGIN { nonempty = 0; } \ + { items[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in items) print i; }; } \ +' +# Make sure the list of sources is unique. This is necessary because, +# e.g., the same source file might be shared among _SOURCES variables +# for different programs/libraries. +am__define_uniq_tagged_files = \ + list='$(am__tagged_files)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | $(am__uniquify_input)` +ETAGS = etags +CTAGS = ctags +CSCOPE = cscope +DIST_SUBDIRS = $(SUBDIRS) +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +distdir = $(PACKAGE)-$(VERSION) +top_distdir = $(distdir) +am__remove_distdir = \ + if test -d "$(distdir)"; then \ + find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \ + && rm -rf "$(distdir)" \ + || { sleep 5 && rm -rf "$(distdir)"; }; \ + else :; fi +am__post_remove_distdir = $(am__remove_distdir) +am__relativize = \ + dir0=`pwd`; \ + sed_first='s,^\([^/]*\)/.*$$,\1,'; \ + sed_rest='s,^[^/]*/*,,'; \ + sed_last='s,^.*/\([^/]*\)$$,\1,'; \ + sed_butlast='s,/*[^/]*$$,,'; \ + while test -n "$$dir1"; do \ + first=`echo "$$dir1" | sed -e "$$sed_first"`; \ + if test "$$first" != "."; then \ + if test "$$first" = ".."; then \ + dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ + dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ + else \ + first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ + if test "$$first2" = "$$first"; then \ + dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ + else \ + dir2="../$$dir2"; \ + fi; \ + dir0="$$dir0"/"$$first"; \ + fi; \ + fi; \ + dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ + done; \ + reldir="$$dir2" +DIST_ARCHIVES = $(distdir).tar.gz +GZIP_ENV = --best +DIST_TARGETS = dist-gzip +distuninstallcheck_listfiles = find . -type f -print +am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \ + | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$' +distcleancheck_listfiles = find . -type f -print +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DLLTOOL = @DLLTOOL@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +EXEMPLES_IMAGES_DIR = @EXEMPLES_IMAGES_DIR@ +FGREP = @FGREP@ +GREP = @GREP@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ +MKDIR_P = @MKDIR_P@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PREFIX = @PREFIX@ +RANLIB = @RANLIB@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +VERSION = @VERSION@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +SUBDIRS = src +all: config.h + $(MAKE) $(AM_MAKEFLAGS) all-recursive + +.SUFFIXES: +am--refresh: Makefile + @: +$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + echo ' cd $(srcdir) && $(AUTOMAKE) --foreign'; \ + $(am__cd) $(srcdir) && $(AUTOMAKE) --foreign \ + && exit 0; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign Makefile +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + echo ' $(SHELL) ./config.status'; \ + $(SHELL) ./config.status;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + $(SHELL) ./config.status --recheck + +$(top_srcdir)/configure: $(am__configure_deps) + $(am__cd) $(srcdir) && $(AUTOCONF) +$(ACLOCAL_M4): $(am__aclocal_m4_deps) + $(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) +$(am__aclocal_m4_deps): + +config.h: stamp-h1 + @test -f $@ || rm -f stamp-h1 + @test -f $@ || $(MAKE) $(AM_MAKEFLAGS) stamp-h1 + +stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status + @rm -f stamp-h1 + cd $(top_builddir) && $(SHELL) ./config.status config.h +$(srcdir)/config.h.in: $(am__configure_deps) + ($(am__cd) $(top_srcdir) && $(AUTOHEADER)) + rm -f stamp-h1 + touch $@ + +distclean-hdr: + -rm -f config.h stamp-h1 + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +distclean-libtool: + -rm -f libtool config.lt + +# This directory's subdirectories are mostly independent; you can cd +# into them and run 'make' without going through this Makefile. +# To change the values of 'make' variables: instead of editing Makefiles, +# (1) if the variable is set in 'config.status', edit 'config.status' +# (which will cause the Makefiles to be regenerated when you run 'make'); +# (2) otherwise, pass the desired values on the 'make' command line. +$(am__recursive_targets): + @fail=; \ + if $(am__make_keepgoing); then \ + failcom='fail=yes'; \ + else \ + failcom='exit 1'; \ + fi; \ + dot_seen=no; \ + target=`echo $@ | sed s/-recursive//`; \ + case "$@" in \ + distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ + *) list='$(SUBDIRS)' ;; \ + esac; \ + for subdir in $$list; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + dot_seen=yes; \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || eval $$failcom; \ + done; \ + if test "$$dot_seen" = "no"; then \ + $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ + fi; test -z "$$fail" + +ID: $(am__tagged_files) + $(am__define_uniq_tagged_files); mkid -fID $$unique +tags: tags-recursive +TAGS: tags + +tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + set x; \ + here=`pwd`; \ + if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ + include_option=--etags-include; \ + empty_fix=.; \ + else \ + include_option=--include; \ + empty_fix=; \ + fi; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test ! -f $$subdir/TAGS || \ + set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ + fi; \ + done; \ + $(am__define_uniq_tagged_files); \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: ctags-recursive + +CTAGS: ctags +ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + $(am__define_uniq_tagged_files); \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" +cscope: cscope.files + test ! -s cscope.files \ + || $(CSCOPE) -b -q $(AM_CSCOPEFLAGS) $(CSCOPEFLAGS) -i cscope.files $(CSCOPE_ARGS) +clean-cscope: + -rm -f cscope.files +cscope.files: clean-cscope cscopelist +cscopelist: cscopelist-recursive + +cscopelist-am: $(am__tagged_files) + list='$(am__tagged_files)'; \ + case "$(srcdir)" in \ + [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ + *) sdir=$(subdir)/$(srcdir) ;; \ + esac; \ + for i in $$list; do \ + if test -f "$$i"; then \ + echo "$(subdir)/$$i"; \ + else \ + echo "$$sdir/$$i"; \ + fi; \ + done >> $(top_builddir)/cscope.files + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + -rm -f cscope.out cscope.in.out cscope.po.out cscope.files + +distdir: $(DISTFILES) + $(am__remove_distdir) + test -d "$(distdir)" || mkdir "$(distdir)" + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done + @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + $(am__make_dryrun) \ + || test -d "$(distdir)/$$subdir" \ + || $(MKDIR_P) "$(distdir)/$$subdir" \ + || exit 1; \ + dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ + $(am__relativize); \ + new_distdir=$$reldir; \ + dir1=$$subdir; dir2="$(top_distdir)"; \ + $(am__relativize); \ + new_top_distdir=$$reldir; \ + echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ + echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ + ($(am__cd) $$subdir && \ + $(MAKE) $(AM_MAKEFLAGS) \ + top_distdir="$$new_top_distdir" \ + distdir="$$new_distdir" \ + am__remove_distdir=: \ + am__skip_length_check=: \ + am__skip_mode_fix=: \ + distdir) \ + || exit 1; \ + fi; \ + done + -test -n "$(am__skip_mode_fix)" \ + || find "$(distdir)" -type d ! -perm -755 \ + -exec chmod u+rwx,go+rx {} \; -o \ + ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \ + ! -type d ! -perm -400 -exec chmod a+r {} \; -o \ + ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \ + || chmod -R a+r "$(distdir)" +dist-gzip: distdir + tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz + $(am__post_remove_distdir) + +dist-bzip2: distdir + tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2 + $(am__post_remove_distdir) + +dist-lzip: distdir + tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz + $(am__post_remove_distdir) + +dist-xz: distdir + tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz + $(am__post_remove_distdir) + +dist-tarZ: distdir + @echo WARNING: "Support for shar distribution archives is" \ + "deprecated." >&2 + @echo WARNING: "It will be removed altogether in Automake 2.0" >&2 + tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z + $(am__post_remove_distdir) + +dist-shar: distdir + @echo WARNING: "Support for distribution archives compressed with" \ + "legacy program 'compress' is deprecated." >&2 + @echo WARNING: "It will be removed altogether in Automake 2.0" >&2 + shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz + $(am__post_remove_distdir) + +dist-zip: distdir + -rm -f $(distdir).zip + zip -rq $(distdir).zip $(distdir) + $(am__post_remove_distdir) + +dist dist-all: + $(MAKE) $(AM_MAKEFLAGS) $(DIST_TARGETS) am__post_remove_distdir='@:' + $(am__post_remove_distdir) + +# This target untars the dist file and tries a VPATH configuration. Then +# it guarantees that the distribution is self-contained by making another +# tarfile. +distcheck: dist + case '$(DIST_ARCHIVES)' in \ + *.tar.gz*) \ + GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\ + *.tar.bz2*) \ + bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\ + *.tar.lz*) \ + lzip -dc $(distdir).tar.lz | $(am__untar) ;;\ + *.tar.xz*) \ + xz -dc $(distdir).tar.xz | $(am__untar) ;;\ + *.tar.Z*) \ + uncompress -c $(distdir).tar.Z | $(am__untar) ;;\ + *.shar.gz*) \ + GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\ + *.zip*) \ + unzip $(distdir).zip ;;\ + esac + chmod -R a-w $(distdir) + chmod u+w $(distdir) + mkdir $(distdir)/_build $(distdir)/_inst + chmod a-w $(distdir) + test -d $(distdir)/_build || exit 0; \ + dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \ + && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \ + && am__cwd=`pwd` \ + && $(am__cd) $(distdir)/_build \ + && ../configure --srcdir=.. --prefix="$$dc_install_base" \ + $(AM_DISTCHECK_CONFIGURE_FLAGS) \ + $(DISTCHECK_CONFIGURE_FLAGS) \ + && $(MAKE) $(AM_MAKEFLAGS) \ + && $(MAKE) $(AM_MAKEFLAGS) dvi \ + && $(MAKE) $(AM_MAKEFLAGS) check \ + && $(MAKE) $(AM_MAKEFLAGS) install \ + && $(MAKE) $(AM_MAKEFLAGS) installcheck \ + && $(MAKE) $(AM_MAKEFLAGS) uninstall \ + && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \ + distuninstallcheck \ + && chmod -R a-w "$$dc_install_base" \ + && ({ \ + (cd ../.. && umask 077 && mkdir "$$dc_destdir") \ + && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \ + && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \ + && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \ + distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \ + } || { rm -rf "$$dc_destdir"; exit 1; }) \ + && rm -rf "$$dc_destdir" \ + && $(MAKE) $(AM_MAKEFLAGS) dist \ + && rm -rf $(DIST_ARCHIVES) \ + && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \ + && cd "$$am__cwd" \ + || exit 1 + $(am__post_remove_distdir) + @(echo "$(distdir) archives ready for distribution: "; \ + list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \ + sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x' +distuninstallcheck: + @test -n '$(distuninstallcheck_dir)' || { \ + echo 'ERROR: trying to run $@ with an empty' \ + '$$(distuninstallcheck_dir)' >&2; \ + exit 1; \ + }; \ + $(am__cd) '$(distuninstallcheck_dir)' || { \ + echo 'ERROR: cannot chdir into $(distuninstallcheck_dir)' >&2; \ + exit 1; \ + }; \ + test `$(am__distuninstallcheck_listfiles) | wc -l` -eq 0 \ + || { echo "ERROR: files left after uninstall:" ; \ + if test -n "$(DESTDIR)"; then \ + echo " (check DESTDIR support)"; \ + fi ; \ + $(distuninstallcheck_listfiles) ; \ + exit 1; } >&2 +distcleancheck: distclean + @if test '$(srcdir)' = . ; then \ + echo "ERROR: distcleancheck can only run from a VPATH build" ; \ + exit 1 ; \ + fi + @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \ + || { echo "ERROR: files left in build directory after distclean:" ; \ + $(distcleancheck_listfiles) ; \ + exit 1; } >&2 +check-am: all-am +check: check-recursive +all-am: Makefile config.h +installdirs: installdirs-recursive +installdirs-am: +install: install-recursive +install-exec: install-exec-recursive +install-data: install-data-recursive +uninstall: uninstall-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-recursive +install-strip: + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-recursive + +clean-am: clean-generic clean-libtool mostlyclean-am + +distclean: distclean-recursive + -rm -f $(am__CONFIG_DISTCLEAN_FILES) + -rm -f Makefile +distclean-am: clean-am distclean-generic distclean-hdr \ + distclean-libtool distclean-tags + +dvi: dvi-recursive + +dvi-am: + +html: html-recursive + +html-am: + +info: info-recursive + +info-am: + +install-data-am: + +install-dvi: install-dvi-recursive + +install-dvi-am: + +install-exec-am: + +install-html: install-html-recursive + +install-html-am: + +install-info: install-info-recursive + +install-info-am: + +install-man: + +install-pdf: install-pdf-recursive + +install-pdf-am: + +install-ps: install-ps-recursive + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-recursive + -rm -f $(am__CONFIG_DISTCLEAN_FILES) + -rm -rf $(top_srcdir)/autom4te.cache + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-recursive + +mostlyclean-am: mostlyclean-generic mostlyclean-libtool + +pdf: pdf-recursive + +pdf-am: + +ps: ps-recursive + +ps-am: + +uninstall-am: + +.MAKE: $(am__recursive_targets) all install-am install-strip + +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ + am--refresh check check-am clean clean-cscope clean-generic \ + clean-libtool cscope cscopelist-am ctags ctags-am dist \ + dist-all dist-bzip2 dist-gzip dist-lzip dist-shar dist-tarZ \ + dist-xz dist-zip distcheck distclean distclean-generic \ + distclean-hdr distclean-libtool distclean-tags distcleancheck \ + distdir distuninstallcheck dvi dvi-am html html-am info \ + info-am install install-am install-data install-data-am \ + install-dvi install-dvi-am install-exec install-exec-am \ + install-html install-html-am install-info install-info-am \ + install-man install-pdf install-pdf-am install-ps \ + install-ps-am install-strip installcheck installcheck-am \ + installdirs installdirs-am maintainer-clean \ + maintainer-clean-generic mostlyclean mostlyclean-generic \ + mostlyclean-libtool pdf pdf-am ps ps-am tags tags-am uninstall \ + uninstall-am + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/bibliotheque-graphique-iut-1.1/README b/bibliotheque-graphique-iut-1.1/README new file mode 100644 index 0000000..472b6fb --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/README @@ -0,0 +1,8 @@ +1) utiliser le script configure pour generer les Makefiles + ./configure + + Par defaut, l'installation se fait dans /usr. Utiliser --prefix pour le modifier. + autres options : --enable-xpm et --enable-exemples + +2) make, make install, make clean, make uninstall pour compiler, installer, nettoyeri, désinstaller. + diff --git a/bibliotheque-graphique-iut-1.1/aclocal.m4 b/bibliotheque-graphique-iut-1.1/aclocal.m4 new file mode 100644 index 0000000..61e945d --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/aclocal.m4 @@ -0,0 +1,9796 @@ +# generated automatically by aclocal 1.14 -*- Autoconf -*- + +# Copyright (C) 1996-2013 Free Software Foundation, Inc. + +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])]) +m4_ifndef([AC_AUTOCONF_VERSION], + [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl +m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69],, +[m4_warning([this file was generated for autoconf 2.69. +You have another version of autoconf. It may work, but is not guaranteed to. +If you have problems, you may need to regenerate the build system entirely. +To do so, use the procedure documented by the package, typically 'autoreconf'.])]) + +# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- +# +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, +# 2006, 2007, 2008, 2009, 2010, 2011 Free Software +# Foundation, Inc. +# Written by Gordon Matzigkeit, 1996 +# +# This file is free software; the Free Software Foundation gives +# unlimited permission to copy and/or distribute it, with or without +# modifications, as long as this notice is preserved. + +m4_define([_LT_COPYING], [dnl +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, +# 2006, 2007, 2008, 2009, 2010, 2011 Free Software +# Foundation, Inc. +# Written by Gordon Matzigkeit, 1996 +# +# This file is part of GNU Libtool. +# +# GNU Libtool is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation; either version 2 of +# the License, or (at your option) any later version. +# +# As a special exception to the GNU General Public License, +# if you distribute this file as part of a program or library that +# is built using GNU Libtool, you may include this file under the +# same distribution terms that you use for the rest of that program. +# +# GNU Libtool is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with GNU Libtool; see the file COPYING. If not, a copy +# can be downloaded from http://www.gnu.org/licenses/gpl.html, or +# obtained by writing to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +]) + +# serial 57 LT_INIT + + +# LT_PREREQ(VERSION) +# ------------------ +# Complain and exit if this libtool version is less that VERSION. +m4_defun([LT_PREREQ], +[m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1, + [m4_default([$3], + [m4_fatal([Libtool version $1 or higher is required], + 63)])], + [$2])]) + + +# _LT_CHECK_BUILDDIR +# ------------------ +# Complain if the absolute build directory name contains unusual characters +m4_defun([_LT_CHECK_BUILDDIR], +[case `pwd` in + *\ * | *\ *) + AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;; +esac +]) + + +# LT_INIT([OPTIONS]) +# ------------------ +AC_DEFUN([LT_INIT], +[AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT +AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl +AC_BEFORE([$0], [LT_LANG])dnl +AC_BEFORE([$0], [LT_OUTPUT])dnl +AC_BEFORE([$0], [LTDL_INIT])dnl +m4_require([_LT_CHECK_BUILDDIR])dnl + +dnl Autoconf doesn't catch unexpanded LT_ macros by default: +m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl +m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl +dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4 +dnl unless we require an AC_DEFUNed macro: +AC_REQUIRE([LTOPTIONS_VERSION])dnl +AC_REQUIRE([LTSUGAR_VERSION])dnl +AC_REQUIRE([LTVERSION_VERSION])dnl +AC_REQUIRE([LTOBSOLETE_VERSION])dnl +m4_require([_LT_PROG_LTMAIN])dnl + +_LT_SHELL_INIT([SHELL=${CONFIG_SHELL-/bin/sh}]) + +dnl Parse OPTIONS +_LT_SET_OPTIONS([$0], [$1]) + +# This can be used to rebuild libtool when needed +LIBTOOL_DEPS="$ltmain" + +# Always use our own libtool. +LIBTOOL='$(SHELL) $(top_builddir)/libtool' +AC_SUBST(LIBTOOL)dnl + +_LT_SETUP + +# Only expand once: +m4_define([LT_INIT]) +])# LT_INIT + +# Old names: +AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT]) +AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_PROG_LIBTOOL], []) +dnl AC_DEFUN([AM_PROG_LIBTOOL], []) + + +# _LT_CC_BASENAME(CC) +# ------------------- +# Calculate cc_basename. Skip known compiler wrappers and cross-prefix. +m4_defun([_LT_CC_BASENAME], +[for cc_temp in $1""; do + case $cc_temp in + compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;; + distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;; + \-*) ;; + *) break;; + esac +done +cc_basename=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` +]) + + +# _LT_FILEUTILS_DEFAULTS +# ---------------------- +# It is okay to use these file commands and assume they have been set +# sensibly after `m4_require([_LT_FILEUTILS_DEFAULTS])'. +m4_defun([_LT_FILEUTILS_DEFAULTS], +[: ${CP="cp -f"} +: ${MV="mv -f"} +: ${RM="rm -f"} +])# _LT_FILEUTILS_DEFAULTS + + +# _LT_SETUP +# --------- +m4_defun([_LT_SETUP], +[AC_REQUIRE([AC_CANONICAL_HOST])dnl +AC_REQUIRE([AC_CANONICAL_BUILD])dnl +AC_REQUIRE([_LT_PREPARE_SED_QUOTE_VARS])dnl +AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl + +_LT_DECL([], [PATH_SEPARATOR], [1], [The PATH separator for the build system])dnl +dnl +_LT_DECL([], [host_alias], [0], [The host system])dnl +_LT_DECL([], [host], [0])dnl +_LT_DECL([], [host_os], [0])dnl +dnl +_LT_DECL([], [build_alias], [0], [The build system])dnl +_LT_DECL([], [build], [0])dnl +_LT_DECL([], [build_os], [0])dnl +dnl +AC_REQUIRE([AC_PROG_CC])dnl +AC_REQUIRE([LT_PATH_LD])dnl +AC_REQUIRE([LT_PATH_NM])dnl +dnl +AC_REQUIRE([AC_PROG_LN_S])dnl +test -z "$LN_S" && LN_S="ln -s" +_LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl +dnl +AC_REQUIRE([LT_CMD_MAX_LEN])dnl +_LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl +_LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl +dnl +m4_require([_LT_FILEUTILS_DEFAULTS])dnl +m4_require([_LT_CHECK_SHELL_FEATURES])dnl +m4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl +m4_require([_LT_CMD_RELOAD])dnl +m4_require([_LT_CHECK_MAGIC_METHOD])dnl +m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl +m4_require([_LT_CMD_OLD_ARCHIVE])dnl +m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl +m4_require([_LT_WITH_SYSROOT])dnl + +_LT_CONFIG_LIBTOOL_INIT([ +# See if we are running on zsh, and set the options which allow our +# commands through without removal of \ escapes INIT. +if test -n "\${ZSH_VERSION+set}" ; then + setopt NO_GLOB_SUBST +fi +]) +if test -n "${ZSH_VERSION+set}" ; then + setopt NO_GLOB_SUBST +fi + +_LT_CHECK_OBJDIR + +m4_require([_LT_TAG_COMPILER])dnl + +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 + +# Global variables: +ofile=libtool +can_build_shared=yes + +# All known linkers require a `.a' archive for static linking (except MSVC, +# which needs '.lib'). +libext=a + +with_gnu_ld="$lt_cv_prog_gnu_ld" + +old_CC="$CC" +old_CFLAGS="$CFLAGS" + +# Set sane defaults for various variables +test -z "$CC" && CC=cc +test -z "$LTCC" && LTCC=$CC +test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS +test -z "$LD" && LD=ld +test -z "$ac_objext" && ac_objext=o + +_LT_CC_BASENAME([$compiler]) + +# Only perform the check for file, if the check method requires it +test -z "$MAGIC_CMD" && MAGIC_CMD=file +case $deplibs_check_method in +file_magic*) + if test "$file_magic_cmd" = '$MAGIC_CMD'; then + _LT_PATH_MAGIC + fi + ;; +esac + +# Use C for the default configuration in the libtool script +LT_SUPPORTED_TAG([CC]) +_LT_LANG_C_CONFIG +_LT_LANG_DEFAULT_CONFIG +_LT_CONFIG_COMMANDS +])# _LT_SETUP + + +# _LT_PREPARE_SED_QUOTE_VARS +# -------------------------- +# Define a few sed substitution that help us do robust quoting. +m4_defun([_LT_PREPARE_SED_QUOTE_VARS], +[# Backslashify metacharacters that are still active within +# double-quoted strings. +sed_quote_subst='s/\([["`$\\]]\)/\\\1/g' + +# Same as above, but do not quote variable references. +double_quote_subst='s/\([["`\\]]\)/\\\1/g' + +# Sed substitution to delay expansion of an escaped shell variable in a +# double_quote_subst'ed string. +delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' + +# Sed substitution to delay expansion of an escaped single quote. +delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g' + +# Sed substitution to avoid accidental globbing in evaled expressions +no_glob_subst='s/\*/\\\*/g' +]) + +# _LT_PROG_LTMAIN +# --------------- +# Note that this code is called both from `configure', and `config.status' +# now that we use AC_CONFIG_COMMANDS to generate libtool. Notably, +# `config.status' has no value for ac_aux_dir unless we are using Automake, +# so we pass a copy along to make sure it has a sensible value anyway. +m4_defun([_LT_PROG_LTMAIN], +[m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl +_LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir']) +ltmain="$ac_aux_dir/ltmain.sh" +])# _LT_PROG_LTMAIN + + + +# So that we can recreate a full libtool script including additional +# tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS +# in macros and then make a single call at the end using the `libtool' +# label. + + +# _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS]) +# ---------------------------------------- +# Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later. +m4_define([_LT_CONFIG_LIBTOOL_INIT], +[m4_ifval([$1], + [m4_append([_LT_OUTPUT_LIBTOOL_INIT], + [$1 +])])]) + +# Initialize. +m4_define([_LT_OUTPUT_LIBTOOL_INIT]) + + +# _LT_CONFIG_LIBTOOL([COMMANDS]) +# ------------------------------ +# Register COMMANDS to be passed to AC_CONFIG_COMMANDS later. +m4_define([_LT_CONFIG_LIBTOOL], +[m4_ifval([$1], + [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS], + [$1 +])])]) + +# Initialize. +m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS]) + + +# _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS]) +# ----------------------------------------------------- +m4_defun([_LT_CONFIG_SAVE_COMMANDS], +[_LT_CONFIG_LIBTOOL([$1]) +_LT_CONFIG_LIBTOOL_INIT([$2]) +]) + + +# _LT_FORMAT_COMMENT([COMMENT]) +# ----------------------------- +# Add leading comment marks to the start of each line, and a trailing +# full-stop to the whole comment if one is not present already. +m4_define([_LT_FORMAT_COMMENT], +[m4_ifval([$1], [ +m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])], + [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.]) +)]) + + + + + +# _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?]) +# ------------------------------------------------------------------- +# CONFIGNAME is the name given to the value in the libtool script. +# VARNAME is the (base) name used in the configure script. +# VALUE may be 0, 1 or 2 for a computed quote escaped value based on +# VARNAME. Any other value will be used directly. +m4_define([_LT_DECL], +[lt_if_append_uniq([lt_decl_varnames], [$2], [, ], + [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name], + [m4_ifval([$1], [$1], [$2])]) + lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3]) + m4_ifval([$4], + [lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])]) + lt_dict_add_subkey([lt_decl_dict], [$2], + [tagged?], [m4_ifval([$5], [yes], [no])])]) +]) + + +# _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION]) +# -------------------------------------------------------- +m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])]) + + +# lt_decl_tag_varnames([SEPARATOR], [VARNAME1...]) +# ------------------------------------------------ +m4_define([lt_decl_tag_varnames], +[_lt_decl_filter([tagged?], [yes], $@)]) + + +# _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..]) +# --------------------------------------------------------- +m4_define([_lt_decl_filter], +[m4_case([$#], + [0], [m4_fatal([$0: too few arguments: $#])], + [1], [m4_fatal([$0: too few arguments: $#: $1])], + [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)], + [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)], + [lt_dict_filter([lt_decl_dict], $@)])[]dnl +]) + + +# lt_decl_quote_varnames([SEPARATOR], [VARNAME1...]) +# -------------------------------------------------- +m4_define([lt_decl_quote_varnames], +[_lt_decl_filter([value], [1], $@)]) + + +# lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...]) +# --------------------------------------------------- +m4_define([lt_decl_dquote_varnames], +[_lt_decl_filter([value], [2], $@)]) + + +# lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...]) +# --------------------------------------------------- +m4_define([lt_decl_varnames_tagged], +[m4_assert([$# <= 2])dnl +_$0(m4_quote(m4_default([$1], [[, ]])), + m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]), + m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))]) +m4_define([_lt_decl_varnames_tagged], +[m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])]) + + +# lt_decl_all_varnames([SEPARATOR], [VARNAME1...]) +# ------------------------------------------------ +m4_define([lt_decl_all_varnames], +[_$0(m4_quote(m4_default([$1], [[, ]])), + m4_if([$2], [], + m4_quote(lt_decl_varnames), + m4_quote(m4_shift($@))))[]dnl +]) +m4_define([_lt_decl_all_varnames], +[lt_join($@, lt_decl_varnames_tagged([$1], + lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl +]) + + +# _LT_CONFIG_STATUS_DECLARE([VARNAME]) +# ------------------------------------ +# Quote a variable value, and forward it to `config.status' so that its +# declaration there will have the same value as in `configure'. VARNAME +# must have a single quote delimited value for this to work. +m4_define([_LT_CONFIG_STATUS_DECLARE], +[$1='`$ECHO "$][$1" | $SED "$delay_single_quote_subst"`']) + + +# _LT_CONFIG_STATUS_DECLARATIONS +# ------------------------------ +# We delimit libtool config variables with single quotes, so when +# we write them to config.status, we have to be sure to quote all +# embedded single quotes properly. In configure, this macro expands +# each variable declared with _LT_DECL (and _LT_TAGDECL) into: +# +# ='`$ECHO "$" | $SED "$delay_single_quote_subst"`' +m4_defun([_LT_CONFIG_STATUS_DECLARATIONS], +[m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames), + [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])]) + + +# _LT_LIBTOOL_TAGS +# ---------------- +# Output comment and list of tags supported by the script +m4_defun([_LT_LIBTOOL_TAGS], +[_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl +available_tags="_LT_TAGS"dnl +]) + + +# _LT_LIBTOOL_DECLARE(VARNAME, [TAG]) +# ----------------------------------- +# Extract the dictionary values for VARNAME (optionally with TAG) and +# expand to a commented shell variable setting: +# +# # Some comment about what VAR is for. +# visible_name=$lt_internal_name +m4_define([_LT_LIBTOOL_DECLARE], +[_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], + [description])))[]dnl +m4_pushdef([_libtool_name], + m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl +m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])), + [0], [_libtool_name=[$]$1], + [1], [_libtool_name=$lt_[]$1], + [2], [_libtool_name=$lt_[]$1], + [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl +m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl +]) + + +# _LT_LIBTOOL_CONFIG_VARS +# ----------------------- +# Produce commented declarations of non-tagged libtool config variables +# suitable for insertion in the LIBTOOL CONFIG section of the `libtool' +# script. Tagged libtool config variables (even for the LIBTOOL CONFIG +# section) are produced by _LT_LIBTOOL_TAG_VARS. +m4_defun([_LT_LIBTOOL_CONFIG_VARS], +[m4_foreach([_lt_var], + m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)), + [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])]) + + +# _LT_LIBTOOL_TAG_VARS(TAG) +# ------------------------- +m4_define([_LT_LIBTOOL_TAG_VARS], +[m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames), + [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])]) + + +# _LT_TAGVAR(VARNAME, [TAGNAME]) +# ------------------------------ +m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])]) + + +# _LT_CONFIG_COMMANDS +# ------------------- +# Send accumulated output to $CONFIG_STATUS. Thanks to the lists of +# variables for single and double quote escaping we saved from calls +# to _LT_DECL, we can put quote escaped variables declarations +# into `config.status', and then the shell code to quote escape them in +# for loops in `config.status'. Finally, any additional code accumulated +# from calls to _LT_CONFIG_LIBTOOL_INIT is expanded. +m4_defun([_LT_CONFIG_COMMANDS], +[AC_PROVIDE_IFELSE([LT_OUTPUT], + dnl If the libtool generation code has been placed in $CONFIG_LT, + dnl instead of duplicating it all over again into config.status, + dnl then we will have config.status run $CONFIG_LT later, so it + dnl needs to know what name is stored there: + [AC_CONFIG_COMMANDS([libtool], + [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])], + dnl If the libtool generation code is destined for config.status, + dnl expand the accumulated commands and init code now: + [AC_CONFIG_COMMANDS([libtool], + [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])]) +])#_LT_CONFIG_COMMANDS + + +# Initialize. +m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT], +[ + +# The HP-UX ksh and POSIX shell print the target directory to stdout +# if CDPATH is set. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + +sed_quote_subst='$sed_quote_subst' +double_quote_subst='$double_quote_subst' +delay_variable_subst='$delay_variable_subst' +_LT_CONFIG_STATUS_DECLARATIONS +LTCC='$LTCC' +LTCFLAGS='$LTCFLAGS' +compiler='$compiler_DEFAULT' + +# A function that is used when there is no print builtin or printf. +func_fallback_echo () +{ + eval 'cat <<_LTECHO_EOF +\$[]1 +_LTECHO_EOF' +} + +# Quote evaled strings. +for var in lt_decl_all_varnames([[ \ +]], lt_decl_quote_varnames); do + case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in + *[[\\\\\\\`\\"\\\$]]*) + eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" + ;; + *) + eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" + ;; + esac +done + +# Double-quote double-evaled strings. +for var in lt_decl_all_varnames([[ \ +]], lt_decl_dquote_varnames); do + case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in + *[[\\\\\\\`\\"\\\$]]*) + eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" + ;; + *) + eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" + ;; + esac +done + +_LT_OUTPUT_LIBTOOL_INIT +]) + +# _LT_GENERATED_FILE_INIT(FILE, [COMMENT]) +# ------------------------------------ +# Generate a child script FILE with all initialization necessary to +# reuse the environment learned by the parent script, and make the +# file executable. If COMMENT is supplied, it is inserted after the +# `#!' sequence but before initialization text begins. After this +# macro, additional text can be appended to FILE to form the body of +# the child script. The macro ends with non-zero status if the +# file could not be fully written (such as if the disk is full). +m4_ifdef([AS_INIT_GENERATED], +[m4_defun([_LT_GENERATED_FILE_INIT],[AS_INIT_GENERATED($@)])], +[m4_defun([_LT_GENERATED_FILE_INIT], +[m4_require([AS_PREPARE])]dnl +[m4_pushdef([AS_MESSAGE_LOG_FD])]dnl +[lt_write_fail=0 +cat >$1 <<_ASEOF || lt_write_fail=1 +#! $SHELL +# Generated by $as_me. +$2 +SHELL=\${CONFIG_SHELL-$SHELL} +export SHELL +_ASEOF +cat >>$1 <<\_ASEOF || lt_write_fail=1 +AS_SHELL_SANITIZE +_AS_PREPARE +exec AS_MESSAGE_FD>&1 +_ASEOF +test $lt_write_fail = 0 && chmod +x $1[]dnl +m4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT + +# LT_OUTPUT +# --------- +# This macro allows early generation of the libtool script (before +# AC_OUTPUT is called), incase it is used in configure for compilation +# tests. +AC_DEFUN([LT_OUTPUT], +[: ${CONFIG_LT=./config.lt} +AC_MSG_NOTICE([creating $CONFIG_LT]) +_LT_GENERATED_FILE_INIT(["$CONFIG_LT"], +[# Run this file to recreate a libtool stub with the current configuration.]) + +cat >>"$CONFIG_LT" <<\_LTEOF +lt_cl_silent=false +exec AS_MESSAGE_LOG_FD>>config.log +{ + echo + AS_BOX([Running $as_me.]) +} >&AS_MESSAGE_LOG_FD + +lt_cl_help="\ +\`$as_me' creates a local libtool stub from the current configuration, +for use in further configure time tests before the real libtool is +generated. + +Usage: $[0] [[OPTIONS]] + + -h, --help print this help, then exit + -V, --version print version number, then exit + -q, --quiet do not print progress messages + -d, --debug don't remove temporary files + +Report bugs to ." + +lt_cl_version="\ +m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl +m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION]) +configured by $[0], generated by m4_PACKAGE_STRING. + +Copyright (C) 2011 Free Software Foundation, Inc. +This config.lt script is free software; the Free Software Foundation +gives unlimited permision to copy, distribute and modify it." + +while test $[#] != 0 +do + case $[1] in + --version | --v* | -V ) + echo "$lt_cl_version"; exit 0 ;; + --help | --h* | -h ) + echo "$lt_cl_help"; exit 0 ;; + --debug | --d* | -d ) + debug=: ;; + --quiet | --q* | --silent | --s* | -q ) + lt_cl_silent=: ;; + + -*) AC_MSG_ERROR([unrecognized option: $[1] +Try \`$[0] --help' for more information.]) ;; + + *) AC_MSG_ERROR([unrecognized argument: $[1] +Try \`$[0] --help' for more information.]) ;; + esac + shift +done + +if $lt_cl_silent; then + exec AS_MESSAGE_FD>/dev/null +fi +_LTEOF + +cat >>"$CONFIG_LT" <<_LTEOF +_LT_OUTPUT_LIBTOOL_COMMANDS_INIT +_LTEOF + +cat >>"$CONFIG_LT" <<\_LTEOF +AC_MSG_NOTICE([creating $ofile]) +_LT_OUTPUT_LIBTOOL_COMMANDS +AS_EXIT(0) +_LTEOF +chmod +x "$CONFIG_LT" + +# configure is writing to config.log, but config.lt does its own redirection, +# appending to config.log, which fails on DOS, as config.log is still kept +# open by configure. Here we exec the FD to /dev/null, effectively closing +# config.log, so it can be properly (re)opened and appended to by config.lt. +lt_cl_success=: +test "$silent" = yes && + lt_config_lt_args="$lt_config_lt_args --quiet" +exec AS_MESSAGE_LOG_FD>/dev/null +$SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false +exec AS_MESSAGE_LOG_FD>>config.log +$lt_cl_success || AS_EXIT(1) +])# LT_OUTPUT + + +# _LT_CONFIG(TAG) +# --------------- +# If TAG is the built-in tag, create an initial libtool script with a +# default configuration from the untagged config vars. Otherwise add code +# to config.status for appending the configuration named by TAG from the +# matching tagged config vars. +m4_defun([_LT_CONFIG], +[m4_require([_LT_FILEUTILS_DEFAULTS])dnl +_LT_CONFIG_SAVE_COMMANDS([ + m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl + m4_if(_LT_TAG, [C], [ + # See if we are running on zsh, and set the options which allow our + # commands through without removal of \ escapes. + if test -n "${ZSH_VERSION+set}" ; then + setopt NO_GLOB_SUBST + fi + + cfgfile="${ofile}T" + trap "$RM \"$cfgfile\"; exit 1" 1 2 15 + $RM "$cfgfile" + + cat <<_LT_EOF >> "$cfgfile" +#! $SHELL + +# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. +# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION +# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: +# NOTE: Changes made to this file will be lost: look at ltmain.sh. +# +_LT_COPYING +_LT_LIBTOOL_TAGS + +# ### BEGIN LIBTOOL CONFIG +_LT_LIBTOOL_CONFIG_VARS +_LT_LIBTOOL_TAG_VARS +# ### END LIBTOOL CONFIG + +_LT_EOF + + case $host_os in + aix3*) + cat <<\_LT_EOF >> "$cfgfile" +# AIX sometimes has problems with the GCC collect2 program. For some +# reason, if we set the COLLECT_NAMES environment variable, the problems +# vanish in a puff of smoke. +if test "X${COLLECT_NAMES+set}" != Xset; then + COLLECT_NAMES= + export COLLECT_NAMES +fi +_LT_EOF + ;; + esac + + _LT_PROG_LTMAIN + + # We use sed instead of cat because bash on DJGPP gets confused if + # if finds mixed CR/LF and LF-only lines. Since sed operates in + # text mode, it properly converts lines to CR/LF. This bash problem + # is reportedly fixed, but why not run on old versions too? + sed '$q' "$ltmain" >> "$cfgfile" \ + || (rm -f "$cfgfile"; exit 1) + + _LT_PROG_REPLACE_SHELLFNS + + mv -f "$cfgfile" "$ofile" || + (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") + chmod +x "$ofile" +], +[cat <<_LT_EOF >> "$ofile" + +dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded +dnl in a comment (ie after a #). +# ### BEGIN LIBTOOL TAG CONFIG: $1 +_LT_LIBTOOL_TAG_VARS(_LT_TAG) +# ### END LIBTOOL TAG CONFIG: $1 +_LT_EOF +])dnl /m4_if +], +[m4_if([$1], [], [ + PACKAGE='$PACKAGE' + VERSION='$VERSION' + TIMESTAMP='$TIMESTAMP' + RM='$RM' + ofile='$ofile'], []) +])dnl /_LT_CONFIG_SAVE_COMMANDS +])# _LT_CONFIG + + +# LT_SUPPORTED_TAG(TAG) +# --------------------- +# Trace this macro to discover what tags are supported by the libtool +# --tag option, using: +# autoconf --trace 'LT_SUPPORTED_TAG:$1' +AC_DEFUN([LT_SUPPORTED_TAG], []) + + +# C support is built-in for now +m4_define([_LT_LANG_C_enabled], []) +m4_define([_LT_TAGS], []) + + +# LT_LANG(LANG) +# ------------- +# Enable libtool support for the given language if not already enabled. +AC_DEFUN([LT_LANG], +[AC_BEFORE([$0], [LT_OUTPUT])dnl +m4_case([$1], + [C], [_LT_LANG(C)], + [C++], [_LT_LANG(CXX)], + [Go], [_LT_LANG(GO)], + [Java], [_LT_LANG(GCJ)], + [Fortran 77], [_LT_LANG(F77)], + [Fortran], [_LT_LANG(FC)], + [Windows Resource], [_LT_LANG(RC)], + [m4_ifdef([_LT_LANG_]$1[_CONFIG], + [_LT_LANG($1)], + [m4_fatal([$0: unsupported language: "$1"])])])dnl +])# LT_LANG + + +# _LT_LANG(LANGNAME) +# ------------------ +m4_defun([_LT_LANG], +[m4_ifdef([_LT_LANG_]$1[_enabled], [], + [LT_SUPPORTED_TAG([$1])dnl + m4_append([_LT_TAGS], [$1 ])dnl + m4_define([_LT_LANG_]$1[_enabled], [])dnl + _LT_LANG_$1_CONFIG($1)])dnl +])# _LT_LANG + + +m4_ifndef([AC_PROG_GO], [ +# NOTE: This macro has been submitted for inclusion into # +# GNU Autoconf as AC_PROG_GO. When it is available in # +# a released version of Autoconf we should remove this # +# macro and use it instead. # +m4_defun([AC_PROG_GO], +[AC_LANG_PUSH(Go)dnl +AC_ARG_VAR([GOC], [Go compiler command])dnl +AC_ARG_VAR([GOFLAGS], [Go compiler flags])dnl +_AC_ARG_VAR_LDFLAGS()dnl +AC_CHECK_TOOL(GOC, gccgo) +if test -z "$GOC"; then + if test -n "$ac_tool_prefix"; then + AC_CHECK_PROG(GOC, [${ac_tool_prefix}gccgo], [${ac_tool_prefix}gccgo]) + fi +fi +if test -z "$GOC"; then + AC_CHECK_PROG(GOC, gccgo, gccgo, false) +fi +])#m4_defun +])#m4_ifndef + + +# _LT_LANG_DEFAULT_CONFIG +# ----------------------- +m4_defun([_LT_LANG_DEFAULT_CONFIG], +[AC_PROVIDE_IFELSE([AC_PROG_CXX], + [LT_LANG(CXX)], + [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])]) + +AC_PROVIDE_IFELSE([AC_PROG_F77], + [LT_LANG(F77)], + [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])]) + +AC_PROVIDE_IFELSE([AC_PROG_FC], + [LT_LANG(FC)], + [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])]) + +dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal +dnl pulling things in needlessly. +AC_PROVIDE_IFELSE([AC_PROG_GCJ], + [LT_LANG(GCJ)], + [AC_PROVIDE_IFELSE([A][M_PROG_GCJ], + [LT_LANG(GCJ)], + [AC_PROVIDE_IFELSE([LT_PROG_GCJ], + [LT_LANG(GCJ)], + [m4_ifdef([AC_PROG_GCJ], + [m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])]) + m4_ifdef([A][M_PROG_GCJ], + [m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])]) + m4_ifdef([LT_PROG_GCJ], + [m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])]) + +AC_PROVIDE_IFELSE([AC_PROG_GO], + [LT_LANG(GO)], + [m4_define([AC_PROG_GO], defn([AC_PROG_GO])[LT_LANG(GO)])]) + +AC_PROVIDE_IFELSE([LT_PROG_RC], + [LT_LANG(RC)], + [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])]) +])# _LT_LANG_DEFAULT_CONFIG + +# Obsolete macros: +AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)]) +AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)]) +AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)]) +AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)]) +AU_DEFUN([AC_LIBTOOL_RC], [LT_LANG(Windows Resource)]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_LIBTOOL_CXX], []) +dnl AC_DEFUN([AC_LIBTOOL_F77], []) +dnl AC_DEFUN([AC_LIBTOOL_FC], []) +dnl AC_DEFUN([AC_LIBTOOL_GCJ], []) +dnl AC_DEFUN([AC_LIBTOOL_RC], []) + + +# _LT_TAG_COMPILER +# ---------------- +m4_defun([_LT_TAG_COMPILER], +[AC_REQUIRE([AC_PROG_CC])dnl + +_LT_DECL([LTCC], [CC], [1], [A C compiler])dnl +_LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl +_LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl +_LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl + +# If no C compiler was specified, use CC. +LTCC=${LTCC-"$CC"} + +# If no C compiler flags were specified, use CFLAGS. +LTCFLAGS=${LTCFLAGS-"$CFLAGS"} + +# Allow CC to be a program name with arguments. +compiler=$CC +])# _LT_TAG_COMPILER + + +# _LT_COMPILER_BOILERPLATE +# ------------------------ +# Check for compiler boilerplate output or warnings with +# the simple compiler test code. +m4_defun([_LT_COMPILER_BOILERPLATE], +[m4_require([_LT_DECL_SED])dnl +ac_outfile=conftest.$ac_objext +echo "$lt_simple_compile_test_code" >conftest.$ac_ext +eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err +_lt_compiler_boilerplate=`cat conftest.err` +$RM conftest* +])# _LT_COMPILER_BOILERPLATE + + +# _LT_LINKER_BOILERPLATE +# ---------------------- +# Check for linker boilerplate output or warnings with +# the simple link test code. +m4_defun([_LT_LINKER_BOILERPLATE], +[m4_require([_LT_DECL_SED])dnl +ac_outfile=conftest.$ac_objext +echo "$lt_simple_link_test_code" >conftest.$ac_ext +eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err +_lt_linker_boilerplate=`cat conftest.err` +$RM -r conftest* +])# _LT_LINKER_BOILERPLATE + +# _LT_REQUIRED_DARWIN_CHECKS +# ------------------------- +m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[ + case $host_os in + rhapsody* | darwin*) + AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:]) + AC_CHECK_TOOL([NMEDIT], [nmedit], [:]) + AC_CHECK_TOOL([LIPO], [lipo], [:]) + AC_CHECK_TOOL([OTOOL], [otool], [:]) + AC_CHECK_TOOL([OTOOL64], [otool64], [:]) + _LT_DECL([], [DSYMUTIL], [1], + [Tool to manipulate archived DWARF debug symbol files on Mac OS X]) + _LT_DECL([], [NMEDIT], [1], + [Tool to change global to local symbols on Mac OS X]) + _LT_DECL([], [LIPO], [1], + [Tool to manipulate fat objects and archives on Mac OS X]) + _LT_DECL([], [OTOOL], [1], + [ldd/readelf like tool for Mach-O binaries on Mac OS X]) + _LT_DECL([], [OTOOL64], [1], + [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4]) + + AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod], + [lt_cv_apple_cc_single_mod=no + if test -z "${LT_MULTI_MODULE}"; then + # By default we will add the -single_module flag. You can override + # by either setting the environment variable LT_MULTI_MODULE + # non-empty at configure time, or by adding -multi_module to the + # link flags. + rm -rf libconftest.dylib* + echo "int foo(void){return 1;}" > conftest.c + echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ +-dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD + $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ + -dynamiclib -Wl,-single_module conftest.c 2>conftest.err + _lt_result=$? + # If there is a non-empty error log, and "single_module" + # appears in it, assume the flag caused a linker warning + if test -s conftest.err && $GREP single_module conftest.err; then + cat conftest.err >&AS_MESSAGE_LOG_FD + # Otherwise, if the output was created with a 0 exit code from + # the compiler, it worked. + elif test -f libconftest.dylib && test $_lt_result -eq 0; then + lt_cv_apple_cc_single_mod=yes + else + cat conftest.err >&AS_MESSAGE_LOG_FD + fi + rm -rf libconftest.dylib* + rm -f conftest.* + fi]) + + AC_CACHE_CHECK([for -exported_symbols_list linker flag], + [lt_cv_ld_exported_symbols_list], + [lt_cv_ld_exported_symbols_list=no + save_LDFLAGS=$LDFLAGS + echo "_main" > conftest.sym + LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym" + AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])], + [lt_cv_ld_exported_symbols_list=yes], + [lt_cv_ld_exported_symbols_list=no]) + LDFLAGS="$save_LDFLAGS" + ]) + + AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load], + [lt_cv_ld_force_load=no + cat > conftest.c << _LT_EOF +int forced_loaded() { return 2;} +_LT_EOF + echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD + $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD + echo "$AR cru libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD + $AR cru libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD + echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD + $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD + cat > conftest.c << _LT_EOF +int main() { return 0;} +_LT_EOF + echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&AS_MESSAGE_LOG_FD + $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err + _lt_result=$? + if test -s conftest.err && $GREP force_load conftest.err; then + cat conftest.err >&AS_MESSAGE_LOG_FD + elif test -f conftest && test $_lt_result -eq 0 && $GREP forced_load conftest >/dev/null 2>&1 ; then + lt_cv_ld_force_load=yes + else + cat conftest.err >&AS_MESSAGE_LOG_FD + fi + rm -f conftest.err libconftest.a conftest conftest.c + rm -rf conftest.dSYM + ]) + case $host_os in + rhapsody* | darwin1.[[012]]) + _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;; + darwin1.*) + _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; + darwin*) # darwin 5.x on + # if running on 10.5 or later, the deployment target defaults + # to the OS version, if on x86, and 10.4, the deployment + # target defaults to 10.4. Don't you love it? + case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in + 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*) + _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; + 10.[[012]]*) + _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; + 10.*) + _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; + esac + ;; + esac + if test "$lt_cv_apple_cc_single_mod" = "yes"; then + _lt_dar_single_mod='$single_module' + fi + if test "$lt_cv_ld_exported_symbols_list" = "yes"; then + _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym' + else + _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}' + fi + if test "$DSYMUTIL" != ":" && test "$lt_cv_ld_force_load" = "no"; then + _lt_dsymutil='~$DSYMUTIL $lib || :' + else + _lt_dsymutil= + fi + ;; + esac +]) + + +# _LT_DARWIN_LINKER_FEATURES([TAG]) +# --------------------------------- +# Checks for linker and compiler features on darwin +m4_defun([_LT_DARWIN_LINKER_FEATURES], +[ + m4_require([_LT_REQUIRED_DARWIN_CHECKS]) + _LT_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_TAGVAR(hardcode_direct, $1)=no + _LT_TAGVAR(hardcode_automatic, $1)=yes + _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported + if test "$lt_cv_ld_force_load" = "yes"; then + _LT_TAGVAR(whole_archive_flag_spec, $1)='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience ${wl}-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`' + m4_case([$1], [F77], [_LT_TAGVAR(compiler_needs_object, $1)=yes], + [FC], [_LT_TAGVAR(compiler_needs_object, $1)=yes]) + else + _LT_TAGVAR(whole_archive_flag_spec, $1)='' + fi + _LT_TAGVAR(link_all_deplibs, $1)=yes + _LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined" + case $cc_basename in + ifort*) _lt_dar_can_shared=yes ;; + *) _lt_dar_can_shared=$GCC ;; + esac + if test "$_lt_dar_can_shared" = "yes"; then + output_verbose_link_cmd=func_echo_all + _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}" + _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}" + _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}" + _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}" + m4_if([$1], [CXX], +[ if test "$lt_cv_apple_cc_single_mod" != "yes"; then + _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}" + _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}" + fi +],[]) + else + _LT_TAGVAR(ld_shlibs, $1)=no + fi +]) + +# _LT_SYS_MODULE_PATH_AIX([TAGNAME]) +# ---------------------------------- +# 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. +# Store the results from the different compilers for each TAGNAME. +# Allow to override them for all tags through lt_cv_aix_libpath. +m4_defun([_LT_SYS_MODULE_PATH_AIX], +[m4_require([_LT_DECL_SED])dnl +if test "${lt_cv_aix_libpath+set}" = set; then + aix_libpath=$lt_cv_aix_libpath +else + AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])], + [AC_LINK_IFELSE([AC_LANG_PROGRAM],[ + lt_aix_libpath_sed='[ + /Import File Strings/,/^$/ { + /^0/ { + s/^0 *\([^ ]*\) *$/\1/ + p + } + }]' + _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`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 "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then + _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` + fi],[]) + if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then + _LT_TAGVAR([lt_cv_aix_libpath_], [$1])="/usr/lib:/lib" + fi + ]) + aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1]) +fi +])# _LT_SYS_MODULE_PATH_AIX + + +# _LT_SHELL_INIT(ARG) +# ------------------- +m4_define([_LT_SHELL_INIT], +[m4_divert_text([M4SH-INIT], [$1 +])])# _LT_SHELL_INIT + + + +# _LT_PROG_ECHO_BACKSLASH +# ----------------------- +# Find how we can fake an echo command that does not interpret backslash. +# In particular, with Autoconf 2.60 or later we add some code to the start +# of the generated configure script which will find a shell with a builtin +# printf (which we can use as an echo command). +m4_defun([_LT_PROG_ECHO_BACKSLASH], +[ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' +ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO +ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO + +AC_MSG_CHECKING([how to print strings]) +# Test print first, because it will be a builtin if present. +if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \ + test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then + ECHO='print -r --' +elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then + ECHO='printf %s\n' +else + # Use this function as a fallback that always works. + func_fallback_echo () + { + eval 'cat <<_LTECHO_EOF +$[]1 +_LTECHO_EOF' + } + ECHO='func_fallback_echo' +fi + +# func_echo_all arg... +# Invoke $ECHO with all args, space-separated. +func_echo_all () +{ + $ECHO "$*" +} + +case "$ECHO" in + printf*) AC_MSG_RESULT([printf]) ;; + print*) AC_MSG_RESULT([print -r]) ;; + *) AC_MSG_RESULT([cat]) ;; +esac + +m4_ifdef([_AS_DETECT_SUGGESTED], +[_AS_DETECT_SUGGESTED([ + test -n "${ZSH_VERSION+set}${BASH_VERSION+set}" || ( + ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' + ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO + ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO + PATH=/empty FPATH=/empty; export PATH FPATH + test "X`printf %s $ECHO`" = "X$ECHO" \ + || test "X`print -r -- $ECHO`" = "X$ECHO" )])]) + +_LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts]) +_LT_DECL([], [ECHO], [1], [An echo program that protects backslashes]) +])# _LT_PROG_ECHO_BACKSLASH + + +# _LT_WITH_SYSROOT +# ---------------- +AC_DEFUN([_LT_WITH_SYSROOT], +[AC_MSG_CHECKING([for sysroot]) +AC_ARG_WITH([sysroot], +[ --with-sysroot[=DIR] Search for dependent libraries within DIR + (or the compiler's sysroot if not specified).], +[], [with_sysroot=no]) + +dnl lt_sysroot will always be passed unquoted. We quote it here +dnl in case the user passed a directory name. +lt_sysroot= +case ${with_sysroot} in #( + yes) + if test "$GCC" = yes; then + lt_sysroot=`$CC --print-sysroot 2>/dev/null` + fi + ;; #( + /*) + lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"` + ;; #( + no|'') + ;; #( + *) + AC_MSG_RESULT([${with_sysroot}]) + AC_MSG_ERROR([The sysroot must be an absolute path.]) + ;; +esac + + AC_MSG_RESULT([${lt_sysroot:-no}]) +_LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl +[dependent libraries, and in which our libraries should be installed.])]) + +# _LT_ENABLE_LOCK +# --------------- +m4_defun([_LT_ENABLE_LOCK], +[AC_ARG_ENABLE([libtool-lock], + [AS_HELP_STRING([--disable-libtool-lock], + [avoid locking (might break parallel builds)])]) +test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes + +# Some flags need to be propagated to the compiler or linker for good +# libtool support. +case $host in +ia64-*-hpux*) + # Find out which ABI we are using. + echo 'int i;' > conftest.$ac_ext + if AC_TRY_EVAL(ac_compile); then + case `/usr/bin/file conftest.$ac_objext` in + *ELF-32*) + HPUX_IA64_MODE="32" + ;; + *ELF-64*) + HPUX_IA64_MODE="64" + ;; + esac + fi + rm -rf conftest* + ;; +*-*-irix6*) + # Find out which ABI we are using. + echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext + if AC_TRY_EVAL(ac_compile); then + if test "$lt_cv_prog_gnu_ld" = yes; then + case `/usr/bin/file conftest.$ac_objext` in + *32-bit*) + LD="${LD-ld} -melf32bsmip" + ;; + *N32*) + LD="${LD-ld} -melf32bmipn32" + ;; + *64-bit*) + LD="${LD-ld} -melf64bmip" + ;; + esac + else + case `/usr/bin/file conftest.$ac_objext` in + *32-bit*) + LD="${LD-ld} -32" + ;; + *N32*) + LD="${LD-ld} -n32" + ;; + *64-bit*) + LD="${LD-ld} -64" + ;; + esac + fi + fi + rm -rf conftest* + ;; + +x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \ +s390*-*linux*|s390*-*tpf*|sparc*-*linux*) + # Find out which ABI we are using. + echo 'int i;' > conftest.$ac_ext + if AC_TRY_EVAL(ac_compile); then + case `/usr/bin/file conftest.o` in + *32-bit*) + case $host in + x86_64-*kfreebsd*-gnu) + LD="${LD-ld} -m elf_i386_fbsd" + ;; + x86_64-*linux*) + LD="${LD-ld} -m elf_i386" + ;; + ppc64-*linux*|powerpc64-*linux*) + LD="${LD-ld} -m elf32ppclinux" + ;; + s390x-*linux*) + LD="${LD-ld} -m elf_s390" + ;; + sparc64-*linux*) + LD="${LD-ld} -m elf32_sparc" + ;; + esac + ;; + *64-bit*) + case $host in + x86_64-*kfreebsd*-gnu) + LD="${LD-ld} -m elf_x86_64_fbsd" + ;; + x86_64-*linux*) + LD="${LD-ld} -m elf_x86_64" + ;; + ppc*-*linux*|powerpc*-*linux*) + LD="${LD-ld} -m elf64ppc" + ;; + s390*-*linux*|s390*-*tpf*) + LD="${LD-ld} -m elf64_s390" + ;; + sparc*-*linux*) + LD="${LD-ld} -m elf64_sparc" + ;; + esac + ;; + esac + fi + rm -rf conftest* + ;; + +*-*-sco3.2v5*) + # On SCO OpenServer 5, we need -belf to get full-featured binaries. + SAVE_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -belf" + AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, + [AC_LANG_PUSH(C) + AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no]) + AC_LANG_POP]) + if test x"$lt_cv_cc_needs_belf" != x"yes"; then + # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf + CFLAGS="$SAVE_CFLAGS" + fi + ;; +*-*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*) + case $host in + i?86-*-solaris*) + LD="${LD-ld} -m elf_x86_64" + ;; + sparc*-*-solaris*) + LD="${LD-ld} -m elf64_sparc" + ;; + esac + # GNU ld 2.21 introduced _sol2 emulations. Use them if available. + if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then + LD="${LD-ld}_sol2" + fi + ;; + *) + if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then + LD="${LD-ld} -64" + fi + ;; + esac + ;; + esac + fi + rm -rf conftest* + ;; +esac + +need_locks="$enable_libtool_lock" +])# _LT_ENABLE_LOCK + + +# _LT_PROG_AR +# ----------- +m4_defun([_LT_PROG_AR], +[AC_CHECK_TOOLS(AR, [ar], false) +: ${AR=ar} +: ${AR_FLAGS=cru} +_LT_DECL([], [AR], [1], [The archiver]) +_LT_DECL([], [AR_FLAGS], [1], [Flags to create an archive]) + +AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file], + [lt_cv_ar_at_file=no + AC_COMPILE_IFELSE([AC_LANG_PROGRAM], + [echo conftest.$ac_objext > conftest.lst + lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD' + AC_TRY_EVAL([lt_ar_try]) + if test "$ac_status" -eq 0; then + # Ensure the archiver fails upon bogus file names. + rm -f conftest.$ac_objext libconftest.a + AC_TRY_EVAL([lt_ar_try]) + if test "$ac_status" -ne 0; then + lt_cv_ar_at_file=@ + fi + fi + rm -f conftest.* libconftest.a + ]) + ]) + +if test "x$lt_cv_ar_at_file" = xno; then + archiver_list_spec= +else + archiver_list_spec=$lt_cv_ar_at_file +fi +_LT_DECL([], [archiver_list_spec], [1], + [How to feed a file listing to the archiver]) +])# _LT_PROG_AR + + +# _LT_CMD_OLD_ARCHIVE +# ------------------- +m4_defun([_LT_CMD_OLD_ARCHIVE], +[_LT_PROG_AR + +AC_CHECK_TOOL(STRIP, strip, :) +test -z "$STRIP" && STRIP=: +_LT_DECL([], [STRIP], [1], [A symbol stripping program]) + +AC_CHECK_TOOL(RANLIB, ranlib, :) +test -z "$RANLIB" && RANLIB=: +_LT_DECL([], [RANLIB], [1], + [Commands used to install an old-style archive]) + +# Determine commands to create old-style static archives. +old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs' +old_postinstall_cmds='chmod 644 $oldlib' +old_postuninstall_cmds= + +if test -n "$RANLIB"; then + case $host_os in + openbsd*) + old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib" + ;; + *) + old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib" + ;; + esac + old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib" +fi + +case $host_os in + darwin*) + lock_old_archive_extraction=yes ;; + *) + lock_old_archive_extraction=no ;; +esac +_LT_DECL([], [old_postinstall_cmds], [2]) +_LT_DECL([], [old_postuninstall_cmds], [2]) +_LT_TAGDECL([], [old_archive_cmds], [2], + [Commands used to build an old-style archive]) +_LT_DECL([], [lock_old_archive_extraction], [0], + [Whether to use a lock for old archive extraction]) +])# _LT_CMD_OLD_ARCHIVE + + +# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, +# [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE]) +# ---------------------------------------------------------------- +# Check whether the given compiler option works +AC_DEFUN([_LT_COMPILER_OPTION], +[m4_require([_LT_FILEUTILS_DEFAULTS])dnl +m4_require([_LT_DECL_SED])dnl +AC_CACHE_CHECK([$1], [$2], + [$2=no + m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4]) + echo "$lt_simple_compile_test_code" > conftest.$ac_ext + lt_compiler_flag="$3" + # Insert the option either (1) after the last *FLAGS variable, or + # (2) before a word containing "conftest.", or (3) at the end. + # Note that $ac_compile itself does not contain backslashes and begins + # with a dollar sign (not a hyphen), so the echo should work correctly. + # The option is referenced via a variable to avoid confusing sed. + lt_compile=`echo "$ac_compile" | $SED \ + -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ + -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` + (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD) + (eval "$lt_compile" 2>conftest.err) + ac_status=$? + cat conftest.err >&AS_MESSAGE_LOG_FD + echo "$as_me:$LINENO: \$? = $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 "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp + $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 + if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then + $2=yes + fi + fi + $RM conftest* +]) + +if test x"[$]$2" = xyes; then + m4_if([$5], , :, [$5]) +else + m4_if([$6], , :, [$6]) +fi +])# _LT_COMPILER_OPTION + +# Old name: +AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], []) + + +# _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, +# [ACTION-SUCCESS], [ACTION-FAILURE]) +# ---------------------------------------------------- +# Check whether the given linker option works +AC_DEFUN([_LT_LINKER_OPTION], +[m4_require([_LT_FILEUTILS_DEFAULTS])dnl +m4_require([_LT_DECL_SED])dnl +AC_CACHE_CHECK([$1], [$2], + [$2=no + save_LDFLAGS="$LDFLAGS" + LDFLAGS="$LDFLAGS $3" + echo "$lt_simple_link_test_code" > conftest.$ac_ext + if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then + # The linker can only warn and ignore the option if not recognized + # So say no if there are warnings + if test -s conftest.err; then + # Append any errors to the config.log. + cat conftest.err 1>&AS_MESSAGE_LOG_FD + $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp + $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 + if diff conftest.exp conftest.er2 >/dev/null; then + $2=yes + fi + else + $2=yes + fi + fi + $RM -r conftest* + LDFLAGS="$save_LDFLAGS" +]) + +if test x"[$]$2" = xyes; then + m4_if([$4], , :, [$4]) +else + m4_if([$5], , :, [$5]) +fi +])# _LT_LINKER_OPTION + +# Old name: +AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], []) + + +# LT_CMD_MAX_LEN +#--------------- +AC_DEFUN([LT_CMD_MAX_LEN], +[AC_REQUIRE([AC_CANONICAL_HOST])dnl +# find the maximum length of command line arguments +AC_MSG_CHECKING([the maximum length of command line arguments]) +AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl + i=0 + teststring="ABCD" + + case $build_os in + msdosdjgpp*) + # On DJGPP, this test can blow up pretty badly due to problems in libc + # (any single argument exceeding 2000 bytes causes a buffer overrun + # during glob expansion). Even if it were fixed, the result of this + # check would be larger than it should be. + lt_cv_sys_max_cmd_len=12288; # 12K is about right + ;; + + gnu*) + # Under GNU Hurd, this test is not required because there is + # no limit to the length of command line arguments. + # Libtool will interpret -1 as no limit whatsoever + lt_cv_sys_max_cmd_len=-1; + ;; + + cygwin* | mingw* | cegcc*) + # On Win9x/ME, this test blows up -- it succeeds, but takes + # about 5 minutes as the teststring grows exponentially. + # Worse, since 9x/ME are not pre-emptively multitasking, + # you end up with a "frozen" computer, even though with patience + # the test eventually succeeds (with a max line length of 256k). + # Instead, let's just punt: use the minimum linelength reported by + # all of the supported platforms: 8192 (on NT/2K/XP). + lt_cv_sys_max_cmd_len=8192; + ;; + + mint*) + # On MiNT this can take a long time and run out of memory. + 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 + ;; + + os2*) + # The test takes a long time on OS/2. + lt_cv_sys_max_cmd_len=8192 + ;; + + osf*) + # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure + # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not + # nice to cause kernel panics so lets avoid the loop below. + # First set a reasonable default. + lt_cv_sys_max_cmd_len=16384 + # + if test -x /sbin/sysconfig; then + case `/sbin/sysconfig -q proc exec_disable_arg_limit` in + *1*) lt_cv_sys_max_cmd_len=-1 ;; + esac + fi + ;; + sco3.2v5*) + lt_cv_sys_max_cmd_len=102400 + ;; + sysv5* | sco5v6* | sysv4.2uw2*) + kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null` + if test -n "$kargmax"; then + lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'` + else + lt_cv_sys_max_cmd_len=32768 + fi + ;; + *) + lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null` + if test -n "$lt_cv_sys_max_cmd_len"; then + lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` + lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` + else + # Make teststring a little bigger before we do anything with it. + # a 1K string should be a reasonable start. + for i in 1 2 3 4 5 6 7 8 ; do + teststring=$teststring$teststring + done + SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}} + # If test is not a shell built-in, we'll probably end up computing a + # maximum length that is only half of the actual maximum length, but + # we can't tell. + while { test "X"`env echo "$teststring$teststring" 2>/dev/null` \ + = "X$teststring$teststring"; } >/dev/null 2>&1 && + test $i != 17 # 1/2 MB should be enough + do + i=`expr $i + 1` + teststring=$teststring$teststring + done + # Only check the string length outside the loop. + lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1` + teststring= + # Add a significant safety factor because C++ compilers can tack on + # massive amounts of additional arguments before passing them to the + # linker. It appears as though 1/2 is a usable value. + lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2` + fi + ;; + esac +]) +if test -n $lt_cv_sys_max_cmd_len ; then + AC_MSG_RESULT($lt_cv_sys_max_cmd_len) +else + AC_MSG_RESULT(none) +fi +max_cmd_len=$lt_cv_sys_max_cmd_len +_LT_DECL([], [max_cmd_len], [0], + [What is the maximum length of a command?]) +])# LT_CMD_MAX_LEN + +# Old name: +AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], []) + + +# _LT_HEADER_DLFCN +# ---------------- +m4_defun([_LT_HEADER_DLFCN], +[AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl +])# _LT_HEADER_DLFCN + + +# _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE, +# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING) +# ---------------------------------------------------------------- +m4_defun([_LT_TRY_DLOPEN_SELF], +[m4_require([_LT_HEADER_DLFCN])dnl +if test "$cross_compiling" = yes; then : + [$4] +else + lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 + lt_status=$lt_dlunknown + cat > conftest.$ac_ext <<_LT_EOF +[#line $LINENO "configure" +#include "confdefs.h" + +#if HAVE_DLFCN_H +#include +#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 + +/* When -fvisbility=hidden is used, assume the code has been annotated + correspondingly for the symbols needed. */ +#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) +int fnord () __attribute__((visibility("default"))); +#endif + +int fnord () { return 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; + else puts (dlerror ()); + } + /* dlclose (self); */ + } + else + puts (dlerror ()); + + return status; +}] +_LT_EOF + if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then + (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null + lt_status=$? + case x$lt_status in + x$lt_dlno_uscore) $1 ;; + x$lt_dlneed_uscore) $2 ;; + x$lt_dlunknown|x*) $3 ;; + esac + else : + # compilation failed + $3 + fi +fi +rm -fr conftest* +])# _LT_TRY_DLOPEN_SELF + + +# LT_SYS_DLOPEN_SELF +# ------------------ +AC_DEFUN([LT_SYS_DLOPEN_SELF], +[m4_require([_LT_HEADER_DLFCN])dnl +if test "x$enable_dlopen" != xyes; then + enable_dlopen=unknown + enable_dlopen_self=unknown + enable_dlopen_self_static=unknown +else + lt_cv_dlopen=no + lt_cv_dlopen_libs= + + case $host_os in + beos*) + lt_cv_dlopen="load_add_on" + lt_cv_dlopen_libs= + lt_cv_dlopen_self=yes + ;; + + mingw* | pw32* | cegcc*) + lt_cv_dlopen="LoadLibrary" + lt_cv_dlopen_libs= + ;; + + cygwin*) + lt_cv_dlopen="dlopen" + lt_cv_dlopen_libs= + ;; + + darwin*) + # if libdl is installed we need to link against it + AC_CHECK_LIB([dl], [dlopen], + [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[ + lt_cv_dlopen="dyld" + lt_cv_dlopen_libs= + lt_cv_dlopen_self=yes + ]) + ;; + + *) + AC_CHECK_FUNC([shl_load], + [lt_cv_dlopen="shl_load"], + [AC_CHECK_LIB([dld], [shl_load], + [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"], + [AC_CHECK_FUNC([dlopen], + [lt_cv_dlopen="dlopen"], + [AC_CHECK_LIB([dl], [dlopen], + [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"], + [AC_CHECK_LIB([svld], [dlopen], + [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"], + [AC_CHECK_LIB([dld], [dld_link], + [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"]) + ]) + ]) + ]) + ]) + ]) + ;; + esac + + if test "x$lt_cv_dlopen" != xno; then + enable_dlopen=yes + else + enable_dlopen=no + fi + + case $lt_cv_dlopen in + dlopen) + save_CPPFLAGS="$CPPFLAGS" + test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" + + save_LDFLAGS="$LDFLAGS" + wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" + + save_LIBS="$LIBS" + LIBS="$lt_cv_dlopen_libs $LIBS" + + AC_CACHE_CHECK([whether a program can dlopen itself], + lt_cv_dlopen_self, [dnl + _LT_TRY_DLOPEN_SELF( + lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes, + lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross) + ]) + + if test "x$lt_cv_dlopen_self" = xyes; then + wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\" + AC_CACHE_CHECK([whether a statically linked program can dlopen itself], + lt_cv_dlopen_self_static, [dnl + _LT_TRY_DLOPEN_SELF( + lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes, + lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross) + ]) + fi + + CPPFLAGS="$save_CPPFLAGS" + LDFLAGS="$save_LDFLAGS" + LIBS="$save_LIBS" + ;; + esac + + case $lt_cv_dlopen_self in + yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; + *) enable_dlopen_self=unknown ;; + esac + + case $lt_cv_dlopen_self_static in + yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; + *) enable_dlopen_self_static=unknown ;; + esac +fi +_LT_DECL([dlopen_support], [enable_dlopen], [0], + [Whether dlopen is supported]) +_LT_DECL([dlopen_self], [enable_dlopen_self], [0], + [Whether dlopen of programs is supported]) +_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0], + [Whether dlopen of statically linked programs is supported]) +])# LT_SYS_DLOPEN_SELF + +# Old name: +AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], []) + + +# _LT_COMPILER_C_O([TAGNAME]) +# --------------------------- +# Check to see if options -c and -o are simultaneously supported by compiler. +# This macro does not hard code the compiler like AC_PROG_CC_C_O. +m4_defun([_LT_COMPILER_C_O], +[m4_require([_LT_DECL_SED])dnl +m4_require([_LT_FILEUTILS_DEFAULTS])dnl +m4_require([_LT_TAG_COMPILER])dnl +AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext], + [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)], + [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no + $RM -r conftest 2>/dev/null + mkdir conftest + cd conftest + mkdir out + echo "$lt_simple_compile_test_code" > conftest.$ac_ext + + lt_compiler_flag="-o out/conftest2.$ac_objext" + # Insert the option either (1) after the last *FLAGS variable, or + # (2) before a word containing "conftest.", or (3) at the end. + # Note that $ac_compile itself does not contain backslashes and begins + # with a dollar sign (not a hyphen), so the echo should work correctly. + lt_compile=`echo "$ac_compile" | $SED \ + -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ + -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` + (eval echo "\"\$as_me:$LINENO: $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:$LINENO: \$? = $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 "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp + $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 + if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then + _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes + fi + fi + chmod u+w . 2>&AS_MESSAGE_LOG_FD + $RM conftest* + # SGI C++ compiler will create directory out/ii_files/ for + # template instantiation + test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files + $RM out/* && rmdir out + cd .. + $RM -r conftest + $RM conftest* +]) +_LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1], + [Does compiler simultaneously support -c and -o options?]) +])# _LT_COMPILER_C_O + + +# _LT_COMPILER_FILE_LOCKS([TAGNAME]) +# ---------------------------------- +# Check to see if we can do hard links to lock some files if needed +m4_defun([_LT_COMPILER_FILE_LOCKS], +[m4_require([_LT_ENABLE_LOCK])dnl +m4_require([_LT_FILEUTILS_DEFAULTS])dnl +_LT_COMPILER_C_O([$1]) + +hard_links="nottested" +if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then + # do not overwrite the value of need_locks provided by the user + AC_MSG_CHECKING([if we can lock with hard links]) + hard_links=yes + $RM conftest* + ln conftest.a conftest.b 2>/dev/null && hard_links=no + touch conftest.a + ln conftest.a conftest.b 2>&5 || hard_links=no + ln conftest.a conftest.b 2>/dev/null && hard_links=no + AC_MSG_RESULT([$hard_links]) + if test "$hard_links" = no; then + AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe]) + need_locks=warn + fi +else + need_locks=no +fi +_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?]) +])# _LT_COMPILER_FILE_LOCKS + + +# _LT_CHECK_OBJDIR +# ---------------- +m4_defun([_LT_CHECK_OBJDIR], +[AC_CACHE_CHECK([for objdir], [lt_cv_objdir], +[rm -f .libs 2>/dev/null +mkdir .libs 2>/dev/null +if test -d .libs; then + lt_cv_objdir=.libs +else + # MS-DOS does not allow filenames that begin with a dot. + lt_cv_objdir=_libs +fi +rmdir .libs 2>/dev/null]) +objdir=$lt_cv_objdir +_LT_DECL([], [objdir], [0], + [The name of the directory that contains temporary libtool files])dnl +m4_pattern_allow([LT_OBJDIR])dnl +AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/", + [Define to the sub-directory in which libtool stores uninstalled libraries.]) +])# _LT_CHECK_OBJDIR + + +# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME]) +# -------------------------------------- +# Check hardcoding attributes. +m4_defun([_LT_LINKER_HARDCODE_LIBPATH], +[AC_MSG_CHECKING([how to hardcode library paths into programs]) +_LT_TAGVAR(hardcode_action, $1)= +if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" || + test -n "$_LT_TAGVAR(runpath_var, $1)" || + test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then + + # We can hardcode non-existent directories. + if test "$_LT_TAGVAR(hardcode_direct, $1)" != no && + # If the only mechanism to avoid hardcoding is shlibpath_var, we + # have to relink, otherwise we might link with an installed library + # when we should be linking with a yet-to-be-installed one + ## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no && + test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then + # Linking always hardcodes the temporary library directory. + _LT_TAGVAR(hardcode_action, $1)=relink + else + # We can link without hardcoding, and we can hardcode nonexisting dirs. + _LT_TAGVAR(hardcode_action, $1)=immediate + fi +else + # We cannot hardcode anything, or else we can only hardcode existing + # directories. + _LT_TAGVAR(hardcode_action, $1)=unsupported +fi +AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)]) + +if test "$_LT_TAGVAR(hardcode_action, $1)" = relink || + test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then + # Fast installation is not supported + enable_fast_install=no +elif test "$shlibpath_overrides_runpath" = yes || + test "$enable_shared" = no; then + # Fast installation is not necessary + enable_fast_install=needless +fi +_LT_TAGDECL([], [hardcode_action], [0], + [How to hardcode a shared library path into an executable]) +])# _LT_LINKER_HARDCODE_LIBPATH + + +# _LT_CMD_STRIPLIB +# ---------------- +m4_defun([_LT_CMD_STRIPLIB], +[m4_require([_LT_DECL_EGREP]) +striplib= +old_striplib= +AC_MSG_CHECKING([whether stripping libraries is possible]) +if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then + test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" + test -z "$striplib" && striplib="$STRIP --strip-unneeded" + AC_MSG_RESULT([yes]) +else +# FIXME - insert some real tests, host_os isn't really good enough + case $host_os in + darwin*) + if test -n "$STRIP" ; then + striplib="$STRIP -x" + old_striplib="$STRIP -S" + AC_MSG_RESULT([yes]) + else + AC_MSG_RESULT([no]) + fi + ;; + *) + AC_MSG_RESULT([no]) + ;; + esac +fi +_LT_DECL([], [old_striplib], [1], [Commands to strip libraries]) +_LT_DECL([], [striplib], [1]) +])# _LT_CMD_STRIPLIB + + +# _LT_SYS_DYNAMIC_LINKER([TAG]) +# ----------------------------- +# PORTME Fill in your ld.so characteristics +m4_defun([_LT_SYS_DYNAMIC_LINKER], +[AC_REQUIRE([AC_CANONICAL_HOST])dnl +m4_require([_LT_DECL_EGREP])dnl +m4_require([_LT_FILEUTILS_DEFAULTS])dnl +m4_require([_LT_DECL_OBJDUMP])dnl +m4_require([_LT_DECL_SED])dnl +m4_require([_LT_CHECK_SHELL_FEATURES])dnl +AC_MSG_CHECKING([dynamic linker characteristics]) +m4_if([$1], + [], [ +if test "$GCC" = yes; then + case $host_os in + darwin*) lt_awk_arg="/^libraries:/,/LR/" ;; + *) lt_awk_arg="/^libraries:/" ;; + esac + case $host_os in + mingw* | cegcc*) lt_sed_strip_eq="s,=\([[A-Za-z]]:\),\1,g" ;; + *) lt_sed_strip_eq="s,=/,/,g" ;; + esac + lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq` + case $lt_search_path_spec in + *\;*) + # 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 's/;/ /g'` + ;; + *) + lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"` + ;; + esac + # 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; } +}'` + # AWK program above erroneously prepends '/' to C:/dos/paths + # for these hosts. + case $host_os in + mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\ + $SED 's,/\([[A-Za-z]]:\),\1,g'` ;; + esac + sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP` +else + sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" +fi]) +library_names_spec= +libname_spec='lib$name' +soname_spec= +shrext_cmds=".so" +postinstall_cmds= +postuninstall_cmds= +finish_cmds= +finish_eval= +shlibpath_var= +shlibpath_overrides_runpath=unknown +version_type=none +dynamic_linker="$host_os ld.so" +sys_lib_dlsearch_path_spec="/lib /usr/lib" +need_lib_prefix=unknown +hardcode_into_libs=no + +# when you set need_version to no, make sure it does not cause -set_version +# flags to be left without arguments +need_version=unknown + +case $host_os in +aix3*) + version_type=linux # correct to gnu/linux during the next big refactor + 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 # correct to gnu/linux during the next big refactor + 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*) + case $host_cpu in + powerpc) + # Since July 2007 AmigaOS4 officially supports .so libraries. + # When compiling the executable, add -use-dynld -Lsobjs: to the compileline. + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + ;; + m68k) + library_names_spec='$libname.ixlibrary $libname.a' + # Create ${libname}_ixlibrary.a entries in /sys/libs. + finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' + ;; + esac + ;; + +beos*) + library_names_spec='${libname}${shared_ext}' + dynamic_linker="$host_os ld.so" + shlibpath_var=LIBRARY_PATH + ;; + +bsdi[[45]]*) + version_type=linux # correct to gnu/linux during the next big refactor + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' + shlibpath_var=LD_LIBRARY_PATH + sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" + sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" + # the default ld.so.conf also contains /usr/contrib/lib and + # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow + # libtool to hard-code these into programs + ;; + +cygwin* | mingw* | pw32* | cegcc*) + version_type=windows + shrext_cmds=".dll" + need_version=no + need_lib_prefix=no + + case $GCC,$cc_basename in + yes,*) + # gcc + library_names_spec='$libname.dll.a' + # DLL is installed to $(libdir)/../bin by postinstall_cmds + postinstall_cmds='base_file=`basename \${file}`~ + dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~ + dldir=$destdir/`dirname \$dlpath`~ + test -d \$dldir || mkdir -p \$dldir~ + $install_prog $dir/$dlname \$dldir/$dlname~ + chmod a+x \$dldir/$dlname~ + if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then + eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; + fi' + postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ + dlpath=$dir/\$dldll~ + $RM \$dlpath' + shlibpath_overrides_runpath=yes + + case $host_os in + cygwin*) + # Cygwin DLLs use 'cyg' prefix rather than 'lib' + soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' +m4_if([$1], [],[ + sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"]) + ;; + mingw* | cegcc*) + # MinGW DLLs use traditional 'lib' prefix + soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' + ;; + 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 + dynamic_linker='Win32 ld.exe' + ;; + + *,cl*) + # Native MSVC + libname_spec='$name' + soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' + library_names_spec='${libname}.dll.lib' + + case $build_os in + mingw*) + sys_lib_search_path_spec= + lt_save_ifs=$IFS + IFS=';' + for lt_path in $LIB + do + IFS=$lt_save_ifs + # Let DOS variable expansion print the short 8.3 style file name. + lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"` + sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path" + done + IFS=$lt_save_ifs + # Convert to MSYS style. + sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'` + ;; + cygwin*) + # Convert to unix form, then to dos form, then back to unix form + # but this time dos style (no spaces!) so that the unix form looks + # like /cygdrive/c/PROGRA~1:/cygdr... + sys_lib_search_path_spec=`cygpath --path --unix "$LIB"` + sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null` + sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` + ;; + *) + sys_lib_search_path_spec="$LIB" + if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then + # It is most probably a Windows format PATH. + 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 + # FIXME: find the short name or the path components, as spaces are + # common. (e.g. "Program Files" -> "PROGRA~1") + ;; + esac + + # 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' + postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ + dlpath=$dir/\$dldll~ + $RM \$dlpath' + shlibpath_overrides_runpath=yes + dynamic_linker='Win32 link.exe' + ;; + + *) + # Assume MSVC wrapper + library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib' + dynamic_linker='Win32 ld.exe' + ;; + esac + # FIXME: first we should search . and the directory the executable is in + shlibpath_var=PATH + ;; + +darwin* | rhapsody*) + dynamic_linker="$host_os dyld" + version_type=darwin + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext' + soname_spec='${libname}${release}${major}$shared_ext' + shlibpath_overrides_runpath=yes + shlibpath_var=DYLD_LIBRARY_PATH + shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`' +m4_if([$1], [],[ + sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"]) + sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib' + ;; + +dgux*) + version_type=linux # correct to gnu/linux during the next big refactor + 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 + ;; + +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[[23]].*) 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 # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + ;; + +haiku*) + version_type=linux # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + dynamic_linker="$host_os runtime_loader" + 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=LIBRARY_PATH + shlibpath_overrides_runpath=yes + sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib' + 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' + # or fails outright, so override atomically: + install_override_mode=555 + ;; + +interix[[3-9]]*) + version_type=linux # correct to gnu/linux during the next big refactor + 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 # correct to gnu/linux during the next big refactor + 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 glibc/ELF. +linux* | k*bsd*-gnu | kopensolaris*-gnu) + version_type=linux # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + + # Some binutils ld are patched to set DT_RUNPATH + AC_CACHE_VAL([lt_cv_shlibpath_overrides_runpath], + [lt_cv_shlibpath_overrides_runpath=no + save_LDFLAGS=$LDFLAGS + save_libdir=$libdir + eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \ + LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\"" + AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])], + [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null], + [lt_cv_shlibpath_overrides_runpath=yes])]) + LDFLAGS=$save_LDFLAGS + libdir=$save_libdir + ]) + shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath + + # 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;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 # correct to gnu/linux during the next big refactor + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + ;; + +*nto* | *qnx*) + version_type=qnx + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + dynamic_linker='ldqnx.so' + ;; + +openbsd*) + version_type=sunos + sys_lib_dlsearch_path_spec="/usr/lib" + need_lib_prefix=no + # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs. + case $host_os in + openbsd3.3 | openbsd3.3.*) need_version=yes ;; + *) need_version=no ;; + esac + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' + shlibpath_var=LD_LIBRARY_PATH + if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then + case $host_os in + openbsd2.[[89]] | openbsd2.[[89]].*) + shlibpath_overrides_runpath=no + ;; + *) + shlibpath_overrides_runpath=yes + ;; + esac + else + shlibpath_overrides_runpath=yes + fi + ;; + +os2*) + libname_spec='$name' + shrext_cmds=".dll" + need_lib_prefix=no + library_names_spec='$libname${shared_ext} $libname.a' + dynamic_linker='OS/2 ld.exe' + shlibpath_var=LIBPATH + ;; + +osf3* | osf4* | osf5*) + version_type=osf + need_lib_prefix=no + need_version=no + soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + shlibpath_var=LD_LIBRARY_PATH + sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" + sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" + ;; + +rdos*) + dynamic_linker=no + ;; + +solaris*) + version_type=linux # correct to gnu/linux during the next big refactor + 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 # correct to gnu/linux during the next big refactor + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + case $host_vendor in + sni) + shlibpath_overrides_runpath=no + need_lib_prefix=no + runpath_var=LD_RUN_PATH + ;; + siemens) + need_lib_prefix=no + ;; + motorola) + need_lib_prefix=no + need_version=no + shlibpath_overrides_runpath=no + sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' + ;; + esac + ;; + +sysv4*MP*) + if test -d /usr/nec ;then + version_type=linux # correct to gnu/linux during the next big refactor + library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}' + soname_spec='$libname${shared_ext}.$major' + shlibpath_var=LD_LIBRARY_PATH + fi + ;; + +sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) + version_type=freebsd-elf + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + if test "$with_gnu_ld" = yes; then + sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib' + else + sys_lib_search_path_spec='/usr/ccs/lib /usr/lib' + case $host_os in + sco3.2v5*) + sys_lib_search_path_spec="$sys_lib_search_path_spec /lib" + ;; + esac + fi + sys_lib_dlsearch_path_spec='/usr/lib' + ;; + +tpf*) + # TPF is a cross-target only. Preferred cross-host = GNU/Linux. + version_type=linux # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + ;; + +uts4*) + version_type=linux # correct to gnu/linux during the next big refactor + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + ;; + +*) + dynamic_linker=no + ;; +esac +AC_MSG_RESULT([$dynamic_linker]) +test "$dynamic_linker" = no && can_build_shared=no + +variables_saved_for_relink="PATH $shlibpath_var $runpath_var" +if test "$GCC" = yes; then + variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" +fi + +if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then + sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec" +fi +if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then + sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec" +fi + +_LT_DECL([], [variables_saved_for_relink], [1], + [Variables whose values should be saved in libtool wrapper scripts and + restored at link time]) +_LT_DECL([], [need_lib_prefix], [0], + [Do we need the "lib" prefix for modules?]) +_LT_DECL([], [need_version], [0], [Do we need a version for libraries?]) +_LT_DECL([], [version_type], [0], [Library versioning type]) +_LT_DECL([], [runpath_var], [0], [Shared library runtime path variable]) +_LT_DECL([], [shlibpath_var], [0],[Shared library path variable]) +_LT_DECL([], [shlibpath_overrides_runpath], [0], + [Is shlibpath searched before the hard-coded library search path?]) +_LT_DECL([], [libname_spec], [1], [Format of library name prefix]) +_LT_DECL([], [library_names_spec], [1], + [[List of archive names. First name is the real one, the rest are links. + The last name is the one that the linker finds with -lNAME]]) +_LT_DECL([], [soname_spec], [1], + [[The coded name of the library, if different from the real name]]) +_LT_DECL([], [install_override_mode], [1], + [Permission mode override for installation of shared libraries]) +_LT_DECL([], [postinstall_cmds], [2], + [Command to use after installation of a shared archive]) +_LT_DECL([], [postuninstall_cmds], [2], + [Command to use after uninstallation of a shared archive]) +_LT_DECL([], [finish_cmds], [2], + [Commands used to finish a libtool library installation in a directory]) +_LT_DECL([], [finish_eval], [1], + [[As "finish_cmds", except a single script fragment to be evaled but + not shown]]) +_LT_DECL([], [hardcode_into_libs], [0], + [Whether we should hardcode library paths into libraries]) +_LT_DECL([], [sys_lib_search_path_spec], [2], + [Compile-time system search path for libraries]) +_LT_DECL([], [sys_lib_dlsearch_path_spec], [2], + [Run-time system search path for libraries]) +])# _LT_SYS_DYNAMIC_LINKER + + +# _LT_PATH_TOOL_PREFIX(TOOL) +# -------------------------- +# find a file program which can recognize shared library +AC_DEFUN([_LT_PATH_TOOL_PREFIX], +[m4_require([_LT_DECL_EGREP])dnl +AC_MSG_CHECKING([for $1]) +AC_CACHE_VAL(lt_cv_path_MAGIC_CMD, +[case $MAGIC_CMD in +[[\\/*] | ?:[\\/]*]) + lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. + ;; +*) + lt_save_MAGIC_CMD="$MAGIC_CMD" + lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR +dnl $ac_dummy forces splitting on constant user-supplied paths. +dnl POSIX.2 word splitting is done only on the output of word expansions, +dnl not every word. This closes a longstanding sh security hole. + ac_dummy="m4_if([$2], , $PATH, [$2])" + for ac_dir in $ac_dummy; do + IFS="$lt_save_ifs" + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$1; then + lt_cv_path_MAGIC_CMD="$ac_dir/$1" + if test -n "$file_magic_test_file"; then + case $deplibs_check_method in + "file_magic "*) + file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` + MAGIC_CMD="$lt_cv_path_MAGIC_CMD" + if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | + $EGREP "$file_magic_regex" > /dev/null; then + : + else + cat <<_LT_EOF 1>&2 + +*** Warning: the command libtool uses to detect shared libraries, +*** $file_magic_cmd, produces output that libtool cannot recognize. +*** The result is that libtool may fail to recognize shared libraries +*** as such. This will affect the creation of libtool libraries that +*** depend on shared libraries, but programs linked with such libtool +*** libraries will work regardless of this problem. Nevertheless, you +*** may want to report the problem to your system manager and/or to +*** bug-libtool@gnu.org + +_LT_EOF + fi ;; + esac + fi + break + fi + done + IFS="$lt_save_ifs" + MAGIC_CMD="$lt_save_MAGIC_CMD" + ;; +esac]) +MAGIC_CMD="$lt_cv_path_MAGIC_CMD" +if test -n "$MAGIC_CMD"; then + AC_MSG_RESULT($MAGIC_CMD) +else + AC_MSG_RESULT(no) +fi +_LT_DECL([], [MAGIC_CMD], [0], + [Used to examine libraries when file_magic_cmd begins with "file"])dnl +])# _LT_PATH_TOOL_PREFIX + +# Old name: +AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], []) + + +# _LT_PATH_MAGIC +# -------------- +# find a file program which can recognize a shared library +m4_defun([_LT_PATH_MAGIC], +[_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH) +if test -z "$lt_cv_path_MAGIC_CMD"; then + if test -n "$ac_tool_prefix"; then + _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH) + else + MAGIC_CMD=: + fi +fi +])# _LT_PATH_MAGIC + + +# LT_PATH_LD +# ---------- +# find the pathname to the GNU or non-GNU linker +AC_DEFUN([LT_PATH_LD], +[AC_REQUIRE([AC_PROG_CC])dnl +AC_REQUIRE([AC_CANONICAL_HOST])dnl +AC_REQUIRE([AC_CANONICAL_BUILD])dnl +m4_require([_LT_DECL_SED])dnl +m4_require([_LT_DECL_EGREP])dnl +m4_require([_LT_PROG_ECHO_BACKSLASH])dnl + +AC_ARG_WITH([gnu-ld], + [AS_HELP_STRING([--with-gnu-ld], + [assume the C compiler uses GNU ld @<:@default=no@:>@])], + [test "$withval" = no || with_gnu_ld=yes], + [with_gnu_ld=no])dnl + +ac_prog=ld +if test "$GCC" = yes; then + # Check if gcc -print-prog-name=ld gives a path. + AC_MSG_CHECKING([for ld used by $CC]) + case $host in + *-*-mingw*) + # gcc leaves a trailing carriage return which upsets mingw + ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; + *) + ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; + esac + case $ac_prog in + # Accept absolute paths. + [[\\/]]* | ?:[[\\/]]*) + re_direlt='/[[^/]][[^/]]*/\.\./' + # Canonicalize the pathname of ld + ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'` + while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do + ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"` + done + test -z "$LD" && LD="$ac_prog" + ;; + "") + # If it fails, then pretend we aren't using GCC. + ac_prog=ld + ;; + *) + # If it is relative, then search for the first ld in PATH. + with_gnu_ld=unknown + ;; + esac +elif test "$with_gnu_ld" = yes; then + AC_MSG_CHECKING([for GNU ld]) +else + AC_MSG_CHECKING([for non-GNU ld]) +fi +AC_CACHE_VAL(lt_cv_path_LD, +[if test -z "$LD"; then + lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + for ac_dir in $PATH; do + IFS="$lt_save_ifs" + test -z "$ac_dir" && ac_dir=. + if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then + lt_cv_path_LD="$ac_dir/$ac_prog" + # Check to see if the program is GNU ld. I'd rather use --version, + # but apparently some variants of GNU ld only accept -v. + # Break only if it was the GNU/non-GNU ld that we prefer. + case `"$lt_cv_path_LD" -v 2>&1 &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 + # Keep this pattern in sync with the one in func_win32_libid. + lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' + lt_cv_file_magic_cmd='$OBJDUMP -f' + fi + ;; + +cegcc*) + # use the weaker test based on 'objdump'. See mingw*. + lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?' + lt_cv_file_magic_cmd='$OBJDUMP -f' + ;; + +darwin* | rhapsody*) + lt_cv_deplibs_check_method=pass_all + ;; + +freebsd* | dragonfly*) + if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then + case $host_cpu in + i*86 ) + # Not sure whether the presence of OpenBSD here was a mistake. + # Let's accept both of them until this is cleared up. + lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library' + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` + ;; + esac + else + lt_cv_deplibs_check_method=pass_all + fi + ;; + +gnu*) + lt_cv_deplibs_check_method=pass_all + ;; + +haiku*) + 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])(-bit)?( [LM]SB)? 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 glibc/ELF. +linux* | k*bsd*-gnu | kopensolaris*-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=pass_all + ;; + +openbsd*) + if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then + lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$' + else + lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' + fi + ;; + +osf3* | osf4* | osf5*) + lt_cv_deplibs_check_method=pass_all + ;; + +rdos*) + lt_cv_deplibs_check_method=pass_all + ;; + +solaris*) + lt_cv_deplibs_check_method=pass_all + ;; + +sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) + lt_cv_deplibs_check_method=pass_all + ;; + +sysv4 | sysv4.3*) + case $host_vendor in + motorola) + lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]' + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` + ;; + ncr) + lt_cv_deplibs_check_method=pass_all + ;; + sequent) + lt_cv_file_magic_cmd='/bin/file' + lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' + ;; + sni) + lt_cv_file_magic_cmd='/bin/file' + lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib" + lt_cv_file_magic_test_file=/lib/libc.so + ;; + siemens) + lt_cv_deplibs_check_method=pass_all + ;; + pc) + lt_cv_deplibs_check_method=pass_all + ;; + esac + ;; + +tpf*) + lt_cv_deplibs_check_method=pass_all + ;; +esac +]) + +file_magic_glob= +want_nocaseglob=no +if test "$build" = "$host"; then + case $host_os in + mingw* | pw32*) + if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then + want_nocaseglob=yes + else + file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[[\1]]\/[[\1]]\/g;/g"` + fi + ;; + esac +fi + +file_magic_cmd=$lt_cv_file_magic_cmd +deplibs_check_method=$lt_cv_deplibs_check_method +test -z "$deplibs_check_method" && deplibs_check_method=unknown + +_LT_DECL([], [deplibs_check_method], [1], + [Method to check whether dependent libraries are shared objects]) +_LT_DECL([], [file_magic_cmd], [1], + [Command to use when deplibs_check_method = "file_magic"]) +_LT_DECL([], [file_magic_glob], [1], + [How to find potential files when deplibs_check_method = "file_magic"]) +_LT_DECL([], [want_nocaseglob], [1], + [Find potential files using nocaseglob when deplibs_check_method = "file_magic"]) +])# _LT_CHECK_MAGIC_METHOD + + +# LT_PATH_NM +# ---------- +# find the pathname to a BSD- or MS-compatible name lister +AC_DEFUN([LT_PATH_NM], +[AC_REQUIRE([AC_PROG_CC])dnl +AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM, +[if test -n "$NM"; then + # Let the user override the test. + lt_cv_path_NM="$NM" +else + lt_nm_to_check="${ac_tool_prefix}nm" + if test -n "$ac_tool_prefix" && test "$build" = "$host"; then + lt_nm_to_check="$lt_nm_to_check nm" + fi + for lt_tmp_nm in $lt_nm_to_check; do + lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do + IFS="$lt_save_ifs" + test -z "$ac_dir" && ac_dir=. + tmp_nm="$ac_dir/$lt_tmp_nm" + if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then + # Check to see if the nm accepts a BSD-compat flag. + # Adding the `sed 1q' prevents false positives on HP-UX, which says: + # nm: unknown option "B" ignored + # Tru64's nm complains that /dev/null is an invalid object file + case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in + */dev/null* | *'Invalid file or object type'*) + lt_cv_path_NM="$tmp_nm -B" + break + ;; + *) + case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in + */dev/null*) + lt_cv_path_NM="$tmp_nm -p" + break + ;; + *) + lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but + continue # so that we can try to find one that supports BSD flags + ;; + esac + ;; + esac + fi + done + IFS="$lt_save_ifs" + done + : ${lt_cv_path_NM=no} +fi]) +if test "$lt_cv_path_NM" != "no"; then + NM="$lt_cv_path_NM" +else + # Didn't find any BSD compatible name lister, look for dumpbin. + if test -n "$DUMPBIN"; then : + # Let the user override the test. + else + AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :) + case `$DUMPBIN -symbols /dev/null 2>&1 | sed '1q'` in + *COFF*) + DUMPBIN="$DUMPBIN -symbols" + ;; + *) + DUMPBIN=: + ;; + esac + fi + AC_SUBST([DUMPBIN]) + if test "$DUMPBIN" != ":"; then + NM="$DUMPBIN" + fi +fi +test -z "$NM" && NM=nm +AC_SUBST([NM]) +_LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl + +AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface], + [lt_cv_nm_interface="BSD nm" + echo "int some_variable = 0;" > conftest.$ac_ext + (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&AS_MESSAGE_LOG_FD) + (eval "$ac_compile" 2>conftest.err) + cat conftest.err >&AS_MESSAGE_LOG_FD + (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD) + (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) + cat conftest.err >&AS_MESSAGE_LOG_FD + (eval echo "\"\$as_me:$LINENO: output\"" >&AS_MESSAGE_LOG_FD) + cat conftest.out >&AS_MESSAGE_LOG_FD + if $GREP 'External.*some_variable' conftest.out > /dev/null; then + lt_cv_nm_interface="MS dumpbin" + fi + rm -f conftest*]) +])# LT_PATH_NM + +# Old names: +AU_ALIAS([AM_PROG_NM], [LT_PATH_NM]) +AU_ALIAS([AC_PROG_NM], [LT_PATH_NM]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AM_PROG_NM], []) +dnl AC_DEFUN([AC_PROG_NM], []) + +# _LT_CHECK_SHAREDLIB_FROM_LINKLIB +# -------------------------------- +# how to determine the name of the shared library +# associated with a specific link library. +# -- PORTME fill in with the dynamic library characteristics +m4_defun([_LT_CHECK_SHAREDLIB_FROM_LINKLIB], +[m4_require([_LT_DECL_EGREP]) +m4_require([_LT_DECL_OBJDUMP]) +m4_require([_LT_DECL_DLLTOOL]) +AC_CACHE_CHECK([how to associate runtime and link libraries], +lt_cv_sharedlib_from_linklib_cmd, +[lt_cv_sharedlib_from_linklib_cmd='unknown' + +case $host_os in +cygwin* | mingw* | pw32* | cegcc*) + # two different shell functions defined in ltmain.sh + # decide which to use based on capabilities of $DLLTOOL + case `$DLLTOOL --help 2>&1` in + *--identify-strict*) + lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib + ;; + *) + lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback + ;; + esac + ;; +*) + # fallback: assume linklib IS sharedlib + lt_cv_sharedlib_from_linklib_cmd="$ECHO" + ;; +esac +]) +sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd +test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO + +_LT_DECL([], [sharedlib_from_linklib_cmd], [1], + [Command to associate shared and link libraries]) +])# _LT_CHECK_SHAREDLIB_FROM_LINKLIB + + +# _LT_PATH_MANIFEST_TOOL +# ---------------------- +# locate the manifest tool +m4_defun([_LT_PATH_MANIFEST_TOOL], +[AC_CHECK_TOOL(MANIFEST_TOOL, mt, :) +test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt +AC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_mainfest_tool], + [lt_cv_path_mainfest_tool=no + echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&AS_MESSAGE_LOG_FD + $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out + cat conftest.err >&AS_MESSAGE_LOG_FD + if $GREP 'Manifest Tool' conftest.out > /dev/null; then + lt_cv_path_mainfest_tool=yes + fi + rm -f conftest*]) +if test "x$lt_cv_path_mainfest_tool" != xyes; then + MANIFEST_TOOL=: +fi +_LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl +])# _LT_PATH_MANIFEST_TOOL + + +# LT_LIB_M +# -------- +# check for math library +AC_DEFUN([LT_LIB_M], +[AC_REQUIRE([AC_CANONICAL_HOST])dnl +LIBM= +case $host in +*-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*) + # These system don't have libm, or don't need it + ;; +*-ncr-sysv4.3*) + AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw") + AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm") + ;; +*) + AC_CHECK_LIB(m, cos, LIBM="-lm") + ;; +esac +AC_SUBST([LIBM]) +])# LT_LIB_M + +# Old name: +AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_CHECK_LIBM], []) + + +# _LT_COMPILER_NO_RTTI([TAGNAME]) +# ------------------------------- +m4_defun([_LT_COMPILER_NO_RTTI], +[m4_require([_LT_TAG_COMPILER])dnl + +_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= + +if test "$GCC" = yes; then + case $cc_basename in + nvcc*) + _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;; + *) + _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' ;; + esac + + _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions], + lt_cv_prog_compiler_rtti_exceptions, + [-fno-rtti -fno-exceptions], [], + [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"]) +fi +_LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1], + [Compiler flag to turn off builtin functions]) +])# _LT_COMPILER_NO_RTTI + + +# _LT_CMD_GLOBAL_SYMBOLS +# ---------------------- +m4_defun([_LT_CMD_GLOBAL_SYMBOLS], +[AC_REQUIRE([AC_CANONICAL_HOST])dnl +AC_REQUIRE([AC_PROG_CC])dnl +AC_REQUIRE([AC_PROG_AWK])dnl +AC_REQUIRE([LT_PATH_NM])dnl +AC_REQUIRE([LT_PATH_LD])dnl +m4_require([_LT_DECL_SED])dnl +m4_require([_LT_DECL_EGREP])dnl +m4_require([_LT_TAG_COMPILER])dnl + +# Check for command to grab the raw symbol name followed by C symbol from nm. +AC_MSG_CHECKING([command to parse $NM output from $compiler object]) +AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe], +[ +# These are sane defaults that work on at least a few old systems. +# [They come from Ultrix. What could be older than Ultrix?!! ;)] + +# Character class describing NM global symbol codes. +symcode='[[BCDEGRST]]' + +# Regexp to match symbols that can be accessed directly from C. +sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)' + +# Define system-specific variables. +case $host_os in +aix*) + symcode='[[BCDT]]' + ;; +cygwin* | mingw* | pw32* | cegcc*) + symcode='[[ABCDGISTW]]' + ;; +hpux*) + if test "$host_cpu" = ia64; then + symcode='[[ABCDEGRST]]' + fi + ;; +irix* | nonstopux*) + symcode='[[BCDEGRST]]' + ;; +osf*) + symcode='[[BCDEGQRST]]' + ;; +solaris*) + symcode='[[BDRT]]' + ;; +sco3.2v5*) + symcode='[[DT]]' + ;; +sysv4.2uw2*) + symcode='[[DT]]' + ;; +sysv5* | sco5v6* | unixware* | OpenUNIX*) + symcode='[[ABDT]]' + ;; +sysv4) + symcode='[[DFNSTU]]' + ;; +esac + +# If we're using GNU nm, then use its standard symbol codes. +case `$NM -V 2>&1` in +*GNU* | *'with BFD'*) + symcode='[[ABCDGIRSTW]]' ;; +esac + +# Transform an extracted symbol line into a proper C declaration. +# Some systems (esp. on ia64) link data and code symbols differently, +# so use this general approach. +lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" + +# Transform an extracted symbol line into symbol name and symbol address +lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\)[[ ]]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p'" +lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([[^ ]]*\)[[ ]]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \(lib[[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"lib\2\", (void *) \&\2},/p'" + +# Handle CRLF in mingw tool chain +opt_cr= +case $build_os in +mingw*) + opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp + ;; +esac + +# Try without a prefix underscore, then with it. +for ac_symprfx in "" "_"; do + + # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol. + symxfrm="\\1 $ac_symprfx\\2 \\2" + + # Write the raw and C identifiers. + if test "$lt_cv_nm_interface" = "MS dumpbin"; then + # Fake it for dumpbin and say T for any non-static function + # and D for any global variable. + # Also find C++ and __fastcall symbols from MSVC++, + # which start with @ or ?. + lt_cv_sys_global_symbol_pipe="$AWK ['"\ +" {last_section=section; section=\$ 3};"\ +" /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\ +" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\ +" \$ 0!~/External *\|/{next};"\ +" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\ +" {if(hide[section]) next};"\ +" {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\ +" {split(\$ 0, a, /\||\r/); split(a[2], s)};"\ +" s[1]~/^[@?]/{print s[1], s[1]; next};"\ +" s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\ +" ' prfx=^$ac_symprfx]" + else + lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" + fi + lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'" + + # Check to see that the pipe works correctly. + pipe_works=no + + rm -f conftest* + cat > conftest.$ac_ext <<_LT_EOF +#ifdef __cplusplus +extern "C" { +#endif +char nm_test_var; +void nm_test_func(void); +void nm_test_func(void){} +#ifdef __cplusplus +} +#endif +int main(){nm_test_var='a';nm_test_func();return(0);} +_LT_EOF + + if AC_TRY_EVAL(ac_compile); then + # Now try to grab the symbols. + nlist=conftest.nm + if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then + # Try sorting and uniquifying the output. + if sort "$nlist" | uniq > "$nlist"T; then + mv -f "$nlist"T "$nlist" + else + rm -f "$nlist"T + fi + + # Make sure that we snagged all the symbols we need. + if $GREP ' nm_test_var$' "$nlist" >/dev/null; then + if $GREP ' nm_test_func$' "$nlist" >/dev/null; then + cat <<_LT_EOF > conftest.$ac_ext +/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */ +#if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE) +/* DATA imports from DLLs on WIN32 con't be const, because runtime + relocations are performed -- see ld's documentation on pseudo-relocs. */ +# define LT@&t@_DLSYM_CONST +#elif defined(__osf__) +/* This system does not cope well with relocations in const data. */ +# define LT@&t@_DLSYM_CONST +#else +# define LT@&t@_DLSYM_CONST const +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +_LT_EOF + # Now generate the symbol file. + eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext' + + cat <<_LT_EOF >> conftest.$ac_ext + +/* The mapping between symbol names and symbols. */ +LT@&t@_DLSYM_CONST struct { + const char *name; + void *address; +} +lt__PROGRAM__LTX_preloaded_symbols[[]] = +{ + { "@PROGRAM@", (void *) 0 }, +_LT_EOF + $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext + cat <<\_LT_EOF >> conftest.$ac_ext + {0, (void *) 0} +}; + +/* This works around a problem in FreeBSD linker */ +#ifdef FREEBSD_WORKAROUND +static const void *lt_preloaded_setup() { + return lt__PROGRAM__LTX_preloaded_symbols; +} +#endif + +#ifdef __cplusplus +} +#endif +_LT_EOF + # Now try linking the two files. + mv conftest.$ac_objext conftstm.$ac_objext + lt_globsym_save_LIBS=$LIBS + lt_globsym_save_CFLAGS=$CFLAGS + LIBS="conftstm.$ac_objext" + CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)" + if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then + pipe_works=yes + fi + LIBS=$lt_globsym_save_LIBS + CFLAGS=$lt_globsym_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 + +# Response file support. +if test "$lt_cv_nm_interface" = "MS dumpbin"; then + nm_file_list_spec='@' +elif $NM --help 2>/dev/null | grep '[[@]]FILE' >/dev/null; then + nm_file_list_spec='@' +fi + +_LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1], + [Take the output of nm and produce a listing of raw symbols and C names]) +_LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1], + [Transform the output of nm in a proper C declaration]) +_LT_DECL([global_symbol_to_c_name_address], + [lt_cv_sys_global_symbol_to_c_name_address], [1], + [Transform the output of nm in a C name address pair]) +_LT_DECL([global_symbol_to_c_name_address_lib_prefix], + [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1], + [Transform the output of nm in a C name address pair when lib prefix is needed]) +_LT_DECL([], [nm_file_list_spec], [1], + [Specify filename containing input files for $NM]) +]) # _LT_CMD_GLOBAL_SYMBOLS + + +# _LT_COMPILER_PIC([TAGNAME]) +# --------------------------- +m4_defun([_LT_COMPILER_PIC], +[m4_require([_LT_TAG_COMPILER])dnl +_LT_TAGVAR(lt_prog_compiler_wl, $1)= +_LT_TAGVAR(lt_prog_compiler_pic, $1)= +_LT_TAGVAR(lt_prog_compiler_static, $1)= + +m4_if([$1], [CXX], [ + # C++ specific cases for pic, static, wl, etc. + if test "$GXX" = yes; then + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' + + case $host_os in + aix*) + # All AIX code is PIC. + if test "$host_cpu" = ia64; then + # AIX 5 now supports IA64 processor + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + fi + ;; + + amigaos*) + case $host_cpu in + powerpc) + # see comment about AmigaOS4 .so support + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + m68k) + # FIXME: we need at least 68020 code to build shared libraries, but + # adding the `-m68020' flag to GCC prevents building anything better, + # like `-m68040'. + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' + ;; + esac + ;; + + beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) + # PIC is the default for these OSes. + ;; + mingw* | cygwin* | os2* | pw32* | cegcc*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + # Although the cygwin gcc ignores -fPIC, still need this for old-style + # (--disable-auto-import) libraries + m4_if([$1], [GCJ], [], + [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) + ;; + darwin* | rhapsody*) + # PIC is the default on this platform + # Common symbols not allowed in MH_DYLIB files + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' + ;; + *djgpp*) + # DJGPP does not support shared libraries at all + _LT_TAGVAR(lt_prog_compiler_pic, $1)= + ;; + haiku*) + # PIC is the default for Haiku. + # The "-static" flag exists, but is broken. + _LT_TAGVAR(lt_prog_compiler_static, $1)= + ;; + interix[[3-9]]*) + # Interix 3.x gcc -fpic/-fPIC options generate broken code. + # Instead, we relocate shared libraries at runtime. + ;; + sysv4*MP*) + if test -d /usr/nec; then + _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic + fi + ;; + hpux*) + # PIC is the default for 64-bit PA HP-UX, but not for 32-bit + # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag + # sets the default TLS model and affects inlining. + case $host_cpu in + hppa*64*) + ;; + *) + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + esac + ;; + *qnx* | *nto*) + # QNX uses GNU C++, but need to define -shared option too, otherwise + # it will coredump. + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' + ;; + *) + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + esac + else + case $host_os in + aix[[4-9]]*) + # All AIX code is PIC. + if test "$host_cpu" = ia64; then + # AIX 5 now supports IA64 processor + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + else + _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' + fi + ;; + chorus*) + case $cc_basename in + cxch68*) + # Green Hills C++ Compiler + # _LT_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a" + ;; + esac + ;; + mingw* | cygwin* | os2* | pw32* | cegcc*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + m4_if([$1], [GCJ], [], + [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) + ;; + dgux*) + case $cc_basename in + ec++*) + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + ;; + ghcx*) + # Green Hills C++ Compiler + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' + ;; + *) + ;; + esac + ;; + freebsd* | dragonfly*) + # FreeBSD uses GNU C++ + ;; + hpux9* | hpux10* | hpux11*) + case $cc_basename in + CC*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' + if test "$host_cpu" != ia64; then + _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' + fi + ;; + aCC*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' + case $host_cpu in + hppa*64*|ia64*) + # +Z the default + ;; + *) + _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' + ;; + esac + ;; + *) + ;; + esac + ;; + interix*) + # This is c89, which is MS Visual C++ (no shared libs) + # Anyone wants to do a port? + ;; + irix5* | irix6* | nonstopux*) + case $cc_basename in + CC*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + # CC pic flag -KPIC is the default. + ;; + *) + ;; + esac + ;; + linux* | k*bsd*-gnu | kopensolaris*-gnu) + case $cc_basename in + KCC*) + # KAI C++ Compiler + _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + ecpc* ) + # old Intel C++ for x86_64 which still supported -KPIC. + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' + ;; + icpc* ) + # Intel C++, used to be incompatible with GCC. + # ICC 10 doesn't accept -KPIC any more. + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' + ;; + pgCC* | pgcpp*) + # Portland Group C++ compiler + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + cxx*) + # Compaq C++ + # Make sure the PIC flag is empty. It appears that all Alpha + # Linux and Compaq Tru64 Unix objects are PIC. + _LT_TAGVAR(lt_prog_compiler_pic, $1)= + _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + xlc* | xlC* | bgxl[[cC]]* | mpixl[[cC]]*) + # IBM XL 8.0, 9.0 on PPC and BlueGene + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink' + ;; + *) + case `$CC -V 2>&1 | sed 5q` in + *Sun\ C*) + # Sun C++ 5.9 + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' + ;; + esac + ;; + esac + ;; + lynxos*) + ;; + m88k*) + ;; + mvs*) + case $cc_basename in + cxx*) + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall' + ;; + *) + ;; + esac + ;; + netbsd*) + ;; + *qnx* | *nto*) + # QNX uses GNU C++, but need to define -shared option too, otherwise + # it will coredump. + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' + ;; + osf3* | osf4* | osf5*) + case $cc_basename in + KCC*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' + ;; + RCC*) + # Rational C++ 2.4.1 + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' + ;; + cxx*) + # Digital/Compaq C++ + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + # Make sure the PIC flag is empty. It appears that all Alpha + # Linux and Compaq Tru64 Unix objects are PIC. + _LT_TAGVAR(lt_prog_compiler_pic, $1)= + _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + *) + ;; + esac + ;; + psos*) + ;; + solaris*) + case $cc_basename in + CC* | sunCC*) + # Sun C++ 4.2, 5.x and Centerline C++ + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' + ;; + gcx*) + # Green Hills C++ Compiler + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' + ;; + *) + ;; + esac + ;; + sunos4*) + case $cc_basename in + CC*) + # Sun C++ 4.x + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + lcc*) + # Lucid + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' + ;; + *) + ;; + esac + ;; + sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) + case $cc_basename in + CC*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + esac + ;; + tandem*) + case $cc_basename in + NCC*) + # NonStop-UX NCC 3.20 + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + ;; + *) + ;; + esac + ;; + vxworks*) + ;; + *) + _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no + ;; + esac + fi +], +[ + if test "$GCC" = yes; then + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' + + case $host_os in + aix*) + # All AIX code is PIC. + if test "$host_cpu" = ia64; then + # AIX 5 now supports IA64 processor + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + fi + ;; + + amigaos*) + case $host_cpu in + powerpc) + # see comment about AmigaOS4 .so support + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + m68k) + # FIXME: we need at least 68020 code to build shared libraries, but + # adding the `-m68020' flag to GCC prevents building anything better, + # like `-m68040'. + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' + ;; + esac + ;; + + beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) + # PIC is the default for these OSes. + ;; + + mingw* | cygwin* | pw32* | os2* | cegcc*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + # Although the cygwin gcc ignores -fPIC, still need this for old-style + # (--disable-auto-import) libraries + m4_if([$1], [GCJ], [], + [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) + ;; + + darwin* | rhapsody*) + # PIC is the default on this platform + # Common symbols not allowed in MH_DYLIB files + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' + ;; + + haiku*) + # PIC is the default for Haiku. + # The "-static" flag exists, but is broken. + _LT_TAGVAR(lt_prog_compiler_static, $1)= + ;; + + hpux*) + # PIC is the default for 64-bit PA HP-UX, but not for 32-bit + # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag + # sets the default TLS model and affects inlining. + case $host_cpu in + hppa*64*) + # +Z the default + ;; + *) + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + esac + ;; + + interix[[3-9]]*) + # Interix 3.x gcc -fpic/-fPIC options generate broken code. + # Instead, we relocate shared libraries at runtime. + ;; + + msdosdjgpp*) + # Just because we use GCC doesn't mean we suddenly get shared libraries + # on systems that don't support them. + _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no + enable_shared=no + ;; + + *nto* | *qnx*) + # QNX uses GNU C++, but need to define -shared option too, otherwise + # it will coredump. + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' + ;; + + sysv4*MP*) + if test -d /usr/nec; then + _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic + fi + ;; + + *) + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + esac + + case $cc_basename in + nvcc*) # Cuda Compiler Driver 2.2 + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker ' + if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then + _LT_TAGVAR(lt_prog_compiler_pic, $1)="-Xcompiler $_LT_TAGVAR(lt_prog_compiler_pic, $1)" + fi + ;; + esac + else + # PORTME Check for flag to pass linker flags through the system compiler. + case $host_os in + aix*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + if test "$host_cpu" = ia64; then + # AIX 5 now supports IA64 processor + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + else + _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' + fi + ;; + + mingw* | cygwin* | pw32* | os2* | cegcc*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + m4_if([$1], [GCJ], [], + [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) + ;; + + hpux9* | hpux10* | hpux11*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but + # not for PA HP-UX. + case $host_cpu in + hppa*64*|ia64*) + # +Z the default + ;; + *) + _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' + ;; + esac + # Is there a better lt_prog_compiler_static that works with the bundled CC? + _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' + ;; + + irix5* | irix6* | nonstopux*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + # PIC (with -KPIC) is the default. + _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + + linux* | k*bsd*-gnu | kopensolaris*-gnu) + case $cc_basename in + # old Intel for x86_64 which still supported -KPIC. + ecc*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' + ;; + # icc used to be incompatible with GCC. + # ICC 10 doesn't accept -KPIC any more. + icc* | ifort*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' + ;; + # Lahey Fortran 8.1. + lf95*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared' + _LT_TAGVAR(lt_prog_compiler_static, $1)='--static' + ;; + nagfor*) + # NAG Fortran compiler + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*) + # Portland Group compilers (*not* the Pentium gcc compiler, + # which looks to be a dead project) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + ccc*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + # All Alpha code is PIC. + _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + xl* | bgxl* | bgf* | mpixl*) + # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink' + ;; + *) + case `$CC -V 2>&1 | sed 5q` in + *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*) + # Sun Fortran 8.3 passes all unrecognized flags to the linker + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + _LT_TAGVAR(lt_prog_compiler_wl, $1)='' + ;; + *Sun\ F* | *Sun*Fortran*) + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' + ;; + *Sun\ C*) + # Sun C 5.9 + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + ;; + *Intel*\ [[CF]]*Compiler*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' + ;; + *Portland\ Group*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + esac + ;; + esac + ;; + + newsos6) + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + + *nto* | *qnx*) + # QNX uses GNU C++, but need to define -shared option too, otherwise + # it will coredump. + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' + ;; + + osf3* | osf4* | osf5*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + # All OSF/1 code is PIC. + _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + + rdos*) + _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + + solaris*) + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + case $cc_basename in + f77* | f90* | f95* | sunf77* | sunf90* | sunf95*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';; + *) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';; + esac + ;; + + sunos4*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + + sysv4 | sysv4.2uw2* | sysv4.3*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + + sysv4*MP*) + if test -d /usr/nec ;then + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + fi + ;; + + sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + + unicos*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no + ;; + + uts4*) + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + + *) + _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no + ;; + esac + fi +]) +case $host_os in + # For platforms which do not support PIC, -DPIC is meaningless: + *djgpp*) + _LT_TAGVAR(lt_prog_compiler_pic, $1)= + ;; + *) + _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])" + ;; +esac + +AC_CACHE_CHECK([for $compiler option to produce PIC], + [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)], + [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_prog_compiler_pic, $1)]) +_LT_TAGVAR(lt_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_cv_prog_compiler_pic, $1) + +# +# Check to make sure the PIC flag actually works. +# +if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then + _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works], + [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)], + [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [], + [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in + "" | " "*) ;; + *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;; + esac], + [_LT_TAGVAR(lt_prog_compiler_pic, $1)= + _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no]) +fi +_LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1], + [Additional compiler flags for building library objects]) + +_LT_TAGDECL([wl], [lt_prog_compiler_wl], [1], + [How to pass a linker flag through the compiler]) +# +# Check to make sure the static flag actually works. +# +wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\" +_LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works], + _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1), + $lt_tmp_static_flag, + [], + [_LT_TAGVAR(lt_prog_compiler_static, $1)=]) +_LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1], + [Compiler flag to prevent dynamic linking]) +])# _LT_COMPILER_PIC + + +# _LT_LINKER_SHLIBS([TAGNAME]) +# ---------------------------- +# See if the linker supports building shared libraries. +m4_defun([_LT_LINKER_SHLIBS], +[AC_REQUIRE([LT_PATH_LD])dnl +AC_REQUIRE([LT_PATH_NM])dnl +m4_require([_LT_PATH_MANIFEST_TOOL])dnl +m4_require([_LT_FILEUTILS_DEFAULTS])dnl +m4_require([_LT_DECL_EGREP])dnl +m4_require([_LT_DECL_SED])dnl +m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl +m4_require([_LT_TAG_COMPILER])dnl +AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) +m4_if([$1], [CXX], [ + _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' + _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'] + 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 + # Also, AIX nm treats weak defined symbols like other global defined + # symbols, whereas GNU nm marks them as "W". + if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then + _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' + else + _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' + fi + ;; + pw32*) + _LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds" + ;; + cygwin* | mingw* | cegcc*) + case $cc_basename in + cl*) + _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*' + ;; + *) + _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols' + _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'] + ;; + esac + ;; + *) + _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' + ;; + esac +], [ + runpath_var= + _LT_TAGVAR(allow_undefined_flag, $1)= + _LT_TAGVAR(always_export_symbols, $1)=no + _LT_TAGVAR(archive_cmds, $1)= + _LT_TAGVAR(archive_expsym_cmds, $1)= + _LT_TAGVAR(compiler_needs_object, $1)=no + _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no + _LT_TAGVAR(export_dynamic_flag_spec, $1)= + _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' + _LT_TAGVAR(hardcode_automatic, $1)=no + _LT_TAGVAR(hardcode_direct, $1)=no + _LT_TAGVAR(hardcode_direct_absolute, $1)=no + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= + _LT_TAGVAR(hardcode_libdir_separator, $1)= + _LT_TAGVAR(hardcode_minus_L, $1)=no + _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported + _LT_TAGVAR(inherit_rpath, $1)=no + _LT_TAGVAR(link_all_deplibs, $1)=unknown + _LT_TAGVAR(module_cmds, $1)= + _LT_TAGVAR(module_expsym_cmds, $1)= + _LT_TAGVAR(old_archive_from_new_cmds, $1)= + _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)= + _LT_TAGVAR(thread_safe_flag_spec, $1)= + _LT_TAGVAR(whole_archive_flag_spec, $1)= + # include_expsyms should be a list of space-separated symbols to be *always* + # included in the symbol list + _LT_TAGVAR(include_expsyms, $1)= + # exclude_expsyms can be an extended regexp of symbols to exclude + # it will be wrapped by ` (' and `)$', so one must not match beginning or + # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc', + # as well as any symbol that contains `d'. + _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'] + # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out + # platforms (ab)use it in PIC code, but their linkers get confused if + # the symbol is explicitly referenced. Since portable code cannot + # rely on this symbol name, it's probably fine to never include it in + # preloaded symbol tables. + # Exclude shared library initialization/finalization symbols. +dnl Note also adjust exclude_expsyms for C++ above. + extract_expsyms_cmds= + + case $host_os in + cygwin* | mingw* | pw32* | cegcc*) + # FIXME: the MSVC++ port hasn't been tested in a loooong time + # When not using gcc, we currently assume that we are using + # Microsoft Visual C++. + if test "$GCC" != yes; then + with_gnu_ld=no + fi + ;; + interix*) + # we just hope/assume this is gcc and not c89 (= MSVC++) + with_gnu_ld=yes + ;; + openbsd*) + with_gnu_ld=no + ;; + esac + + _LT_TAGVAR(ld_shlibs, $1)=yes + + # On some targets, GNU ld is compatible enough with the native linker + # that we're better off using the native interface for both. + lt_use_gnu_ld_interface=no + if test "$with_gnu_ld" = yes; then + case $host_os in + aix*) + # The AIX port of GNU ld has always aspired to compatibility + # with the native linker. However, as the warning in the GNU ld + # block says, versions before 2.19.5* couldn't really create working + # shared libraries, regardless of the interface used. + case `$LD -v 2>&1` in + *\ \(GNU\ Binutils\)\ 2.19.5*) ;; + *\ \(GNU\ Binutils\)\ 2.[[2-9]]*) ;; + *\ \(GNU\ Binutils\)\ [[3-9]]*) ;; + *) + lt_use_gnu_ld_interface=yes + ;; + esac + ;; + *) + lt_use_gnu_ld_interface=yes + ;; + esac + fi + + if test "$lt_use_gnu_ld_interface" = yes; then + # If archive_cmds runs LD, not CC, wlarc should be empty + wlarc='${wl}' + + # Set some defaults for GNU ld with shared library support. These + # are reset later if shared libraries are not supported. Putting them + # here allows them to be overridden if necessary. + runpath_var=LD_RUN_PATH + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' + # ancient GNU ld didn't support --whole-archive et. al. + if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then + _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + else + _LT_TAGVAR(whole_archive_flag_spec, $1)= + fi + supports_anon_versioning=no + case `$LD -v 2>&1` in + *GNU\ gold*) supports_anon_versioning=yes ;; + *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11 + *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... + *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ... + *\ 2.11.*) ;; # other 2.11 versions + *) supports_anon_versioning=yes ;; + esac + + # See if GNU ld supports shared libraries. + case $host_os in + aix[[3-9]]*) + # On AIX/PPC, the GNU linker is very broken + if test "$host_cpu" != ia64; then + _LT_TAGVAR(ld_shlibs, $1)=no + cat <<_LT_EOF 1>&2 + +*** Warning: the GNU linker, at least up to release 2.19, 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 install binutils +*** 2.20 or above, or modify your PATH so that a non-GNU linker is found. +*** You will then need to restart the configuration process. + +_LT_EOF + fi + ;; + + amigaos*) + case $host_cpu in + powerpc) + # see comment about AmigaOS4 .so support + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='' + ;; + m68k) + _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_TAGVAR(hardcode_minus_L, $1)=yes + ;; + esac + ;; + + beos*) + if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then + _LT_TAGVAR(allow_undefined_flag, $1)=unsupported + # Joseph Beckenbach says some releases of gcc + # support --undefined. This deserves some investigation. FIXME + _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + else + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + cygwin* | mingw* | pw32* | cegcc*) + # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, + # as there is no search path for DLLs. + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols' + _LT_TAGVAR(allow_undefined_flag, $1)=unsupported + _LT_TAGVAR(always_export_symbols, $1)=no + _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes + _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols' + _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'] + + if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + # If the export-symbols file already is a .def file (1st line + # is EXPORTS), use it as is; otherwise, prepend... + _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then + cp $export_symbols $output_objdir/$soname.def; + else + echo EXPORTS > $output_objdir/$soname.def; + cat $export_symbols >> $output_objdir/$soname.def; + fi~ + $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + else + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + haiku*) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_TAGVAR(link_all_deplibs, $1)=yes + ;; + + interix[[3-9]]*) + _LT_TAGVAR(hardcode_direct, $1)=no + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. + # Instead, shared libraries are loaded at an image base (0x10000000 by + # default) and relocated if they conflict, which is a slow very memory + # consuming and fragmenting process. To avoid this, we pick a random, + # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link + # time. Moving up from 0x10000000 also allows more sbrk(2) space. + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + ;; + + gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu) + tmp_diet=no + if test "$host_os" = linux-dietlibc; then + case $cc_basename in + diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn) + esac + fi + if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \ + && test "$tmp_diet" = no + then + tmp_addflag=' $pic_flag' + tmp_sharedflag='-shared' + case $cc_basename,$host_cpu in + pgcc*) # Portland Group C compiler + _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' + tmp_addflag=' $pic_flag' + ;; + pgf77* | pgf90* | pgf95* | pgfortran*) + # Portland Group f77 and f90 compilers + _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' + tmp_addflag=' $pic_flag -Mnomain' ;; + ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64 + tmp_addflag=' -i_dynamic' ;; + efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64 + tmp_addflag=' -i_dynamic -nofor_main' ;; + ifc* | ifort*) # Intel Fortran compiler + tmp_addflag=' -nofor_main' ;; + lf95*) # Lahey Fortran 8.1 + _LT_TAGVAR(whole_archive_flag_spec, $1)= + tmp_sharedflag='--shared' ;; + xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below) + tmp_sharedflag='-qmkshrobj' + tmp_addflag= ;; + nvcc*) # Cuda Compiler Driver 2.2 + _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' + _LT_TAGVAR(compiler_needs_object, $1)=yes + ;; + esac + case `$CC -V 2>&1 | sed 5q` in + *Sun\ C*) # Sun C 5.9 + _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' + _LT_TAGVAR(compiler_needs_object, $1)=yes + tmp_sharedflag='-G' ;; + *Sun\ F*) # Sun Fortran 8.3 + tmp_sharedflag='-G' ;; + esac + _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + + if test "x$supports_anon_versioning" = xyes; then + _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ + cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ + echo "local: *; };" >> $output_objdir/$libname.ver~ + $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' + fi + + case $cc_basename in + xlf* | bgf* | bgxlf* | mpixlf*) + # IBM XL Fortran 10.1 on PPC cannot create shared libs itself + _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib' + if test "x$supports_anon_versioning" = xyes; then + _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ + cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ + echo "local: *; };" >> $output_objdir/$libname.ver~ + $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' + fi + ;; + esac + else + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + netbsd*) + if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then + _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' + wlarc= + else + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + fi + ;; + + solaris*) + if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then + _LT_TAGVAR(ld_shlibs, $1)=no + cat <<_LT_EOF 1>&2 + +*** Warning: The releases 2.8.* of the GNU linker cannot reliably +*** create shared libraries on Solaris systems. Therefore, libtool +*** is disabling shared libraries support. We urge you to upgrade GNU +*** binutils to release 2.9.1 or newer. Another option is to modify +*** your PATH or compiler configuration so that the native linker is +*** used, and then restart. + +_LT_EOF + elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + else + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*) + case `$LD -v 2>&1` in + *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*) + _LT_TAGVAR(ld_shlibs, $1)=no + cat <<_LT_EOF 1>&2 + +*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not +*** reliably create shared libraries on SCO systems. Therefore, libtool +*** is disabling shared libraries support. We urge you to upgrade GNU +*** binutils to release 2.16.91.0.3 or newer. Another option is to modify +*** your PATH or compiler configuration so that the native linker is +*** used, and then restart. + +_LT_EOF + ;; + *) + # For security reasons, it is highly recommended that you always + # use absolute paths for naming shared libraries, and exclude the + # DT_RUNPATH tag from executables and libraries. But doing so + # requires that you compile everything twice, which is a pain. + if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + else + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + ;; + + sunos4*) + _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' + wlarc= + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + *) + if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + else + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + + if test "$_LT_TAGVAR(ld_shlibs, $1)" = no; then + runpath_var= + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= + _LT_TAGVAR(export_dynamic_flag_spec, $1)= + _LT_TAGVAR(whole_archive_flag_spec, $1)= + fi + else + # PORTME fill in a description of your system's linker (not GNU ld) + case $host_os in + aix3*) + _LT_TAGVAR(allow_undefined_flag, $1)=unsupported + _LT_TAGVAR(always_export_symbols, $1)=yes + _LT_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' + # Note: this linker hardcodes the directories in LIBPATH if there + # are no directories specified by -L. + _LT_TAGVAR(hardcode_minus_L, $1)=yes + if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then + # Neither direct hardcoding nor static linking is supported with a + # broken collect2. + _LT_TAGVAR(hardcode_direct, $1)=unsupported + fi + ;; + + aix[[4-9]]*) + if test "$host_cpu" = ia64; then + # On IA64, the linker does run time linking by default, so we don't + # have to do anything special. + aix_use_runtimelinking=no + exp_sym_flag='-Bexport' + no_entry_flag="" + else + # If we're using GNU nm, then we don't want the "-C" option. + # -C means demangle to AIX nm, but means don't demangle with GNU nm + # Also, AIX nm treats weak defined symbols like other global + # defined symbols, whereas GNU nm marks them as "W". + if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then + _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' + else + _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' + fi + aix_use_runtimelinking=no + + # Test if we are trying to use run time linking or normal + # AIX style linking. If -brtl is somewhere in LDFLAGS, we + # need to do runtime linking. + case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*) + for ld_flag in $LDFLAGS; do + if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then + aix_use_runtimelinking=yes + break + fi + done + ;; + esac + + exp_sym_flag='-bexport' + no_entry_flag='-bnoentry' + fi + + # When large executables or shared objects are built, AIX ld can + # have problems creating the table of contents. If linking a library + # or program results in "error TOC overflow" add -mminimal-toc to + # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not + # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. + + _LT_TAGVAR(archive_cmds, $1)='' + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_direct_absolute, $1)=yes + _LT_TAGVAR(hardcode_libdir_separator, $1)=':' + _LT_TAGVAR(link_all_deplibs, $1)=yes + _LT_TAGVAR(file_list_spec, $1)='${wl}-f,' + + if test "$GCC" = yes; then + case $host_os in aix4.[[012]]|aix4.[[012]].*) + # We only want to do this on AIX 4.2 and lower, the check + # below for broken collect2 doesn't work under 4.3+ + collect2name=`${CC} -print-prog-name=collect2` + if test -f "$collect2name" && + strings "$collect2name" | $GREP resolve_lib_name >/dev/null + then + # We have reworked collect2 + : + else + # We have old collect2 + _LT_TAGVAR(hardcode_direct, $1)=unsupported + # It fails to find uninstalled libraries when the uninstalled + # path is not listed in the libpath. Setting hardcode_minus_L + # to unsupported forces relinking + _LT_TAGVAR(hardcode_minus_L, $1)=yes + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)= + fi + ;; + esac + shared_flag='-shared' + if test "$aix_use_runtimelinking" = yes; then + shared_flag="$shared_flag "'${wl}-G' + fi + else + # not using gcc + if test "$host_cpu" = ia64; then + # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release + # chokes on -Wl,-G. The following line is correct: + shared_flag='-G' + else + if test "$aix_use_runtimelinking" = yes; then + shared_flag='${wl}-G' + else + shared_flag='${wl}-bM:SRE' + fi + fi + fi + + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall' + # It seems that -bexpall does not export symbols beginning with + # underscore (_), so it is better to generate a list of symbols to export. + _LT_TAGVAR(always_export_symbols, $1)=yes + if test "$aix_use_runtimelinking" = yes; then + # Warning - without using the other runtime loading flags (-brtl), + # -berok will link without error, but may produce a broken library. + _LT_TAGVAR(allow_undefined_flag, $1)='-berok' + # Determine the default libpath from the value encoded in an + # empty executable. + _LT_SYS_MODULE_PATH_AIX([$1]) + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" + else + if test "$host_cpu" = ia64; then + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib' + _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs" + _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols" + else + # Determine the default libpath from the value encoded in an + # empty executable. + _LT_SYS_MODULE_PATH_AIX([$1]) + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" + # Warning - without using the other run time loading flags, + # -berok will link without error, but may produce a broken library. + _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok' + _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok' + if test "$with_gnu_ld" = yes; then + # We only use this code for GNU lds that support --whole-archive. + _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive' + else + # Exported symbols can be pulled into shared objects from archives + _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience' + fi + _LT_TAGVAR(archive_cmds_need_lc, $1)=yes + # This is similar to how AIX traditionally builds its shared libraries. + _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' + fi + fi + ;; + + amigaos*) + case $host_cpu in + powerpc) + # see comment about AmigaOS4 .so support + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='' + ;; + m68k) + _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_TAGVAR(hardcode_minus_L, $1)=yes + ;; + esac + ;; + + bsdi[[45]]*) + _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic + ;; + + cygwin* | mingw* | pw32* | cegcc*) + # When not using gcc, we currently assume that we are using + # Microsoft Visual C++. + # hardcode_libdir_flag_spec is actually meaningless, as there is + # no search path for DLLs. + case $cc_basename in + cl*) + # Native MSVC + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' + _LT_TAGVAR(allow_undefined_flag, $1)=unsupported + _LT_TAGVAR(always_export_symbols, $1)=yes + _LT_TAGVAR(file_list_spec, $1)='@' + # Tell ltmain to make .lib files, not .a files. + libext=lib + # Tell ltmain to make .dll files, not .so files. + shrext_cmds=".dll" + # FIXME: Setting linknames here is a bad hack. + _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames=' + _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then + sed -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp; + else + sed -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp; + fi~ + $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ + linknames=' + # The linker will not automatically build a static lib if we build a DLL. + # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true' + _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes + _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*' + _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1,DATA/'\'' | $SED -e '\''/^[[AITW]][[ ]]/s/.*[[ ]]//'\'' | sort | uniq > $export_symbols' + # Don't use ranlib + _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib' + _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~ + lt_tool_outputfile="@TOOL_OUTPUT@"~ + case $lt_outputfile in + *.exe|*.EXE) ;; + *) + lt_outputfile="$lt_outputfile.exe" + lt_tool_outputfile="$lt_tool_outputfile.exe" + ;; + esac~ + if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then + $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; + $RM "$lt_outputfile.manifest"; + fi' + ;; + *) + # Assume MSVC wrapper + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' + _LT_TAGVAR(allow_undefined_flag, $1)=unsupported + # Tell ltmain to make .lib files, not .a files. + libext=lib + # Tell ltmain to make .dll files, not .so files. + shrext_cmds=".dll" + # FIXME: Setting linknames here is a bad hack. + _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames=' + # The linker will automatically build a .lib file if we build a DLL. + _LT_TAGVAR(old_archive_from_new_cmds, $1)='true' + # FIXME: Should let the user specify the lib program. + _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs' + _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes + ;; + esac + ;; + + darwin* | rhapsody*) + _LT_DARWIN_LINKER_FEATURES($1) + ;; + + dgux*) + _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor + # support. Future versions do this automatically, but an explicit c++rt0.o + # does not break anything, and helps significantly (at the cost of a little + # extra space). + freebsd2.2*) + _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + # Unfortunately, older versions of FreeBSD 2 do not have this feature. + freebsd2.*) + _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_minus_L, $1)=yes + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + # FreeBSD 3 and greater uses gcc -shared to do shared libraries. + freebsd* | dragonfly*) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + hpux9*) + if test "$GCC" = yes; then + _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + else + _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + fi + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + _LT_TAGVAR(hardcode_direct, $1)=yes + + # hardcode_minus_L: Not really in the search PATH, + # but as the default location of the library. + _LT_TAGVAR(hardcode_minus_L, $1)=yes + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + ;; + + hpux10*) + if test "$GCC" = yes && test "$with_gnu_ld" = no; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' + else + _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' + fi + if test "$with_gnu_ld" = no; then + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_direct_absolute, $1)=yes + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + # hardcode_minus_L: Not really in the search PATH, + # but as the default location of the library. + _LT_TAGVAR(hardcode_minus_L, $1)=yes + fi + ;; + + hpux11*) + if test "$GCC" = yes && test "$with_gnu_ld" = no; then + case $host_cpu in + hppa*64*) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + ia64*) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' + ;; + *) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' + ;; + esac + else + case $host_cpu in + hppa*64*) + _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + ia64*) + _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' + ;; + *) + m4_if($1, [], [ + # Older versions of the 11.00 compiler do not understand -b yet + # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does) + _LT_LINKER_OPTION([if $CC understands -b], + _LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b], + [_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'], + [_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])], + [_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags']) + ;; + esac + fi + if test "$with_gnu_ld" = no; then + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + + case $host_cpu in + hppa*64*|ia64*) + _LT_TAGVAR(hardcode_direct, $1)=no + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + *) + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_direct_absolute, $1)=yes + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + + # hardcode_minus_L: Not really in the search PATH, + # but as the default location of the library. + _LT_TAGVAR(hardcode_minus_L, $1)=yes + ;; + esac + fi + ;; + + irix5* | irix6* | nonstopux*) + if test "$GCC" = yes; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + # Try to use the -exported_symbol ld option, if it does not + # work, assume that -exports_file does not work either and + # implicitly export all symbols. + # This should be the same for all languages, so no per-tag cache variable. + AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol], + [lt_cv_irix_exported_symbol], + [save_LDFLAGS="$LDFLAGS" + LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null" + AC_LINK_IFELSE( + [AC_LANG_SOURCE( + [AC_LANG_CASE([C], [[int foo (void) { return 0; }]], + [C++], [[int foo (void) { return 0; }]], + [Fortran 77], [[ + subroutine foo + end]], + [Fortran], [[ + subroutine foo + end]])])], + [lt_cv_irix_exported_symbol=yes], + [lt_cv_irix_exported_symbol=no]) + LDFLAGS="$save_LDFLAGS"]) + if test "$lt_cv_irix_exported_symbol" = yes; then + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib' + fi + else + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib' + fi + _LT_TAGVAR(archive_cmds_need_lc, $1)='no' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + _LT_TAGVAR(inherit_rpath, $1)=yes + _LT_TAGVAR(link_all_deplibs, $1)=yes + ;; + + netbsd*) + if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then + _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out + else + _LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF + fi + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + newsos6) + _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + *nto* | *qnx*) + ;; + + openbsd*) + if test -f /usr/libexec/ld.so; then + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_TAGVAR(hardcode_direct_absolute, $1)=yes + if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + else + case $host_os in + openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*) + _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + ;; + *) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + ;; + esac + fi + else + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + os2*) + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_TAGVAR(hardcode_minus_L, $1)=yes + _LT_TAGVAR(allow_undefined_flag, $1)=unsupported + _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~echo DATA >> $output_objdir/$libname.def~echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' + _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' + ;; + + osf3*) + if test "$GCC" = yes; then + _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + else + _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' + fi + _LT_TAGVAR(archive_cmds_need_lc, $1)='no' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + ;; + + osf4* | osf5*) # as osf3* with the addition of -msym flag + if test "$GCC" = yes; then + _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $pic_flag $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + else + _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~ + $CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp' + + # Both c and cxx compiler support -rpath directly + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' + fi + _LT_TAGVAR(archive_cmds_need_lc, $1)='no' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + ;; + + solaris*) + _LT_TAGVAR(no_undefined_flag, $1)=' -z defs' + if test "$GCC" = yes; then + wlarc='${wl}' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ + $CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' + else + case `$CC -V 2>&1` in + *"Compilers 5.0"*) + wlarc='' + _LT_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ + $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp' + ;; + *) + wlarc='${wl}' + _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ + $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' + ;; + esac + fi + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + case $host_os in + solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; + *) + # The compiler driver will combine and reorder linker options, + # but understands `-z linker_flag'. GCC discards it without `$wl', + # but is careful enough not to reorder. + # Supported since Solaris 2.6 (maybe 2.5.1?) + if test "$GCC" = yes; then + _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' + else + _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' + fi + ;; + esac + _LT_TAGVAR(link_all_deplibs, $1)=yes + ;; + + sunos4*) + if test "x$host_vendor" = xsequent; then + # Use $CC to link under sequent, because it throws in some extra .o + # files that make .init and .fini sections work. + _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags' + else + _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' + fi + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_minus_L, $1)=yes + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + sysv4) + case $host_vendor in + sni) + _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true??? + ;; + siemens) + ## LD is ld it makes a PLAMLIB + ## CC just makes a GrossModule. + _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags' + _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs' + _LT_TAGVAR(hardcode_direct, $1)=no + ;; + motorola) + _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie + ;; + esac + runpath_var='LD_RUN_PATH' + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + sysv4.3*) + _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport' + ;; + + sysv4*MP*) + if test -d /usr/nec; then + _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + runpath_var=LD_RUN_PATH + hardcode_runpath_var=yes + _LT_TAGVAR(ld_shlibs, $1)=yes + fi + ;; + + sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*) + _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' + _LT_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + runpath_var='LD_RUN_PATH' + + if test "$GCC" = yes; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + else + _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + fi + ;; + + sysv5* | sco3.2v5* | sco5v6*) + # Note: We can NOT use -z defs as we might desire, because we do not + # link with -lc, and that would cause any symbols used from libc to + # always be unresolved, which means just about no library would + # ever link correctly. If we're not using GNU ld we use -z text + # though, which does catch some bad symbols but isn't as heavy-handed + # as -z defs. + _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' + _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs' + _LT_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=':' + _LT_TAGVAR(link_all_deplibs, $1)=yes + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport' + runpath_var='LD_RUN_PATH' + + if test "$GCC" = yes; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + else + _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + fi + ;; + + uts4*) + _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + *) + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + esac + + if test x$host_vendor = xsni; then + case $host in + sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Blargedynsym' + ;; + esac + fi + fi +]) +AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)]) +test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no + +_LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld + +_LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl +_LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl +_LT_DECL([], [extract_expsyms_cmds], [2], + [The commands to extract the exported symbol list from a shared archive]) + +# +# Do we need to explicitly link libc? +# +case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in +x|xyes) + # Assume -lc should be added + _LT_TAGVAR(archive_cmds_need_lc, $1)=yes + + if test "$enable_shared" = yes && test "$GCC" = yes; then + case $_LT_TAGVAR(archive_cmds, $1) in + *'~'*) + # FIXME: we may have to deal with multi-command sequences. + ;; + '$CC '*) + # Test whether the compiler implicitly links with -lc since on some + # systems, -lgcc has to come before -lc. If gcc already passes -lc + # to ld, don't add -lc before -lgcc. + AC_CACHE_CHECK([whether -lc should be explicitly linked in], + [lt_cv_]_LT_TAGVAR(archive_cmds_need_lc, $1), + [$RM conftest* + echo "$lt_simple_compile_test_code" > conftest.$ac_ext + + if AC_TRY_EVAL(ac_compile) 2>conftest.err; then + soname=conftest + lib=conftest + libobjs=conftest.$ac_objext + deplibs= + wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) + pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1) + compiler_flags=-v + linker_flags=-v + verstring= + output_objdir=. + libname=conftest + lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1) + _LT_TAGVAR(allow_undefined_flag, $1)= + if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) + then + lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=no + else + lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=yes + fi + _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag + else + cat conftest.err 1>&5 + fi + $RM conftest* + ]) + _LT_TAGVAR(archive_cmds_need_lc, $1)=$lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1) + ;; + esac + fi + ;; +esac + +_LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0], + [Whether or not to add -lc for building shared libraries]) +_LT_TAGDECL([allow_libtool_libs_with_static_runtimes], + [enable_shared_with_static_runtimes], [0], + [Whether or not to disallow shared libs when runtime libs are static]) +_LT_TAGDECL([], [export_dynamic_flag_spec], [1], + [Compiler flag to allow reflexive dlopens]) +_LT_TAGDECL([], [whole_archive_flag_spec], [1], + [Compiler flag to generate shared objects directly from archives]) +_LT_TAGDECL([], [compiler_needs_object], [1], + [Whether the compiler copes with passing no objects directly]) +_LT_TAGDECL([], [old_archive_from_new_cmds], [2], + [Create an old-style archive from a shared archive]) +_LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2], + [Create a temporary old-style archive to link instead of a shared archive]) +_LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive]) +_LT_TAGDECL([], [archive_expsym_cmds], [2]) +_LT_TAGDECL([], [module_cmds], [2], + [Commands used to build a loadable module if different from building + a shared archive.]) +_LT_TAGDECL([], [module_expsym_cmds], [2]) +_LT_TAGDECL([], [with_gnu_ld], [1], + [Whether we are building with GNU ld or not]) +_LT_TAGDECL([], [allow_undefined_flag], [1], + [Flag that allows shared libraries with undefined symbols to be built]) +_LT_TAGDECL([], [no_undefined_flag], [1], + [Flag that enforces no undefined symbols]) +_LT_TAGDECL([], [hardcode_libdir_flag_spec], [1], + [Flag to hardcode $libdir into a binary during linking. + This must work even if $libdir does not exist]) +_LT_TAGDECL([], [hardcode_libdir_separator], [1], + [Whether we need a single "-rpath" flag with a separated argument]) +_LT_TAGDECL([], [hardcode_direct], [0], + [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes + DIR into the resulting binary]) +_LT_TAGDECL([], [hardcode_direct_absolute], [0], + [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes + DIR into the resulting binary and the resulting library dependency is + "absolute", i.e impossible to change by setting ${shlibpath_var} if the + library is relocated]) +_LT_TAGDECL([], [hardcode_minus_L], [0], + [Set to "yes" if using the -LDIR flag during linking hardcodes DIR + into the resulting binary]) +_LT_TAGDECL([], [hardcode_shlibpath_var], [0], + [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR + into the resulting binary]) +_LT_TAGDECL([], [hardcode_automatic], [0], + [Set to "yes" if building a shared library automatically hardcodes DIR + into the library and all subsequent libraries and executables linked + against it]) +_LT_TAGDECL([], [inherit_rpath], [0], + [Set to yes if linker adds runtime paths of dependent libraries + to runtime path list]) +_LT_TAGDECL([], [link_all_deplibs], [0], + [Whether libtool must link a program against all its dependency libraries]) +_LT_TAGDECL([], [always_export_symbols], [0], + [Set to "yes" if exported symbols are required]) +_LT_TAGDECL([], [export_symbols_cmds], [2], + [The commands to list exported symbols]) +_LT_TAGDECL([], [exclude_expsyms], [1], + [Symbols that should not be listed in the preloaded symbols]) +_LT_TAGDECL([], [include_expsyms], [1], + [Symbols that must always be exported]) +_LT_TAGDECL([], [prelink_cmds], [2], + [Commands necessary for linking programs (against libraries) with templates]) +_LT_TAGDECL([], [postlink_cmds], [2], + [Commands necessary for finishing linking programs]) +_LT_TAGDECL([], [file_list_spec], [1], + [Specify filename containing input files]) +dnl FIXME: Not yet implemented +dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1], +dnl [Compiler flag to generate thread safe objects]) +])# _LT_LINKER_SHLIBS + + +# _LT_LANG_C_CONFIG([TAG]) +# ------------------------ +# Ensure that the configuration variables for a C compiler are suitably +# defined. These variables are subsequently used by _LT_CONFIG to write +# the compiler configuration to `libtool'. +m4_defun([_LT_LANG_C_CONFIG], +[m4_require([_LT_DECL_EGREP])dnl +lt_save_CC="$CC" +AC_LANG_PUSH(C) + +# Source file extension for C test sources. +ac_ext=c + +# Object file extension for compiled C test sources. +objext=o +_LT_TAGVAR(objext, $1)=$objext + +# Code to be used in simple compile tests +lt_simple_compile_test_code="int some_variable = 0;" + +# Code to be used in simple link tests +lt_simple_link_test_code='int main(){return(0);}' + +_LT_TAG_COMPILER +# Save the default compiler, since it gets overwritten when the other +# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP. +compiler_DEFAULT=$CC + +# save warnings/boilerplate of simple test code +_LT_COMPILER_BOILERPLATE +_LT_LINKER_BOILERPLATE + +if test -n "$compiler"; then + _LT_COMPILER_NO_RTTI($1) + _LT_COMPILER_PIC($1) + _LT_COMPILER_C_O($1) + _LT_COMPILER_FILE_LOCKS($1) + _LT_LINKER_SHLIBS($1) + _LT_SYS_DYNAMIC_LINKER($1) + _LT_LINKER_HARDCODE_LIBPATH($1) + LT_SYS_DLOPEN_SELF + _LT_CMD_STRIPLIB + + # Report which library types will actually be built + AC_MSG_CHECKING([if libtool supports shared libraries]) + AC_MSG_RESULT([$can_build_shared]) + + AC_MSG_CHECKING([whether to build shared libraries]) + test "$can_build_shared" = "no" && enable_shared=no + + # On AIX, shared libraries and static libraries use the same namespace, and + # are all built from PIC. + case $host_os in + aix3*) + test "$enable_shared" = yes && enable_static=no + if test -n "$RANLIB"; then + archive_cmds="$archive_cmds~\$RANLIB \$lib" + postinstall_cmds='$RANLIB $lib' + fi + ;; + + aix[[4-9]]*) + if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then + test "$enable_shared" = yes && enable_static=no + fi + ;; + esac + AC_MSG_RESULT([$enable_shared]) + + AC_MSG_CHECKING([whether to build static libraries]) + # Make sure either enable_shared or enable_static is yes. + test "$enable_shared" = yes || enable_static=yes + AC_MSG_RESULT([$enable_static]) + + _LT_CONFIG($1) +fi +AC_LANG_POP +CC="$lt_save_CC" +])# _LT_LANG_C_CONFIG + + +# _LT_LANG_CXX_CONFIG([TAG]) +# -------------------------- +# Ensure that the configuration variables for a C++ compiler are suitably +# defined. These variables are subsequently used by _LT_CONFIG to write +# the compiler configuration to `libtool'. +m4_defun([_LT_LANG_CXX_CONFIG], +[m4_require([_LT_FILEUTILS_DEFAULTS])dnl +m4_require([_LT_DECL_EGREP])dnl +m4_require([_LT_PATH_MANIFEST_TOOL])dnl +if test -n "$CXX" && ( test "X$CXX" != "Xno" && + ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) || + (test "X$CXX" != "Xg++"))) ; then + AC_PROG_CXXCPP +else + _lt_caught_CXX_error=yes +fi + +AC_LANG_PUSH(C++) +_LT_TAGVAR(archive_cmds_need_lc, $1)=no +_LT_TAGVAR(allow_undefined_flag, $1)= +_LT_TAGVAR(always_export_symbols, $1)=no +_LT_TAGVAR(archive_expsym_cmds, $1)= +_LT_TAGVAR(compiler_needs_object, $1)=no +_LT_TAGVAR(export_dynamic_flag_spec, $1)= +_LT_TAGVAR(hardcode_direct, $1)=no +_LT_TAGVAR(hardcode_direct_absolute, $1)=no +_LT_TAGVAR(hardcode_libdir_flag_spec, $1)= +_LT_TAGVAR(hardcode_libdir_separator, $1)= +_LT_TAGVAR(hardcode_minus_L, $1)=no +_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported +_LT_TAGVAR(hardcode_automatic, $1)=no +_LT_TAGVAR(inherit_rpath, $1)=no +_LT_TAGVAR(module_cmds, $1)= +_LT_TAGVAR(module_expsym_cmds, $1)= +_LT_TAGVAR(link_all_deplibs, $1)=unknown +_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds +_LT_TAGVAR(reload_flag, $1)=$reload_flag +_LT_TAGVAR(reload_cmds, $1)=$reload_cmds +_LT_TAGVAR(no_undefined_flag, $1)= +_LT_TAGVAR(whole_archive_flag_spec, $1)= +_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no + +# Source file extension for C++ test sources. +ac_ext=cpp + +# Object file extension for compiled C++ test sources. +objext=o +_LT_TAGVAR(objext, $1)=$objext + +# No sense in running all these tests if we already determined that +# the CXX compiler isn't working. Some variables (like enable_shared) +# are currently assumed to apply to all compilers on this platform, +# and will be corrupted by setting them based on a non-working compiler. +if test "$_lt_caught_CXX_error" != yes; then + # Code to be used in simple compile tests + lt_simple_compile_test_code="int some_variable = 0;" + + # Code to be used in simple link tests + lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }' + + # ltmain only uses $CC for tagged configurations so make sure $CC is set. + _LT_TAG_COMPILER + + # save warnings/boilerplate of simple test code + _LT_COMPILER_BOILERPLATE + _LT_LINKER_BOILERPLATE + + # Allow CC to be a program name with arguments. + lt_save_CC=$CC + lt_save_CFLAGS=$CFLAGS + 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++"} + CFLAGS=$CXXFLAGS + compiler=$CC + _LT_TAGVAR(compiler, $1)=$CC + _LT_CC_BASENAME([$compiler]) + + if test -n "$compiler"; then + # We don't want -fno-exception when compiling C++ code, so set the + # no_builtin_flag separately + if test "$GXX" = yes; then + _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' + else + _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= + fi + + if test "$GXX" = yes; then + # Set up default GNU C++ configuration + + LT_PATH_LD + + # Check if GNU C++ uses GNU ld as the underlying linker, since the + # archiving commands below assume that GNU ld is being used. + if test "$with_gnu_ld" = yes; then + _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' + + # If archive_cmds runs LD, not CC, wlarc should be empty + # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to + # investigate it a little bit more. (MM) + wlarc='${wl}' + + # ancient GNU ld didn't support --whole-archive et. al. + if eval "`$CC -print-prog-name=ld` --help 2>&1" | + $GREP 'no-whole-archive' > /dev/null; then + _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + else + _LT_TAGVAR(whole_archive_flag_spec, $1)= + fi + else + with_gnu_ld=no + wlarc= + + # A generic and very simple default shared library creation + # command for GNU C++ for the case where it uses the native + # linker, instead of GNU ld. If possible, this setting should + # overridden to take advantage of the native linker features on + # the platform it is being used on. + _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' + fi + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' + + else + GXX=no + with_gnu_ld=no + wlarc= + fi + + # PORTME: fill in a description of your system's C++ link characteristics + AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) + _LT_TAGVAR(ld_shlibs, $1)=yes + case $host_os in + aix3*) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + aix[[4-9]]*) + if test "$host_cpu" = ia64; then + # On IA64, the linker does run time linking by default, so we don't + # have to do anything special. + aix_use_runtimelinking=no + exp_sym_flag='-Bexport' + no_entry_flag="" + else + aix_use_runtimelinking=no + + # Test if we are trying to use run time linking or normal + # AIX style linking. If -brtl is somewhere in LDFLAGS, we + # need to do runtime linking. + case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*) + for ld_flag in $LDFLAGS; do + case $ld_flag in + *-brtl*) + aix_use_runtimelinking=yes + break + ;; + esac + done + ;; + esac + + exp_sym_flag='-bexport' + no_entry_flag='-bnoentry' + fi + + # When large executables or shared objects are built, AIX ld can + # have problems creating the table of contents. If linking a library + # or program results in "error TOC overflow" add -mminimal-toc to + # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not + # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. + + _LT_TAGVAR(archive_cmds, $1)='' + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_direct_absolute, $1)=yes + _LT_TAGVAR(hardcode_libdir_separator, $1)=':' + _LT_TAGVAR(link_all_deplibs, $1)=yes + _LT_TAGVAR(file_list_spec, $1)='${wl}-f,' + + if test "$GXX" = yes; then + case $host_os in aix4.[[012]]|aix4.[[012]].*) + # We only want to do this on AIX 4.2 and lower, the check + # below for broken collect2 doesn't work under 4.3+ + collect2name=`${CC} -print-prog-name=collect2` + if test -f "$collect2name" && + strings "$collect2name" | $GREP resolve_lib_name >/dev/null + then + # We have reworked collect2 + : + else + # We have old collect2 + _LT_TAGVAR(hardcode_direct, $1)=unsupported + # It fails to find uninstalled libraries when the uninstalled + # path is not listed in the libpath. Setting hardcode_minus_L + # to unsupported forces relinking + _LT_TAGVAR(hardcode_minus_L, $1)=yes + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)= + fi + esac + shared_flag='-shared' + if test "$aix_use_runtimelinking" = yes; then + shared_flag="$shared_flag "'${wl}-G' + fi + else + # not using gcc + if test "$host_cpu" = ia64; then + # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release + # chokes on -Wl,-G. The following line is correct: + shared_flag='-G' + else + if test "$aix_use_runtimelinking" = yes; then + shared_flag='${wl}-G' + else + shared_flag='${wl}-bM:SRE' + fi + fi + fi + + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall' + # It seems that -bexpall does not export symbols beginning with + # underscore (_), so it is better to generate a list of symbols to + # export. + _LT_TAGVAR(always_export_symbols, $1)=yes + if test "$aix_use_runtimelinking" = yes; then + # Warning - without using the other runtime loading flags (-brtl), + # -berok will link without error, but may produce a broken library. + _LT_TAGVAR(allow_undefined_flag, $1)='-berok' + # Determine the default libpath from the value encoded in an empty + # executable. + _LT_SYS_MODULE_PATH_AIX([$1]) + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" + + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" + else + if test "$host_cpu" = ia64; then + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib' + _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs" + _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols" + else + # Determine the default libpath from the value encoded in an + # empty executable. + _LT_SYS_MODULE_PATH_AIX([$1]) + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" + # Warning - without using the other run time loading flags, + # -berok will link without error, but may produce a broken library. + _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok' + _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok' + if test "$with_gnu_ld" = yes; then + # We only use this code for GNU lds that support --whole-archive. + _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive' + else + # Exported symbols can be pulled into shared objects from archives + _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience' + fi + _LT_TAGVAR(archive_cmds_need_lc, $1)=yes + # This is similar to how AIX traditionally builds its shared + # libraries. + _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' + fi + fi + ;; + + beos*) + if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then + _LT_TAGVAR(allow_undefined_flag, $1)=unsupported + # Joseph Beckenbach says some releases of gcc + # support --undefined. This deserves some investigation. FIXME + _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + else + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + chorus*) + case $cc_basename in + *) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + esac + ;; + + cygwin* | mingw* | pw32* | cegcc*) + case $GXX,$cc_basename in + ,cl* | no,cl*) + # Native MSVC + # hardcode_libdir_flag_spec is actually meaningless, as there is + # no search path for DLLs. + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' + _LT_TAGVAR(allow_undefined_flag, $1)=unsupported + _LT_TAGVAR(always_export_symbols, $1)=yes + _LT_TAGVAR(file_list_spec, $1)='@' + # Tell ltmain to make .lib files, not .a files. + libext=lib + # Tell ltmain to make .dll files, not .so files. + shrext_cmds=".dll" + # FIXME: Setting linknames here is a bad hack. + _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames=' + _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then + $SED -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp; + else + $SED -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp; + fi~ + $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ + linknames=' + # The linker will not automatically build a static lib if we build a DLL. + # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true' + _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes + # Don't use ranlib + _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib' + _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~ + lt_tool_outputfile="@TOOL_OUTPUT@"~ + case $lt_outputfile in + *.exe|*.EXE) ;; + *) + lt_outputfile="$lt_outputfile.exe" + lt_tool_outputfile="$lt_tool_outputfile.exe" + ;; + esac~ + func_to_tool_file "$lt_outputfile"~ + if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then + $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; + $RM "$lt_outputfile.manifest"; + fi' + ;; + *) + # g++ + # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, + # as there is no search path for DLLs. + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols' + _LT_TAGVAR(allow_undefined_flag, $1)=unsupported + _LT_TAGVAR(always_export_symbols, $1)=no + _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes + + if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + # If the export-symbols file already is a .def file (1st line + # is EXPORTS), use it as is; otherwise, prepend... + _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then + cp $export_symbols $output_objdir/$soname.def; + else + echo EXPORTS > $output_objdir/$soname.def; + cat $export_symbols >> $output_objdir/$soname.def; + fi~ + $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + else + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + ;; + darwin* | rhapsody*) + _LT_DARWIN_LINKER_FEATURES($1) + ;; + + dgux*) + case $cc_basename in + ec++*) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + ghcx*) + # Green Hills C++ Compiler + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + *) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + esac + ;; + + freebsd2.*) + # C++ shared libraries reported to be fairly broken before + # switch to ELF + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + + freebsd-elf*) + _LT_TAGVAR(archive_cmds_need_lc, $1)=no + ;; + + freebsd* | dragonfly*) + # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF + # conventions + _LT_TAGVAR(ld_shlibs, $1)=yes + ;; + + gnu*) + ;; + + haiku*) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_TAGVAR(link_all_deplibs, $1)=yes + ;; + + hpux9*) + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, + # but as the default + # location of the library. + + case $cc_basename in + CC*) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + aCC*) + _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' + ;; + *) + if test "$GXX" = yes; then + _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + else + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + ;; + + hpux10*|hpux11*) + if test $with_gnu_ld = no; then + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + + case $host_cpu in + hppa*64*|ia64*) + ;; + *) + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + ;; + esac + fi + case $host_cpu in + hppa*64*|ia64*) + _LT_TAGVAR(hardcode_direct, $1)=no + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + *) + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_direct_absolute, $1)=yes + _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, + # but as the default + # location of the library. + ;; + esac + + case $cc_basename in + CC*) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + aCC*) + case $host_cpu in + hppa*64*) + _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + ia64*) + _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + *) + _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + esac + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' + ;; + *) + if test "$GXX" = yes; then + if test $with_gnu_ld = no; then + case $host_cpu in + hppa*64*) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + ia64*) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + *) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + esac + fi + else + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + ;; + + interix[[3-9]]*) + _LT_TAGVAR(hardcode_direct, $1)=no + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. + # Instead, shared libraries are loaded at an image base (0x10000000 by + # default) and relocated if they conflict, which is a slow very memory + # consuming and fragmenting process. To avoid this, we pick a random, + # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link + # time. Moving up from 0x10000000 also allows more sbrk(2) space. + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + ;; + irix5* | irix6*) + case $cc_basename in + CC*) + # SGI C++ + _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-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_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs' + ;; + *) + if test "$GXX" = yes; then + if test "$with_gnu_ld" = no; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + else + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` -o $lib' + fi + fi + _LT_TAGVAR(link_all_deplibs, $1)=yes + ;; + esac + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + _LT_TAGVAR(inherit_rpath, $1)=yes + ;; + + linux* | k*bsd*-gnu | kopensolaris*-gnu) + case $cc_basename in + KCC*) + # Kuck and Associates, Inc. (KAI) C++ Compiler + + # KCC will only create a shared library if the output file + # ends with ".so" (or ".sl" for HP-UX), so rename the library + # to its proper name (with version) after linking. + _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib' + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' + + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' + + # Archives containing C++ object files must be created using + # "CC -Bstatic", where "CC" is the KAI C++ compiler. + _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' + ;; + icpc* | ecpc* ) + # Intel C++ + with_gnu_ld=yes + # version 8.0 and above of icpc choke on multiply defined symbols + # if we add $predep_objects and $postdep_objects, however 7.1 and + # earlier do not add the objects themselves. + case `$CC -V 2>&1` in + *"Version 7."*) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + ;; + *) # Version 8.0 or newer + tmp_idyn= + case $host_cpu in + ia64*) tmp_idyn=' -i_dynamic';; + esac + _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + ;; + esac + _LT_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' + _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive' + ;; + pgCC* | pgcpp*) + # Portland Group C++ compiler + case `$CC -V` in + *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*) + _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~ + rm -rf $tpldir~ + $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~ + compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"' + _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~ + rm -rf $tpldir~ + $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~ + $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~ + $RANLIB $oldlib' + _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~ + rm -rf $tpldir~ + $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ + $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~ + rm -rf $tpldir~ + $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ + $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib' + ;; + *) # Version 6 and above use weak symbols + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib' + ;; + esac + + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' + _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' + ;; + cxx*) + # Compaq C++ + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib ${wl}-retain-symbols-file $wl$export_symbols' + + runpath_var=LD_RUN_PATH + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`func_echo_all "$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; func_echo_all "X$list" | $Xsed' + ;; + xl* | mpixl* | bgxl*) + # IBM XL 8.0 on PPC, with GNU ld + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' + _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + if test "x$supports_anon_versioning" = xyes; then + _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ + cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ + echo "local: *; };" >> $output_objdir/$libname.ver~ + $CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' + fi + ;; + *) + case `$CC -V 2>&1 | sed 5q` in + *Sun\ C*) + # Sun C++ 5.9 + _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs' + _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file ${wl}$export_symbols' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' + _LT_TAGVAR(compiler_needs_object, $1)=yes + + # Not sure whether something based on + # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 + # would be better. + output_verbose_link_cmd='func_echo_all' + + # Archives containing C++ object files must be created using + # "CC -xar", where "CC" is the Sun C++ compiler. This is + # necessary to make sure instantiated templates are included + # in the archive. + _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs' + ;; + esac + ;; + esac + ;; + + lynxos*) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + + m88k*) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + + mvs*) + case $cc_basename in + cxx*) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + *) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + esac + ;; + + netbsd*) + if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then + _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags' + wlarc= + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + fi + # Workaround some broken pre-1.5 toolchains + output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"' + ;; + + *nto* | *qnx*) + _LT_TAGVAR(ld_shlibs, $1)=yes + ;; + + openbsd2*) + # C++ shared libraries are fairly broken + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + + openbsd*) + if test -f /usr/libexec/ld.so; then + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_TAGVAR(hardcode_direct_absolute, $1)=yes + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + fi + output_verbose_link_cmd=func_echo_all + else + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + osf3* | osf4* | osf5*) + case $cc_basename in + KCC*) + # Kuck and Associates, Inc. (KAI) C++ Compiler + + # KCC will only create a shared library if the output file + # ends with ".so" (or ".sl" for HP-UX), so rename the library + # to its proper name (with version) after linking. + _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' + + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + + # Archives containing C++ object files must be created using + # the KAI C++ compiler. + case $host in + osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;; + *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;; + esac + ;; + RCC*) + # Rational C++ 2.4.1 + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + cxx*) + case $host in + osf3*) + _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && func_echo_all "${wl}-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + ;; + *) + _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~ + echo "-hidden">> $lib.exp~ + $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname ${wl}-input ${wl}$lib.exp `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~ + $RM $lib.exp' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' + ;; + esac + + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`func_echo_all "$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; func_echo_all "$list"' + ;; + *) + if test "$GXX" = yes && test "$with_gnu_ld" = no; then + _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' + case $host in + osf3*) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + ;; + *) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + ;; + esac + + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' + + else + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + ;; + + psos*) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + + sunos4*) + case $cc_basename in + CC*) + # Sun C++ 4.x + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + lcc*) + # Lucid + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + *) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + esac + ;; + + solaris*) + case $cc_basename in + CC* | sunCC*) + # Sun C++ 4.2, 5.x and Centerline C++ + _LT_TAGVAR(archive_cmds_need_lc,$1)=yes + _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs' + _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ + $CC -G${allow_undefined_flag} ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' + + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + case $host_os in + solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; + *) + # The compiler driver will combine and reorder linker options, + # but understands `-z linker_flag'. + # Supported since Solaris 2.6 (maybe 2.5.1?) + _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' + ;; + esac + _LT_TAGVAR(link_all_deplibs, $1)=yes + + output_verbose_link_cmd='func_echo_all' + + # Archives containing C++ object files must be created using + # "CC -xar", where "CC" is the Sun C++ compiler. This is + # necessary to make sure instantiated templates are included + # in the archive. + _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs' + ;; + gcx*) + # Green Hills C++ Compiler + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' + + # The C++ compiler must be used to create the archive. + _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs' + ;; + *) + # GNU C++ compiler with Solaris linker + if test "$GXX" = yes && test "$with_gnu_ld" = no; then + _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs' + if $CC --version | $GREP -v '^2\.7' > /dev/null; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ + $CC -shared $pic_flag -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 -v "^Configured with:" | $GREP "\-L"' + else + # g++ 2.7 appears to require `-G' NOT `-shared' on this + # platform. + _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ + $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' + fi + + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir' + case $host_os in + solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; + *) + _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' + ;; + esac + fi + ;; + esac + ;; + + sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*) + _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' + _LT_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + runpath_var='LD_RUN_PATH' + + case $cc_basename in + CC*) + _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + *) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + esac + ;; + + sysv5* | sco3.2v5* | sco5v6*) + # Note: We can NOT use -z defs as we might desire, because we do not + # link with -lc, and that would cause any symbols used from libc to + # always be unresolved, which means just about no library would + # ever link correctly. If we're not using GNU ld we use -z text + # though, which does catch some bad symbols but isn't as heavy-handed + # as -z defs. + _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' + _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs' + _LT_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=':' + _LT_TAGVAR(link_all_deplibs, $1)=yes + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport' + runpath_var='LD_RUN_PATH' + + case $cc_basename in + CC*) + _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~ + '"$_LT_TAGVAR(old_archive_cmds, $1)" + _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~ + '"$_LT_TAGVAR(reload_cmds, $1)" + ;; + *) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + esac + ;; + + tandem*) + case $cc_basename in + NCC*) + # NonStop-UX NCC 3.20 + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + *) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + esac + ;; + + vxworks*) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + + *) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + esac + + AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)]) + test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no + + _LT_TAGVAR(GCC, $1)="$GXX" + _LT_TAGVAR(LD, $1)="$LD" + + ## CAVEAT EMPTOR: + ## There is no encapsulation within the following macros, do not change + ## the running order or otherwise move them around unless you know exactly + ## what you are doing... + _LT_SYS_HIDDEN_LIBDEPS($1) + _LT_COMPILER_PIC($1) + _LT_COMPILER_C_O($1) + _LT_COMPILER_FILE_LOCKS($1) + _LT_LINKER_SHLIBS($1) + _LT_SYS_DYNAMIC_LINKER($1) + _LT_LINKER_HARDCODE_LIBPATH($1) + + _LT_CONFIG($1) + fi # test -n "$compiler" + + CC=$lt_save_CC + CFLAGS=$lt_save_CFLAGS + LDCXX=$LD + LD=$lt_save_LD + GCC=$lt_save_GCC + with_gnu_ld=$lt_save_with_gnu_ld + lt_cv_path_LDCXX=$lt_cv_path_LD + lt_cv_path_LD=$lt_save_path_LD + lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld + lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld +fi # test "$_lt_caught_CXX_error" != yes + +AC_LANG_POP +])# _LT_LANG_CXX_CONFIG + + +# _LT_FUNC_STRIPNAME_CNF +# ---------------------- +# func_stripname_cnf prefix suffix name +# strip PREFIX and SUFFIX off of NAME. +# PREFIX and SUFFIX must not contain globbing or regex special +# characters, hashes, percent signs, but SUFFIX may contain a leading +# dot (in which case that matches only a dot). +# +# This function is identical to the (non-XSI) version of func_stripname, +# except this one can be used by m4 code that may be executed by configure, +# rather than the libtool script. +m4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl +AC_REQUIRE([_LT_DECL_SED]) +AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH]) +func_stripname_cnf () +{ + case ${2} in + .*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;; + *) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%%"`;; + esac +} # func_stripname_cnf +])# _LT_FUNC_STRIPNAME_CNF + +# _LT_SYS_HIDDEN_LIBDEPS([TAGNAME]) +# --------------------------------- +# Figure out "hidden" library dependencies from verbose +# compiler output when linking a shared library. +# Parse the compiler output and extract the necessary +# objects, libraries and library flags. +m4_defun([_LT_SYS_HIDDEN_LIBDEPS], +[m4_require([_LT_FILEUTILS_DEFAULTS])dnl +AC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl +# Dependencies to place before and after the object being linked: +_LT_TAGVAR(predep_objects, $1)= +_LT_TAGVAR(postdep_objects, $1)= +_LT_TAGVAR(predeps, $1)= +_LT_TAGVAR(postdeps, $1)= +_LT_TAGVAR(compiler_lib_search_path, $1)= + +dnl we can't use the lt_simple_compile_test_code here, +dnl because it contains code intended for an executable, +dnl not a library. It's possible we should let each +dnl tag define a new lt_????_link_test_code variable, +dnl but it's only used here... +m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF +int a; +void foo (void) { a = 0; } +_LT_EOF +], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF +class Foo +{ +public: + Foo (void) { a = 0; } +private: + int a; +}; +_LT_EOF +], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF + subroutine foo + implicit none + integer*4 a + a=0 + return + end +_LT_EOF +], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF + subroutine foo + implicit none + integer a + a=0 + return + end +_LT_EOF +], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF +public class foo { + private int a; + public void bar (void) { + a = 0; + } +}; +_LT_EOF +], [$1], [GO], [cat > conftest.$ac_ext <<_LT_EOF +package foo +func foo() { +} +_LT_EOF +]) + +_lt_libdeps_save_CFLAGS=$CFLAGS +case "$CC $CFLAGS " in #( +*\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;; +*\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;; +*\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;; +esac + +dnl Parse the compiler output and extract the necessary +dnl objects, libraries and library flags. +if AC_TRY_EVAL(ac_compile); then + # Parse the compiler output and extract the necessary + # objects, libraries and library flags. + + # Sentinel used to keep track of whether or not we are before + # the conftest object file. + pre_test_object_deps_done=no + + for p in `eval "$output_verbose_link_cmd"`; do + case ${prev}${p} in + + -L* | -R* | -l*) + # Some compilers place space between "-{L,R}" and the path. + # Remove the space. + if test $p = "-L" || + test $p = "-R"; then + prev=$p + continue + fi + + # Expand the sysroot to ease extracting the directories later. + if test -z "$prev"; then + case $p in + -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;; + -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;; + -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;; + esac + fi + case $p in + =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;; + esac + if test "$pre_test_object_deps_done" = no; then + case ${prev} in + -L | -R) + # Internal compiler library paths should come after those + # provided the user. The postdeps already come after the + # user supplied libs so there is no need to process them. + if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then + _LT_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}" + else + _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}" + fi + ;; + # The "-l" case would never come before the object being + # linked, so don't bother handling this case. + esac + else + if test -z "$_LT_TAGVAR(postdeps, $1)"; then + _LT_TAGVAR(postdeps, $1)="${prev}${p}" + else + _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} ${prev}${p}" + fi + fi + prev= + ;; + + *.lto.$objext) ;; # Ignore GCC LTO objects + *.$objext) + # This assumes that the test object file only shows up + # once in the compiler output. + if test "$p" = "conftest.$objext"; then + pre_test_object_deps_done=yes + continue + fi + + if test "$pre_test_object_deps_done" = no; then + if test -z "$_LT_TAGVAR(predep_objects, $1)"; then + _LT_TAGVAR(predep_objects, $1)="$p" + else + _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p" + fi + else + if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then + _LT_TAGVAR(postdep_objects, $1)="$p" + else + _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p" + fi + fi + ;; + + *) ;; # Ignore the rest. + + esac + done + + # Clean up. + rm -f a.out a.exe +else + echo "libtool.m4: error: problem compiling $1 test program" +fi + +$RM -f confest.$objext +CFLAGS=$_lt_libdeps_save_CFLAGS + +# PORTME: override above test on systems where it is broken +m4_if([$1], [CXX], +[case $host_os in +interix[[3-9]]*) + # Interix 3.5 installs completely hosed .la files for C++, so rather than + # hack all around it, let's just trust "g++" to DTRT. + _LT_TAGVAR(predep_objects,$1)= + _LT_TAGVAR(postdep_objects,$1)= + _LT_TAGVAR(postdeps,$1)= + ;; + +linux*) + case `$CC -V 2>&1 | sed 5q` in + *Sun\ C*) + # Sun C++ 5.9 + + # The more standards-conforming stlport4 library is + # incompatible with the Cstd library. Avoid specifying + # it if it's in CXXFLAGS. Ignore libCrun as + # -library=stlport4 depends on it. + case " $CXX $CXXFLAGS " in + *" -library=stlport4 "*) + solaris_use_stlport4=yes + ;; + esac + + if test "$solaris_use_stlport4" != yes; then + _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun' + fi + ;; + esac + ;; + +solaris*) + case $cc_basename in + CC* | sunCC*) + # The more standards-conforming stlport4 library is + # incompatible with the Cstd library. Avoid specifying + # it if it's in CXXFLAGS. Ignore libCrun as + # -library=stlport4 depends on it. + case " $CXX $CXXFLAGS " in + *" -library=stlport4 "*) + solaris_use_stlport4=yes + ;; + esac + + # Adding this requires a known-good setup of shared libraries for + # Sun compiler versions before 5.6, else PIC objects from an old + # archive will be linked into the output, leading to subtle bugs. + if test "$solaris_use_stlport4" != yes; then + _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun' + fi + ;; + esac + ;; +esac +]) + +case " $_LT_TAGVAR(postdeps, $1) " in +*" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;; +esac + _LT_TAGVAR(compiler_lib_search_dirs, $1)= +if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then + _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'` +fi +_LT_TAGDECL([], [compiler_lib_search_dirs], [1], + [The directories searched by this compiler when creating a shared library]) +_LT_TAGDECL([], [predep_objects], [1], + [Dependencies to place before and after the objects being linked to + create a shared library]) +_LT_TAGDECL([], [postdep_objects], [1]) +_LT_TAGDECL([], [predeps], [1]) +_LT_TAGDECL([], [postdeps], [1]) +_LT_TAGDECL([], [compiler_lib_search_path], [1], + [The library search path used internally by the compiler when linking + a shared library]) +])# _LT_SYS_HIDDEN_LIBDEPS + + +# _LT_LANG_F77_CONFIG([TAG]) +# -------------------------- +# Ensure that the configuration variables for a Fortran 77 compiler are +# suitably defined. These variables are subsequently used by _LT_CONFIG +# to write the compiler configuration to `libtool'. +m4_defun([_LT_LANG_F77_CONFIG], +[AC_LANG_PUSH(Fortran 77) +if test -z "$F77" || test "X$F77" = "Xno"; then + _lt_disable_F77=yes +fi + +_LT_TAGVAR(archive_cmds_need_lc, $1)=no +_LT_TAGVAR(allow_undefined_flag, $1)= +_LT_TAGVAR(always_export_symbols, $1)=no +_LT_TAGVAR(archive_expsym_cmds, $1)= +_LT_TAGVAR(export_dynamic_flag_spec, $1)= +_LT_TAGVAR(hardcode_direct, $1)=no +_LT_TAGVAR(hardcode_direct_absolute, $1)=no +_LT_TAGVAR(hardcode_libdir_flag_spec, $1)= +_LT_TAGVAR(hardcode_libdir_separator, $1)= +_LT_TAGVAR(hardcode_minus_L, $1)=no +_LT_TAGVAR(hardcode_automatic, $1)=no +_LT_TAGVAR(inherit_rpath, $1)=no +_LT_TAGVAR(module_cmds, $1)= +_LT_TAGVAR(module_expsym_cmds, $1)= +_LT_TAGVAR(link_all_deplibs, $1)=unknown +_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds +_LT_TAGVAR(reload_flag, $1)=$reload_flag +_LT_TAGVAR(reload_cmds, $1)=$reload_cmds +_LT_TAGVAR(no_undefined_flag, $1)= +_LT_TAGVAR(whole_archive_flag_spec, $1)= +_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no + +# Source file extension for f77 test sources. +ac_ext=f + +# Object file extension for compiled f77 test sources. +objext=o +_LT_TAGVAR(objext, $1)=$objext + +# No sense in running all these tests if we already determined that +# the F77 compiler isn't working. Some variables (like enable_shared) +# are currently assumed to apply to all compilers on this platform, +# and will be corrupted by setting them based on a non-working compiler. +if test "$_lt_disable_F77" != yes; then + # Code to be used in simple compile tests + lt_simple_compile_test_code="\ + subroutine t + return + end +" + + # Code to be used in simple link tests + lt_simple_link_test_code="\ + program t + end +" + + # ltmain only uses $CC for tagged configurations so make sure $CC is set. + _LT_TAG_COMPILER + + # save warnings/boilerplate of simple test code + _LT_COMPILER_BOILERPLATE + _LT_LINKER_BOILERPLATE + + # Allow CC to be a program name with arguments. + lt_save_CC="$CC" + lt_save_GCC=$GCC + lt_save_CFLAGS=$CFLAGS + CC=${F77-"f77"} + CFLAGS=$FFLAGS + compiler=$CC + _LT_TAGVAR(compiler, $1)=$CC + _LT_CC_BASENAME([$compiler]) + GCC=$G77 + if test -n "$compiler"; then + AC_MSG_CHECKING([if libtool supports shared libraries]) + AC_MSG_RESULT([$can_build_shared]) + + AC_MSG_CHECKING([whether to build shared libraries]) + test "$can_build_shared" = "no" && enable_shared=no + + # On AIX, shared libraries and static libraries use the same namespace, and + # are all built from PIC. + case $host_os in + aix3*) + test "$enable_shared" = yes && enable_static=no + if test -n "$RANLIB"; then + archive_cmds="$archive_cmds~\$RANLIB \$lib" + postinstall_cmds='$RANLIB $lib' + fi + ;; + aix[[4-9]]*) + if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then + test "$enable_shared" = yes && enable_static=no + fi + ;; + esac + AC_MSG_RESULT([$enable_shared]) + + AC_MSG_CHECKING([whether to build static libraries]) + # Make sure either enable_shared or enable_static is yes. + test "$enable_shared" = yes || enable_static=yes + AC_MSG_RESULT([$enable_static]) + + _LT_TAGVAR(GCC, $1)="$G77" + _LT_TAGVAR(LD, $1)="$LD" + + ## CAVEAT EMPTOR: + ## There is no encapsulation within the following macros, do not change + ## the running order or otherwise move them around unless you know exactly + ## what you are doing... + _LT_COMPILER_PIC($1) + _LT_COMPILER_C_O($1) + _LT_COMPILER_FILE_LOCKS($1) + _LT_LINKER_SHLIBS($1) + _LT_SYS_DYNAMIC_LINKER($1) + _LT_LINKER_HARDCODE_LIBPATH($1) + + _LT_CONFIG($1) + fi # test -n "$compiler" + + GCC=$lt_save_GCC + CC="$lt_save_CC" + CFLAGS="$lt_save_CFLAGS" +fi # test "$_lt_disable_F77" != yes + +AC_LANG_POP +])# _LT_LANG_F77_CONFIG + + +# _LT_LANG_FC_CONFIG([TAG]) +# ------------------------- +# Ensure that the configuration variables for a Fortran compiler are +# suitably defined. These variables are subsequently used by _LT_CONFIG +# to write the compiler configuration to `libtool'. +m4_defun([_LT_LANG_FC_CONFIG], +[AC_LANG_PUSH(Fortran) + +if test -z "$FC" || test "X$FC" = "Xno"; then + _lt_disable_FC=yes +fi + +_LT_TAGVAR(archive_cmds_need_lc, $1)=no +_LT_TAGVAR(allow_undefined_flag, $1)= +_LT_TAGVAR(always_export_symbols, $1)=no +_LT_TAGVAR(archive_expsym_cmds, $1)= +_LT_TAGVAR(export_dynamic_flag_spec, $1)= +_LT_TAGVAR(hardcode_direct, $1)=no +_LT_TAGVAR(hardcode_direct_absolute, $1)=no +_LT_TAGVAR(hardcode_libdir_flag_spec, $1)= +_LT_TAGVAR(hardcode_libdir_separator, $1)= +_LT_TAGVAR(hardcode_minus_L, $1)=no +_LT_TAGVAR(hardcode_automatic, $1)=no +_LT_TAGVAR(inherit_rpath, $1)=no +_LT_TAGVAR(module_cmds, $1)= +_LT_TAGVAR(module_expsym_cmds, $1)= +_LT_TAGVAR(link_all_deplibs, $1)=unknown +_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds +_LT_TAGVAR(reload_flag, $1)=$reload_flag +_LT_TAGVAR(reload_cmds, $1)=$reload_cmds +_LT_TAGVAR(no_undefined_flag, $1)= +_LT_TAGVAR(whole_archive_flag_spec, $1)= +_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no + +# Source file extension for fc test sources. +ac_ext=${ac_fc_srcext-f} + +# Object file extension for compiled fc test sources. +objext=o +_LT_TAGVAR(objext, $1)=$objext + +# No sense in running all these tests if we already determined that +# the FC compiler isn't working. Some variables (like enable_shared) +# are currently assumed to apply to all compilers on this platform, +# and will be corrupted by setting them based on a non-working compiler. +if test "$_lt_disable_FC" != yes; then + # Code to be used in simple compile tests + lt_simple_compile_test_code="\ + subroutine t + return + end +" + + # Code to be used in simple link tests + lt_simple_link_test_code="\ + program t + end +" + + # ltmain only uses $CC for tagged configurations so make sure $CC is set. + _LT_TAG_COMPILER + + # save warnings/boilerplate of simple test code + _LT_COMPILER_BOILERPLATE + _LT_LINKER_BOILERPLATE + + # Allow CC to be a program name with arguments. + lt_save_CC="$CC" + lt_save_GCC=$GCC + lt_save_CFLAGS=$CFLAGS + CC=${FC-"f95"} + CFLAGS=$FCFLAGS + compiler=$CC + GCC=$ac_cv_fc_compiler_gnu + + _LT_TAGVAR(compiler, $1)=$CC + _LT_CC_BASENAME([$compiler]) + + if test -n "$compiler"; then + AC_MSG_CHECKING([if libtool supports shared libraries]) + AC_MSG_RESULT([$can_build_shared]) + + AC_MSG_CHECKING([whether to build shared libraries]) + test "$can_build_shared" = "no" && enable_shared=no + + # On AIX, shared libraries and static libraries use the same namespace, and + # are all built from PIC. + case $host_os in + aix3*) + test "$enable_shared" = yes && enable_static=no + if test -n "$RANLIB"; then + archive_cmds="$archive_cmds~\$RANLIB \$lib" + postinstall_cmds='$RANLIB $lib' + fi + ;; + aix[[4-9]]*) + if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then + test "$enable_shared" = yes && enable_static=no + fi + ;; + esac + AC_MSG_RESULT([$enable_shared]) + + AC_MSG_CHECKING([whether to build static libraries]) + # Make sure either enable_shared or enable_static is yes. + test "$enable_shared" = yes || enable_static=yes + AC_MSG_RESULT([$enable_static]) + + _LT_TAGVAR(GCC, $1)="$ac_cv_fc_compiler_gnu" + _LT_TAGVAR(LD, $1)="$LD" + + ## CAVEAT EMPTOR: + ## There is no encapsulation within the following macros, do not change + ## the running order or otherwise move them around unless you know exactly + ## what you are doing... + _LT_SYS_HIDDEN_LIBDEPS($1) + _LT_COMPILER_PIC($1) + _LT_COMPILER_C_O($1) + _LT_COMPILER_FILE_LOCKS($1) + _LT_LINKER_SHLIBS($1) + _LT_SYS_DYNAMIC_LINKER($1) + _LT_LINKER_HARDCODE_LIBPATH($1) + + _LT_CONFIG($1) + fi # test -n "$compiler" + + GCC=$lt_save_GCC + CC=$lt_save_CC + CFLAGS=$lt_save_CFLAGS +fi # test "$_lt_disable_FC" != yes + +AC_LANG_POP +])# _LT_LANG_FC_CONFIG + + +# _LT_LANG_GCJ_CONFIG([TAG]) +# -------------------------- +# Ensure that the configuration variables for the GNU Java Compiler compiler +# are suitably defined. These variables are subsequently used by _LT_CONFIG +# to write the compiler configuration to `libtool'. +m4_defun([_LT_LANG_GCJ_CONFIG], +[AC_REQUIRE([LT_PROG_GCJ])dnl +AC_LANG_SAVE + +# Source file extension for Java test sources. +ac_ext=java + +# Object file extension for compiled Java test sources. +objext=o +_LT_TAGVAR(objext, $1)=$objext + +# Code to be used in simple compile tests +lt_simple_compile_test_code="class foo {}" + +# Code to be used in simple link tests +lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }' + +# ltmain only uses $CC for tagged configurations so make sure $CC is set. +_LT_TAG_COMPILER + +# save warnings/boilerplate of simple test code +_LT_COMPILER_BOILERPLATE +_LT_LINKER_BOILERPLATE + +# Allow CC to be a program name with arguments. +lt_save_CC=$CC +lt_save_CFLAGS=$CFLAGS +lt_save_GCC=$GCC +GCC=yes +CC=${GCJ-"gcj"} +CFLAGS=$GCJFLAGS +compiler=$CC +_LT_TAGVAR(compiler, $1)=$CC +_LT_TAGVAR(LD, $1)="$LD" +_LT_CC_BASENAME([$compiler]) + +# GCJ did not exist at the time GCC didn't implicitly link libc in. +_LT_TAGVAR(archive_cmds_need_lc, $1)=no + +_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds +_LT_TAGVAR(reload_flag, $1)=$reload_flag +_LT_TAGVAR(reload_cmds, $1)=$reload_cmds + +if test -n "$compiler"; then + _LT_COMPILER_NO_RTTI($1) + _LT_COMPILER_PIC($1) + _LT_COMPILER_C_O($1) + _LT_COMPILER_FILE_LOCKS($1) + _LT_LINKER_SHLIBS($1) + _LT_LINKER_HARDCODE_LIBPATH($1) + + _LT_CONFIG($1) +fi + +AC_LANG_RESTORE + +GCC=$lt_save_GCC +CC=$lt_save_CC +CFLAGS=$lt_save_CFLAGS +])# _LT_LANG_GCJ_CONFIG + + +# _LT_LANG_GO_CONFIG([TAG]) +# -------------------------- +# Ensure that the configuration variables for the GNU Go compiler +# are suitably defined. These variables are subsequently used by _LT_CONFIG +# to write the compiler configuration to `libtool'. +m4_defun([_LT_LANG_GO_CONFIG], +[AC_REQUIRE([LT_PROG_GO])dnl +AC_LANG_SAVE + +# Source file extension for Go test sources. +ac_ext=go + +# Object file extension for compiled Go test sources. +objext=o +_LT_TAGVAR(objext, $1)=$objext + +# Code to be used in simple compile tests +lt_simple_compile_test_code="package main; func main() { }" + +# Code to be used in simple link tests +lt_simple_link_test_code='package main; func main() { }' + +# ltmain only uses $CC for tagged configurations so make sure $CC is set. +_LT_TAG_COMPILER + +# save warnings/boilerplate of simple test code +_LT_COMPILER_BOILERPLATE +_LT_LINKER_BOILERPLATE + +# Allow CC to be a program name with arguments. +lt_save_CC=$CC +lt_save_CFLAGS=$CFLAGS +lt_save_GCC=$GCC +GCC=yes +CC=${GOC-"gccgo"} +CFLAGS=$GOFLAGS +compiler=$CC +_LT_TAGVAR(compiler, $1)=$CC +_LT_TAGVAR(LD, $1)="$LD" +_LT_CC_BASENAME([$compiler]) + +# Go did not exist at the time GCC didn't implicitly link libc in. +_LT_TAGVAR(archive_cmds_need_lc, $1)=no + +_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds +_LT_TAGVAR(reload_flag, $1)=$reload_flag +_LT_TAGVAR(reload_cmds, $1)=$reload_cmds + +if test -n "$compiler"; then + _LT_COMPILER_NO_RTTI($1) + _LT_COMPILER_PIC($1) + _LT_COMPILER_C_O($1) + _LT_COMPILER_FILE_LOCKS($1) + _LT_LINKER_SHLIBS($1) + _LT_LINKER_HARDCODE_LIBPATH($1) + + _LT_CONFIG($1) +fi + +AC_LANG_RESTORE + +GCC=$lt_save_GCC +CC=$lt_save_CC +CFLAGS=$lt_save_CFLAGS +])# _LT_LANG_GO_CONFIG + + +# _LT_LANG_RC_CONFIG([TAG]) +# ------------------------- +# Ensure that the configuration variables for the Windows resource compiler +# are suitably defined. These variables are subsequently used by _LT_CONFIG +# to write the compiler configuration to `libtool'. +m4_defun([_LT_LANG_RC_CONFIG], +[AC_REQUIRE([LT_PROG_RC])dnl +AC_LANG_SAVE + +# Source file extension for RC test sources. +ac_ext=rc + +# Object file extension for compiled RC test sources. +objext=o +_LT_TAGVAR(objext, $1)=$objext + +# Code to be used in simple compile tests +lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }' + +# Code to be used in simple link tests +lt_simple_link_test_code="$lt_simple_compile_test_code" + +# ltmain only uses $CC for tagged configurations so make sure $CC is set. +_LT_TAG_COMPILER + +# save warnings/boilerplate of simple test code +_LT_COMPILER_BOILERPLATE +_LT_LINKER_BOILERPLATE + +# Allow CC to be a program name with arguments. +lt_save_CC="$CC" +lt_save_CFLAGS=$CFLAGS +lt_save_GCC=$GCC +GCC= +CC=${RC-"windres"} +CFLAGS= +compiler=$CC +_LT_TAGVAR(compiler, $1)=$CC +_LT_CC_BASENAME([$compiler]) +_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes + +if test -n "$compiler"; then + : + _LT_CONFIG($1) +fi + +GCC=$lt_save_GCC +AC_LANG_RESTORE +CC=$lt_save_CC +CFLAGS=$lt_save_CFLAGS +])# _LT_LANG_RC_CONFIG + + +# LT_PROG_GCJ +# ----------- +AC_DEFUN([LT_PROG_GCJ], +[m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ], + [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ], + [AC_CHECK_TOOL(GCJ, gcj,) + test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2" + AC_SUBST(GCJFLAGS)])])[]dnl +]) + +# Old name: +AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([LT_AC_PROG_GCJ], []) + + +# LT_PROG_GO +# ---------- +AC_DEFUN([LT_PROG_GO], +[AC_CHECK_TOOL(GOC, gccgo,) +]) + + +# LT_PROG_RC +# ---------- +AC_DEFUN([LT_PROG_RC], +[AC_CHECK_TOOL(RC, windres,) +]) + +# Old name: +AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([LT_AC_PROG_RC], []) + + +# _LT_DECL_EGREP +# -------------- +# If we don't have a new enough Autoconf to choose the best grep +# available, choose the one first in the user's PATH. +m4_defun([_LT_DECL_EGREP], +[AC_REQUIRE([AC_PROG_EGREP])dnl +AC_REQUIRE([AC_PROG_FGREP])dnl +test -z "$GREP" && GREP=grep +_LT_DECL([], [GREP], [1], [A grep program that handles long lines]) +_LT_DECL([], [EGREP], [1], [An ERE matcher]) +_LT_DECL([], [FGREP], [1], [A literal string matcher]) +dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too +AC_SUBST([GREP]) +]) + + +# _LT_DECL_OBJDUMP +# -------------- +# If we don't have a new enough Autoconf to choose the best objdump +# available, choose the one first in the user's PATH. +m4_defun([_LT_DECL_OBJDUMP], +[AC_CHECK_TOOL(OBJDUMP, objdump, false) +test -z "$OBJDUMP" && OBJDUMP=objdump +_LT_DECL([], [OBJDUMP], [1], [An object symbol dumper]) +AC_SUBST([OBJDUMP]) +]) + +# _LT_DECL_DLLTOOL +# ---------------- +# Ensure DLLTOOL variable is set. +m4_defun([_LT_DECL_DLLTOOL], +[AC_CHECK_TOOL(DLLTOOL, dlltool, false) +test -z "$DLLTOOL" && DLLTOOL=dlltool +_LT_DECL([], [DLLTOOL], [1], [DLL creation program]) +AC_SUBST([DLLTOOL]) +]) + +# _LT_DECL_SED +# ------------ +# Check for a fully-functional sed program, that truncates +# as few characters as possible. Prefer GNU sed if found. +m4_defun([_LT_DECL_SED], +[AC_PROG_SED +test -z "$SED" && SED=sed +Xsed="$SED -e 1s/^X//" +_LT_DECL([], [SED], [1], [A sed program that does not truncate output]) +_LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"], + [Sed that helps us avoid accidentally triggering echo(1) options like -n]) +])# _LT_DECL_SED + +m4_ifndef([AC_PROG_SED], [ +# NOTE: This macro has been submitted for inclusion into # +# GNU Autoconf as AC_PROG_SED. When it is available in # +# a released version of Autoconf we should remove this # +# macro and use it instead. # + +m4_defun([AC_PROG_SED], +[AC_MSG_CHECKING([for a sed that does not truncate output]) +AC_CACHE_VAL(lt_cv_path_SED, +[# Loop through the user's path and test for sed and gsed. +# Then use that list of sed's as ones to test for truncation. +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for lt_ac_prog in sed gsed; do + for ac_exec_ext in '' $ac_executable_extensions; do + if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then + lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext" + fi + done + done +done +IFS=$as_save_IFS +lt_ac_max=0 +lt_ac_count=0 +# Add /usr/xpg4/bin/sed as it is typically found on Solaris +# along with /bin/sed that truncates output. +for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do + test ! -f $lt_ac_sed && continue + cat /dev/null > conftest.in + lt_ac_count=0 + echo $ECHO_N "0123456789$ECHO_C" >conftest.in + # Check for GNU sed and select it if it is found. + if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then + lt_cv_path_SED=$lt_ac_sed + break + fi + while true; do + cat conftest.in conftest.in >conftest.tmp + mv conftest.tmp conftest.in + cp conftest.in conftest.nl + echo >>conftest.nl + $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break + cmp -s conftest.out conftest.nl || break + # 10000 chars as input seems more than enough + test $lt_ac_count -gt 10 && break + lt_ac_count=`expr $lt_ac_count + 1` + if test $lt_ac_count -gt $lt_ac_max; then + lt_ac_max=$lt_ac_count + lt_cv_path_SED=$lt_ac_sed + fi + done +done +]) +SED=$lt_cv_path_SED +AC_SUBST([SED]) +AC_MSG_RESULT([$SED]) +])#AC_PROG_SED +])#m4_ifndef + +# Old name: +AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([LT_AC_PROG_SED], []) + + +# _LT_CHECK_SHELL_FEATURES +# ------------------------ +# Find out whether the shell is Bourne or XSI compatible, +# or has some other useful features. +m4_defun([_LT_CHECK_SHELL_FEATURES], +[AC_MSG_CHECKING([whether the shell understands some XSI constructs]) +# Try some XSI features +xsi_shell=no +( _lt_dummy="a/b/c" + test "${_lt_dummy##*/},${_lt_dummy%/*},${_lt_dummy#??}"${_lt_dummy%"$_lt_dummy"}, \ + = c,a/b,b/c, \ + && eval 'test $(( 1 + 1 )) -eq 2 \ + && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \ + && xsi_shell=yes +AC_MSG_RESULT([$xsi_shell]) +_LT_CONFIG_LIBTOOL_INIT([xsi_shell='$xsi_shell']) + +AC_MSG_CHECKING([whether the shell understands "+="]) +lt_shell_append=no +( foo=bar; set foo baz; eval "$[1]+=\$[2]" && test "$foo" = barbaz ) \ + >/dev/null 2>&1 \ + && lt_shell_append=yes +AC_MSG_RESULT([$lt_shell_append]) +_LT_CONFIG_LIBTOOL_INIT([lt_shell_append='$lt_shell_append']) + +if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then + lt_unset=unset +else + lt_unset=false +fi +_LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl + +# test EBCDIC or ASCII +case `echo X|tr X '\101'` in + A) # ASCII based system + # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr + lt_SP2NL='tr \040 \012' + lt_NL2SP='tr \015\012 \040\040' + ;; + *) # EBCDIC based system + lt_SP2NL='tr \100 \n' + lt_NL2SP='tr \r\n \100\100' + ;; +esac +_LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl +_LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl +])# _LT_CHECK_SHELL_FEATURES + + +# _LT_PROG_FUNCTION_REPLACE (FUNCNAME, REPLACEMENT-BODY) +# ------------------------------------------------------ +# In `$cfgfile', look for function FUNCNAME delimited by `^FUNCNAME ()$' and +# '^} FUNCNAME ', and replace its body with REPLACEMENT-BODY. +m4_defun([_LT_PROG_FUNCTION_REPLACE], +[dnl { +sed -e '/^$1 ()$/,/^} # $1 /c\ +$1 ()\ +{\ +m4_bpatsubsts([$2], [$], [\\], [^\([ ]\)], [\\\1]) +} # Extended-shell $1 implementation' "$cfgfile" > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") +test 0 -eq $? || _lt_function_replace_fail=: +]) + + +# _LT_PROG_REPLACE_SHELLFNS +# ------------------------- +# Replace existing portable implementations of several shell functions with +# equivalent extended shell implementations where those features are available.. +m4_defun([_LT_PROG_REPLACE_SHELLFNS], +[if test x"$xsi_shell" = xyes; then + _LT_PROG_FUNCTION_REPLACE([func_dirname], [dnl + case ${1} in + */*) func_dirname_result="${1%/*}${2}" ;; + * ) func_dirname_result="${3}" ;; + esac]) + + _LT_PROG_FUNCTION_REPLACE([func_basename], [dnl + func_basename_result="${1##*/}"]) + + _LT_PROG_FUNCTION_REPLACE([func_dirname_and_basename], [dnl + case ${1} in + */*) func_dirname_result="${1%/*}${2}" ;; + * ) func_dirname_result="${3}" ;; + esac + func_basename_result="${1##*/}"]) + + _LT_PROG_FUNCTION_REPLACE([func_stripname], [dnl + # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are + # positional parameters, so assign one to ordinary parameter first. + func_stripname_result=${3} + func_stripname_result=${func_stripname_result#"${1}"} + func_stripname_result=${func_stripname_result%"${2}"}]) + + _LT_PROG_FUNCTION_REPLACE([func_split_long_opt], [dnl + func_split_long_opt_name=${1%%=*} + func_split_long_opt_arg=${1#*=}]) + + _LT_PROG_FUNCTION_REPLACE([func_split_short_opt], [dnl + func_split_short_opt_arg=${1#??} + func_split_short_opt_name=${1%"$func_split_short_opt_arg"}]) + + _LT_PROG_FUNCTION_REPLACE([func_lo2o], [dnl + case ${1} in + *.lo) func_lo2o_result=${1%.lo}.${objext} ;; + *) func_lo2o_result=${1} ;; + esac]) + + _LT_PROG_FUNCTION_REPLACE([func_xform], [ func_xform_result=${1%.*}.lo]) + + _LT_PROG_FUNCTION_REPLACE([func_arith], [ func_arith_result=$(( $[*] ))]) + + _LT_PROG_FUNCTION_REPLACE([func_len], [ func_len_result=${#1}]) +fi + +if test x"$lt_shell_append" = xyes; then + _LT_PROG_FUNCTION_REPLACE([func_append], [ eval "${1}+=\\${2}"]) + + _LT_PROG_FUNCTION_REPLACE([func_append_quoted], [dnl + func_quote_for_eval "${2}" +dnl m4 expansion turns \\\\ into \\, and then the shell eval turns that into \ + eval "${1}+=\\\\ \\$func_quote_for_eval_result"]) + + # Save a `func_append' function call where possible by direct use of '+=' + sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") + test 0 -eq $? || _lt_function_replace_fail=: +else + # Save a `func_append' function call even when '+=' is not available + sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") + test 0 -eq $? || _lt_function_replace_fail=: +fi + +if test x"$_lt_function_replace_fail" = x":"; then + AC_MSG_WARN([Unable to substitute extended shell functions in $ofile]) +fi +]) + +# _LT_PATH_CONVERSION_FUNCTIONS +# ----------------------------- +# Determine which file name conversion functions should be used by +# func_to_host_file (and, implicitly, by func_to_host_path). These are needed +# for certain cross-compile configurations and native mingw. +m4_defun([_LT_PATH_CONVERSION_FUNCTIONS], +[AC_REQUIRE([AC_CANONICAL_HOST])dnl +AC_REQUIRE([AC_CANONICAL_BUILD])dnl +AC_MSG_CHECKING([how to convert $build file names to $host format]) +AC_CACHE_VAL(lt_cv_to_host_file_cmd, +[case $host in + *-*-mingw* ) + case $build in + *-*-mingw* ) # actually msys + lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32 + ;; + *-*-cygwin* ) + lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32 + ;; + * ) # otherwise, assume *nix + lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32 + ;; + esac + ;; + *-*-cygwin* ) + case $build in + *-*-mingw* ) # actually msys + lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin + ;; + *-*-cygwin* ) + lt_cv_to_host_file_cmd=func_convert_file_noop + ;; + * ) # otherwise, assume *nix + lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin + ;; + esac + ;; + * ) # unhandled hosts (and "normal" native builds) + lt_cv_to_host_file_cmd=func_convert_file_noop + ;; +esac +]) +to_host_file_cmd=$lt_cv_to_host_file_cmd +AC_MSG_RESULT([$lt_cv_to_host_file_cmd]) +_LT_DECL([to_host_file_cmd], [lt_cv_to_host_file_cmd], + [0], [convert $build file names to $host format])dnl + +AC_MSG_CHECKING([how to convert $build file names to toolchain format]) +AC_CACHE_VAL(lt_cv_to_tool_file_cmd, +[#assume ordinary cross tools, or native build. +lt_cv_to_tool_file_cmd=func_convert_file_noop +case $host in + *-*-mingw* ) + case $build in + *-*-mingw* ) # actually msys + lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32 + ;; + esac + ;; +esac +]) +to_tool_file_cmd=$lt_cv_to_tool_file_cmd +AC_MSG_RESULT([$lt_cv_to_tool_file_cmd]) +_LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd], + [0], [convert $build files to toolchain format])dnl +])# _LT_PATH_CONVERSION_FUNCTIONS + +# Helper functions for option handling. -*- Autoconf -*- +# +# Copyright (C) 2004, 2005, 2007, 2008, 2009 Free Software Foundation, +# Inc. +# Written by Gary V. Vaughan, 2004 +# +# This file is free software; the Free Software Foundation gives +# unlimited permission to copy and/or distribute it, with or without +# modifications, as long as this notice is preserved. + +# serial 7 ltoptions.m4 + +# This is to help aclocal find these macros, as it can't see m4_define. +AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])]) + + +# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME) +# ------------------------------------------ +m4_define([_LT_MANGLE_OPTION], +[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])]) + + +# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME) +# --------------------------------------- +# Set option OPTION-NAME for macro MACRO-NAME, and if there is a +# matching handler defined, dispatch to it. Other OPTION-NAMEs are +# saved as a flag. +m4_define([_LT_SET_OPTION], +[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl +m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]), + _LT_MANGLE_DEFUN([$1], [$2]), + [m4_warning([Unknown $1 option `$2'])])[]dnl +]) + + +# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET]) +# ------------------------------------------------------------ +# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise. +m4_define([_LT_IF_OPTION], +[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])]) + + +# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET) +# ------------------------------------------------------- +# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME +# are set. +m4_define([_LT_UNLESS_OPTIONS], +[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])), + [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option), + [m4_define([$0_found])])])[]dnl +m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3 +])[]dnl +]) + + +# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST) +# ---------------------------------------- +# OPTION-LIST is a space-separated list of Libtool options associated +# with MACRO-NAME. If any OPTION has a matching handler declared with +# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about +# the unknown option and exit. +m4_defun([_LT_SET_OPTIONS], +[# Set options +m4_foreach([_LT_Option], m4_split(m4_normalize([$2])), + [_LT_SET_OPTION([$1], _LT_Option)]) + +m4_if([$1],[LT_INIT],[ + dnl + dnl Simply set some default values (i.e off) if boolean options were not + dnl specified: + _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no + ]) + _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no + ]) + dnl + dnl If no reference was made to various pairs of opposing options, then + dnl we run the default mode handler for the pair. For example, if neither + dnl `shared' nor `disable-shared' was passed, we enable building of shared + dnl archives by default: + _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED]) + _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC]) + _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC]) + _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install], + [_LT_ENABLE_FAST_INSTALL]) + ]) +])# _LT_SET_OPTIONS + + + +# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME) +# ----------------------------------------- +m4_define([_LT_MANGLE_DEFUN], +[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])]) + + +# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE) +# ----------------------------------------------- +m4_define([LT_OPTION_DEFINE], +[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl +])# LT_OPTION_DEFINE + + +# dlopen +# ------ +LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes +]) + +AU_DEFUN([AC_LIBTOOL_DLOPEN], +[_LT_SET_OPTION([LT_INIT], [dlopen]) +AC_DIAGNOSE([obsolete], +[$0: Remove this warning and the call to _LT_SET_OPTION when you +put the `dlopen' option into LT_INIT's first parameter.]) +]) + +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], []) + + +# win32-dll +# --------- +# Declare package support for building win32 dll's. +LT_OPTION_DEFINE([LT_INIT], [win32-dll], +[enable_win32_dll=yes + +case $host in +*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*) + AC_CHECK_TOOL(AS, as, false) + AC_CHECK_TOOL(DLLTOOL, dlltool, false) + AC_CHECK_TOOL(OBJDUMP, objdump, false) + ;; +esac + +test -z "$AS" && AS=as +_LT_DECL([], [AS], [1], [Assembler program])dnl + +test -z "$DLLTOOL" && DLLTOOL=dlltool +_LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl + +test -z "$OBJDUMP" && OBJDUMP=objdump +_LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl +])# win32-dll + +AU_DEFUN([AC_LIBTOOL_WIN32_DLL], +[AC_REQUIRE([AC_CANONICAL_HOST])dnl +_LT_SET_OPTION([LT_INIT], [win32-dll]) +AC_DIAGNOSE([obsolete], +[$0: Remove this warning and the call to _LT_SET_OPTION when you +put the `win32-dll' option into LT_INIT's first parameter.]) +]) + +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], []) + + +# _LT_ENABLE_SHARED([DEFAULT]) +# ---------------------------- +# implement the --enable-shared flag, and supports the `shared' and +# `disable-shared' LT_INIT options. +# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. +m4_define([_LT_ENABLE_SHARED], +[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl +AC_ARG_ENABLE([shared], + [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@], + [build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])], + [p=${PACKAGE-default} + case $enableval in + yes) enable_shared=yes ;; + no) enable_shared=no ;; + *) + enable_shared=no + # Look at the argument we got. We use all the common list separators. + lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + for pkg in $enableval; do + IFS="$lt_save_ifs" + if test "X$pkg" = "X$p"; then + enable_shared=yes + fi + done + IFS="$lt_save_ifs" + ;; + esac], + [enable_shared=]_LT_ENABLE_SHARED_DEFAULT) + + _LT_DECL([build_libtool_libs], [enable_shared], [0], + [Whether or not to build shared libraries]) +])# _LT_ENABLE_SHARED + +LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])]) +LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])]) + +# Old names: +AC_DEFUN([AC_ENABLE_SHARED], +[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared]) +]) + +AC_DEFUN([AC_DISABLE_SHARED], +[_LT_SET_OPTION([LT_INIT], [disable-shared]) +]) + +AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)]) +AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)]) + +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AM_ENABLE_SHARED], []) +dnl AC_DEFUN([AM_DISABLE_SHARED], []) + + + +# _LT_ENABLE_STATIC([DEFAULT]) +# ---------------------------- +# implement the --enable-static flag, and support the `static' and +# `disable-static' LT_INIT options. +# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. +m4_define([_LT_ENABLE_STATIC], +[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl +AC_ARG_ENABLE([static], + [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@], + [build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])], + [p=${PACKAGE-default} + case $enableval in + yes) enable_static=yes ;; + no) enable_static=no ;; + *) + enable_static=no + # Look at the argument we got. We use all the common list separators. + lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + for pkg in $enableval; do + IFS="$lt_save_ifs" + if test "X$pkg" = "X$p"; then + enable_static=yes + fi + done + IFS="$lt_save_ifs" + ;; + esac], + [enable_static=]_LT_ENABLE_STATIC_DEFAULT) + + _LT_DECL([build_old_libs], [enable_static], [0], + [Whether or not to build static libraries]) +])# _LT_ENABLE_STATIC + +LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])]) +LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])]) + +# Old names: +AC_DEFUN([AC_ENABLE_STATIC], +[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static]) +]) + +AC_DEFUN([AC_DISABLE_STATIC], +[_LT_SET_OPTION([LT_INIT], [disable-static]) +]) + +AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)]) +AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)]) + +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AM_ENABLE_STATIC], []) +dnl AC_DEFUN([AM_DISABLE_STATIC], []) + + + +# _LT_ENABLE_FAST_INSTALL([DEFAULT]) +# ---------------------------------- +# implement the --enable-fast-install flag, and support the `fast-install' +# and `disable-fast-install' LT_INIT options. +# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. +m4_define([_LT_ENABLE_FAST_INSTALL], +[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl +AC_ARG_ENABLE([fast-install], + [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@], + [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])], + [p=${PACKAGE-default} + case $enableval in + yes) enable_fast_install=yes ;; + no) enable_fast_install=no ;; + *) + enable_fast_install=no + # Look at the argument we got. We use all the common list separators. + lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + for pkg in $enableval; do + IFS="$lt_save_ifs" + if test "X$pkg" = "X$p"; then + enable_fast_install=yes + fi + done + IFS="$lt_save_ifs" + ;; + esac], + [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT) + +_LT_DECL([fast_install], [enable_fast_install], [0], + [Whether or not to optimize for fast installation])dnl +])# _LT_ENABLE_FAST_INSTALL + +LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])]) +LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])]) + +# Old names: +AU_DEFUN([AC_ENABLE_FAST_INSTALL], +[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install]) +AC_DIAGNOSE([obsolete], +[$0: Remove this warning and the call to _LT_SET_OPTION when you put +the `fast-install' option into LT_INIT's first parameter.]) +]) + +AU_DEFUN([AC_DISABLE_FAST_INSTALL], +[_LT_SET_OPTION([LT_INIT], [disable-fast-install]) +AC_DIAGNOSE([obsolete], +[$0: Remove this warning and the call to _LT_SET_OPTION when you put +the `disable-fast-install' option into LT_INIT's first parameter.]) +]) + +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], []) +dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], []) + + +# _LT_WITH_PIC([MODE]) +# -------------------- +# implement the --with-pic flag, and support the `pic-only' and `no-pic' +# LT_INIT options. +# MODE is either `yes' or `no'. If omitted, it defaults to `both'. +m4_define([_LT_WITH_PIC], +[AC_ARG_WITH([pic], + [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@], + [try to use only PIC/non-PIC objects @<:@default=use both@:>@])], + [lt_p=${PACKAGE-default} + case $withval in + yes|no) pic_mode=$withval ;; + *) + pic_mode=default + # Look at the argument we got. We use all the common list separators. + lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + for lt_pkg in $withval; do + IFS="$lt_save_ifs" + if test "X$lt_pkg" = "X$lt_p"; then + pic_mode=yes + fi + done + IFS="$lt_save_ifs" + ;; + esac], + [pic_mode=default]) + +test -z "$pic_mode" && pic_mode=m4_default([$1], [default]) + +_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl +])# _LT_WITH_PIC + +LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])]) +LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])]) + +# Old name: +AU_DEFUN([AC_LIBTOOL_PICMODE], +[_LT_SET_OPTION([LT_INIT], [pic-only]) +AC_DIAGNOSE([obsolete], +[$0: Remove this warning and the call to _LT_SET_OPTION when you +put the `pic-only' option into LT_INIT's first parameter.]) +]) + +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_LIBTOOL_PICMODE], []) + + +m4_define([_LTDL_MODE], []) +LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive], + [m4_define([_LTDL_MODE], [nonrecursive])]) +LT_OPTION_DEFINE([LTDL_INIT], [recursive], + [m4_define([_LTDL_MODE], [recursive])]) +LT_OPTION_DEFINE([LTDL_INIT], [subproject], + [m4_define([_LTDL_MODE], [subproject])]) + +m4_define([_LTDL_TYPE], []) +LT_OPTION_DEFINE([LTDL_INIT], [installable], + [m4_define([_LTDL_TYPE], [installable])]) +LT_OPTION_DEFINE([LTDL_INIT], [convenience], + [m4_define([_LTDL_TYPE], [convenience])]) + +# ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*- +# +# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc. +# Written by Gary V. Vaughan, 2004 +# +# This file is free software; the Free Software Foundation gives +# unlimited permission to copy and/or distribute it, with or without +# modifications, as long as this notice is preserved. + +# serial 6 ltsugar.m4 + +# This is to help aclocal find these macros, as it can't see m4_define. +AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])]) + + +# lt_join(SEP, ARG1, [ARG2...]) +# ----------------------------- +# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their +# associated separator. +# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier +# versions in m4sugar had bugs. +m4_define([lt_join], +[m4_if([$#], [1], [], + [$#], [2], [[$2]], + [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])]) +m4_define([_lt_join], +[m4_if([$#$2], [2], [], + [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])]) + + +# lt_car(LIST) +# lt_cdr(LIST) +# ------------ +# Manipulate m4 lists. +# These macros are necessary as long as will still need to support +# Autoconf-2.59 which quotes differently. +m4_define([lt_car], [[$1]]) +m4_define([lt_cdr], +[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])], + [$#], 1, [], + [m4_dquote(m4_shift($@))])]) +m4_define([lt_unquote], $1) + + +# lt_append(MACRO-NAME, STRING, [SEPARATOR]) +# ------------------------------------------ +# Redefine MACRO-NAME to hold its former content plus `SEPARATOR'`STRING'. +# Note that neither SEPARATOR nor STRING are expanded; they are appended +# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked). +# No SEPARATOR is output if MACRO-NAME was previously undefined (different +# than defined and empty). +# +# This macro is needed until we can rely on Autoconf 2.62, since earlier +# versions of m4sugar mistakenly expanded SEPARATOR but not STRING. +m4_define([lt_append], +[m4_define([$1], + m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])]) + + + +# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...]) +# ---------------------------------------------------------- +# Produce a SEP delimited list of all paired combinations of elements of +# PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list +# has the form PREFIXmINFIXSUFFIXn. +# Needed until we can rely on m4_combine added in Autoconf 2.62. +m4_define([lt_combine], +[m4_if(m4_eval([$# > 3]), [1], + [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl +[[m4_foreach([_Lt_prefix], [$2], + [m4_foreach([_Lt_suffix], + ]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[, + [_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])]) + + +# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ]) +# ----------------------------------------------------------------------- +# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited +# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ. +m4_define([lt_if_append_uniq], +[m4_ifdef([$1], + [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1], + [lt_append([$1], [$2], [$3])$4], + [$5])], + [lt_append([$1], [$2], [$3])$4])]) + + +# lt_dict_add(DICT, KEY, VALUE) +# ----------------------------- +m4_define([lt_dict_add], +[m4_define([$1($2)], [$3])]) + + +# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE) +# -------------------------------------------- +m4_define([lt_dict_add_subkey], +[m4_define([$1($2:$3)], [$4])]) + + +# lt_dict_fetch(DICT, KEY, [SUBKEY]) +# ---------------------------------- +m4_define([lt_dict_fetch], +[m4_ifval([$3], + m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]), + m4_ifdef([$1($2)], [m4_defn([$1($2)])]))]) + + +# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE]) +# ----------------------------------------------------------------- +m4_define([lt_if_dict_fetch], +[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4], + [$5], + [$6])]) + + +# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...]) +# -------------------------------------------------------------- +m4_define([lt_dict_filter], +[m4_if([$5], [], [], + [lt_join(m4_quote(m4_default([$4], [[, ]])), + lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]), + [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl +]) + +# ltversion.m4 -- version numbers -*- Autoconf -*- +# +# Copyright (C) 2004 Free Software Foundation, Inc. +# Written by Scott James Remnant, 2004 +# +# This file is free software; the Free Software Foundation gives +# unlimited permission to copy and/or distribute it, with or without +# modifications, as long as this notice is preserved. + +# @configure_input@ + +# serial 3337 ltversion.m4 +# This file is part of GNU Libtool + +m4_define([LT_PACKAGE_VERSION], [2.4.2]) +m4_define([LT_PACKAGE_REVISION], [1.3337]) + +AC_DEFUN([LTVERSION_VERSION], +[macro_version='2.4.2' +macro_revision='1.3337' +_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?]) +_LT_DECL(, macro_revision, 0) +]) + +# lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*- +# +# Copyright (C) 2004, 2005, 2007, 2009 Free Software Foundation, Inc. +# Written by Scott James Remnant, 2004. +# +# This file is free software; the Free Software Foundation gives +# unlimited permission to copy and/or distribute it, with or without +# modifications, as long as this notice is preserved. + +# serial 5 lt~obsolete.m4 + +# These exist entirely to fool aclocal when bootstrapping libtool. +# +# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN) +# which have later been changed to m4_define as they aren't part of the +# exported API, or moved to Autoconf or Automake where they belong. +# +# The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN +# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us +# using a macro with the same name in our local m4/libtool.m4 it'll +# pull the old libtool.m4 in (it doesn't see our shiny new m4_define +# and doesn't know about Autoconf macros at all.) +# +# So we provide this file, which has a silly filename so it's always +# included after everything else. This provides aclocal with the +# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything +# because those macros already exist, or will be overwritten later. +# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6. +# +# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here. +# Yes, that means every name once taken will need to remain here until +# we give up compatibility with versions before 1.7, at which point +# we need to keep only those names which we still refer to. + +# This is to help aclocal find these macros, as it can't see m4_define. +AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])]) + +m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])]) +m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])]) +m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])]) +m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])]) +m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])]) +m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])]) +m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])]) +m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])]) +m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])]) +m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])]) +m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])]) +m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])]) +m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])]) +m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])]) +m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])]) +m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])]) +m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])]) +m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])]) +m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])]) +m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])]) +m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])]) +m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])]) +m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])]) +m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])]) +m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])]) +m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])]) +m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])]) +m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])]) +m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])]) +m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])]) +m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])]) +m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])]) +m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])]) +m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])]) +m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])]) +m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])]) +m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])]) +m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])]) +m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])]) +m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])]) +m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])]) +m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])]) +m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])]) +m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])]) +m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])]) +m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])]) +m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])]) +m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])]) +m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])]) +m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])]) +m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])]) +m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])]) +m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])]) +m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])]) +m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS], [AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])]) +m4_ifndef([_LT_AC_PROG_CXXCPP], [AC_DEFUN([_LT_AC_PROG_CXXCPP])]) +m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS], [AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])]) +m4_ifndef([_LT_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])]) +m4_ifndef([_LT_PROG_F77], [AC_DEFUN([_LT_PROG_F77])]) +m4_ifndef([_LT_PROG_FC], [AC_DEFUN([_LT_PROG_FC])]) +m4_ifndef([_LT_PROG_CXX], [AC_DEFUN([_LT_PROG_CXX])]) + +# Copyright (C) 2002-2013 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# AM_AUTOMAKE_VERSION(VERSION) +# ---------------------------- +# Automake X.Y traces this macro to ensure aclocal.m4 has been +# generated from the m4 files accompanying Automake X.Y. +# (This private macro should not be called outside this file.) +AC_DEFUN([AM_AUTOMAKE_VERSION], +[am__api_version='1.14' +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.14], [], + [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl +]) + +# _AM_AUTOCONF_VERSION(VERSION) +# ----------------------------- +# aclocal traces this macro to find the Autoconf version. +# This is a private macro too. Using m4_define simplifies +# the logic in aclocal, which can simply ignore this definition. +m4_define([_AM_AUTOCONF_VERSION], []) + +# AM_SET_CURRENT_AUTOMAKE_VERSION +# ------------------------------- +# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced. +# This function is AC_REQUIREd by AM_INIT_AUTOMAKE. +AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], +[AM_AUTOMAKE_VERSION([1.14])dnl +m4_ifndef([AC_AUTOCONF_VERSION], + [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl +_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))]) + +# Copyright (C) 2011-2013 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# AM_PROG_AR([ACT-IF-FAIL]) +# ------------------------- +# Try to determine the archiver interface, and trigger the ar-lib wrapper +# if it is needed. If the detection of archiver interface fails, run +# ACT-IF-FAIL (default is to abort configure with a proper error message). +AC_DEFUN([AM_PROG_AR], +[AC_BEFORE([$0], [LT_INIT])dnl +AC_BEFORE([$0], [AC_PROG_LIBTOOL])dnl +AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl +AC_REQUIRE_AUX_FILE([ar-lib])dnl +AC_CHECK_TOOLS([AR], [ar lib "link -lib"], [false]) +: ${AR=ar} + +AC_CACHE_CHECK([the archiver ($AR) interface], [am_cv_ar_interface], + [AC_LANG_PUSH([C]) + am_cv_ar_interface=ar + AC_COMPILE_IFELSE([AC_LANG_SOURCE([[int some_variable = 0;]])], + [am_ar_try='$AR cru libconftest.a conftest.$ac_objext >&AS_MESSAGE_LOG_FD' + AC_TRY_EVAL([am_ar_try]) + if test "$ac_status" -eq 0; then + am_cv_ar_interface=ar + else + am_ar_try='$AR -NOLOGO -OUT:conftest.lib conftest.$ac_objext >&AS_MESSAGE_LOG_FD' + AC_TRY_EVAL([am_ar_try]) + if test "$ac_status" -eq 0; then + am_cv_ar_interface=lib + else + am_cv_ar_interface=unknown + fi + fi + rm -f conftest.lib libconftest.a + ]) + AC_LANG_POP([C])]) + +case $am_cv_ar_interface in +ar) + ;; +lib) + # Microsoft lib, so override with the ar-lib wrapper script. + # FIXME: It is wrong to rewrite AR. + # But if we don't then we get into trouble of one sort or another. + # A longer-term fix would be to have automake use am__AR in this case, + # and then we could set am__AR="$am_aux_dir/ar-lib \$(AR)" or something + # similar. + AR="$am_aux_dir/ar-lib $AR" + ;; +unknown) + m4_default([$1], + [AC_MSG_ERROR([could not determine $AR interface])]) + ;; +esac +AC_SUBST([AR])dnl +]) + +# AM_AUX_DIR_EXPAND -*- Autoconf -*- + +# Copyright (C) 2001-2013 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets +# $ac_aux_dir to '$srcdir/foo'. In other projects, it is set to +# '$srcdir', '$srcdir/..', or '$srcdir/../..'. +# +# Of course, Automake must honor this variable whenever it calls a +# tool from the auxiliary directory. The problem is that $srcdir (and +# therefore $ac_aux_dir as well) can be either absolute or relative, +# depending on how configure is run. This is pretty annoying, since +# it makes $ac_aux_dir quite unusable in subdirectories: in the top +# source directory, any form will work fine, but in subdirectories a +# relative path needs to be adjusted first. +# +# $ac_aux_dir/missing +# fails when called from a subdirectory if $ac_aux_dir is relative +# $top_srcdir/$ac_aux_dir/missing +# fails if $ac_aux_dir is absolute, +# fails when called from a subdirectory in a VPATH build with +# a relative $ac_aux_dir +# +# The reason of the latter failure is that $top_srcdir and $ac_aux_dir +# are both prefixed by $srcdir. In an in-source build this is usually +# harmless because $srcdir is '.', but things will broke when you +# start a VPATH build or use an absolute $srcdir. +# +# So we could use something similar to $top_srcdir/$ac_aux_dir/missing, +# iff we strip the leading $srcdir from $ac_aux_dir. That would be: +# am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"` +# and then we would define $MISSING as +# MISSING="\${SHELL} $am_aux_dir/missing" +# This will work as long as MISSING is not called from configure, because +# unfortunately $(top_srcdir) has no meaning in configure. +# However there are other variables, like CC, which are often used in +# configure, and could therefore not use this "fixed" $ac_aux_dir. +# +# Another solution, used here, is to always expand $ac_aux_dir to an +# absolute PATH. The drawback is that using absolute paths prevent a +# configured tree to be moved without reconfiguration. + +AC_DEFUN([AM_AUX_DIR_EXPAND], +[dnl Rely on autoconf to set up CDPATH properly. +AC_PREREQ([2.50])dnl +# expand $ac_aux_dir to an absolute path +am_aux_dir=`cd $ac_aux_dir && pwd` +]) + +# AM_CONDITIONAL -*- Autoconf -*- + +# Copyright (C) 1997-2013 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# AM_CONDITIONAL(NAME, SHELL-CONDITION) +# ------------------------------------- +# Define a conditional. +AC_DEFUN([AM_CONDITIONAL], +[AC_PREREQ([2.52])dnl + m4_if([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])], + [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl +AC_SUBST([$1_TRUE])dnl +AC_SUBST([$1_FALSE])dnl +_AM_SUBST_NOTMAKE([$1_TRUE])dnl +_AM_SUBST_NOTMAKE([$1_FALSE])dnl +m4_define([_AM_COND_VALUE_$1], [$2])dnl +if $2; then + $1_TRUE= + $1_FALSE='#' +else + $1_TRUE='#' + $1_FALSE= +fi +AC_CONFIG_COMMANDS_PRE( +[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then + AC_MSG_ERROR([[conditional "$1" was never defined. +Usually this means the macro was only invoked conditionally.]]) +fi])]) + +# Copyright (C) 1999-2013 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. + + +# There are a few dirty hacks below to avoid letting 'AC_PROG_CC' be +# written in clear, in which case automake, when reading aclocal.m4, +# will think it sees a *use*, and therefore will trigger all it's +# C support machinery. Also note that it means that autoscan, seeing +# CC etc. in the Makefile, will ask for an AC_PROG_CC use... + + +# _AM_DEPENDENCIES(NAME) +# ---------------------- +# See how the compiler implements dependency checking. +# NAME is "CC", "CXX", "OBJC", "OBJCXX", "UPC", or "GJC". +# We try a few techniques and use that to set a single cache variable. +# +# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was +# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular +# dependency, and given that the user is not expected to run this macro, +# just rely on AC_PROG_CC. +AC_DEFUN([_AM_DEPENDENCIES], +[AC_REQUIRE([AM_SET_DEPDIR])dnl +AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl +AC_REQUIRE([AM_MAKE_INCLUDE])dnl +AC_REQUIRE([AM_DEP_TRACK])dnl + +m4_if([$1], [CC], [depcc="$CC" am_compiler_list=], + [$1], [CXX], [depcc="$CXX" am_compiler_list=], + [$1], [OBJC], [depcc="$OBJC" am_compiler_list='gcc3 gcc'], + [$1], [OBJCXX], [depcc="$OBJCXX" am_compiler_list='gcc3 gcc'], + [$1], [UPC], [depcc="$UPC" am_compiler_list=], + [$1], [GCJ], [depcc="$GCJ" am_compiler_list='gcc3 gcc'], + [depcc="$$1" am_compiler_list=]) + +AC_CACHE_CHECK([dependency style of $depcc], + [am_cv_$1_dependencies_compiler_type], +[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then + # We make a subdir and do the tests there. Otherwise we can end up + # making bogus files that we don't know about and never remove. For + # instance it was reported that on HP-UX the gcc test will end up + # making a dummy file named 'D' -- because '-MD' means "put the output + # in D". + rm -rf conftest.dir + mkdir conftest.dir + # Copy depcomp to subdir because otherwise we won't find it if we're + # using a relative directory. + cp "$am_depcomp" conftest.dir + cd conftest.dir + # We will build objects and dependencies in a subdirectory because + # it helps to detect inapplicable dependency modes. For instance + # both Tru64's cc and ICC support -MD to output dependencies as a + # side effect of compilation, but ICC will put the dependencies in + # the current directory while Tru64 will put them in the object + # directory. + mkdir sub + + am_cv_$1_dependencies_compiler_type=none + if test "$am_compiler_list" = ""; then + am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp` + fi + am__universal=false + m4_case([$1], [CC], + [case " $depcc " in #( + *\ -arch\ *\ -arch\ *) am__universal=true ;; + esac], + [CXX], + [case " $depcc " in #( + *\ -arch\ *\ -arch\ *) am__universal=true ;; + esac]) + + for depmode in $am_compiler_list; do + # Setup a source with many dependencies, because some compilers + # like to wrap large dependency lists on column 80 (with \), and + # we should not choose a depcomp mode which is confused by this. + # + # We need to recreate these files for each test, as the compiler may + # overwrite some of them when testing with obscure command lines. + # This happens at least with the AIX C compiler. + : > sub/conftest.c + for i in 1 2 3 4 5 6; do + echo '#include "conftst'$i'.h"' >> sub/conftest.c + # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with + # Solaris 10 /bin/sh. + echo '/* dummy */' > sub/conftst$i.h + done + echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf + + # We check with '-c' and '-o' for the sake of the "dashmstdout" + # mode. It turns out that the SunPro C++ compiler does not properly + # handle '-M -o', and we need to detect this. Also, some Intel + # versions had trouble with output in subdirs. + am__obj=sub/conftest.${OBJEXT-o} + am__minus_obj="-o $am__obj" + case $depmode in + gcc) + # This depmode causes a compiler race in universal mode. + test "$am__universal" = false || continue + ;; + nosideeffect) + # After this tag, mechanisms are not by side-effect, so they'll + # only be used when explicitly requested. + if test "x$enable_dependency_tracking" = xyes; then + continue + else + break + fi + ;; + msvc7 | msvc7msys | msvisualcpp | msvcmsys) + # This compiler won't grok '-c -o', but also, the minuso test has + # not run yet. These depmodes are late enough in the game, and + # so weak that their functioning should not be impacted. + am__obj=conftest.${OBJEXT-o} + am__minus_obj= + ;; + none) break ;; + esac + if depmode=$depmode \ + source=sub/conftest.c object=$am__obj \ + depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ + $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ + >/dev/null 2>conftest.err && + grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && + grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && + grep $am__obj sub/conftest.Po > /dev/null 2>&1 && + ${MAKE-make} -s -f confmf > /dev/null 2>&1; then + # icc doesn't choke on unknown options, it will just issue warnings + # or remarks (even with -Werror). So we grep stderr for any message + # that says an option was ignored or not supported. + # When given -MP, icc 7.0 and 7.1 complain thusly: + # icc: Command line warning: ignoring option '-M'; no argument required + # The diagnosis changed in icc 8.0: + # icc: Command line remark: option '-MP' not supported + if (grep 'ignoring option' conftest.err || + grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else + am_cv_$1_dependencies_compiler_type=$depmode + break + fi + fi + done + + cd .. + rm -rf conftest.dir +else + am_cv_$1_dependencies_compiler_type=none +fi +]) +AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type]) +AM_CONDITIONAL([am__fastdep$1], [ + test "x$enable_dependency_tracking" != xno \ + && test "$am_cv_$1_dependencies_compiler_type" = gcc3]) +]) + + +# AM_SET_DEPDIR +# ------------- +# Choose a directory name for dependency files. +# This macro is AC_REQUIREd in _AM_DEPENDENCIES. +AC_DEFUN([AM_SET_DEPDIR], +[AC_REQUIRE([AM_SET_LEADING_DOT])dnl +AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl +]) + + +# AM_DEP_TRACK +# ------------ +AC_DEFUN([AM_DEP_TRACK], +[AC_ARG_ENABLE([dependency-tracking], [dnl +AS_HELP_STRING( + [--enable-dependency-tracking], + [do not reject slow dependency extractors]) +AS_HELP_STRING( + [--disable-dependency-tracking], + [speeds up one-time build])]) +if test "x$enable_dependency_tracking" != xno; then + am_depcomp="$ac_aux_dir/depcomp" + AMDEPBACKSLASH='\' + am__nodep='_no' +fi +AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno]) +AC_SUBST([AMDEPBACKSLASH])dnl +_AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl +AC_SUBST([am__nodep])dnl +_AM_SUBST_NOTMAKE([am__nodep])dnl +]) + +# Generate code to set up dependency tracking. -*- Autoconf -*- + +# Copyright (C) 1999-2013 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + + +# _AM_OUTPUT_DEPENDENCY_COMMANDS +# ------------------------------ +AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], +[{ + # Older Autoconf quotes --file arguments for eval, but not when files + # are listed without --file. Let's play safe and only enable the eval + # if we detect the quoting. + case $CONFIG_FILES in + *\'*) eval set x "$CONFIG_FILES" ;; + *) set x $CONFIG_FILES ;; + esac + shift + for mf + do + # Strip MF so we end up with the name of the file. + mf=`echo "$mf" | sed -e 's/:.*$//'` + # Check whether this is an Automake generated Makefile or not. + # We used to match only the files named 'Makefile.in', but + # some people rename them; so instead we look at the file content. + # Grep'ing the first line is not enough: some people post-process + # each Makefile.in and add a new line on top of each file to say so. + # Grep'ing the whole file is not good either: AIX grep has a line + # limit of 2048, but all sed's we know have understand at least 4000. + if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then + dirpart=`AS_DIRNAME("$mf")` + else + continue + fi + # Extract the definition of DEPDIR, am__include, and am__quote + # from the Makefile without running 'make'. + DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` + test -z "$DEPDIR" && continue + am__include=`sed -n 's/^am__include = //p' < "$mf"` + test -z "$am__include" && continue + am__quote=`sed -n 's/^am__quote = //p' < "$mf"` + # Find all dependency output files, they are included files with + # $(DEPDIR) in their names. We invoke sed twice because it is the + # simplest approach to changing $(DEPDIR) to its actual value in the + # expansion. + for file in `sed -n " + s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ + sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do + # Make sure the directory exists. + test -f "$dirpart/$file" && continue + fdir=`AS_DIRNAME(["$file"])` + AS_MKDIR_P([$dirpart/$fdir]) + # echo "creating $dirpart/$file" + echo '# dummy' > "$dirpart/$file" + done + done +} +])# _AM_OUTPUT_DEPENDENCY_COMMANDS + + +# AM_OUTPUT_DEPENDENCY_COMMANDS +# ----------------------------- +# This macro should only be invoked once -- use via AC_REQUIRE. +# +# This code is only required when automatic dependency tracking +# is enabled. FIXME. This creates each '.P' file that we will +# need in order to bootstrap the dependency handling code. +AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS], +[AC_CONFIG_COMMANDS([depfiles], + [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS], + [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"]) +]) + +# Do all the work for Automake. -*- Autoconf -*- + +# Copyright (C) 1996-2013 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This macro actually does too much. Some checks are only needed if +# your package does certain things. But this isn't really a big deal. + +dnl Redefine AC_PROG_CC to automatically invoke _AM_PROG_CC_C_O. +m4_define([AC_PROG_CC], +m4_defn([AC_PROG_CC]) +[_AM_PROG_CC_C_O +]) + +# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE]) +# AM_INIT_AUTOMAKE([OPTIONS]) +# ----------------------------------------------- +# The call with PACKAGE and VERSION arguments is the old style +# call (pre autoconf-2.50), which is being phased out. PACKAGE +# and VERSION should now be passed to AC_INIT and removed from +# the call to AM_INIT_AUTOMAKE. +# We support both call styles for the transition. After +# the next Automake release, Autoconf can make the AC_INIT +# arguments mandatory, and then we can depend on a new Autoconf +# release and drop the old call support. +AC_DEFUN([AM_INIT_AUTOMAKE], +[AC_PREREQ([2.65])dnl +dnl Autoconf wants to disallow AM_ names. We explicitly allow +dnl the ones we care about. +m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl +AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl +AC_REQUIRE([AC_PROG_INSTALL])dnl +if test "`cd $srcdir && pwd`" != "`pwd`"; then + # Use -I$(srcdir) only when $(srcdir) != ., so that make's output + # is not polluted with repeated "-I." + AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl + # test to see if srcdir already configured + if test -f $srcdir/config.status; then + AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) + fi +fi + +# test whether we have cygpath +if test -z "$CYGPATH_W"; then + if (cygpath --version) >/dev/null 2>/dev/null; then + CYGPATH_W='cygpath -w' + else + CYGPATH_W=echo + fi +fi +AC_SUBST([CYGPATH_W]) + +# Define the identity of the package. +dnl Distinguish between old-style and new-style calls. +m4_ifval([$2], +[AC_DIAGNOSE([obsolete], + [$0: two- and three-arguments forms are deprecated.]) +m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl + AC_SUBST([PACKAGE], [$1])dnl + AC_SUBST([VERSION], [$2])], +[_AM_SET_OPTIONS([$1])dnl +dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT. +m4_if( + m4_ifdef([AC_PACKAGE_NAME], [ok]):m4_ifdef([AC_PACKAGE_VERSION], [ok]), + [ok:ok],, + [m4_fatal([AC_INIT should be called with package and version arguments])])dnl + AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl + AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl + +_AM_IF_OPTION([no-define],, +[AC_DEFINE_UNQUOTED([PACKAGE], ["$PACKAGE"], [Name of package]) + AC_DEFINE_UNQUOTED([VERSION], ["$VERSION"], [Version number of package])])dnl + +# Some tools Automake needs. +AC_REQUIRE([AM_SANITY_CHECK])dnl +AC_REQUIRE([AC_ARG_PROGRAM])dnl +AM_MISSING_PROG([ACLOCAL], [aclocal-${am__api_version}]) +AM_MISSING_PROG([AUTOCONF], [autoconf]) +AM_MISSING_PROG([AUTOMAKE], [automake-${am__api_version}]) +AM_MISSING_PROG([AUTOHEADER], [autoheader]) +AM_MISSING_PROG([MAKEINFO], [makeinfo]) +AC_REQUIRE([AM_PROG_INSTALL_SH])dnl +AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl +AC_REQUIRE([AC_PROG_MKDIR_P])dnl +# For better backward compatibility. To be removed once Automake 1.9.x +# dies out for good. For more background, see: +# +# +AC_SUBST([mkdir_p], ['$(MKDIR_P)']) +# We need awk for the "check" target. The system "awk" is bad on +# some platforms. +AC_REQUIRE([AC_PROG_AWK])dnl +AC_REQUIRE([AC_PROG_MAKE_SET])dnl +AC_REQUIRE([AM_SET_LEADING_DOT])dnl +_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])], + [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])], + [_AM_PROG_TAR([v7])])]) +_AM_IF_OPTION([no-dependencies],, +[AC_PROVIDE_IFELSE([AC_PROG_CC], + [_AM_DEPENDENCIES([CC])], + [m4_define([AC_PROG_CC], + m4_defn([AC_PROG_CC])[_AM_DEPENDENCIES([CC])])])dnl +AC_PROVIDE_IFELSE([AC_PROG_CXX], + [_AM_DEPENDENCIES([CXX])], + [m4_define([AC_PROG_CXX], + m4_defn([AC_PROG_CXX])[_AM_DEPENDENCIES([CXX])])])dnl +AC_PROVIDE_IFELSE([AC_PROG_OBJC], + [_AM_DEPENDENCIES([OBJC])], + [m4_define([AC_PROG_OBJC], + m4_defn([AC_PROG_OBJC])[_AM_DEPENDENCIES([OBJC])])])dnl +AC_PROVIDE_IFELSE([AC_PROG_OBJCXX], + [_AM_DEPENDENCIES([OBJCXX])], + [m4_define([AC_PROG_OBJCXX], + m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl +]) +AC_REQUIRE([AM_SILENT_RULES])dnl +dnl The testsuite driver may need to know about EXEEXT, so add the +dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This +dnl macro is hooked onto _AC_COMPILER_EXEEXT early, see below. +AC_CONFIG_COMMANDS_PRE(dnl +[m4_provide_if([_AM_COMPILER_EXEEXT], + [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl + +# POSIX will say in a future version that running "rm -f" with no argument +# is OK; and we want to be able to make that assumption in our Makefile +# recipes. So use an aggressive probe to check that the usage we want is +# actually supported "in the wild" to an acceptable degree. +# See automake bug#10828. +# To make any issue more visible, cause the running configure to be aborted +# by default if the 'rm' program in use doesn't match our expectations; the +# user can still override this though. +if rm -f && rm -fr && rm -rf; then : OK; else + cat >&2 <<'END' +Oops! + +Your 'rm' program seems unable to run without file operands specified +on the command line, even when the '-f' option is present. This is contrary +to the behaviour of most rm programs out there, and not conforming with +the upcoming POSIX standard: + +Please tell bug-automake@gnu.org about your system, including the value +of your $PATH and any error possibly output before this message. This +can help us improve future automake versions. + +END + if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then + echo 'Configuration will proceed anyway, since you have set the' >&2 + echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2 + echo >&2 + else + cat >&2 <<'END' +Aborting the configuration process, to ensure you take notice of the issue. + +You can download and install GNU coreutils to get an 'rm' implementation +that behaves properly: . + +If you want to complete the configuration process using your problematic +'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM +to "yes", and re-run configure. + +END + AC_MSG_ERROR([Your 'rm' program is bad, sorry.]) + fi +fi]) + +dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion. Do not +dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further +dnl mangled by Autoconf and run in a shell conditional statement. +m4_define([_AC_COMPILER_EXEEXT], +m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])]) + +# When config.status generates a header, we must update the stamp-h file. +# This file resides in the same directory as the config header +# that is generated. The stamp files are numbered to have different names. + +# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the +# loop where config.status creates the headers, so we can generate +# our stamp files there. +AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK], +[# Compute $1's index in $config_headers. +_am_arg=$1 +_am_stamp_count=1 +for _am_header in $config_headers :; do + case $_am_header in + $_am_arg | $_am_arg:* ) + break ;; + * ) + _am_stamp_count=`expr $_am_stamp_count + 1` ;; + esac +done +echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count]) + +# Copyright (C) 2001-2013 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# AM_PROG_INSTALL_SH +# ------------------ +# Define $install_sh. +AC_DEFUN([AM_PROG_INSTALL_SH], +[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl +if test x"${install_sh}" != xset; then + case $am_aux_dir in + *\ * | *\ *) + install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;; + *) + install_sh="\${SHELL} $am_aux_dir/install-sh" + esac +fi +AC_SUBST([install_sh])]) + +# Copyright (C) 2003-2013 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. + +# Check whether the underlying file-system supports filenames +# with a leading dot. For instance MS-DOS doesn't. +AC_DEFUN([AM_SET_LEADING_DOT], +[rm -rf .tst 2>/dev/null +mkdir .tst 2>/dev/null +if test -d .tst; then + am__leading_dot=. +else + am__leading_dot=_ +fi +rmdir .tst 2>/dev/null +AC_SUBST([am__leading_dot])]) + +# Check to see how 'make' treats includes. -*- Autoconf -*- + +# Copyright (C) 2001-2013 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# AM_MAKE_INCLUDE() +# ----------------- +# Check to see how make treats includes. +AC_DEFUN([AM_MAKE_INCLUDE], +[am_make=${MAKE-make} +cat > confinc << 'END' +am__doit: + @echo this is the am__doit target +.PHONY: am__doit +END +# If we don't find an include directive, just comment out the code. +AC_MSG_CHECKING([for style of include used by $am_make]) +am__include="#" +am__quote= +_am_result=none +# First try GNU make style include. +echo "include confinc" > confmf +# Ignore all kinds of additional output from 'make'. +case `$am_make -s -f confmf 2> /dev/null` in #( +*the\ am__doit\ target*) + am__include=include + am__quote= + _am_result=GNU + ;; +esac +# Now try BSD make style include. +if test "$am__include" = "#"; then + echo '.include "confinc"' > confmf + case `$am_make -s -f confmf 2> /dev/null` in #( + *the\ am__doit\ target*) + am__include=.include + am__quote="\"" + _am_result=BSD + ;; + esac +fi +AC_SUBST([am__include]) +AC_SUBST([am__quote]) +AC_MSG_RESULT([$_am_result]) +rm -f confinc confmf +]) + +# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*- + +# Copyright (C) 1997-2013 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# AM_MISSING_PROG(NAME, PROGRAM) +# ------------------------------ +AC_DEFUN([AM_MISSING_PROG], +[AC_REQUIRE([AM_MISSING_HAS_RUN]) +$1=${$1-"${am_missing_run}$2"} +AC_SUBST($1)]) + +# AM_MISSING_HAS_RUN +# ------------------ +# Define MISSING if not defined so far and test if it is modern enough. +# If it is, set am_missing_run to use it, otherwise, to nothing. +AC_DEFUN([AM_MISSING_HAS_RUN], +[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl +AC_REQUIRE_AUX_FILE([missing])dnl +if test x"${MISSING+set}" != xset; then + case $am_aux_dir in + *\ * | *\ *) + MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;; + *) + MISSING="\${SHELL} $am_aux_dir/missing" ;; + esac +fi +# Use eval to expand $SHELL +if eval "$MISSING --is-lightweight"; then + am_missing_run="$MISSING " +else + am_missing_run= + AC_MSG_WARN(['missing' script is too old or missing]) +fi +]) + +# Helper functions for option handling. -*- Autoconf -*- + +# Copyright (C) 2001-2013 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# _AM_MANGLE_OPTION(NAME) +# ----------------------- +AC_DEFUN([_AM_MANGLE_OPTION], +[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])]) + +# _AM_SET_OPTION(NAME) +# -------------------- +# Set option NAME. Presently that only means defining a flag for this option. +AC_DEFUN([_AM_SET_OPTION], +[m4_define(_AM_MANGLE_OPTION([$1]), [1])]) + +# _AM_SET_OPTIONS(OPTIONS) +# ------------------------ +# OPTIONS is a space-separated list of Automake options. +AC_DEFUN([_AM_SET_OPTIONS], +[m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])]) + +# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET]) +# ------------------------------------------- +# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise. +AC_DEFUN([_AM_IF_OPTION], +[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])]) + +# Copyright (C) 1999-2013 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# _AM_PROG_CC_C_O +# --------------- +# Like AC_PROG_CC_C_O, but changed for automake. We rewrite AC_PROG_CC +# to automatically call this. +AC_DEFUN([_AM_PROG_CC_C_O], +[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl +AC_REQUIRE_AUX_FILE([compile])dnl +AC_LANG_PUSH([C])dnl +AC_CACHE_CHECK( + [whether $CC understands -c and -o together], + [am_cv_prog_cc_c_o], + [AC_LANG_CONFTEST([AC_LANG_PROGRAM([])]) + # Make sure it works both with $CC and with simple cc. + # Following AC_PROG_CC_C_O, we do the test twice because some + # compilers refuse to overwrite an existing .o file with -o, + # though they will create one. + am_cv_prog_cc_c_o=yes + for am_i in 1 2; do + if AM_RUN_LOG([$CC -c conftest.$ac_ext -o conftest2.$ac_objext]) \ + && test -f conftest2.$ac_objext; then + : OK + else + am_cv_prog_cc_c_o=no + break + fi + done + rm -f core conftest* + unset am_i]) +if test "$am_cv_prog_cc_c_o" != yes; then + # Losing compiler, so override with the script. + # FIXME: It is wrong to rewrite CC. + # But if we don't then we get into trouble of one sort or another. + # A longer-term fix would be to have automake use am__CC in this case, + # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)" + CC="$am_aux_dir/compile $CC" +fi +AC_LANG_POP([C])]) + +# For backward compatibility. +AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])]) + +# Copyright (C) 2001-2013 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# AM_RUN_LOG(COMMAND) +# ------------------- +# Run COMMAND, save the exit status in ac_status, and log it. +# (This has been adapted from Autoconf's _AC_RUN_LOG macro.) +AC_DEFUN([AM_RUN_LOG], +[{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD + ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD + (exit $ac_status); }]) + +# Check to make sure that the build environment is sane. -*- Autoconf -*- + +# Copyright (C) 1996-2013 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# AM_SANITY_CHECK +# --------------- +AC_DEFUN([AM_SANITY_CHECK], +[AC_MSG_CHECKING([whether build environment is sane]) +# Reject unsafe characters in $srcdir or the absolute working directory +# name. Accept space and tab only in the latter. +am_lf=' +' +case `pwd` in + *[[\\\"\#\$\&\'\`$am_lf]]*) + AC_MSG_ERROR([unsafe absolute working directory name]);; +esac +case $srcdir in + *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*) + AC_MSG_ERROR([unsafe srcdir value: '$srcdir']);; +esac + +# Do 'set' in a subshell so we don't clobber the current shell's +# arguments. Must try -L first in case configure is actually a +# symlink; some systems play weird games with the mod time of symlinks +# (eg FreeBSD returns the mod time of the symlink's containing +# directory). +if ( + am_has_slept=no + for am_try in 1 2; do + echo "timestamp, slept: $am_has_slept" > conftest.file + set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null` + if test "$[*]" = "X"; then + # -L didn't work. + set X `ls -t "$srcdir/configure" conftest.file` + fi + if test "$[*]" != "X $srcdir/configure conftest.file" \ + && test "$[*]" != "X conftest.file $srcdir/configure"; then + + # If neither matched, then we have a broken ls. This can happen + # if, for instance, CONFIG_SHELL is bash and it inherits a + # broken ls alias from the environment. This has actually + # happened. Such a system could not be considered "sane". + AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken + alias in your environment]) + fi + if test "$[2]" = conftest.file || test $am_try -eq 2; then + break + fi + # Just in case. + sleep 1 + am_has_slept=yes + done + test "$[2]" = conftest.file + ) +then + # Ok. + : +else + AC_MSG_ERROR([newly created file is older than distributed files! +Check your system clock]) +fi +AC_MSG_RESULT([yes]) +# If we didn't sleep, we still need to ensure time stamps of config.status and +# generated files are strictly newer. +am_sleep_pid= +if grep 'slept: no' conftest.file >/dev/null 2>&1; then + ( sleep 1 ) & + am_sleep_pid=$! +fi +AC_CONFIG_COMMANDS_PRE( + [AC_MSG_CHECKING([that generated files are newer than configure]) + if test -n "$am_sleep_pid"; then + # Hide warnings about reused PIDs. + wait $am_sleep_pid 2>/dev/null + fi + AC_MSG_RESULT([done])]) +rm -f conftest.file +]) + +# Copyright (C) 2009-2013 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# AM_SILENT_RULES([DEFAULT]) +# -------------------------- +# Enable less verbose build rules; with the default set to DEFAULT +# ("yes" being less verbose, "no" or empty being verbose). +AC_DEFUN([AM_SILENT_RULES], +[AC_ARG_ENABLE([silent-rules], [dnl +AS_HELP_STRING( + [--enable-silent-rules], + [less verbose build output (undo: "make V=1")]) +AS_HELP_STRING( + [--disable-silent-rules], + [verbose build output (undo: "make V=0")])dnl +]) +case $enable_silent_rules in @%:@ ((( + yes) AM_DEFAULT_VERBOSITY=0;; + no) AM_DEFAULT_VERBOSITY=1;; + *) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);; +esac +dnl +dnl A few 'make' implementations (e.g., NonStop OS and NextStep) +dnl do not support nested variable expansions. +dnl See automake bug#9928 and bug#10237. +am_make=${MAKE-make} +AC_CACHE_CHECK([whether $am_make supports nested variables], + [am_cv_make_support_nested_variables], + [if AS_ECHO([['TRUE=$(BAR$(V)) +BAR0=false +BAR1=true +V=1 +am__doit: + @$(TRUE) +.PHONY: am__doit']]) | $am_make -f - >/dev/null 2>&1; then + am_cv_make_support_nested_variables=yes +else + am_cv_make_support_nested_variables=no +fi]) +if test $am_cv_make_support_nested_variables = yes; then + dnl Using '$V' instead of '$(V)' breaks IRIX make. + AM_V='$(V)' + AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' +else + AM_V=$AM_DEFAULT_VERBOSITY + AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY +fi +AC_SUBST([AM_V])dnl +AM_SUBST_NOTMAKE([AM_V])dnl +AC_SUBST([AM_DEFAULT_V])dnl +AM_SUBST_NOTMAKE([AM_DEFAULT_V])dnl +AC_SUBST([AM_DEFAULT_VERBOSITY])dnl +AM_BACKSLASH='\' +AC_SUBST([AM_BACKSLASH])dnl +_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl +]) + +# Copyright (C) 2001-2013 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# AM_PROG_INSTALL_STRIP +# --------------------- +# One issue with vendor 'install' (even GNU) is that you can't +# specify the program used to strip binaries. This is especially +# annoying in cross-compiling environments, where the build's strip +# is unlikely to handle the host's binaries. +# Fortunately install-sh will honor a STRIPPROG variable, so we +# always use install-sh in "make install-strip", and initialize +# STRIPPROG with the value of the STRIP variable (set by the user). +AC_DEFUN([AM_PROG_INSTALL_STRIP], +[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl +# Installed binaries are usually stripped using 'strip' when the user +# run "make install-strip". However 'strip' might not be the right +# tool to use in cross-compilation environments, therefore Automake +# will honor the 'STRIP' environment variable to overrule this program. +dnl Don't test for $cross_compiling = yes, because it might be 'maybe'. +if test "$cross_compiling" != no; then + AC_CHECK_TOOL([STRIP], [strip], :) +fi +INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" +AC_SUBST([INSTALL_STRIP_PROGRAM])]) + +# Copyright (C) 2006-2013 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# _AM_SUBST_NOTMAKE(VARIABLE) +# --------------------------- +# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in. +# This macro is traced by Automake. +AC_DEFUN([_AM_SUBST_NOTMAKE]) + +# AM_SUBST_NOTMAKE(VARIABLE) +# -------------------------- +# Public sister of _AM_SUBST_NOTMAKE. +AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)]) + +# Check how to create a tarball. -*- Autoconf -*- + +# Copyright (C) 2004-2013 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# _AM_PROG_TAR(FORMAT) +# -------------------- +# Check how to create a tarball in format FORMAT. +# FORMAT should be one of 'v7', 'ustar', or 'pax'. +# +# Substitute a variable $(am__tar) that is a command +# writing to stdout a FORMAT-tarball containing the directory +# $tardir. +# tardir=directory && $(am__tar) > result.tar +# +# Substitute a variable $(am__untar) that extract such +# a tarball read from stdin. +# $(am__untar) < result.tar +# +AC_DEFUN([_AM_PROG_TAR], +[# Always define AMTAR for backward compatibility. Yes, it's still used +# in the wild :-( We should find a proper way to deprecate it ... +AC_SUBST([AMTAR], ['$${TAR-tar}']) + +# We'll loop over all known methods to create a tar archive until one works. +_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none' + +m4_if([$1], [v7], + [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'], + + [m4_case([$1], + [ustar], + [# The POSIX 1988 'ustar' format is defined with fixed-size fields. + # There is notably a 21 bits limit for the UID and the GID. In fact, + # the 'pax' utility can hang on bigger UID/GID (see automake bug#8343 + # and bug#13588). + am_max_uid=2097151 # 2^21 - 1 + am_max_gid=$am_max_uid + # The $UID and $GID variables are not portable, so we need to resort + # to the POSIX-mandated id(1) utility. Errors in the 'id' calls + # below are definitely unexpected, so allow the users to see them + # (that is, avoid stderr redirection). + am_uid=`id -u || echo unknown` + am_gid=`id -g || echo unknown` + AC_MSG_CHECKING([whether UID '$am_uid' is supported by ustar format]) + if test $am_uid -le $am_max_uid; then + AC_MSG_RESULT([yes]) + else + AC_MSG_RESULT([no]) + _am_tools=none + fi + AC_MSG_CHECKING([whether GID '$am_gid' is supported by ustar format]) + if test $am_gid -le $am_max_gid; then + AC_MSG_RESULT([yes]) + else + AC_MSG_RESULT([no]) + _am_tools=none + fi], + + [pax], + [], + + [m4_fatal([Unknown tar format])]) + + AC_MSG_CHECKING([how to create a $1 tar archive]) + + # Go ahead even if we have the value already cached. We do so because we + # need to set the values for the 'am__tar' and 'am__untar' variables. + _am_tools=${am_cv_prog_tar_$1-$_am_tools} + + for _am_tool in $_am_tools; do + case $_am_tool in + gnutar) + for _am_tar in tar gnutar gtar; do + AM_RUN_LOG([$_am_tar --version]) && break + done + am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"' + am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"' + am__untar="$_am_tar -xf -" + ;; + plaintar) + # Must skip GNU tar: if it does not support --format= it doesn't create + # ustar tarball either. + (tar --version) >/dev/null 2>&1 && continue + am__tar='tar chf - "$$tardir"' + am__tar_='tar chf - "$tardir"' + am__untar='tar xf -' + ;; + pax) + am__tar='pax -L -x $1 -w "$$tardir"' + am__tar_='pax -L -x $1 -w "$tardir"' + am__untar='pax -r' + ;; + cpio) + am__tar='find "$$tardir" -print | cpio -o -H $1 -L' + am__tar_='find "$tardir" -print | cpio -o -H $1 -L' + am__untar='cpio -i -H $1 -d' + ;; + none) + am__tar=false + am__tar_=false + am__untar=false + ;; + esac + + # If the value was cached, stop now. We just wanted to have am__tar + # and am__untar set. + test -n "${am_cv_prog_tar_$1}" && break + + # tar/untar a dummy directory, and stop if the command works. + rm -rf conftest.dir + mkdir conftest.dir + echo GrepMe > conftest.dir/file + AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar]) + rm -rf conftest.dir + if test -s conftest.tar; then + AM_RUN_LOG([$am__untar /dev/null 2>&1 && break + fi + done + rm -rf conftest.dir + + AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool]) + AC_MSG_RESULT([$am_cv_prog_tar_$1])]) + +AC_SUBST([am__tar]) +AC_SUBST([am__untar]) +]) # _AM_PROG_TAR + diff --git a/bibliotheque-graphique-iut-1.1/ar-lib b/bibliotheque-graphique-iut-1.1/ar-lib new file mode 100755 index 0000000..67f5f36 --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/ar-lib @@ -0,0 +1,270 @@ +#! /bin/sh +# Wrapper for Microsoft lib.exe + +me=ar-lib +scriptversion=2012-03-01.08; # UTC + +# Copyright (C) 2010-2012 Free Software Foundation, Inc. +# Written by Peter Rosin . +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program that contains a +# configuration script generated by Autoconf, you may include it under +# the same distribution terms that you use for the rest of that program. + +# This file is maintained in Automake, please report +# bugs to or send patches to +# . + + +# func_error message +func_error () +{ + echo "$me: $1" 1>&2 + exit 1 +} + +file_conv= + +# func_file_conv build_file +# Convert a $build file to $host form and store it in $file +# Currently only supports Windows hosts. +func_file_conv () +{ + file=$1 + case $file in + / | /[!/]*) # absolute file, and not a UNC file + if test -z "$file_conv"; then + # lazily determine how to convert abs files + case `uname -s` in + MINGW*) + file_conv=mingw + ;; + CYGWIN*) + file_conv=cygwin + ;; + *) + file_conv=wine + ;; + esac + fi + case $file_conv in + mingw) + file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'` + ;; + cygwin) + file=`cygpath -m "$file" || echo "$file"` + ;; + wine) + file=`winepath -w "$file" || echo "$file"` + ;; + esac + ;; + esac +} + +# func_at_file at_file operation archive +# Iterate over all members in AT_FILE performing OPERATION on ARCHIVE +# for each of them. +# When interpreting the content of the @FILE, do NOT use func_file_conv, +# since the user would need to supply preconverted file names to +# binutils ar, at least for MinGW. +func_at_file () +{ + operation=$2 + archive=$3 + at_file_contents=`cat "$1"` + eval set x "$at_file_contents" + shift + + for member + do + $AR -NOLOGO $operation:"$member" "$archive" || exit $? + done +} + +case $1 in + '') + func_error "no command. Try '$0 --help' for more information." + ;; + -h | --h*) + cat <. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program that contains a +# configuration script generated by Autoconf, you may include it under +# the same distribution terms that you use for the rest of that program. + +# This file is maintained in Automake, please report +# bugs to or send patches to +# . + +nl=' +' + +# We need space, tab and new line, in precisely that order. Quoting is +# there to prevent tools from complaining about whitespace usage. +IFS=" "" $nl" + +file_conv= + +# func_file_conv build_file lazy +# Convert a $build file to $host form and store it in $file +# Currently only supports Windows hosts. If the determined conversion +# type is listed in (the comma separated) LAZY, no conversion will +# take place. +func_file_conv () +{ + file=$1 + case $file in + / | /[!/]*) # absolute file, and not a UNC file + if test -z "$file_conv"; then + # lazily determine how to convert abs files + case `uname -s` in + MINGW*) + file_conv=mingw + ;; + CYGWIN*) + file_conv=cygwin + ;; + *) + file_conv=wine + ;; + esac + fi + case $file_conv/,$2, in + *,$file_conv,*) + ;; + mingw/*) + file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'` + ;; + cygwin/*) + file=`cygpath -m "$file" || echo "$file"` + ;; + wine/*) + file=`winepath -w "$file" || echo "$file"` + ;; + esac + ;; + esac +} + +# func_cl_dashL linkdir +# Make cl look for libraries in LINKDIR +func_cl_dashL () +{ + func_file_conv "$1" + if test -z "$lib_path"; then + lib_path=$file + else + lib_path="$lib_path;$file" + fi + linker_opts="$linker_opts -LIBPATH:$file" +} + +# func_cl_dashl library +# Do a library search-path lookup for cl +func_cl_dashl () +{ + lib=$1 + found=no + save_IFS=$IFS + IFS=';' + for dir in $lib_path $LIB + do + IFS=$save_IFS + if $shared && test -f "$dir/$lib.dll.lib"; then + found=yes + lib=$dir/$lib.dll.lib + break + fi + if test -f "$dir/$lib.lib"; then + found=yes + lib=$dir/$lib.lib + break + fi + if test -f "$dir/lib$lib.a"; then + found=yes + lib=$dir/lib$lib.a + break + fi + done + IFS=$save_IFS + + if test "$found" != yes; then + lib=$lib.lib + fi +} + +# func_cl_wrapper cl arg... +# Adjust compile command to suit cl +func_cl_wrapper () +{ + # Assume a capable shell + lib_path= + shared=: + linker_opts= + for arg + do + if test -n "$eat"; then + eat= + else + case $1 in + -o) + # configure might choose to run compile as 'compile cc -o foo foo.c'. + eat=1 + case $2 in + *.o | *.[oO][bB][jJ]) + func_file_conv "$2" + set x "$@" -Fo"$file" + shift + ;; + *) + func_file_conv "$2" + set x "$@" -Fe"$file" + shift + ;; + esac + ;; + -I) + eat=1 + func_file_conv "$2" mingw + set x "$@" -I"$file" + shift + ;; + -I*) + func_file_conv "${1#-I}" mingw + set x "$@" -I"$file" + shift + ;; + -l) + eat=1 + func_cl_dashl "$2" + set x "$@" "$lib" + shift + ;; + -l*) + func_cl_dashl "${1#-l}" + set x "$@" "$lib" + shift + ;; + -L) + eat=1 + func_cl_dashL "$2" + ;; + -L*) + func_cl_dashL "${1#-L}" + ;; + -static) + shared=false + ;; + -Wl,*) + arg=${1#-Wl,} + save_ifs="$IFS"; IFS=',' + for flag in $arg; do + IFS="$save_ifs" + linker_opts="$linker_opts $flag" + done + IFS="$save_ifs" + ;; + -Xlinker) + eat=1 + linker_opts="$linker_opts $2" + ;; + -*) + set x "$@" "$1" + shift + ;; + *.cc | *.CC | *.cxx | *.CXX | *.[cC]++) + func_file_conv "$1" + set x "$@" -Tp"$file" + shift + ;; + *.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO]) + func_file_conv "$1" mingw + set x "$@" "$file" + shift + ;; + *) + set x "$@" "$1" + shift + ;; + esac + fi + shift + done + if test -n "$linker_opts"; then + linker_opts="-link$linker_opts" + fi + exec "$@" $linker_opts + exit 1 +} + +eat= + +case $1 in + '') + echo "$0: No command. Try '$0 --help' for more information." 1>&2 + exit 1; + ;; + -h | --h*) + cat <<\EOF +Usage: compile [--help] [--version] PROGRAM [ARGS] + +Wrapper for compilers which do not understand '-c -o'. +Remove '-o dest.o' from ARGS, run PROGRAM with the remaining +arguments, and rename the output as expected. + +If you are trying to build a whole package this is not the +right script to run: please start by reading the file 'INSTALL'. + +Report bugs to . +EOF + exit $? + ;; + -v | --v*) + echo "compile $scriptversion" + exit $? + ;; + cl | *[/\\]cl | cl.exe | *[/\\]cl.exe ) + func_cl_wrapper "$@" # Doesn't return... + ;; +esac + +ofile= +cfile= + +for arg +do + if test -n "$eat"; then + eat= + else + case $1 in + -o) + # configure might choose to run compile as 'compile cc -o foo foo.c'. + # So we strip '-o arg' only if arg is an object. + eat=1 + case $2 in + *.o | *.obj) + ofile=$2 + ;; + *) + set x "$@" -o "$2" + shift + ;; + esac + ;; + *.c) + cfile=$1 + set x "$@" "$1" + shift + ;; + *) + set x "$@" "$1" + shift + ;; + esac + fi + shift +done + +if test -z "$ofile" || test -z "$cfile"; then + # If no '-o' option was seen then we might have been invoked from a + # pattern rule where we don't need one. That is ok -- this is a + # normal compilation that the losing compiler can handle. If no + # '.c' file was seen then we are probably linking. That is also + # ok. + exec "$@" +fi + +# Name of file we expect compiler to create. +cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'` + +# Create the lock directory. +# Note: use '[/\\:.-]' here to ensure that we don't use the same name +# that we are using for the .o file. Also, base the name on the expected +# object file name, since that is what matters with a parallel build. +lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d +while true; do + if mkdir "$lockdir" >/dev/null 2>&1; then + break + fi + sleep 1 +done +# FIXME: race condition here if user kills between mkdir and trap. +trap "rmdir '$lockdir'; exit 1" 1 2 15 + +# Run the compile. +"$@" +ret=$? + +if test -f "$cofile"; then + test "$cofile" = "$ofile" || mv "$cofile" "$ofile" +elif test -f "${cofile}bj"; then + test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile" +fi + +rmdir "$lockdir" +exit $ret + +# Local Variables: +# mode: shell-script +# sh-indentation: 2 +# eval: (add-hook 'write-file-hooks 'time-stamp) +# time-stamp-start: "scriptversion=" +# time-stamp-format: "%:y-%02m-%02d.%02H" +# time-stamp-time-zone: "UTC" +# time-stamp-end: "; # UTC" +# End: diff --git a/bibliotheque-graphique-iut-1.1/config.guess b/bibliotheque-graphique-iut-1.1/config.guess new file mode 100755 index 0000000..c0adba9 --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/config.guess @@ -0,0 +1,1530 @@ +#! /bin/sh +# Attempt to guess a canonical system name. +# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, +# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, +# 2011, 2012 Free Software Foundation, Inc. + +timestamp='2012-06-10' + +# This file is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, see . +# +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program that contains a +# configuration script generated by Autoconf, you may include it under +# the same distribution terms that you use for the rest of that program. + + +# Originally written by Per Bothner. Please send patches (context +# diff format) to and include a ChangeLog +# entry. +# +# This script attempts to guess a canonical system name similar to +# config.sub. If it succeeds, it prints the system name on stdout, and +# exits with 0. Otherwise, it exits with 1. +# +# You can get the latest version of this script from: +# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD + +me=`echo "$0" | sed -e 's,.*/,,'` + +usage="\ +Usage: $0 [OPTION] + +Output the configuration name of the system \`$me' is run on. + +Operation modes: + -h, --help print this help, then exit + -t, --time-stamp print date of last modification, then exit + -v, --version print version number, then exit + +Report bugs and patches to ." + +version="\ +GNU config.guess ($timestamp) + +Originally written by Per Bothner. +Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, +2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 +Free Software Foundation, Inc. + +This is free software; see the source for copying conditions. There is NO +warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." + +help=" +Try \`$me --help' for more information." + +# Parse command line +while test $# -gt 0 ; do + case $1 in + --time-stamp | --time* | -t ) + echo "$timestamp" ; exit ;; + --version | -v ) + echo "$version" ; exit ;; + --help | --h* | -h ) + echo "$usage"; exit ;; + -- ) # Stop option processing + shift; break ;; + - ) # Use stdin as input. + break ;; + -* ) + echo "$me: invalid option $1$help" >&2 + exit 1 ;; + * ) + break ;; + esac +done + +if test $# != 0; then + echo "$me: too many arguments$help" >&2 + exit 1 +fi + +trap 'exit 1' 1 2 15 + +# CC_FOR_BUILD -- compiler used by this script. Note that the use of a +# compiler to aid in system detection is discouraged as it requires +# temporary files to be created and, as you can see below, it is a +# headache to deal with in a portable fashion. + +# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still +# use `HOST_CC' if defined, but it is deprecated. + +# Portable tmp directory creation inspired by the Autoconf team. + +set_cc_for_build=' +trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; +trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; +: ${TMPDIR=/tmp} ; + { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || + { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || + { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || + { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; +dummy=$tmp/dummy ; +tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; +case $CC_FOR_BUILD,$HOST_CC,$CC in + ,,) echo "int x;" > $dummy.c ; + for c in cc gcc c89 c99 ; do + if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then + CC_FOR_BUILD="$c"; break ; + fi ; + done ; + if test x"$CC_FOR_BUILD" = x ; then + CC_FOR_BUILD=no_compiler_found ; + fi + ;; + ,,*) CC_FOR_BUILD=$CC ;; + ,*,*) CC_FOR_BUILD=$HOST_CC ;; +esac ; set_cc_for_build= ;' + +# This is needed to find uname on a Pyramid OSx when run in the BSD universe. +# (ghazi@noc.rutgers.edu 1994-08-24) +if (test -f /.attbin/uname) >/dev/null 2>&1 ; then + PATH=$PATH:/.attbin ; export PATH +fi + +UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown +UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown +UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown +UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown + +# Note: order is significant - the case branches are not exclusive. + +case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in + *:NetBSD:*:*) + # NetBSD (nbsd) targets should (where applicable) match one or + # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*, + # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently + # switched to ELF, *-*-netbsd* would select the old + # object file format. This provides both forward + # compatibility and a consistent mechanism for selecting the + # object file format. + # + # Note: NetBSD doesn't particularly care about the vendor + # portion of the name. We always set it to "unknown". + sysctl="sysctl -n hw.machine_arch" + UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ + /usr/sbin/$sysctl 2>/dev/null || echo unknown)` + case "${UNAME_MACHINE_ARCH}" in + armeb) machine=armeb-unknown ;; + arm*) machine=arm-unknown ;; + sh3el) machine=shl-unknown ;; + sh3eb) machine=sh-unknown ;; + sh5el) machine=sh5le-unknown ;; + *) machine=${UNAME_MACHINE_ARCH}-unknown ;; + esac + # The Operating System including object format, if it has switched + # to ELF recently, or will in the future. + case "${UNAME_MACHINE_ARCH}" in + arm*|i386|m68k|ns32k|sh3*|sparc|vax) + eval $set_cc_for_build + if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ + | grep -q __ELF__ + then + # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). + # Return netbsd for either. FIX? + os=netbsd + else + os=netbsdelf + fi + ;; + *) + os=netbsd + ;; + esac + # The OS release + # Debian GNU/NetBSD machines have a different userland, and + # thus, need a distinct triplet. However, they do not need + # kernel version information, so it can be replaced with a + # suitable tag, in the style of linux-gnu. + case "${UNAME_VERSION}" in + Debian*) + release='-gnu' + ;; + *) + release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` + ;; + esac + # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: + # contains redundant information, the shorter form: + # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. + echo "${machine}-${os}${release}" + exit ;; + *:OpenBSD:*:*) + UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` + echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} + exit ;; + *:ekkoBSD:*:*) + echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} + exit ;; + *:SolidBSD:*:*) + echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} + exit ;; + macppc:MirBSD:*:*) + echo powerpc-unknown-mirbsd${UNAME_RELEASE} + exit ;; + *:MirBSD:*:*) + echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} + exit ;; + alpha:OSF1:*:*) + case $UNAME_RELEASE in + *4.0) + UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` + ;; + *5.*) + UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` + ;; + esac + # According to Compaq, /usr/sbin/psrinfo has been available on + # OSF/1 and Tru64 systems produced since 1995. I hope that + # covers most systems running today. This code pipes the CPU + # types through head -n 1, so we only detect the type of CPU 0. + ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` + case "$ALPHA_CPU_TYPE" in + "EV4 (21064)") + UNAME_MACHINE="alpha" ;; + "EV4.5 (21064)") + UNAME_MACHINE="alpha" ;; + "LCA4 (21066/21068)") + UNAME_MACHINE="alpha" ;; + "EV5 (21164)") + UNAME_MACHINE="alphaev5" ;; + "EV5.6 (21164A)") + UNAME_MACHINE="alphaev56" ;; + "EV5.6 (21164PC)") + UNAME_MACHINE="alphapca56" ;; + "EV5.7 (21164PC)") + UNAME_MACHINE="alphapca57" ;; + "EV6 (21264)") + UNAME_MACHINE="alphaev6" ;; + "EV6.7 (21264A)") + UNAME_MACHINE="alphaev67" ;; + "EV6.8CB (21264C)") + UNAME_MACHINE="alphaev68" ;; + "EV6.8AL (21264B)") + UNAME_MACHINE="alphaev68" ;; + "EV6.8CX (21264D)") + UNAME_MACHINE="alphaev68" ;; + "EV6.9A (21264/EV69A)") + UNAME_MACHINE="alphaev69" ;; + "EV7 (21364)") + UNAME_MACHINE="alphaev7" ;; + "EV7.9 (21364A)") + UNAME_MACHINE="alphaev79" ;; + esac + # A Pn.n version is a patched version. + # A Vn.n version is a released version. + # A Tn.n version is a released field test version. + # A Xn.n version is an unreleased experimental baselevel. + # 1.2 uses "1.2" for uname -r. + echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` + # Reset EXIT trap before exiting to avoid spurious non-zero exit code. + exitcode=$? + trap '' 0 + exit $exitcode ;; + Alpha\ *:Windows_NT*:*) + # How do we know it's Interix rather than the generic POSIX subsystem? + # Should we change UNAME_MACHINE based on the output of uname instead + # of the specific Alpha model? + echo alpha-pc-interix + exit ;; + 21064:Windows_NT:50:3) + echo alpha-dec-winnt3.5 + exit ;; + Amiga*:UNIX_System_V:4.0:*) + echo m68k-unknown-sysv4 + exit ;; + *:[Aa]miga[Oo][Ss]:*:*) + echo ${UNAME_MACHINE}-unknown-amigaos + exit ;; + *:[Mm]orph[Oo][Ss]:*:*) + echo ${UNAME_MACHINE}-unknown-morphos + exit ;; + *:OS/390:*:*) + echo i370-ibm-openedition + exit ;; + *:z/VM:*:*) + echo s390-ibm-zvmoe + exit ;; + *:OS400:*:*) + echo powerpc-ibm-os400 + exit ;; + arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) + echo arm-acorn-riscix${UNAME_RELEASE} + exit ;; + arm:riscos:*:*|arm:RISCOS:*:*) + echo arm-unknown-riscos + exit ;; + SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) + echo hppa1.1-hitachi-hiuxmpp + exit ;; + Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) + # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. + if test "`(/bin/universe) 2>/dev/null`" = att ; then + echo pyramid-pyramid-sysv3 + else + echo pyramid-pyramid-bsd + fi + exit ;; + NILE*:*:*:dcosx) + echo pyramid-pyramid-svr4 + exit ;; + DRS?6000:unix:4.0:6*) + echo sparc-icl-nx6 + exit ;; + DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) + case `/usr/bin/uname -p` in + sparc) echo sparc-icl-nx7; exit ;; + esac ;; + s390x:SunOS:*:*) + echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit ;; + sun4H:SunOS:5.*:*) + echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit ;; + sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) + echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit ;; + i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) + echo i386-pc-auroraux${UNAME_RELEASE} + exit ;; + i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) + eval $set_cc_for_build + SUN_ARCH="i386" + # If there is a compiler, see if it is configured for 64-bit objects. + # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. + # This test works for both compilers. + if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then + if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ + (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ + grep IS_64BIT_ARCH >/dev/null + then + SUN_ARCH="x86_64" + fi + fi + echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit ;; + sun4*:SunOS:6*:*) + # According to config.sub, this is the proper way to canonicalize + # SunOS6. Hard to guess exactly what SunOS6 will be like, but + # it's likely to be more like Solaris than SunOS4. + echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit ;; + sun4*:SunOS:*:*) + case "`/usr/bin/arch -k`" in + Series*|S4*) + UNAME_RELEASE=`uname -v` + ;; + esac + # Japanese Language versions have a version number like `4.1.3-JL'. + echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` + exit ;; + sun3*:SunOS:*:*) + echo m68k-sun-sunos${UNAME_RELEASE} + exit ;; + sun*:*:4.2BSD:*) + UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` + test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 + case "`/bin/arch`" in + sun3) + echo m68k-sun-sunos${UNAME_RELEASE} + ;; + sun4) + echo sparc-sun-sunos${UNAME_RELEASE} + ;; + esac + exit ;; + aushp:SunOS:*:*) + echo sparc-auspex-sunos${UNAME_RELEASE} + exit ;; + # The situation for MiNT is a little confusing. The machine name + # can be virtually everything (everything which is not + # "atarist" or "atariste" at least should have a processor + # > m68000). The system name ranges from "MiNT" over "FreeMiNT" + # to the lowercase version "mint" (or "freemint"). Finally + # the system name "TOS" denotes a system which is actually not + # MiNT. But MiNT is downward compatible to TOS, so this should + # be no problem. + atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) + echo m68k-atari-mint${UNAME_RELEASE} + exit ;; + atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) + echo m68k-atari-mint${UNAME_RELEASE} + exit ;; + *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) + echo m68k-atari-mint${UNAME_RELEASE} + exit ;; + milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) + echo m68k-milan-mint${UNAME_RELEASE} + exit ;; + hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) + echo m68k-hades-mint${UNAME_RELEASE} + exit ;; + *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) + echo m68k-unknown-mint${UNAME_RELEASE} + exit ;; + m68k:machten:*:*) + echo m68k-apple-machten${UNAME_RELEASE} + exit ;; + powerpc:machten:*:*) + echo powerpc-apple-machten${UNAME_RELEASE} + exit ;; + RISC*:Mach:*:*) + echo mips-dec-mach_bsd4.3 + exit ;; + RISC*:ULTRIX:*:*) + echo mips-dec-ultrix${UNAME_RELEASE} + exit ;; + VAX*:ULTRIX*:*:*) + echo vax-dec-ultrix${UNAME_RELEASE} + exit ;; + 2020:CLIX:*:* | 2430:CLIX:*:*) + echo clipper-intergraph-clix${UNAME_RELEASE} + exit ;; + mips:*:*:UMIPS | mips:*:*:RISCos) + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c +#ifdef __cplusplus +#include /* for printf() prototype */ + int main (int argc, char *argv[]) { +#else + int main (argc, argv) int argc; char *argv[]; { +#endif + #if defined (host_mips) && defined (MIPSEB) + #if defined (SYSTYPE_SYSV) + printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); + #endif + #if defined (SYSTYPE_SVR4) + printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); + #endif + #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) + printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); + #endif + #endif + exit (-1); + } +EOF + $CC_FOR_BUILD -o $dummy $dummy.c && + dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && + SYSTEM_NAME=`$dummy $dummyarg` && + { echo "$SYSTEM_NAME"; exit; } + echo mips-mips-riscos${UNAME_RELEASE} + exit ;; + Motorola:PowerMAX_OS:*:*) + echo powerpc-motorola-powermax + exit ;; + Motorola:*:4.3:PL8-*) + echo powerpc-harris-powermax + exit ;; + Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) + echo powerpc-harris-powermax + exit ;; + Night_Hawk:Power_UNIX:*:*) + echo powerpc-harris-powerunix + exit ;; + m88k:CX/UX:7*:*) + echo m88k-harris-cxux7 + exit ;; + m88k:*:4*:R4*) + echo m88k-motorola-sysv4 + exit ;; + m88k:*:3*:R3*) + echo m88k-motorola-sysv3 + exit ;; + AViiON:dgux:*:*) + # DG/UX returns AViiON for all architectures + UNAME_PROCESSOR=`/usr/bin/uname -p` + if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] + then + if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ + [ ${TARGET_BINARY_INTERFACE}x = x ] + then + echo m88k-dg-dgux${UNAME_RELEASE} + else + echo m88k-dg-dguxbcs${UNAME_RELEASE} + fi + else + echo i586-dg-dgux${UNAME_RELEASE} + fi + exit ;; + M88*:DolphinOS:*:*) # DolphinOS (SVR3) + echo m88k-dolphin-sysv3 + exit ;; + M88*:*:R3*:*) + # Delta 88k system running SVR3 + echo m88k-motorola-sysv3 + exit ;; + XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) + echo m88k-tektronix-sysv3 + exit ;; + Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) + echo m68k-tektronix-bsd + exit ;; + *:IRIX*:*:*) + echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` + exit ;; + ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. + echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id + exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' + i*86:AIX:*:*) + echo i386-ibm-aix + exit ;; + ia64:AIX:*:*) + if [ -x /usr/bin/oslevel ] ; then + IBM_REV=`/usr/bin/oslevel` + else + IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} + fi + echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} + exit ;; + *:AIX:2:3) + if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c + #include + + main() + { + if (!__power_pc()) + exit(1); + puts("powerpc-ibm-aix3.2.5"); + exit(0); + } +EOF + if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` + then + echo "$SYSTEM_NAME" + else + echo rs6000-ibm-aix3.2.5 + fi + elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then + echo rs6000-ibm-aix3.2.4 + else + echo rs6000-ibm-aix3.2 + fi + exit ;; + *:AIX:*:[4567]) + IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` + if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then + IBM_ARCH=rs6000 + else + IBM_ARCH=powerpc + fi + if [ -x /usr/bin/oslevel ] ; then + IBM_REV=`/usr/bin/oslevel` + else + IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} + fi + echo ${IBM_ARCH}-ibm-aix${IBM_REV} + exit ;; + *:AIX:*:*) + echo rs6000-ibm-aix + exit ;; + ibmrt:4.4BSD:*|romp-ibm:BSD:*) + echo romp-ibm-bsd4.4 + exit ;; + ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and + echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to + exit ;; # report: romp-ibm BSD 4.3 + *:BOSX:*:*) + echo rs6000-bull-bosx + exit ;; + DPX/2?00:B.O.S.:*:*) + echo m68k-bull-sysv3 + exit ;; + 9000/[34]??:4.3bsd:1.*:*) + echo m68k-hp-bsd + exit ;; + hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) + echo m68k-hp-bsd4.4 + exit ;; + 9000/[34678]??:HP-UX:*:*) + HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` + case "${UNAME_MACHINE}" in + 9000/31? ) HP_ARCH=m68000 ;; + 9000/[34]?? ) HP_ARCH=m68k ;; + 9000/[678][0-9][0-9]) + if [ -x /usr/bin/getconf ]; then + sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` + sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` + case "${sc_cpu_version}" in + 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 + 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 + 532) # CPU_PA_RISC2_0 + case "${sc_kernel_bits}" in + 32) HP_ARCH="hppa2.0n" ;; + 64) HP_ARCH="hppa2.0w" ;; + '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 + esac ;; + esac + fi + if [ "${HP_ARCH}" = "" ]; then + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c + + #define _HPUX_SOURCE + #include + #include + + int main () + { + #if defined(_SC_KERNEL_BITS) + long bits = sysconf(_SC_KERNEL_BITS); + #endif + long cpu = sysconf (_SC_CPU_VERSION); + + switch (cpu) + { + case CPU_PA_RISC1_0: puts ("hppa1.0"); break; + case CPU_PA_RISC1_1: puts ("hppa1.1"); break; + case CPU_PA_RISC2_0: + #if defined(_SC_KERNEL_BITS) + switch (bits) + { + case 64: puts ("hppa2.0w"); break; + case 32: puts ("hppa2.0n"); break; + default: puts ("hppa2.0"); break; + } break; + #else /* !defined(_SC_KERNEL_BITS) */ + puts ("hppa2.0"); break; + #endif + default: puts ("hppa1.0"); break; + } + exit (0); + } +EOF + (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` + test -z "$HP_ARCH" && HP_ARCH=hppa + fi ;; + esac + if [ ${HP_ARCH} = "hppa2.0w" ] + then + eval $set_cc_for_build + + # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating + # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler + # generating 64-bit code. GNU and HP use different nomenclature: + # + # $ CC_FOR_BUILD=cc ./config.guess + # => hppa2.0w-hp-hpux11.23 + # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess + # => hppa64-hp-hpux11.23 + + if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | + grep -q __LP64__ + then + HP_ARCH="hppa2.0w" + else + HP_ARCH="hppa64" + fi + fi + echo ${HP_ARCH}-hp-hpux${HPUX_REV} + exit ;; + ia64:HP-UX:*:*) + HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` + echo ia64-hp-hpux${HPUX_REV} + exit ;; + 3050*:HI-UX:*:*) + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c + #include + int + main () + { + long cpu = sysconf (_SC_CPU_VERSION); + /* The order matters, because CPU_IS_HP_MC68K erroneously returns + true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct + results, however. */ + if (CPU_IS_PA_RISC (cpu)) + { + switch (cpu) + { + case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; + case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; + case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; + default: puts ("hppa-hitachi-hiuxwe2"); break; + } + } + else if (CPU_IS_HP_MC68K (cpu)) + puts ("m68k-hitachi-hiuxwe2"); + else puts ("unknown-hitachi-hiuxwe2"); + exit (0); + } +EOF + $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && + { echo "$SYSTEM_NAME"; exit; } + echo unknown-hitachi-hiuxwe2 + exit ;; + 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) + echo hppa1.1-hp-bsd + exit ;; + 9000/8??:4.3bsd:*:*) + echo hppa1.0-hp-bsd + exit ;; + *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) + echo hppa1.0-hp-mpeix + exit ;; + hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) + echo hppa1.1-hp-osf + exit ;; + hp8??:OSF1:*:*) + echo hppa1.0-hp-osf + exit ;; + i*86:OSF1:*:*) + if [ -x /usr/sbin/sysversion ] ; then + echo ${UNAME_MACHINE}-unknown-osf1mk + else + echo ${UNAME_MACHINE}-unknown-osf1 + fi + exit ;; + parisc*:Lites*:*:*) + echo hppa1.1-hp-lites + exit ;; + C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) + echo c1-convex-bsd + exit ;; + C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) + if getsysinfo -f scalar_acc + then echo c32-convex-bsd + else echo c2-convex-bsd + fi + exit ;; + C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) + echo c34-convex-bsd + exit ;; + C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) + echo c38-convex-bsd + exit ;; + C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) + echo c4-convex-bsd + exit ;; + CRAY*Y-MP:*:*:*) + echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit ;; + CRAY*[A-Z]90:*:*:*) + echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ + | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ + -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ + -e 's/\.[^.]*$/.X/' + exit ;; + CRAY*TS:*:*:*) + echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit ;; + CRAY*T3E:*:*:*) + echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit ;; + CRAY*SV1:*:*:*) + echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit ;; + *:UNICOS/mp:*:*) + echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit ;; + F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) + FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` + FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` + FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` + echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" + exit ;; + 5000:UNIX_System_V:4.*:*) + FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` + FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` + echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" + exit ;; + i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) + echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} + exit ;; + sparc*:BSD/OS:*:*) + echo sparc-unknown-bsdi${UNAME_RELEASE} + exit ;; + *:BSD/OS:*:*) + echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} + exit ;; + *:FreeBSD:*:*) + UNAME_PROCESSOR=`/usr/bin/uname -p` + case ${UNAME_PROCESSOR} in + amd64) + echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; + *) + echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; + esac + exit ;; + i*:CYGWIN*:*) + echo ${UNAME_MACHINE}-pc-cygwin + exit ;; + *:MINGW*:*) + echo ${UNAME_MACHINE}-pc-mingw32 + exit ;; + i*:MSYS*:*) + echo ${UNAME_MACHINE}-pc-msys + exit ;; + i*:windows32*:*) + # uname -m includes "-pc" on this system. + echo ${UNAME_MACHINE}-mingw32 + exit ;; + i*:PW*:*) + echo ${UNAME_MACHINE}-pc-pw32 + exit ;; + *:Interix*:*) + case ${UNAME_MACHINE} in + x86) + echo i586-pc-interix${UNAME_RELEASE} + exit ;; + authenticamd | genuineintel | EM64T) + echo x86_64-unknown-interix${UNAME_RELEASE} + exit ;; + IA64) + echo ia64-unknown-interix${UNAME_RELEASE} + exit ;; + esac ;; + [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) + echo i${UNAME_MACHINE}-pc-mks + exit ;; + 8664:Windows_NT:*) + echo x86_64-pc-mks + exit ;; + i*:Windows_NT*:* | Pentium*:Windows_NT*:*) + # How do we know it's Interix rather than the generic POSIX subsystem? + # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we + # UNAME_MACHINE based on the output of uname instead of i386? + echo i586-pc-interix + exit ;; + i*:UWIN*:*) + echo ${UNAME_MACHINE}-pc-uwin + exit ;; + amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) + echo x86_64-unknown-cygwin + exit ;; + p*:CYGWIN*:*) + echo powerpcle-unknown-cygwin + exit ;; + prep*:SunOS:5.*:*) + echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit ;; + *:GNU:*:*) + # the GNU system + echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` + exit ;; + *:GNU/*:*:*) + # other systems with GNU libc and userland + echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu + exit ;; + i*86:Minix:*:*) + echo ${UNAME_MACHINE}-pc-minix + exit ;; + aarch64:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + aarch64_be:Linux:*:*) + UNAME_MACHINE=aarch64_be + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + alpha:Linux:*:*) + case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in + EV5) UNAME_MACHINE=alphaev5 ;; + EV56) UNAME_MACHINE=alphaev56 ;; + PCA56) UNAME_MACHINE=alphapca56 ;; + PCA57) UNAME_MACHINE=alphapca56 ;; + EV6) UNAME_MACHINE=alphaev6 ;; + EV67) UNAME_MACHINE=alphaev67 ;; + EV68*) UNAME_MACHINE=alphaev68 ;; + esac + objdump --private-headers /bin/sh | grep -q ld.so.1 + if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi + echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} + exit ;; + arm*:Linux:*:*) + eval $set_cc_for_build + if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ + | grep -q __ARM_EABI__ + then + echo ${UNAME_MACHINE}-unknown-linux-gnu + else + if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ + | grep -q __ARM_PCS_VFP + then + echo ${UNAME_MACHINE}-unknown-linux-gnueabi + else + echo ${UNAME_MACHINE}-unknown-linux-gnueabihf + fi + fi + exit ;; + avr32*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + cris:Linux:*:*) + echo ${UNAME_MACHINE}-axis-linux-gnu + exit ;; + crisv32:Linux:*:*) + echo ${UNAME_MACHINE}-axis-linux-gnu + exit ;; + frv:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + hexagon:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + i*86:Linux:*:*) + LIBC=gnu + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c + #ifdef __dietlibc__ + LIBC=dietlibc + #endif +EOF + eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'` + echo "${UNAME_MACHINE}-pc-linux-${LIBC}" + exit ;; + ia64:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + m32r*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + m68*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + mips:Linux:*:* | mips64:Linux:*:*) + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c + #undef CPU + #undef ${UNAME_MACHINE} + #undef ${UNAME_MACHINE}el + #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) + CPU=${UNAME_MACHINE}el + #else + #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) + CPU=${UNAME_MACHINE} + #else + CPU= + #endif + #endif +EOF + eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` + test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } + ;; + or32:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + padre:Linux:*:*) + echo sparc-unknown-linux-gnu + exit ;; + parisc64:Linux:*:* | hppa64:Linux:*:*) + echo hppa64-unknown-linux-gnu + exit ;; + parisc:Linux:*:* | hppa:Linux:*:*) + # Look for CPU level + case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in + PA7*) echo hppa1.1-unknown-linux-gnu ;; + PA8*) echo hppa2.0-unknown-linux-gnu ;; + *) echo hppa-unknown-linux-gnu ;; + esac + exit ;; + ppc64:Linux:*:*) + echo powerpc64-unknown-linux-gnu + exit ;; + ppc:Linux:*:*) + echo powerpc-unknown-linux-gnu + exit ;; + s390:Linux:*:* | s390x:Linux:*:*) + echo ${UNAME_MACHINE}-ibm-linux + exit ;; + sh64*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + sh*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + sparc:Linux:*:* | sparc64:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + tile*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + vax:Linux:*:*) + echo ${UNAME_MACHINE}-dec-linux-gnu + exit ;; + x86_64:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + xtensa*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + i*86:DYNIX/ptx:4*:*) + # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. + # earlier versions are messed up and put the nodename in both + # sysname and nodename. + echo i386-sequent-sysv4 + exit ;; + i*86:UNIX_SV:4.2MP:2.*) + # Unixware is an offshoot of SVR4, but it has its own version + # number series starting with 2... + # I am not positive that other SVR4 systems won't match this, + # I just have to hope. -- rms. + # Use sysv4.2uw... so that sysv4* matches it. + echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} + exit ;; + i*86:OS/2:*:*) + # If we were able to find `uname', then EMX Unix compatibility + # is probably installed. + echo ${UNAME_MACHINE}-pc-os2-emx + exit ;; + i*86:XTS-300:*:STOP) + echo ${UNAME_MACHINE}-unknown-stop + exit ;; + i*86:atheos:*:*) + echo ${UNAME_MACHINE}-unknown-atheos + exit ;; + i*86:syllable:*:*) + echo ${UNAME_MACHINE}-pc-syllable + exit ;; + i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) + echo i386-unknown-lynxos${UNAME_RELEASE} + exit ;; + i*86:*DOS:*:*) + echo ${UNAME_MACHINE}-pc-msdosdjgpp + exit ;; + i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) + UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` + if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then + echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} + else + echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} + fi + exit ;; + i*86:*:5:[678]*) + # UnixWare 7.x, OpenUNIX and OpenServer 6. + case `/bin/uname -X | grep "^Machine"` in + *486*) UNAME_MACHINE=i486 ;; + *Pentium) UNAME_MACHINE=i586 ;; + *Pent*|*Celeron) UNAME_MACHINE=i686 ;; + esac + echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} + exit ;; + i*86:*:3.2:*) + if test -f /usr/options/cb.name; then + UNAME_REL=`sed -n 's/.*Version //p' /dev/null >/dev/null ; then + UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` + (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 + (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ + && UNAME_MACHINE=i586 + (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ + && UNAME_MACHINE=i686 + (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ + && UNAME_MACHINE=i686 + echo ${UNAME_MACHINE}-pc-sco$UNAME_REL + else + echo ${UNAME_MACHINE}-pc-sysv32 + fi + exit ;; + pc:*:*:*) + # Left here for compatibility: + # uname -m prints for DJGPP always 'pc', but it prints nothing about + # the processor, so we play safe by assuming i586. + # Note: whatever this is, it MUST be the same as what config.sub + # prints for the "djgpp" host, or else GDB configury will decide that + # this is a cross-build. + echo i586-pc-msdosdjgpp + exit ;; + Intel:Mach:3*:*) + echo i386-pc-mach3 + exit ;; + paragon:*:*:*) + echo i860-intel-osf1 + exit ;; + i860:*:4.*:*) # i860-SVR4 + if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then + echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 + else # Add other i860-SVR4 vendors below as they are discovered. + echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 + fi + exit ;; + mini*:CTIX:SYS*5:*) + # "miniframe" + echo m68010-convergent-sysv + exit ;; + mc68k:UNIX:SYSTEM5:3.51m) + echo m68k-convergent-sysv + exit ;; + M680?0:D-NIX:5.3:*) + echo m68k-diab-dnix + exit ;; + M68*:*:R3V[5678]*:*) + test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; + 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0) + OS_REL='' + test -r /etc/.relid \ + && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` + /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ + && { echo i486-ncr-sysv4.3${OS_REL}; exit; } + /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ + && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; + 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) + /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ + && { echo i486-ncr-sysv4; exit; } ;; + NCR*:*:4.2:* | MPRAS*:*:4.2:*) + OS_REL='.3' + test -r /etc/.relid \ + && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` + /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ + && { echo i486-ncr-sysv4.3${OS_REL}; exit; } + /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ + && { echo i586-ncr-sysv4.3${OS_REL}; exit; } + /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ + && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; + m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) + echo m68k-unknown-lynxos${UNAME_RELEASE} + exit ;; + mc68030:UNIX_System_V:4.*:*) + echo m68k-atari-sysv4 + exit ;; + TSUNAMI:LynxOS:2.*:*) + echo sparc-unknown-lynxos${UNAME_RELEASE} + exit ;; + rs6000:LynxOS:2.*:*) + echo rs6000-unknown-lynxos${UNAME_RELEASE} + exit ;; + PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) + echo powerpc-unknown-lynxos${UNAME_RELEASE} + exit ;; + SM[BE]S:UNIX_SV:*:*) + echo mips-dde-sysv${UNAME_RELEASE} + exit ;; + RM*:ReliantUNIX-*:*:*) + echo mips-sni-sysv4 + exit ;; + RM*:SINIX-*:*:*) + echo mips-sni-sysv4 + exit ;; + *:SINIX-*:*:*) + if uname -p 2>/dev/null >/dev/null ; then + UNAME_MACHINE=`(uname -p) 2>/dev/null` + echo ${UNAME_MACHINE}-sni-sysv4 + else + echo ns32k-sni-sysv + fi + exit ;; + PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort + # says + echo i586-unisys-sysv4 + exit ;; + *:UNIX_System_V:4*:FTX*) + # From Gerald Hewes . + # How about differentiating between stratus architectures? -djm + echo hppa1.1-stratus-sysv4 + exit ;; + *:*:*:FTX*) + # From seanf@swdc.stratus.com. + echo i860-stratus-sysv4 + exit ;; + i*86:VOS:*:*) + # From Paul.Green@stratus.com. + echo ${UNAME_MACHINE}-stratus-vos + exit ;; + *:VOS:*:*) + # From Paul.Green@stratus.com. + echo hppa1.1-stratus-vos + exit ;; + mc68*:A/UX:*:*) + echo m68k-apple-aux${UNAME_RELEASE} + exit ;; + news*:NEWS-OS:6*:*) + echo mips-sony-newsos6 + exit ;; + R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) + if [ -d /usr/nec ]; then + echo mips-nec-sysv${UNAME_RELEASE} + else + echo mips-unknown-sysv${UNAME_RELEASE} + fi + exit ;; + BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. + echo powerpc-be-beos + exit ;; + BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. + echo powerpc-apple-beos + exit ;; + BePC:BeOS:*:*) # BeOS running on Intel PC compatible. + echo i586-pc-beos + exit ;; + BePC:Haiku:*:*) # Haiku running on Intel PC compatible. + echo i586-pc-haiku + exit ;; + SX-4:SUPER-UX:*:*) + echo sx4-nec-superux${UNAME_RELEASE} + exit ;; + SX-5:SUPER-UX:*:*) + echo sx5-nec-superux${UNAME_RELEASE} + exit ;; + SX-6:SUPER-UX:*:*) + echo sx6-nec-superux${UNAME_RELEASE} + exit ;; + SX-7:SUPER-UX:*:*) + echo sx7-nec-superux${UNAME_RELEASE} + exit ;; + SX-8:SUPER-UX:*:*) + echo sx8-nec-superux${UNAME_RELEASE} + exit ;; + SX-8R:SUPER-UX:*:*) + echo sx8r-nec-superux${UNAME_RELEASE} + exit ;; + Power*:Rhapsody:*:*) + echo powerpc-apple-rhapsody${UNAME_RELEASE} + exit ;; + *:Rhapsody:*:*) + echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} + exit ;; + *:Darwin:*:*) + UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown + case $UNAME_PROCESSOR in + i386) + eval $set_cc_for_build + if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then + if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ + (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ + grep IS_64BIT_ARCH >/dev/null + then + UNAME_PROCESSOR="x86_64" + fi + fi ;; + unknown) UNAME_PROCESSOR=powerpc ;; + esac + echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} + exit ;; + *:procnto*:*:* | *:QNX:[0123456789]*:*) + UNAME_PROCESSOR=`uname -p` + if test "$UNAME_PROCESSOR" = "x86"; then + UNAME_PROCESSOR=i386 + UNAME_MACHINE=pc + fi + echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} + exit ;; + *:QNX:*:4*) + echo i386-pc-qnx + exit ;; + NEO-?:NONSTOP_KERNEL:*:*) + echo neo-tandem-nsk${UNAME_RELEASE} + exit ;; + NSE-*:NONSTOP_KERNEL:*:*) + echo nse-tandem-nsk${UNAME_RELEASE} + exit ;; + NSR-?:NONSTOP_KERNEL:*:*) + echo nsr-tandem-nsk${UNAME_RELEASE} + exit ;; + *:NonStop-UX:*:*) + echo mips-compaq-nonstopux + exit ;; + BS2000:POSIX*:*:*) + echo bs2000-siemens-sysv + exit ;; + DS/*:UNIX_System_V:*:*) + echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} + exit ;; + *:Plan9:*:*) + # "uname -m" is not consistent, so use $cputype instead. 386 + # is converted to i386 for consistency with other x86 + # operating systems. + if test "$cputype" = "386"; then + UNAME_MACHINE=i386 + else + UNAME_MACHINE="$cputype" + fi + echo ${UNAME_MACHINE}-unknown-plan9 + exit ;; + *:TOPS-10:*:*) + echo pdp10-unknown-tops10 + exit ;; + *:TENEX:*:*) + echo pdp10-unknown-tenex + exit ;; + KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) + echo pdp10-dec-tops20 + exit ;; + XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) + echo pdp10-xkl-tops20 + exit ;; + *:TOPS-20:*:*) + echo pdp10-unknown-tops20 + exit ;; + *:ITS:*:*) + echo pdp10-unknown-its + exit ;; + SEI:*:*:SEIUX) + echo mips-sei-seiux${UNAME_RELEASE} + exit ;; + *:DragonFly:*:*) + echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` + exit ;; + *:*VMS:*:*) + UNAME_MACHINE=`(uname -p) 2>/dev/null` + case "${UNAME_MACHINE}" in + A*) echo alpha-dec-vms ; exit ;; + I*) echo ia64-dec-vms ; exit ;; + V*) echo vax-dec-vms ; exit ;; + esac ;; + *:XENIX:*:SysV) + echo i386-pc-xenix + exit ;; + i*86:skyos:*:*) + echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' + exit ;; + i*86:rdos:*:*) + echo ${UNAME_MACHINE}-pc-rdos + exit ;; + i*86:AROS:*:*) + echo ${UNAME_MACHINE}-pc-aros + exit ;; + x86_64:VMkernel:*:*) + echo ${UNAME_MACHINE}-unknown-esx + exit ;; +esac + +#echo '(No uname command or uname output not recognized.)' 1>&2 +#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 + +eval $set_cc_for_build +cat >$dummy.c < +# include +#endif +main () +{ +#if defined (sony) +#if defined (MIPSEB) + /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, + I don't know.... */ + printf ("mips-sony-bsd\n"); exit (0); +#else +#include + printf ("m68k-sony-newsos%s\n", +#ifdef NEWSOS4 + "4" +#else + "" +#endif + ); exit (0); +#endif +#endif + +#if defined (__arm) && defined (__acorn) && defined (__unix) + printf ("arm-acorn-riscix\n"); exit (0); +#endif + +#if defined (hp300) && !defined (hpux) + printf ("m68k-hp-bsd\n"); exit (0); +#endif + +#if defined (NeXT) +#if !defined (__ARCHITECTURE__) +#define __ARCHITECTURE__ "m68k" +#endif + int version; + version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; + if (version < 4) + printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); + else + printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); + exit (0); +#endif + +#if defined (MULTIMAX) || defined (n16) +#if defined (UMAXV) + printf ("ns32k-encore-sysv\n"); exit (0); +#else +#if defined (CMU) + printf ("ns32k-encore-mach\n"); exit (0); +#else + printf ("ns32k-encore-bsd\n"); exit (0); +#endif +#endif +#endif + +#if defined (__386BSD__) + printf ("i386-pc-bsd\n"); exit (0); +#endif + +#if defined (sequent) +#if defined (i386) + printf ("i386-sequent-dynix\n"); exit (0); +#endif +#if defined (ns32000) + printf ("ns32k-sequent-dynix\n"); exit (0); +#endif +#endif + +#if defined (_SEQUENT_) + struct utsname un; + + uname(&un); + + if (strncmp(un.version, "V2", 2) == 0) { + printf ("i386-sequent-ptx2\n"); exit (0); + } + if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ + printf ("i386-sequent-ptx1\n"); exit (0); + } + printf ("i386-sequent-ptx\n"); exit (0); + +#endif + +#if defined (vax) +# if !defined (ultrix) +# include +# if defined (BSD) +# if BSD == 43 + printf ("vax-dec-bsd4.3\n"); exit (0); +# else +# if BSD == 199006 + printf ("vax-dec-bsd4.3reno\n"); exit (0); +# else + printf ("vax-dec-bsd\n"); exit (0); +# endif +# endif +# else + printf ("vax-dec-bsd\n"); exit (0); +# endif +# else + printf ("vax-dec-ultrix\n"); exit (0); +# endif +#endif + +#if defined (alliant) && defined (i860) + printf ("i860-alliant-bsd\n"); exit (0); +#endif + + exit (1); +} +EOF + +$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && + { echo "$SYSTEM_NAME"; exit; } + +# Apollos put the system type in the environment. + +test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } + +# Convex versions that predate uname can use getsysinfo(1) + +if [ -x /usr/convex/getsysinfo ] +then + case `getsysinfo -f cpu_type` in + c1*) + echo c1-convex-bsd + exit ;; + c2*) + if getsysinfo -f scalar_acc + then echo c32-convex-bsd + else echo c2-convex-bsd + fi + exit ;; + c34*) + echo c34-convex-bsd + exit ;; + c38*) + echo c38-convex-bsd + exit ;; + c4*) + echo c4-convex-bsd + exit ;; + esac +fi + +cat >&2 < in order to provide the needed +information to handle your system. + +config.guess timestamp = $timestamp + +uname -m = `(uname -m) 2>/dev/null || echo unknown` +uname -r = `(uname -r) 2>/dev/null || echo unknown` +uname -s = `(uname -s) 2>/dev/null || echo unknown` +uname -v = `(uname -v) 2>/dev/null || echo unknown` + +/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` +/bin/uname -X = `(/bin/uname -X) 2>/dev/null` + +hostinfo = `(hostinfo) 2>/dev/null` +/bin/universe = `(/bin/universe) 2>/dev/null` +/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` +/bin/arch = `(/bin/arch) 2>/dev/null` +/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` +/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` + +UNAME_MACHINE = ${UNAME_MACHINE} +UNAME_RELEASE = ${UNAME_RELEASE} +UNAME_SYSTEM = ${UNAME_SYSTEM} +UNAME_VERSION = ${UNAME_VERSION} +EOF + +exit 1 + +# Local variables: +# eval: (add-hook 'write-file-hooks 'time-stamp) +# time-stamp-start: "timestamp='" +# time-stamp-format: "%:y-%02m-%02d" +# time-stamp-end: "'" +# End: diff --git a/bibliotheque-graphique-iut-1.1/config.h b/bibliotheque-graphique-iut-1.1/config.h new file mode 100644 index 0000000..89262fa --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/config.h @@ -0,0 +1,84 @@ +/* config.h. Generated from config.h.in by configure. */ +/* config.h.in. Generated from configure.ac by autoheader. */ + +/* Define to 1 if you have the header file. */ +#define HAVE_DLFCN_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_INTTYPES_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_MEMORY_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDINT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDLIB_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRINGS_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRING_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_STAT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TYPES_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_UNISTD_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_X11_CURSORFONT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_X11_KEYSYM_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_X11_XATOM_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_X11_XLIB_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_X11_XPM_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_X11_XUTIL_H 1 + +/* XPM Support des images xpm */ +#define HAVE_XPM 1 + +/* Define to the sub-directory in which libtool stores uninstalled libraries. + */ +#define LT_OBJDIR ".libs/" + +/* Name of package */ +#define PACKAGE "bibliotheque-graphique-iut" + +/* Define to the address where bug reports for this package should be sent. */ +#define PACKAGE_BUGREPORT "monnerat@u-pec.fr" + +/* Define to the full name of this package. */ +#define PACKAGE_NAME "bibliotheque graphique iut" + +/* Define to the full name and version of this package. */ +#define PACKAGE_STRING "bibliotheque graphique iut 1.1" + +/* Define to the one symbol short name of this package. */ +#define PACKAGE_TARNAME "bibliotheque-graphique-iut" + +/* Define to the home page for this package. */ +#define PACKAGE_URL "" + +/* Define to the version of this package. */ +#define PACKAGE_VERSION "1.1" + +/* Define to 1 if you have the ANSI C header files. */ +#define STDC_HEADERS 1 + +/* Version number of package */ +#define VERSION "1.1" diff --git a/bibliotheque-graphique-iut-1.1/config.h.in b/bibliotheque-graphique-iut-1.1/config.h.in new file mode 100644 index 0000000..a3b2ff2 --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/config.h.in @@ -0,0 +1,83 @@ +/* config.h.in. Generated from configure.ac by autoheader. */ + +/* Define to 1 if you have the header file. */ +#undef HAVE_DLFCN_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_INTTYPES_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_MEMORY_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_STDINT_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_STDLIB_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_STRINGS_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_STRING_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_STAT_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_TYPES_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_UNISTD_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_X11_CURSORFONT_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_X11_KEYSYM_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_X11_XATOM_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_X11_XLIB_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_X11_XPM_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_X11_XUTIL_H + +/* XPM Support des images xpm */ +#undef HAVE_XPM + +/* Define to the sub-directory in which libtool stores uninstalled libraries. + */ +#undef LT_OBJDIR + +/* Name of package */ +#undef PACKAGE + +/* Define to the address where bug reports for this package should be sent. */ +#undef PACKAGE_BUGREPORT + +/* Define to the full name of this package. */ +#undef PACKAGE_NAME + +/* Define to the full name and version of this package. */ +#undef PACKAGE_STRING + +/* Define to the one symbol short name of this package. */ +#undef PACKAGE_TARNAME + +/* Define to the home page for this package. */ +#undef PACKAGE_URL + +/* Define to the version of this package. */ +#undef PACKAGE_VERSION + +/* Define to 1 if you have the ANSI C header files. */ +#undef STDC_HEADERS + +/* Version number of package */ +#undef VERSION diff --git a/bibliotheque-graphique-iut-1.1/config.log b/bibliotheque-graphique-iut-1.1/config.log new file mode 100644 index 0000000..df44034 --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/config.log @@ -0,0 +1,701 @@ +This file contains any messages produced by compilers while +running configure, to aid debugging if configure makes a mistake. + +It was created by bibliotheque graphique iut configure 1.1, which was +generated by GNU Autoconf 2.69. Invocation command line was + + $ ./configure --prefix=/export/home/an22/pietrois/SAE11_2022/ --disable-exemples + +## --------- ## +## Platform. ## +## --------- ## + +hostname = salle231-12 +uname -m = x86_64 +uname -r = 5.15.63-1-lts +uname -s = Linux +uname -v = #1 SMP Thu, 25 Aug 2022 13:40:16 +0000 + +/usr/bin/uname -p = unknown +/bin/uname -X = unknown + +/bin/arch = unknown +/usr/bin/arch -k = unknown +/usr/convex/getsysinfo = unknown +/usr/bin/hostinfo = unknown +/bin/machine = unknown +/usr/bin/oslevel = unknown +/bin/universe = unknown + +PATH: /usr/local/bin +PATH: /usr/bin +PATH: /bin +PATH: /usr/local/sbin +PATH: /opt/android-sdk/platform-tools +PATH: /opt/android-sdk/tools +PATH: /opt/android-sdk/tools/bin +PATH: /usr/lib/jvm/default/bin +PATH: /usr/bin/site_perl +PATH: /usr/bin/vendor_perl +PATH: /usr/bin/core_perl + + +## ----------- ## +## Core tests. ## +## ----------- ## + +configure:2259: checking for a BSD-compatible install +configure:2327: result: /usr/bin/install -c +configure:2338: checking whether build environment is sane +configure:2393: result: yes +configure:2431: WARNING: 'missing' script is too old or missing +configure:2544: checking for a thread-safe mkdir -p +configure:2583: result: /usr/bin/mkdir -p +configure:2590: checking for gawk +configure:2606: found /usr/bin/gawk +configure:2617: result: gawk +configure:2628: checking whether make sets $(MAKE) +configure:2650: result: yes +configure:2679: checking whether make supports nested variables +configure:2696: result: yes +configure:2869: checking for gcc +configure:2885: found /usr/bin/gcc +configure:2896: result: gcc +configure:3125: checking for C compiler version +configure:3134: gcc --version >&5 +gcc (GCC) 12.2.0 +Copyright (C) 2022 Free Software Foundation, Inc. +This is free software; see the source for copying conditions. There is NO +warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +configure:3145: $? = 0 +configure:3134: gcc -v >&5 +Using built-in specs. +COLLECT_GCC=gcc +COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-pc-linux-gnu/12.2.0/lto-wrapper +Target: x86_64-pc-linux-gnu +Configured with: /build/gcc/src/gcc/configure --enable-languages=c,c++,ada,fortran,go,lto,objc,obj-c++,d --enable-bootstrap --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://bugs.archlinux.org/ --with-build-config=bootstrap-lto --with-linker-hash-style=gnu --with-system-zlib --enable-__cxa_atexit --enable-cet=auto --enable-checking=release --enable-clocale=gnu --enable-default-pie --enable-default-ssp --enable-gnu-indirect-function --enable-gnu-unique-object --enable-libstdcxx-backtrace --enable-link-serialization=1 --enable-linker-build-id --enable-lto --enable-multilib --enable-plugin --enable-shared --enable-threads=posix --disable-libssp --disable-libstdcxx-pch --disable-werror +Thread model: posix +Supported LTO compression algorithms: zlib zstd +gcc version 12.2.0 (GCC) +configure:3145: $? = 0 +configure:3134: gcc -V >&5 +gcc: error: unrecognized command-line option '-V' +gcc: fatal error: no input files +compilation terminated. +configure:3145: $? = 1 +configure:3134: gcc -qversion >&5 +gcc: error: unrecognized command-line option '-qversion'; did you mean '--version'? +gcc: fatal error: no input files +compilation terminated. +configure:3145: $? = 1 +configure:3165: checking whether the C compiler works +configure:3187: gcc conftest.c >&5 +configure:3191: $? = 0 +configure:3239: result: yes +configure:3242: checking for C compiler default output file name +configure:3244: result: a.out +configure:3250: checking for suffix of executables +configure:3257: gcc -o conftest conftest.c >&5 +configure:3261: $? = 0 +configure:3283: result: +configure:3305: checking whether we are cross compiling +configure:3313: gcc -o conftest conftest.c >&5 +configure:3317: $? = 0 +configure:3324: ./conftest +configure:3328: $? = 0 +configure:3343: result: no +configure:3348: checking for suffix of object files +configure:3370: gcc -c conftest.c >&5 +configure:3374: $? = 0 +configure:3395: result: o +configure:3399: checking whether we are using the GNU C compiler +configure:3418: gcc -c conftest.c >&5 +configure:3418: $? = 0 +configure:3427: result: yes +configure:3436: checking whether gcc accepts -g +configure:3456: gcc -c -g conftest.c >&5 +configure:3456: $? = 0 +configure:3497: result: yes +configure:3514: checking for gcc option to accept ISO C89 +configure:3577: gcc -c -g -O2 conftest.c >&5 +configure:3577: $? = 0 +configure:3590: result: none needed +configure:3615: checking whether gcc understands -c and -o together +configure:3637: gcc -c conftest.c -o conftest2.o +configure:3640: $? = 0 +configure:3637: gcc -c conftest.c -o conftest2.o +configure:3640: $? = 0 +configure:3652: result: yes +configure:3680: checking for style of include used by make +configure:3708: result: GNU +configure:3734: checking dependency style of gcc +configure:3845: result: gcc3 +configure:3910: checking for ar +configure:3926: found /usr/bin/ar +configure:3937: result: ar +configure:3963: checking the archiver (ar) interface +configure:3979: gcc -c -g -O2 conftest.c >&5 +configure:3979: $? = 0 +configure:3981: ar cru libconftest.a conftest.o >&5 +ar: `u' modifier ignored since `D' is the default (see `U') +configure:3984: $? = 0 +configure:4012: result: ar +configure:4061: checking build system type +configure:4075: result: x86_64-unknown-linux-gnu +configure:4095: checking host system type +configure:4108: result: x86_64-unknown-linux-gnu +configure:4149: checking how to print strings +configure:4176: result: printf +configure:4197: checking for a sed that does not truncate output +configure:4261: result: /usr/bin/sed +configure:4279: checking for grep that handles long lines and -e +configure:4337: result: /usr/bin/grep +configure:4342: checking for egrep +configure:4404: result: /usr/bin/grep -E +configure:4409: checking for fgrep +configure:4471: result: /usr/bin/grep -F +configure:4506: checking for ld used by gcc +configure:4573: result: /usr/bin/ld +configure:4580: checking if the linker (/usr/bin/ld) is GNU ld +configure:4595: result: yes +configure:4607: checking for BSD- or MS-compatible name lister (nm) +configure:4656: result: /usr/bin/nm -B +configure:4786: checking the name lister (/usr/bin/nm -B) interface +configure:4793: gcc -c -g -O2 conftest.c >&5 +configure:4796: /usr/bin/nm -B "conftest.o" +configure:4799: output +0000000000000000 B some_variable +configure:4806: result: BSD nm +configure:4809: checking whether ln -s works +configure:4813: result: yes +configure:4821: checking the maximum length of command line arguments +configure:4951: result: 1572864 +configure:4968: checking whether the shell understands some XSI constructs +configure:4978: result: yes +configure:4982: checking whether the shell understands "+=" +configure:4988: result: yes +configure:5023: checking how to convert x86_64-unknown-linux-gnu file names to x86_64-unknown-linux-gnu format +configure:5063: result: func_convert_file_noop +configure:5070: checking how to convert x86_64-unknown-linux-gnu file names to toolchain format +configure:5090: result: func_convert_file_noop +configure:5097: checking for /usr/bin/ld option to reload object files +configure:5104: result: -r +configure:5178: checking for objdump +configure:5194: found /usr/bin/objdump +configure:5205: result: objdump +configure:5237: checking how to recognize dependent libraries +configure:5439: result: pass_all +configure:5524: checking for dlltool +configure:5554: result: no +configure:5584: checking how to associate runtime and link libraries +configure:5611: result: printf %s\n +configure:5735: checking for archiver @FILE support +configure:5752: gcc -c -g -O2 conftest.c >&5 +configure:5752: $? = 0 +configure:5755: ar cru libconftest.a @conftest.lst >&5 +ar: `u' modifier ignored since `D' is the default (see `U') +configure:5758: $? = 0 +configure:5763: ar cru libconftest.a @conftest.lst >&5 +ar: `u' modifier ignored since `D' is the default (see `U') +ar: conftest.o: No such file or directory +configure:5766: $? = 1 +configure:5778: result: @ +configure:5836: checking for strip +configure:5852: found /usr/bin/strip +configure:5863: result: strip +configure:5935: checking for ranlib +configure:5951: found /usr/bin/ranlib +configure:5962: result: ranlib +configure:6064: checking command to parse /usr/bin/nm -B output from gcc object +configure:6184: gcc -c -g -O2 conftest.c >&5 +configure:6187: $? = 0 +configure:6191: /usr/bin/nm -B conftest.o \| sed -n -e 's/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p' | sed '/ __gnu_lto/d' \> conftest.nm +configure:6194: $? = 0 +configure:6260: gcc -o conftest -g -O2 conftest.c conftstm.o >&5 +configure:6263: $? = 0 +configure:6301: result: ok +configure:6338: checking for sysroot +configure:6368: result: no +configure:6445: gcc -c -g -O2 conftest.c >&5 +configure:6448: $? = 0 +configure:6624: checking for mt +configure:6654: result: no +configure:6674: checking if : is a manifest tool +configure:6680: : '-?' +configure:6688: result: no +configure:7330: checking how to run the C preprocessor +configure:7361: gcc -E conftest.c +configure:7361: $? = 0 +configure:7375: gcc -E conftest.c +conftest.c:11:10: fatal error: ac_nonexistent.h: No such file or directory + 11 | #include + | ^~~~~~~~~~~~~~~~~~ +compilation terminated. +configure:7375: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "bibliotheque graphique iut" +| #define PACKAGE_TARNAME "bibliotheque-graphique-iut" +| #define PACKAGE_VERSION "1.1" +| #define PACKAGE_STRING "bibliotheque graphique iut 1.1" +| #define PACKAGE_BUGREPORT "monnerat@u-pec.fr" +| #define PACKAGE_URL "" +| #define PACKAGE "bibliotheque-graphique-iut" +| #define VERSION "1.1" +| /* end confdefs.h. */ +| #include +configure:7400: result: gcc -E +configure:7420: gcc -E conftest.c +configure:7420: $? = 0 +configure:7434: gcc -E conftest.c +conftest.c:11:10: fatal error: ac_nonexistent.h: No such file or directory + 11 | #include + | ^~~~~~~~~~~~~~~~~~ +compilation terminated. +configure:7434: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "bibliotheque graphique iut" +| #define PACKAGE_TARNAME "bibliotheque-graphique-iut" +| #define PACKAGE_VERSION "1.1" +| #define PACKAGE_STRING "bibliotheque graphique iut 1.1" +| #define PACKAGE_BUGREPORT "monnerat@u-pec.fr" +| #define PACKAGE_URL "" +| #define PACKAGE "bibliotheque-graphique-iut" +| #define VERSION "1.1" +| /* end confdefs.h. */ +| #include +configure:7463: checking for ANSI C header files +configure:7483: gcc -c -g -O2 conftest.c >&5 +configure:7483: $? = 0 +configure:7556: gcc -o conftest -g -O2 conftest.c >&5 +configure:7556: $? = 0 +configure:7556: ./conftest +configure:7556: $? = 0 +configure:7567: result: yes +configure:7580: checking for sys/types.h +configure:7580: gcc -c -g -O2 conftest.c >&5 +configure:7580: $? = 0 +configure:7580: result: yes +configure:7580: checking for sys/stat.h +configure:7580: gcc -c -g -O2 conftest.c >&5 +configure:7580: $? = 0 +configure:7580: result: yes +configure:7580: checking for stdlib.h +configure:7580: gcc -c -g -O2 conftest.c >&5 +configure:7580: $? = 0 +configure:7580: result: yes +configure:7580: checking for string.h +configure:7580: gcc -c -g -O2 conftest.c >&5 +configure:7580: $? = 0 +configure:7580: result: yes +configure:7580: checking for memory.h +configure:7580: gcc -c -g -O2 conftest.c >&5 +configure:7580: $? = 0 +configure:7580: result: yes +configure:7580: checking for strings.h +configure:7580: gcc -c -g -O2 conftest.c >&5 +configure:7580: $? = 0 +configure:7580: result: yes +configure:7580: checking for inttypes.h +configure:7580: gcc -c -g -O2 conftest.c >&5 +configure:7580: $? = 0 +configure:7580: result: yes +configure:7580: checking for stdint.h +configure:7580: gcc -c -g -O2 conftest.c >&5 +configure:7580: $? = 0 +configure:7580: result: yes +configure:7580: checking for unistd.h +configure:7580: gcc -c -g -O2 conftest.c >&5 +configure:7580: $? = 0 +configure:7580: result: yes +configure:7594: checking for dlfcn.h +configure:7594: gcc -c -g -O2 conftest.c >&5 +configure:7594: $? = 0 +configure:7594: result: yes +configure:7800: checking for objdir +configure:7815: result: .libs +configure:8082: checking if gcc supports -fno-rtti -fno-exceptions +configure:8100: gcc -c -g -O2 -fno-rtti -fno-exceptions conftest.c >&5 +cc1: warning: command-line option '-fno-rtti' is valid for C++/D/ObjC++ but not for C +configure:8104: $? = 0 +configure:8117: result: no +configure:8444: checking for gcc option to produce PIC +configure:8451: result: -fPIC -DPIC +configure:8459: checking if gcc PIC flag -fPIC -DPIC works +configure:8477: gcc -c -g -O2 -fPIC -DPIC -DPIC conftest.c >&5 +configure:8481: $? = 0 +configure:8494: result: yes +configure:8523: checking if gcc static flag -static works +configure:8551: result: yes +configure:8566: checking if gcc supports -c -o file.o +configure:8587: gcc -c -g -O2 -o out/conftest2.o conftest.c >&5 +configure:8591: $? = 0 +configure:8613: result: yes +configure:8621: checking if gcc supports -c -o file.o +configure:8668: result: yes +configure:8701: checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries +configure:9854: result: yes +configure:9891: checking whether -lc should be explicitly linked in +configure:9899: gcc -c -g -O2 conftest.c >&5 +configure:9902: $? = 0 +configure:9917: gcc -shared -fPIC -DPIC conftest.o -v -Wl,-soname -Wl,conftest -o conftest 2\>\&1 \| /usr/bin/grep -lc \>/dev/null 2\>\&1 +configure:9920: $? = 0 +configure:9934: result: no +configure:10094: checking dynamic linker characteristics +configure:10605: gcc -o conftest -g -O2 -Wl,-rpath -Wl,/foo conftest.c >&5 +configure:10605: $? = 0 +configure:10827: result: GNU/Linux ld.so +configure:10934: checking how to hardcode library paths into programs +configure:10959: result: immediate +configure:11499: checking whether stripping libraries is possible +configure:11504: result: yes +configure:11539: checking if libtool supports shared libraries +configure:11541: result: yes +configure:11544: checking whether to build shared libraries +configure:11565: result: yes +configure:11568: checking whether to build static libraries +configure:11572: result: yes +configure:11651: checking X11/Xlib.h usability +configure:11651: gcc -c -g -O2 conftest.c >&5 +configure:11651: $? = 0 +configure:11651: result: yes +configure:11651: checking X11/Xlib.h presence +configure:11651: gcc -E conftest.c +configure:11651: $? = 0 +configure:11651: result: yes +configure:11651: checking for X11/Xlib.h +configure:11651: result: yes +configure:11665: checking X11/cursorfont.h usability +configure:11665: gcc -c -g -O2 conftest.c >&5 +configure:11665: $? = 0 +configure:11665: result: yes +configure:11665: checking X11/cursorfont.h presence +configure:11665: gcc -E conftest.c +configure:11665: $? = 0 +configure:11665: result: yes +configure:11665: checking for X11/cursorfont.h +configure:11665: result: yes +configure:11679: checking X11/Xatom.h usability +configure:11679: gcc -c -g -O2 conftest.c >&5 +configure:11679: $? = 0 +configure:11679: result: yes +configure:11679: checking X11/Xatom.h presence +configure:11679: gcc -E conftest.c +configure:11679: $? = 0 +configure:11679: result: yes +configure:11679: checking for X11/Xatom.h +configure:11679: result: yes +configure:11693: checking X11/Xutil.h usability +configure:11693: gcc -c -g -O2 conftest.c >&5 +configure:11693: $? = 0 +configure:11693: result: yes +configure:11693: checking X11/Xutil.h presence +configure:11693: gcc -E conftest.c +configure:11693: $? = 0 +configure:11693: result: yes +configure:11693: checking for X11/Xutil.h +configure:11693: result: yes +configure:11707: checking X11/keysym.h usability +configure:11707: gcc -c -g -O2 conftest.c >&5 +configure:11707: $? = 0 +configure:11707: result: yes +configure:11707: checking X11/keysym.h presence +configure:11707: gcc -E conftest.c +configure:11707: $? = 0 +configure:11707: result: yes +configure:11707: checking for X11/keysym.h +configure:11707: result: yes +configure:11724: checking X11/xpm.h usability +configure:11724: gcc -c -g -O2 conftest.c >&5 +configure:11724: $? = 0 +configure:11724: result: yes +configure:11724: checking X11/xpm.h presence +configure:11724: gcc -E conftest.c +configure:11724: $? = 0 +configure:11724: result: yes +configure:11724: checking for X11/xpm.h +configure:11724: result: yes +configure:11860: checking that generated files are newer than configure +configure:11866: result: done +configure:11893: creating ./config.status + +## ---------------------- ## +## Running config.status. ## +## ---------------------- ## + +This file was extended by bibliotheque graphique iut config.status 1.1, which was +generated by GNU Autoconf 2.69. Invocation command line was + + CONFIG_FILES = + CONFIG_HEADERS = + CONFIG_LINKS = + CONFIG_COMMANDS = + $ ./config.status + +on salle231-12 + +config.status:1095: creating Makefile +config.status:1095: creating src/Makefile +config.status:1095: creating src/lib/Makefile +config.status:1095: creating src/include/Makefile +config.status:1095: creating src/exemples/Makefile +config.status:1095: creating config.h +config.status:1276: config.h is unchanged +config.status:1324: executing depfiles commands +config.status:1324: executing libtool commands +configure:14121: checking exemples construits +configure:14123: result: no +configure:14125: checking support xpm +configure:14127: result: yes + +## ---------------- ## +## Cache variables. ## +## ---------------- ## + +ac_cv_build=x86_64-unknown-linux-gnu +ac_cv_c_compiler_gnu=yes +ac_cv_env_CC_set= +ac_cv_env_CC_value= +ac_cv_env_CFLAGS_set= +ac_cv_env_CFLAGS_value= +ac_cv_env_CPPFLAGS_set= +ac_cv_env_CPPFLAGS_value= +ac_cv_env_CPP_set= +ac_cv_env_CPP_value= +ac_cv_env_LDFLAGS_set= +ac_cv_env_LDFLAGS_value= +ac_cv_env_LIBS_set= +ac_cv_env_LIBS_value= +ac_cv_env_build_alias_set= +ac_cv_env_build_alias_value= +ac_cv_env_host_alias_set= +ac_cv_env_host_alias_value= +ac_cv_env_target_alias_set= +ac_cv_env_target_alias_value= +ac_cv_header_X11_Xatom_h=yes +ac_cv_header_X11_Xlib_h=yes +ac_cv_header_X11_Xutil_h=yes +ac_cv_header_X11_cursorfont_h=yes +ac_cv_header_X11_keysym_h=yes +ac_cv_header_X11_xpm_h=yes +ac_cv_header_dlfcn_h=yes +ac_cv_header_inttypes_h=yes +ac_cv_header_memory_h=yes +ac_cv_header_stdc=yes +ac_cv_header_stdint_h=yes +ac_cv_header_stdlib_h=yes +ac_cv_header_string_h=yes +ac_cv_header_strings_h=yes +ac_cv_header_sys_stat_h=yes +ac_cv_header_sys_types_h=yes +ac_cv_header_unistd_h=yes +ac_cv_host=x86_64-unknown-linux-gnu +ac_cv_objext=o +ac_cv_path_EGREP='/usr/bin/grep -E' +ac_cv_path_FGREP='/usr/bin/grep -F' +ac_cv_path_GREP=/usr/bin/grep +ac_cv_path_SED=/usr/bin/sed +ac_cv_path_install='/usr/bin/install -c' +ac_cv_path_mkdir=/usr/bin/mkdir +ac_cv_prog_AWK=gawk +ac_cv_prog_CPP='gcc -E' +ac_cv_prog_ac_ct_AR=ar +ac_cv_prog_ac_ct_CC=gcc +ac_cv_prog_ac_ct_OBJDUMP=objdump +ac_cv_prog_ac_ct_RANLIB=ranlib +ac_cv_prog_ac_ct_STRIP=strip +ac_cv_prog_cc_c89= +ac_cv_prog_cc_g=yes +ac_cv_prog_make_make_set=yes +am_cv_CC_dependencies_compiler_type=gcc3 +am_cv_ar_interface=ar +am_cv_make_support_nested_variables=yes +am_cv_prog_cc_c_o=yes +lt_cv_ar_at_file=@ +lt_cv_archive_cmds_need_lc=no +lt_cv_deplibs_check_method=pass_all +lt_cv_file_magic_cmd='$MAGIC_CMD' +lt_cv_file_magic_test_file= +lt_cv_ld_reload_flag=-r +lt_cv_nm_interface='BSD nm' +lt_cv_objdir=.libs +lt_cv_path_LD=/usr/bin/ld +lt_cv_path_NM='/usr/bin/nm -B' +lt_cv_path_mainfest_tool=no +lt_cv_prog_compiler_c_o=yes +lt_cv_prog_compiler_pic='-fPIC -DPIC' +lt_cv_prog_compiler_pic_works=yes +lt_cv_prog_compiler_rtti_exceptions=no +lt_cv_prog_compiler_static_works=yes +lt_cv_prog_gnu_ld=yes +lt_cv_sharedlib_from_linklib_cmd='printf %s\n' +lt_cv_shlibpath_overrides_runpath=no +lt_cv_sys_global_symbol_pipe='sed -n -e '\''s/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p'\'' | sed '\''/ __gnu_lto/d'\''' +lt_cv_sys_global_symbol_to_c_name_address='sed -n -e '\''s/^: \([^ ]*\)[ ]*$/ {\"\1\", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \([^ ]*\)$/ {"\2", (void *) \&\2},/p'\''' +lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='sed -n -e '\''s/^: \([^ ]*\)[ ]*$/ {\"\1\", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \(lib[^ ]*\)$/ {"\2", (void *) \&\2},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \([^ ]*\)$/ {"lib\2", (void *) \&\2},/p'\''' +lt_cv_sys_global_symbol_to_cdecl='sed -n -e '\''s/^T .* \(.*\)$/extern int \1();/p'\'' -e '\''s/^[ABCDGIRSTW]* .* \(.*\)$/extern char \1;/p'\''' +lt_cv_sys_max_cmd_len=1572864 +lt_cv_to_host_file_cmd=func_convert_file_noop +lt_cv_to_tool_file_cmd=func_convert_file_noop + +## ----------------- ## +## Output variables. ## +## ----------------- ## + +ACLOCAL='aclocal-1.14' +AMDEPBACKSLASH='\' +AMDEP_FALSE='#' +AMDEP_TRUE='' +AMTAR='$${TAR-tar}' +AM_BACKSLASH='\' +AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' +AM_DEFAULT_VERBOSITY='1' +AM_V='$(V)' +AR='ar' +AUTOCONF='autoconf' +AUTOHEADER='autoheader' +AUTOMAKE='automake-1.14' +AWK='gawk' +CC='gcc' +CCDEPMODE='depmode=gcc3' +CFLAGS='-g -O2' +COND_EXPLES_FALSE='' +COND_EXPLES_TRUE='#' +CPP='gcc -E' +CPPFLAGS='' +CYGPATH_W='echo' +DEFS='-DHAVE_CONFIG_H' +DEPDIR='.deps' +DLLTOOL='false' +DSYMUTIL='' +DUMPBIN='' +ECHO_C='' +ECHO_N='-n' +ECHO_T='' +EGREP='/usr/bin/grep -E' +EXEEXT='' +EXEMPLES_IMAGES_DIR='${datarootdir}/libgraph/images/' +FGREP='/usr/bin/grep -F' +GREP='/usr/bin/grep' +INSTALL_DATA='${INSTALL} -m 644' +INSTALL_PROGRAM='${INSTALL}' +INSTALL_SCRIPT='${INSTALL}' +INSTALL_STRIP_PROGRAM='$(install_sh) -c -s' +LD='/usr/bin/ld -m elf_x86_64' +LDFLAGS='' +LIBOBJS='' +LIBS=' -lXpm' +LIBTOOL='$(SHELL) $(top_builddir)/libtool' +LIPO='' +LN_S='ln -s' +LTLIBOBJS='' +MAKEINFO='makeinfo' +MANIFEST_TOOL=':' +MKDIR_P='/usr/bin/mkdir -p' +NM='/usr/bin/nm -B' +NMEDIT='' +OBJDUMP='objdump' +OBJEXT='o' +OTOOL64='' +OTOOL='' +PACKAGE='bibliotheque-graphique-iut' +PACKAGE_BUGREPORT='monnerat@u-pec.fr' +PACKAGE_NAME='bibliotheque graphique iut' +PACKAGE_STRING='bibliotheque graphique iut 1.1' +PACKAGE_TARNAME='bibliotheque-graphique-iut' +PACKAGE_URL='' +PACKAGE_VERSION='1.1' +PATH_SEPARATOR=':' +PREFIX='/export/home/an22/pietrois/SAE11_2022' +RANLIB='ranlib' +SED='/usr/bin/sed' +SET_MAKE='' +SHELL='/bin/sh' +STRIP='strip' +VERSION='1.1' +ac_ct_AR='ar' +ac_ct_CC='gcc' +ac_ct_DUMPBIN='' +am__EXEEXT_FALSE='' +am__EXEEXT_TRUE='#' +am__fastdepCC_FALSE='#' +am__fastdepCC_TRUE='' +am__include='include' +am__isrc='' +am__leading_dot='.' +am__nodep='_no' +am__quote='' +am__tar='$${TAR-tar} chof - "$$tardir"' +am__untar='$${TAR-tar} xf -' +bindir='${exec_prefix}/bin' +build='x86_64-unknown-linux-gnu' +build_alias='' +build_cpu='x86_64' +build_os='linux-gnu' +build_vendor='unknown' +datadir='${datarootdir}' +datarootdir='${prefix}/share' +docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' +dvidir='${docdir}' +exec_prefix='/export/home/an22/pietrois/SAE11_2022' +host='x86_64-unknown-linux-gnu' +host_alias='' +host_cpu='x86_64' +host_os='linux-gnu' +host_vendor='unknown' +htmldir='${docdir}' +includedir='${prefix}/include' +infodir='${datarootdir}/info' +install_sh='${SHELL} /export/home/an22/pietrois/SAE11_2022/bibliotheque-graphique-iut-1.1/install-sh' +libdir='${exec_prefix}/lib' +libexecdir='${exec_prefix}/libexec' +localedir='${datarootdir}/locale' +localstatedir='${prefix}/var' +mandir='${datarootdir}/man' +mkdir_p='$(MKDIR_P)' +oldincludedir='/usr/include' +pdfdir='${docdir}' +prefix='/export/home/an22/pietrois/SAE11_2022' +program_transform_name='s,x,x,' +psdir='${docdir}' +sbindir='${exec_prefix}/sbin' +sharedstatedir='${prefix}/com' +sysconfdir='${prefix}/etc' +target_alias='' + +## ----------- ## +## confdefs.h. ## +## ----------- ## + +/* confdefs.h */ +#define PACKAGE_NAME "bibliotheque graphique iut" +#define PACKAGE_TARNAME "bibliotheque-graphique-iut" +#define PACKAGE_VERSION "1.1" +#define PACKAGE_STRING "bibliotheque graphique iut 1.1" +#define PACKAGE_BUGREPORT "monnerat@u-pec.fr" +#define PACKAGE_URL "" +#define PACKAGE "bibliotheque-graphique-iut" +#define VERSION "1.1" +#define STDC_HEADERS 1 +#define HAVE_SYS_TYPES_H 1 +#define HAVE_SYS_STAT_H 1 +#define HAVE_STDLIB_H 1 +#define HAVE_STRING_H 1 +#define HAVE_MEMORY_H 1 +#define HAVE_STRINGS_H 1 +#define HAVE_INTTYPES_H 1 +#define HAVE_STDINT_H 1 +#define HAVE_UNISTD_H 1 +#define HAVE_DLFCN_H 1 +#define LT_OBJDIR ".libs/" +#define HAVE_X11_XLIB_H 1 +#define HAVE_X11_CURSORFONT_H 1 +#define HAVE_X11_XATOM_H 1 +#define HAVE_X11_XUTIL_H 1 +#define HAVE_X11_KEYSYM_H 1 +#define HAVE_X11_XPM_H 1 +#define HAVE_XPM 1 + +configure: exit 0 diff --git a/bibliotheque-graphique-iut-1.1/config.status b/bibliotheque-graphique-iut-1.1/config.status new file mode 100755 index 0000000..d4cd2a7 --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/config.status @@ -0,0 +1,2059 @@ +#! /bin/sh +# Generated by configure. +# Run this file to recreate the current configuration. +# Compiler output produced by configure, useful for debugging +# configure, is in config.log if it exists. + +debug=false +ac_cs_recheck=false +ac_cs_silent=false + +SHELL=${CONFIG_SHELL-/bin/sh} +export SHELL +## -------------------- ## +## M4sh Initialization. ## +## -------------------- ## + +# Be more Bourne compatible +DUALCASE=1; export DUALCASE # for MKS sh +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : + emulate sh + NULLCMD=: + # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in #( + *posix*) : + set -o posix ;; #( + *) : + ;; +esac +fi + + +as_nl=' +' +export as_nl +# Printing a long string crashes Solaris 7 /usr/bin/printf. +as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo +# Prefer a ksh shell builtin over an external printf program on Solaris, +# but without wasting forks for bash or zsh. +if test -z "$BASH_VERSION$ZSH_VERSION" \ + && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='print -r --' + as_echo_n='print -rn --' +elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='printf %s\n' + as_echo_n='printf %s' +else + if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then + as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' + as_echo_n='/usr/ucb/echo -n' + else + as_echo_body='eval expr "X$1" : "X\\(.*\\)"' + as_echo_n_body='eval + arg=$1; + case $arg in #( + *"$as_nl"*) + expr "X$arg" : "X\\(.*\\)$as_nl"; + arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; + esac; + expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" + ' + export as_echo_n_body + as_echo_n='sh -c $as_echo_n_body as_echo' + fi + export as_echo_body + as_echo='sh -c $as_echo_body as_echo' +fi + +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + PATH_SEPARATOR=: + (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { + (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || + PATH_SEPARATOR=';' + } +fi + + +# IFS +# We need space, tab and new line, in precisely that order. Quoting is +# there to prevent editors from complaining about space-tab. +# (If _AS_PATH_WALK were called with IFS unset, it would disable word +# splitting by setting IFS to empty value.) +IFS=" "" $as_nl" + +# Find who we are. Look in the path if we contain no directory separator. +as_myself= +case $0 in #(( + *[\\/]* ) as_myself=$0 ;; + *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break + done +IFS=$as_save_IFS + + ;; +esac +# We did not find ourselves, most probably we were run as `sh COMMAND' +# in which case we are not to be found in the path. +if test "x$as_myself" = x; then + as_myself=$0 +fi +if test ! -f "$as_myself"; then + $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 + exit 1 +fi + +# Unset variables that we do not need and which cause bugs (e.g. in +# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" +# suppresses any "Segmentation fault" message there. '((' could +# trigger a bug in pdksh 5.2.14. +for as_var in BASH_ENV ENV MAIL MAILPATH +do eval test x\${$as_var+set} = xset \ + && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : +done +PS1='$ ' +PS2='> ' +PS4='+ ' + +# NLS nuisances. +LC_ALL=C +export LC_ALL +LANGUAGE=C +export LANGUAGE + +# CDPATH. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + + +# as_fn_error STATUS ERROR [LINENO LOG_FD] +# ---------------------------------------- +# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are +# provided, also output the error to LOG_FD, referencing LINENO. Then exit the +# script with STATUS, using 1 if that was 0. +as_fn_error () +{ + as_status=$1; test $as_status -eq 0 && as_status=1 + if test "$4"; then + as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 + fi + $as_echo "$as_me: error: $2" >&2 + as_fn_exit $as_status +} # as_fn_error + + +# as_fn_set_status STATUS +# ----------------------- +# Set $? to STATUS, without forking. +as_fn_set_status () +{ + return $1 +} # as_fn_set_status + +# as_fn_exit STATUS +# ----------------- +# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. +as_fn_exit () +{ + set +e + as_fn_set_status $1 + exit $1 +} # as_fn_exit + +# as_fn_unset VAR +# --------------- +# Portably unset VAR. +as_fn_unset () +{ + { eval $1=; unset $1;} +} +as_unset=as_fn_unset +# as_fn_append VAR VALUE +# ---------------------- +# Append the text in VALUE to the end of the definition contained in VAR. Take +# advantage of any shell optimizations that allow amortized linear growth over +# repeated appends, instead of the typical quadratic growth present in naive +# implementations. +if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : + eval 'as_fn_append () + { + eval $1+=\$2 + }' +else + as_fn_append () + { + eval $1=\$$1\$2 + } +fi # as_fn_append + +# as_fn_arith ARG... +# ------------------ +# Perform arithmetic evaluation on the ARGs, and store the result in the +# global $as_val. Take advantage of shells that can avoid forks. The arguments +# must be portable across $(()) and expr. +if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : + eval 'as_fn_arith () + { + as_val=$(( $* )) + }' +else + as_fn_arith () + { + as_val=`expr "$@" || test $? -eq 1` + } +fi # as_fn_arith + + +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then + as_expr=expr +else + as_expr=false +fi + +if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then + as_basename=basename +else + as_basename=false +fi + +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then + as_dirname=dirname +else + as_dirname=false +fi + +as_me=`$as_basename -- "$0" || +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X/"$0" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ + s//\1/ + q + } + /^X\/\(\/\/\)$/{ + s//\1/ + q + } + /^X\/\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits + +ECHO_C= ECHO_N= ECHO_T= +case `echo -n x` in #((((( +-n*) + case `echo 'xy\c'` in + *c*) ECHO_T=' ';; # ECHO_T is single tab character. + xy) ECHO_C='\c';; + *) echo `echo ksh88 bug on AIX 6.1` > /dev/null + ECHO_T=' ';; + esac;; +*) + ECHO_N='-n';; +esac + +rm -f conf$$ conf$$.exe conf$$.file +if test -d conf$$.dir; then + rm -f conf$$.dir/conf$$.file +else + rm -f conf$$.dir + mkdir conf$$.dir 2>/dev/null +fi +if (echo >conf$$.file) 2>/dev/null; then + if ln -s conf$$.file conf$$ 2>/dev/null; then + as_ln_s='ln -s' + # ... but there are two gotchas: + # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. + # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. + # In both cases, we have to default to `cp -pR'. + ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || + as_ln_s='cp -pR' + elif ln conf$$.file conf$$ 2>/dev/null; then + as_ln_s=ln + else + as_ln_s='cp -pR' + fi +else + as_ln_s='cp -pR' +fi +rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file +rmdir conf$$.dir 2>/dev/null + + +# as_fn_mkdir_p +# ------------- +# Create "$as_dir" as a directory, including parents if necessary. +as_fn_mkdir_p () +{ + + case $as_dir in #( + -*) as_dir=./$as_dir;; + esac + test -d "$as_dir" || eval $as_mkdir_p || { + as_dirs= + while :; do + case $as_dir in #( + *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( + *) as_qdir=$as_dir;; + esac + as_dirs="'$as_qdir' $as_dirs" + as_dir=`$as_dirname -- "$as_dir" || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + test -d "$as_dir" && break + done + test -z "$as_dirs" || eval "mkdir $as_dirs" + } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" + + +} # as_fn_mkdir_p +if mkdir -p . 2>/dev/null; then + as_mkdir_p='mkdir -p "$as_dir"' +else + test -d ./-p && rmdir ./-p + as_mkdir_p=false +fi + + +# as_fn_executable_p FILE +# ----------------------- +# Test if FILE is an executable regular file. +as_fn_executable_p () +{ + test -f "$1" && test -x "$1" +} # as_fn_executable_p +as_test_x='test -x' +as_executable_p=as_fn_executable_p + +# Sed expression to map a string onto a valid CPP name. +as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" + +# Sed expression to map a string onto a valid variable name. +as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" + + +exec 6>&1 +## ----------------------------------- ## +## Main body of $CONFIG_STATUS script. ## +## ----------------------------------- ## +# Save the log message, to keep $0 and so on meaningful, and to +# report actual input values of CONFIG_FILES etc. instead of their +# values after options handling. +ac_log=" +This file was extended by bibliotheque graphique iut $as_me 1.1, which was +generated by GNU Autoconf 2.69. Invocation command line was + + CONFIG_FILES = $CONFIG_FILES + CONFIG_HEADERS = $CONFIG_HEADERS + CONFIG_LINKS = $CONFIG_LINKS + CONFIG_COMMANDS = $CONFIG_COMMANDS + $ $0 $@ + +on `(hostname || uname -n) 2>/dev/null | sed 1q` +" + +# Files that config.status was made for. +config_files=" Makefile src/Makefile src/lib/Makefile src/include/Makefile src/exemples/Makefile" +config_headers=" config.h" +config_commands=" depfiles libtool" + +ac_cs_usage="\ +\`$as_me' instantiates files and other configuration actions +from templates according to the current configuration. Unless the files +and actions are specified as TAGs, all are instantiated by default. + +Usage: $0 [OPTION]... [TAG]... + + -h, --help print this help, then exit + -V, --version print version number and configuration settings, then exit + --config print configuration, then exit + -q, --quiet, --silent + do not print progress messages + -d, --debug don't remove temporary files + --recheck update $as_me by reconfiguring in the same conditions + --file=FILE[:TEMPLATE] + instantiate the configuration file FILE + --header=FILE[:TEMPLATE] + instantiate the configuration header FILE + +Configuration files: +$config_files + +Configuration headers: +$config_headers + +Configuration commands: +$config_commands + +Report bugs to ." + +ac_cs_config="'--prefix=/export/home/an22/pietrois/SAE11_2022/' '--disable-exemples'" +ac_cs_version="\ +bibliotheque graphique iut config.status 1.1 +configured by ./configure, generated by GNU Autoconf 2.69, + with options \"$ac_cs_config\" + +Copyright (C) 2012 Free Software Foundation, Inc. +This config.status script is free software; the Free Software Foundation +gives unlimited permission to copy, distribute and modify it." + +ac_pwd='/export/home/an22/pietrois/SAE11_2022/bibliotheque-graphique-iut-1.1' +srcdir='.' +INSTALL='/usr/bin/install -c' +MKDIR_P='/usr/bin/mkdir -p' +AWK='gawk' +test -n "$AWK" || AWK=awk +# The default lists apply if the user does not specify any file. +ac_need_defaults=: +while test $# != 0 +do + case $1 in + --*=?*) + ac_option=`expr "X$1" : 'X\([^=]*\)='` + ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` + ac_shift=: + ;; + --*=) + ac_option=`expr "X$1" : 'X\([^=]*\)='` + ac_optarg= + ac_shift=: + ;; + *) + ac_option=$1 + ac_optarg=$2 + ac_shift=shift + ;; + esac + + case $ac_option in + # Handling of the options. + -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) + ac_cs_recheck=: ;; + --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) + $as_echo "$ac_cs_version"; exit ;; + --config | --confi | --conf | --con | --co | --c ) + $as_echo "$ac_cs_config"; exit ;; + --debug | --debu | --deb | --de | --d | -d ) + debug=: ;; + --file | --fil | --fi | --f ) + $ac_shift + case $ac_optarg in + *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; + '') as_fn_error $? "missing file argument" ;; + esac + as_fn_append CONFIG_FILES " '$ac_optarg'" + ac_need_defaults=false;; + --header | --heade | --head | --hea ) + $ac_shift + case $ac_optarg in + *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; + esac + as_fn_append CONFIG_HEADERS " '$ac_optarg'" + ac_need_defaults=false;; + --he | --h) + # Conflict between --help and --header + as_fn_error $? "ambiguous option: \`$1' +Try \`$0 --help' for more information.";; + --help | --hel | -h ) + $as_echo "$ac_cs_usage"; exit ;; + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil | --si | --s) + ac_cs_silent=: ;; + + # This is an error. + -*) as_fn_error $? "unrecognized option: \`$1' +Try \`$0 --help' for more information." ;; + + *) as_fn_append ac_config_targets " $1" + ac_need_defaults=false ;; + + esac + shift +done + +ac_configure_extra_args= + +if $ac_cs_silent; then + exec 6>/dev/null + ac_configure_extra_args="$ac_configure_extra_args --silent" +fi + +if $ac_cs_recheck; then + set X /bin/sh './configure' '--prefix=/export/home/an22/pietrois/SAE11_2022/' '--disable-exemples' $ac_configure_extra_args --no-create --no-recursion + shift + $as_echo "running CONFIG_SHELL=/bin/sh $*" >&6 + CONFIG_SHELL='/bin/sh' + export CONFIG_SHELL + exec "$@" +fi + +exec 5>>config.log +{ + echo + sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX +## Running $as_me. ## +_ASBOX + $as_echo "$ac_log" +} >&5 + +# +# INIT-COMMANDS +# +AMDEP_TRUE="" ac_aux_dir="." + + +# The HP-UX ksh and POSIX shell print the target directory to stdout +# if CDPATH is set. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + +sed_quote_subst='s/\(["`$\\]\)/\\\1/g' +double_quote_subst='s/\(["`\\]\)/\\\1/g' +delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' +macro_version='2.4.2' +macro_revision='1.3337' +enable_shared='yes' +enable_static='yes' +pic_mode='default' +enable_fast_install='yes' +SHELL='/bin/sh' +ECHO='printf %s\n' +PATH_SEPARATOR=':' +host_alias='' +host='x86_64-unknown-linux-gnu' +host_os='linux-gnu' +build_alias='' +build='x86_64-unknown-linux-gnu' +build_os='linux-gnu' +SED='/usr/bin/sed' +Xsed='/usr/bin/sed -e 1s/^X//' +GREP='/usr/bin/grep' +EGREP='/usr/bin/grep -E' +FGREP='/usr/bin/grep -F' +LD='/usr/bin/ld -m elf_x86_64' +NM='/usr/bin/nm -B' +LN_S='ln -s' +max_cmd_len='1572864' +ac_objext='o' +exeext='' +lt_unset='unset' +lt_SP2NL='tr \040 \012' +lt_NL2SP='tr \015\012 \040\040' +lt_cv_to_host_file_cmd='func_convert_file_noop' +lt_cv_to_tool_file_cmd='func_convert_file_noop' +reload_flag=' -r' +reload_cmds='$LD$reload_flag -o $output$reload_objs' +OBJDUMP='objdump' +deplibs_check_method='pass_all' +file_magic_cmd='$MAGIC_CMD' +file_magic_glob='' +want_nocaseglob='no' +DLLTOOL='false' +sharedlib_from_linklib_cmd='printf %s\n' +AR='ar' +AR_FLAGS='cru' +archiver_list_spec='@' +STRIP='strip' +RANLIB='ranlib' +old_postinstall_cmds='chmod 644 $oldlib~$RANLIB $tool_oldlib' +old_postuninstall_cmds='' +old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs~$RANLIB $tool_oldlib' +lock_old_archive_extraction='no' +CC='gcc' +CFLAGS='-g -O2' +compiler='gcc' +GCC='yes' +lt_cv_sys_global_symbol_pipe='sed -n -e '\''s/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p'\'' | sed '\''/ __gnu_lto/d'\''' +lt_cv_sys_global_symbol_to_cdecl='sed -n -e '\''s/^T .* \(.*\)$/extern int \1();/p'\'' -e '\''s/^[ABCDGIRSTW]* .* \(.*\)$/extern char \1;/p'\''' +lt_cv_sys_global_symbol_to_c_name_address='sed -n -e '\''s/^: \([^ ]*\)[ ]*$/ {\"\1\", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \([^ ]*\)$/ {"\2", (void *) \&\2},/p'\''' +lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='sed -n -e '\''s/^: \([^ ]*\)[ ]*$/ {\"\1\", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \(lib[^ ]*\)$/ {"\2", (void *) \&\2},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \([^ ]*\)$/ {"lib\2", (void *) \&\2},/p'\''' +nm_file_list_spec='@' +lt_sysroot='' +objdir='.libs' +MAGIC_CMD='file' +lt_prog_compiler_no_builtin_flag=' -fno-builtin' +lt_prog_compiler_pic=' -fPIC -DPIC' +lt_prog_compiler_wl='-Wl,' +lt_prog_compiler_static='-static' +lt_cv_prog_compiler_c_o='yes' +need_locks='no' +MANIFEST_TOOL=':' +DSYMUTIL='' +NMEDIT='' +LIPO='' +OTOOL='' +OTOOL64='' +libext='a' +shrext_cmds='.so' +extract_expsyms_cmds='' +archive_cmds_need_lc='no' +enable_shared_with_static_runtimes='no' +export_dynamic_flag_spec='${wl}--export-dynamic' +whole_archive_flag_spec='${wl}--whole-archive$convenience ${wl}--no-whole-archive' +compiler_needs_object='no' +old_archive_from_new_cmds='' +old_archive_from_expsyms_cmds='' +archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' +archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~ + cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ + echo "local: *; };" >> $output_objdir/$libname.ver~ + $CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' +module_cmds='' +module_expsym_cmds='' +with_gnu_ld='yes' +allow_undefined_flag='' +no_undefined_flag='' +hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' +hardcode_libdir_separator='' +hardcode_direct='no' +hardcode_direct_absolute='no' +hardcode_minus_L='no' +hardcode_shlibpath_var='unsupported' +hardcode_automatic='no' +inherit_rpath='no' +link_all_deplibs='unknown' +always_export_symbols='no' +export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' +exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*' +include_expsyms='' +prelink_cmds='' +postlink_cmds='' +file_list_spec='' +variables_saved_for_relink='PATH LD_LIBRARY_PATH LD_RUN_PATH GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH' +need_lib_prefix='no' +need_version='no' +version_type='linux' +runpath_var='LD_RUN_PATH' +shlibpath_var='LD_LIBRARY_PATH' +shlibpath_overrides_runpath='no' +libname_spec='lib$name' +library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' +soname_spec='${libname}${release}${shared_ext}$major' +install_override_mode='' +postinstall_cmds='' +postuninstall_cmds='' +finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' +finish_eval='' +hardcode_into_libs='yes' +sys_lib_search_path_spec='/usr/lib/gcc/x86_64-pc-linux-gnu/12.2.0 /usr/lib /lib ' +sys_lib_dlsearch_path_spec='/lib /usr/lib /opt/android-sdk/tools/lib /usr/lib/libfakeroot /usr/lib32 ' +hardcode_action='immediate' +enable_dlopen='unknown' +enable_dlopen_self='unknown' +enable_dlopen_self_static='unknown' +old_striplib='strip --strip-debug' +striplib='strip --strip-unneeded' + +LTCC='gcc' +LTCFLAGS='-g -O2' +compiler='gcc' + +# A function that is used when there is no print builtin or printf. +func_fallback_echo () +{ + eval 'cat <<_LTECHO_EOF +$1 +_LTECHO_EOF' +} + +# Quote evaled strings. +for var in SHELL ECHO PATH_SEPARATOR SED GREP EGREP FGREP LD NM LN_S lt_SP2NL lt_NL2SP reload_flag OBJDUMP deplibs_check_method file_magic_cmd file_magic_glob want_nocaseglob DLLTOOL sharedlib_from_linklib_cmd AR AR_FLAGS archiver_list_spec STRIP RANLIB CC CFLAGS compiler lt_cv_sys_global_symbol_pipe lt_cv_sys_global_symbol_to_cdecl lt_cv_sys_global_symbol_to_c_name_address lt_cv_sys_global_symbol_to_c_name_address_lib_prefix nm_file_list_spec lt_prog_compiler_no_builtin_flag lt_prog_compiler_pic lt_prog_compiler_wl lt_prog_compiler_static lt_cv_prog_compiler_c_o need_locks MANIFEST_TOOL DSYMUTIL NMEDIT LIPO OTOOL OTOOL64 shrext_cmds export_dynamic_flag_spec whole_archive_flag_spec compiler_needs_object with_gnu_ld allow_undefined_flag no_undefined_flag hardcode_libdir_flag_spec hardcode_libdir_separator exclude_expsyms include_expsyms file_list_spec variables_saved_for_relink libname_spec library_names_spec soname_spec install_override_mode finish_eval old_striplib striplib; do + case `eval \\$ECHO \\""\\$$var"\\"` in + *[\\\`\"\$]*) + eval "lt_$var=\\\"\`\$ECHO \"\$$var\" | \$SED \"\$sed_quote_subst\"\`\\\"" + ;; + *) + eval "lt_$var=\\\"\$$var\\\"" + ;; + esac +done + +# Double-quote double-evaled strings. +for var in reload_cmds old_postinstall_cmds old_postuninstall_cmds old_archive_cmds extract_expsyms_cmds old_archive_from_new_cmds old_archive_from_expsyms_cmds archive_cmds archive_expsym_cmds module_cmds module_expsym_cmds export_symbols_cmds prelink_cmds postlink_cmds postinstall_cmds postuninstall_cmds finish_cmds sys_lib_search_path_spec sys_lib_dlsearch_path_spec; do + case `eval \\$ECHO \\""\\$$var"\\"` in + *[\\\`\"\$]*) + eval "lt_$var=\\\"\`\$ECHO \"\$$var\" | \$SED -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\"" + ;; + *) + eval "lt_$var=\\\"\$$var\\\"" + ;; + esac +done + +ac_aux_dir='.' +xsi_shell='yes' +lt_shell_append='yes' + +# See if we are running on zsh, and set the options which allow our +# commands through without removal of \ escapes INIT. +if test -n "${ZSH_VERSION+set}" ; then + setopt NO_GLOB_SUBST +fi + + + PACKAGE='bibliotheque-graphique-iut' + VERSION='1.1' + TIMESTAMP='' + RM='rm -f' + ofile='libtool' + + + + + +# Handling of arguments. +for ac_config_target in $ac_config_targets +do + case $ac_config_target in + "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; + "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;; + "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; + "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; + "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;; + "src/lib/Makefile") CONFIG_FILES="$CONFIG_FILES src/lib/Makefile" ;; + "src/include/Makefile") CONFIG_FILES="$CONFIG_FILES src/include/Makefile" ;; + "src/exemples/Makefile") CONFIG_FILES="$CONFIG_FILES src/exemples/Makefile" ;; + + *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; + esac +done + + +# If the user did not use the arguments to specify the items to instantiate, +# then the envvar interface is used. Set only those that are not. +# We use the long form for the default assignment because of an extremely +# bizarre bug on SunOS 4.1.3. +if $ac_need_defaults; then + test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files + test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers + test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands +fi + +# Have a temporary directory for convenience. Make it in the build tree +# simply because there is no reason against having it here, and in addition, +# creating and moving files from /tmp can sometimes cause problems. +# Hook for its removal unless debugging. +# Note that there is a small window in which the directory will not be cleaned: +# after its creation but before its name has been assigned to `$tmp'. +$debug || +{ + tmp= ac_tmp= + trap 'exit_status=$? + : "${ac_tmp:=$tmp}" + { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status +' 0 + trap 'as_fn_exit 1' 1 2 13 15 +} +# Create a (secure) tmp directory for tmp files. + +{ + tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && + test -d "$tmp" +} || +{ + tmp=./conf$$-$RANDOM + (umask 077 && mkdir "$tmp") +} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5 +ac_tmp=$tmp + +# Set up the scripts for CONFIG_FILES section. +# No need to generate them if there are no CONFIG_FILES. +# This happens for instance with `./config.status config.h'. +if test -n "$CONFIG_FILES"; then + + +ac_cr=`echo X | tr X '\015'` +# On cygwin, bash can eat \r inside `` if the user requested igncr. +# But we know of no other shell where ac_cr would be empty at this +# point, so we can use a bashism as a fallback. +if test "x$ac_cr" = x; then + eval ac_cr=\$\'\\r\' +fi +ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' /dev/null` +if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then + ac_cs_awk_cr='\\r' +else + ac_cs_awk_cr=$ac_cr +fi + +echo 'BEGIN {' >"$ac_tmp/subs1.awk" && +cat >>"$ac_tmp/subs1.awk" <<\_ACAWK && +S["am__EXEEXT_FALSE"]="" +S["am__EXEEXT_TRUE"]="#" +S["LTLIBOBJS"]="" +S["LIBOBJS"]="" +S["COND_EXPLES_FALSE"]="" +S["COND_EXPLES_TRUE"]="#" +S["PREFIX"]="/export/home/an22/pietrois/SAE11_2022" +S["EXEMPLES_IMAGES_DIR"]="${datarootdir}/libgraph/images/" +S["CPP"]="gcc -E" +S["OTOOL64"]="" +S["OTOOL"]="" +S["LIPO"]="" +S["NMEDIT"]="" +S["DSYMUTIL"]="" +S["MANIFEST_TOOL"]=":" +S["RANLIB"]="ranlib" +S["DLLTOOL"]="false" +S["OBJDUMP"]="objdump" +S["LN_S"]="ln -s" +S["NM"]="/usr/bin/nm -B" +S["ac_ct_DUMPBIN"]="" +S["DUMPBIN"]="" +S["LD"]="/usr/bin/ld -m elf_x86_64" +S["FGREP"]="/usr/bin/grep -F" +S["EGREP"]="/usr/bin/grep -E" +S["GREP"]="/usr/bin/grep" +S["SED"]="/usr/bin/sed" +S["host_os"]="linux-gnu" +S["host_vendor"]="unknown" +S["host_cpu"]="x86_64" +S["host"]="x86_64-unknown-linux-gnu" +S["build_os"]="linux-gnu" +S["build_vendor"]="unknown" +S["build_cpu"]="x86_64" +S["build"]="x86_64-unknown-linux-gnu" +S["LIBTOOL"]="$(SHELL) $(top_builddir)/libtool" +S["ac_ct_AR"]="ar" +S["AR"]="ar" +S["am__fastdepCC_FALSE"]="#" +S["am__fastdepCC_TRUE"]="" +S["CCDEPMODE"]="depmode=gcc3" +S["am__nodep"]="_no" +S["AMDEPBACKSLASH"]="\\" +S["AMDEP_FALSE"]="#" +S["AMDEP_TRUE"]="" +S["am__quote"]="" +S["am__include"]="include" +S["DEPDIR"]=".deps" +S["OBJEXT"]="o" +S["EXEEXT"]="" +S["ac_ct_CC"]="gcc" +S["CPPFLAGS"]="" +S["LDFLAGS"]="" +S["CFLAGS"]="-g -O2" +S["CC"]="gcc" +S["AM_BACKSLASH"]="\\" +S["AM_DEFAULT_VERBOSITY"]="1" +S["AM_DEFAULT_V"]="$(AM_DEFAULT_VERBOSITY)" +S["AM_V"]="$(V)" +S["am__untar"]="$${TAR-tar} xf -" +S["am__tar"]="$${TAR-tar} chof - \"$$tardir\"" +S["AMTAR"]="$${TAR-tar}" +S["am__leading_dot"]="." +S["SET_MAKE"]="" +S["AWK"]="gawk" +S["mkdir_p"]="$(MKDIR_P)" +S["MKDIR_P"]="/usr/bin/mkdir -p" +S["INSTALL_STRIP_PROGRAM"]="$(install_sh) -c -s" +S["STRIP"]="strip" +S["install_sh"]="${SHELL} /export/home/an22/pietrois/SAE11_2022/bibliotheque-graphique-iut-1.1/install-sh" +S["MAKEINFO"]="makeinfo" +S["AUTOHEADER"]="autoheader" +S["AUTOMAKE"]="automake-1.14" +S["AUTOCONF"]="autoconf" +S["ACLOCAL"]="aclocal-1.14" +S["VERSION"]="1.1" +S["PACKAGE"]="bibliotheque-graphique-iut" +S["CYGPATH_W"]="echo" +S["am__isrc"]="" +S["INSTALL_DATA"]="${INSTALL} -m 644" +S["INSTALL_SCRIPT"]="${INSTALL}" +S["INSTALL_PROGRAM"]="${INSTALL}" +S["target_alias"]="" +S["host_alias"]="" +S["build_alias"]="" +S["LIBS"]=" -lXpm" +S["ECHO_T"]="" +S["ECHO_N"]="-n" +S["ECHO_C"]="" +S["DEFS"]="-DHAVE_CONFIG_H" +S["mandir"]="${datarootdir}/man" +S["localedir"]="${datarootdir}/locale" +S["libdir"]="${exec_prefix}/lib" +S["psdir"]="${docdir}" +S["pdfdir"]="${docdir}" +S["dvidir"]="${docdir}" +S["htmldir"]="${docdir}" +S["infodir"]="${datarootdir}/info" +S["docdir"]="${datarootdir}/doc/${PACKAGE_TARNAME}" +S["oldincludedir"]="/usr/include" +S["includedir"]="${prefix}/include" +S["localstatedir"]="${prefix}/var" +S["sharedstatedir"]="${prefix}/com" +S["sysconfdir"]="${prefix}/etc" +S["datadir"]="${datarootdir}" +S["datarootdir"]="${prefix}/share" +S["libexecdir"]="${exec_prefix}/libexec" +S["sbindir"]="${exec_prefix}/sbin" +S["bindir"]="${exec_prefix}/bin" +S["program_transform_name"]="s,x,x," +S["prefix"]="/export/home/an22/pietrois/SAE11_2022" +S["exec_prefix"]="/export/home/an22/pietrois/SAE11_2022" +S["PACKAGE_URL"]="" +S["PACKAGE_BUGREPORT"]="monnerat@u-pec.fr" +S["PACKAGE_STRING"]="bibliotheque graphique iut 1.1" +S["PACKAGE_VERSION"]="1.1" +S["PACKAGE_TARNAME"]="bibliotheque-graphique-iut" +S["PACKAGE_NAME"]="bibliotheque graphique iut" +S["PATH_SEPARATOR"]=":" +S["SHELL"]="/bin/sh" +_ACAWK +cat >>"$ac_tmp/subs1.awk" <<_ACAWK && + for (key in S) S_is_set[key] = 1 + FS = "" + +} +{ + line = $ 0 + nfields = split(line, field, "@") + substed = 0 + len = length(field[1]) + for (i = 2; i < nfields; i++) { + key = field[i] + keylen = length(key) + if (S_is_set[key]) { + value = S[key] + line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) + len += length(value) + length(field[++i]) + substed = 1 + } else + len += 1 + keylen + } + + print line +} + +_ACAWK +if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then + sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" +else + cat +fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \ + || as_fn_error $? "could not setup config files machinery" "$LINENO" 5 +fi # test -n "$CONFIG_FILES" + +# Set up the scripts for CONFIG_HEADERS section. +# No need to generate them if there are no CONFIG_HEADERS. +# This happens for instance with `./config.status Makefile'. +if test -n "$CONFIG_HEADERS"; then +cat >"$ac_tmp/defines.awk" <<\_ACAWK || +BEGIN { +D["PACKAGE_NAME"]=" \"bibliotheque graphique iut\"" +D["PACKAGE_TARNAME"]=" \"bibliotheque-graphique-iut\"" +D["PACKAGE_VERSION"]=" \"1.1\"" +D["PACKAGE_STRING"]=" \"bibliotheque graphique iut 1.1\"" +D["PACKAGE_BUGREPORT"]=" \"monnerat@u-pec.fr\"" +D["PACKAGE_URL"]=" \"\"" +D["PACKAGE"]=" \"bibliotheque-graphique-iut\"" +D["VERSION"]=" \"1.1\"" +D["STDC_HEADERS"]=" 1" +D["HAVE_SYS_TYPES_H"]=" 1" +D["HAVE_SYS_STAT_H"]=" 1" +D["HAVE_STDLIB_H"]=" 1" +D["HAVE_STRING_H"]=" 1" +D["HAVE_MEMORY_H"]=" 1" +D["HAVE_STRINGS_H"]=" 1" +D["HAVE_INTTYPES_H"]=" 1" +D["HAVE_STDINT_H"]=" 1" +D["HAVE_UNISTD_H"]=" 1" +D["HAVE_DLFCN_H"]=" 1" +D["LT_OBJDIR"]=" \".libs/\"" +D["HAVE_X11_XLIB_H"]=" 1" +D["HAVE_X11_CURSORFONT_H"]=" 1" +D["HAVE_X11_XATOM_H"]=" 1" +D["HAVE_X11_XUTIL_H"]=" 1" +D["HAVE_X11_KEYSYM_H"]=" 1" +D["HAVE_X11_XPM_H"]=" 1" +D["HAVE_XPM"]=" 1" + for (key in D) D_is_set[key] = 1 + FS = "" +} +/^[\t ]*#[\t ]*(define|undef)[\t ]+[_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ][_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789]*([\t (]|$)/ { + line = $ 0 + split(line, arg, " ") + if (arg[1] == "#") { + defundef = arg[2] + mac1 = arg[3] + } else { + defundef = substr(arg[1], 2) + mac1 = arg[2] + } + split(mac1, mac2, "(") #) + macro = mac2[1] + prefix = substr(line, 1, index(line, defundef) - 1) + if (D_is_set[macro]) { + # Preserve the white space surrounding the "#". + print prefix "define", macro P[macro] D[macro] + next + } else { + # Replace #undef with comments. This is necessary, for example, + # in the case of _POSIX_SOURCE, which is predefined and required + # on some systems where configure will not decide to define it. + if (defundef == "undef") { + print "/*", prefix defundef, macro, "*/" + next + } + } +} +{ print } +_ACAWK + as_fn_error $? "could not setup config headers machinery" "$LINENO" 5 +fi # test -n "$CONFIG_HEADERS" + + +eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS" +shift +for ac_tag +do + case $ac_tag in + :[FHLC]) ac_mode=$ac_tag; continue;; + esac + case $ac_mode$ac_tag in + :[FHL]*:*);; + :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;; + :[FH]-) ac_tag=-:-;; + :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; + esac + ac_save_IFS=$IFS + IFS=: + set x $ac_tag + IFS=$ac_save_IFS + shift + ac_file=$1 + shift + + case $ac_mode in + :L) ac_source=$1;; + :[FH]) + ac_file_inputs= + for ac_f + do + case $ac_f in + -) ac_f="$ac_tmp/stdin";; + *) # Look for the file first in the build tree, then in the source tree + # (if the path is not absolute). The absolute path cannot be DOS-style, + # because $ac_f cannot contain `:'. + test -f "$ac_f" || + case $ac_f in + [\\/$]*) false;; + *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; + esac || + as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;; + esac + case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac + as_fn_append ac_file_inputs " '$ac_f'" + done + + # Let's still pretend it is `configure' which instantiates (i.e., don't + # use $as_me), people would be surprised to read: + # /* config.h. Generated by config.status. */ + configure_input='Generated from '` + $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' + `' by configure.' + if test x"$ac_file" != x-; then + configure_input="$ac_file. $configure_input" + { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 +$as_echo "$as_me: creating $ac_file" >&6;} + fi + # Neutralize special characters interpreted by sed in replacement strings. + case $configure_input in #( + *\&* | *\|* | *\\* ) + ac_sed_conf_input=`$as_echo "$configure_input" | + sed 's/[\\\\&|]/\\\\&/g'`;; #( + *) ac_sed_conf_input=$configure_input;; + esac + + case $ac_tag in + *:-:* | *:-) cat >"$ac_tmp/stdin" \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; + esac + ;; + esac + + ac_dir=`$as_dirname -- "$ac_file" || +$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$ac_file" : 'X\(//\)[^/]' \| \ + X"$ac_file" : 'X\(//\)$' \| \ + X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$ac_file" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + as_dir="$ac_dir"; as_fn_mkdir_p + ac_builddir=. + +case "$ac_dir" in +.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; +*) + ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` + # A ".." for each directory in $ac_dir_suffix. + ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` + case $ac_top_builddir_sub in + "") ac_top_builddir_sub=. ac_top_build_prefix= ;; + *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; + esac ;; +esac +ac_abs_top_builddir=$ac_pwd +ac_abs_builddir=$ac_pwd$ac_dir_suffix +# for backward compatibility: +ac_top_builddir=$ac_top_build_prefix + +case $srcdir in + .) # We are building in place. + ac_srcdir=. + ac_top_srcdir=$ac_top_builddir_sub + ac_abs_top_srcdir=$ac_pwd ;; + [\\/]* | ?:[\\/]* ) # Absolute name. + ac_srcdir=$srcdir$ac_dir_suffix; + ac_top_srcdir=$srcdir + ac_abs_top_srcdir=$srcdir ;; + *) # Relative name. + ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix + ac_top_srcdir=$ac_top_build_prefix$srcdir + ac_abs_top_srcdir=$ac_pwd/$srcdir ;; +esac +ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix + + + case $ac_mode in + :F) + # + # CONFIG_FILE + # + + case $INSTALL in + [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; + *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; + esac + ac_MKDIR_P=$MKDIR_P + case $MKDIR_P in + [\\/$]* | ?:[\\/]* ) ;; + */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;; + esac +# If the template does not know about datarootdir, expand it. +# FIXME: This hack should be removed a few years after 2.60. +ac_datarootdir_hack=; ac_datarootdir_seen= +ac_sed_dataroot=' +/datarootdir/ { + p + q +} +/@datadir@/p +/@docdir@/p +/@infodir@/p +/@localedir@/p +/@mandir@/p' +case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in +*datarootdir*) ac_datarootdir_seen=yes;; +*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 +$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} + ac_datarootdir_hack=' + s&@datadir@&${datarootdir}&g + s&@docdir@&${datarootdir}/doc/${PACKAGE_TARNAME}&g + s&@infodir@&${datarootdir}/info&g + s&@localedir@&${datarootdir}/locale&g + s&@mandir@&${datarootdir}/man&g + s&\${datarootdir}&${prefix}/share&g' ;; +esac +ac_sed_extra="/^[ ]*VPATH[ ]*=[ ]*/{ +h +s/// +s/^/:/ +s/[ ]*$/:/ +s/:\$(srcdir):/:/g +s/:\${srcdir}:/:/g +s/:@srcdir@:/:/g +s/^:*// +s/:*$// +x +s/\(=[ ]*\).*/\1/ +G +s/\n// +s/^[^=]*=[ ]*$// +} + +:t +/@[a-zA-Z_][a-zA-Z_0-9]*@/!b +s|@configure_input@|$ac_sed_conf_input|;t t +s&@top_builddir@&$ac_top_builddir_sub&;t t +s&@top_build_prefix@&$ac_top_build_prefix&;t t +s&@srcdir@&$ac_srcdir&;t t +s&@abs_srcdir@&$ac_abs_srcdir&;t t +s&@top_srcdir@&$ac_top_srcdir&;t t +s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t +s&@builddir@&$ac_builddir&;t t +s&@abs_builddir@&$ac_abs_builddir&;t t +s&@abs_top_builddir@&$ac_abs_top_builddir&;t t +s&@INSTALL@&$ac_INSTALL&;t t +s&@MKDIR_P@&$ac_MKDIR_P&;t t +$ac_datarootdir_hack +" +eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \ + >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + +test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && + { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } && + { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \ + "$ac_tmp/out"`; test -z "$ac_out"; } && + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' +which seems to be undefined. Please make sure it is defined" >&5 +$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' +which seems to be undefined. Please make sure it is defined" >&2;} + + rm -f "$ac_tmp/stdin" + case $ac_file in + -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";; + *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";; + esac \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + ;; + :H) + # + # CONFIG_HEADER + # + if test x"$ac_file" != x-; then + { + $as_echo "/* $configure_input */" \ + && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" + } >"$ac_tmp/config.h" \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then + { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 +$as_echo "$as_me: $ac_file is unchanged" >&6;} + else + rm -f "$ac_file" + mv "$ac_tmp/config.h" "$ac_file" \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + fi + else + $as_echo "/* $configure_input */" \ + && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \ + || as_fn_error $? "could not create -" "$LINENO" 5 + fi +# Compute "$ac_file"'s index in $config_headers. +_am_arg="$ac_file" +_am_stamp_count=1 +for _am_header in $config_headers :; do + case $_am_header in + $_am_arg | $_am_arg:* ) + break ;; + * ) + _am_stamp_count=`expr $_am_stamp_count + 1` ;; + esac +done +echo "timestamp for $_am_arg" >`$as_dirname -- "$_am_arg" || +$as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$_am_arg" : 'X\(//\)[^/]' \| \ + X"$_am_arg" : 'X\(//\)$' \| \ + X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$_am_arg" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'`/stamp-h$_am_stamp_count + ;; + + :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5 +$as_echo "$as_me: executing $ac_file commands" >&6;} + ;; + esac + + + case $ac_file$ac_mode in + "depfiles":C) test x"$AMDEP_TRUE" != x"" || { + # Older Autoconf quotes --file arguments for eval, but not when files + # are listed without --file. Let's play safe and only enable the eval + # if we detect the quoting. + case $CONFIG_FILES in + *\'*) eval set x "$CONFIG_FILES" ;; + *) set x $CONFIG_FILES ;; + esac + shift + for mf + do + # Strip MF so we end up with the name of the file. + mf=`echo "$mf" | sed -e 's/:.*$//'` + # Check whether this is an Automake generated Makefile or not. + # We used to match only the files named 'Makefile.in', but + # some people rename them; so instead we look at the file content. + # Grep'ing the first line is not enough: some people post-process + # each Makefile.in and add a new line on top of each file to say so. + # Grep'ing the whole file is not good either: AIX grep has a line + # limit of 2048, but all sed's we know have understand at least 4000. + if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then + dirpart=`$as_dirname -- "$mf" || +$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$mf" : 'X\(//\)[^/]' \| \ + X"$mf" : 'X\(//\)$' \| \ + X"$mf" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$mf" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + else + continue + fi + # Extract the definition of DEPDIR, am__include, and am__quote + # from the Makefile without running 'make'. + DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` + test -z "$DEPDIR" && continue + am__include=`sed -n 's/^am__include = //p' < "$mf"` + test -z "$am__include" && continue + am__quote=`sed -n 's/^am__quote = //p' < "$mf"` + # Find all dependency output files, they are included files with + # $(DEPDIR) in their names. We invoke sed twice because it is the + # simplest approach to changing $(DEPDIR) to its actual value in the + # expansion. + for file in `sed -n " + s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ + sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do + # Make sure the directory exists. + test -f "$dirpart/$file" && continue + fdir=`$as_dirname -- "$file" || +$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$file" : 'X\(//\)[^/]' \| \ + X"$file" : 'X\(//\)$' \| \ + X"$file" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$file" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + as_dir=$dirpart/$fdir; as_fn_mkdir_p + # echo "creating $dirpart/$file" + echo '# dummy' > "$dirpart/$file" + done + done +} + ;; + "libtool":C) + + # See if we are running on zsh, and set the options which allow our + # commands through without removal of \ escapes. + if test -n "${ZSH_VERSION+set}" ; then + setopt NO_GLOB_SUBST + fi + + cfgfile="${ofile}T" + trap "$RM \"$cfgfile\"; exit 1" 1 2 15 + $RM "$cfgfile" + + cat <<_LT_EOF >> "$cfgfile" +#! $SHELL + +# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. +# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION +# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: +# NOTE: Changes made to this file will be lost: look at ltmain.sh. +# +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, +# 2006, 2007, 2008, 2009, 2010, 2011 Free Software +# Foundation, Inc. +# Written by Gordon Matzigkeit, 1996 +# +# This file is part of GNU Libtool. +# +# GNU Libtool is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation; either version 2 of +# the License, or (at your option) any later version. +# +# As a special exception to the GNU General Public License, +# if you distribute this file as part of a program or library that +# is built using GNU Libtool, you may include this file under the +# same distribution terms that you use for the rest of that program. +# +# GNU Libtool is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with GNU Libtool; see the file COPYING. If not, a copy +# can be downloaded from http://www.gnu.org/licenses/gpl.html, or +# obtained by writing to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + + +# The names of the tagged configurations supported by this script. +available_tags="" + +# ### BEGIN LIBTOOL CONFIG + +# Which release of libtool.m4 was used? +macro_version=$macro_version +macro_revision=$macro_revision + +# Whether or not to build shared libraries. +build_libtool_libs=$enable_shared + +# Whether or not to build static libraries. +build_old_libs=$enable_static + +# What type of objects to build. +pic_mode=$pic_mode + +# Whether or not to optimize for fast installation. +fast_install=$enable_fast_install + +# Shell to use when invoking shell scripts. +SHELL=$lt_SHELL + +# An echo program that protects backslashes. +ECHO=$lt_ECHO + +# The PATH separator for the build system. +PATH_SEPARATOR=$lt_PATH_SEPARATOR + +# The host system. +host_alias=$host_alias +host=$host +host_os=$host_os + +# The build system. +build_alias=$build_alias +build=$build +build_os=$build_os + +# A sed program that does not truncate output. +SED=$lt_SED + +# Sed that helps us avoid accidentally triggering echo(1) options like -n. +Xsed="\$SED -e 1s/^X//" + +# A grep program that handles long lines. +GREP=$lt_GREP + +# An ERE matcher. +EGREP=$lt_EGREP + +# A literal string matcher. +FGREP=$lt_FGREP + +# A BSD- or MS-compatible name lister. +NM=$lt_NM + +# Whether we need soft or hard links. +LN_S=$lt_LN_S + +# What is the maximum length of a command? +max_cmd_len=$max_cmd_len + +# Object file suffix (normally "o"). +objext=$ac_objext + +# Executable file suffix (normally ""). +exeext=$exeext + +# whether the shell understands "unset". +lt_unset=$lt_unset + +# turn spaces into newlines. +SP2NL=$lt_lt_SP2NL + +# turn newlines into spaces. +NL2SP=$lt_lt_NL2SP + +# convert \$build file names to \$host format. +to_host_file_cmd=$lt_cv_to_host_file_cmd + +# convert \$build files to toolchain format. +to_tool_file_cmd=$lt_cv_to_tool_file_cmd + +# An object symbol dumper. +OBJDUMP=$lt_OBJDUMP + +# 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 + +# How to find potential files when deplibs_check_method = "file_magic". +file_magic_glob=$lt_file_magic_glob + +# Find potential files using nocaseglob when deplibs_check_method = "file_magic". +want_nocaseglob=$lt_want_nocaseglob + +# DLL creation program. +DLLTOOL=$lt_DLLTOOL + +# Command to associate shared and link libraries. +sharedlib_from_linklib_cmd=$lt_sharedlib_from_linklib_cmd + +# The archiver. +AR=$lt_AR + +# Flags to create an archive. +AR_FLAGS=$lt_AR_FLAGS + +# How to feed a file listing to the archiver. +archiver_list_spec=$lt_archiver_list_spec + +# A symbol stripping program. +STRIP=$lt_STRIP + +# Commands used to install an old-style archive. +RANLIB=$lt_RANLIB +old_postinstall_cmds=$lt_old_postinstall_cmds +old_postuninstall_cmds=$lt_old_postuninstall_cmds + +# Whether to use a lock for old archive extraction. +lock_old_archive_extraction=$lock_old_archive_extraction + +# A C compiler. +LTCC=$lt_CC + +# LTCC compiler flags. +LTCFLAGS=$lt_CFLAGS + +# Take the output of nm and produce a listing of raw symbols and C names. +global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe + +# Transform the output of nm in a proper C declaration. +global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl + +# Transform the output of nm in a C name address pair. +global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address + +# Transform the output of nm in a C name address pair when lib prefix is needed. +global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix + +# Specify filename containing input files for \$NM. +nm_file_list_spec=$lt_nm_file_list_spec + +# The root where to search for dependent libraries,and in which our libraries should be installed. +lt_sysroot=$lt_sysroot + +# The name of the directory that contains temporary libtool files. +objdir=$objdir + +# Used to examine libraries when file_magic_cmd begins with "file". +MAGIC_CMD=$MAGIC_CMD + +# Must we lock files when doing compilation? +need_locks=$lt_need_locks + +# Manifest tool. +MANIFEST_TOOL=$lt_MANIFEST_TOOL + +# Tool to manipulate archived DWARF debug symbol files on Mac OS X. +DSYMUTIL=$lt_DSYMUTIL + +# Tool to change global to local symbols on Mac OS X. +NMEDIT=$lt_NMEDIT + +# Tool to manipulate fat objects and archives on Mac OS X. +LIPO=$lt_LIPO + +# ldd/readelf like tool for Mach-O binaries on Mac OS X. +OTOOL=$lt_OTOOL + +# ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4. +OTOOL64=$lt_OTOOL64 + +# Old archive suffix (normally "a"). +libext=$libext + +# Shared library suffix (normally ".so"). +shrext_cmds=$lt_shrext_cmds + +# The commands to extract the exported symbol list from a shared archive. +extract_expsyms_cmds=$lt_extract_expsyms_cmds + +# Variables whose values should be saved in libtool wrapper scripts and +# restored at link time. +variables_saved_for_relink=$lt_variables_saved_for_relink + +# Do we need the "lib" prefix for modules? +need_lib_prefix=$need_lib_prefix + +# Do we need a version for libraries? +need_version=$need_version + +# Library versioning type. +version_type=$version_type + +# Shared library runtime path variable. +runpath_var=$runpath_var + +# Shared library path variable. +shlibpath_var=$shlibpath_var + +# Is shlibpath searched before the hard-coded library search path? +shlibpath_overrides_runpath=$shlibpath_overrides_runpath + +# Format of library name prefix. +libname_spec=$lt_libname_spec + +# List of archive names. First name is the real one, the rest are links. +# The last name is the one that the linker finds with -lNAME +library_names_spec=$lt_library_names_spec + +# The coded name of the library, if different from the real name. +soname_spec=$lt_soname_spec + +# Permission mode override for installation of shared libraries. +install_override_mode=$lt_install_override_mode + +# Command to use after installation of a shared archive. +postinstall_cmds=$lt_postinstall_cmds + +# Command to use after uninstallation of a shared archive. +postuninstall_cmds=$lt_postuninstall_cmds + +# Commands used to finish a libtool library installation in a directory. +finish_cmds=$lt_finish_cmds + +# As "finish_cmds", except a single script fragment to be evaled but +# not shown. +finish_eval=$lt_finish_eval + +# Whether we should hardcode library paths into libraries. +hardcode_into_libs=$hardcode_into_libs + +# Compile-time system search path for libraries. +sys_lib_search_path_spec=$lt_sys_lib_search_path_spec + +# Run-time system search path for libraries. +sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec + +# Whether dlopen is supported. +dlopen_support=$enable_dlopen + +# Whether dlopen of programs is supported. +dlopen_self=$enable_dlopen_self + +# Whether dlopen of statically linked programs is supported. +dlopen_self_static=$enable_dlopen_self_static + +# Commands to strip libraries. +old_striplib=$lt_old_striplib +striplib=$lt_striplib + + +# The linker used to build libraries. +LD=$lt_LD + +# How to create reloadable object files. +reload_flag=$lt_reload_flag +reload_cmds=$lt_reload_cmds + +# Commands used to build an old-style archive. +old_archive_cmds=$lt_old_archive_cmds + +# A language specific compiler. +CC=$lt_compiler + +# Is the compiler the GNU compiler? +with_gcc=$GCC + +# Compiler flag to turn off builtin functions. +no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag + +# Additional compiler flags for building library objects. +pic_flag=$lt_lt_prog_compiler_pic + +# How to pass a linker flag through the compiler. +wl=$lt_lt_prog_compiler_wl + +# Compiler flag to prevent dynamic linking. +link_static_flag=$lt_lt_prog_compiler_static + +# Does compiler simultaneously support -c and -o options? +compiler_c_o=$lt_lt_cv_prog_compiler_c_o + +# Whether or not to add -lc for building shared libraries. +build_libtool_need_lc=$archive_cmds_need_lc + +# Whether or not to disallow shared libs when runtime libs are static. +allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes + +# Compiler flag to allow reflexive dlopens. +export_dynamic_flag_spec=$lt_export_dynamic_flag_spec + +# Compiler flag to generate shared objects directly from archives. +whole_archive_flag_spec=$lt_whole_archive_flag_spec + +# Whether the compiler copes with passing no objects directly. +compiler_needs_object=$lt_compiler_needs_object + +# Create an old-style archive from a shared archive. +old_archive_from_new_cmds=$lt_old_archive_from_new_cmds + +# Create a temporary old-style archive to link instead of a shared archive. +old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds + +# Commands used to build a shared archive. +archive_cmds=$lt_archive_cmds +archive_expsym_cmds=$lt_archive_expsym_cmds + +# Commands used to build a loadable module if different from building +# a shared archive. +module_cmds=$lt_module_cmds +module_expsym_cmds=$lt_module_expsym_cmds + +# Whether we are building with GNU ld or not. +with_gnu_ld=$lt_with_gnu_ld + +# Flag that allows shared libraries with undefined symbols to be built. +allow_undefined_flag=$lt_allow_undefined_flag + +# Flag that enforces no undefined symbols. +no_undefined_flag=$lt_no_undefined_flag + +# Flag to hardcode \$libdir into a binary during linking. +# This must work even if \$libdir does not exist +hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec + +# Whether we need a single "-rpath" flag with a separated argument. +hardcode_libdir_separator=$lt_hardcode_libdir_separator + +# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes +# DIR into the resulting binary. +hardcode_direct=$hardcode_direct + +# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes +# DIR into the resulting binary and the resulting library dependency is +# "absolute",i.e impossible to change by setting \${shlibpath_var} if the +# library is relocated. +hardcode_direct_absolute=$hardcode_direct_absolute + +# Set to "yes" if using the -LDIR flag during linking hardcodes DIR +# into the resulting binary. +hardcode_minus_L=$hardcode_minus_L + +# Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR +# into the resulting binary. +hardcode_shlibpath_var=$hardcode_shlibpath_var + +# Set to "yes" if building a shared library automatically hardcodes DIR +# into the library and all subsequent libraries and executables linked +# against it. +hardcode_automatic=$hardcode_automatic + +# Set to yes if linker adds runtime paths of dependent libraries +# to runtime path list. +inherit_rpath=$inherit_rpath + +# Whether libtool must link a program against all its dependency libraries. +link_all_deplibs=$link_all_deplibs + +# Set to "yes" if exported symbols are required. +always_export_symbols=$always_export_symbols + +# The commands to list exported symbols. +export_symbols_cmds=$lt_export_symbols_cmds + +# Symbols that should not be listed in the preloaded symbols. +exclude_expsyms=$lt_exclude_expsyms + +# Symbols that must always be exported. +include_expsyms=$lt_include_expsyms + +# Commands necessary for linking programs (against libraries) with templates. +prelink_cmds=$lt_prelink_cmds + +# Commands necessary for finishing linking programs. +postlink_cmds=$lt_postlink_cmds + +# Specify filename containing input files. +file_list_spec=$lt_file_list_spec + +# How to hardcode a shared library path into an executable. +hardcode_action=$hardcode_action + +# ### END LIBTOOL CONFIG + +_LT_EOF + + case $host_os in + aix3*) + cat <<\_LT_EOF >> "$cfgfile" +# AIX sometimes has problems with the GCC collect2 program. For some +# reason, if we set the COLLECT_NAMES environment variable, the problems +# vanish in a puff of smoke. +if test "X${COLLECT_NAMES+set}" != Xset; then + COLLECT_NAMES= + export COLLECT_NAMES +fi +_LT_EOF + ;; + esac + + +ltmain="$ac_aux_dir/ltmain.sh" + + + # We use sed instead of cat because bash on DJGPP gets confused if + # if finds mixed CR/LF and LF-only lines. Since sed operates in + # text mode, it properly converts lines to CR/LF. This bash problem + # is reportedly fixed, but why not run on old versions too? + sed '$q' "$ltmain" >> "$cfgfile" \ + || (rm -f "$cfgfile"; exit 1) + + if test x"$xsi_shell" = xyes; then + sed -e '/^func_dirname ()$/,/^} # func_dirname /c\ +func_dirname ()\ +{\ +\ case ${1} in\ +\ */*) func_dirname_result="${1%/*}${2}" ;;\ +\ * ) func_dirname_result="${3}" ;;\ +\ esac\ +} # Extended-shell func_dirname implementation' "$cfgfile" > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") +test 0 -eq $? || _lt_function_replace_fail=: + + + sed -e '/^func_basename ()$/,/^} # func_basename /c\ +func_basename ()\ +{\ +\ func_basename_result="${1##*/}"\ +} # Extended-shell func_basename implementation' "$cfgfile" > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") +test 0 -eq $? || _lt_function_replace_fail=: + + + sed -e '/^func_dirname_and_basename ()$/,/^} # func_dirname_and_basename /c\ +func_dirname_and_basename ()\ +{\ +\ case ${1} in\ +\ */*) func_dirname_result="${1%/*}${2}" ;;\ +\ * ) func_dirname_result="${3}" ;;\ +\ esac\ +\ func_basename_result="${1##*/}"\ +} # Extended-shell func_dirname_and_basename implementation' "$cfgfile" > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") +test 0 -eq $? || _lt_function_replace_fail=: + + + sed -e '/^func_stripname ()$/,/^} # func_stripname /c\ +func_stripname ()\ +{\ +\ # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are\ +\ # positional parameters, so assign one to ordinary parameter first.\ +\ func_stripname_result=${3}\ +\ func_stripname_result=${func_stripname_result#"${1}"}\ +\ func_stripname_result=${func_stripname_result%"${2}"}\ +} # Extended-shell func_stripname implementation' "$cfgfile" > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") +test 0 -eq $? || _lt_function_replace_fail=: + + + sed -e '/^func_split_long_opt ()$/,/^} # func_split_long_opt /c\ +func_split_long_opt ()\ +{\ +\ func_split_long_opt_name=${1%%=*}\ +\ func_split_long_opt_arg=${1#*=}\ +} # Extended-shell func_split_long_opt implementation' "$cfgfile" > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") +test 0 -eq $? || _lt_function_replace_fail=: + + + sed -e '/^func_split_short_opt ()$/,/^} # func_split_short_opt /c\ +func_split_short_opt ()\ +{\ +\ func_split_short_opt_arg=${1#??}\ +\ func_split_short_opt_name=${1%"$func_split_short_opt_arg"}\ +} # Extended-shell func_split_short_opt implementation' "$cfgfile" > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") +test 0 -eq $? || _lt_function_replace_fail=: + + + sed -e '/^func_lo2o ()$/,/^} # func_lo2o /c\ +func_lo2o ()\ +{\ +\ case ${1} in\ +\ *.lo) func_lo2o_result=${1%.lo}.${objext} ;;\ +\ *) func_lo2o_result=${1} ;;\ +\ esac\ +} # Extended-shell func_lo2o implementation' "$cfgfile" > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") +test 0 -eq $? || _lt_function_replace_fail=: + + + sed -e '/^func_xform ()$/,/^} # func_xform /c\ +func_xform ()\ +{\ + func_xform_result=${1%.*}.lo\ +} # Extended-shell func_xform implementation' "$cfgfile" > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") +test 0 -eq $? || _lt_function_replace_fail=: + + + sed -e '/^func_arith ()$/,/^} # func_arith /c\ +func_arith ()\ +{\ + func_arith_result=$(( $* ))\ +} # Extended-shell func_arith implementation' "$cfgfile" > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") +test 0 -eq $? || _lt_function_replace_fail=: + + + sed -e '/^func_len ()$/,/^} # func_len /c\ +func_len ()\ +{\ + func_len_result=${#1}\ +} # Extended-shell func_len implementation' "$cfgfile" > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") +test 0 -eq $? || _lt_function_replace_fail=: + +fi + +if test x"$lt_shell_append" = xyes; then + sed -e '/^func_append ()$/,/^} # func_append /c\ +func_append ()\ +{\ + eval "${1}+=\\${2}"\ +} # Extended-shell func_append implementation' "$cfgfile" > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") +test 0 -eq $? || _lt_function_replace_fail=: + + + sed -e '/^func_append_quoted ()$/,/^} # func_append_quoted /c\ +func_append_quoted ()\ +{\ +\ func_quote_for_eval "${2}"\ +\ eval "${1}+=\\\\ \\$func_quote_for_eval_result"\ +} # Extended-shell func_append_quoted implementation' "$cfgfile" > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") +test 0 -eq $? || _lt_function_replace_fail=: + + + # Save a `func_append' function call where possible by direct use of '+=' + sed -e 's%func_append \([a-zA-Z_]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") + test 0 -eq $? || _lt_function_replace_fail=: +else + # Save a `func_append' function call even when '+=' is not available + sed -e 's%func_append \([a-zA-Z_]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") + test 0 -eq $? || _lt_function_replace_fail=: +fi + +if test x"$_lt_function_replace_fail" = x":"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unable to substitute extended shell functions in $ofile" >&5 +$as_echo "$as_me: WARNING: Unable to substitute extended shell functions in $ofile" >&2;} +fi + + + mv -f "$cfgfile" "$ofile" || + (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") + chmod +x "$ofile" + + ;; + + esac +done # for ac_tag + + +as_fn_exit 0 diff --git a/bibliotheque-graphique-iut-1.1/config.sub b/bibliotheque-graphique-iut-1.1/config.sub new file mode 100755 index 0000000..6205f84 --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/config.sub @@ -0,0 +1,1782 @@ +#! /bin/sh +# Configuration validation subroutine script. +# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, +# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, +# 2011, 2012 Free Software Foundation, Inc. + +timestamp='2012-04-18' + +# This file is (in principle) common to ALL GNU software. +# The presence of a machine in this file suggests that SOME GNU software +# can handle that machine. It does not imply ALL GNU software can. +# +# This file is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, see . +# +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program that contains a +# configuration script generated by Autoconf, you may include it under +# the same distribution terms that you use for the rest of that program. + + +# Please send patches to . Submit a context +# diff and a properly formatted GNU ChangeLog entry. +# +# Configuration subroutine to validate and canonicalize a configuration type. +# Supply the specified configuration type as an argument. +# If it is invalid, we print an error message on stderr and exit with code 1. +# Otherwise, we print the canonical config type on stdout and succeed. + +# You can get the latest version of this script from: +# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD + +# This file is supposed to be the same for all GNU packages +# and recognize all the CPU types, system types and aliases +# that are meaningful with *any* GNU software. +# Each package is responsible for reporting which valid configurations +# it does not support. The user should be able to distinguish +# a failure to support a valid configuration from a meaningless +# configuration. + +# The goal of this file is to map all the various variations of a given +# machine specification into a single specification in the form: +# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM +# or in some cases, the newer four-part form: +# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM +# It is wrong to echo any other type of specification. + +me=`echo "$0" | sed -e 's,.*/,,'` + +usage="\ +Usage: $0 [OPTION] CPU-MFR-OPSYS + $0 [OPTION] ALIAS + +Canonicalize a configuration name. + +Operation modes: + -h, --help print this help, then exit + -t, --time-stamp print date of last modification, then exit + -v, --version print version number, then exit + +Report bugs and patches to ." + +version="\ +GNU config.sub ($timestamp) + +Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, +2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 +Free Software Foundation, Inc. + +This is free software; see the source for copying conditions. There is NO +warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." + +help=" +Try \`$me --help' for more information." + +# Parse command line +while test $# -gt 0 ; do + case $1 in + --time-stamp | --time* | -t ) + echo "$timestamp" ; exit ;; + --version | -v ) + echo "$version" ; exit ;; + --help | --h* | -h ) + echo "$usage"; exit ;; + -- ) # Stop option processing + shift; break ;; + - ) # Use stdin as input. + break ;; + -* ) + echo "$me: invalid option $1$help" + exit 1 ;; + + *local*) + # First pass through any local machine types. + echo $1 + exit ;; + + * ) + break ;; + esac +done + +case $# in + 0) echo "$me: missing argument$help" >&2 + exit 1;; + 1) ;; + *) echo "$me: too many arguments$help" >&2 + exit 1;; +esac + +# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). +# Here we must recognize all the valid KERNEL-OS combinations. +maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` +case $maybe_os in + nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ + linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ + knetbsd*-gnu* | netbsd*-gnu* | \ + kopensolaris*-gnu* | \ + storm-chaos* | os2-emx* | rtmk-nova*) + os=-$maybe_os + basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` + ;; + android-linux) + os=-linux-android + basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown + ;; + *) + basic_machine=`echo $1 | sed 's/-[^-]*$//'` + if [ $basic_machine != $1 ] + then os=`echo $1 | sed 's/.*-/-/'` + else os=; fi + ;; +esac + +### Let's recognize common machines as not being operating systems so +### that things like config.sub decstation-3100 work. We also +### recognize some manufacturers as not being operating systems, so we +### can provide default operating systems below. +case $os in + -sun*os*) + # Prevent following clause from handling this invalid input. + ;; + -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ + -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ + -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ + -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ + -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ + -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ + -apple | -axis | -knuth | -cray | -microblaze) + os= + basic_machine=$1 + ;; + -bluegene*) + os=-cnk + ;; + -sim | -cisco | -oki | -wec | -winbond) + os= + basic_machine=$1 + ;; + -scout) + ;; + -wrs) + os=-vxworks + basic_machine=$1 + ;; + -chorusos*) + os=-chorusos + basic_machine=$1 + ;; + -chorusrdb) + os=-chorusrdb + basic_machine=$1 + ;; + -hiux*) + os=-hiuxwe2 + ;; + -sco6) + os=-sco5v6 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -sco5) + os=-sco3.2v5 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -sco4) + os=-sco3.2v4 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -sco3.2.[4-9]*) + os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -sco3.2v[4-9]*) + # Don't forget version if it is 3.2v4 or newer. + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -sco5v6*) + # Don't forget version if it is 3.2v4 or newer. + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -sco*) + os=-sco3.2v2 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -udk*) + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -isc) + os=-isc2.2 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -clix*) + basic_machine=clipper-intergraph + ;; + -isc*) + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -lynx*178) + os=-lynxos178 + ;; + -lynx*5) + os=-lynxos5 + ;; + -lynx*) + os=-lynxos + ;; + -ptx*) + basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` + ;; + -windowsnt*) + os=`echo $os | sed -e 's/windowsnt/winnt/'` + ;; + -psos*) + os=-psos + ;; + -mint | -mint[0-9]*) + basic_machine=m68k-atari + os=-mint + ;; +esac + +# Decode aliases for certain CPU-COMPANY combinations. +case $basic_machine in + # Recognize the basic CPU types without company name. + # Some are omitted here because they have special meanings below. + 1750a | 580 \ + | a29k \ + | aarch64 | aarch64_be \ + | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ + | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ + | am33_2.0 \ + | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ + | be32 | be64 \ + | bfin \ + | c4x | clipper \ + | d10v | d30v | dlx | dsp16xx \ + | epiphany \ + | fido | fr30 | frv \ + | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ + | hexagon \ + | i370 | i860 | i960 | ia64 \ + | ip2k | iq2000 \ + | le32 | le64 \ + | lm32 \ + | m32c | m32r | m32rle | m68000 | m68k | m88k \ + | maxq | mb | microblaze | mcore | mep | metag \ + | mips | mipsbe | mipseb | mipsel | mipsle \ + | mips16 \ + | mips64 | mips64el \ + | mips64octeon | mips64octeonel \ + | mips64orion | mips64orionel \ + | mips64r5900 | mips64r5900el \ + | mips64vr | mips64vrel \ + | mips64vr4100 | mips64vr4100el \ + | mips64vr4300 | mips64vr4300el \ + | mips64vr5000 | mips64vr5000el \ + | mips64vr5900 | mips64vr5900el \ + | mipsisa32 | mipsisa32el \ + | mipsisa32r2 | mipsisa32r2el \ + | mipsisa64 | mipsisa64el \ + | mipsisa64r2 | mipsisa64r2el \ + | mipsisa64sb1 | mipsisa64sb1el \ + | mipsisa64sr71k | mipsisa64sr71kel \ + | mipstx39 | mipstx39el \ + | mn10200 | mn10300 \ + | moxie \ + | mt \ + | msp430 \ + | nds32 | nds32le | nds32be \ + | nios | nios2 \ + | ns16k | ns32k \ + | open8 \ + | or32 \ + | pdp10 | pdp11 | pj | pjl \ + | powerpc | powerpc64 | powerpc64le | powerpcle \ + | pyramid \ + | rl78 | rx \ + | score \ + | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ + | sh64 | sh64le \ + | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ + | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ + | spu \ + | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ + | ubicom32 \ + | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ + | we32k \ + | x86 | xc16x | xstormy16 | xtensa \ + | z8k | z80) + basic_machine=$basic_machine-unknown + ;; + c54x) + basic_machine=tic54x-unknown + ;; + c55x) + basic_machine=tic55x-unknown + ;; + c6x) + basic_machine=tic6x-unknown + ;; + m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip) + basic_machine=$basic_machine-unknown + os=-none + ;; + m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) + ;; + ms1) + basic_machine=mt-unknown + ;; + + strongarm | thumb | xscale) + basic_machine=arm-unknown + ;; + xgate) + basic_machine=$basic_machine-unknown + os=-none + ;; + xscaleeb) + basic_machine=armeb-unknown + ;; + + xscaleel) + basic_machine=armel-unknown + ;; + + # We use `pc' rather than `unknown' + # because (1) that's what they normally are, and + # (2) the word "unknown" tends to confuse beginning users. + i*86 | x86_64) + basic_machine=$basic_machine-pc + ;; + # Object if more than one company name word. + *-*-*) + echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 + exit 1 + ;; + # Recognize the basic CPU types with company name. + 580-* \ + | a29k-* \ + | aarch64-* | aarch64_be-* \ + | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ + | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ + | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ + | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ + | avr-* | avr32-* \ + | be32-* | be64-* \ + | bfin-* | bs2000-* \ + | c[123]* | c30-* | [cjt]90-* | c4x-* \ + | clipper-* | craynv-* | cydra-* \ + | d10v-* | d30v-* | dlx-* \ + | elxsi-* \ + | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ + | h8300-* | h8500-* \ + | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ + | hexagon-* \ + | i*86-* | i860-* | i960-* | ia64-* \ + | ip2k-* | iq2000-* \ + | le32-* | le64-* \ + | lm32-* \ + | m32c-* | m32r-* | m32rle-* \ + | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ + | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \ + | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ + | mips16-* \ + | mips64-* | mips64el-* \ + | mips64octeon-* | mips64octeonel-* \ + | mips64orion-* | mips64orionel-* \ + | mips64r5900-* | mips64r5900el-* \ + | mips64vr-* | mips64vrel-* \ + | mips64vr4100-* | mips64vr4100el-* \ + | mips64vr4300-* | mips64vr4300el-* \ + | mips64vr5000-* | mips64vr5000el-* \ + | mips64vr5900-* | mips64vr5900el-* \ + | mipsisa32-* | mipsisa32el-* \ + | mipsisa32r2-* | mipsisa32r2el-* \ + | mipsisa64-* | mipsisa64el-* \ + | mipsisa64r2-* | mipsisa64r2el-* \ + | mipsisa64sb1-* | mipsisa64sb1el-* \ + | mipsisa64sr71k-* | mipsisa64sr71kel-* \ + | mipstx39-* | mipstx39el-* \ + | mmix-* \ + | mt-* \ + | msp430-* \ + | nds32-* | nds32le-* | nds32be-* \ + | nios-* | nios2-* \ + | none-* | np1-* | ns16k-* | ns32k-* \ + | open8-* \ + | orion-* \ + | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ + | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ + | pyramid-* \ + | rl78-* | romp-* | rs6000-* | rx-* \ + | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ + | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ + | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ + | sparclite-* \ + | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \ + | tahoe-* \ + | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ + | tile*-* \ + | tron-* \ + | ubicom32-* \ + | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ + | vax-* \ + | we32k-* \ + | x86-* | x86_64-* | xc16x-* | xps100-* \ + | xstormy16-* | xtensa*-* \ + | ymp-* \ + | z8k-* | z80-*) + ;; + # Recognize the basic CPU types without company name, with glob match. + xtensa*) + basic_machine=$basic_machine-unknown + ;; + # Recognize the various machine names and aliases which stand + # for a CPU type and a company and sometimes even an OS. + 386bsd) + basic_machine=i386-unknown + os=-bsd + ;; + 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) + basic_machine=m68000-att + ;; + 3b*) + basic_machine=we32k-att + ;; + a29khif) + basic_machine=a29k-amd + os=-udi + ;; + abacus) + basic_machine=abacus-unknown + ;; + adobe68k) + basic_machine=m68010-adobe + os=-scout + ;; + alliant | fx80) + basic_machine=fx80-alliant + ;; + altos | altos3068) + basic_machine=m68k-altos + ;; + am29k) + basic_machine=a29k-none + os=-bsd + ;; + amd64) + basic_machine=x86_64-pc + ;; + amd64-*) + basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + amdahl) + basic_machine=580-amdahl + os=-sysv + ;; + amiga | amiga-*) + basic_machine=m68k-unknown + ;; + amigaos | amigados) + basic_machine=m68k-unknown + os=-amigaos + ;; + amigaunix | amix) + basic_machine=m68k-unknown + os=-sysv4 + ;; + apollo68) + basic_machine=m68k-apollo + os=-sysv + ;; + apollo68bsd) + basic_machine=m68k-apollo + os=-bsd + ;; + aros) + basic_machine=i386-pc + os=-aros + ;; + aux) + basic_machine=m68k-apple + os=-aux + ;; + balance) + basic_machine=ns32k-sequent + os=-dynix + ;; + blackfin) + basic_machine=bfin-unknown + os=-linux + ;; + blackfin-*) + basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` + os=-linux + ;; + bluegene*) + basic_machine=powerpc-ibm + os=-cnk + ;; + c54x-*) + basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + c55x-*) + basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + c6x-*) + basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + c90) + basic_machine=c90-cray + os=-unicos + ;; + cegcc) + basic_machine=arm-unknown + os=-cegcc + ;; + convex-c1) + basic_machine=c1-convex + os=-bsd + ;; + convex-c2) + basic_machine=c2-convex + os=-bsd + ;; + convex-c32) + basic_machine=c32-convex + os=-bsd + ;; + convex-c34) + basic_machine=c34-convex + os=-bsd + ;; + convex-c38) + basic_machine=c38-convex + os=-bsd + ;; + cray | j90) + basic_machine=j90-cray + os=-unicos + ;; + craynv) + basic_machine=craynv-cray + os=-unicosmp + ;; + cr16 | cr16-*) + basic_machine=cr16-unknown + os=-elf + ;; + crds | unos) + basic_machine=m68k-crds + ;; + crisv32 | crisv32-* | etraxfs*) + basic_machine=crisv32-axis + ;; + cris | cris-* | etrax*) + basic_machine=cris-axis + ;; + crx) + basic_machine=crx-unknown + os=-elf + ;; + da30 | da30-*) + basic_machine=m68k-da30 + ;; + decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) + basic_machine=mips-dec + ;; + decsystem10* | dec10*) + basic_machine=pdp10-dec + os=-tops10 + ;; + decsystem20* | dec20*) + basic_machine=pdp10-dec + os=-tops20 + ;; + delta | 3300 | motorola-3300 | motorola-delta \ + | 3300-motorola | delta-motorola) + basic_machine=m68k-motorola + ;; + delta88) + basic_machine=m88k-motorola + os=-sysv3 + ;; + dicos) + basic_machine=i686-pc + os=-dicos + ;; + djgpp) + basic_machine=i586-pc + os=-msdosdjgpp + ;; + dpx20 | dpx20-*) + basic_machine=rs6000-bull + os=-bosx + ;; + dpx2* | dpx2*-bull) + basic_machine=m68k-bull + os=-sysv3 + ;; + ebmon29k) + basic_machine=a29k-amd + os=-ebmon + ;; + elxsi) + basic_machine=elxsi-elxsi + os=-bsd + ;; + encore | umax | mmax) + basic_machine=ns32k-encore + ;; + es1800 | OSE68k | ose68k | ose | OSE) + basic_machine=m68k-ericsson + os=-ose + ;; + fx2800) + basic_machine=i860-alliant + ;; + genix) + basic_machine=ns32k-ns + ;; + gmicro) + basic_machine=tron-gmicro + os=-sysv + ;; + go32) + basic_machine=i386-pc + os=-go32 + ;; + h3050r* | hiux*) + basic_machine=hppa1.1-hitachi + os=-hiuxwe2 + ;; + h8300hms) + basic_machine=h8300-hitachi + os=-hms + ;; + h8300xray) + basic_machine=h8300-hitachi + os=-xray + ;; + h8500hms) + basic_machine=h8500-hitachi + os=-hms + ;; + harris) + basic_machine=m88k-harris + os=-sysv3 + ;; + hp300-*) + basic_machine=m68k-hp + ;; + hp300bsd) + basic_machine=m68k-hp + os=-bsd + ;; + hp300hpux) + basic_machine=m68k-hp + os=-hpux + ;; + hp3k9[0-9][0-9] | hp9[0-9][0-9]) + basic_machine=hppa1.0-hp + ;; + hp9k2[0-9][0-9] | hp9k31[0-9]) + basic_machine=m68000-hp + ;; + hp9k3[2-9][0-9]) + basic_machine=m68k-hp + ;; + hp9k6[0-9][0-9] | hp6[0-9][0-9]) + basic_machine=hppa1.0-hp + ;; + hp9k7[0-79][0-9] | hp7[0-79][0-9]) + basic_machine=hppa1.1-hp + ;; + hp9k78[0-9] | hp78[0-9]) + # FIXME: really hppa2.0-hp + basic_machine=hppa1.1-hp + ;; + hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) + # FIXME: really hppa2.0-hp + basic_machine=hppa1.1-hp + ;; + hp9k8[0-9][13679] | hp8[0-9][13679]) + basic_machine=hppa1.1-hp + ;; + hp9k8[0-9][0-9] | hp8[0-9][0-9]) + basic_machine=hppa1.0-hp + ;; + hppa-next) + os=-nextstep3 + ;; + hppaosf) + basic_machine=hppa1.1-hp + os=-osf + ;; + hppro) + basic_machine=hppa1.1-hp + os=-proelf + ;; + i370-ibm* | ibm*) + basic_machine=i370-ibm + ;; + i*86v32) + basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` + os=-sysv32 + ;; + i*86v4*) + basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` + os=-sysv4 + ;; + i*86v) + basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` + os=-sysv + ;; + i*86sol2) + basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` + os=-solaris2 + ;; + i386mach) + basic_machine=i386-mach + os=-mach + ;; + i386-vsta | vsta) + basic_machine=i386-unknown + os=-vsta + ;; + iris | iris4d) + basic_machine=mips-sgi + case $os in + -irix*) + ;; + *) + os=-irix4 + ;; + esac + ;; + isi68 | isi) + basic_machine=m68k-isi + os=-sysv + ;; + m68knommu) + basic_machine=m68k-unknown + os=-linux + ;; + m68knommu-*) + basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` + os=-linux + ;; + m88k-omron*) + basic_machine=m88k-omron + ;; + magnum | m3230) + basic_machine=mips-mips + os=-sysv + ;; + merlin) + basic_machine=ns32k-utek + os=-sysv + ;; + microblaze) + basic_machine=microblaze-xilinx + ;; + mingw32) + basic_machine=i386-pc + os=-mingw32 + ;; + mingw32ce) + basic_machine=arm-unknown + os=-mingw32ce + ;; + miniframe) + basic_machine=m68000-convergent + ;; + *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) + basic_machine=m68k-atari + os=-mint + ;; + mips3*-*) + basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` + ;; + mips3*) + basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown + ;; + monitor) + basic_machine=m68k-rom68k + os=-coff + ;; + morphos) + basic_machine=powerpc-unknown + os=-morphos + ;; + msdos) + basic_machine=i386-pc + os=-msdos + ;; + ms1-*) + basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` + ;; + msys) + basic_machine=i386-pc + os=-msys + ;; + mvs) + basic_machine=i370-ibm + os=-mvs + ;; + nacl) + basic_machine=le32-unknown + os=-nacl + ;; + ncr3000) + basic_machine=i486-ncr + os=-sysv4 + ;; + netbsd386) + basic_machine=i386-unknown + os=-netbsd + ;; + netwinder) + basic_machine=armv4l-rebel + os=-linux + ;; + news | news700 | news800 | news900) + basic_machine=m68k-sony + os=-newsos + ;; + news1000) + basic_machine=m68030-sony + os=-newsos + ;; + news-3600 | risc-news) + basic_machine=mips-sony + os=-newsos + ;; + necv70) + basic_machine=v70-nec + os=-sysv + ;; + next | m*-next ) + basic_machine=m68k-next + case $os in + -nextstep* ) + ;; + -ns2*) + os=-nextstep2 + ;; + *) + os=-nextstep3 + ;; + esac + ;; + nh3000) + basic_machine=m68k-harris + os=-cxux + ;; + nh[45]000) + basic_machine=m88k-harris + os=-cxux + ;; + nindy960) + basic_machine=i960-intel + os=-nindy + ;; + mon960) + basic_machine=i960-intel + os=-mon960 + ;; + nonstopux) + basic_machine=mips-compaq + os=-nonstopux + ;; + np1) + basic_machine=np1-gould + ;; + neo-tandem) + basic_machine=neo-tandem + ;; + nse-tandem) + basic_machine=nse-tandem + ;; + nsr-tandem) + basic_machine=nsr-tandem + ;; + op50n-* | op60c-*) + basic_machine=hppa1.1-oki + os=-proelf + ;; + openrisc | openrisc-*) + basic_machine=or32-unknown + ;; + os400) + basic_machine=powerpc-ibm + os=-os400 + ;; + OSE68000 | ose68000) + basic_machine=m68000-ericsson + os=-ose + ;; + os68k) + basic_machine=m68k-none + os=-os68k + ;; + pa-hitachi) + basic_machine=hppa1.1-hitachi + os=-hiuxwe2 + ;; + paragon) + basic_machine=i860-intel + os=-osf + ;; + parisc) + basic_machine=hppa-unknown + os=-linux + ;; + parisc-*) + basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` + os=-linux + ;; + pbd) + basic_machine=sparc-tti + ;; + pbb) + basic_machine=m68k-tti + ;; + pc532 | pc532-*) + basic_machine=ns32k-pc532 + ;; + pc98) + basic_machine=i386-pc + ;; + pc98-*) + basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + pentium | p5 | k5 | k6 | nexgen | viac3) + basic_machine=i586-pc + ;; + pentiumpro | p6 | 6x86 | athlon | athlon_*) + basic_machine=i686-pc + ;; + pentiumii | pentium2 | pentiumiii | pentium3) + basic_machine=i686-pc + ;; + pentium4) + basic_machine=i786-pc + ;; + pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) + basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + pentiumpro-* | p6-* | 6x86-* | athlon-*) + basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) + basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + pentium4-*) + basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + pn) + basic_machine=pn-gould + ;; + power) basic_machine=power-ibm + ;; + ppc | ppcbe) basic_machine=powerpc-unknown + ;; + ppc-* | ppcbe-*) + basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + ppcle | powerpclittle | ppc-le | powerpc-little) + basic_machine=powerpcle-unknown + ;; + ppcle-* | powerpclittle-*) + basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + ppc64) basic_machine=powerpc64-unknown + ;; + ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + ppc64le | powerpc64little | ppc64-le | powerpc64-little) + basic_machine=powerpc64le-unknown + ;; + ppc64le-* | powerpc64little-*) + basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + ps2) + basic_machine=i386-ibm + ;; + pw32) + basic_machine=i586-unknown + os=-pw32 + ;; + rdos) + basic_machine=i386-pc + os=-rdos + ;; + rom68k) + basic_machine=m68k-rom68k + os=-coff + ;; + rm[46]00) + basic_machine=mips-siemens + ;; + rtpc | rtpc-*) + basic_machine=romp-ibm + ;; + s390 | s390-*) + basic_machine=s390-ibm + ;; + s390x | s390x-*) + basic_machine=s390x-ibm + ;; + sa29200) + basic_machine=a29k-amd + os=-udi + ;; + sb1) + basic_machine=mipsisa64sb1-unknown + ;; + sb1el) + basic_machine=mipsisa64sb1el-unknown + ;; + sde) + basic_machine=mipsisa32-sde + os=-elf + ;; + sei) + basic_machine=mips-sei + os=-seiux + ;; + sequent) + basic_machine=i386-sequent + ;; + sh) + basic_machine=sh-hitachi + os=-hms + ;; + sh5el) + basic_machine=sh5le-unknown + ;; + sh64) + basic_machine=sh64-unknown + ;; + sparclite-wrs | simso-wrs) + basic_machine=sparclite-wrs + os=-vxworks + ;; + sps7) + basic_machine=m68k-bull + os=-sysv2 + ;; + spur) + basic_machine=spur-unknown + ;; + st2000) + basic_machine=m68k-tandem + ;; + stratus) + basic_machine=i860-stratus + os=-sysv4 + ;; + strongarm-* | thumb-*) + basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + sun2) + basic_machine=m68000-sun + ;; + sun2os3) + basic_machine=m68000-sun + os=-sunos3 + ;; + sun2os4) + basic_machine=m68000-sun + os=-sunos4 + ;; + sun3os3) + basic_machine=m68k-sun + os=-sunos3 + ;; + sun3os4) + basic_machine=m68k-sun + os=-sunos4 + ;; + sun4os3) + basic_machine=sparc-sun + os=-sunos3 + ;; + sun4os4) + basic_machine=sparc-sun + os=-sunos4 + ;; + sun4sol2) + basic_machine=sparc-sun + os=-solaris2 + ;; + sun3 | sun3-*) + basic_machine=m68k-sun + ;; + sun4) + basic_machine=sparc-sun + ;; + sun386 | sun386i | roadrunner) + basic_machine=i386-sun + ;; + sv1) + basic_machine=sv1-cray + os=-unicos + ;; + symmetry) + basic_machine=i386-sequent + os=-dynix + ;; + t3e) + basic_machine=alphaev5-cray + os=-unicos + ;; + t90) + basic_machine=t90-cray + os=-unicos + ;; + tile*) + basic_machine=$basic_machine-unknown + os=-linux-gnu + ;; + tx39) + basic_machine=mipstx39-unknown + ;; + tx39el) + basic_machine=mipstx39el-unknown + ;; + toad1) + basic_machine=pdp10-xkl + os=-tops20 + ;; + tower | tower-32) + basic_machine=m68k-ncr + ;; + tpf) + basic_machine=s390x-ibm + os=-tpf + ;; + udi29k) + basic_machine=a29k-amd + os=-udi + ;; + ultra3) + basic_machine=a29k-nyu + os=-sym1 + ;; + v810 | necv810) + basic_machine=v810-nec + os=-none + ;; + vaxv) + basic_machine=vax-dec + os=-sysv + ;; + vms) + basic_machine=vax-dec + os=-vms + ;; + vpp*|vx|vx-*) + basic_machine=f301-fujitsu + ;; + vxworks960) + basic_machine=i960-wrs + os=-vxworks + ;; + vxworks68) + basic_machine=m68k-wrs + os=-vxworks + ;; + vxworks29k) + basic_machine=a29k-wrs + os=-vxworks + ;; + w65*) + basic_machine=w65-wdc + os=-none + ;; + w89k-*) + basic_machine=hppa1.1-winbond + os=-proelf + ;; + xbox) + basic_machine=i686-pc + os=-mingw32 + ;; + xps | xps100) + basic_machine=xps100-honeywell + ;; + xscale-* | xscalee[bl]-*) + basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` + ;; + ymp) + basic_machine=ymp-cray + os=-unicos + ;; + z8k-*-coff) + basic_machine=z8k-unknown + os=-sim + ;; + z80-*-coff) + basic_machine=z80-unknown + os=-sim + ;; + none) + basic_machine=none-none + os=-none + ;; + +# Here we handle the default manufacturer of certain CPU types. It is in +# some cases the only manufacturer, in others, it is the most popular. + w89k) + basic_machine=hppa1.1-winbond + ;; + op50n) + basic_machine=hppa1.1-oki + ;; + op60c) + basic_machine=hppa1.1-oki + ;; + romp) + basic_machine=romp-ibm + ;; + mmix) + basic_machine=mmix-knuth + ;; + rs6000) + basic_machine=rs6000-ibm + ;; + vax) + basic_machine=vax-dec + ;; + pdp10) + # there are many clones, so DEC is not a safe bet + basic_machine=pdp10-unknown + ;; + pdp11) + basic_machine=pdp11-dec + ;; + we32k) + basic_machine=we32k-att + ;; + sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) + basic_machine=sh-unknown + ;; + sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) + basic_machine=sparc-sun + ;; + cydra) + basic_machine=cydra-cydrome + ;; + orion) + basic_machine=orion-highlevel + ;; + orion105) + basic_machine=clipper-highlevel + ;; + mac | mpw | mac-mpw) + basic_machine=m68k-apple + ;; + pmac | pmac-mpw) + basic_machine=powerpc-apple + ;; + *-unknown) + # Make sure to match an already-canonicalized machine name. + ;; + *) + echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 + exit 1 + ;; +esac + +# Here we canonicalize certain aliases for manufacturers. +case $basic_machine in + *-digital*) + basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` + ;; + *-commodore*) + basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` + ;; + *) + ;; +esac + +# Decode manufacturer-specific aliases for certain operating systems. + +if [ x"$os" != x"" ] +then +case $os in + # First match some system type aliases + # that might get confused with valid system types. + # -solaris* is a basic system type, with this one exception. + -auroraux) + os=-auroraux + ;; + -solaris1 | -solaris1.*) + os=`echo $os | sed -e 's|solaris1|sunos4|'` + ;; + -solaris) + os=-solaris2 + ;; + -svr4*) + os=-sysv4 + ;; + -unixware*) + os=-sysv4.2uw + ;; + -gnu/linux*) + os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` + ;; + # First accept the basic system types. + # The portable systems comes first. + # Each alternative MUST END IN A *, to match a version number. + # -sysv* is not here because it comes later, after sysvr4. + -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ + | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ + | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ + | -sym* | -kopensolaris* \ + | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ + | -aos* | -aros* \ + | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ + | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ + | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ + | -openbsd* | -solidbsd* \ + | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ + | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ + | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ + | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ + | -chorusos* | -chorusrdb* | -cegcc* \ + | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ + | -mingw32* | -linux-gnu* | -linux-android* \ + | -linux-newlib* | -linux-uclibc* \ + | -uxpv* | -beos* | -mpeix* | -udk* \ + | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ + | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ + | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ + | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ + | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ + | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ + | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) + # Remember, each alternative MUST END IN *, to match a version number. + ;; + -qnx*) + case $basic_machine in + x86-* | i*86-*) + ;; + *) + os=-nto$os + ;; + esac + ;; + -nto-qnx*) + ;; + -nto*) + os=`echo $os | sed -e 's|nto|nto-qnx|'` + ;; + -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ + | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ + | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) + ;; + -mac*) + os=`echo $os | sed -e 's|mac|macos|'` + ;; + -linux-dietlibc) + os=-linux-dietlibc + ;; + -linux*) + os=`echo $os | sed -e 's|linux|linux-gnu|'` + ;; + -sunos5*) + os=`echo $os | sed -e 's|sunos5|solaris2|'` + ;; + -sunos6*) + os=`echo $os | sed -e 's|sunos6|solaris3|'` + ;; + -opened*) + os=-openedition + ;; + -os400*) + os=-os400 + ;; + -wince*) + os=-wince + ;; + -osfrose*) + os=-osfrose + ;; + -osf*) + os=-osf + ;; + -utek*) + os=-bsd + ;; + -dynix*) + os=-bsd + ;; + -acis*) + os=-aos + ;; + -atheos*) + os=-atheos + ;; + -syllable*) + os=-syllable + ;; + -386bsd) + os=-bsd + ;; + -ctix* | -uts*) + os=-sysv + ;; + -nova*) + os=-rtmk-nova + ;; + -ns2 ) + os=-nextstep2 + ;; + -nsk*) + os=-nsk + ;; + # Preserve the version number of sinix5. + -sinix5.*) + os=`echo $os | sed -e 's|sinix|sysv|'` + ;; + -sinix*) + os=-sysv4 + ;; + -tpf*) + os=-tpf + ;; + -triton*) + os=-sysv3 + ;; + -oss*) + os=-sysv3 + ;; + -svr4) + os=-sysv4 + ;; + -svr3) + os=-sysv3 + ;; + -sysvr4) + os=-sysv4 + ;; + # This must come after -sysvr4. + -sysv*) + ;; + -ose*) + os=-ose + ;; + -es1800*) + os=-ose + ;; + -xenix) + os=-xenix + ;; + -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) + os=-mint + ;; + -aros*) + os=-aros + ;; + -kaos*) + os=-kaos + ;; + -zvmoe) + os=-zvmoe + ;; + -dicos*) + os=-dicos + ;; + -nacl*) + ;; + -none) + ;; + *) + # Get rid of the `-' at the beginning of $os. + os=`echo $os | sed 's/[^-]*-//'` + echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 + exit 1 + ;; +esac +else + +# Here we handle the default operating systems that come with various machines. +# The value should be what the vendor currently ships out the door with their +# machine or put another way, the most popular os provided with the machine. + +# Note that if you're going to try to match "-MANUFACTURER" here (say, +# "-sun"), then you have to tell the case statement up towards the top +# that MANUFACTURER isn't an operating system. Otherwise, code above +# will signal an error saying that MANUFACTURER isn't an operating +# system, and we'll never get to this point. + +case $basic_machine in + score-*) + os=-elf + ;; + spu-*) + os=-elf + ;; + *-acorn) + os=-riscix1.2 + ;; + arm*-rebel) + os=-linux + ;; + arm*-semi) + os=-aout + ;; + c4x-* | tic4x-*) + os=-coff + ;; + hexagon-*) + os=-elf + ;; + tic54x-*) + os=-coff + ;; + tic55x-*) + os=-coff + ;; + tic6x-*) + os=-coff + ;; + # This must come before the *-dec entry. + pdp10-*) + os=-tops20 + ;; + pdp11-*) + os=-none + ;; + *-dec | vax-*) + os=-ultrix4.2 + ;; + m68*-apollo) + os=-domain + ;; + i386-sun) + os=-sunos4.0.2 + ;; + m68000-sun) + os=-sunos3 + ;; + m68*-cisco) + os=-aout + ;; + mep-*) + os=-elf + ;; + mips*-cisco) + os=-elf + ;; + mips*-*) + os=-elf + ;; + or32-*) + os=-coff + ;; + *-tti) # must be before sparc entry or we get the wrong os. + os=-sysv3 + ;; + sparc-* | *-sun) + os=-sunos4.1.1 + ;; + *-be) + os=-beos + ;; + *-haiku) + os=-haiku + ;; + *-ibm) + os=-aix + ;; + *-knuth) + os=-mmixware + ;; + *-wec) + os=-proelf + ;; + *-winbond) + os=-proelf + ;; + *-oki) + os=-proelf + ;; + *-hp) + os=-hpux + ;; + *-hitachi) + os=-hiux + ;; + i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) + os=-sysv + ;; + *-cbm) + os=-amigaos + ;; + *-dg) + os=-dgux + ;; + *-dolphin) + os=-sysv3 + ;; + m68k-ccur) + os=-rtu + ;; + m88k-omron*) + os=-luna + ;; + *-next ) + os=-nextstep + ;; + *-sequent) + os=-ptx + ;; + *-crds) + os=-unos + ;; + *-ns) + os=-genix + ;; + i370-*) + os=-mvs + ;; + *-next) + os=-nextstep3 + ;; + *-gould) + os=-sysv + ;; + *-highlevel) + os=-bsd + ;; + *-encore) + os=-bsd + ;; + *-sgi) + os=-irix + ;; + *-siemens) + os=-sysv4 + ;; + *-masscomp) + os=-rtu + ;; + f30[01]-fujitsu | f700-fujitsu) + os=-uxpv + ;; + *-rom68k) + os=-coff + ;; + *-*bug) + os=-coff + ;; + *-apple) + os=-macos + ;; + *-atari*) + os=-mint + ;; + *) + os=-none + ;; +esac +fi + +# Here we handle the case where we know the os, and the CPU type, but not the +# manufacturer. We pick the logical manufacturer. +vendor=unknown +case $basic_machine in + *-unknown) + case $os in + -riscix*) + vendor=acorn + ;; + -sunos*) + vendor=sun + ;; + -cnk*|-aix*) + vendor=ibm + ;; + -beos*) + vendor=be + ;; + -hpux*) + vendor=hp + ;; + -mpeix*) + vendor=hp + ;; + -hiux*) + vendor=hitachi + ;; + -unos*) + vendor=crds + ;; + -dgux*) + vendor=dg + ;; + -luna*) + vendor=omron + ;; + -genix*) + vendor=ns + ;; + -mvs* | -opened*) + vendor=ibm + ;; + -os400*) + vendor=ibm + ;; + -ptx*) + vendor=sequent + ;; + -tpf*) + vendor=ibm + ;; + -vxsim* | -vxworks* | -windiss*) + vendor=wrs + ;; + -aux*) + vendor=apple + ;; + -hms*) + vendor=hitachi + ;; + -mpw* | -macos*) + vendor=apple + ;; + -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) + vendor=atari + ;; + -vos*) + vendor=stratus + ;; + esac + basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` + ;; +esac + +echo $basic_machine$os +exit + +# Local variables: +# eval: (add-hook 'write-file-hooks 'time-stamp) +# time-stamp-start: "timestamp='" +# time-stamp-format: "%:y-%02m-%02d" +# time-stamp-end: "'" +# End: diff --git a/bibliotheque-graphique-iut-1.1/configure b/bibliotheque-graphique-iut-1.1/configure new file mode 100755 index 0000000..e2bd684 --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/configure @@ -0,0 +1,14136 @@ +#! /bin/sh +# Guess values for system-dependent variables and create Makefiles. +# Generated by GNU Autoconf 2.69 for bibliotheque graphique iut 1.1. +# +# Report bugs to . +# +# +# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc. +# +# +# This configure script is free software; the Free Software Foundation +# gives unlimited permission to copy, distribute and modify it. +## -------------------- ## +## M4sh Initialization. ## +## -------------------- ## + +# Be more Bourne compatible +DUALCASE=1; export DUALCASE # for MKS sh +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : + emulate sh + NULLCMD=: + # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in #( + *posix*) : + set -o posix ;; #( + *) : + ;; +esac +fi + + +as_nl=' +' +export as_nl +# Printing a long string crashes Solaris 7 /usr/bin/printf. +as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo +# Prefer a ksh shell builtin over an external printf program on Solaris, +# but without wasting forks for bash or zsh. +if test -z "$BASH_VERSION$ZSH_VERSION" \ + && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='print -r --' + as_echo_n='print -rn --' +elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='printf %s\n' + as_echo_n='printf %s' +else + if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then + as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' + as_echo_n='/usr/ucb/echo -n' + else + as_echo_body='eval expr "X$1" : "X\\(.*\\)"' + as_echo_n_body='eval + arg=$1; + case $arg in #( + *"$as_nl"*) + expr "X$arg" : "X\\(.*\\)$as_nl"; + arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; + esac; + expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" + ' + export as_echo_n_body + as_echo_n='sh -c $as_echo_n_body as_echo' + fi + export as_echo_body + as_echo='sh -c $as_echo_body as_echo' +fi + +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + PATH_SEPARATOR=: + (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { + (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || + PATH_SEPARATOR=';' + } +fi + + +# IFS +# We need space, tab and new line, in precisely that order. Quoting is +# there to prevent editors from complaining about space-tab. +# (If _AS_PATH_WALK were called with IFS unset, it would disable word +# splitting by setting IFS to empty value.) +IFS=" "" $as_nl" + +# Find who we are. Look in the path if we contain no directory separator. +as_myself= +case $0 in #(( + *[\\/]* ) as_myself=$0 ;; + *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break + done +IFS=$as_save_IFS + + ;; +esac +# We did not find ourselves, most probably we were run as `sh COMMAND' +# in which case we are not to be found in the path. +if test "x$as_myself" = x; then + as_myself=$0 +fi +if test ! -f "$as_myself"; then + $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 + exit 1 +fi + +# Unset variables that we do not need and which cause bugs (e.g. in +# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" +# suppresses any "Segmentation fault" message there. '((' could +# trigger a bug in pdksh 5.2.14. +for as_var in BASH_ENV ENV MAIL MAILPATH +do eval test x\${$as_var+set} = xset \ + && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : +done +PS1='$ ' +PS2='> ' +PS4='+ ' + +# NLS nuisances. +LC_ALL=C +export LC_ALL +LANGUAGE=C +export LANGUAGE + +# CDPATH. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + +# Use a proper internal environment variable to ensure we don't fall + # into an infinite loop, continuously re-executing ourselves. + if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then + _as_can_reexec=no; export _as_can_reexec; + # We cannot yet assume a decent shell, so we have to provide a +# neutralization value for shells without unset; and this also +# works around shells that cannot unset nonexistent variables. +# Preserve -v and -x to the replacement shell. +BASH_ENV=/dev/null +ENV=/dev/null +(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV +case $- in # (((( + *v*x* | *x*v* ) as_opts=-vx ;; + *v* ) as_opts=-v ;; + *x* ) as_opts=-x ;; + * ) as_opts= ;; +esac +exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} +# Admittedly, this is quite paranoid, since all the known shells bail +# out after a failed `exec'. +$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2 +as_fn_exit 255 + fi + # We don't want this to propagate to other subprocesses. + { _as_can_reexec=; unset _as_can_reexec;} +if test "x$CONFIG_SHELL" = x; then + as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then : + emulate sh + NULLCMD=: + # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which + # is contrary to our usage. Disable this feature. + alias -g '\${1+\"\$@\"}'='\"\$@\"' + setopt NO_GLOB_SUBST +else + case \`(set -o) 2>/dev/null\` in #( + *posix*) : + set -o posix ;; #( + *) : + ;; +esac +fi +" + as_required="as_fn_return () { (exit \$1); } +as_fn_success () { as_fn_return 0; } +as_fn_failure () { as_fn_return 1; } +as_fn_ret_success () { return 0; } +as_fn_ret_failure () { return 1; } + +exitcode=0 +as_fn_success || { exitcode=1; echo as_fn_success failed.; } +as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; } +as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; } +as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; } +if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then : + +else + exitcode=1; echo positional parameters were not saved. +fi +test x\$exitcode = x0 || exit 1 +test -x / || exit 1" + as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO + as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO + eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" && + test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1 + + test -n \"\${ZSH_VERSION+set}\${BASH_VERSION+set}\" || ( + ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' + ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO + ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO + PATH=/empty FPATH=/empty; export PATH FPATH + test \"X\`printf %s \$ECHO\`\" = \"X\$ECHO\" \\ + || test \"X\`print -r -- \$ECHO\`\" = \"X\$ECHO\" ) || exit 1 +test \$(( 1 + 1 )) = 2 || exit 1" + if (eval "$as_required") 2>/dev/null; then : + as_have_required=yes +else + as_have_required=no +fi + if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then : + +else + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +as_found=false +for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + as_found=: + case $as_dir in #( + /*) + for as_base in sh bash ksh sh5; do + # Try only shells that exist, to save several forks. + as_shell=$as_dir/$as_base + if { test -f "$as_shell" || test -f "$as_shell.exe"; } && + { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then : + CONFIG_SHELL=$as_shell as_have_required=yes + if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then : + break 2 +fi +fi + done;; + esac + as_found=false +done +$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } && + { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then : + CONFIG_SHELL=$SHELL as_have_required=yes +fi; } +IFS=$as_save_IFS + + + if test "x$CONFIG_SHELL" != x; then : + export CONFIG_SHELL + # We cannot yet assume a decent shell, so we have to provide a +# neutralization value for shells without unset; and this also +# works around shells that cannot unset nonexistent variables. +# Preserve -v and -x to the replacement shell. +BASH_ENV=/dev/null +ENV=/dev/null +(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV +case $- in # (((( + *v*x* | *x*v* ) as_opts=-vx ;; + *v* ) as_opts=-v ;; + *x* ) as_opts=-x ;; + * ) as_opts= ;; +esac +exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} +# Admittedly, this is quite paranoid, since all the known shells bail +# out after a failed `exec'. +$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2 +exit 255 +fi + + if test x$as_have_required = xno; then : + $as_echo "$0: This script requires a shell more modern than all" + $as_echo "$0: the shells that I found on your system." + if test x${ZSH_VERSION+set} = xset ; then + $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should" + $as_echo "$0: be upgraded to zsh 4.3.4 or later." + else + $as_echo "$0: Please tell bug-autoconf@gnu.org and monnerat@u-pec.fr +$0: about your system, including any error possibly output +$0: before this message. Then install a modern shell, or +$0: manually run the script under such a shell if you do +$0: have one." + fi + exit 1 +fi +fi +fi +SHELL=${CONFIG_SHELL-/bin/sh} +export SHELL +# Unset more variables known to interfere with behavior of common tools. +CLICOLOR_FORCE= GREP_OPTIONS= +unset CLICOLOR_FORCE GREP_OPTIONS + +## --------------------- ## +## M4sh Shell Functions. ## +## --------------------- ## +# as_fn_unset VAR +# --------------- +# Portably unset VAR. +as_fn_unset () +{ + { eval $1=; unset $1;} +} +as_unset=as_fn_unset + +# as_fn_set_status STATUS +# ----------------------- +# Set $? to STATUS, without forking. +as_fn_set_status () +{ + return $1 +} # as_fn_set_status + +# as_fn_exit STATUS +# ----------------- +# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. +as_fn_exit () +{ + set +e + as_fn_set_status $1 + exit $1 +} # as_fn_exit + +# as_fn_mkdir_p +# ------------- +# Create "$as_dir" as a directory, including parents if necessary. +as_fn_mkdir_p () +{ + + case $as_dir in #( + -*) as_dir=./$as_dir;; + esac + test -d "$as_dir" || eval $as_mkdir_p || { + as_dirs= + while :; do + case $as_dir in #( + *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( + *) as_qdir=$as_dir;; + esac + as_dirs="'$as_qdir' $as_dirs" + as_dir=`$as_dirname -- "$as_dir" || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + test -d "$as_dir" && break + done + test -z "$as_dirs" || eval "mkdir $as_dirs" + } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" + + +} # as_fn_mkdir_p + +# as_fn_executable_p FILE +# ----------------------- +# Test if FILE is an executable regular file. +as_fn_executable_p () +{ + test -f "$1" && test -x "$1" +} # as_fn_executable_p +# as_fn_append VAR VALUE +# ---------------------- +# Append the text in VALUE to the end of the definition contained in VAR. Take +# advantage of any shell optimizations that allow amortized linear growth over +# repeated appends, instead of the typical quadratic growth present in naive +# implementations. +if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : + eval 'as_fn_append () + { + eval $1+=\$2 + }' +else + as_fn_append () + { + eval $1=\$$1\$2 + } +fi # as_fn_append + +# as_fn_arith ARG... +# ------------------ +# Perform arithmetic evaluation on the ARGs, and store the result in the +# global $as_val. Take advantage of shells that can avoid forks. The arguments +# must be portable across $(()) and expr. +if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : + eval 'as_fn_arith () + { + as_val=$(( $* )) + }' +else + as_fn_arith () + { + as_val=`expr "$@" || test $? -eq 1` + } +fi # as_fn_arith + + +# as_fn_error STATUS ERROR [LINENO LOG_FD] +# ---------------------------------------- +# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are +# provided, also output the error to LOG_FD, referencing LINENO. Then exit the +# script with STATUS, using 1 if that was 0. +as_fn_error () +{ + as_status=$1; test $as_status -eq 0 && as_status=1 + if test "$4"; then + as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 + fi + $as_echo "$as_me: error: $2" >&2 + as_fn_exit $as_status +} # as_fn_error + +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then + as_expr=expr +else + as_expr=false +fi + +if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then + as_basename=basename +else + as_basename=false +fi + +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then + as_dirname=dirname +else + as_dirname=false +fi + +as_me=`$as_basename -- "$0" || +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X/"$0" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ + s//\1/ + q + } + /^X\/\(\/\/\)$/{ + s//\1/ + q + } + /^X\/\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits + + + as_lineno_1=$LINENO as_lineno_1a=$LINENO + as_lineno_2=$LINENO as_lineno_2a=$LINENO + eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" && + test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || { + # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-) + sed -n ' + p + /[$]LINENO/= + ' <$as_myself | + sed ' + s/[$]LINENO.*/&-/ + t lineno + b + :lineno + N + :loop + s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ + t loop + s/-\n.*// + ' >$as_me.lineno && + chmod +x "$as_me.lineno" || + { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; } + + # If we had to re-execute with $CONFIG_SHELL, we're ensured to have + # already done that, so ensure we don't try to do so again and fall + # in an infinite loop. This has already happened in practice. + _as_can_reexec=no; export _as_can_reexec + # Don't try to exec as it changes $[0], causing all sort of problems + # (the dirname of $[0] is not the place where we might find the + # original and so on. Autoconf is especially sensitive to this). + . "./$as_me.lineno" + # Exit status is that of the last command. + exit +} + +ECHO_C= ECHO_N= ECHO_T= +case `echo -n x` in #((((( +-n*) + case `echo 'xy\c'` in + *c*) ECHO_T=' ';; # ECHO_T is single tab character. + xy) ECHO_C='\c';; + *) echo `echo ksh88 bug on AIX 6.1` > /dev/null + ECHO_T=' ';; + esac;; +*) + ECHO_N='-n';; +esac + +rm -f conf$$ conf$$.exe conf$$.file +if test -d conf$$.dir; then + rm -f conf$$.dir/conf$$.file +else + rm -f conf$$.dir + mkdir conf$$.dir 2>/dev/null +fi +if (echo >conf$$.file) 2>/dev/null; then + if ln -s conf$$.file conf$$ 2>/dev/null; then + as_ln_s='ln -s' + # ... but there are two gotchas: + # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. + # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. + # In both cases, we have to default to `cp -pR'. + ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || + as_ln_s='cp -pR' + elif ln conf$$.file conf$$ 2>/dev/null; then + as_ln_s=ln + else + as_ln_s='cp -pR' + fi +else + as_ln_s='cp -pR' +fi +rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file +rmdir conf$$.dir 2>/dev/null + +if mkdir -p . 2>/dev/null; then + as_mkdir_p='mkdir -p "$as_dir"' +else + test -d ./-p && rmdir ./-p + as_mkdir_p=false +fi + +as_test_x='test -x' +as_executable_p=as_fn_executable_p + +# Sed expression to map a string onto a valid CPP name. +as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" + +# Sed expression to map a string onto a valid variable name. +as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" + +SHELL=${CONFIG_SHELL-/bin/sh} + + +test -n "$DJDIR" || exec 7<&0 &1 + +# Name of the host. +# hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status, +# so uname gets run too. +ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` + +# +# Initializations. +# +ac_default_prefix=/usr/local +ac_clean_files= +ac_config_libobj_dir=. +LIBOBJS= +cross_compiling=no +subdirs= +MFLAGS= +MAKEFLAGS= + +# Identity of this package. +PACKAGE_NAME='bibliotheque graphique iut' +PACKAGE_TARNAME='bibliotheque-graphique-iut' +PACKAGE_VERSION='1.1' +PACKAGE_STRING='bibliotheque graphique iut 1.1' +PACKAGE_BUGREPORT='monnerat@u-pec.fr' +PACKAGE_URL='' + +# Factoring default headers for most tests. +ac_includes_default="\ +#include +#ifdef HAVE_SYS_TYPES_H +# include +#endif +#ifdef HAVE_SYS_STAT_H +# include +#endif +#ifdef STDC_HEADERS +# include +# include +#else +# ifdef HAVE_STDLIB_H +# include +# endif +#endif +#ifdef HAVE_STRING_H +# if !defined STDC_HEADERS && defined HAVE_MEMORY_H +# include +# endif +# include +#endif +#ifdef HAVE_STRINGS_H +# include +#endif +#ifdef HAVE_INTTYPES_H +# include +#endif +#ifdef HAVE_STDINT_H +# include +#endif +#ifdef HAVE_UNISTD_H +# include +#endif" + +ac_subst_vars='am__EXEEXT_FALSE +am__EXEEXT_TRUE +LTLIBOBJS +LIBOBJS +COND_EXPLES_FALSE +COND_EXPLES_TRUE +PREFIX +EXEMPLES_IMAGES_DIR +CPP +OTOOL64 +OTOOL +LIPO +NMEDIT +DSYMUTIL +MANIFEST_TOOL +RANLIB +DLLTOOL +OBJDUMP +LN_S +NM +ac_ct_DUMPBIN +DUMPBIN +LD +FGREP +EGREP +GREP +SED +host_os +host_vendor +host_cpu +host +build_os +build_vendor +build_cpu +build +LIBTOOL +ac_ct_AR +AR +am__fastdepCC_FALSE +am__fastdepCC_TRUE +CCDEPMODE +am__nodep +AMDEPBACKSLASH +AMDEP_FALSE +AMDEP_TRUE +am__quote +am__include +DEPDIR +OBJEXT +EXEEXT +ac_ct_CC +CPPFLAGS +LDFLAGS +CFLAGS +CC +AM_BACKSLASH +AM_DEFAULT_VERBOSITY +AM_DEFAULT_V +AM_V +am__untar +am__tar +AMTAR +am__leading_dot +SET_MAKE +AWK +mkdir_p +MKDIR_P +INSTALL_STRIP_PROGRAM +STRIP +install_sh +MAKEINFO +AUTOHEADER +AUTOMAKE +AUTOCONF +ACLOCAL +VERSION +PACKAGE +CYGPATH_W +am__isrc +INSTALL_DATA +INSTALL_SCRIPT +INSTALL_PROGRAM +target_alias +host_alias +build_alias +LIBS +ECHO_T +ECHO_N +ECHO_C +DEFS +mandir +localedir +libdir +psdir +pdfdir +dvidir +htmldir +infodir +docdir +oldincludedir +includedir +localstatedir +sharedstatedir +sysconfdir +datadir +datarootdir +libexecdir +sbindir +bindir +program_transform_name +prefix +exec_prefix +PACKAGE_URL +PACKAGE_BUGREPORT +PACKAGE_STRING +PACKAGE_VERSION +PACKAGE_TARNAME +PACKAGE_NAME +PATH_SEPARATOR +SHELL' +ac_subst_files='' +ac_user_opts=' +enable_option_checking +enable_silent_rules +enable_dependency_tracking +enable_shared +enable_static +with_pic +enable_fast_install +with_gnu_ld +with_sysroot +enable_libtool_lock +enable_exemples +enable_xpm +' + ac_precious_vars='build_alias +host_alias +target_alias +CC +CFLAGS +LDFLAGS +LIBS +CPPFLAGS +CPP' + + +# Initialize some variables set by options. +ac_init_help= +ac_init_version=false +ac_unrecognized_opts= +ac_unrecognized_sep= +# The variables have the same names as the options, with +# dashes changed to underlines. +cache_file=/dev/null +exec_prefix=NONE +no_create= +no_recursion= +prefix=NONE +program_prefix=NONE +program_suffix=NONE +program_transform_name=s,x,x, +silent= +site= +srcdir= +verbose= +x_includes=NONE +x_libraries=NONE + +# Installation directory options. +# These are left unexpanded so users can "make install exec_prefix=/foo" +# and all the variables that are supposed to be based on exec_prefix +# by default will actually change. +# Use braces instead of parens because sh, perl, etc. also accept them. +# (The list follows the same order as the GNU Coding Standards.) +bindir='${exec_prefix}/bin' +sbindir='${exec_prefix}/sbin' +libexecdir='${exec_prefix}/libexec' +datarootdir='${prefix}/share' +datadir='${datarootdir}' +sysconfdir='${prefix}/etc' +sharedstatedir='${prefix}/com' +localstatedir='${prefix}/var' +includedir='${prefix}/include' +oldincludedir='/usr/include' +docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' +infodir='${datarootdir}/info' +htmldir='${docdir}' +dvidir='${docdir}' +pdfdir='${docdir}' +psdir='${docdir}' +libdir='${exec_prefix}/lib' +localedir='${datarootdir}/locale' +mandir='${datarootdir}/man' + +ac_prev= +ac_dashdash= +for ac_option +do + # If the previous option needs an argument, assign it. + if test -n "$ac_prev"; then + eval $ac_prev=\$ac_option + ac_prev= + continue + fi + + case $ac_option in + *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;; + *=) ac_optarg= ;; + *) ac_optarg=yes ;; + esac + + # Accept the important Cygnus configure options, so we can diagnose typos. + + case $ac_dashdash$ac_option in + --) + ac_dashdash=yes ;; + + -bindir | --bindir | --bindi | --bind | --bin | --bi) + ac_prev=bindir ;; + -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) + bindir=$ac_optarg ;; + + -build | --build | --buil | --bui | --bu) + ac_prev=build_alias ;; + -build=* | --build=* | --buil=* | --bui=* | --bu=*) + build_alias=$ac_optarg ;; + + -cache-file | --cache-file | --cache-fil | --cache-fi \ + | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) + ac_prev=cache_file ;; + -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ + | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) + cache_file=$ac_optarg ;; + + --config-cache | -C) + cache_file=config.cache ;; + + -datadir | --datadir | --datadi | --datad) + ac_prev=datadir ;; + -datadir=* | --datadir=* | --datadi=* | --datad=*) + datadir=$ac_optarg ;; + + -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \ + | --dataroo | --dataro | --datar) + ac_prev=datarootdir ;; + -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \ + | --dataroot=* | --dataroo=* | --dataro=* | --datar=*) + datarootdir=$ac_optarg ;; + + -disable-* | --disable-*) + ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'` + # Reject names that are not valid shell variable names. + expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && + as_fn_error $? "invalid feature name: $ac_useropt" + ac_useropt_orig=$ac_useropt + ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` + case $ac_user_opts in + *" +"enable_$ac_useropt" +"*) ;; + *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig" + ac_unrecognized_sep=', ';; + esac + eval enable_$ac_useropt=no ;; + + -docdir | --docdir | --docdi | --doc | --do) + ac_prev=docdir ;; + -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*) + docdir=$ac_optarg ;; + + -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv) + ac_prev=dvidir ;; + -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*) + dvidir=$ac_optarg ;; + + -enable-* | --enable-*) + ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` + # Reject names that are not valid shell variable names. + expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && + as_fn_error $? "invalid feature name: $ac_useropt" + ac_useropt_orig=$ac_useropt + ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` + case $ac_user_opts in + *" +"enable_$ac_useropt" +"*) ;; + *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig" + ac_unrecognized_sep=', ';; + esac + eval enable_$ac_useropt=\$ac_optarg ;; + + -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ + | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ + | --exec | --exe | --ex) + ac_prev=exec_prefix ;; + -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ + | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ + | --exec=* | --exe=* | --ex=*) + exec_prefix=$ac_optarg ;; + + -gas | --gas | --ga | --g) + # Obsolete; use --with-gas. + with_gas=yes ;; + + -help | --help | --hel | --he | -h) + ac_init_help=long ;; + -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) + ac_init_help=recursive ;; + -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) + ac_init_help=short ;; + + -host | --host | --hos | --ho) + ac_prev=host_alias ;; + -host=* | --host=* | --hos=* | --ho=*) + host_alias=$ac_optarg ;; + + -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht) + ac_prev=htmldir ;; + -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \ + | --ht=*) + htmldir=$ac_optarg ;; + + -includedir | --includedir | --includedi | --included | --include \ + | --includ | --inclu | --incl | --inc) + ac_prev=includedir ;; + -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ + | --includ=* | --inclu=* | --incl=* | --inc=*) + includedir=$ac_optarg ;; + + -infodir | --infodir | --infodi | --infod | --info | --inf) + ac_prev=infodir ;; + -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) + infodir=$ac_optarg ;; + + -libdir | --libdir | --libdi | --libd) + ac_prev=libdir ;; + -libdir=* | --libdir=* | --libdi=* | --libd=*) + libdir=$ac_optarg ;; + + -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ + | --libexe | --libex | --libe) + ac_prev=libexecdir ;; + -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ + | --libexe=* | --libex=* | --libe=*) + libexecdir=$ac_optarg ;; + + -localedir | --localedir | --localedi | --localed | --locale) + ac_prev=localedir ;; + -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*) + localedir=$ac_optarg ;; + + -localstatedir | --localstatedir | --localstatedi | --localstated \ + | --localstate | --localstat | --localsta | --localst | --locals) + ac_prev=localstatedir ;; + -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ + | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*) + localstatedir=$ac_optarg ;; + + -mandir | --mandir | --mandi | --mand | --man | --ma | --m) + ac_prev=mandir ;; + -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) + mandir=$ac_optarg ;; + + -nfp | --nfp | --nf) + # Obsolete; use --without-fp. + with_fp=no ;; + + -no-create | --no-create | --no-creat | --no-crea | --no-cre \ + | --no-cr | --no-c | -n) + no_create=yes ;; + + -no-recursion | --no-recursion | --no-recursio | --no-recursi \ + | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) + no_recursion=yes ;; + + -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ + | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ + | --oldin | --oldi | --old | --ol | --o) + ac_prev=oldincludedir ;; + -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ + | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ + | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) + oldincludedir=$ac_optarg ;; + + -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) + ac_prev=prefix ;; + -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) + prefix=$ac_optarg ;; + + -program-prefix | --program-prefix | --program-prefi | --program-pref \ + | --program-pre | --program-pr | --program-p) + ac_prev=program_prefix ;; + -program-prefix=* | --program-prefix=* | --program-prefi=* \ + | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) + program_prefix=$ac_optarg ;; + + -program-suffix | --program-suffix | --program-suffi | --program-suff \ + | --program-suf | --program-su | --program-s) + ac_prev=program_suffix ;; + -program-suffix=* | --program-suffix=* | --program-suffi=* \ + | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) + program_suffix=$ac_optarg ;; + + -program-transform-name | --program-transform-name \ + | --program-transform-nam | --program-transform-na \ + | --program-transform-n | --program-transform- \ + | --program-transform | --program-transfor \ + | --program-transfo | --program-transf \ + | --program-trans | --program-tran \ + | --progr-tra | --program-tr | --program-t) + ac_prev=program_transform_name ;; + -program-transform-name=* | --program-transform-name=* \ + | --program-transform-nam=* | --program-transform-na=* \ + | --program-transform-n=* | --program-transform-=* \ + | --program-transform=* | --program-transfor=* \ + | --program-transfo=* | --program-transf=* \ + | --program-trans=* | --program-tran=* \ + | --progr-tra=* | --program-tr=* | --program-t=*) + program_transform_name=$ac_optarg ;; + + -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd) + ac_prev=pdfdir ;; + -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*) + pdfdir=$ac_optarg ;; + + -psdir | --psdir | --psdi | --psd | --ps) + ac_prev=psdir ;; + -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*) + psdir=$ac_optarg ;; + + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil) + silent=yes ;; + + -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) + ac_prev=sbindir ;; + -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ + | --sbi=* | --sb=*) + sbindir=$ac_optarg ;; + + -sharedstatedir | --sharedstatedir | --sharedstatedi \ + | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ + | --sharedst | --shareds | --shared | --share | --shar \ + | --sha | --sh) + ac_prev=sharedstatedir ;; + -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ + | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ + | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ + | --sha=* | --sh=*) + sharedstatedir=$ac_optarg ;; + + -site | --site | --sit) + ac_prev=site ;; + -site=* | --site=* | --sit=*) + site=$ac_optarg ;; + + -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) + ac_prev=srcdir ;; + -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) + srcdir=$ac_optarg ;; + + -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ + | --syscon | --sysco | --sysc | --sys | --sy) + ac_prev=sysconfdir ;; + -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ + | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) + sysconfdir=$ac_optarg ;; + + -target | --target | --targe | --targ | --tar | --ta | --t) + ac_prev=target_alias ;; + -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) + target_alias=$ac_optarg ;; + + -v | -verbose | --verbose | --verbos | --verbo | --verb) + verbose=yes ;; + + -version | --version | --versio | --versi | --vers | -V) + ac_init_version=: ;; + + -with-* | --with-*) + ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` + # Reject names that are not valid shell variable names. + expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && + as_fn_error $? "invalid package name: $ac_useropt" + ac_useropt_orig=$ac_useropt + ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` + case $ac_user_opts in + *" +"with_$ac_useropt" +"*) ;; + *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig" + ac_unrecognized_sep=', ';; + esac + eval with_$ac_useropt=\$ac_optarg ;; + + -without-* | --without-*) + ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'` + # Reject names that are not valid shell variable names. + expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && + as_fn_error $? "invalid package name: $ac_useropt" + ac_useropt_orig=$ac_useropt + ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` + case $ac_user_opts in + *" +"with_$ac_useropt" +"*) ;; + *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig" + ac_unrecognized_sep=', ';; + esac + eval with_$ac_useropt=no ;; + + --x) + # Obsolete; use --with-x. + with_x=yes ;; + + -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ + | --x-incl | --x-inc | --x-in | --x-i) + ac_prev=x_includes ;; + -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ + | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) + x_includes=$ac_optarg ;; + + -x-libraries | --x-libraries | --x-librarie | --x-librari \ + | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) + ac_prev=x_libraries ;; + -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ + | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) + x_libraries=$ac_optarg ;; + + -*) as_fn_error $? "unrecognized option: \`$ac_option' +Try \`$0 --help' for more information" + ;; + + *=*) + ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` + # Reject names that are not valid shell variable names. + case $ac_envvar in #( + '' | [0-9]* | *[!_$as_cr_alnum]* ) + as_fn_error $? "invalid variable name: \`$ac_envvar'" ;; + esac + eval $ac_envvar=\$ac_optarg + export $ac_envvar ;; + + *) + # FIXME: should be removed in autoconf 3.0. + $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2 + expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && + $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2 + : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}" + ;; + + esac +done + +if test -n "$ac_prev"; then + ac_option=--`echo $ac_prev | sed 's/_/-/g'` + as_fn_error $? "missing argument to $ac_option" +fi + +if test -n "$ac_unrecognized_opts"; then + case $enable_option_checking in + no) ;; + fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;; + *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;; + esac +fi + +# Check all directory arguments for consistency. +for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ + datadir sysconfdir sharedstatedir localstatedir includedir \ + oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ + libdir localedir mandir +do + eval ac_val=\$$ac_var + # Remove trailing slashes. + case $ac_val in + */ ) + ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'` + eval $ac_var=\$ac_val;; + esac + # Be sure to have absolute directory names. + case $ac_val in + [\\/$]* | ?:[\\/]* ) continue;; + NONE | '' ) case $ac_var in *prefix ) continue;; esac;; + esac + as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val" +done + +# There might be people who depend on the old broken behavior: `$host' +# used to hold the argument of --host etc. +# FIXME: To remove some day. +build=$build_alias +host=$host_alias +target=$target_alias + +# FIXME: To remove some day. +if test "x$host_alias" != x; then + if test "x$build_alias" = x; then + cross_compiling=maybe + elif test "x$build_alias" != "x$host_alias"; then + cross_compiling=yes + fi +fi + +ac_tool_prefix= +test -n "$host_alias" && ac_tool_prefix=$host_alias- + +test "$silent" = yes && exec 6>/dev/null + + +ac_pwd=`pwd` && test -n "$ac_pwd" && +ac_ls_di=`ls -di .` && +ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` || + as_fn_error $? "working directory cannot be determined" +test "X$ac_ls_di" = "X$ac_pwd_ls_di" || + as_fn_error $? "pwd does not report name of working directory" + + +# Find the source files, if location was not specified. +if test -z "$srcdir"; then + ac_srcdir_defaulted=yes + # Try the directory containing this script, then the parent directory. + ac_confdir=`$as_dirname -- "$as_myself" || +$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_myself" : 'X\(//\)[^/]' \| \ + X"$as_myself" : 'X\(//\)$' \| \ + X"$as_myself" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$as_myself" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + srcdir=$ac_confdir + if test ! -r "$srcdir/$ac_unique_file"; then + srcdir=.. + fi +else + ac_srcdir_defaulted=no +fi +if test ! -r "$srcdir/$ac_unique_file"; then + test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .." + as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir" +fi +ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work" +ac_abs_confdir=`( + cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg" + pwd)` +# When building in place, set srcdir=. +if test "$ac_abs_confdir" = "$ac_pwd"; then + srcdir=. +fi +# Remove unnecessary trailing slashes from srcdir. +# Double slashes in file names in object file debugging info +# mess up M-x gdb in Emacs. +case $srcdir in +*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;; +esac +for ac_var in $ac_precious_vars; do + eval ac_env_${ac_var}_set=\${${ac_var}+set} + eval ac_env_${ac_var}_value=\$${ac_var} + eval ac_cv_env_${ac_var}_set=\${${ac_var}+set} + eval ac_cv_env_${ac_var}_value=\$${ac_var} +done + +# +# Report the --help message. +# +if test "$ac_init_help" = "long"; then + # Omit some internal or obsolete options to make the list less imposing. + # This message is too long to be a string in the A/UX 3.1 sh. + cat <<_ACEOF +\`configure' configures bibliotheque graphique iut 1.1 to adapt to many kinds of systems. + +Usage: $0 [OPTION]... [VAR=VALUE]... + +To assign environment variables (e.g., CC, CFLAGS...), specify them as +VAR=VALUE. See below for descriptions of some of the useful variables. + +Defaults for the options are specified in brackets. + +Configuration: + -h, --help display this help and exit + --help=short display options specific to this package + --help=recursive display the short help of all the included packages + -V, --version display version information and exit + -q, --quiet, --silent do not print \`checking ...' messages + --cache-file=FILE cache test results in FILE [disabled] + -C, --config-cache alias for \`--cache-file=config.cache' + -n, --no-create do not create output files + --srcdir=DIR find the sources in DIR [configure dir or \`..'] + +Installation directories: + --prefix=PREFIX install architecture-independent files in PREFIX + [$ac_default_prefix] + --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX + [PREFIX] + +By default, \`make install' will install all the files in +\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify +an installation prefix other than \`$ac_default_prefix' using \`--prefix', +for instance \`--prefix=\$HOME'. + +For better control, use the options below. + +Fine tuning of the installation directories: + --bindir=DIR user executables [EPREFIX/bin] + --sbindir=DIR system admin executables [EPREFIX/sbin] + --libexecdir=DIR program executables [EPREFIX/libexec] + --sysconfdir=DIR read-only single-machine data [PREFIX/etc] + --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] + --localstatedir=DIR modifiable single-machine data [PREFIX/var] + --libdir=DIR object code libraries [EPREFIX/lib] + --includedir=DIR C header files [PREFIX/include] + --oldincludedir=DIR C header files for non-gcc [/usr/include] + --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] + --datadir=DIR read-only architecture-independent data [DATAROOTDIR] + --infodir=DIR info documentation [DATAROOTDIR/info] + --localedir=DIR locale-dependent data [DATAROOTDIR/locale] + --mandir=DIR man documentation [DATAROOTDIR/man] + --docdir=DIR documentation root + [DATAROOTDIR/doc/bibliotheque-graphique-iut] + --htmldir=DIR html documentation [DOCDIR] + --dvidir=DIR dvi documentation [DOCDIR] + --pdfdir=DIR pdf documentation [DOCDIR] + --psdir=DIR ps documentation [DOCDIR] +_ACEOF + + cat <<\_ACEOF + +Program names: + --program-prefix=PREFIX prepend PREFIX to installed program names + --program-suffix=SUFFIX append SUFFIX to installed program names + --program-transform-name=PROGRAM run sed PROGRAM on installed program names + +System types: + --build=BUILD configure for building on BUILD [guessed] + --host=HOST cross-compile to build programs to run on HOST [BUILD] +_ACEOF +fi + +if test -n "$ac_init_help"; then + case $ac_init_help in + short | recursive ) echo "Configuration of bibliotheque graphique iut 1.1:";; + esac + cat <<\_ACEOF + +Optional Features: + --disable-option-checking ignore unrecognized --enable/--with options + --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) + --enable-FEATURE[=ARG] include FEATURE [ARG=yes] + --enable-silent-rules less verbose build output (undo: "make V=1") + --disable-silent-rules verbose build output (undo: "make V=0") + --enable-dependency-tracking + do not reject slow dependency extractors + --disable-dependency-tracking + speeds up one-time build + --enable-shared[=PKGS] build shared libraries [default=yes] + --enable-static[=PKGS] build static libraries [default=yes] + --enable-fast-install[=PKGS] + optimize for fast installation [default=yes] + --disable-libtool-lock avoid locking (might break parallel builds) + --enable-exemples construit les exemples (default is no) + --enable-xpm enable xpm support [default=detect] + +Optional Packages: + --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] + --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) + --with-pic[=PKGS] try to use only PIC/non-PIC objects [default=use + both] + --with-gnu-ld assume the C compiler uses GNU ld [default=no] + --with-sysroot=DIR Search for dependent libraries within DIR + (or the compiler's sysroot if not specified). + +Some influential environment variables: + CC C compiler command + CFLAGS C compiler flags + LDFLAGS linker flags, e.g. -L if you have libraries in a + nonstandard directory + LIBS libraries to pass to the linker, e.g. -l + CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I if + you have headers in a nonstandard directory + CPP C preprocessor + +Use these variables to override the choices made by `configure' or to help +it to find libraries and programs with nonstandard names/locations. + +Report bugs to . +_ACEOF +ac_status=$? +fi + +if test "$ac_init_help" = "recursive"; then + # If there are subdirs, report their specific --help. + for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue + test -d "$ac_dir" || + { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } || + continue + ac_builddir=. + +case "$ac_dir" in +.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; +*) + ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` + # A ".." for each directory in $ac_dir_suffix. + ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` + case $ac_top_builddir_sub in + "") ac_top_builddir_sub=. ac_top_build_prefix= ;; + *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; + esac ;; +esac +ac_abs_top_builddir=$ac_pwd +ac_abs_builddir=$ac_pwd$ac_dir_suffix +# for backward compatibility: +ac_top_builddir=$ac_top_build_prefix + +case $srcdir in + .) # We are building in place. + ac_srcdir=. + ac_top_srcdir=$ac_top_builddir_sub + ac_abs_top_srcdir=$ac_pwd ;; + [\\/]* | ?:[\\/]* ) # Absolute name. + ac_srcdir=$srcdir$ac_dir_suffix; + ac_top_srcdir=$srcdir + ac_abs_top_srcdir=$srcdir ;; + *) # Relative name. + ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix + ac_top_srcdir=$ac_top_build_prefix$srcdir + ac_abs_top_srcdir=$ac_pwd/$srcdir ;; +esac +ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix + + cd "$ac_dir" || { ac_status=$?; continue; } + # Check for guested configure. + if test -f "$ac_srcdir/configure.gnu"; then + echo && + $SHELL "$ac_srcdir/configure.gnu" --help=recursive + elif test -f "$ac_srcdir/configure"; then + echo && + $SHELL "$ac_srcdir/configure" --help=recursive + else + $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 + fi || ac_status=$? + cd "$ac_pwd" || { ac_status=$?; break; } + done +fi + +test -n "$ac_init_help" && exit $ac_status +if $ac_init_version; then + cat <<\_ACEOF +bibliotheque graphique iut configure 1.1 +generated by GNU Autoconf 2.69 + +Copyright (C) 2012 Free Software Foundation, Inc. +This configure script is free software; the Free Software Foundation +gives unlimited permission to copy, distribute and modify it. +_ACEOF + exit +fi + +## ------------------------ ## +## Autoconf initialization. ## +## ------------------------ ## + +# ac_fn_c_try_compile LINENO +# -------------------------- +# Try to compile conftest.$ac_ext, and return whether this succeeded. +ac_fn_c_try_compile () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + rm -f conftest.$ac_objext + if { { ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compile") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} # ac_fn_c_try_compile + +# ac_fn_c_try_link LINENO +# ----------------------- +# Try to link conftest.$ac_ext, and return whether this succeeded. +ac_fn_c_try_link () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + rm -f conftest.$ac_objext conftest$ac_exeext + if { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + test -x conftest$ac_exeext + }; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information + # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would + # interfere with the next link command; also delete a directory that is + # left behind by Apple's compiler. We do this before executing the actions. + rm -rf conftest.dSYM conftest_ipa8_conftest.oo + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} # ac_fn_c_try_link + +# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES +# ------------------------------------------------------- +# Tests whether HEADER exists and can be compiled using the include files in +# INCLUDES, setting the cache variable VAR accordingly. +ac_fn_c_check_header_compile () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if eval \${$3+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +#include <$2> +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + eval "$3=yes" +else + eval "$3=no" +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + +} # ac_fn_c_check_header_compile + +# ac_fn_c_try_cpp LINENO +# ---------------------- +# Try to preprocess conftest.$ac_ext, and return whether this succeeded. +ac_fn_c_try_cpp () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + if { { ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } > conftest.i && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} # ac_fn_c_try_cpp + +# ac_fn_c_try_run LINENO +# ---------------------- +# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes +# that executables *can* be run. +ac_fn_c_try_run () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + if { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { ac_try='./conftest$ac_exeext' + { { case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; }; then : + ac_retval=0 +else + $as_echo "$as_me: program exited with status $ac_status" >&5 + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=$ac_status +fi + rm -rf conftest.dSYM conftest_ipa8_conftest.oo + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} # ac_fn_c_try_run + +# ac_fn_c_check_func LINENO FUNC VAR +# ---------------------------------- +# Tests whether FUNC exists, setting the cache variable VAR accordingly +ac_fn_c_check_func () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if eval \${$3+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +/* Define $2 to an innocuous variant, in case declares $2. + For example, HP-UX 11i declares gettimeofday. */ +#define $2 innocuous_$2 + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $2 (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef $2 + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $2 (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$2 || defined __stub___$2 +choke me +#endif + +int +main () +{ +return $2 (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + eval "$3=yes" +else + eval "$3=no" +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + +} # ac_fn_c_check_func + +# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES +# ------------------------------------------------------- +# Tests whether HEADER exists, giving a warning if it cannot be compiled using +# the include files in INCLUDES and setting the cache variable VAR +# accordingly. +ac_fn_c_check_header_mongrel () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + if eval \${$3+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if eval \${$3+:} false; then : + $as_echo_n "(cached) " >&6 +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +else + # Is the header compilable? +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5 +$as_echo_n "checking $2 usability... " >&6; } +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +#include <$2> +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_header_compiler=yes +else + ac_header_compiler=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5 +$as_echo "$ac_header_compiler" >&6; } + +# Is the header present? +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5 +$as_echo_n "checking $2 presence... " >&6; } +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include <$2> +_ACEOF +if ac_fn_c_try_cpp "$LINENO"; then : + ac_header_preproc=yes +else + ac_header_preproc=no +fi +rm -f conftest.err conftest.i conftest.$ac_ext +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5 +$as_echo "$ac_header_preproc" >&6; } + +# So? What about this header? +case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #(( + yes:no: ) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5 +$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 +$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} + ;; + no:yes:* ) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5 +$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5 +$as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5 +$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5 +$as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 +$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} +( $as_echo "## -------------------------------- ## +## Report this to monnerat@u-pec.fr ## +## -------------------------------- ##" + ) | sed "s/^/$as_me: WARNING: /" >&2 + ;; +esac + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if eval \${$3+:} false; then : + $as_echo_n "(cached) " >&6 +else + eval "$3=\$ac_header_compiler" +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +fi + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + +} # ac_fn_c_check_header_mongrel +cat >config.log <<_ACEOF +This file contains any messages produced by compilers while +running configure, to aid debugging if configure makes a mistake. + +It was created by bibliotheque graphique iut $as_me 1.1, which was +generated by GNU Autoconf 2.69. Invocation command line was + + $ $0 $@ + +_ACEOF +exec 5>>config.log +{ +cat <<_ASUNAME +## --------- ## +## Platform. ## +## --------- ## + +hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` +uname -m = `(uname -m) 2>/dev/null || echo unknown` +uname -r = `(uname -r) 2>/dev/null || echo unknown` +uname -s = `(uname -s) 2>/dev/null || echo unknown` +uname -v = `(uname -v) 2>/dev/null || echo unknown` + +/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` +/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` + +/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` +/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` +/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` +/usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown` +/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` +/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` +/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` + +_ASUNAME + +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + $as_echo "PATH: $as_dir" + done +IFS=$as_save_IFS + +} >&5 + +cat >&5 <<_ACEOF + + +## ----------- ## +## Core tests. ## +## ----------- ## + +_ACEOF + + +# Keep a trace of the command line. +# Strip out --no-create and --no-recursion so they do not pile up. +# Strip out --silent because we don't want to record it for future runs. +# Also quote any args containing shell meta-characters. +# Make two passes to allow for proper duplicate-argument suppression. +ac_configure_args= +ac_configure_args0= +ac_configure_args1= +ac_must_keep_next=false +for ac_pass in 1 2 +do + for ac_arg + do + case $ac_arg in + -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil) + continue ;; + *\'*) + ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; + esac + case $ac_pass in + 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;; + 2) + as_fn_append ac_configure_args1 " '$ac_arg'" + if test $ac_must_keep_next = true; then + ac_must_keep_next=false # Got value, back to normal. + else + case $ac_arg in + *=* | --config-cache | -C | -disable-* | --disable-* \ + | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ + | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ + | -with-* | --with-* | -without-* | --without-* | --x) + case "$ac_configure_args0 " in + "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; + esac + ;; + -* ) ac_must_keep_next=true ;; + esac + fi + as_fn_append ac_configure_args " '$ac_arg'" + ;; + esac + done +done +{ ac_configure_args0=; unset ac_configure_args0;} +{ ac_configure_args1=; unset ac_configure_args1;} + +# When interrupted or exit'd, cleanup temporary files, and complete +# config.log. We remove comments because anyway the quotes in there +# would cause problems or look ugly. +# WARNING: Use '\'' to represent an apostrophe within the trap. +# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug. +trap 'exit_status=$? + # Save into config.log some information that might help in debugging. + { + echo + + $as_echo "## ---------------- ## +## Cache variables. ## +## ---------------- ##" + echo + # The following way of writing the cache mishandles newlines in values, +( + for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do + eval ac_val=\$$ac_var + case $ac_val in #( + *${as_nl}*) + case $ac_var in #( + *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 +$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; + esac + case $ac_var in #( + _ | IFS | as_nl) ;; #( + BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( + *) { eval $ac_var=; unset $ac_var;} ;; + esac ;; + esac + done + (set) 2>&1 | + case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #( + *${as_nl}ac_space=\ *) + sed -n \ + "s/'\''/'\''\\\\'\'''\''/g; + s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p" + ;; #( + *) + sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" + ;; + esac | + sort +) + echo + + $as_echo "## ----------------- ## +## Output variables. ## +## ----------------- ##" + echo + for ac_var in $ac_subst_vars + do + eval ac_val=\$$ac_var + case $ac_val in + *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; + esac + $as_echo "$ac_var='\''$ac_val'\''" + done | sort + echo + + if test -n "$ac_subst_files"; then + $as_echo "## ------------------- ## +## File substitutions. ## +## ------------------- ##" + echo + for ac_var in $ac_subst_files + do + eval ac_val=\$$ac_var + case $ac_val in + *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; + esac + $as_echo "$ac_var='\''$ac_val'\''" + done | sort + echo + fi + + if test -s confdefs.h; then + $as_echo "## ----------- ## +## confdefs.h. ## +## ----------- ##" + echo + cat confdefs.h + echo + fi + test "$ac_signal" != 0 && + $as_echo "$as_me: caught signal $ac_signal" + $as_echo "$as_me: exit $exit_status" + } >&5 + rm -f core *.core core.conftest.* && + rm -f -r conftest* confdefs* conf$$* $ac_clean_files && + exit $exit_status +' 0 +for ac_signal in 1 2 13 15; do + trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal +done +ac_signal=0 + +# confdefs.h avoids OS command line length limits that DEFS can exceed. +rm -f -r conftest* confdefs.h + +$as_echo "/* confdefs.h */" > confdefs.h + +# Predefined preprocessor variables. + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_NAME "$PACKAGE_NAME" +_ACEOF + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_TARNAME "$PACKAGE_TARNAME" +_ACEOF + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_VERSION "$PACKAGE_VERSION" +_ACEOF + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_STRING "$PACKAGE_STRING" +_ACEOF + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" +_ACEOF + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_URL "$PACKAGE_URL" +_ACEOF + + +# Let the site file select an alternate cache file if it wants to. +# Prefer an explicitly selected file to automatically selected ones. +ac_site_file1=NONE +ac_site_file2=NONE +if test -n "$CONFIG_SITE"; then + # We do not want a PATH search for config.site. + case $CONFIG_SITE in #(( + -*) ac_site_file1=./$CONFIG_SITE;; + */*) ac_site_file1=$CONFIG_SITE;; + *) ac_site_file1=./$CONFIG_SITE;; + esac +elif test "x$prefix" != xNONE; then + ac_site_file1=$prefix/share/config.site + ac_site_file2=$prefix/etc/config.site +else + ac_site_file1=$ac_default_prefix/share/config.site + ac_site_file2=$ac_default_prefix/etc/config.site +fi +for ac_site_file in "$ac_site_file1" "$ac_site_file2" +do + test "x$ac_site_file" = xNONE && continue + if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5 +$as_echo "$as_me: loading site script $ac_site_file" >&6;} + sed 's/^/| /' "$ac_site_file" >&5 + . "$ac_site_file" \ + || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "failed to load site script $ac_site_file +See \`config.log' for more details" "$LINENO" 5; } + fi +done + +if test -r "$cache_file"; then + # Some versions of bash will fail to source /dev/null (special files + # actually), so we avoid doing that. DJGPP emulates it as a regular file. + if test /dev/null != "$cache_file" && test -f "$cache_file"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5 +$as_echo "$as_me: loading cache $cache_file" >&6;} + case $cache_file in + [\\/]* | ?:[\\/]* ) . "$cache_file";; + *) . "./$cache_file";; + esac + fi +else + { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5 +$as_echo "$as_me: creating cache $cache_file" >&6;} + >$cache_file +fi + +# Check that the precious variables saved in the cache have kept the same +# value. +ac_cache_corrupted=false +for ac_var in $ac_precious_vars; do + eval ac_old_set=\$ac_cv_env_${ac_var}_set + eval ac_new_set=\$ac_env_${ac_var}_set + eval ac_old_val=\$ac_cv_env_${ac_var}_value + eval ac_new_val=\$ac_env_${ac_var}_value + case $ac_old_set,$ac_new_set in + set,) + { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 +$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} + ac_cache_corrupted=: ;; + ,set) + { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5 +$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} + ac_cache_corrupted=: ;; + ,);; + *) + if test "x$ac_old_val" != "x$ac_new_val"; then + # differences in whitespace do not lead to failure. + ac_old_val_w=`echo x $ac_old_val` + ac_new_val_w=`echo x $ac_new_val` + if test "$ac_old_val_w" != "$ac_new_val_w"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5 +$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} + ac_cache_corrupted=: + else + { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5 +$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;} + eval $ac_var=\$ac_old_val + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5 +$as_echo "$as_me: former value: \`$ac_old_val'" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5 +$as_echo "$as_me: current value: \`$ac_new_val'" >&2;} + fi;; + esac + # Pass precious variables to config.status. + if test "$ac_new_set" = set; then + case $ac_new_val in + *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; + *) ac_arg=$ac_var=$ac_new_val ;; + esac + case " $ac_configure_args " in + *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. + *) as_fn_append ac_configure_args " '$ac_arg'" ;; + esac + fi +done +if $ac_cache_corrupted; then + { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5 +$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;} + as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5 +fi +## -------------------- ## +## Main body of script. ## +## -------------------- ## + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + + +am__api_version='1.14' + +ac_aux_dir= +for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do + if test -f "$ac_dir/install-sh"; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/install-sh -c" + break + elif test -f "$ac_dir/install.sh"; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/install.sh -c" + break + elif test -f "$ac_dir/shtool"; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/shtool install -c" + break + fi +done +if test -z "$ac_aux_dir"; then + as_fn_error $? "cannot find install-sh, install.sh, or shtool in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" "$LINENO" 5 +fi + +# These three variables are undocumented and unsupported, +# and are intended to be withdrawn in a future Autoconf release. +# They can cause serious problems if a builder's source tree is in a directory +# whose full name contains unusual characters. +ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var. +ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var. +ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. + + +# Find a good install program. We prefer a C program (faster), +# so one script is as good as another. But avoid the broken or +# incompatible versions: +# SysV /etc/install, /usr/sbin/install +# SunOS /usr/etc/install +# IRIX /sbin/install +# AIX /bin/install +# AmigaOS /C/install, which installs bootblocks on floppy discs +# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag +# AFS /usr/afsws/bin/install, which mishandles nonexistent args +# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" +# OS/2's system install, which has a completely different semantic +# ./install, which can be erroneously created by make from ./install.sh. +# Reject install programs that cannot install multiple files. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5 +$as_echo_n "checking for a BSD-compatible install... " >&6; } +if test -z "$INSTALL"; then +if ${ac_cv_path_install+:} false; then : + $as_echo_n "(cached) " >&6 +else + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + # Account for people who put trailing slashes in PATH elements. +case $as_dir/ in #(( + ./ | .// | /[cC]/* | \ + /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ + ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \ + /usr/ucb/* ) ;; + *) + # OSF1 and SCO ODT 3.0 have their own names for install. + # Don't use installbsd from OSF since it installs stuff as root + # by default. + for ac_prog in ginstall scoinst install; do + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then + if test $ac_prog = install && + grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then + # AIX install. It has an incompatible calling convention. + : + elif test $ac_prog = install && + grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then + # program-specific install script used by HP pwplus--don't use. + : + else + rm -rf conftest.one conftest.two conftest.dir + echo one > conftest.one + echo two > conftest.two + mkdir conftest.dir + if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" && + test -s conftest.one && test -s conftest.two && + test -s conftest.dir/conftest.one && + test -s conftest.dir/conftest.two + then + ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" + break 3 + fi + fi + fi + done + done + ;; +esac + + done +IFS=$as_save_IFS + +rm -rf conftest.one conftest.two conftest.dir + +fi + if test "${ac_cv_path_install+set}" = set; then + INSTALL=$ac_cv_path_install + else + # As a last resort, use the slow shell script. Don't cache a + # value for INSTALL within a source directory, because that will + # break other packages using the cache if that directory is + # removed, or if the value is a relative name. + INSTALL=$ac_install_sh + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5 +$as_echo "$INSTALL" >&6; } + +# Use test -z because SunOS4 sh mishandles braces in ${var-val}. +# It thinks the first close brace ends the variable substitution. +test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' + +test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' + +test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5 +$as_echo_n "checking whether build environment is sane... " >&6; } +# Reject unsafe characters in $srcdir or the absolute working directory +# name. Accept space and tab only in the latter. +am_lf=' +' +case `pwd` in + *[\\\"\#\$\&\'\`$am_lf]*) + as_fn_error $? "unsafe absolute working directory name" "$LINENO" 5;; +esac +case $srcdir in + *[\\\"\#\$\&\'\`$am_lf\ \ ]*) + as_fn_error $? "unsafe srcdir value: '$srcdir'" "$LINENO" 5;; +esac + +# Do 'set' in a subshell so we don't clobber the current shell's +# arguments. Must try -L first in case configure is actually a +# symlink; some systems play weird games with the mod time of symlinks +# (eg FreeBSD returns the mod time of the symlink's containing +# directory). +if ( + am_has_slept=no + for am_try in 1 2; do + echo "timestamp, slept: $am_has_slept" > conftest.file + set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null` + if test "$*" = "X"; then + # -L didn't work. + set X `ls -t "$srcdir/configure" conftest.file` + fi + if test "$*" != "X $srcdir/configure conftest.file" \ + && test "$*" != "X conftest.file $srcdir/configure"; then + + # If neither matched, then we have a broken ls. This can happen + # if, for instance, CONFIG_SHELL is bash and it inherits a + # broken ls alias from the environment. This has actually + # happened. Such a system could not be considered "sane". + as_fn_error $? "ls -t appears to fail. Make sure there is not a broken + alias in your environment" "$LINENO" 5 + fi + if test "$2" = conftest.file || test $am_try -eq 2; then + break + fi + # Just in case. + sleep 1 + am_has_slept=yes + done + test "$2" = conftest.file + ) +then + # Ok. + : +else + as_fn_error $? "newly created file is older than distributed files! +Check your system clock" "$LINENO" 5 +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } +# If we didn't sleep, we still need to ensure time stamps of config.status and +# generated files are strictly newer. +am_sleep_pid= +if grep 'slept: no' conftest.file >/dev/null 2>&1; then + ( sleep 1 ) & + am_sleep_pid=$! +fi + +rm -f conftest.file + +test "$program_prefix" != NONE && + program_transform_name="s&^&$program_prefix&;$program_transform_name" +# Use a double $ so make ignores it. +test "$program_suffix" != NONE && + program_transform_name="s&\$&$program_suffix&;$program_transform_name" +# Double any \ or $. +# By default was `s,x,x', remove it if useless. +ac_script='s/[\\$]/&&/g;s/;s,x,x,$//' +program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"` + +# expand $ac_aux_dir to an absolute path +am_aux_dir=`cd $ac_aux_dir && pwd` + +if test x"${MISSING+set}" != xset; then + case $am_aux_dir in + *\ * | *\ *) + MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;; + *) + MISSING="\${SHELL} $am_aux_dir/missing" ;; + esac +fi +# Use eval to expand $SHELL +if eval "$MISSING --is-lightweight"; then + am_missing_run="$MISSING " +else + am_missing_run= + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: 'missing' script is too old or missing" >&5 +$as_echo "$as_me: WARNING: 'missing' script is too old or missing" >&2;} +fi + +if test x"${install_sh}" != xset; then + case $am_aux_dir in + *\ * | *\ *) + install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;; + *) + install_sh="\${SHELL} $am_aux_dir/install-sh" + esac +fi + +# Installed binaries are usually stripped using 'strip' when the user +# run "make install-strip". However 'strip' might not be the right +# tool to use in cross-compilation environments, therefore Automake +# will honor the 'STRIP' environment variable to overrule this program. +if test "$cross_compiling" != no; then + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. +set dummy ${ac_tool_prefix}strip; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_STRIP+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$STRIP"; then + ac_cv_prog_STRIP="$STRIP" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_STRIP="${ac_tool_prefix}strip" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +STRIP=$ac_cv_prog_STRIP +if test -n "$STRIP"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5 +$as_echo "$STRIP" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_STRIP"; then + ac_ct_STRIP=$STRIP + # Extract the first word of "strip", so it can be a program name with args. +set dummy strip; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_STRIP+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_STRIP"; then + ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_STRIP="strip" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP +if test -n "$ac_ct_STRIP"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5 +$as_echo "$ac_ct_STRIP" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_STRIP" = x; then + STRIP=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + STRIP=$ac_ct_STRIP + fi +else + STRIP="$ac_cv_prog_STRIP" +fi + +fi +INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5 +$as_echo_n "checking for a thread-safe mkdir -p... " >&6; } +if test -z "$MKDIR_P"; then + if ${ac_cv_path_mkdir+:} false; then : + $as_echo_n "(cached) " >&6 +else + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in mkdir gmkdir; do + for ac_exec_ext in '' $ac_executable_extensions; do + as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext" || continue + case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #( + 'mkdir (GNU coreutils) '* | \ + 'mkdir (coreutils) '* | \ + 'mkdir (fileutils) '4.1*) + ac_cv_path_mkdir=$as_dir/$ac_prog$ac_exec_ext + break 3;; + esac + done + done + done +IFS=$as_save_IFS + +fi + + test -d ./--version && rmdir ./--version + if test "${ac_cv_path_mkdir+set}" = set; then + MKDIR_P="$ac_cv_path_mkdir -p" + else + # As a last resort, use the slow shell script. Don't cache a + # value for MKDIR_P within a source directory, because that will + # break other packages using the cache if that directory is + # removed, or if the value is a relative name. + MKDIR_P="$ac_install_sh -d" + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5 +$as_echo "$MKDIR_P" >&6; } + +for ac_prog in gawk mawk nawk awk +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_AWK+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$AWK"; then + ac_cv_prog_AWK="$AWK" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_AWK="$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +AWK=$ac_cv_prog_AWK +if test -n "$AWK"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5 +$as_echo "$AWK" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$AWK" && break +done + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5 +$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; } +set x ${MAKE-make} +ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` +if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat >conftest.make <<\_ACEOF +SHELL = /bin/sh +all: + @echo '@@@%%%=$(MAKE)=@@@%%%' +_ACEOF +# GNU make sometimes prints "make[1]: Entering ...", which would confuse us. +case `${MAKE-make} -f conftest.make 2>/dev/null` in + *@@@%%%=?*=@@@%%%*) + eval ac_cv_prog_make_${ac_make}_set=yes;; + *) + eval ac_cv_prog_make_${ac_make}_set=no;; +esac +rm -f conftest.make +fi +if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + SET_MAKE= +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + SET_MAKE="MAKE=${MAKE-make}" +fi + +rm -rf .tst 2>/dev/null +mkdir .tst 2>/dev/null +if test -d .tst; then + am__leading_dot=. +else + am__leading_dot=_ +fi +rmdir .tst 2>/dev/null + +# Check whether --enable-silent-rules was given. +if test "${enable_silent_rules+set}" = set; then : + enableval=$enable_silent_rules; +fi + +case $enable_silent_rules in # ((( + yes) AM_DEFAULT_VERBOSITY=0;; + no) AM_DEFAULT_VERBOSITY=1;; + *) AM_DEFAULT_VERBOSITY=1;; +esac +am_make=${MAKE-make} +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5 +$as_echo_n "checking whether $am_make supports nested variables... " >&6; } +if ${am_cv_make_support_nested_variables+:} false; then : + $as_echo_n "(cached) " >&6 +else + if $as_echo 'TRUE=$(BAR$(V)) +BAR0=false +BAR1=true +V=1 +am__doit: + @$(TRUE) +.PHONY: am__doit' | $am_make -f - >/dev/null 2>&1; then + am_cv_make_support_nested_variables=yes +else + am_cv_make_support_nested_variables=no +fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5 +$as_echo "$am_cv_make_support_nested_variables" >&6; } +if test $am_cv_make_support_nested_variables = yes; then + AM_V='$(V)' + AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' +else + AM_V=$AM_DEFAULT_VERBOSITY + AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY +fi +AM_BACKSLASH='\' + +if test "`cd $srcdir && pwd`" != "`pwd`"; then + # Use -I$(srcdir) only when $(srcdir) != ., so that make's output + # is not polluted with repeated "-I." + am__isrc=' -I$(srcdir)' + # test to see if srcdir already configured + if test -f $srcdir/config.status; then + as_fn_error $? "source directory already configured; run \"make distclean\" there first" "$LINENO" 5 + fi +fi + +# test whether we have cygpath +if test -z "$CYGPATH_W"; then + if (cygpath --version) >/dev/null 2>/dev/null; then + CYGPATH_W='cygpath -w' + else + CYGPATH_W=echo + fi +fi + + +# Define the identity of the package. + PACKAGE='bibliotheque-graphique-iut' + VERSION='1.1' + + +cat >>confdefs.h <<_ACEOF +#define PACKAGE "$PACKAGE" +_ACEOF + + +cat >>confdefs.h <<_ACEOF +#define VERSION "$VERSION" +_ACEOF + +# Some tools Automake needs. + +ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"} + + +AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"} + + +AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"} + + +AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"} + + +MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"} + +# For better backward compatibility. To be removed once Automake 1.9.x +# dies out for good. For more background, see: +# +# +mkdir_p='$(MKDIR_P)' + +# We need awk for the "check" target. The system "awk" is bad on +# some platforms. +# Always define AMTAR for backward compatibility. Yes, it's still used +# in the wild :-( We should find a proper way to deprecate it ... +AMTAR='$${TAR-tar}' + + +# We'll loop over all known methods to create a tar archive until one works. +_am_tools='gnutar pax cpio none' + +am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -' + + + + + + +# POSIX will say in a future version that running "rm -f" with no argument +# is OK; and we want to be able to make that assumption in our Makefile +# recipes. So use an aggressive probe to check that the usage we want is +# actually supported "in the wild" to an acceptable degree. +# See automake bug#10828. +# To make any issue more visible, cause the running configure to be aborted +# by default if the 'rm' program in use doesn't match our expectations; the +# user can still override this though. +if rm -f && rm -fr && rm -rf; then : OK; else + cat >&2 <<'END' +Oops! + +Your 'rm' program seems unable to run without file operands specified +on the command line, even when the '-f' option is present. This is contrary +to the behaviour of most rm programs out there, and not conforming with +the upcoming POSIX standard: + +Please tell bug-automake@gnu.org about your system, including the value +of your $PATH and any error possibly output before this message. This +can help us improve future automake versions. + +END + if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then + echo 'Configuration will proceed anyway, since you have set the' >&2 + echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2 + echo >&2 + else + cat >&2 <<'END' +Aborting the configuration process, to ensure you take notice of the issue. + +You can download and install GNU coreutils to get an 'rm' implementation +that behaves properly: . + +If you want to complete the configuration process using your problematic +'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM +to "yes", and re-run configure. + +END + as_fn_error $? "Your 'rm' program is bad, sorry." "$LINENO" 5 + fi +fi +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu +if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. +set dummy ${ac_tool_prefix}gcc; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_CC+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_CC="${ac_tool_prefix}gcc" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +CC=$ac_cv_prog_CC +if test -n "$CC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 +$as_echo "$CC" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_CC"; then + ac_ct_CC=$CC + # Extract the first word of "gcc", so it can be a program name with args. +set dummy gcc; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_CC+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_CC"; then + ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_CC="gcc" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_CC=$ac_cv_prog_ac_ct_CC +if test -n "$ac_ct_CC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 +$as_echo "$ac_ct_CC" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_CC" = x; then + CC="" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + CC=$ac_ct_CC + fi +else + CC="$ac_cv_prog_CC" +fi + +if test -z "$CC"; then + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. +set dummy ${ac_tool_prefix}cc; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_CC+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_CC="${ac_tool_prefix}cc" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +CC=$ac_cv_prog_CC +if test -n "$CC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 +$as_echo "$CC" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + fi +fi +if test -z "$CC"; then + # Extract the first word of "cc", so it can be a program name with args. +set dummy cc; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_CC+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else + ac_prog_rejected=no +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then + ac_prog_rejected=yes + continue + fi + ac_cv_prog_CC="cc" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +if test $ac_prog_rejected = yes; then + # We found a bogon in the path, so make sure we never use it. + set dummy $ac_cv_prog_CC + shift + if test $# != 0; then + # We chose a different compiler from the bogus one. + # However, it has the same basename, so the bogon will be chosen + # first if we set CC to just the basename; use the full file name. + shift + ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" + fi +fi +fi +fi +CC=$ac_cv_prog_CC +if test -n "$CC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 +$as_echo "$CC" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$CC"; then + if test -n "$ac_tool_prefix"; then + for ac_prog in cl.exe + do + # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. +set dummy $ac_tool_prefix$ac_prog; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_CC+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_CC="$ac_tool_prefix$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +CC=$ac_cv_prog_CC +if test -n "$CC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 +$as_echo "$CC" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$CC" && break + done +fi +if test -z "$CC"; then + ac_ct_CC=$CC + for ac_prog in cl.exe +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_CC+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_CC"; then + ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_CC="$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_CC=$ac_cv_prog_ac_ct_CC +if test -n "$ac_ct_CC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 +$as_echo "$ac_ct_CC" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$ac_ct_CC" && break +done + + if test "x$ac_ct_CC" = x; then + CC="" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + CC=$ac_ct_CC + fi +fi + +fi + + +test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "no acceptable C compiler found in \$PATH +See \`config.log' for more details" "$LINENO" 5; } + +# Provide some information about the compiler. +$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 +set X $ac_compile +ac_compiler=$2 +for ac_option in --version -v -V -qversion; do + { { ac_try="$ac_compiler $ac_option >&5" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compiler $ac_option >&5") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + sed '10a\ +... rest of stderr output deleted ... + 10q' conftest.err >conftest.er1 + cat conftest.er1 >&5 + fi + rm -f conftest.er1 conftest.err + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } +done + +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +ac_clean_files_save=$ac_clean_files +ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out" +# Try to create an executable without -o first, disregard a.out. +# It will help us diagnose broken compilers, and finding out an intuition +# of exeext. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5 +$as_echo_n "checking whether the C compiler works... " >&6; } +ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` + +# The possible output files: +ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*" + +ac_rmfiles= +for ac_file in $ac_files +do + case $ac_file in + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; + * ) ac_rmfiles="$ac_rmfiles $ac_file";; + esac +done +rm -f $ac_rmfiles + +if { { ac_try="$ac_link_default" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link_default") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then : + # Autoconf-2.13 could set the ac_cv_exeext variable to `no'. +# So ignore a value of `no', otherwise this would lead to `EXEEXT = no' +# in a Makefile. We should not override ac_cv_exeext if it was cached, +# so that the user can short-circuit this test for compilers unknown to +# Autoconf. +for ac_file in $ac_files '' +do + test -f "$ac_file" || continue + case $ac_file in + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) + ;; + [ab].out ) + # We found the default executable, but exeext='' is most + # certainly right. + break;; + *.* ) + if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no; + then :; else + ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` + fi + # We set ac_cv_exeext here because the later test for it is not + # safe: cross compilers may not add the suffix if given an `-o' + # argument, so we may need to know it at that point already. + # Even if this section looks crufty: it has the advantage of + # actually working. + break;; + * ) + break;; + esac +done +test "$ac_cv_exeext" = no && ac_cv_exeext= + +else + ac_file='' +fi +if test -z "$ac_file"; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error 77 "C compiler cannot create executables +See \`config.log' for more details" "$LINENO" 5; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5 +$as_echo_n "checking for C compiler default output file name... " >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5 +$as_echo "$ac_file" >&6; } +ac_exeext=$ac_cv_exeext + +rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out +ac_clean_files=$ac_clean_files_save +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5 +$as_echo_n "checking for suffix of executables... " >&6; } +if { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then : + # If both `conftest.exe' and `conftest' are `present' (well, observable) +# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will +# work properly (i.e., refer to `conftest.exe'), while it won't with +# `rm'. +for ac_file in conftest.exe conftest conftest.*; do + test -f "$ac_file" || continue + case $ac_file in + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; + *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` + break;; + * ) break;; + esac +done +else + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "cannot compute suffix of executables: cannot compile and link +See \`config.log' for more details" "$LINENO" 5; } +fi +rm -f conftest conftest$ac_cv_exeext +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5 +$as_echo "$ac_cv_exeext" >&6; } + +rm -f conftest.$ac_ext +EXEEXT=$ac_cv_exeext +ac_exeext=$EXEEXT +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int +main () +{ +FILE *f = fopen ("conftest.out", "w"); + return ferror (f) || fclose (f) != 0; + + ; + return 0; +} +_ACEOF +ac_clean_files="$ac_clean_files conftest.out" +# Check that the compiler produces executables we can run. If not, either +# the compiler is broken, or we cross compile. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5 +$as_echo_n "checking whether we are cross compiling... " >&6; } +if test "$cross_compiling" != yes; then + { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + if { ac_try='./conftest$ac_cv_exeext' + { { case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; }; then + cross_compiling=no + else + if test "$cross_compiling" = maybe; then + cross_compiling=yes + else + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "cannot run C compiled programs. +If you meant to cross compile, use \`--host'. +See \`config.log' for more details" "$LINENO" 5; } + fi + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5 +$as_echo "$cross_compiling" >&6; } + +rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out +ac_clean_files=$ac_clean_files_save +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5 +$as_echo_n "checking for suffix of object files... " >&6; } +if ${ac_cv_objext+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.o conftest.obj +if { { ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compile") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then : + for ac_file in conftest.o conftest.obj conftest.*; do + test -f "$ac_file" || continue; + case $ac_file in + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;; + *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` + break;; + esac +done +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "cannot compute suffix of object files: cannot compile +See \`config.log' for more details" "$LINENO" 5; } +fi +rm -f conftest.$ac_cv_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5 +$as_echo "$ac_cv_objext" >&6; } +OBJEXT=$ac_cv_objext +ac_objext=$OBJEXT +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5 +$as_echo_n "checking whether we are using the GNU C compiler... " >&6; } +if ${ac_cv_c_compiler_gnu+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ +#ifndef __GNUC__ + choke me +#endif + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_compiler_gnu=yes +else + ac_compiler_gnu=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +ac_cv_c_compiler_gnu=$ac_compiler_gnu + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 +$as_echo "$ac_cv_c_compiler_gnu" >&6; } +if test $ac_compiler_gnu = yes; then + GCC=yes +else + GCC= +fi +ac_test_CFLAGS=${CFLAGS+set} +ac_save_CFLAGS=$CFLAGS +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 +$as_echo_n "checking whether $CC accepts -g... " >&6; } +if ${ac_cv_prog_cc_g+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_save_c_werror_flag=$ac_c_werror_flag + ac_c_werror_flag=yes + ac_cv_prog_cc_g=no + CFLAGS="-g" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_prog_cc_g=yes +else + CFLAGS="" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + +else + ac_c_werror_flag=$ac_save_c_werror_flag + CFLAGS="-g" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_prog_cc_g=yes +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + ac_c_werror_flag=$ac_save_c_werror_flag +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 +$as_echo "$ac_cv_prog_cc_g" >&6; } +if test "$ac_test_CFLAGS" = set; then + CFLAGS=$ac_save_CFLAGS +elif test $ac_cv_prog_cc_g = yes; then + if test "$GCC" = yes; then + CFLAGS="-g -O2" + else + CFLAGS="-g" + fi +else + if test "$GCC" = yes; then + CFLAGS="-O2" + else + CFLAGS= + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 +$as_echo_n "checking for $CC option to accept ISO C89... " >&6; } +if ${ac_cv_prog_cc_c89+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_cv_prog_cc_c89=no +ac_save_CC=$CC +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +struct stat; +/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ +struct buf { int x; }; +FILE * (*rcsopen) (struct buf *, struct stat *, int); +static char *e (p, i) + char **p; + int i; +{ + return p[i]; +} +static char *f (char * (*g) (char **, int), char **p, ...) +{ + char *s; + va_list v; + va_start (v,p); + s = g (p, va_arg (v,int)); + va_end (v); + return s; +} + +/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has + function prototypes and stuff, but not '\xHH' hex character constants. + These don't provoke an error unfortunately, instead are silently treated + as 'x'. The following induces an error, until -std is added to get + proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an + array size at least. It's necessary to write '\x00'==0 to get something + that's true only with -std. */ +int osf4_cc_array ['\x00' == 0 ? 1 : -1]; + +/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters + inside strings and character constants. */ +#define FOO(x) 'x' +int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; + +int test (int i, double x); +struct s1 {int (*f) (int a);}; +struct s2 {int (*f) (double a);}; +int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); +int argc; +char **argv; +int +main () +{ +return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; + ; + return 0; +} +_ACEOF +for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \ + -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" +do + CC="$ac_save_CC $ac_arg" + if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_prog_cc_c89=$ac_arg +fi +rm -f core conftest.err conftest.$ac_objext + test "x$ac_cv_prog_cc_c89" != "xno" && break +done +rm -f conftest.$ac_ext +CC=$ac_save_CC + +fi +# AC_CACHE_VAL +case "x$ac_cv_prog_cc_c89" in + x) + { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 +$as_echo "none needed" >&6; } ;; + xno) + { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 +$as_echo "unsupported" >&6; } ;; + *) + CC="$CC $ac_cv_prog_cc_c89" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 +$as_echo "$ac_cv_prog_cc_c89" >&6; } ;; +esac +if test "x$ac_cv_prog_cc_c89" != xno; then : + +fi + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5 +$as_echo_n "checking whether $CC understands -c and -o together... " >&6; } +if ${am_cv_prog_cc_c_o+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF + # Make sure it works both with $CC and with simple cc. + # Following AC_PROG_CC_C_O, we do the test twice because some + # compilers refuse to overwrite an existing .o file with -o, + # though they will create one. + am_cv_prog_cc_c_o=yes + for am_i in 1 2; do + if { echo "$as_me:$LINENO: $CC -c conftest.$ac_ext -o conftest2.$ac_objext" >&5 + ($CC -c conftest.$ac_ext -o conftest2.$ac_objext) >&5 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } \ + && test -f conftest2.$ac_objext; then + : OK + else + am_cv_prog_cc_c_o=no + break + fi + done + rm -f core conftest* + unset am_i +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5 +$as_echo "$am_cv_prog_cc_c_o" >&6; } +if test "$am_cv_prog_cc_c_o" != yes; then + # Losing compiler, so override with the script. + # FIXME: It is wrong to rewrite CC. + # But if we don't then we get into trouble of one sort or another. + # A longer-term fix would be to have automake use am__CC in this case, + # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)" + CC="$am_aux_dir/compile $CC" +fi +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + +DEPDIR="${am__leading_dot}deps" + +ac_config_commands="$ac_config_commands depfiles" + + +am_make=${MAKE-make} +cat > confinc << 'END' +am__doit: + @echo this is the am__doit target +.PHONY: am__doit +END +# If we don't find an include directive, just comment out the code. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5 +$as_echo_n "checking for style of include used by $am_make... " >&6; } +am__include="#" +am__quote= +_am_result=none +# First try GNU make style include. +echo "include confinc" > confmf +# Ignore all kinds of additional output from 'make'. +case `$am_make -s -f confmf 2> /dev/null` in #( +*the\ am__doit\ target*) + am__include=include + am__quote= + _am_result=GNU + ;; +esac +# Now try BSD make style include. +if test "$am__include" = "#"; then + echo '.include "confinc"' > confmf + case `$am_make -s -f confmf 2> /dev/null` in #( + *the\ am__doit\ target*) + am__include=.include + am__quote="\"" + _am_result=BSD + ;; + esac +fi + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5 +$as_echo "$_am_result" >&6; } +rm -f confinc confmf + +# Check whether --enable-dependency-tracking was given. +if test "${enable_dependency_tracking+set}" = set; then : + enableval=$enable_dependency_tracking; +fi + +if test "x$enable_dependency_tracking" != xno; then + am_depcomp="$ac_aux_dir/depcomp" + AMDEPBACKSLASH='\' + am__nodep='_no' +fi + if test "x$enable_dependency_tracking" != xno; then + AMDEP_TRUE= + AMDEP_FALSE='#' +else + AMDEP_TRUE='#' + AMDEP_FALSE= +fi + + + +depcc="$CC" am_compiler_list= + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 +$as_echo_n "checking dependency style of $depcc... " >&6; } +if ${am_cv_CC_dependencies_compiler_type+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then + # We make a subdir and do the tests there. Otherwise we can end up + # making bogus files that we don't know about and never remove. For + # instance it was reported that on HP-UX the gcc test will end up + # making a dummy file named 'D' -- because '-MD' means "put the output + # in D". + rm -rf conftest.dir + mkdir conftest.dir + # Copy depcomp to subdir because otherwise we won't find it if we're + # using a relative directory. + cp "$am_depcomp" conftest.dir + cd conftest.dir + # We will build objects and dependencies in a subdirectory because + # it helps to detect inapplicable dependency modes. For instance + # both Tru64's cc and ICC support -MD to output dependencies as a + # side effect of compilation, but ICC will put the dependencies in + # the current directory while Tru64 will put them in the object + # directory. + mkdir sub + + am_cv_CC_dependencies_compiler_type=none + if test "$am_compiler_list" = ""; then + am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` + fi + am__universal=false + case " $depcc " in #( + *\ -arch\ *\ -arch\ *) am__universal=true ;; + esac + + for depmode in $am_compiler_list; do + # Setup a source with many dependencies, because some compilers + # like to wrap large dependency lists on column 80 (with \), and + # we should not choose a depcomp mode which is confused by this. + # + # We need to recreate these files for each test, as the compiler may + # overwrite some of them when testing with obscure command lines. + # This happens at least with the AIX C compiler. + : > sub/conftest.c + for i in 1 2 3 4 5 6; do + echo '#include "conftst'$i'.h"' >> sub/conftest.c + # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with + # Solaris 10 /bin/sh. + echo '/* dummy */' > sub/conftst$i.h + done + echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf + + # We check with '-c' and '-o' for the sake of the "dashmstdout" + # mode. It turns out that the SunPro C++ compiler does not properly + # handle '-M -o', and we need to detect this. Also, some Intel + # versions had trouble with output in subdirs. + am__obj=sub/conftest.${OBJEXT-o} + am__minus_obj="-o $am__obj" + case $depmode in + gcc) + # This depmode causes a compiler race in universal mode. + test "$am__universal" = false || continue + ;; + nosideeffect) + # After this tag, mechanisms are not by side-effect, so they'll + # only be used when explicitly requested. + if test "x$enable_dependency_tracking" = xyes; then + continue + else + break + fi + ;; + msvc7 | msvc7msys | msvisualcpp | msvcmsys) + # This compiler won't grok '-c -o', but also, the minuso test has + # not run yet. These depmodes are late enough in the game, and + # so weak that their functioning should not be impacted. + am__obj=conftest.${OBJEXT-o} + am__minus_obj= + ;; + none) break ;; + esac + if depmode=$depmode \ + source=sub/conftest.c object=$am__obj \ + depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ + $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ + >/dev/null 2>conftest.err && + grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && + grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && + grep $am__obj sub/conftest.Po > /dev/null 2>&1 && + ${MAKE-make} -s -f confmf > /dev/null 2>&1; then + # icc doesn't choke on unknown options, it will just issue warnings + # or remarks (even with -Werror). So we grep stderr for any message + # that says an option was ignored or not supported. + # When given -MP, icc 7.0 and 7.1 complain thusly: + # icc: Command line warning: ignoring option '-M'; no argument required + # The diagnosis changed in icc 8.0: + # icc: Command line remark: option '-MP' not supported + if (grep 'ignoring option' conftest.err || + grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else + am_cv_CC_dependencies_compiler_type=$depmode + break + fi + fi + done + + cd .. + rm -rf conftest.dir +else + am_cv_CC_dependencies_compiler_type=none +fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5 +$as_echo "$am_cv_CC_dependencies_compiler_type" >&6; } +CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type + + if + test "x$enable_dependency_tracking" != xno \ + && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then + am__fastdepCC_TRUE= + am__fastdepCC_FALSE='#' +else + am__fastdepCC_TRUE='#' + am__fastdepCC_FALSE= +fi + + + +if test -n "$ac_tool_prefix"; then + for ac_prog in ar lib "link -lib" + do + # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. +set dummy $ac_tool_prefix$ac_prog; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_AR+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$AR"; then + ac_cv_prog_AR="$AR" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_AR="$ac_tool_prefix$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +AR=$ac_cv_prog_AR +if test -n "$AR"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5 +$as_echo "$AR" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$AR" && break + done +fi +if test -z "$AR"; then + ac_ct_AR=$AR + for ac_prog in ar lib "link -lib" +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_AR+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_AR"; then + ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_AR="$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_AR=$ac_cv_prog_ac_ct_AR +if test -n "$ac_ct_AR"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5 +$as_echo "$ac_ct_AR" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$ac_ct_AR" && break +done + + if test "x$ac_ct_AR" = x; then + AR="false" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + AR=$ac_ct_AR + fi +fi + +: ${AR=ar} + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the archiver ($AR) interface" >&5 +$as_echo_n "checking the archiver ($AR) interface... " >&6; } +if ${am_cv_ar_interface+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + am_cv_ar_interface=ar + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +int some_variable = 0; +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + am_ar_try='$AR cru libconftest.a conftest.$ac_objext >&5' + { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$am_ar_try\""; } >&5 + (eval $am_ar_try) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + if test "$ac_status" -eq 0; then + am_cv_ar_interface=ar + else + am_ar_try='$AR -NOLOGO -OUT:conftest.lib conftest.$ac_objext >&5' + { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$am_ar_try\""; } >&5 + (eval $am_ar_try) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + if test "$ac_status" -eq 0; then + am_cv_ar_interface=lib + else + am_cv_ar_interface=unknown + fi + fi + rm -f conftest.lib libconftest.a + +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_ar_interface" >&5 +$as_echo "$am_cv_ar_interface" >&6; } + +case $am_cv_ar_interface in +ar) + ;; +lib) + # Microsoft lib, so override with the ar-lib wrapper script. + # FIXME: It is wrong to rewrite AR. + # But if we don't then we get into trouble of one sort or another. + # A longer-term fix would be to have automake use am__AR in this case, + # and then we could set am__AR="$am_aux_dir/ar-lib \$(AR)" or something + # similar. + AR="$am_aux_dir/ar-lib $AR" + ;; +unknown) + as_fn_error $? "could not determine $AR interface" "$LINENO" 5 + ;; +esac + +case `pwd` in + *\ * | *\ *) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5 +$as_echo "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;; +esac + + + +macro_version='2.4.2' +macro_revision='1.3337' + + + + + + + + + + + + + +ltmain="$ac_aux_dir/ltmain.sh" + +# Make sure we can run config.sub. +$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 || + as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5 + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5 +$as_echo_n "checking build system type... " >&6; } +if ${ac_cv_build+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_build_alias=$build_alias +test "x$ac_build_alias" = x && + ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"` +test "x$ac_build_alias" = x && + as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5 +ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` || + as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5 + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5 +$as_echo "$ac_cv_build" >&6; } +case $ac_cv_build in +*-*-*) ;; +*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;; +esac +build=$ac_cv_build +ac_save_IFS=$IFS; IFS='-' +set x $ac_cv_build +shift +build_cpu=$1 +build_vendor=$2 +shift; shift +# Remember, the first character of IFS is used to create $*, +# except with old shells: +build_os=$* +IFS=$ac_save_IFS +case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5 +$as_echo_n "checking host system type... " >&6; } +if ${ac_cv_host+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "x$host_alias" = x; then + ac_cv_host=$ac_cv_build +else + ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` || + as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5 +fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5 +$as_echo "$ac_cv_host" >&6; } +case $ac_cv_host in +*-*-*) ;; +*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;; +esac +host=$ac_cv_host +ac_save_IFS=$IFS; IFS='-' +set x $ac_cv_host +shift +host_cpu=$1 +host_vendor=$2 +shift; shift +# Remember, the first character of IFS is used to create $*, +# except with old shells: +host_os=$* +IFS=$ac_save_IFS +case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac + + +# Backslashify metacharacters that are still active within +# double-quoted strings. +sed_quote_subst='s/\(["`$\\]\)/\\\1/g' + +# Same as above, but do not quote variable references. +double_quote_subst='s/\(["`\\]\)/\\\1/g' + +# Sed substitution to delay expansion of an escaped shell variable in a +# double_quote_subst'ed string. +delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' + +# Sed substitution to delay expansion of an escaped single quote. +delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g' + +# Sed substitution to avoid accidental globbing in evaled expressions +no_glob_subst='s/\*/\\\*/g' + +ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' +ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO +ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5 +$as_echo_n "checking how to print strings... " >&6; } +# Test print first, because it will be a builtin if present. +if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \ + test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then + ECHO='print -r --' +elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then + ECHO='printf %s\n' +else + # Use this function as a fallback that always works. + func_fallback_echo () + { + eval 'cat <<_LTECHO_EOF +$1 +_LTECHO_EOF' + } + ECHO='func_fallback_echo' +fi + +# func_echo_all arg... +# Invoke $ECHO with all args, space-separated. +func_echo_all () +{ + $ECHO "" +} + +case "$ECHO" in + printf*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: printf" >&5 +$as_echo "printf" >&6; } ;; + print*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: print -r" >&5 +$as_echo "print -r" >&6; } ;; + *) { $as_echo "$as_me:${as_lineno-$LINENO}: result: cat" >&5 +$as_echo "cat" >&6; } ;; +esac + + + + + + + + + + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5 +$as_echo_n "checking for a sed that does not truncate output... " >&6; } +if ${ac_cv_path_SED+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/ + for ac_i in 1 2 3 4 5 6 7; do + ac_script="$ac_script$as_nl$ac_script" + done + echo "$ac_script" 2>/dev/null | sed 99q >conftest.sed + { ac_script=; unset ac_script;} + if test -z "$SED"; then + ac_path_SED_found=false + # Loop through the user's path and test for each of PROGNAME-LIST + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in sed gsed; do + for ac_exec_ext in '' $ac_executable_extensions; do + ac_path_SED="$as_dir/$ac_prog$ac_exec_ext" + as_fn_executable_p "$ac_path_SED" || continue +# Check for GNU ac_path_SED and select it if it is found. + # Check for GNU $ac_path_SED +case `"$ac_path_SED" --version 2>&1` in +*GNU*) + ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;; +*) + ac_count=0 + $as_echo_n 0123456789 >"conftest.in" + while : + do + cat "conftest.in" "conftest.in" >"conftest.tmp" + mv "conftest.tmp" "conftest.in" + cp "conftest.in" "conftest.nl" + $as_echo '' >> "conftest.nl" + "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break + diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break + as_fn_arith $ac_count + 1 && ac_count=$as_val + if test $ac_count -gt ${ac_path_SED_max-0}; then + # Best one so far, save it but keep looking for a better one + ac_cv_path_SED="$ac_path_SED" + ac_path_SED_max=$ac_count + fi + # 10*(2^10) chars as input seems more than enough + test $ac_count -gt 10 && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out;; +esac + + $ac_path_SED_found && break 3 + done + done + done +IFS=$as_save_IFS + if test -z "$ac_cv_path_SED"; then + as_fn_error $? "no acceptable sed could be found in \$PATH" "$LINENO" 5 + fi +else + ac_cv_path_SED=$SED +fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5 +$as_echo "$ac_cv_path_SED" >&6; } + SED="$ac_cv_path_SED" + rm -f conftest.sed + +test -z "$SED" && SED=sed +Xsed="$SED -e 1s/^X//" + + + + + + + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 +$as_echo_n "checking for grep that handles long lines and -e... " >&6; } +if ${ac_cv_path_GREP+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -z "$GREP"; then + ac_path_GREP_found=false + # Loop through the user's path and test for each of PROGNAME-LIST + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in grep ggrep; do + for ac_exec_ext in '' $ac_executable_extensions; do + ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" + as_fn_executable_p "$ac_path_GREP" || continue +# Check for GNU ac_path_GREP and select it if it is found. + # Check for GNU $ac_path_GREP +case `"$ac_path_GREP" --version 2>&1` in +*GNU*) + ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;; +*) + ac_count=0 + $as_echo_n 0123456789 >"conftest.in" + while : + do + cat "conftest.in" "conftest.in" >"conftest.tmp" + mv "conftest.tmp" "conftest.in" + cp "conftest.in" "conftest.nl" + $as_echo 'GREP' >> "conftest.nl" + "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break + diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break + as_fn_arith $ac_count + 1 && ac_count=$as_val + if test $ac_count -gt ${ac_path_GREP_max-0}; then + # Best one so far, save it but keep looking for a better one + ac_cv_path_GREP="$ac_path_GREP" + ac_path_GREP_max=$ac_count + fi + # 10*(2^10) chars as input seems more than enough + test $ac_count -gt 10 && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out;; +esac + + $ac_path_GREP_found && break 3 + done + done + done +IFS=$as_save_IFS + if test -z "$ac_cv_path_GREP"; then + as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 + fi +else + ac_cv_path_GREP=$GREP +fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5 +$as_echo "$ac_cv_path_GREP" >&6; } + GREP="$ac_cv_path_GREP" + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 +$as_echo_n "checking for egrep... " >&6; } +if ${ac_cv_path_EGREP+:} false; then : + $as_echo_n "(cached) " >&6 +else + if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 + then ac_cv_path_EGREP="$GREP -E" + else + if test -z "$EGREP"; then + ac_path_EGREP_found=false + # Loop through the user's path and test for each of PROGNAME-LIST + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in egrep; do + for ac_exec_ext in '' $ac_executable_extensions; do + ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" + as_fn_executable_p "$ac_path_EGREP" || continue +# Check for GNU ac_path_EGREP and select it if it is found. + # Check for GNU $ac_path_EGREP +case `"$ac_path_EGREP" --version 2>&1` in +*GNU*) + ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; +*) + ac_count=0 + $as_echo_n 0123456789 >"conftest.in" + while : + do + cat "conftest.in" "conftest.in" >"conftest.tmp" + mv "conftest.tmp" "conftest.in" + cp "conftest.in" "conftest.nl" + $as_echo 'EGREP' >> "conftest.nl" + "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break + diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break + as_fn_arith $ac_count + 1 && ac_count=$as_val + if test $ac_count -gt ${ac_path_EGREP_max-0}; then + # Best one so far, save it but keep looking for a better one + ac_cv_path_EGREP="$ac_path_EGREP" + ac_path_EGREP_max=$ac_count + fi + # 10*(2^10) chars as input seems more than enough + test $ac_count -gt 10 && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out;; +esac + + $ac_path_EGREP_found && break 3 + done + done + done +IFS=$as_save_IFS + if test -z "$ac_cv_path_EGREP"; then + as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 + fi +else + ac_cv_path_EGREP=$EGREP +fi + + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5 +$as_echo "$ac_cv_path_EGREP" >&6; } + EGREP="$ac_cv_path_EGREP" + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for fgrep" >&5 +$as_echo_n "checking for fgrep... " >&6; } +if ${ac_cv_path_FGREP+:} false; then : + $as_echo_n "(cached) " >&6 +else + if echo 'ab*c' | $GREP -F 'ab*c' >/dev/null 2>&1 + then ac_cv_path_FGREP="$GREP -F" + else + if test -z "$FGREP"; then + ac_path_FGREP_found=false + # Loop through the user's path and test for each of PROGNAME-LIST + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in fgrep; do + for ac_exec_ext in '' $ac_executable_extensions; do + ac_path_FGREP="$as_dir/$ac_prog$ac_exec_ext" + as_fn_executable_p "$ac_path_FGREP" || continue +# Check for GNU ac_path_FGREP and select it if it is found. + # Check for GNU $ac_path_FGREP +case `"$ac_path_FGREP" --version 2>&1` in +*GNU*) + ac_cv_path_FGREP="$ac_path_FGREP" ac_path_FGREP_found=:;; +*) + ac_count=0 + $as_echo_n 0123456789 >"conftest.in" + while : + do + cat "conftest.in" "conftest.in" >"conftest.tmp" + mv "conftest.tmp" "conftest.in" + cp "conftest.in" "conftest.nl" + $as_echo 'FGREP' >> "conftest.nl" + "$ac_path_FGREP" FGREP < "conftest.nl" >"conftest.out" 2>/dev/null || break + diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break + as_fn_arith $ac_count + 1 && ac_count=$as_val + if test $ac_count -gt ${ac_path_FGREP_max-0}; then + # Best one so far, save it but keep looking for a better one + ac_cv_path_FGREP="$ac_path_FGREP" + ac_path_FGREP_max=$ac_count + fi + # 10*(2^10) chars as input seems more than enough + test $ac_count -gt 10 && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out;; +esac + + $ac_path_FGREP_found && break 3 + done + done + done +IFS=$as_save_IFS + if test -z "$ac_cv_path_FGREP"; then + as_fn_error $? "no acceptable fgrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 + fi +else + ac_cv_path_FGREP=$FGREP +fi + + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_FGREP" >&5 +$as_echo "$ac_cv_path_FGREP" >&6; } + FGREP="$ac_cv_path_FGREP" + + +test -z "$GREP" && GREP=grep + + + + + + + + + + + + + + + + + + + +# Check whether --with-gnu-ld was given. +if test "${with_gnu_ld+set}" = set; then : + withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes +else + with_gnu_ld=no +fi + +ac_prog=ld +if test "$GCC" = yes; then + # Check if gcc -print-prog-name=ld gives a path. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5 +$as_echo_n "checking for ld used by $CC... " >&6; } + case $host in + *-*-mingw*) + # gcc leaves a trailing carriage return which upsets mingw + ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; + *) + ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; + esac + case $ac_prog in + # Accept absolute paths. + [\\/]* | ?:[\\/]*) + re_direlt='/[^/][^/]*/\.\./' + # Canonicalize the pathname of ld + ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'` + while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do + ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"` + done + test -z "$LD" && LD="$ac_prog" + ;; + "") + # If it fails, then pretend we aren't using GCC. + ac_prog=ld + ;; + *) + # If it is relative, then search for the first ld in PATH. + with_gnu_ld=unknown + ;; + esac +elif test "$with_gnu_ld" = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5 +$as_echo_n "checking for GNU ld... " >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5 +$as_echo_n "checking for non-GNU ld... " >&6; } +fi +if ${lt_cv_path_LD+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -z "$LD"; then + lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + for ac_dir in $PATH; do + IFS="$lt_save_ifs" + test -z "$ac_dir" && ac_dir=. + if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then + lt_cv_path_LD="$ac_dir/$ac_prog" + # Check to see if the program is GNU ld. I'd rather use --version, + # but apparently some variants of GNU ld only accept -v. + # Break only if it was the GNU/non-GNU ld that we prefer. + case `"$lt_cv_path_LD" -v 2>&1 &5 +$as_echo "$LD" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi +test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5 +$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; } +if ${lt_cv_prog_gnu_ld+:} false; then : + $as_echo_n "(cached) " >&6 +else + # I'd rather use --version here, but apparently some GNU lds only accept -v. +case `$LD -v 2>&1 &5 +$as_echo "$lt_cv_prog_gnu_ld" >&6; } +with_gnu_ld=$lt_cv_prog_gnu_ld + + + + + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for BSD- or MS-compatible name lister (nm)" >&5 +$as_echo_n "checking for BSD- or MS-compatible name lister (nm)... " >&6; } +if ${lt_cv_path_NM+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$NM"; then + # Let the user override the test. + lt_cv_path_NM="$NM" +else + lt_nm_to_check="${ac_tool_prefix}nm" + if test -n "$ac_tool_prefix" && test "$build" = "$host"; then + lt_nm_to_check="$lt_nm_to_check nm" + fi + for lt_tmp_nm in $lt_nm_to_check; do + lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do + IFS="$lt_save_ifs" + test -z "$ac_dir" && ac_dir=. + tmp_nm="$ac_dir/$lt_tmp_nm" + if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then + # Check to see if the nm accepts a BSD-compat flag. + # Adding the `sed 1q' prevents false positives on HP-UX, which says: + # nm: unknown option "B" ignored + # Tru64's nm complains that /dev/null is an invalid object file + case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in + */dev/null* | *'Invalid file or object type'*) + lt_cv_path_NM="$tmp_nm -B" + break + ;; + *) + case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in + */dev/null*) + lt_cv_path_NM="$tmp_nm -p" + break + ;; + *) + lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but + continue # so that we can try to find one that supports BSD flags + ;; + esac + ;; + esac + fi + done + IFS="$lt_save_ifs" + done + : ${lt_cv_path_NM=no} +fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5 +$as_echo "$lt_cv_path_NM" >&6; } +if test "$lt_cv_path_NM" != "no"; then + NM="$lt_cv_path_NM" +else + # Didn't find any BSD compatible name lister, look for dumpbin. + if test -n "$DUMPBIN"; then : + # Let the user override the test. + else + if test -n "$ac_tool_prefix"; then + for ac_prog in dumpbin "link -dump" + do + # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. +set dummy $ac_tool_prefix$ac_prog; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_DUMPBIN+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$DUMPBIN"; then + ac_cv_prog_DUMPBIN="$DUMPBIN" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_DUMPBIN="$ac_tool_prefix$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +DUMPBIN=$ac_cv_prog_DUMPBIN +if test -n "$DUMPBIN"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DUMPBIN" >&5 +$as_echo "$DUMPBIN" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$DUMPBIN" && break + done +fi +if test -z "$DUMPBIN"; then + ac_ct_DUMPBIN=$DUMPBIN + for ac_prog in dumpbin "link -dump" +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_DUMPBIN+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_DUMPBIN"; then + ac_cv_prog_ac_ct_DUMPBIN="$ac_ct_DUMPBIN" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_DUMPBIN="$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_DUMPBIN=$ac_cv_prog_ac_ct_DUMPBIN +if test -n "$ac_ct_DUMPBIN"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DUMPBIN" >&5 +$as_echo "$ac_ct_DUMPBIN" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$ac_ct_DUMPBIN" && break +done + + if test "x$ac_ct_DUMPBIN" = x; then + DUMPBIN=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + DUMPBIN=$ac_ct_DUMPBIN + fi +fi + + case `$DUMPBIN -symbols /dev/null 2>&1 | sed '1q'` in + *COFF*) + DUMPBIN="$DUMPBIN -symbols" + ;; + *) + DUMPBIN=: + ;; + esac + fi + + if test "$DUMPBIN" != ":"; then + NM="$DUMPBIN" + fi +fi +test -z "$NM" && NM=nm + + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the name lister ($NM) interface" >&5 +$as_echo_n "checking the name lister ($NM) interface... " >&6; } +if ${lt_cv_nm_interface+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_nm_interface="BSD nm" + echo "int some_variable = 0;" > conftest.$ac_ext + (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&5) + (eval "$ac_compile" 2>conftest.err) + cat conftest.err >&5 + (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&5) + (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) + cat conftest.err >&5 + (eval echo "\"\$as_me:$LINENO: output\"" >&5) + cat conftest.out >&5 + if $GREP 'External.*some_variable' conftest.out > /dev/null; then + lt_cv_nm_interface="MS dumpbin" + fi + rm -f conftest* +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_nm_interface" >&5 +$as_echo "$lt_cv_nm_interface" >&6; } + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5 +$as_echo_n "checking whether ln -s works... " >&6; } +LN_S=$as_ln_s +if test "$LN_S" = "ln -s"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5 +$as_echo "no, using $LN_S" >&6; } +fi + +# find the maximum length of command line arguments +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the maximum length of command line arguments" >&5 +$as_echo_n "checking the maximum length of command line arguments... " >&6; } +if ${lt_cv_sys_max_cmd_len+:} false; then : + $as_echo_n "(cached) " >&6 +else + i=0 + teststring="ABCD" + + case $build_os in + msdosdjgpp*) + # On DJGPP, this test can blow up pretty badly due to problems in libc + # (any single argument exceeding 2000 bytes causes a buffer overrun + # during glob expansion). Even if it were fixed, the result of this + # check would be larger than it should be. + lt_cv_sys_max_cmd_len=12288; # 12K is about right + ;; + + gnu*) + # Under GNU Hurd, this test is not required because there is + # no limit to the length of command line arguments. + # Libtool will interpret -1 as no limit whatsoever + lt_cv_sys_max_cmd_len=-1; + ;; + + cygwin* | mingw* | cegcc*) + # On Win9x/ME, this test blows up -- it succeeds, but takes + # about 5 minutes as the teststring grows exponentially. + # Worse, since 9x/ME are not pre-emptively multitasking, + # you end up with a "frozen" computer, even though with patience + # the test eventually succeeds (with a max line length of 256k). + # Instead, let's just punt: use the minimum linelength reported by + # all of the supported platforms: 8192 (on NT/2K/XP). + lt_cv_sys_max_cmd_len=8192; + ;; + + mint*) + # On MiNT this can take a long time and run out of memory. + 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 + ;; + + os2*) + # The test takes a long time on OS/2. + lt_cv_sys_max_cmd_len=8192 + ;; + + osf*) + # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure + # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not + # nice to cause kernel panics so lets avoid the loop below. + # First set a reasonable default. + lt_cv_sys_max_cmd_len=16384 + # + if test -x /sbin/sysconfig; then + case `/sbin/sysconfig -q proc exec_disable_arg_limit` in + *1*) lt_cv_sys_max_cmd_len=-1 ;; + esac + fi + ;; + sco3.2v5*) + lt_cv_sys_max_cmd_len=102400 + ;; + sysv5* | sco5v6* | sysv4.2uw2*) + kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null` + if test -n "$kargmax"; then + lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[ ]//'` + else + lt_cv_sys_max_cmd_len=32768 + fi + ;; + *) + lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null` + if test -n "$lt_cv_sys_max_cmd_len"; then + lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` + lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` + else + # Make teststring a little bigger before we do anything with it. + # a 1K string should be a reasonable start. + for i in 1 2 3 4 5 6 7 8 ; do + teststring=$teststring$teststring + done + SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}} + # If test is not a shell built-in, we'll probably end up computing a + # maximum length that is only half of the actual maximum length, but + # we can't tell. + while { test "X"`env echo "$teststring$teststring" 2>/dev/null` \ + = "X$teststring$teststring"; } >/dev/null 2>&1 && + test $i != 17 # 1/2 MB should be enough + do + i=`expr $i + 1` + teststring=$teststring$teststring + done + # Only check the string length outside the loop. + lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1` + teststring= + # Add a significant safety factor because C++ compilers can tack on + # massive amounts of additional arguments before passing them to the + # linker. It appears as though 1/2 is a usable value. + lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2` + fi + ;; + esac + +fi + +if test -n $lt_cv_sys_max_cmd_len ; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&5 +$as_echo "$lt_cv_sys_max_cmd_len" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: none" >&5 +$as_echo "none" >&6; } +fi +max_cmd_len=$lt_cv_sys_max_cmd_len + + + + + + +: ${CP="cp -f"} +: ${MV="mv -f"} +: ${RM="rm -f"} + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the shell understands some XSI constructs" >&5 +$as_echo_n "checking whether the shell understands some XSI constructs... " >&6; } +# Try some XSI features +xsi_shell=no +( _lt_dummy="a/b/c" + test "${_lt_dummy##*/},${_lt_dummy%/*},${_lt_dummy#??}"${_lt_dummy%"$_lt_dummy"}, \ + = c,a/b,b/c, \ + && eval 'test $(( 1 + 1 )) -eq 2 \ + && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \ + && xsi_shell=yes +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $xsi_shell" >&5 +$as_echo "$xsi_shell" >&6; } + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the shell understands \"+=\"" >&5 +$as_echo_n "checking whether the shell understands \"+=\"... " >&6; } +lt_shell_append=no +( foo=bar; set foo baz; eval "$1+=\$2" && test "$foo" = barbaz ) \ + >/dev/null 2>&1 \ + && lt_shell_append=yes +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_shell_append" >&5 +$as_echo "$lt_shell_append" >&6; } + + +if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then + lt_unset=unset +else + lt_unset=false +fi + + + + + +# test EBCDIC or ASCII +case `echo X|tr X '\101'` in + A) # ASCII based system + # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr + lt_SP2NL='tr \040 \012' + lt_NL2SP='tr \015\012 \040\040' + ;; + *) # EBCDIC based system + lt_SP2NL='tr \100 \n' + lt_NL2SP='tr \r\n \100\100' + ;; +esac + + + + + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to $host format" >&5 +$as_echo_n "checking how to convert $build file names to $host format... " >&6; } +if ${lt_cv_to_host_file_cmd+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $host in + *-*-mingw* ) + case $build in + *-*-mingw* ) # actually msys + lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32 + ;; + *-*-cygwin* ) + lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32 + ;; + * ) # otherwise, assume *nix + lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32 + ;; + esac + ;; + *-*-cygwin* ) + case $build in + *-*-mingw* ) # actually msys + lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin + ;; + *-*-cygwin* ) + lt_cv_to_host_file_cmd=func_convert_file_noop + ;; + * ) # otherwise, assume *nix + lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin + ;; + esac + ;; + * ) # unhandled hosts (and "normal" native builds) + lt_cv_to_host_file_cmd=func_convert_file_noop + ;; +esac + +fi + +to_host_file_cmd=$lt_cv_to_host_file_cmd +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_host_file_cmd" >&5 +$as_echo "$lt_cv_to_host_file_cmd" >&6; } + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to toolchain format" >&5 +$as_echo_n "checking how to convert $build file names to toolchain format... " >&6; } +if ${lt_cv_to_tool_file_cmd+:} false; then : + $as_echo_n "(cached) " >&6 +else + #assume ordinary cross tools, or native build. +lt_cv_to_tool_file_cmd=func_convert_file_noop +case $host in + *-*-mingw* ) + case $build in + *-*-mingw* ) # actually msys + lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32 + ;; + esac + ;; +esac + +fi + +to_tool_file_cmd=$lt_cv_to_tool_file_cmd +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_tool_file_cmd" >&5 +$as_echo "$lt_cv_to_tool_file_cmd" >&6; } + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5 +$as_echo_n "checking for $LD option to reload object files... " >&6; } +if ${lt_cv_ld_reload_flag+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_ld_reload_flag='-r' +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_reload_flag" >&5 +$as_echo "$lt_cv_ld_reload_flag" >&6; } +reload_flag=$lt_cv_ld_reload_flag +case $reload_flag in +"" | " "*) ;; +*) reload_flag=" $reload_flag" ;; +esac +reload_cmds='$LD$reload_flag -o $output$reload_objs' +case $host_os in + cygwin* | mingw* | pw32* | cegcc*) + if test "$GCC" != yes; then + reload_cmds=false + fi + ;; + darwin*) + if test "$GCC" = yes; then + reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs' + else + reload_cmds='$LD$reload_flag -o $output$reload_objs' + fi + ;; +esac + + + + + + + + + +if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args. +set dummy ${ac_tool_prefix}objdump; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_OBJDUMP+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$OBJDUMP"; then + ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +OBJDUMP=$ac_cv_prog_OBJDUMP +if test -n "$OBJDUMP"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5 +$as_echo "$OBJDUMP" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_OBJDUMP"; then + ac_ct_OBJDUMP=$OBJDUMP + # Extract the first word of "objdump", so it can be a program name with args. +set dummy objdump; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_OBJDUMP+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_OBJDUMP"; then + ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_OBJDUMP="objdump" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP +if test -n "$ac_ct_OBJDUMP"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5 +$as_echo "$ac_ct_OBJDUMP" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_OBJDUMP" = x; then + OBJDUMP="false" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + OBJDUMP=$ac_ct_OBJDUMP + fi +else + OBJDUMP="$ac_cv_prog_OBJDUMP" +fi + +test -z "$OBJDUMP" && OBJDUMP=objdump + + + + + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to recognize dependent libraries" >&5 +$as_echo_n "checking how to recognize dependent libraries... " >&6; } +if ${lt_cv_deplibs_check_method+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_file_magic_cmd='$MAGIC_CMD' +lt_cv_file_magic_test_file= +lt_cv_deplibs_check_method='unknown' +# Need to set the preceding variable on all platforms that support +# interlibrary dependencies. +# 'none' -- dependencies not supported. +# `unknown' -- same as none, but documents that we really don't know. +# 'pass_all' -- all dependencies passed with no checks. +# 'test_compile' -- check by making test program. +# 'file_magic [[regex]]' -- check by looking for files in library path +# which responds to the $file_magic_cmd with a given extended regex. +# If you have `file' or equivalent on your system and you're not sure +# whether `pass_all' will *always* work, you probably want this one. + +case $host_os in +aix[4-9]*) + lt_cv_deplibs_check_method=pass_all + ;; + +beos*) + lt_cv_deplibs_check_method=pass_all + ;; + +bsdi[45]*) + lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)' + lt_cv_file_magic_cmd='/usr/bin/file -L' + lt_cv_file_magic_test_file=/shlib/libc.so + ;; + +cygwin*) + # func_win32_libid is a shell function defined in ltmain.sh + lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' + lt_cv_file_magic_cmd='func_win32_libid' + ;; + +mingw* | pw32*) + # Base MSYS/MinGW do not provide the 'file' command needed by + # func_win32_libid shell function, so use a weaker test based on 'objdump', + # unless we find 'file', for example because we are cross-compiling. + # func_win32_libid assumes BSD nm, so disallow it if using MS dumpbin. + if ( test "$lt_cv_nm_interface" = "BSD nm" && file / ) >/dev/null 2>&1; then + lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' + lt_cv_file_magic_cmd='func_win32_libid' + else + # Keep this pattern in sync with the one in func_win32_libid. + lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' + lt_cv_file_magic_cmd='$OBJDUMP -f' + fi + ;; + +cegcc*) + # use the weaker test based on 'objdump'. See mingw*. + lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?' + lt_cv_file_magic_cmd='$OBJDUMP -f' + ;; + +darwin* | rhapsody*) + lt_cv_deplibs_check_method=pass_all + ;; + +freebsd* | dragonfly*) + if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then + case $host_cpu in + i*86 ) + # Not sure whether the presence of OpenBSD here was a mistake. + # Let's accept both of them until this is cleared up. + lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[3-9]86 (compact )?demand paged shared library' + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` + ;; + esac + else + lt_cv_deplibs_check_method=pass_all + fi + ;; + +gnu*) + lt_cv_deplibs_check_method=pass_all + ;; + +haiku*) + 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])(-bit)?( [LM]SB)? 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 glibc/ELF. +linux* | k*bsd*-gnu | kopensolaris*-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=pass_all + ;; + +openbsd*) + if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then + lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|\.so|_pic\.a)$' + else + lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$' + fi + ;; + +osf3* | osf4* | osf5*) + lt_cv_deplibs_check_method=pass_all + ;; + +rdos*) + lt_cv_deplibs_check_method=pass_all + ;; + +solaris*) + lt_cv_deplibs_check_method=pass_all + ;; + +sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) + lt_cv_deplibs_check_method=pass_all + ;; + +sysv4 | sysv4.3*) + case $host_vendor in + motorola) + lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]' + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` + ;; + ncr) + lt_cv_deplibs_check_method=pass_all + ;; + sequent) + lt_cv_file_magic_cmd='/bin/file' + lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' + ;; + sni) + lt_cv_file_magic_cmd='/bin/file' + lt_cv_deplibs_check_method="file_magic ELF [0-9][0-9]*-bit [LM]SB dynamic lib" + lt_cv_file_magic_test_file=/lib/libc.so + ;; + siemens) + lt_cv_deplibs_check_method=pass_all + ;; + pc) + lt_cv_deplibs_check_method=pass_all + ;; + esac + ;; + +tpf*) + lt_cv_deplibs_check_method=pass_all + ;; +esac + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5 +$as_echo "$lt_cv_deplibs_check_method" >&6; } + +file_magic_glob= +want_nocaseglob=no +if test "$build" = "$host"; then + case $host_os in + mingw* | pw32*) + if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then + want_nocaseglob=yes + else + file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[\1]\/[\1]\/g;/g"` + fi + ;; + esac +fi + +file_magic_cmd=$lt_cv_file_magic_cmd +deplibs_check_method=$lt_cv_deplibs_check_method +test -z "$deplibs_check_method" && deplibs_check_method=unknown + + + + + + + + + + + + + + + + + + + + + + +if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args. +set dummy ${ac_tool_prefix}dlltool; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_DLLTOOL+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$DLLTOOL"; then + ac_cv_prog_DLLTOOL="$DLLTOOL" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +DLLTOOL=$ac_cv_prog_DLLTOOL +if test -n "$DLLTOOL"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5 +$as_echo "$DLLTOOL" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_DLLTOOL"; then + ac_ct_DLLTOOL=$DLLTOOL + # Extract the first word of "dlltool", so it can be a program name with args. +set dummy dlltool; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_DLLTOOL+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_DLLTOOL"; then + ac_cv_prog_ac_ct_DLLTOOL="$ac_ct_DLLTOOL" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_DLLTOOL="dlltool" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_DLLTOOL=$ac_cv_prog_ac_ct_DLLTOOL +if test -n "$ac_ct_DLLTOOL"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5 +$as_echo "$ac_ct_DLLTOOL" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_DLLTOOL" = x; then + DLLTOOL="false" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + DLLTOOL=$ac_ct_DLLTOOL + fi +else + DLLTOOL="$ac_cv_prog_DLLTOOL" +fi + +test -z "$DLLTOOL" && DLLTOOL=dlltool + + + + + + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to associate runtime and link libraries" >&5 +$as_echo_n "checking how to associate runtime and link libraries... " >&6; } +if ${lt_cv_sharedlib_from_linklib_cmd+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_sharedlib_from_linklib_cmd='unknown' + +case $host_os in +cygwin* | mingw* | pw32* | cegcc*) + # two different shell functions defined in ltmain.sh + # decide which to use based on capabilities of $DLLTOOL + case `$DLLTOOL --help 2>&1` in + *--identify-strict*) + lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib + ;; + *) + lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback + ;; + esac + ;; +*) + # fallback: assume linklib IS sharedlib + lt_cv_sharedlib_from_linklib_cmd="$ECHO" + ;; +esac + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sharedlib_from_linklib_cmd" >&5 +$as_echo "$lt_cv_sharedlib_from_linklib_cmd" >&6; } +sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd +test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO + + + + + + + +if test -n "$ac_tool_prefix"; then + for ac_prog in ar + do + # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. +set dummy $ac_tool_prefix$ac_prog; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_AR+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$AR"; then + ac_cv_prog_AR="$AR" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_AR="$ac_tool_prefix$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +AR=$ac_cv_prog_AR +if test -n "$AR"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5 +$as_echo "$AR" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$AR" && break + done +fi +if test -z "$AR"; then + ac_ct_AR=$AR + for ac_prog in ar +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_AR+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_AR"; then + ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_AR="$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_AR=$ac_cv_prog_ac_ct_AR +if test -n "$ac_ct_AR"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5 +$as_echo "$ac_ct_AR" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$ac_ct_AR" && break +done + + if test "x$ac_ct_AR" = x; then + AR="false" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + AR=$ac_ct_AR + fi +fi + +: ${AR=ar} +: ${AR_FLAGS=cru} + + + + + + + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5 +$as_echo_n "checking for archiver @FILE support... " >&6; } +if ${lt_cv_ar_at_file+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_ar_at_file=no + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + echo conftest.$ac_objext > conftest.lst + lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&5' + { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5 + (eval $lt_ar_try) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + if test "$ac_status" -eq 0; then + # Ensure the archiver fails upon bogus file names. + rm -f conftest.$ac_objext libconftest.a + { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5 + (eval $lt_ar_try) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + if test "$ac_status" -ne 0; then + lt_cv_ar_at_file=@ + fi + fi + rm -f conftest.* libconftest.a + +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5 +$as_echo "$lt_cv_ar_at_file" >&6; } + +if test "x$lt_cv_ar_at_file" = xno; then + archiver_list_spec= +else + archiver_list_spec=$lt_cv_ar_at_file +fi + + + + + + + +if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. +set dummy ${ac_tool_prefix}strip; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_STRIP+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$STRIP"; then + ac_cv_prog_STRIP="$STRIP" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_STRIP="${ac_tool_prefix}strip" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +STRIP=$ac_cv_prog_STRIP +if test -n "$STRIP"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5 +$as_echo "$STRIP" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_STRIP"; then + ac_ct_STRIP=$STRIP + # Extract the first word of "strip", so it can be a program name with args. +set dummy strip; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_STRIP+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_STRIP"; then + ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_STRIP="strip" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP +if test -n "$ac_ct_STRIP"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5 +$as_echo "$ac_ct_STRIP" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_STRIP" = x; then + STRIP=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + STRIP=$ac_ct_STRIP + fi +else + STRIP="$ac_cv_prog_STRIP" +fi + +test -z "$STRIP" && STRIP=: + + + + + + +if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. +set dummy ${ac_tool_prefix}ranlib; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_RANLIB+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$RANLIB"; then + ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +RANLIB=$ac_cv_prog_RANLIB +if test -n "$RANLIB"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5 +$as_echo "$RANLIB" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_RANLIB"; then + ac_ct_RANLIB=$RANLIB + # Extract the first word of "ranlib", so it can be a program name with args. +set dummy ranlib; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_RANLIB+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_RANLIB"; then + ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_RANLIB="ranlib" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB +if test -n "$ac_ct_RANLIB"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5 +$as_echo "$ac_ct_RANLIB" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_RANLIB" = x; then + RANLIB=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + RANLIB=$ac_ct_RANLIB + fi +else + RANLIB="$ac_cv_prog_RANLIB" +fi + +test -z "$RANLIB" && RANLIB=: + + + + + + +# Determine commands to create old-style static archives. +old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs' +old_postinstall_cmds='chmod 644 $oldlib' +old_postuninstall_cmds= + +if test -n "$RANLIB"; then + case $host_os in + openbsd*) + old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib" + ;; + *) + old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib" + ;; + esac + old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib" +fi + +case $host_os in + darwin*) + lock_old_archive_extraction=yes ;; + *) + lock_old_archive_extraction=no ;; +esac + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +# If no C compiler was specified, use CC. +LTCC=${LTCC-"$CC"} + +# If no C compiler flags were specified, use CFLAGS. +LTCFLAGS=${LTCFLAGS-"$CFLAGS"} + +# Allow CC to be a program name with arguments. +compiler=$CC + + +# Check for command to grab the raw symbol name followed by C symbol from nm. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking command to parse $NM output from $compiler object" >&5 +$as_echo_n "checking command to parse $NM output from $compiler object... " >&6; } +if ${lt_cv_sys_global_symbol_pipe+:} false; then : + $as_echo_n "(cached) " >&6 +else + +# These are sane defaults that work on at least a few old systems. +# [They come from Ultrix. What could be older than Ultrix?!! ;)] + +# Character class describing NM global symbol codes. +symcode='[BCDEGRST]' + +# Regexp to match symbols that can be accessed directly from C. +sympat='\([_A-Za-z][_A-Za-z0-9]*\)' + +# Define system-specific variables. +case $host_os in +aix*) + symcode='[BCDT]' + ;; +cygwin* | mingw* | pw32* | cegcc*) + symcode='[ABCDGISTW]' + ;; +hpux*) + if test "$host_cpu" = ia64; then + symcode='[ABCDEGRST]' + fi + ;; +irix* | nonstopux*) + symcode='[BCDEGRST]' + ;; +osf*) + symcode='[BCDEGQRST]' + ;; +solaris*) + symcode='[BDRT]' + ;; +sco3.2v5*) + symcode='[DT]' + ;; +sysv4.2uw2*) + symcode='[DT]' + ;; +sysv5* | sco5v6* | unixware* | OpenUNIX*) + symcode='[ABDT]' + ;; +sysv4) + symcode='[DFNSTU]' + ;; +esac + +# If we're using GNU nm, then use its standard symbol codes. +case `$NM -V 2>&1` in +*GNU* | *'with BFD'*) + symcode='[ABCDGIRSTW]' ;; +esac + +# Transform an extracted symbol line into a proper C declaration. +# Some systems (esp. on ia64) link data and code symbols differently, +# so use this general approach. +lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" + +# Transform an extracted symbol line into symbol name and symbol address +lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\)[ ]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"\2\", (void *) \&\2},/p'" +lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([^ ]*\)[ ]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \(lib[^ ]*\)$/ {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"lib\2\", (void *) \&\2},/p'" + +# Handle CRLF in mingw tool chain +opt_cr= +case $build_os in +mingw*) + opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp + ;; +esac + +# Try without a prefix underscore, then with it. +for ac_symprfx in "" "_"; do + + # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol. + symxfrm="\\1 $ac_symprfx\\2 \\2" + + # Write the raw and C identifiers. + if test "$lt_cv_nm_interface" = "MS dumpbin"; then + # Fake it for dumpbin and say T for any non-static function + # and D for any global variable. + # Also find C++ and __fastcall symbols from MSVC++, + # which start with @ or ?. + lt_cv_sys_global_symbol_pipe="$AWK '"\ +" {last_section=section; section=\$ 3};"\ +" /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\ +" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\ +" \$ 0!~/External *\|/{next};"\ +" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\ +" {if(hide[section]) next};"\ +" {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\ +" {split(\$ 0, a, /\||\r/); split(a[2], s)};"\ +" s[1]~/^[@?]/{print s[1], s[1]; next};"\ +" s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\ +" ' prfx=^$ac_symprfx" + else + lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" + fi + lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'" + + # Check to see that the pipe works correctly. + pipe_works=no + + rm -f conftest* + cat > conftest.$ac_ext <<_LT_EOF +#ifdef __cplusplus +extern "C" { +#endif +char nm_test_var; +void nm_test_func(void); +void nm_test_func(void){} +#ifdef __cplusplus +} +#endif +int main(){nm_test_var='a';nm_test_func();return(0);} +_LT_EOF + + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + # Now try to grab the symbols. + nlist=conftest.nm + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist\""; } >&5 + (eval $NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && test -s "$nlist"; then + # Try sorting and uniquifying the output. + if sort "$nlist" | uniq > "$nlist"T; then + mv -f "$nlist"T "$nlist" + else + rm -f "$nlist"T + fi + + # Make sure that we snagged all the symbols we need. + if $GREP ' nm_test_var$' "$nlist" >/dev/null; then + if $GREP ' nm_test_func$' "$nlist" >/dev/null; then + cat <<_LT_EOF > conftest.$ac_ext +/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */ +#if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE) +/* DATA imports from DLLs on WIN32 con't be const, because runtime + relocations are performed -- see ld's documentation on pseudo-relocs. */ +# define LT_DLSYM_CONST +#elif defined(__osf__) +/* This system does not cope well with relocations in const data. */ +# define LT_DLSYM_CONST +#else +# define LT_DLSYM_CONST const +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +_LT_EOF + # Now generate the symbol file. + eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext' + + cat <<_LT_EOF >> conftest.$ac_ext + +/* The mapping between symbol names and symbols. */ +LT_DLSYM_CONST struct { + const char *name; + void *address; +} +lt__PROGRAM__LTX_preloaded_symbols[] = +{ + { "@PROGRAM@", (void *) 0 }, +_LT_EOF + $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext + cat <<\_LT_EOF >> conftest.$ac_ext + {0, (void *) 0} +}; + +/* This works around a problem in FreeBSD linker */ +#ifdef FREEBSD_WORKAROUND +static const void *lt_preloaded_setup() { + return lt__PROGRAM__LTX_preloaded_symbols; +} +#endif + +#ifdef __cplusplus +} +#endif +_LT_EOF + # Now try linking the two files. + mv conftest.$ac_objext conftstm.$ac_objext + lt_globsym_save_LIBS=$LIBS + lt_globsym_save_CFLAGS=$CFLAGS + LIBS="conftstm.$ac_objext" + CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag" + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 + (eval $ac_link) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && test -s conftest${ac_exeext}; then + pipe_works=yes + fi + LIBS=$lt_globsym_save_LIBS + CFLAGS=$lt_globsym_save_CFLAGS + else + echo "cannot find nm_test_func in $nlist" >&5 + fi + else + echo "cannot find nm_test_var in $nlist" >&5 + fi + else + echo "cannot run $lt_cv_sys_global_symbol_pipe" >&5 + fi + else + echo "$progname: failed program was:" >&5 + cat conftest.$ac_ext >&5 + fi + rm -rf conftest* conftst* + + # Do not use the global_symbol_pipe unless it works. + if test "$pipe_works" = yes; then + break + else + lt_cv_sys_global_symbol_pipe= + fi +done + +fi + +if test -z "$lt_cv_sys_global_symbol_pipe"; then + lt_cv_sys_global_symbol_to_cdecl= +fi +if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: failed" >&5 +$as_echo "failed" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5 +$as_echo "ok" >&6; } +fi + +# Response file support. +if test "$lt_cv_nm_interface" = "MS dumpbin"; then + nm_file_list_spec='@' +elif $NM --help 2>/dev/null | grep '[@]FILE' >/dev/null; then + nm_file_list_spec='@' +fi + + + + + + + + + + + + + + + + + + + + + + + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5 +$as_echo_n "checking for sysroot... " >&6; } + +# Check whether --with-sysroot was given. +if test "${with_sysroot+set}" = set; then : + withval=$with_sysroot; +else + with_sysroot=no +fi + + +lt_sysroot= +case ${with_sysroot} in #( + yes) + if test "$GCC" = yes; then + lt_sysroot=`$CC --print-sysroot 2>/dev/null` + fi + ;; #( + /*) + lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"` + ;; #( + no|'') + ;; #( + *) + { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_sysroot}" >&5 +$as_echo "${with_sysroot}" >&6; } + as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5 + ;; +esac + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5 +$as_echo "${lt_sysroot:-no}" >&6; } + + + + + +# Check whether --enable-libtool-lock was given. +if test "${enable_libtool_lock+set}" = set; then : + enableval=$enable_libtool_lock; +fi + +test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes + +# Some flags need to be propagated to the compiler or linker for good +# libtool support. +case $host in +ia64-*-hpux*) + # Find out which ABI we are using. + echo 'int i;' > conftest.$ac_ext + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + case `/usr/bin/file conftest.$ac_objext` in + *ELF-32*) + HPUX_IA64_MODE="32" + ;; + *ELF-64*) + HPUX_IA64_MODE="64" + ;; + esac + fi + rm -rf conftest* + ;; +*-*-irix6*) + # Find out which ABI we are using. + echo '#line '$LINENO' "configure"' > conftest.$ac_ext + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + if test "$lt_cv_prog_gnu_ld" = yes; then + case `/usr/bin/file conftest.$ac_objext` in + *32-bit*) + LD="${LD-ld} -melf32bsmip" + ;; + *N32*) + LD="${LD-ld} -melf32bmipn32" + ;; + *64-bit*) + LD="${LD-ld} -melf64bmip" + ;; + esac + else + case `/usr/bin/file conftest.$ac_objext` in + *32-bit*) + LD="${LD-ld} -32" + ;; + *N32*) + LD="${LD-ld} -n32" + ;; + *64-bit*) + LD="${LD-ld} -64" + ;; + esac + fi + fi + rm -rf conftest* + ;; + +x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \ +s390*-*linux*|s390*-*tpf*|sparc*-*linux*) + # Find out which ABI we are using. + echo 'int i;' > conftest.$ac_ext + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + case `/usr/bin/file conftest.o` in + *32-bit*) + case $host in + x86_64-*kfreebsd*-gnu) + LD="${LD-ld} -m elf_i386_fbsd" + ;; + x86_64-*linux*) + LD="${LD-ld} -m elf_i386" + ;; + ppc64-*linux*|powerpc64-*linux*) + LD="${LD-ld} -m elf32ppclinux" + ;; + s390x-*linux*) + LD="${LD-ld} -m elf_s390" + ;; + sparc64-*linux*) + LD="${LD-ld} -m elf32_sparc" + ;; + esac + ;; + *64-bit*) + case $host in + x86_64-*kfreebsd*-gnu) + LD="${LD-ld} -m elf_x86_64_fbsd" + ;; + x86_64-*linux*) + LD="${LD-ld} -m elf_x86_64" + ;; + ppc*-*linux*|powerpc*-*linux*) + LD="${LD-ld} -m elf64ppc" + ;; + s390*-*linux*|s390*-*tpf*) + LD="${LD-ld} -m elf64_s390" + ;; + sparc*-*linux*) + LD="${LD-ld} -m elf64_sparc" + ;; + esac + ;; + esac + fi + rm -rf conftest* + ;; + +*-*-sco3.2v5*) + # On SCO OpenServer 5, we need -belf to get full-featured binaries. + SAVE_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -belf" + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5 +$as_echo_n "checking whether the C compiler needs -belf... " >&6; } +if ${lt_cv_cc_needs_belf+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + lt_cv_cc_needs_belf=yes +else + lt_cv_cc_needs_belf=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&5 +$as_echo "$lt_cv_cc_needs_belf" >&6; } + if test x"$lt_cv_cc_needs_belf" != x"yes"; then + # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf + CFLAGS="$SAVE_CFLAGS" + fi + ;; +*-*solaris*) + # Find out which ABI we are using. + echo 'int i;' > conftest.$ac_ext + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + case `/usr/bin/file conftest.o` in + *64-bit*) + case $lt_cv_prog_gnu_ld in + yes*) + case $host in + i?86-*-solaris*) + LD="${LD-ld} -m elf_x86_64" + ;; + sparc*-*-solaris*) + LD="${LD-ld} -m elf64_sparc" + ;; + esac + # GNU ld 2.21 introduced _sol2 emulations. Use them if available. + if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then + LD="${LD-ld}_sol2" + fi + ;; + *) + if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then + LD="${LD-ld} -64" + fi + ;; + esac + ;; + esac + fi + rm -rf conftest* + ;; +esac + +need_locks="$enable_libtool_lock" + +if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}mt", so it can be a program name with args. +set dummy ${ac_tool_prefix}mt; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_MANIFEST_TOOL+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$MANIFEST_TOOL"; then + ac_cv_prog_MANIFEST_TOOL="$MANIFEST_TOOL" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_MANIFEST_TOOL="${ac_tool_prefix}mt" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +MANIFEST_TOOL=$ac_cv_prog_MANIFEST_TOOL +if test -n "$MANIFEST_TOOL"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MANIFEST_TOOL" >&5 +$as_echo "$MANIFEST_TOOL" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_MANIFEST_TOOL"; then + ac_ct_MANIFEST_TOOL=$MANIFEST_TOOL + # Extract the first word of "mt", so it can be a program name with args. +set dummy mt; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_MANIFEST_TOOL+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_MANIFEST_TOOL"; then + ac_cv_prog_ac_ct_MANIFEST_TOOL="$ac_ct_MANIFEST_TOOL" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_MANIFEST_TOOL="mt" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_MANIFEST_TOOL=$ac_cv_prog_ac_ct_MANIFEST_TOOL +if test -n "$ac_ct_MANIFEST_TOOL"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_MANIFEST_TOOL" >&5 +$as_echo "$ac_ct_MANIFEST_TOOL" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_MANIFEST_TOOL" = x; then + MANIFEST_TOOL=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + MANIFEST_TOOL=$ac_ct_MANIFEST_TOOL + fi +else + MANIFEST_TOOL="$ac_cv_prog_MANIFEST_TOOL" +fi + +test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $MANIFEST_TOOL is a manifest tool" >&5 +$as_echo_n "checking if $MANIFEST_TOOL is a manifest tool... " >&6; } +if ${lt_cv_path_mainfest_tool+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_path_mainfest_tool=no + echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&5 + $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out + cat conftest.err >&5 + if $GREP 'Manifest Tool' conftest.out > /dev/null; then + lt_cv_path_mainfest_tool=yes + fi + rm -f conftest* +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_mainfest_tool" >&5 +$as_echo "$lt_cv_path_mainfest_tool" >&6; } +if test "x$lt_cv_path_mainfest_tool" != xyes; then + MANIFEST_TOOL=: +fi + + + + + + + case $host_os in + rhapsody* | darwin*) + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}dsymutil", so it can be a program name with args. +set dummy ${ac_tool_prefix}dsymutil; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_DSYMUTIL+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$DSYMUTIL"; then + ac_cv_prog_DSYMUTIL="$DSYMUTIL" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +DSYMUTIL=$ac_cv_prog_DSYMUTIL +if test -n "$DSYMUTIL"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DSYMUTIL" >&5 +$as_echo "$DSYMUTIL" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_DSYMUTIL"; then + ac_ct_DSYMUTIL=$DSYMUTIL + # Extract the first word of "dsymutil", so it can be a program name with args. +set dummy dsymutil; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_DSYMUTIL+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_DSYMUTIL"; then + ac_cv_prog_ac_ct_DSYMUTIL="$ac_ct_DSYMUTIL" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_DSYMUTIL="dsymutil" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL +if test -n "$ac_ct_DSYMUTIL"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DSYMUTIL" >&5 +$as_echo "$ac_ct_DSYMUTIL" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_DSYMUTIL" = x; then + DSYMUTIL=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + DSYMUTIL=$ac_ct_DSYMUTIL + fi +else + DSYMUTIL="$ac_cv_prog_DSYMUTIL" +fi + + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}nmedit", so it can be a program name with args. +set dummy ${ac_tool_prefix}nmedit; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_NMEDIT+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$NMEDIT"; then + ac_cv_prog_NMEDIT="$NMEDIT" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +NMEDIT=$ac_cv_prog_NMEDIT +if test -n "$NMEDIT"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NMEDIT" >&5 +$as_echo "$NMEDIT" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_NMEDIT"; then + ac_ct_NMEDIT=$NMEDIT + # Extract the first word of "nmedit", so it can be a program name with args. +set dummy nmedit; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_NMEDIT+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_NMEDIT"; then + ac_cv_prog_ac_ct_NMEDIT="$ac_ct_NMEDIT" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_NMEDIT="nmedit" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT +if test -n "$ac_ct_NMEDIT"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_NMEDIT" >&5 +$as_echo "$ac_ct_NMEDIT" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_NMEDIT" = x; then + NMEDIT=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + NMEDIT=$ac_ct_NMEDIT + fi +else + NMEDIT="$ac_cv_prog_NMEDIT" +fi + + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}lipo", so it can be a program name with args. +set dummy ${ac_tool_prefix}lipo; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_LIPO+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$LIPO"; then + ac_cv_prog_LIPO="$LIPO" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_LIPO="${ac_tool_prefix}lipo" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +LIPO=$ac_cv_prog_LIPO +if test -n "$LIPO"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIPO" >&5 +$as_echo "$LIPO" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_LIPO"; then + ac_ct_LIPO=$LIPO + # Extract the first word of "lipo", so it can be a program name with args. +set dummy lipo; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_LIPO+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_LIPO"; then + ac_cv_prog_ac_ct_LIPO="$ac_ct_LIPO" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_LIPO="lipo" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_LIPO=$ac_cv_prog_ac_ct_LIPO +if test -n "$ac_ct_LIPO"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LIPO" >&5 +$as_echo "$ac_ct_LIPO" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_LIPO" = x; then + LIPO=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + LIPO=$ac_ct_LIPO + fi +else + LIPO="$ac_cv_prog_LIPO" +fi + + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}otool", so it can be a program name with args. +set dummy ${ac_tool_prefix}otool; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_OTOOL+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$OTOOL"; then + ac_cv_prog_OTOOL="$OTOOL" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_OTOOL="${ac_tool_prefix}otool" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +OTOOL=$ac_cv_prog_OTOOL +if test -n "$OTOOL"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL" >&5 +$as_echo "$OTOOL" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_OTOOL"; then + ac_ct_OTOOL=$OTOOL + # Extract the first word of "otool", so it can be a program name with args. +set dummy otool; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_OTOOL+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_OTOOL"; then + ac_cv_prog_ac_ct_OTOOL="$ac_ct_OTOOL" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_OTOOL="otool" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_OTOOL=$ac_cv_prog_ac_ct_OTOOL +if test -n "$ac_ct_OTOOL"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL" >&5 +$as_echo "$ac_ct_OTOOL" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_OTOOL" = x; then + OTOOL=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + OTOOL=$ac_ct_OTOOL + fi +else + OTOOL="$ac_cv_prog_OTOOL" +fi + + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}otool64", so it can be a program name with args. +set dummy ${ac_tool_prefix}otool64; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_OTOOL64+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$OTOOL64"; then + ac_cv_prog_OTOOL64="$OTOOL64" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +OTOOL64=$ac_cv_prog_OTOOL64 +if test -n "$OTOOL64"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL64" >&5 +$as_echo "$OTOOL64" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_OTOOL64"; then + ac_ct_OTOOL64=$OTOOL64 + # Extract the first word of "otool64", so it can be a program name with args. +set dummy otool64; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_OTOOL64+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_OTOOL64"; then + ac_cv_prog_ac_ct_OTOOL64="$ac_ct_OTOOL64" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_OTOOL64="otool64" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_OTOOL64=$ac_cv_prog_ac_ct_OTOOL64 +if test -n "$ac_ct_OTOOL64"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL64" >&5 +$as_echo "$ac_ct_OTOOL64" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_OTOOL64" = x; then + OTOOL64=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + OTOOL64=$ac_ct_OTOOL64 + fi +else + OTOOL64="$ac_cv_prog_OTOOL64" +fi + + + + + + + + + + + + + + + + + + + + + + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -single_module linker flag" >&5 +$as_echo_n "checking for -single_module linker flag... " >&6; } +if ${lt_cv_apple_cc_single_mod+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_apple_cc_single_mod=no + if test -z "${LT_MULTI_MODULE}"; then + # By default we will add the -single_module flag. You can override + # by either setting the environment variable LT_MULTI_MODULE + # non-empty at configure time, or by adding -multi_module to the + # link flags. + rm -rf libconftest.dylib* + echo "int foo(void){return 1;}" > conftest.c + echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ +-dynamiclib -Wl,-single_module conftest.c" >&5 + $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ + -dynamiclib -Wl,-single_module conftest.c 2>conftest.err + _lt_result=$? + # If there is a non-empty error log, and "single_module" + # appears in it, assume the flag caused a linker warning + if test -s conftest.err && $GREP single_module conftest.err; then + cat conftest.err >&5 + # Otherwise, if the output was created with a 0 exit code from + # the compiler, it worked. + elif test -f libconftest.dylib && test $_lt_result -eq 0; then + lt_cv_apple_cc_single_mod=yes + else + cat conftest.err >&5 + fi + rm -rf libconftest.dylib* + rm -f conftest.* + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_apple_cc_single_mod" >&5 +$as_echo "$lt_cv_apple_cc_single_mod" >&6; } + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -exported_symbols_list linker flag" >&5 +$as_echo_n "checking for -exported_symbols_list linker flag... " >&6; } +if ${lt_cv_ld_exported_symbols_list+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_ld_exported_symbols_list=no + save_LDFLAGS=$LDFLAGS + echo "_main" > conftest.sym + LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + lt_cv_ld_exported_symbols_list=yes +else + lt_cv_ld_exported_symbols_list=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LDFLAGS="$save_LDFLAGS" + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&5 +$as_echo "$lt_cv_ld_exported_symbols_list" >&6; } + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -force_load linker flag" >&5 +$as_echo_n "checking for -force_load linker flag... " >&6; } +if ${lt_cv_ld_force_load+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_ld_force_load=no + cat > conftest.c << _LT_EOF +int forced_loaded() { return 2;} +_LT_EOF + echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&5 + $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5 + echo "$AR cru libconftest.a conftest.o" >&5 + $AR cru libconftest.a conftest.o 2>&5 + echo "$RANLIB libconftest.a" >&5 + $RANLIB libconftest.a 2>&5 + cat > conftest.c << _LT_EOF +int main() { return 0;} +_LT_EOF + echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&5 + $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err + _lt_result=$? + if test -s conftest.err && $GREP force_load conftest.err; then + cat conftest.err >&5 + elif test -f conftest && test $_lt_result -eq 0 && $GREP forced_load conftest >/dev/null 2>&1 ; then + lt_cv_ld_force_load=yes + else + cat conftest.err >&5 + fi + rm -f conftest.err libconftest.a conftest conftest.c + rm -rf conftest.dSYM + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_force_load" >&5 +$as_echo "$lt_cv_ld_force_load" >&6; } + case $host_os in + rhapsody* | darwin1.[012]) + _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;; + darwin1.*) + _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; + darwin*) # darwin 5.x on + # if running on 10.5 or later, the deployment target defaults + # to the OS version, if on x86, and 10.4, the deployment + # target defaults to 10.4. Don't you love it? + case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in + 10.0,*86*-darwin8*|10.0,*-darwin[91]*) + _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; + 10.[012]*) + _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; + 10.*) + _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; + esac + ;; + esac + if test "$lt_cv_apple_cc_single_mod" = "yes"; then + _lt_dar_single_mod='$single_module' + fi + if test "$lt_cv_ld_exported_symbols_list" = "yes"; then + _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym' + else + _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}' + fi + if test "$DSYMUTIL" != ":" && test "$lt_cv_ld_force_load" = "no"; then + _lt_dsymutil='~$DSYMUTIL $lib || :' + else + _lt_dsymutil= + fi + ;; + esac + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5 +$as_echo_n "checking how to run the C preprocessor... " >&6; } +# On Suns, sometimes $CPP names a directory. +if test -n "$CPP" && test -d "$CPP"; then + CPP= +fi +if test -z "$CPP"; then + if ${ac_cv_prog_CPP+:} false; then : + $as_echo_n "(cached) " >&6 +else + # Double quotes because CPP needs to be expanded + for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" + do + ac_preproc_ok=false +for ac_c_preproc_warn_flag in '' yes +do + # Use a header file that comes with gcc, so configuring glibc + # with a fresh cross-compiler works. + # Prefer to if __STDC__ is defined, since + # exists even on freestanding compilers. + # On the NeXT, cc -E runs the code through the compiler's parser, + # not just through cpp. "Syntax error" is here to catch this case. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#ifdef __STDC__ +# include +#else +# include +#endif + Syntax error +_ACEOF +if ac_fn_c_try_cpp "$LINENO"; then : + +else + # Broken: fails on valid input. +continue +fi +rm -f conftest.err conftest.i conftest.$ac_ext + + # OK, works on sane cases. Now check whether nonexistent headers + # can be detected and how. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +_ACEOF +if ac_fn_c_try_cpp "$LINENO"; then : + # Broken: success on invalid input. +continue +else + # Passes both tests. +ac_preproc_ok=: +break +fi +rm -f conftest.err conftest.i conftest.$ac_ext + +done +# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. +rm -f conftest.i conftest.err conftest.$ac_ext +if $ac_preproc_ok; then : + break +fi + + done + ac_cv_prog_CPP=$CPP + +fi + CPP=$ac_cv_prog_CPP +else + ac_cv_prog_CPP=$CPP +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5 +$as_echo "$CPP" >&6; } +ac_preproc_ok=false +for ac_c_preproc_warn_flag in '' yes +do + # Use a header file that comes with gcc, so configuring glibc + # with a fresh cross-compiler works. + # Prefer to if __STDC__ is defined, since + # exists even on freestanding compilers. + # On the NeXT, cc -E runs the code through the compiler's parser, + # not just through cpp. "Syntax error" is here to catch this case. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#ifdef __STDC__ +# include +#else +# include +#endif + Syntax error +_ACEOF +if ac_fn_c_try_cpp "$LINENO"; then : + +else + # Broken: fails on valid input. +continue +fi +rm -f conftest.err conftest.i conftest.$ac_ext + + # OK, works on sane cases. Now check whether nonexistent headers + # can be detected and how. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +_ACEOF +if ac_fn_c_try_cpp "$LINENO"; then : + # Broken: success on invalid input. +continue +else + # Passes both tests. +ac_preproc_ok=: +break +fi +rm -f conftest.err conftest.i conftest.$ac_ext + +done +# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. +rm -f conftest.i conftest.err conftest.$ac_ext +if $ac_preproc_ok; then : + +else + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "C preprocessor \"$CPP\" fails sanity check +See \`config.log' for more details" "$LINENO" 5; } +fi + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 +$as_echo_n "checking for ANSI C header files... " >&6; } +if ${ac_cv_header_stdc+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +#include +#include + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_header_stdc=yes +else + ac_cv_header_stdc=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + +if test $ac_cv_header_stdc = yes; then + # SunOS 4.x string.h does not declare mem*, contrary to ANSI. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "memchr" >/dev/null 2>&1; then : + +else + ac_cv_header_stdc=no +fi +rm -f conftest* + +fi + +if test $ac_cv_header_stdc = yes; then + # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "free" >/dev/null 2>&1; then : + +else + ac_cv_header_stdc=no +fi +rm -f conftest* + +fi + +if test $ac_cv_header_stdc = yes; then + # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. + if test "$cross_compiling" = yes; then : + : +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +#if ((' ' & 0x0FF) == 0x020) +# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') +# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) +#else +# define ISLOWER(c) \ + (('a' <= (c) && (c) <= 'i') \ + || ('j' <= (c) && (c) <= 'r') \ + || ('s' <= (c) && (c) <= 'z')) +# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) +#endif + +#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) +int +main () +{ + int i; + for (i = 0; i < 256; i++) + if (XOR (islower (i), ISLOWER (i)) + || toupper (i) != TOUPPER (i)) + return 2; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + +else + ac_cv_header_stdc=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + +fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 +$as_echo "$ac_cv_header_stdc" >&6; } +if test $ac_cv_header_stdc = yes; then + +$as_echo "#define STDC_HEADERS 1" >>confdefs.h + +fi + +# On IRIX 5.3, sys/types and inttypes.h are conflicting. +for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ + inttypes.h stdint.h unistd.h +do : + as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` +ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default +" +if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : + cat >>confdefs.h <<_ACEOF +#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 +_ACEOF + +fi + +done + + +for ac_header in dlfcn.h +do : + ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default +" +if test "x$ac_cv_header_dlfcn_h" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_DLFCN_H 1 +_ACEOF + +fi + +done + + + + + +# Set options + + + + enable_dlopen=no + + + enable_win32_dll=no + + + # Check whether --enable-shared was given. +if test "${enable_shared+set}" = set; then : + enableval=$enable_shared; p=${PACKAGE-default} + case $enableval in + yes) enable_shared=yes ;; + no) enable_shared=no ;; + *) + enable_shared=no + # Look at the argument we got. We use all the common list separators. + lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + for pkg in $enableval; do + IFS="$lt_save_ifs" + if test "X$pkg" = "X$p"; then + enable_shared=yes + fi + done + IFS="$lt_save_ifs" + ;; + esac +else + enable_shared=yes +fi + + + + + + + + + + # Check whether --enable-static was given. +if test "${enable_static+set}" = set; then : + enableval=$enable_static; p=${PACKAGE-default} + case $enableval in + yes) enable_static=yes ;; + no) enable_static=no ;; + *) + enable_static=no + # Look at the argument we got. We use all the common list separators. + lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + for pkg in $enableval; do + IFS="$lt_save_ifs" + if test "X$pkg" = "X$p"; then + enable_static=yes + fi + done + IFS="$lt_save_ifs" + ;; + esac +else + enable_static=yes +fi + + + + + + + + + + +# Check whether --with-pic was given. +if test "${with_pic+set}" = set; then : + withval=$with_pic; lt_p=${PACKAGE-default} + case $withval in + yes|no) pic_mode=$withval ;; + *) + pic_mode=default + # Look at the argument we got. We use all the common list separators. + lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + for lt_pkg in $withval; do + IFS="$lt_save_ifs" + if test "X$lt_pkg" = "X$lt_p"; then + pic_mode=yes + fi + done + IFS="$lt_save_ifs" + ;; + esac +else + pic_mode=default +fi + + +test -z "$pic_mode" && pic_mode=default + + + + + + + + # Check whether --enable-fast-install was given. +if test "${enable_fast_install+set}" = set; then : + enableval=$enable_fast_install; p=${PACKAGE-default} + case $enableval in + yes) enable_fast_install=yes ;; + no) enable_fast_install=no ;; + *) + enable_fast_install=no + # Look at the argument we got. We use all the common list separators. + lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + for pkg in $enableval; do + IFS="$lt_save_ifs" + if test "X$pkg" = "X$p"; then + enable_fast_install=yes + fi + done + IFS="$lt_save_ifs" + ;; + esac +else + enable_fast_install=yes +fi + + + + + + + + + + + +# This can be used to rebuild libtool when needed +LIBTOOL_DEPS="$ltmain" + +# Always use our own libtool. +LIBTOOL='$(SHELL) $(top_builddir)/libtool' + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +test -z "$LN_S" && LN_S="ln -s" + + + + + + + + + + + + + + +if test -n "${ZSH_VERSION+set}" ; then + setopt NO_GLOB_SUBST +fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5 +$as_echo_n "checking for objdir... " >&6; } +if ${lt_cv_objdir+:} false; then : + $as_echo_n "(cached) " >&6 +else + rm -f .libs 2>/dev/null +mkdir .libs 2>/dev/null +if test -d .libs; then + lt_cv_objdir=.libs +else + # MS-DOS does not allow filenames that begin with a dot. + lt_cv_objdir=_libs +fi +rmdir .libs 2>/dev/null +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_objdir" >&5 +$as_echo "$lt_cv_objdir" >&6; } +objdir=$lt_cv_objdir + + + + + +cat >>confdefs.h <<_ACEOF +#define LT_OBJDIR "$lt_cv_objdir/" +_ACEOF + + + + +case $host_os in +aix3*) + # AIX sometimes has problems with the GCC collect2 program. For some + # reason, if we set the COLLECT_NAMES environment variable, the problems + # vanish in a puff of smoke. + if test "X${COLLECT_NAMES+set}" != Xset; then + COLLECT_NAMES= + export COLLECT_NAMES + fi + ;; +esac + +# Global variables: +ofile=libtool +can_build_shared=yes + +# All known linkers require a `.a' archive for static linking (except MSVC, +# which needs '.lib'). +libext=a + +with_gnu_ld="$lt_cv_prog_gnu_ld" + +old_CC="$CC" +old_CFLAGS="$CFLAGS" + +# Set sane defaults for various variables +test -z "$CC" && CC=cc +test -z "$LTCC" && LTCC=$CC +test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS +test -z "$LD" && LD=ld +test -z "$ac_objext" && ac_objext=o + +for cc_temp in $compiler""; do + case $cc_temp in + compile | *[\\/]compile | ccache | *[\\/]ccache ) ;; + distcc | *[\\/]distcc | purify | *[\\/]purify ) ;; + \-*) ;; + *) break;; + esac +done +cc_basename=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` + + +# Only perform the check for file, if the check method requires it +test -z "$MAGIC_CMD" && MAGIC_CMD=file +case $deplibs_check_method in +file_magic*) + if test "$file_magic_cmd" = '$MAGIC_CMD'; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${ac_tool_prefix}file" >&5 +$as_echo_n "checking for ${ac_tool_prefix}file... " >&6; } +if ${lt_cv_path_MAGIC_CMD+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $MAGIC_CMD in +[\\/*] | ?:[\\/]*) + lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. + ;; +*) + lt_save_MAGIC_CMD="$MAGIC_CMD" + lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + ac_dummy="/usr/bin$PATH_SEPARATOR$PATH" + for ac_dir in $ac_dummy; do + IFS="$lt_save_ifs" + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/${ac_tool_prefix}file; then + lt_cv_path_MAGIC_CMD="$ac_dir/${ac_tool_prefix}file" + if test -n "$file_magic_test_file"; then + case $deplibs_check_method in + "file_magic "*) + file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` + MAGIC_CMD="$lt_cv_path_MAGIC_CMD" + if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | + $EGREP "$file_magic_regex" > /dev/null; then + : + else + cat <<_LT_EOF 1>&2 + +*** Warning: the command libtool uses to detect shared libraries, +*** $file_magic_cmd, produces output that libtool cannot recognize. +*** The result is that libtool may fail to recognize shared libraries +*** as such. This will affect the creation of libtool libraries that +*** depend on shared libraries, but programs linked with such libtool +*** libraries will work regardless of this problem. Nevertheless, you +*** may want to report the problem to your system manager and/or to +*** bug-libtool@gnu.org + +_LT_EOF + fi ;; + esac + fi + break + fi + done + IFS="$lt_save_ifs" + MAGIC_CMD="$lt_save_MAGIC_CMD" + ;; +esac +fi + +MAGIC_CMD="$lt_cv_path_MAGIC_CMD" +if test -n "$MAGIC_CMD"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5 +$as_echo "$MAGIC_CMD" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + + + +if test -z "$lt_cv_path_MAGIC_CMD"; then + if test -n "$ac_tool_prefix"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for file" >&5 +$as_echo_n "checking for file... " >&6; } +if ${lt_cv_path_MAGIC_CMD+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $MAGIC_CMD in +[\\/*] | ?:[\\/]*) + lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. + ;; +*) + lt_save_MAGIC_CMD="$MAGIC_CMD" + lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + ac_dummy="/usr/bin$PATH_SEPARATOR$PATH" + for ac_dir in $ac_dummy; do + IFS="$lt_save_ifs" + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/file; then + lt_cv_path_MAGIC_CMD="$ac_dir/file" + if test -n "$file_magic_test_file"; then + case $deplibs_check_method in + "file_magic "*) + file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` + MAGIC_CMD="$lt_cv_path_MAGIC_CMD" + if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | + $EGREP "$file_magic_regex" > /dev/null; then + : + else + cat <<_LT_EOF 1>&2 + +*** Warning: the command libtool uses to detect shared libraries, +*** $file_magic_cmd, produces output that libtool cannot recognize. +*** The result is that libtool may fail to recognize shared libraries +*** as such. This will affect the creation of libtool libraries that +*** depend on shared libraries, but programs linked with such libtool +*** libraries will work regardless of this problem. Nevertheless, you +*** may want to report the problem to your system manager and/or to +*** bug-libtool@gnu.org + +_LT_EOF + fi ;; + esac + fi + break + fi + done + IFS="$lt_save_ifs" + MAGIC_CMD="$lt_save_MAGIC_CMD" + ;; +esac +fi + +MAGIC_CMD="$lt_cv_path_MAGIC_CMD" +if test -n "$MAGIC_CMD"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5 +$as_echo "$MAGIC_CMD" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + else + MAGIC_CMD=: + fi +fi + + fi + ;; +esac + +# Use C for the default configuration in the libtool script + +lt_save_CC="$CC" +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + +# Source file extension for C test sources. +ac_ext=c + +# Object file extension for compiled C test sources. +objext=o +objext=$objext + +# Code to be used in simple compile tests +lt_simple_compile_test_code="int some_variable = 0;" + +# Code to be used in simple link tests +lt_simple_link_test_code='int main(){return(0);}' + + + + + + + +# If no C compiler was specified, use CC. +LTCC=${LTCC-"$CC"} + +# If no C compiler flags were specified, use CFLAGS. +LTCFLAGS=${LTCFLAGS-"$CFLAGS"} + +# Allow CC to be a program name with arguments. +compiler=$CC + +# Save the default compiler, since it gets overwritten when the other +# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP. +compiler_DEFAULT=$CC + +# save warnings/boilerplate of simple test code +ac_outfile=conftest.$ac_objext +echo "$lt_simple_compile_test_code" >conftest.$ac_ext +eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err +_lt_compiler_boilerplate=`cat conftest.err` +$RM conftest* + +ac_outfile=conftest.$ac_objext +echo "$lt_simple_link_test_code" >conftest.$ac_ext +eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err +_lt_linker_boilerplate=`cat conftest.err` +$RM -r conftest* + + +if test -n "$compiler"; then + +lt_prog_compiler_no_builtin_flag= + +if test "$GCC" = yes; then + case $cc_basename in + nvcc*) + lt_prog_compiler_no_builtin_flag=' -Xcompiler -fno-builtin' ;; + *) + lt_prog_compiler_no_builtin_flag=' -fno-builtin' ;; + esac + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&5 +$as_echo_n "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; } +if ${lt_cv_prog_compiler_rtti_exceptions+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_prog_compiler_rtti_exceptions=no + ac_outfile=conftest.$ac_objext + echo "$lt_simple_compile_test_code" > conftest.$ac_ext + lt_compiler_flag="-fno-rtti -fno-exceptions" + # Insert the option either (1) after the last *FLAGS variable, or + # (2) before a word containing "conftest.", or (3) at the end. + # Note that $ac_compile itself does not contain backslashes and begins + # with a dollar sign (not a hyphen), so the echo should work correctly. + # The option is referenced via a variable to avoid confusing sed. + lt_compile=`echo "$ac_compile" | $SED \ + -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ + -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` + (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) + (eval "$lt_compile" 2>conftest.err) + ac_status=$? + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + if (exit $ac_status) && test -s "$ac_outfile"; then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings other than the usual output. + $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp + $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 + if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then + lt_cv_prog_compiler_rtti_exceptions=yes + fi + fi + $RM conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5 +$as_echo "$lt_cv_prog_compiler_rtti_exceptions" >&6; } + +if test x"$lt_cv_prog_compiler_rtti_exceptions" = xyes; then + lt_prog_compiler_no_builtin_flag="$lt_prog_compiler_no_builtin_flag -fno-rtti -fno-exceptions" +else + : +fi + +fi + + + + + + + lt_prog_compiler_wl= +lt_prog_compiler_pic= +lt_prog_compiler_static= + + + if test "$GCC" = yes; then + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_static='-static' + + case $host_os in + aix*) + # All AIX code is PIC. + if test "$host_cpu" = ia64; then + # AIX 5 now supports IA64 processor + lt_prog_compiler_static='-Bstatic' + fi + ;; + + amigaos*) + case $host_cpu in + powerpc) + # see comment about AmigaOS4 .so support + lt_prog_compiler_pic='-fPIC' + ;; + m68k) + # FIXME: we need at least 68020 code to build shared libraries, but + # adding the `-m68020' flag to GCC prevents building anything better, + # like `-m68040'. + lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4' + ;; + esac + ;; + + beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) + # PIC is the default for these OSes. + ;; + + mingw* | cygwin* | pw32* | os2* | cegcc*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + # Although the cygwin gcc ignores -fPIC, still need this for old-style + # (--disable-auto-import) libraries + lt_prog_compiler_pic='-DDLL_EXPORT' + ;; + + darwin* | rhapsody*) + # PIC is the default on this platform + # Common symbols not allowed in MH_DYLIB files + lt_prog_compiler_pic='-fno-common' + ;; + + haiku*) + # PIC is the default for Haiku. + # The "-static" flag exists, but is broken. + lt_prog_compiler_static= + ;; + + hpux*) + # PIC is the default for 64-bit PA HP-UX, but not for 32-bit + # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag + # sets the default TLS model and affects inlining. + case $host_cpu in + hppa*64*) + # +Z the default + ;; + *) + lt_prog_compiler_pic='-fPIC' + ;; + esac + ;; + + interix[3-9]*) + # Interix 3.x gcc -fpic/-fPIC options generate broken code. + # Instead, we relocate shared libraries at runtime. + ;; + + msdosdjgpp*) + # Just because we use GCC doesn't mean we suddenly get shared libraries + # on systems that don't support them. + lt_prog_compiler_can_build_shared=no + enable_shared=no + ;; + + *nto* | *qnx*) + # QNX uses GNU C++, but need to define -shared option too, otherwise + # it will coredump. + lt_prog_compiler_pic='-fPIC -shared' + ;; + + sysv4*MP*) + if test -d /usr/nec; then + lt_prog_compiler_pic=-Kconform_pic + fi + ;; + + *) + lt_prog_compiler_pic='-fPIC' + ;; + esac + + case $cc_basename in + nvcc*) # Cuda Compiler Driver 2.2 + lt_prog_compiler_wl='-Xlinker ' + if test -n "$lt_prog_compiler_pic"; then + lt_prog_compiler_pic="-Xcompiler $lt_prog_compiler_pic" + fi + ;; + esac + else + # PORTME Check for flag to pass linker flags through the system compiler. + case $host_os in + aix*) + lt_prog_compiler_wl='-Wl,' + if test "$host_cpu" = ia64; then + # AIX 5 now supports IA64 processor + lt_prog_compiler_static='-Bstatic' + else + lt_prog_compiler_static='-bnso -bI:/lib/syscalls.exp' + fi + ;; + + mingw* | cygwin* | pw32* | os2* | cegcc*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + lt_prog_compiler_pic='-DDLL_EXPORT' + ;; + + hpux9* | hpux10* | hpux11*) + lt_prog_compiler_wl='-Wl,' + # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but + # not for PA HP-UX. + case $host_cpu in + hppa*64*|ia64*) + # +Z the default + ;; + *) + lt_prog_compiler_pic='+Z' + ;; + esac + # Is there a better lt_prog_compiler_static that works with the bundled CC? + lt_prog_compiler_static='${wl}-a ${wl}archive' + ;; + + irix5* | irix6* | nonstopux*) + lt_prog_compiler_wl='-Wl,' + # PIC (with -KPIC) is the default. + lt_prog_compiler_static='-non_shared' + ;; + + linux* | k*bsd*-gnu | kopensolaris*-gnu) + case $cc_basename in + # old Intel for x86_64 which still supported -KPIC. + ecc*) + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_pic='-KPIC' + lt_prog_compiler_static='-static' + ;; + # icc used to be incompatible with GCC. + # ICC 10 doesn't accept -KPIC any more. + icc* | ifort*) + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_pic='-fPIC' + lt_prog_compiler_static='-static' + ;; + # Lahey Fortran 8.1. + lf95*) + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_pic='--shared' + lt_prog_compiler_static='--static' + ;; + nagfor*) + # NAG Fortran compiler + lt_prog_compiler_wl='-Wl,-Wl,,' + lt_prog_compiler_pic='-PIC' + lt_prog_compiler_static='-Bstatic' + ;; + pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*) + # Portland Group compilers (*not* the Pentium gcc compiler, + # which looks to be a dead project) + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_pic='-fpic' + lt_prog_compiler_static='-Bstatic' + ;; + ccc*) + lt_prog_compiler_wl='-Wl,' + # All Alpha code is PIC. + lt_prog_compiler_static='-non_shared' + ;; + xl* | bgxl* | bgf* | mpixl*) + # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_pic='-qpic' + lt_prog_compiler_static='-qstaticlink' + ;; + *) + case `$CC -V 2>&1 | sed 5q` in + *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [1-7].* | *Sun*Fortran*\ 8.[0-3]*) + # Sun Fortran 8.3 passes all unrecognized flags to the linker + lt_prog_compiler_pic='-KPIC' + lt_prog_compiler_static='-Bstatic' + lt_prog_compiler_wl='' + ;; + *Sun\ F* | *Sun*Fortran*) + lt_prog_compiler_pic='-KPIC' + lt_prog_compiler_static='-Bstatic' + lt_prog_compiler_wl='-Qoption ld ' + ;; + *Sun\ C*) + # Sun C 5.9 + lt_prog_compiler_pic='-KPIC' + lt_prog_compiler_static='-Bstatic' + lt_prog_compiler_wl='-Wl,' + ;; + *Intel*\ [CF]*Compiler*) + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_pic='-fPIC' + lt_prog_compiler_static='-static' + ;; + *Portland\ Group*) + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_pic='-fpic' + lt_prog_compiler_static='-Bstatic' + ;; + esac + ;; + esac + ;; + + newsos6) + lt_prog_compiler_pic='-KPIC' + lt_prog_compiler_static='-Bstatic' + ;; + + *nto* | *qnx*) + # QNX uses GNU C++, but need to define -shared option too, otherwise + # it will coredump. + lt_prog_compiler_pic='-fPIC -shared' + ;; + + osf3* | osf4* | osf5*) + lt_prog_compiler_wl='-Wl,' + # All OSF/1 code is PIC. + lt_prog_compiler_static='-non_shared' + ;; + + rdos*) + lt_prog_compiler_static='-non_shared' + ;; + + solaris*) + lt_prog_compiler_pic='-KPIC' + lt_prog_compiler_static='-Bstatic' + case $cc_basename in + f77* | f90* | f95* | sunf77* | sunf90* | sunf95*) + lt_prog_compiler_wl='-Qoption ld ';; + *) + lt_prog_compiler_wl='-Wl,';; + esac + ;; + + sunos4*) + lt_prog_compiler_wl='-Qoption ld ' + lt_prog_compiler_pic='-PIC' + lt_prog_compiler_static='-Bstatic' + ;; + + sysv4 | sysv4.2uw2* | sysv4.3*) + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_pic='-KPIC' + lt_prog_compiler_static='-Bstatic' + ;; + + sysv4*MP*) + if test -d /usr/nec ;then + lt_prog_compiler_pic='-Kconform_pic' + lt_prog_compiler_static='-Bstatic' + fi + ;; + + sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_pic='-KPIC' + lt_prog_compiler_static='-Bstatic' + ;; + + unicos*) + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_can_build_shared=no + ;; + + uts4*) + lt_prog_compiler_pic='-pic' + lt_prog_compiler_static='-Bstatic' + ;; + + *) + lt_prog_compiler_can_build_shared=no + ;; + esac + fi + +case $host_os in + # For platforms which do not support PIC, -DPIC is meaningless: + *djgpp*) + lt_prog_compiler_pic= + ;; + *) + lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC" + ;; +esac + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5 +$as_echo_n "checking for $compiler option to produce PIC... " >&6; } +if ${lt_cv_prog_compiler_pic+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_prog_compiler_pic=$lt_prog_compiler_pic +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic" >&5 +$as_echo "$lt_cv_prog_compiler_pic" >&6; } +lt_prog_compiler_pic=$lt_cv_prog_compiler_pic + +# +# Check to make sure the PIC flag actually works. +# +if test -n "$lt_prog_compiler_pic"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5 +$as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; } +if ${lt_cv_prog_compiler_pic_works+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_prog_compiler_pic_works=no + ac_outfile=conftest.$ac_objext + echo "$lt_simple_compile_test_code" > conftest.$ac_ext + lt_compiler_flag="$lt_prog_compiler_pic -DPIC" + # Insert the option either (1) after the last *FLAGS variable, or + # (2) before a word containing "conftest.", or (3) at the end. + # Note that $ac_compile itself does not contain backslashes and begins + # with a dollar sign (not a hyphen), so the echo should work correctly. + # The option is referenced via a variable to avoid confusing sed. + lt_compile=`echo "$ac_compile" | $SED \ + -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ + -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` + (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) + (eval "$lt_compile" 2>conftest.err) + ac_status=$? + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + if (exit $ac_status) && test -s "$ac_outfile"; then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings other than the usual output. + $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp + $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 + if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then + lt_cv_prog_compiler_pic_works=yes + fi + fi + $RM conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&5 +$as_echo "$lt_cv_prog_compiler_pic_works" >&6; } + +if test x"$lt_cv_prog_compiler_pic_works" = xyes; then + case $lt_prog_compiler_pic in + "" | " "*) ;; + *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;; + esac +else + lt_prog_compiler_pic= + lt_prog_compiler_can_build_shared=no +fi + +fi + + + + + + + + + + + +# +# Check to make sure the static flag actually works. +# +wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\" +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5 +$as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; } +if ${lt_cv_prog_compiler_static_works+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_prog_compiler_static_works=no + save_LDFLAGS="$LDFLAGS" + LDFLAGS="$LDFLAGS $lt_tmp_static_flag" + echo "$lt_simple_link_test_code" > conftest.$ac_ext + if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then + # The linker can only warn and ignore the option if not recognized + # So say no if there are warnings + if test -s conftest.err; then + # Append any errors to the config.log. + cat conftest.err 1>&5 + $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp + $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 + if diff conftest.exp conftest.er2 >/dev/null; then + lt_cv_prog_compiler_static_works=yes + fi + else + lt_cv_prog_compiler_static_works=yes + fi + fi + $RM -r conftest* + LDFLAGS="$save_LDFLAGS" + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&5 +$as_echo "$lt_cv_prog_compiler_static_works" >&6; } + +if test x"$lt_cv_prog_compiler_static_works" = xyes; then + : +else + lt_prog_compiler_static= +fi + + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 +$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; } +if ${lt_cv_prog_compiler_c_o+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_prog_compiler_c_o=no + $RM -r conftest 2>/dev/null + mkdir conftest + cd conftest + mkdir out + echo "$lt_simple_compile_test_code" > conftest.$ac_ext + + lt_compiler_flag="-o out/conftest2.$ac_objext" + # Insert the option either (1) after the last *FLAGS variable, or + # (2) before a word containing "conftest.", or (3) at the end. + # Note that $ac_compile itself does not contain backslashes and begins + # with a dollar sign (not a hyphen), so the echo should work correctly. + lt_compile=`echo "$ac_compile" | $SED \ + -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ + -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` + (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) + (eval "$lt_compile" 2>out/conftest.err) + ac_status=$? + cat out/conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + if (exit $ac_status) && test -s out/conftest2.$ac_objext + then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings + $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp + $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 + if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then + lt_cv_prog_compiler_c_o=yes + fi + fi + chmod u+w . 2>&5 + $RM conftest* + # SGI C++ compiler will create directory out/ii_files/ for + # template instantiation + test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files + $RM out/* && rmdir out + cd .. + $RM -r conftest + $RM conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5 +$as_echo "$lt_cv_prog_compiler_c_o" >&6; } + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 +$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; } +if ${lt_cv_prog_compiler_c_o+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_prog_compiler_c_o=no + $RM -r conftest 2>/dev/null + mkdir conftest + cd conftest + mkdir out + echo "$lt_simple_compile_test_code" > conftest.$ac_ext + + lt_compiler_flag="-o out/conftest2.$ac_objext" + # Insert the option either (1) after the last *FLAGS variable, or + # (2) before a word containing "conftest.", or (3) at the end. + # Note that $ac_compile itself does not contain backslashes and begins + # with a dollar sign (not a hyphen), so the echo should work correctly. + lt_compile=`echo "$ac_compile" | $SED \ + -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ + -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` + (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) + (eval "$lt_compile" 2>out/conftest.err) + ac_status=$? + cat out/conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + if (exit $ac_status) && test -s out/conftest2.$ac_objext + then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings + $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp + $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 + if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then + lt_cv_prog_compiler_c_o=yes + fi + fi + chmod u+w . 2>&5 + $RM conftest* + # SGI C++ compiler will create directory out/ii_files/ for + # template instantiation + test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files + $RM out/* && rmdir out + cd .. + $RM -r conftest + $RM conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5 +$as_echo "$lt_cv_prog_compiler_c_o" >&6; } + + + + +hard_links="nottested" +if test "$lt_cv_prog_compiler_c_o" = no && test "$need_locks" != no; then + # do not overwrite the value of need_locks provided by the user + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5 +$as_echo_n "checking if we can lock with hard links... " >&6; } + hard_links=yes + $RM conftest* + ln conftest.a conftest.b 2>/dev/null && hard_links=no + touch conftest.a + ln conftest.a conftest.b 2>&5 || hard_links=no + ln conftest.a conftest.b 2>/dev/null && hard_links=no + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5 +$as_echo "$hard_links" >&6; } + if test "$hard_links" = no; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5 +$as_echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;} + need_locks=warn + fi +else + need_locks=no +fi + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5 +$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; } + + runpath_var= + allow_undefined_flag= + always_export_symbols=no + archive_cmds= + archive_expsym_cmds= + compiler_needs_object=no + enable_shared_with_static_runtimes=no + export_dynamic_flag_spec= + export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' + hardcode_automatic=no + hardcode_direct=no + hardcode_direct_absolute=no + hardcode_libdir_flag_spec= + hardcode_libdir_separator= + hardcode_minus_L=no + hardcode_shlibpath_var=unsupported + inherit_rpath=no + link_all_deplibs=unknown + module_cmds= + module_expsym_cmds= + old_archive_from_new_cmds= + old_archive_from_expsyms_cmds= + thread_safe_flag_spec= + whole_archive_flag_spec= + # include_expsyms should be a list of space-separated symbols to be *always* + # included in the symbol list + include_expsyms= + # exclude_expsyms can be an extended regexp of symbols to exclude + # it will be wrapped by ` (' and `)$', so one must not match beginning or + # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc', + # as well as any symbol that contains `d'. + exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*' + # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out + # platforms (ab)use it in PIC code, but their linkers get confused if + # the symbol is explicitly referenced. Since portable code cannot + # rely on this symbol name, it's probably fine to never include it in + # preloaded symbol tables. + # Exclude shared library initialization/finalization symbols. + extract_expsyms_cmds= + + case $host_os in + cygwin* | mingw* | pw32* | cegcc*) + # FIXME: the MSVC++ port hasn't been tested in a loooong time + # When not using gcc, we currently assume that we are using + # Microsoft Visual C++. + if test "$GCC" != yes; then + with_gnu_ld=no + fi + ;; + interix*) + # we just hope/assume this is gcc and not c89 (= MSVC++) + with_gnu_ld=yes + ;; + openbsd*) + with_gnu_ld=no + ;; + esac + + ld_shlibs=yes + + # On some targets, GNU ld is compatible enough with the native linker + # that we're better off using the native interface for both. + lt_use_gnu_ld_interface=no + if test "$with_gnu_ld" = yes; then + case $host_os in + aix*) + # The AIX port of GNU ld has always aspired to compatibility + # with the native linker. However, as the warning in the GNU ld + # block says, versions before 2.19.5* couldn't really create working + # shared libraries, regardless of the interface used. + case `$LD -v 2>&1` in + *\ \(GNU\ Binutils\)\ 2.19.5*) ;; + *\ \(GNU\ Binutils\)\ 2.[2-9]*) ;; + *\ \(GNU\ Binutils\)\ [3-9]*) ;; + *) + lt_use_gnu_ld_interface=yes + ;; + esac + ;; + *) + lt_use_gnu_ld_interface=yes + ;; + esac + fi + + if test "$lt_use_gnu_ld_interface" = yes; then + # If archive_cmds runs LD, not CC, wlarc should be empty + wlarc='${wl}' + + # Set some defaults for GNU ld with shared library support. These + # are reset later if shared libraries are not supported. Putting them + # here allows them to be overridden if necessary. + runpath_var=LD_RUN_PATH + hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + export_dynamic_flag_spec='${wl}--export-dynamic' + # ancient GNU ld didn't support --whole-archive et. al. + if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then + whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + else + whole_archive_flag_spec= + fi + supports_anon_versioning=no + case `$LD -v 2>&1` in + *GNU\ gold*) supports_anon_versioning=yes ;; + *\ [01].* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.11 + *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... + *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ... + *\ 2.11.*) ;; # other 2.11 versions + *) supports_anon_versioning=yes ;; + esac + + # See if GNU ld supports shared libraries. + case $host_os in + aix[3-9]*) + # On AIX/PPC, the GNU linker is very broken + if test "$host_cpu" != ia64; then + ld_shlibs=no + cat <<_LT_EOF 1>&2 + +*** Warning: the GNU linker, at least up to release 2.19, 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 install binutils +*** 2.20 or above, or modify your PATH so that a non-GNU linker is found. +*** You will then need to restart the configuration process. + +_LT_EOF + fi + ;; + + amigaos*) + case $host_cpu in + powerpc) + # see comment about AmigaOS4 .so support + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_expsym_cmds='' + ;; + m68k) + archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' + hardcode_libdir_flag_spec='-L$libdir' + hardcode_minus_L=yes + ;; + esac + ;; + + beos*) + if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then + allow_undefined_flag=unsupported + # Joseph Beckenbach says some releases of gcc + # support --undefined. This deserves some investigation. FIXME + archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + else + ld_shlibs=no + fi + ;; + + cygwin* | mingw* | pw32* | cegcc*) + # _LT_TAGVAR(hardcode_libdir_flag_spec, ) is actually meaningless, + # as there is no search path for DLLs. + hardcode_libdir_flag_spec='-L$libdir' + export_dynamic_flag_spec='${wl}--export-all-symbols' + allow_undefined_flag=unsupported + always_export_symbols=no + enable_shared_with_static_runtimes=yes + export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/;s/^.*[ ]__nm__\([^ ]*\)[ ][^ ]*/\1 DATA/;/^I[ ]/d;/^[AITW][ ]/s/.* //'\'' | sort | uniq > $export_symbols' + exclude_expsyms='[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname' + + if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + # If the export-symbols file already is a .def file (1st line + # is EXPORTS), use it as is; otherwise, prepend... + archive_expsym_cmds='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then + cp $export_symbols $output_objdir/$soname.def; + else + echo EXPORTS > $output_objdir/$soname.def; + cat $export_symbols >> $output_objdir/$soname.def; + fi~ + $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + else + ld_shlibs=no + fi + ;; + + haiku*) + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + link_all_deplibs=yes + ;; + + interix[3-9]*) + hardcode_direct=no + hardcode_shlibpath_var=no + hardcode_libdir_flag_spec='${wl}-rpath,$libdir' + export_dynamic_flag_spec='${wl}-E' + # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. + # Instead, shared libraries are loaded at an image base (0x10000000 by + # default) and relocated if they conflict, which is a slow very memory + # consuming and fragmenting process. To avoid this, we pick a random, + # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link + # time. Moving up from 0x10000000 also allows more sbrk(2) space. + archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + archive_expsym_cmds='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + ;; + + gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu) + tmp_diet=no + if test "$host_os" = linux-dietlibc; then + case $cc_basename in + diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn) + esac + fi + if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \ + && test "$tmp_diet" = no + then + tmp_addflag=' $pic_flag' + tmp_sharedflag='-shared' + case $cc_basename,$host_cpu in + pgcc*) # Portland Group C compiler + whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' + tmp_addflag=' $pic_flag' + ;; + pgf77* | pgf90* | pgf95* | pgfortran*) + # Portland Group f77 and f90 compilers + whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' + tmp_addflag=' $pic_flag -Mnomain' ;; + ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64 + tmp_addflag=' -i_dynamic' ;; + efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64 + tmp_addflag=' -i_dynamic -nofor_main' ;; + ifc* | ifort*) # Intel Fortran compiler + tmp_addflag=' -nofor_main' ;; + lf95*) # Lahey Fortran 8.1 + whole_archive_flag_spec= + tmp_sharedflag='--shared' ;; + xl[cC]* | bgxl[cC]* | mpixl[cC]*) # IBM XL C 8.0 on PPC (deal with xlf below) + tmp_sharedflag='-qmkshrobj' + tmp_addflag= ;; + nvcc*) # Cuda Compiler Driver 2.2 + whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' + compiler_needs_object=yes + ;; + esac + case `$CC -V 2>&1 | sed 5q` in + *Sun\ C*) # Sun C 5.9 + whole_archive_flag_spec='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' + compiler_needs_object=yes + tmp_sharedflag='-G' ;; + *Sun\ F*) # Sun Fortran 8.3 + tmp_sharedflag='-G' ;; + esac + archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + + if test "x$supports_anon_versioning" = xyes; then + archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~ + cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ + echo "local: *; };" >> $output_objdir/$libname.ver~ + $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' + fi + + case $cc_basename in + xlf* | bgf* | bgxlf* | mpixlf*) + # IBM XL Fortran 10.1 on PPC cannot create shared libs itself + whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive' + hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib' + if test "x$supports_anon_versioning" = xyes; then + archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~ + cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ + echo "local: *; };" >> $output_objdir/$libname.ver~ + $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' + fi + ;; + esac + else + ld_shlibs=no + fi + ;; + + netbsd*) + if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then + archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' + wlarc= + else + archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + fi + ;; + + solaris*) + if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then + ld_shlibs=no + cat <<_LT_EOF 1>&2 + +*** Warning: The releases 2.8.* of the GNU linker cannot reliably +*** create shared libraries on Solaris systems. Therefore, libtool +*** is disabling shared libraries support. We urge you to upgrade GNU +*** binutils to release 2.9.1 or newer. Another option is to modify +*** your PATH or compiler configuration so that the native linker is +*** used, and then restart. + +_LT_EOF + elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then + archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + else + ld_shlibs=no + fi + ;; + + sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*) + case `$LD -v 2>&1` in + *\ [01].* | *\ 2.[0-9].* | *\ 2.1[0-5].*) + ld_shlibs=no + cat <<_LT_EOF 1>&2 + +*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not +*** reliably create shared libraries on SCO systems. Therefore, libtool +*** is disabling shared libraries support. We urge you to upgrade GNU +*** binutils to release 2.16.91.0.3 or newer. Another option is to modify +*** your PATH or compiler configuration so that the native linker is +*** used, and then restart. + +_LT_EOF + ;; + *) + # For security reasons, it is highly recommended that you always + # use absolute paths for naming shared libraries, and exclude the + # DT_RUNPATH tag from executables and libraries. But doing so + # requires that you compile everything twice, which is a pain. + if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then + hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + else + ld_shlibs=no + fi + ;; + esac + ;; + + sunos4*) + archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' + wlarc= + hardcode_direct=yes + hardcode_shlibpath_var=no + ;; + + *) + if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then + archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + else + ld_shlibs=no + fi + ;; + esac + + if test "$ld_shlibs" = no; then + runpath_var= + hardcode_libdir_flag_spec= + export_dynamic_flag_spec= + whole_archive_flag_spec= + fi + else + # PORTME fill in a description of your system's linker (not GNU ld) + case $host_os in + aix3*) + allow_undefined_flag=unsupported + always_export_symbols=yes + archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' + # Note: this linker hardcodes the directories in LIBPATH if there + # are no directories specified by -L. + hardcode_minus_L=yes + if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then + # Neither direct hardcoding nor static linking is supported with a + # broken collect2. + hardcode_direct=unsupported + fi + ;; + + aix[4-9]*) + if test "$host_cpu" = ia64; then + # On IA64, the linker does run time linking by default, so we don't + # have to do anything special. + aix_use_runtimelinking=no + exp_sym_flag='-Bexport' + no_entry_flag="" + else + # If we're using GNU nm, then we don't want the "-C" option. + # -C means demangle to AIX nm, but means don't demangle with GNU nm + # Also, AIX nm treats weak defined symbols like other global + # defined symbols, whereas GNU nm marks them as "W". + if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then + export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' + else + export_symbols_cmds='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' + fi + aix_use_runtimelinking=no + + # Test if we are trying to use run time linking or normal + # AIX style linking. If -brtl is somewhere in LDFLAGS, we + # need to do runtime linking. + case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*) + for ld_flag in $LDFLAGS; do + if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then + aix_use_runtimelinking=yes + break + fi + done + ;; + esac + + exp_sym_flag='-bexport' + no_entry_flag='-bnoentry' + fi + + # When large executables or shared objects are built, AIX ld can + # have problems creating the table of contents. If linking a library + # or program results in "error TOC overflow" add -mminimal-toc to + # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not + # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. + + archive_cmds='' + hardcode_direct=yes + hardcode_direct_absolute=yes + hardcode_libdir_separator=':' + link_all_deplibs=yes + file_list_spec='${wl}-f,' + + if test "$GCC" = yes; then + case $host_os in aix4.[012]|aix4.[012].*) + # We only want to do this on AIX 4.2 and lower, the check + # below for broken collect2 doesn't work under 4.3+ + collect2name=`${CC} -print-prog-name=collect2` + if test -f "$collect2name" && + strings "$collect2name" | $GREP resolve_lib_name >/dev/null + then + # We have reworked collect2 + : + else + # We have old collect2 + hardcode_direct=unsupported + # It fails to find uninstalled libraries when the uninstalled + # path is not listed in the libpath. Setting hardcode_minus_L + # to unsupported forces relinking + hardcode_minus_L=yes + hardcode_libdir_flag_spec='-L$libdir' + hardcode_libdir_separator= + fi + ;; + esac + shared_flag='-shared' + if test "$aix_use_runtimelinking" = yes; then + shared_flag="$shared_flag "'${wl}-G' + fi + else + # not using gcc + if test "$host_cpu" = ia64; then + # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release + # chokes on -Wl,-G. The following line is correct: + shared_flag='-G' + else + if test "$aix_use_runtimelinking" = yes; then + shared_flag='${wl}-G' + else + shared_flag='${wl}-bM:SRE' + fi + fi + fi + + export_dynamic_flag_spec='${wl}-bexpall' + # It seems that -bexpall does not export symbols beginning with + # underscore (_), so it is better to generate a list of symbols to export. + always_export_symbols=yes + if test "$aix_use_runtimelinking" = yes; then + # Warning - without using the other runtime loading flags (-brtl), + # -berok will link without error, but may produce a broken library. + allow_undefined_flag='-berok' + # Determine the default libpath from the value encoded in an + # empty executable. + if test "${lt_cv_aix_libpath+set}" = set; then + aix_libpath=$lt_cv_aix_libpath +else + if ${lt_cv_aix_libpath_+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + + lt_aix_libpath_sed=' + /Import File Strings/,/^$/ { + /^0/ { + s/^0 *\([^ ]*\) *$/\1/ + p + } + }' + lt_cv_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 "$lt_cv_aix_libpath_"; then + lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` + fi +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + if test -z "$lt_cv_aix_libpath_"; then + lt_cv_aix_libpath_="/usr/lib:/lib" + fi + +fi + + aix_libpath=$lt_cv_aix_libpath_ +fi + + hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath" + archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" + else + if test "$host_cpu" = ia64; then + hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib' + allow_undefined_flag="-z nodefs" + archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols" + else + # Determine the default libpath from the value encoded in an + # empty executable. + if test "${lt_cv_aix_libpath+set}" = set; then + aix_libpath=$lt_cv_aix_libpath +else + if ${lt_cv_aix_libpath_+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + + lt_aix_libpath_sed=' + /Import File Strings/,/^$/ { + /^0/ { + s/^0 *\([^ ]*\) *$/\1/ + p + } + }' + lt_cv_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 "$lt_cv_aix_libpath_"; then + lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` + fi +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + if test -z "$lt_cv_aix_libpath_"; then + lt_cv_aix_libpath_="/usr/lib:/lib" + fi + +fi + + aix_libpath=$lt_cv_aix_libpath_ +fi + + hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath" + # Warning - without using the other run time loading flags, + # -berok will link without error, but may produce a broken library. + no_undefined_flag=' ${wl}-bernotok' + allow_undefined_flag=' ${wl}-berok' + if test "$with_gnu_ld" = yes; then + # We only use this code for GNU lds that support --whole-archive. + whole_archive_flag_spec='${wl}--whole-archive$convenience ${wl}--no-whole-archive' + else + # Exported symbols can be pulled into shared objects from archives + whole_archive_flag_spec='$convenience' + fi + archive_cmds_need_lc=yes + # This is similar to how AIX traditionally builds its shared libraries. + archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' + fi + fi + ;; + + amigaos*) + case $host_cpu in + powerpc) + # see comment about AmigaOS4 .so support + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_expsym_cmds='' + ;; + m68k) + archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' + hardcode_libdir_flag_spec='-L$libdir' + hardcode_minus_L=yes + ;; + esac + ;; + + bsdi[45]*) + export_dynamic_flag_spec=-rdynamic + ;; + + cygwin* | mingw* | pw32* | cegcc*) + # When not using gcc, we currently assume that we are using + # Microsoft Visual C++. + # hardcode_libdir_flag_spec is actually meaningless, as there is + # no search path for DLLs. + case $cc_basename in + cl*) + # Native MSVC + hardcode_libdir_flag_spec=' ' + allow_undefined_flag=unsupported + always_export_symbols=yes + file_list_spec='@' + # Tell ltmain to make .lib files, not .a files. + libext=lib + # Tell ltmain to make .dll files, not .so files. + shrext_cmds=".dll" + # FIXME: Setting linknames here is a bad hack. + archive_cmds='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames=' + archive_expsym_cmds='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then + sed -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp; + else + sed -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp; + fi~ + $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ + linknames=' + # The linker will not automatically build a static lib if we build a DLL. + # _LT_TAGVAR(old_archive_from_new_cmds, )='true' + enable_shared_with_static_runtimes=yes + exclude_expsyms='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*' + export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1,DATA/'\'' | $SED -e '\''/^[AITW][ ]/s/.*[ ]//'\'' | sort | uniq > $export_symbols' + # Don't use ranlib + old_postinstall_cmds='chmod 644 $oldlib' + postlink_cmds='lt_outputfile="@OUTPUT@"~ + lt_tool_outputfile="@TOOL_OUTPUT@"~ + case $lt_outputfile in + *.exe|*.EXE) ;; + *) + lt_outputfile="$lt_outputfile.exe" + lt_tool_outputfile="$lt_tool_outputfile.exe" + ;; + esac~ + if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then + $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; + $RM "$lt_outputfile.manifest"; + fi' + ;; + *) + # Assume MSVC wrapper + hardcode_libdir_flag_spec=' ' + allow_undefined_flag=unsupported + # Tell ltmain to make .lib files, not .a files. + libext=lib + # Tell ltmain to make .dll files, not .so files. + shrext_cmds=".dll" + # FIXME: Setting linknames here is a bad hack. + archive_cmds='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames=' + # The linker will automatically build a .lib file if we build a DLL. + old_archive_from_new_cmds='true' + # FIXME: Should let the user specify the lib program. + old_archive_cmds='lib -OUT:$oldlib$oldobjs$old_deplibs' + enable_shared_with_static_runtimes=yes + ;; + esac + ;; + + darwin* | rhapsody*) + + + archive_cmds_need_lc=no + hardcode_direct=no + hardcode_automatic=yes + hardcode_shlibpath_var=unsupported + if test "$lt_cv_ld_force_load" = "yes"; then + whole_archive_flag_spec='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience ${wl}-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`' + + else + whole_archive_flag_spec='' + fi + link_all_deplibs=yes + allow_undefined_flag="$_lt_dar_allow_undefined" + case $cc_basename in + ifort*) _lt_dar_can_shared=yes ;; + *) _lt_dar_can_shared=$GCC ;; + esac + if test "$_lt_dar_can_shared" = "yes"; then + output_verbose_link_cmd=func_echo_all + archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}" + module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}" + archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}" + module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}" + + else + ld_shlibs=no + fi + + ;; + + dgux*) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_libdir_flag_spec='-L$libdir' + hardcode_shlibpath_var=no + ;; + + # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor + # support. Future versions do this automatically, but an explicit c++rt0.o + # does not break anything, and helps significantly (at the cost of a little + # extra space). + freebsd2.2*) + archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' + hardcode_libdir_flag_spec='-R$libdir' + hardcode_direct=yes + hardcode_shlibpath_var=no + ;; + + # Unfortunately, older versions of FreeBSD 2 do not have this feature. + freebsd2.*) + archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' + hardcode_direct=yes + hardcode_minus_L=yes + hardcode_shlibpath_var=no + ;; + + # FreeBSD 3 and greater uses gcc -shared to do shared libraries. + freebsd* | dragonfly*) + archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + hardcode_libdir_flag_spec='-R$libdir' + hardcode_direct=yes + hardcode_shlibpath_var=no + ;; + + hpux9*) + if test "$GCC" = yes; then + archive_cmds='$RM $output_objdir/$soname~$CC -shared $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + else + archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + fi + hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' + hardcode_libdir_separator=: + hardcode_direct=yes + + # hardcode_minus_L: Not really in the search PATH, + # but as the default location of the library. + hardcode_minus_L=yes + export_dynamic_flag_spec='${wl}-E' + ;; + + hpux10*) + if test "$GCC" = yes && test "$with_gnu_ld" = no; then + archive_cmds='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' + else + archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' + fi + if test "$with_gnu_ld" = no; then + hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' + hardcode_libdir_separator=: + hardcode_direct=yes + hardcode_direct_absolute=yes + export_dynamic_flag_spec='${wl}-E' + # hardcode_minus_L: Not really in the search PATH, + # but as the default location of the library. + hardcode_minus_L=yes + fi + ;; + + hpux11*) + if test "$GCC" = yes && test "$with_gnu_ld" = no; then + case $host_cpu in + hppa*64*) + archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + ia64*) + archive_cmds='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' + ;; + *) + archive_cmds='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' + ;; + esac + else + case $host_cpu in + hppa*64*) + archive_cmds='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + ia64*) + archive_cmds='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' + ;; + *) + + # Older versions of the 11.00 compiler do not understand -b yet + # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC understands -b" >&5 +$as_echo_n "checking if $CC understands -b... " >&6; } +if ${lt_cv_prog_compiler__b+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_prog_compiler__b=no + save_LDFLAGS="$LDFLAGS" + LDFLAGS="$LDFLAGS -b" + echo "$lt_simple_link_test_code" > conftest.$ac_ext + if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then + # The linker can only warn and ignore the option if not recognized + # So say no if there are warnings + if test -s conftest.err; then + # Append any errors to the config.log. + cat conftest.err 1>&5 + $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp + $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 + if diff conftest.exp conftest.er2 >/dev/null; then + lt_cv_prog_compiler__b=yes + fi + else + lt_cv_prog_compiler__b=yes + fi + fi + $RM -r conftest* + LDFLAGS="$save_LDFLAGS" + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler__b" >&5 +$as_echo "$lt_cv_prog_compiler__b" >&6; } + +if test x"$lt_cv_prog_compiler__b" = xyes; then + archive_cmds='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' +else + archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' +fi + + ;; + esac + fi + if test "$with_gnu_ld" = no; then + hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' + hardcode_libdir_separator=: + + case $host_cpu in + hppa*64*|ia64*) + hardcode_direct=no + hardcode_shlibpath_var=no + ;; + *) + hardcode_direct=yes + hardcode_direct_absolute=yes + export_dynamic_flag_spec='${wl}-E' + + # hardcode_minus_L: Not really in the search PATH, + # but as the default location of the library. + hardcode_minus_L=yes + ;; + esac + fi + ;; + + irix5* | irix6* | nonstopux*) + if test "$GCC" = yes; then + archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + # Try to use the -exported_symbol ld option, if it does not + # work, assume that -exports_file does not work either and + # implicitly export all symbols. + # This should be the same for all languages, so no per-tag cache variable. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $host_os linker accepts -exported_symbol" >&5 +$as_echo_n "checking whether the $host_os linker accepts -exported_symbol... " >&6; } +if ${lt_cv_irix_exported_symbol+:} false; then : + $as_echo_n "(cached) " >&6 +else + save_LDFLAGS="$LDFLAGS" + LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +int foo (void) { return 0; } +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + lt_cv_irix_exported_symbol=yes +else + lt_cv_irix_exported_symbol=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LDFLAGS="$save_LDFLAGS" +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_irix_exported_symbol" >&5 +$as_echo "$lt_cv_irix_exported_symbol" >&6; } + if test "$lt_cv_irix_exported_symbol" = yes; then + archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib' + fi + else + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' + archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib' + fi + archive_cmds_need_lc='no' + hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + hardcode_libdir_separator=: + inherit_rpath=yes + link_all_deplibs=yes + ;; + + netbsd*) + if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then + archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out + else + archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF + fi + hardcode_libdir_flag_spec='-R$libdir' + hardcode_direct=yes + hardcode_shlibpath_var=no + ;; + + newsos6) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_direct=yes + hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + hardcode_libdir_separator=: + hardcode_shlibpath_var=no + ;; + + *nto* | *qnx*) + ;; + + openbsd*) + if test -f /usr/libexec/ld.so; then + hardcode_direct=yes + hardcode_shlibpath_var=no + hardcode_direct_absolute=yes + if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then + archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols' + hardcode_libdir_flag_spec='${wl}-rpath,$libdir' + export_dynamic_flag_spec='${wl}-E' + else + case $host_os in + openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*) + archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' + hardcode_libdir_flag_spec='-R$libdir' + ;; + *) + archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + hardcode_libdir_flag_spec='${wl}-rpath,$libdir' + ;; + esac + fi + else + ld_shlibs=no + fi + ;; + + os2*) + hardcode_libdir_flag_spec='-L$libdir' + hardcode_minus_L=yes + allow_undefined_flag=unsupported + archive_cmds='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~echo DATA >> $output_objdir/$libname.def~echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' + old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' + ;; + + osf3*) + if test "$GCC" = yes; then + allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' + archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + else + allow_undefined_flag=' -expect_unresolved \*' + archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' + fi + archive_cmds_need_lc='no' + hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + hardcode_libdir_separator=: + ;; + + osf4* | osf5*) # as osf3* with the addition of -msym flag + if test "$GCC" = yes; then + allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' + archive_cmds='$CC -shared${allow_undefined_flag} $pic_flag $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + else + allow_undefined_flag=' -expect_unresolved \*' + archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' + archive_expsym_cmds='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~ + $CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp' + + # Both c and cxx compiler support -rpath directly + hardcode_libdir_flag_spec='-rpath $libdir' + fi + archive_cmds_need_lc='no' + hardcode_libdir_separator=: + ;; + + solaris*) + no_undefined_flag=' -z defs' + if test "$GCC" = yes; then + wlarc='${wl}' + archive_cmds='$CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ + $CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' + else + case `$CC -V 2>&1` in + *"Compilers 5.0"*) + wlarc='' + archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' + archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ + $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp' + ;; + *) + wlarc='${wl}' + archive_cmds='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ + $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' + ;; + esac + fi + hardcode_libdir_flag_spec='-R$libdir' + hardcode_shlibpath_var=no + case $host_os in + solaris2.[0-5] | solaris2.[0-5].*) ;; + *) + # The compiler driver will combine and reorder linker options, + # but understands `-z linker_flag'. GCC discards it without `$wl', + # but is careful enough not to reorder. + # Supported since Solaris 2.6 (maybe 2.5.1?) + if test "$GCC" = yes; then + whole_archive_flag_spec='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' + else + whole_archive_flag_spec='-z allextract$convenience -z defaultextract' + fi + ;; + esac + link_all_deplibs=yes + ;; + + sunos4*) + if test "x$host_vendor" = xsequent; then + # Use $CC to link under sequent, because it throws in some extra .o + # files that make .init and .fini sections work. + archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags' + else + archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' + fi + hardcode_libdir_flag_spec='-L$libdir' + hardcode_direct=yes + hardcode_minus_L=yes + hardcode_shlibpath_var=no + ;; + + sysv4) + case $host_vendor in + sni) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_direct=yes # is this really true??? + ;; + siemens) + ## LD is ld it makes a PLAMLIB + ## CC just makes a GrossModule. + archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags' + reload_cmds='$CC -r -o $output$reload_objs' + hardcode_direct=no + ;; + motorola) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_direct=no #Motorola manual says yes, but my tests say they lie + ;; + esac + runpath_var='LD_RUN_PATH' + hardcode_shlibpath_var=no + ;; + + sysv4.3*) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_shlibpath_var=no + export_dynamic_flag_spec='-Bexport' + ;; + + sysv4*MP*) + if test -d /usr/nec; then + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_shlibpath_var=no + runpath_var=LD_RUN_PATH + hardcode_runpath_var=yes + ld_shlibs=yes + fi + ;; + + sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*) + no_undefined_flag='${wl}-z,text' + archive_cmds_need_lc=no + hardcode_shlibpath_var=no + runpath_var='LD_RUN_PATH' + + if test "$GCC" = yes; then + archive_cmds='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + else + archive_cmds='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + fi + ;; + + sysv5* | sco3.2v5* | sco5v6*) + # Note: We can NOT use -z defs as we might desire, because we do not + # link with -lc, and that would cause any symbols used from libc to + # always be unresolved, which means just about no library would + # ever link correctly. If we're not using GNU ld we use -z text + # though, which does catch some bad symbols but isn't as heavy-handed + # as -z defs. + no_undefined_flag='${wl}-z,text' + allow_undefined_flag='${wl}-z,nodefs' + archive_cmds_need_lc=no + hardcode_shlibpath_var=no + hardcode_libdir_flag_spec='${wl}-R,$libdir' + hardcode_libdir_separator=':' + link_all_deplibs=yes + export_dynamic_flag_spec='${wl}-Bexport' + runpath_var='LD_RUN_PATH' + + if test "$GCC" = yes; then + archive_cmds='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + else + archive_cmds='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + fi + ;; + + uts4*) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_libdir_flag_spec='-L$libdir' + hardcode_shlibpath_var=no + ;; + + *) + ld_shlibs=no + ;; + esac + + if test x$host_vendor = xsni; then + case $host in + sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) + export_dynamic_flag_spec='${wl}-Blargedynsym' + ;; + esac + fi + fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&5 +$as_echo "$ld_shlibs" >&6; } +test "$ld_shlibs" = no && can_build_shared=no + +with_gnu_ld=$with_gnu_ld + + + + + + + + + + + + + + + +# +# Do we need to explicitly link libc? +# +case "x$archive_cmds_need_lc" in +x|xyes) + # Assume -lc should be added + archive_cmds_need_lc=yes + + if test "$enable_shared" = yes && test "$GCC" = yes; then + case $archive_cmds in + *'~'*) + # FIXME: we may have to deal with multi-command sequences. + ;; + '$CC '*) + # Test whether the compiler implicitly links with -lc since on some + # systems, -lgcc has to come before -lc. If gcc already passes -lc + # to ld, don't add -lc before -lgcc. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5 +$as_echo_n "checking whether -lc should be explicitly linked in... " >&6; } +if ${lt_cv_archive_cmds_need_lc+:} false; then : + $as_echo_n "(cached) " >&6 +else + $RM conftest* + echo "$lt_simple_compile_test_code" > conftest.$ac_ext + + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } 2>conftest.err; then + soname=conftest + lib=conftest + libobjs=conftest.$ac_objext + deplibs= + wl=$lt_prog_compiler_wl + pic_flag=$lt_prog_compiler_pic + compiler_flags=-v + linker_flags=-v + verstring= + output_objdir=. + libname=conftest + lt_save_allow_undefined_flag=$allow_undefined_flag + allow_undefined_flag= + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5 + (eval $archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + then + lt_cv_archive_cmds_need_lc=no + else + lt_cv_archive_cmds_need_lc=yes + fi + allow_undefined_flag=$lt_save_allow_undefined_flag + else + cat conftest.err 1>&5 + fi + $RM conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc" >&5 +$as_echo "$lt_cv_archive_cmds_need_lc" >&6; } + archive_cmds_need_lc=$lt_cv_archive_cmds_need_lc + ;; + esac + fi + ;; +esac + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5 +$as_echo_n "checking dynamic linker characteristics... " >&6; } + +if test "$GCC" = yes; then + case $host_os in + darwin*) lt_awk_arg="/^libraries:/,/LR/" ;; + *) lt_awk_arg="/^libraries:/" ;; + esac + case $host_os in + mingw* | cegcc*) lt_sed_strip_eq="s,=\([A-Za-z]:\),\1,g" ;; + *) lt_sed_strip_eq="s,=/,/,g" ;; + esac + lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq` + case $lt_search_path_spec in + *\;*) + # 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 's/;/ /g'` + ;; + *) + lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"` + ;; + esac + # 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; } +}'` + # AWK program above erroneously prepends '/' to C:/dos/paths + # for these hosts. + case $host_os in + mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\ + $SED 's,/\([A-Za-z]:\),\1,g'` ;; + esac + sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP` +else + sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" +fi +library_names_spec= +libname_spec='lib$name' +soname_spec= +shrext_cmds=".so" +postinstall_cmds= +postuninstall_cmds= +finish_cmds= +finish_eval= +shlibpath_var= +shlibpath_overrides_runpath=unknown +version_type=none +dynamic_linker="$host_os ld.so" +sys_lib_dlsearch_path_spec="/lib /usr/lib" +need_lib_prefix=unknown +hardcode_into_libs=no + +# when you set need_version to no, make sure it does not cause -set_version +# flags to be left without arguments +need_version=unknown + +case $host_os in +aix3*) + version_type=linux # correct to gnu/linux during the next big refactor + 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 # correct to gnu/linux during the next big refactor + 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*) + case $host_cpu in + powerpc) + # Since July 2007 AmigaOS4 officially supports .so libraries. + # When compiling the executable, add -use-dynld -Lsobjs: to the compileline. + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + ;; + m68k) + library_names_spec='$libname.ixlibrary $libname.a' + # Create ${libname}_ixlibrary.a entries in /sys/libs. + finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' + ;; + esac + ;; + +beos*) + library_names_spec='${libname}${shared_ext}' + dynamic_linker="$host_os ld.so" + shlibpath_var=LIBRARY_PATH + ;; + +bsdi[45]*) + version_type=linux # correct to gnu/linux during the next big refactor + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' + shlibpath_var=LD_LIBRARY_PATH + sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" + sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" + # the default ld.so.conf also contains /usr/contrib/lib and + # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow + # libtool to hard-code these into programs + ;; + +cygwin* | mingw* | pw32* | cegcc*) + version_type=windows + shrext_cmds=".dll" + need_version=no + need_lib_prefix=no + + case $GCC,$cc_basename in + yes,*) + # gcc + library_names_spec='$libname.dll.a' + # DLL is installed to $(libdir)/../bin by postinstall_cmds + postinstall_cmds='base_file=`basename \${file}`~ + dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~ + dldir=$destdir/`dirname \$dlpath`~ + test -d \$dldir || mkdir -p \$dldir~ + $install_prog $dir/$dlname \$dldir/$dlname~ + chmod a+x \$dldir/$dlname~ + if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then + eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; + fi' + postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ + dlpath=$dir/\$dldll~ + $RM \$dlpath' + shlibpath_overrides_runpath=yes + + case $host_os in + cygwin*) + # Cygwin DLLs use 'cyg' prefix rather than 'lib' + soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' + + sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api" + ;; + mingw* | cegcc*) + # MinGW DLLs use traditional 'lib' prefix + soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' + ;; + 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 + dynamic_linker='Win32 ld.exe' + ;; + + *,cl*) + # Native MSVC + libname_spec='$name' + soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' + library_names_spec='${libname}.dll.lib' + + case $build_os in + mingw*) + sys_lib_search_path_spec= + lt_save_ifs=$IFS + IFS=';' + for lt_path in $LIB + do + IFS=$lt_save_ifs + # Let DOS variable expansion print the short 8.3 style file name. + lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"` + sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path" + done + IFS=$lt_save_ifs + # Convert to MSYS style. + sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'` + ;; + cygwin*) + # Convert to unix form, then to dos form, then back to unix form + # but this time dos style (no spaces!) so that the unix form looks + # like /cygdrive/c/PROGRA~1:/cygdr... + sys_lib_search_path_spec=`cygpath --path --unix "$LIB"` + sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null` + sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` + ;; + *) + sys_lib_search_path_spec="$LIB" + if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then + # It is most probably a Windows format PATH. + 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 + # FIXME: find the short name or the path components, as spaces are + # common. (e.g. "Program Files" -> "PROGRA~1") + ;; + esac + + # 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' + postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ + dlpath=$dir/\$dldll~ + $RM \$dlpath' + shlibpath_overrides_runpath=yes + dynamic_linker='Win32 link.exe' + ;; + + *) + # Assume MSVC wrapper + library_names_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext} $libname.lib' + dynamic_linker='Win32 ld.exe' + ;; + esac + # FIXME: first we should search . and the directory the executable is in + shlibpath_var=PATH + ;; + +darwin* | rhapsody*) + dynamic_linker="$host_os dyld" + version_type=darwin + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext' + soname_spec='${libname}${release}${major}$shared_ext' + shlibpath_overrides_runpath=yes + shlibpath_var=DYLD_LIBRARY_PATH + shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`' + + sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib" + sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib' + ;; + +dgux*) + version_type=linux # correct to gnu/linux during the next big refactor + 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 + ;; + +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[23].*) 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 # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + ;; + +haiku*) + version_type=linux # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + dynamic_linker="$host_os runtime_loader" + 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=LIBRARY_PATH + shlibpath_overrides_runpath=yes + sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib' + 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' + # or fails outright, so override atomically: + install_override_mode=555 + ;; + +interix[3-9]*) + version_type=linux # correct to gnu/linux during the next big refactor + 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 # correct to gnu/linux during the next big refactor + 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 glibc/ELF. +linux* | k*bsd*-gnu | kopensolaris*-gnu) + version_type=linux # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + + # Some binutils ld are patched to set DT_RUNPATH + if ${lt_cv_shlibpath_overrides_runpath+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_shlibpath_overrides_runpath=no + save_LDFLAGS=$LDFLAGS + save_libdir=$libdir + eval "libdir=/foo; wl=\"$lt_prog_compiler_wl\"; \ + LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec\"" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + if ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then : + lt_cv_shlibpath_overrides_runpath=yes +fi +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LDFLAGS=$save_LDFLAGS + libdir=$save_libdir + +fi + + shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath + + # 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;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 # correct to gnu/linux during the next big refactor + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + ;; + +*nto* | *qnx*) + version_type=qnx + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + dynamic_linker='ldqnx.so' + ;; + +openbsd*) + version_type=sunos + sys_lib_dlsearch_path_spec="/usr/lib" + need_lib_prefix=no + # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs. + case $host_os in + openbsd3.3 | openbsd3.3.*) need_version=yes ;; + *) need_version=no ;; + esac + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' + shlibpath_var=LD_LIBRARY_PATH + if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then + case $host_os in + openbsd2.[89] | openbsd2.[89].*) + shlibpath_overrides_runpath=no + ;; + *) + shlibpath_overrides_runpath=yes + ;; + esac + else + shlibpath_overrides_runpath=yes + fi + ;; + +os2*) + libname_spec='$name' + shrext_cmds=".dll" + need_lib_prefix=no + library_names_spec='$libname${shared_ext} $libname.a' + dynamic_linker='OS/2 ld.exe' + shlibpath_var=LIBPATH + ;; + +osf3* | osf4* | osf5*) + version_type=osf + need_lib_prefix=no + need_version=no + soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + shlibpath_var=LD_LIBRARY_PATH + sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" + sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" + ;; + +rdos*) + dynamic_linker=no + ;; + +solaris*) + version_type=linux # correct to gnu/linux during the next big refactor + 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 # correct to gnu/linux during the next big refactor + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + case $host_vendor in + sni) + shlibpath_overrides_runpath=no + need_lib_prefix=no + runpath_var=LD_RUN_PATH + ;; + siemens) + need_lib_prefix=no + ;; + motorola) + need_lib_prefix=no + need_version=no + shlibpath_overrides_runpath=no + sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' + ;; + esac + ;; + +sysv4*MP*) + if test -d /usr/nec ;then + version_type=linux # correct to gnu/linux during the next big refactor + library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}' + soname_spec='$libname${shared_ext}.$major' + shlibpath_var=LD_LIBRARY_PATH + fi + ;; + +sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) + version_type=freebsd-elf + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + if test "$with_gnu_ld" = yes; then + sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib' + else + sys_lib_search_path_spec='/usr/ccs/lib /usr/lib' + case $host_os in + sco3.2v5*) + sys_lib_search_path_spec="$sys_lib_search_path_spec /lib" + ;; + esac + fi + sys_lib_dlsearch_path_spec='/usr/lib' + ;; + +tpf*) + # TPF is a cross-target only. Preferred cross-host = GNU/Linux. + version_type=linux # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + ;; + +uts4*) + version_type=linux # correct to gnu/linux during the next big refactor + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + ;; + +*) + dynamic_linker=no + ;; +esac +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5 +$as_echo "$dynamic_linker" >&6; } +test "$dynamic_linker" = no && can_build_shared=no + +variables_saved_for_relink="PATH $shlibpath_var $runpath_var" +if test "$GCC" = yes; then + variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" +fi + +if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then + sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec" +fi +if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then + sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec" +fi + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5 +$as_echo_n "checking how to hardcode library paths into programs... " >&6; } +hardcode_action= +if test -n "$hardcode_libdir_flag_spec" || + test -n "$runpath_var" || + test "X$hardcode_automatic" = "Xyes" ; then + + # We can hardcode non-existent directories. + if test "$hardcode_direct" != no && + # If the only mechanism to avoid hardcoding is shlibpath_var, we + # have to relink, otherwise we might link with an installed library + # when we should be linking with a yet-to-be-installed one + ## test "$_LT_TAGVAR(hardcode_shlibpath_var, )" != no && + test "$hardcode_minus_L" != no; then + # Linking always hardcodes the temporary library directory. + hardcode_action=relink + else + # We can link without hardcoding, and we can hardcode nonexisting dirs. + hardcode_action=immediate + fi +else + # We cannot hardcode anything, or else we can only hardcode existing + # directories. + hardcode_action=unsupported +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&5 +$as_echo "$hardcode_action" >&6; } + +if test "$hardcode_action" = relink || + test "$inherit_rpath" = yes; then + # Fast installation is not supported + enable_fast_install=no +elif test "$shlibpath_overrides_runpath" = yes || + test "$enable_shared" = no; then + # Fast installation is not necessary + enable_fast_install=needless +fi + + + + + + + if test "x$enable_dlopen" != xyes; then + enable_dlopen=unknown + enable_dlopen_self=unknown + enable_dlopen_self_static=unknown +else + lt_cv_dlopen=no + lt_cv_dlopen_libs= + + case $host_os in + beos*) + lt_cv_dlopen="load_add_on" + lt_cv_dlopen_libs= + lt_cv_dlopen_self=yes + ;; + + mingw* | pw32* | cegcc*) + lt_cv_dlopen="LoadLibrary" + lt_cv_dlopen_libs= + ;; + + cygwin*) + lt_cv_dlopen="dlopen" + lt_cv_dlopen_libs= + ;; + + darwin*) + # if libdl is installed we need to link against it + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 +$as_echo_n "checking for dlopen in -ldl... " >&6; } +if ${ac_cv_lib_dl_dlopen+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-ldl $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char dlopen (); +int +main () +{ +return dlopen (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_dl_dlopen=yes +else + ac_cv_lib_dl_dlopen=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 +$as_echo "$ac_cv_lib_dl_dlopen" >&6; } +if test "x$ac_cv_lib_dl_dlopen" = xyes; then : + lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" +else + + lt_cv_dlopen="dyld" + lt_cv_dlopen_libs= + lt_cv_dlopen_self=yes + +fi + + ;; + + *) + ac_fn_c_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load" +if test "x$ac_cv_func_shl_load" = xyes; then : + lt_cv_dlopen="shl_load" +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5 +$as_echo_n "checking for shl_load in -ldld... " >&6; } +if ${ac_cv_lib_dld_shl_load+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-ldld $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char shl_load (); +int +main () +{ +return shl_load (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_dld_shl_load=yes +else + ac_cv_lib_dld_shl_load=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5 +$as_echo "$ac_cv_lib_dld_shl_load" >&6; } +if test "x$ac_cv_lib_dld_shl_load" = xyes; then : + lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld" +else + ac_fn_c_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen" +if test "x$ac_cv_func_dlopen" = xyes; then : + lt_cv_dlopen="dlopen" +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 +$as_echo_n "checking for dlopen in -ldl... " >&6; } +if ${ac_cv_lib_dl_dlopen+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-ldl $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char dlopen (); +int +main () +{ +return dlopen (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_dl_dlopen=yes +else + ac_cv_lib_dl_dlopen=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 +$as_echo "$ac_cv_lib_dl_dlopen" >&6; } +if test "x$ac_cv_lib_dl_dlopen" = xyes; then : + lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5 +$as_echo_n "checking for dlopen in -lsvld... " >&6; } +if ${ac_cv_lib_svld_dlopen+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lsvld $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char dlopen (); +int +main () +{ +return dlopen (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_svld_dlopen=yes +else + ac_cv_lib_svld_dlopen=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5 +$as_echo "$ac_cv_lib_svld_dlopen" >&6; } +if test "x$ac_cv_lib_svld_dlopen" = xyes; then : + lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld" +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5 +$as_echo_n "checking for dld_link in -ldld... " >&6; } +if ${ac_cv_lib_dld_dld_link+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-ldld $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char dld_link (); +int +main () +{ +return dld_link (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_dld_dld_link=yes +else + ac_cv_lib_dld_dld_link=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5 +$as_echo "$ac_cv_lib_dld_dld_link" >&6; } +if test "x$ac_cv_lib_dld_dld_link" = xyes; then : + lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld" +fi + + +fi + + +fi + + +fi + + +fi + + +fi + + ;; + esac + + if test "x$lt_cv_dlopen" != xno; then + enable_dlopen=yes + else + enable_dlopen=no + fi + + case $lt_cv_dlopen in + dlopen) + save_CPPFLAGS="$CPPFLAGS" + test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" + + save_LDFLAGS="$LDFLAGS" + wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" + + save_LIBS="$LIBS" + LIBS="$lt_cv_dlopen_libs $LIBS" + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5 +$as_echo_n "checking whether a program can dlopen itself... " >&6; } +if ${lt_cv_dlopen_self+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then : + lt_cv_dlopen_self=cross +else + lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 + lt_status=$lt_dlunknown + cat > conftest.$ac_ext <<_LT_EOF +#line $LINENO "configure" +#include "confdefs.h" + +#if HAVE_DLFCN_H +#include +#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 + +/* When -fvisbility=hidden is used, assume the code has been annotated + correspondingly for the symbols needed. */ +#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) +int fnord () __attribute__((visibility("default"))); +#endif + +int fnord () { return 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; + else puts (dlerror ()); + } + /* dlclose (self); */ + } + else + puts (dlerror ()); + + return status; +} +_LT_EOF + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 + (eval $ac_link) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then + (./conftest; exit; ) >&5 2>/dev/null + lt_status=$? + case x$lt_status in + x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;; + x$lt_dlneed_uscore) lt_cv_dlopen_self=yes ;; + x$lt_dlunknown|x*) lt_cv_dlopen_self=no ;; + esac + else : + # compilation failed + lt_cv_dlopen_self=no + fi +fi +rm -fr conftest* + + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5 +$as_echo "$lt_cv_dlopen_self" >&6; } + + if test "x$lt_cv_dlopen_self" = xyes; then + wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\" + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5 +$as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; } +if ${lt_cv_dlopen_self_static+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then : + lt_cv_dlopen_self_static=cross +else + lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 + lt_status=$lt_dlunknown + cat > conftest.$ac_ext <<_LT_EOF +#line $LINENO "configure" +#include "confdefs.h" + +#if HAVE_DLFCN_H +#include +#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 + +/* When -fvisbility=hidden is used, assume the code has been annotated + correspondingly for the symbols needed. */ +#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) +int fnord () __attribute__((visibility("default"))); +#endif + +int fnord () { return 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; + else puts (dlerror ()); + } + /* dlclose (self); */ + } + else + puts (dlerror ()); + + return status; +} +_LT_EOF + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 + (eval $ac_link) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then + (./conftest; exit; ) >&5 2>/dev/null + lt_status=$? + case x$lt_status in + x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;; + x$lt_dlneed_uscore) lt_cv_dlopen_self_static=yes ;; + x$lt_dlunknown|x*) lt_cv_dlopen_self_static=no ;; + esac + else : + # compilation failed + lt_cv_dlopen_self_static=no + fi +fi +rm -fr conftest* + + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&5 +$as_echo "$lt_cv_dlopen_self_static" >&6; } + fi + + CPPFLAGS="$save_CPPFLAGS" + LDFLAGS="$save_LDFLAGS" + LIBS="$save_LIBS" + ;; + esac + + case $lt_cv_dlopen_self in + yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; + *) enable_dlopen_self=unknown ;; + esac + + case $lt_cv_dlopen_self_static in + yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; + *) enable_dlopen_self_static=unknown ;; + esac +fi + + + + + + + + + + + + + + + + + +striplib= +old_striplib= +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5 +$as_echo_n "checking whether stripping libraries is possible... " >&6; } +if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then + test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" + test -z "$striplib" && striplib="$STRIP --strip-unneeded" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } +else +# FIXME - insert some real tests, host_os isn't really good enough + case $host_os in + darwin*) + if test -n "$STRIP" ; then + striplib="$STRIP -x" + old_striplib="$STRIP -S" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + fi + ;; + *) + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + ;; + esac +fi + + + + + + + + + + + + + # Report which library types will actually be built + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5 +$as_echo_n "checking if libtool supports shared libraries... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5 +$as_echo "$can_build_shared" >&6; } + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5 +$as_echo_n "checking whether to build shared libraries... " >&6; } + test "$can_build_shared" = "no" && enable_shared=no + + # On AIX, shared libraries and static libraries use the same namespace, and + # are all built from PIC. + case $host_os in + aix3*) + test "$enable_shared" = yes && enable_static=no + if test -n "$RANLIB"; then + archive_cmds="$archive_cmds~\$RANLIB \$lib" + postinstall_cmds='$RANLIB $lib' + fi + ;; + + aix[4-9]*) + if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then + test "$enable_shared" = yes && enable_static=no + fi + ;; + esac + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_shared" >&5 +$as_echo "$enable_shared" >&6; } + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5 +$as_echo_n "checking whether to build static libraries... " >&6; } + # Make sure either enable_shared or enable_static is yes. + test "$enable_shared" = yes || enable_static=yes + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5 +$as_echo "$enable_static" >&6; } + + + + +fi +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + +CC="$lt_save_CC" + + + + + + + + + + + + + + + + ac_config_commands="$ac_config_commands libtool" + + + + +# Only expand once: + + + +if test "x$prefix" = "xNONE" ; then + prefix="/usr" + fi +if test "x$exec_prefix" = "xNONE" ; then + exec_prefix=$prefix +fi +if test "x$datadir" = "xNONE" ; then + datadir="/usr/share/" +fi + + +PREFIX=$prefix +EXEMPLES_IMAGES_DIR="${datadir}/libgraph/images/" + + + +# Check whether --enable-exemples was given. +if test "${enable_exemples+set}" = set; then : + enableval=$enable_exemples; if test "x$enableval" = "xyes" ; then + exemples="yes" + else + exemples="no" + fi + +else + exemples="no" + +fi + + +have_xpm=no +# Check whether --enable-xpm was given. +if test "${enable_xpm+set}" = set; then : + enableval=$enable_xpm; want_xpm=$enableval +else + want_xpm=auto + +fi + +for ac_header in X11/Xlib.h +do : + ac_fn_c_check_header_mongrel "$LINENO" "X11/Xlib.h" "ac_cv_header_X11_Xlib_h" "$ac_includes_default" +if test "x$ac_cv_header_X11_Xlib_h" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_X11_XLIB_H 1 +_ACEOF + +else + as_fn_error $? "Cannot find Xlib.h. Make sure your CFLAGS environment variable contains include lines for the location of this file" "$LINENO" 5 +fi + +done + +for ac_header in X11/cursorfont.h +do : + ac_fn_c_check_header_mongrel "$LINENO" "X11/cursorfont.h" "ac_cv_header_X11_cursorfont_h" "$ac_includes_default" +if test "x$ac_cv_header_X11_cursorfont_h" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_X11_CURSORFONT_H 1 +_ACEOF + +else + as_fn_error $? "Cannot find cursorfont.h. Make sure your CFLAGS environment variable contains include lines for the location of this file" "$LINENO" 5 +fi + +done + +for ac_header in X11/Xatom.h +do : + ac_fn_c_check_header_mongrel "$LINENO" "X11/Xatom.h" "ac_cv_header_X11_Xatom_h" "$ac_includes_default" +if test "x$ac_cv_header_X11_Xatom_h" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_X11_XATOM_H 1 +_ACEOF + +else + as_fn_error $? "Cannot find Xatom.h. Make sure your CFLAGS environment variable contains include lines for the location of this file" "$LINENO" 5 +fi + +done + +for ac_header in X11/Xutil.h +do : + ac_fn_c_check_header_mongrel "$LINENO" "X11/Xutil.h" "ac_cv_header_X11_Xutil_h" "$ac_includes_default" +if test "x$ac_cv_header_X11_Xutil_h" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_X11_XUTIL_H 1 +_ACEOF + +else + as_fn_error $? "Cannot find Xutil.h. Make sure your CFLAGS environment variable contains include lines for the location of this file" "$LINENO" 5 +fi + +done + +for ac_header in X11/keysym.h +do : + ac_fn_c_check_header_mongrel "$LINENO" "X11/keysym.h" "ac_cv_header_X11_keysym_h" "$ac_includes_default" +if test "x$ac_cv_header_X11_keysym_h" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_X11_KEYSYM_H 1 +_ACEOF + +else + as_fn_error $? "Cannot find keysym.h. Make sure your CFLAGS environment variable contains include lines for the location of this file" "$LINENO" 5 +fi + +done + + + +if test "x$want_xpm" != "xno" ; then + for ac_header in X11/xpm.h +do : + ac_fn_c_check_header_mongrel "$LINENO" "X11/xpm.h" "ac_cv_header_X11_xpm_h" "$ac_includes_default" +if test "x$ac_cv_header_X11_xpm_h" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_X11_XPM_H 1 +_ACEOF + + LIBS="$LIBS -lXpm" + have_xpm=yes + +$as_echo "#define HAVE_XPM 1" >>confdefs.h + +fi + +done + + if test "x$want_xpm$have_xpm" = "xyesno" ; then + as_fn_error $? "XPM support est demandé mais pas trouvé" "$LINENO" 5 + fi +fi +#AC_CHECK_HEADERS(X11/xpm.h,, AC_MSG_ERROR([Cannot find xpm.h. Make sure your CFLAGS environment variable contains include lines for the location of this file])) + + +ac_config_headers="$ac_config_headers config.h" + + if test "$exemples" = yes; then + COND_EXPLES_TRUE= + COND_EXPLES_FALSE='#' +else + COND_EXPLES_TRUE='#' + COND_EXPLES_FALSE= +fi + + +ac_config_files="$ac_config_files Makefile src/Makefile src/lib/Makefile src/include/Makefile src/exemples/Makefile" + +cat >confcache <<\_ACEOF +# This file is a shell script that caches the results of configure +# tests run on this system so they can be shared between configure +# scripts and configure runs, see configure's option --config-cache. +# It is not useful on other systems. If it contains results you don't +# want to keep, you may remove or edit it. +# +# config.status only pays attention to the cache file if you give it +# the --recheck option to rerun configure. +# +# `ac_cv_env_foo' variables (set or unset) will be overridden when +# loading this file, other *unset* `ac_cv_foo' will be assigned the +# following values. + +_ACEOF + +# The following way of writing the cache mishandles newlines in values, +# but we know of no workaround that is simple, portable, and efficient. +# So, we kill variables containing newlines. +# Ultrix sh set writes to stderr and can't be redirected directly, +# and sets the high bit in the cache file unless we assign to the vars. +( + for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do + eval ac_val=\$$ac_var + case $ac_val in #( + *${as_nl}*) + case $ac_var in #( + *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 +$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; + esac + case $ac_var in #( + _ | IFS | as_nl) ;; #( + BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( + *) { eval $ac_var=; unset $ac_var;} ;; + esac ;; + esac + done + + (set) 2>&1 | + case $as_nl`(ac_space=' '; set) 2>&1` in #( + *${as_nl}ac_space=\ *) + # `set' does not quote correctly, so add quotes: double-quote + # substitution turns \\\\ into \\, and sed turns \\ into \. + sed -n \ + "s/'/'\\\\''/g; + s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" + ;; #( + *) + # `set' quotes correctly as required by POSIX, so do not add quotes. + sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" + ;; + esac | + sort +) | + sed ' + /^ac_cv_env_/b end + t clear + :clear + s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ + t end + s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ + :end' >>confcache +if diff "$cache_file" confcache >/dev/null 2>&1; then :; else + if test -w "$cache_file"; then + if test "x$cache_file" != "x/dev/null"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5 +$as_echo "$as_me: updating cache $cache_file" >&6;} + if test ! -f "$cache_file" || test -h "$cache_file"; then + cat confcache >"$cache_file" + else + case $cache_file in #( + */* | ?:*) + mv -f confcache "$cache_file"$$ && + mv -f "$cache_file"$$ "$cache_file" ;; #( + *) + mv -f confcache "$cache_file" ;; + esac + fi + fi + else + { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5 +$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;} + fi +fi +rm -f confcache + +test "x$prefix" = xNONE && prefix=$ac_default_prefix +# Let make expand exec_prefix. +test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' + +DEFS=-DHAVE_CONFIG_H + +ac_libobjs= +ac_ltlibobjs= +U= +for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue + # 1. Remove the extension, and $U if already installed. + ac_script='s/\$U\././;s/\.o$//;s/\.obj$//' + ac_i=`$as_echo "$ac_i" | sed "$ac_script"` + # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR + # will be set to the directory where LIBOBJS objects are built. + as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext" + as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo' +done +LIBOBJS=$ac_libobjs + +LTLIBOBJS=$ac_ltlibobjs + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking that generated files are newer than configure" >&5 +$as_echo_n "checking that generated files are newer than configure... " >&6; } + if test -n "$am_sleep_pid"; then + # Hide warnings about reused PIDs. + wait $am_sleep_pid 2>/dev/null + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: done" >&5 +$as_echo "done" >&6; } + if test -n "$EXEEXT"; then + am__EXEEXT_TRUE= + am__EXEEXT_FALSE='#' +else + am__EXEEXT_TRUE='#' + am__EXEEXT_FALSE= +fi + +if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then + as_fn_error $? "conditional \"AMDEP\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then + as_fn_error $? "conditional \"am__fastdepCC\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${COND_EXPLES_TRUE}" && test -z "${COND_EXPLES_FALSE}"; then + as_fn_error $? "conditional \"COND_EXPLES\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi + +: "${CONFIG_STATUS=./config.status}" +ac_write_fail=0 +ac_clean_files_save=$ac_clean_files +ac_clean_files="$ac_clean_files $CONFIG_STATUS" +{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5 +$as_echo "$as_me: creating $CONFIG_STATUS" >&6;} +as_write_fail=0 +cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1 +#! $SHELL +# Generated by $as_me. +# Run this file to recreate the current configuration. +# Compiler output produced by configure, useful for debugging +# configure, is in config.log if it exists. + +debug=false +ac_cs_recheck=false +ac_cs_silent=false + +SHELL=\${CONFIG_SHELL-$SHELL} +export SHELL +_ASEOF +cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1 +## -------------------- ## +## M4sh Initialization. ## +## -------------------- ## + +# Be more Bourne compatible +DUALCASE=1; export DUALCASE # for MKS sh +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : + emulate sh + NULLCMD=: + # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in #( + *posix*) : + set -o posix ;; #( + *) : + ;; +esac +fi + + +as_nl=' +' +export as_nl +# Printing a long string crashes Solaris 7 /usr/bin/printf. +as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo +# Prefer a ksh shell builtin over an external printf program on Solaris, +# but without wasting forks for bash or zsh. +if test -z "$BASH_VERSION$ZSH_VERSION" \ + && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='print -r --' + as_echo_n='print -rn --' +elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='printf %s\n' + as_echo_n='printf %s' +else + if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then + as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' + as_echo_n='/usr/ucb/echo -n' + else + as_echo_body='eval expr "X$1" : "X\\(.*\\)"' + as_echo_n_body='eval + arg=$1; + case $arg in #( + *"$as_nl"*) + expr "X$arg" : "X\\(.*\\)$as_nl"; + arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; + esac; + expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" + ' + export as_echo_n_body + as_echo_n='sh -c $as_echo_n_body as_echo' + fi + export as_echo_body + as_echo='sh -c $as_echo_body as_echo' +fi + +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + PATH_SEPARATOR=: + (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { + (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || + PATH_SEPARATOR=';' + } +fi + + +# IFS +# We need space, tab and new line, in precisely that order. Quoting is +# there to prevent editors from complaining about space-tab. +# (If _AS_PATH_WALK were called with IFS unset, it would disable word +# splitting by setting IFS to empty value.) +IFS=" "" $as_nl" + +# Find who we are. Look in the path if we contain no directory separator. +as_myself= +case $0 in #(( + *[\\/]* ) as_myself=$0 ;; + *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break + done +IFS=$as_save_IFS + + ;; +esac +# We did not find ourselves, most probably we were run as `sh COMMAND' +# in which case we are not to be found in the path. +if test "x$as_myself" = x; then + as_myself=$0 +fi +if test ! -f "$as_myself"; then + $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 + exit 1 +fi + +# Unset variables that we do not need and which cause bugs (e.g. in +# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" +# suppresses any "Segmentation fault" message there. '((' could +# trigger a bug in pdksh 5.2.14. +for as_var in BASH_ENV ENV MAIL MAILPATH +do eval test x\${$as_var+set} = xset \ + && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : +done +PS1='$ ' +PS2='> ' +PS4='+ ' + +# NLS nuisances. +LC_ALL=C +export LC_ALL +LANGUAGE=C +export LANGUAGE + +# CDPATH. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + + +# as_fn_error STATUS ERROR [LINENO LOG_FD] +# ---------------------------------------- +# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are +# provided, also output the error to LOG_FD, referencing LINENO. Then exit the +# script with STATUS, using 1 if that was 0. +as_fn_error () +{ + as_status=$1; test $as_status -eq 0 && as_status=1 + if test "$4"; then + as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 + fi + $as_echo "$as_me: error: $2" >&2 + as_fn_exit $as_status +} # as_fn_error + + +# as_fn_set_status STATUS +# ----------------------- +# Set $? to STATUS, without forking. +as_fn_set_status () +{ + return $1 +} # as_fn_set_status + +# as_fn_exit STATUS +# ----------------- +# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. +as_fn_exit () +{ + set +e + as_fn_set_status $1 + exit $1 +} # as_fn_exit + +# as_fn_unset VAR +# --------------- +# Portably unset VAR. +as_fn_unset () +{ + { eval $1=; unset $1;} +} +as_unset=as_fn_unset +# as_fn_append VAR VALUE +# ---------------------- +# Append the text in VALUE to the end of the definition contained in VAR. Take +# advantage of any shell optimizations that allow amortized linear growth over +# repeated appends, instead of the typical quadratic growth present in naive +# implementations. +if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : + eval 'as_fn_append () + { + eval $1+=\$2 + }' +else + as_fn_append () + { + eval $1=\$$1\$2 + } +fi # as_fn_append + +# as_fn_arith ARG... +# ------------------ +# Perform arithmetic evaluation on the ARGs, and store the result in the +# global $as_val. Take advantage of shells that can avoid forks. The arguments +# must be portable across $(()) and expr. +if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : + eval 'as_fn_arith () + { + as_val=$(( $* )) + }' +else + as_fn_arith () + { + as_val=`expr "$@" || test $? -eq 1` + } +fi # as_fn_arith + + +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then + as_expr=expr +else + as_expr=false +fi + +if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then + as_basename=basename +else + as_basename=false +fi + +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then + as_dirname=dirname +else + as_dirname=false +fi + +as_me=`$as_basename -- "$0" || +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X/"$0" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ + s//\1/ + q + } + /^X\/\(\/\/\)$/{ + s//\1/ + q + } + /^X\/\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits + +ECHO_C= ECHO_N= ECHO_T= +case `echo -n x` in #((((( +-n*) + case `echo 'xy\c'` in + *c*) ECHO_T=' ';; # ECHO_T is single tab character. + xy) ECHO_C='\c';; + *) echo `echo ksh88 bug on AIX 6.1` > /dev/null + ECHO_T=' ';; + esac;; +*) + ECHO_N='-n';; +esac + +rm -f conf$$ conf$$.exe conf$$.file +if test -d conf$$.dir; then + rm -f conf$$.dir/conf$$.file +else + rm -f conf$$.dir + mkdir conf$$.dir 2>/dev/null +fi +if (echo >conf$$.file) 2>/dev/null; then + if ln -s conf$$.file conf$$ 2>/dev/null; then + as_ln_s='ln -s' + # ... but there are two gotchas: + # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. + # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. + # In both cases, we have to default to `cp -pR'. + ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || + as_ln_s='cp -pR' + elif ln conf$$.file conf$$ 2>/dev/null; then + as_ln_s=ln + else + as_ln_s='cp -pR' + fi +else + as_ln_s='cp -pR' +fi +rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file +rmdir conf$$.dir 2>/dev/null + + +# as_fn_mkdir_p +# ------------- +# Create "$as_dir" as a directory, including parents if necessary. +as_fn_mkdir_p () +{ + + case $as_dir in #( + -*) as_dir=./$as_dir;; + esac + test -d "$as_dir" || eval $as_mkdir_p || { + as_dirs= + while :; do + case $as_dir in #( + *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( + *) as_qdir=$as_dir;; + esac + as_dirs="'$as_qdir' $as_dirs" + as_dir=`$as_dirname -- "$as_dir" || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + test -d "$as_dir" && break + done + test -z "$as_dirs" || eval "mkdir $as_dirs" + } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" + + +} # as_fn_mkdir_p +if mkdir -p . 2>/dev/null; then + as_mkdir_p='mkdir -p "$as_dir"' +else + test -d ./-p && rmdir ./-p + as_mkdir_p=false +fi + + +# as_fn_executable_p FILE +# ----------------------- +# Test if FILE is an executable regular file. +as_fn_executable_p () +{ + test -f "$1" && test -x "$1" +} # as_fn_executable_p +as_test_x='test -x' +as_executable_p=as_fn_executable_p + +# Sed expression to map a string onto a valid CPP name. +as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" + +# Sed expression to map a string onto a valid variable name. +as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" + + +exec 6>&1 +## ----------------------------------- ## +## Main body of $CONFIG_STATUS script. ## +## ----------------------------------- ## +_ASEOF +test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1 + +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +# Save the log message, to keep $0 and so on meaningful, and to +# report actual input values of CONFIG_FILES etc. instead of their +# values after options handling. +ac_log=" +This file was extended by bibliotheque graphique iut $as_me 1.1, which was +generated by GNU Autoconf 2.69. Invocation command line was + + CONFIG_FILES = $CONFIG_FILES + CONFIG_HEADERS = $CONFIG_HEADERS + CONFIG_LINKS = $CONFIG_LINKS + CONFIG_COMMANDS = $CONFIG_COMMANDS + $ $0 $@ + +on `(hostname || uname -n) 2>/dev/null | sed 1q` +" + +_ACEOF + +case $ac_config_files in *" +"*) set x $ac_config_files; shift; ac_config_files=$*;; +esac + +case $ac_config_headers in *" +"*) set x $ac_config_headers; shift; ac_config_headers=$*;; +esac + + +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +# Files that config.status was made for. +config_files="$ac_config_files" +config_headers="$ac_config_headers" +config_commands="$ac_config_commands" + +_ACEOF + +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +ac_cs_usage="\ +\`$as_me' instantiates files and other configuration actions +from templates according to the current configuration. Unless the files +and actions are specified as TAGs, all are instantiated by default. + +Usage: $0 [OPTION]... [TAG]... + + -h, --help print this help, then exit + -V, --version print version number and configuration settings, then exit + --config print configuration, then exit + -q, --quiet, --silent + do not print progress messages + -d, --debug don't remove temporary files + --recheck update $as_me by reconfiguring in the same conditions + --file=FILE[:TEMPLATE] + instantiate the configuration file FILE + --header=FILE[:TEMPLATE] + instantiate the configuration header FILE + +Configuration files: +$config_files + +Configuration headers: +$config_headers + +Configuration commands: +$config_commands + +Report bugs to ." + +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" +ac_cs_version="\\ +bibliotheque graphique iut config.status 1.1 +configured by $0, generated by GNU Autoconf 2.69, + with options \\"\$ac_cs_config\\" + +Copyright (C) 2012 Free Software Foundation, Inc. +This config.status script is free software; the Free Software Foundation +gives unlimited permission to copy, distribute and modify it." + +ac_pwd='$ac_pwd' +srcdir='$srcdir' +INSTALL='$INSTALL' +MKDIR_P='$MKDIR_P' +AWK='$AWK' +test -n "\$AWK" || AWK=awk +_ACEOF + +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +# The default lists apply if the user does not specify any file. +ac_need_defaults=: +while test $# != 0 +do + case $1 in + --*=?*) + ac_option=`expr "X$1" : 'X\([^=]*\)='` + ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` + ac_shift=: + ;; + --*=) + ac_option=`expr "X$1" : 'X\([^=]*\)='` + ac_optarg= + ac_shift=: + ;; + *) + ac_option=$1 + ac_optarg=$2 + ac_shift=shift + ;; + esac + + case $ac_option in + # Handling of the options. + -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) + ac_cs_recheck=: ;; + --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) + $as_echo "$ac_cs_version"; exit ;; + --config | --confi | --conf | --con | --co | --c ) + $as_echo "$ac_cs_config"; exit ;; + --debug | --debu | --deb | --de | --d | -d ) + debug=: ;; + --file | --fil | --fi | --f ) + $ac_shift + case $ac_optarg in + *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; + '') as_fn_error $? "missing file argument" ;; + esac + as_fn_append CONFIG_FILES " '$ac_optarg'" + ac_need_defaults=false;; + --header | --heade | --head | --hea ) + $ac_shift + case $ac_optarg in + *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; + esac + as_fn_append CONFIG_HEADERS " '$ac_optarg'" + ac_need_defaults=false;; + --he | --h) + # Conflict between --help and --header + as_fn_error $? "ambiguous option: \`$1' +Try \`$0 --help' for more information.";; + --help | --hel | -h ) + $as_echo "$ac_cs_usage"; exit ;; + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil | --si | --s) + ac_cs_silent=: ;; + + # This is an error. + -*) as_fn_error $? "unrecognized option: \`$1' +Try \`$0 --help' for more information." ;; + + *) as_fn_append ac_config_targets " $1" + ac_need_defaults=false ;; + + esac + shift +done + +ac_configure_extra_args= + +if $ac_cs_silent; then + exec 6>/dev/null + ac_configure_extra_args="$ac_configure_extra_args --silent" +fi + +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +if \$ac_cs_recheck; then + set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion + shift + \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6 + CONFIG_SHELL='$SHELL' + export CONFIG_SHELL + exec "\$@" +fi + +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +exec 5>>config.log +{ + echo + sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX +## Running $as_me. ## +_ASBOX + $as_echo "$ac_log" +} >&5 + +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +# +# INIT-COMMANDS +# +AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir" + + +# The HP-UX ksh and POSIX shell print the target directory to stdout +# if CDPATH is set. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + +sed_quote_subst='$sed_quote_subst' +double_quote_subst='$double_quote_subst' +delay_variable_subst='$delay_variable_subst' +macro_version='`$ECHO "$macro_version" | $SED "$delay_single_quote_subst"`' +macro_revision='`$ECHO "$macro_revision" | $SED "$delay_single_quote_subst"`' +enable_shared='`$ECHO "$enable_shared" | $SED "$delay_single_quote_subst"`' +enable_static='`$ECHO "$enable_static" | $SED "$delay_single_quote_subst"`' +pic_mode='`$ECHO "$pic_mode" | $SED "$delay_single_quote_subst"`' +enable_fast_install='`$ECHO "$enable_fast_install" | $SED "$delay_single_quote_subst"`' +SHELL='`$ECHO "$SHELL" | $SED "$delay_single_quote_subst"`' +ECHO='`$ECHO "$ECHO" | $SED "$delay_single_quote_subst"`' +PATH_SEPARATOR='`$ECHO "$PATH_SEPARATOR" | $SED "$delay_single_quote_subst"`' +host_alias='`$ECHO "$host_alias" | $SED "$delay_single_quote_subst"`' +host='`$ECHO "$host" | $SED "$delay_single_quote_subst"`' +host_os='`$ECHO "$host_os" | $SED "$delay_single_quote_subst"`' +build_alias='`$ECHO "$build_alias" | $SED "$delay_single_quote_subst"`' +build='`$ECHO "$build" | $SED "$delay_single_quote_subst"`' +build_os='`$ECHO "$build_os" | $SED "$delay_single_quote_subst"`' +SED='`$ECHO "$SED" | $SED "$delay_single_quote_subst"`' +Xsed='`$ECHO "$Xsed" | $SED "$delay_single_quote_subst"`' +GREP='`$ECHO "$GREP" | $SED "$delay_single_quote_subst"`' +EGREP='`$ECHO "$EGREP" | $SED "$delay_single_quote_subst"`' +FGREP='`$ECHO "$FGREP" | $SED "$delay_single_quote_subst"`' +LD='`$ECHO "$LD" | $SED "$delay_single_quote_subst"`' +NM='`$ECHO "$NM" | $SED "$delay_single_quote_subst"`' +LN_S='`$ECHO "$LN_S" | $SED "$delay_single_quote_subst"`' +max_cmd_len='`$ECHO "$max_cmd_len" | $SED "$delay_single_quote_subst"`' +ac_objext='`$ECHO "$ac_objext" | $SED "$delay_single_quote_subst"`' +exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`' +lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`' +lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`' +lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`' +lt_cv_to_host_file_cmd='`$ECHO "$lt_cv_to_host_file_cmd" | $SED "$delay_single_quote_subst"`' +lt_cv_to_tool_file_cmd='`$ECHO "$lt_cv_to_tool_file_cmd" | $SED "$delay_single_quote_subst"`' +reload_flag='`$ECHO "$reload_flag" | $SED "$delay_single_quote_subst"`' +reload_cmds='`$ECHO "$reload_cmds" | $SED "$delay_single_quote_subst"`' +OBJDUMP='`$ECHO "$OBJDUMP" | $SED "$delay_single_quote_subst"`' +deplibs_check_method='`$ECHO "$deplibs_check_method" | $SED "$delay_single_quote_subst"`' +file_magic_cmd='`$ECHO "$file_magic_cmd" | $SED "$delay_single_quote_subst"`' +file_magic_glob='`$ECHO "$file_magic_glob" | $SED "$delay_single_quote_subst"`' +want_nocaseglob='`$ECHO "$want_nocaseglob" | $SED "$delay_single_quote_subst"`' +DLLTOOL='`$ECHO "$DLLTOOL" | $SED "$delay_single_quote_subst"`' +sharedlib_from_linklib_cmd='`$ECHO "$sharedlib_from_linklib_cmd" | $SED "$delay_single_quote_subst"`' +AR='`$ECHO "$AR" | $SED "$delay_single_quote_subst"`' +AR_FLAGS='`$ECHO "$AR_FLAGS" | $SED "$delay_single_quote_subst"`' +archiver_list_spec='`$ECHO "$archiver_list_spec" | $SED "$delay_single_quote_subst"`' +STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`' +RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`' +old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`' +old_postuninstall_cmds='`$ECHO "$old_postuninstall_cmds" | $SED "$delay_single_quote_subst"`' +old_archive_cmds='`$ECHO "$old_archive_cmds" | $SED "$delay_single_quote_subst"`' +lock_old_archive_extraction='`$ECHO "$lock_old_archive_extraction" | $SED "$delay_single_quote_subst"`' +CC='`$ECHO "$CC" | $SED "$delay_single_quote_subst"`' +CFLAGS='`$ECHO "$CFLAGS" | $SED "$delay_single_quote_subst"`' +compiler='`$ECHO "$compiler" | $SED "$delay_single_quote_subst"`' +GCC='`$ECHO "$GCC" | $SED "$delay_single_quote_subst"`' +lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$delay_single_quote_subst"`' +lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`' +lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`' +lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`' +nm_file_list_spec='`$ECHO "$nm_file_list_spec" | $SED "$delay_single_quote_subst"`' +lt_sysroot='`$ECHO "$lt_sysroot" | $SED "$delay_single_quote_subst"`' +objdir='`$ECHO "$objdir" | $SED "$delay_single_quote_subst"`' +MAGIC_CMD='`$ECHO "$MAGIC_CMD" | $SED "$delay_single_quote_subst"`' +lt_prog_compiler_no_builtin_flag='`$ECHO "$lt_prog_compiler_no_builtin_flag" | $SED "$delay_single_quote_subst"`' +lt_prog_compiler_pic='`$ECHO "$lt_prog_compiler_pic" | $SED "$delay_single_quote_subst"`' +lt_prog_compiler_wl='`$ECHO "$lt_prog_compiler_wl" | $SED "$delay_single_quote_subst"`' +lt_prog_compiler_static='`$ECHO "$lt_prog_compiler_static" | $SED "$delay_single_quote_subst"`' +lt_cv_prog_compiler_c_o='`$ECHO "$lt_cv_prog_compiler_c_o" | $SED "$delay_single_quote_subst"`' +need_locks='`$ECHO "$need_locks" | $SED "$delay_single_quote_subst"`' +MANIFEST_TOOL='`$ECHO "$MANIFEST_TOOL" | $SED "$delay_single_quote_subst"`' +DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`' +NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`' +LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`' +OTOOL='`$ECHO "$OTOOL" | $SED "$delay_single_quote_subst"`' +OTOOL64='`$ECHO "$OTOOL64" | $SED "$delay_single_quote_subst"`' +libext='`$ECHO "$libext" | $SED "$delay_single_quote_subst"`' +shrext_cmds='`$ECHO "$shrext_cmds" | $SED "$delay_single_quote_subst"`' +extract_expsyms_cmds='`$ECHO "$extract_expsyms_cmds" | $SED "$delay_single_quote_subst"`' +archive_cmds_need_lc='`$ECHO "$archive_cmds_need_lc" | $SED "$delay_single_quote_subst"`' +enable_shared_with_static_runtimes='`$ECHO "$enable_shared_with_static_runtimes" | $SED "$delay_single_quote_subst"`' +export_dynamic_flag_spec='`$ECHO "$export_dynamic_flag_spec" | $SED "$delay_single_quote_subst"`' +whole_archive_flag_spec='`$ECHO "$whole_archive_flag_spec" | $SED "$delay_single_quote_subst"`' +compiler_needs_object='`$ECHO "$compiler_needs_object" | $SED "$delay_single_quote_subst"`' +old_archive_from_new_cmds='`$ECHO "$old_archive_from_new_cmds" | $SED "$delay_single_quote_subst"`' +old_archive_from_expsyms_cmds='`$ECHO "$old_archive_from_expsyms_cmds" | $SED "$delay_single_quote_subst"`' +archive_cmds='`$ECHO "$archive_cmds" | $SED "$delay_single_quote_subst"`' +archive_expsym_cmds='`$ECHO "$archive_expsym_cmds" | $SED "$delay_single_quote_subst"`' +module_cmds='`$ECHO "$module_cmds" | $SED "$delay_single_quote_subst"`' +module_expsym_cmds='`$ECHO "$module_expsym_cmds" | $SED "$delay_single_quote_subst"`' +with_gnu_ld='`$ECHO "$with_gnu_ld" | $SED "$delay_single_quote_subst"`' +allow_undefined_flag='`$ECHO "$allow_undefined_flag" | $SED "$delay_single_quote_subst"`' +no_undefined_flag='`$ECHO "$no_undefined_flag" | $SED "$delay_single_quote_subst"`' +hardcode_libdir_flag_spec='`$ECHO "$hardcode_libdir_flag_spec" | $SED "$delay_single_quote_subst"`' +hardcode_libdir_separator='`$ECHO "$hardcode_libdir_separator" | $SED "$delay_single_quote_subst"`' +hardcode_direct='`$ECHO "$hardcode_direct" | $SED "$delay_single_quote_subst"`' +hardcode_direct_absolute='`$ECHO "$hardcode_direct_absolute" | $SED "$delay_single_quote_subst"`' +hardcode_minus_L='`$ECHO "$hardcode_minus_L" | $SED "$delay_single_quote_subst"`' +hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_quote_subst"`' +hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`' +inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`' +link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`' +always_export_symbols='`$ECHO "$always_export_symbols" | $SED "$delay_single_quote_subst"`' +export_symbols_cmds='`$ECHO "$export_symbols_cmds" | $SED "$delay_single_quote_subst"`' +exclude_expsyms='`$ECHO "$exclude_expsyms" | $SED "$delay_single_quote_subst"`' +include_expsyms='`$ECHO "$include_expsyms" | $SED "$delay_single_quote_subst"`' +prelink_cmds='`$ECHO "$prelink_cmds" | $SED "$delay_single_quote_subst"`' +postlink_cmds='`$ECHO "$postlink_cmds" | $SED "$delay_single_quote_subst"`' +file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`' +variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`' +need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`' +need_version='`$ECHO "$need_version" | $SED "$delay_single_quote_subst"`' +version_type='`$ECHO "$version_type" | $SED "$delay_single_quote_subst"`' +runpath_var='`$ECHO "$runpath_var" | $SED "$delay_single_quote_subst"`' +shlibpath_var='`$ECHO "$shlibpath_var" | $SED "$delay_single_quote_subst"`' +shlibpath_overrides_runpath='`$ECHO "$shlibpath_overrides_runpath" | $SED "$delay_single_quote_subst"`' +libname_spec='`$ECHO "$libname_spec" | $SED "$delay_single_quote_subst"`' +library_names_spec='`$ECHO "$library_names_spec" | $SED "$delay_single_quote_subst"`' +soname_spec='`$ECHO "$soname_spec" | $SED "$delay_single_quote_subst"`' +install_override_mode='`$ECHO "$install_override_mode" | $SED "$delay_single_quote_subst"`' +postinstall_cmds='`$ECHO "$postinstall_cmds" | $SED "$delay_single_quote_subst"`' +postuninstall_cmds='`$ECHO "$postuninstall_cmds" | $SED "$delay_single_quote_subst"`' +finish_cmds='`$ECHO "$finish_cmds" | $SED "$delay_single_quote_subst"`' +finish_eval='`$ECHO "$finish_eval" | $SED "$delay_single_quote_subst"`' +hardcode_into_libs='`$ECHO "$hardcode_into_libs" | $SED "$delay_single_quote_subst"`' +sys_lib_search_path_spec='`$ECHO "$sys_lib_search_path_spec" | $SED "$delay_single_quote_subst"`' +sys_lib_dlsearch_path_spec='`$ECHO "$sys_lib_dlsearch_path_spec" | $SED "$delay_single_quote_subst"`' +hardcode_action='`$ECHO "$hardcode_action" | $SED "$delay_single_quote_subst"`' +enable_dlopen='`$ECHO "$enable_dlopen" | $SED "$delay_single_quote_subst"`' +enable_dlopen_self='`$ECHO "$enable_dlopen_self" | $SED "$delay_single_quote_subst"`' +enable_dlopen_self_static='`$ECHO "$enable_dlopen_self_static" | $SED "$delay_single_quote_subst"`' +old_striplib='`$ECHO "$old_striplib" | $SED "$delay_single_quote_subst"`' +striplib='`$ECHO "$striplib" | $SED "$delay_single_quote_subst"`' + +LTCC='$LTCC' +LTCFLAGS='$LTCFLAGS' +compiler='$compiler_DEFAULT' + +# A function that is used when there is no print builtin or printf. +func_fallback_echo () +{ + eval 'cat <<_LTECHO_EOF +\$1 +_LTECHO_EOF' +} + +# Quote evaled strings. +for var in SHELL \ +ECHO \ +PATH_SEPARATOR \ +SED \ +GREP \ +EGREP \ +FGREP \ +LD \ +NM \ +LN_S \ +lt_SP2NL \ +lt_NL2SP \ +reload_flag \ +OBJDUMP \ +deplibs_check_method \ +file_magic_cmd \ +file_magic_glob \ +want_nocaseglob \ +DLLTOOL \ +sharedlib_from_linklib_cmd \ +AR \ +AR_FLAGS \ +archiver_list_spec \ +STRIP \ +RANLIB \ +CC \ +CFLAGS \ +compiler \ +lt_cv_sys_global_symbol_pipe \ +lt_cv_sys_global_symbol_to_cdecl \ +lt_cv_sys_global_symbol_to_c_name_address \ +lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \ +nm_file_list_spec \ +lt_prog_compiler_no_builtin_flag \ +lt_prog_compiler_pic \ +lt_prog_compiler_wl \ +lt_prog_compiler_static \ +lt_cv_prog_compiler_c_o \ +need_locks \ +MANIFEST_TOOL \ +DSYMUTIL \ +NMEDIT \ +LIPO \ +OTOOL \ +OTOOL64 \ +shrext_cmds \ +export_dynamic_flag_spec \ +whole_archive_flag_spec \ +compiler_needs_object \ +with_gnu_ld \ +allow_undefined_flag \ +no_undefined_flag \ +hardcode_libdir_flag_spec \ +hardcode_libdir_separator \ +exclude_expsyms \ +include_expsyms \ +file_list_spec \ +variables_saved_for_relink \ +libname_spec \ +library_names_spec \ +soname_spec \ +install_override_mode \ +finish_eval \ +old_striplib \ +striplib; do + case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in + *[\\\\\\\`\\"\\\$]*) + eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" + ;; + *) + eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" + ;; + esac +done + +# Double-quote double-evaled strings. +for var in reload_cmds \ +old_postinstall_cmds \ +old_postuninstall_cmds \ +old_archive_cmds \ +extract_expsyms_cmds \ +old_archive_from_new_cmds \ +old_archive_from_expsyms_cmds \ +archive_cmds \ +archive_expsym_cmds \ +module_cmds \ +module_expsym_cmds \ +export_symbols_cmds \ +prelink_cmds \ +postlink_cmds \ +postinstall_cmds \ +postuninstall_cmds \ +finish_cmds \ +sys_lib_search_path_spec \ +sys_lib_dlsearch_path_spec; do + case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in + *[\\\\\\\`\\"\\\$]*) + eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" + ;; + *) + eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" + ;; + esac +done + +ac_aux_dir='$ac_aux_dir' +xsi_shell='$xsi_shell' +lt_shell_append='$lt_shell_append' + +# See if we are running on zsh, and set the options which allow our +# commands through without removal of \ escapes INIT. +if test -n "\${ZSH_VERSION+set}" ; then + setopt NO_GLOB_SUBST +fi + + + PACKAGE='$PACKAGE' + VERSION='$VERSION' + TIMESTAMP='$TIMESTAMP' + RM='$RM' + ofile='$ofile' + + + + +_ACEOF + +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 + +# Handling of arguments. +for ac_config_target in $ac_config_targets +do + case $ac_config_target in + "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; + "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;; + "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; + "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; + "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;; + "src/lib/Makefile") CONFIG_FILES="$CONFIG_FILES src/lib/Makefile" ;; + "src/include/Makefile") CONFIG_FILES="$CONFIG_FILES src/include/Makefile" ;; + "src/exemples/Makefile") CONFIG_FILES="$CONFIG_FILES src/exemples/Makefile" ;; + + *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; + esac +done + + +# If the user did not use the arguments to specify the items to instantiate, +# then the envvar interface is used. Set only those that are not. +# We use the long form for the default assignment because of an extremely +# bizarre bug on SunOS 4.1.3. +if $ac_need_defaults; then + test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files + test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers + test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands +fi + +# Have a temporary directory for convenience. Make it in the build tree +# simply because there is no reason against having it here, and in addition, +# creating and moving files from /tmp can sometimes cause problems. +# Hook for its removal unless debugging. +# Note that there is a small window in which the directory will not be cleaned: +# after its creation but before its name has been assigned to `$tmp'. +$debug || +{ + tmp= ac_tmp= + trap 'exit_status=$? + : "${ac_tmp:=$tmp}" + { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status +' 0 + trap 'as_fn_exit 1' 1 2 13 15 +} +# Create a (secure) tmp directory for tmp files. + +{ + tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && + test -d "$tmp" +} || +{ + tmp=./conf$$-$RANDOM + (umask 077 && mkdir "$tmp") +} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5 +ac_tmp=$tmp + +# Set up the scripts for CONFIG_FILES section. +# No need to generate them if there are no CONFIG_FILES. +# This happens for instance with `./config.status config.h'. +if test -n "$CONFIG_FILES"; then + + +ac_cr=`echo X | tr X '\015'` +# On cygwin, bash can eat \r inside `` if the user requested igncr. +# But we know of no other shell where ac_cr would be empty at this +# point, so we can use a bashism as a fallback. +if test "x$ac_cr" = x; then + eval ac_cr=\$\'\\r\' +fi +ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' /dev/null` +if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then + ac_cs_awk_cr='\\r' +else + ac_cs_awk_cr=$ac_cr +fi + +echo 'BEGIN {' >"$ac_tmp/subs1.awk" && +_ACEOF + + +{ + echo "cat >conf$$subs.awk <<_ACEOF" && + echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' && + echo "_ACEOF" +} >conf$$subs.sh || + as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 +ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'` +ac_delim='%!_!# ' +for ac_last_try in false false false false false :; do + . ./conf$$subs.sh || + as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 + + ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X` + if test $ac_delim_n = $ac_delim_num; then + break + elif $ac_last_try; then + as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 + else + ac_delim="$ac_delim!$ac_delim _$ac_delim!! " + fi +done +rm -f conf$$subs.sh + +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK && +_ACEOF +sed -n ' +h +s/^/S["/; s/!.*/"]=/ +p +g +s/^[^!]*!// +:repl +t repl +s/'"$ac_delim"'$// +t delim +:nl +h +s/\(.\{148\}\)..*/\1/ +t more1 +s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/ +p +n +b repl +:more1 +s/["\\]/\\&/g; s/^/"/; s/$/"\\/ +p +g +s/.\{148\}// +t nl +:delim +h +s/\(.\{148\}\)..*/\1/ +t more2 +s/["\\]/\\&/g; s/^/"/; s/$/"/ +p +b +:more2 +s/["\\]/\\&/g; s/^/"/; s/$/"\\/ +p +g +s/.\{148\}// +t delim +' >$CONFIG_STATUS || ac_write_fail=1 +rm -f conf$$subs.awk +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +_ACAWK +cat >>"\$ac_tmp/subs1.awk" <<_ACAWK && + for (key in S) S_is_set[key] = 1 + FS = "" + +} +{ + line = $ 0 + nfields = split(line, field, "@") + substed = 0 + len = length(field[1]) + for (i = 2; i < nfields; i++) { + key = field[i] + keylen = length(key) + if (S_is_set[key]) { + value = S[key] + line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) + len += length(value) + length(field[++i]) + substed = 1 + } else + len += 1 + keylen + } + + print line +} + +_ACAWK +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then + sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" +else + cat +fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \ + || as_fn_error $? "could not setup config files machinery" "$LINENO" 5 +_ACEOF + +# VPATH may cause trouble with some makes, so we remove sole $(srcdir), +# ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and +# trailing colons and then remove the whole line if VPATH becomes empty +# (actually we leave an empty line to preserve line numbers). +if test "x$srcdir" = x.; then + ac_vpsub='/^[ ]*VPATH[ ]*=[ ]*/{ +h +s/// +s/^/:/ +s/[ ]*$/:/ +s/:\$(srcdir):/:/g +s/:\${srcdir}:/:/g +s/:@srcdir@:/:/g +s/^:*// +s/:*$// +x +s/\(=[ ]*\).*/\1/ +G +s/\n// +s/^[^=]*=[ ]*$// +}' +fi + +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +fi # test -n "$CONFIG_FILES" + +# Set up the scripts for CONFIG_HEADERS section. +# No need to generate them if there are no CONFIG_HEADERS. +# This happens for instance with `./config.status Makefile'. +if test -n "$CONFIG_HEADERS"; then +cat >"$ac_tmp/defines.awk" <<\_ACAWK || +BEGIN { +_ACEOF + +# Transform confdefs.h into an awk script `defines.awk', embedded as +# here-document in config.status, that substitutes the proper values into +# config.h.in to produce config.h. + +# Create a delimiter string that does not exist in confdefs.h, to ease +# handling of long lines. +ac_delim='%!_!# ' +for ac_last_try in false false :; do + ac_tt=`sed -n "/$ac_delim/p" confdefs.h` + if test -z "$ac_tt"; then + break + elif $ac_last_try; then + as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5 + else + ac_delim="$ac_delim!$ac_delim _$ac_delim!! " + fi +done + +# For the awk script, D is an array of macro values keyed by name, +# likewise P contains macro parameters if any. Preserve backslash +# newline sequences. + +ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]* +sed -n ' +s/.\{148\}/&'"$ac_delim"'/g +t rset +:rset +s/^[ ]*#[ ]*define[ ][ ]*/ / +t def +d +:def +s/\\$// +t bsnl +s/["\\]/\\&/g +s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ +D["\1"]=" \3"/p +s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2"/p +d +:bsnl +s/["\\]/\\&/g +s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ +D["\1"]=" \3\\\\\\n"\\/p +t cont +s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p +t cont +d +:cont +n +s/.\{148\}/&'"$ac_delim"'/g +t clear +:clear +s/\\$// +t bsnlc +s/["\\]/\\&/g; s/^/"/; s/$/"/p +d +:bsnlc +s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p +b cont +' >$CONFIG_STATUS || ac_write_fail=1 + +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 + for (key in D) D_is_set[key] = 1 + FS = "" +} +/^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ { + line = \$ 0 + split(line, arg, " ") + if (arg[1] == "#") { + defundef = arg[2] + mac1 = arg[3] + } else { + defundef = substr(arg[1], 2) + mac1 = arg[2] + } + split(mac1, mac2, "(") #) + macro = mac2[1] + prefix = substr(line, 1, index(line, defundef) - 1) + if (D_is_set[macro]) { + # Preserve the white space surrounding the "#". + print prefix "define", macro P[macro] D[macro] + next + } else { + # Replace #undef with comments. This is necessary, for example, + # in the case of _POSIX_SOURCE, which is predefined and required + # on some systems where configure will not decide to define it. + if (defundef == "undef") { + print "/*", prefix defundef, macro, "*/" + next + } + } +} +{ print } +_ACAWK +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 + as_fn_error $? "could not setup config headers machinery" "$LINENO" 5 +fi # test -n "$CONFIG_HEADERS" + + +eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS" +shift +for ac_tag +do + case $ac_tag in + :[FHLC]) ac_mode=$ac_tag; continue;; + esac + case $ac_mode$ac_tag in + :[FHL]*:*);; + :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;; + :[FH]-) ac_tag=-:-;; + :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; + esac + ac_save_IFS=$IFS + IFS=: + set x $ac_tag + IFS=$ac_save_IFS + shift + ac_file=$1 + shift + + case $ac_mode in + :L) ac_source=$1;; + :[FH]) + ac_file_inputs= + for ac_f + do + case $ac_f in + -) ac_f="$ac_tmp/stdin";; + *) # Look for the file first in the build tree, then in the source tree + # (if the path is not absolute). The absolute path cannot be DOS-style, + # because $ac_f cannot contain `:'. + test -f "$ac_f" || + case $ac_f in + [\\/$]*) false;; + *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; + esac || + as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;; + esac + case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac + as_fn_append ac_file_inputs " '$ac_f'" + done + + # Let's still pretend it is `configure' which instantiates (i.e., don't + # use $as_me), people would be surprised to read: + # /* config.h. Generated by config.status. */ + configure_input='Generated from '` + $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' + `' by configure.' + if test x"$ac_file" != x-; then + configure_input="$ac_file. $configure_input" + { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 +$as_echo "$as_me: creating $ac_file" >&6;} + fi + # Neutralize special characters interpreted by sed in replacement strings. + case $configure_input in #( + *\&* | *\|* | *\\* ) + ac_sed_conf_input=`$as_echo "$configure_input" | + sed 's/[\\\\&|]/\\\\&/g'`;; #( + *) ac_sed_conf_input=$configure_input;; + esac + + case $ac_tag in + *:-:* | *:-) cat >"$ac_tmp/stdin" \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; + esac + ;; + esac + + ac_dir=`$as_dirname -- "$ac_file" || +$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$ac_file" : 'X\(//\)[^/]' \| \ + X"$ac_file" : 'X\(//\)$' \| \ + X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$ac_file" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + as_dir="$ac_dir"; as_fn_mkdir_p + ac_builddir=. + +case "$ac_dir" in +.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; +*) + ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` + # A ".." for each directory in $ac_dir_suffix. + ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` + case $ac_top_builddir_sub in + "") ac_top_builddir_sub=. ac_top_build_prefix= ;; + *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; + esac ;; +esac +ac_abs_top_builddir=$ac_pwd +ac_abs_builddir=$ac_pwd$ac_dir_suffix +# for backward compatibility: +ac_top_builddir=$ac_top_build_prefix + +case $srcdir in + .) # We are building in place. + ac_srcdir=. + ac_top_srcdir=$ac_top_builddir_sub + ac_abs_top_srcdir=$ac_pwd ;; + [\\/]* | ?:[\\/]* ) # Absolute name. + ac_srcdir=$srcdir$ac_dir_suffix; + ac_top_srcdir=$srcdir + ac_abs_top_srcdir=$srcdir ;; + *) # Relative name. + ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix + ac_top_srcdir=$ac_top_build_prefix$srcdir + ac_abs_top_srcdir=$ac_pwd/$srcdir ;; +esac +ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix + + + case $ac_mode in + :F) + # + # CONFIG_FILE + # + + case $INSTALL in + [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; + *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; + esac + ac_MKDIR_P=$MKDIR_P + case $MKDIR_P in + [\\/$]* | ?:[\\/]* ) ;; + */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;; + esac +_ACEOF + +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +# If the template does not know about datarootdir, expand it. +# FIXME: This hack should be removed a few years after 2.60. +ac_datarootdir_hack=; ac_datarootdir_seen= +ac_sed_dataroot=' +/datarootdir/ { + p + q +} +/@datadir@/p +/@docdir@/p +/@infodir@/p +/@localedir@/p +/@mandir@/p' +case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in +*datarootdir*) ac_datarootdir_seen=yes;; +*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 +$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 + ac_datarootdir_hack=' + s&@datadir@&$datadir&g + s&@docdir@&$docdir&g + s&@infodir@&$infodir&g + s&@localedir@&$localedir&g + s&@mandir@&$mandir&g + s&\\\${datarootdir}&$datarootdir&g' ;; +esac +_ACEOF + +# Neutralize VPATH when `$srcdir' = `.'. +# Shell code in configure.ac might set extrasub. +# FIXME: do we really want to maintain this feature? +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +ac_sed_extra="$ac_vpsub +$extrasub +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +:t +/@[a-zA-Z_][a-zA-Z_0-9]*@/!b +s|@configure_input@|$ac_sed_conf_input|;t t +s&@top_builddir@&$ac_top_builddir_sub&;t t +s&@top_build_prefix@&$ac_top_build_prefix&;t t +s&@srcdir@&$ac_srcdir&;t t +s&@abs_srcdir@&$ac_abs_srcdir&;t t +s&@top_srcdir@&$ac_top_srcdir&;t t +s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t +s&@builddir@&$ac_builddir&;t t +s&@abs_builddir@&$ac_abs_builddir&;t t +s&@abs_top_builddir@&$ac_abs_top_builddir&;t t +s&@INSTALL@&$ac_INSTALL&;t t +s&@MKDIR_P@&$ac_MKDIR_P&;t t +$ac_datarootdir_hack +" +eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \ + >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + +test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && + { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } && + { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \ + "$ac_tmp/out"`; test -z "$ac_out"; } && + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' +which seems to be undefined. Please make sure it is defined" >&5 +$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' +which seems to be undefined. Please make sure it is defined" >&2;} + + rm -f "$ac_tmp/stdin" + case $ac_file in + -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";; + *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";; + esac \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + ;; + :H) + # + # CONFIG_HEADER + # + if test x"$ac_file" != x-; then + { + $as_echo "/* $configure_input */" \ + && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" + } >"$ac_tmp/config.h" \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then + { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 +$as_echo "$as_me: $ac_file is unchanged" >&6;} + else + rm -f "$ac_file" + mv "$ac_tmp/config.h" "$ac_file" \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + fi + else + $as_echo "/* $configure_input */" \ + && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \ + || as_fn_error $? "could not create -" "$LINENO" 5 + fi +# Compute "$ac_file"'s index in $config_headers. +_am_arg="$ac_file" +_am_stamp_count=1 +for _am_header in $config_headers :; do + case $_am_header in + $_am_arg | $_am_arg:* ) + break ;; + * ) + _am_stamp_count=`expr $_am_stamp_count + 1` ;; + esac +done +echo "timestamp for $_am_arg" >`$as_dirname -- "$_am_arg" || +$as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$_am_arg" : 'X\(//\)[^/]' \| \ + X"$_am_arg" : 'X\(//\)$' \| \ + X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$_am_arg" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'`/stamp-h$_am_stamp_count + ;; + + :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5 +$as_echo "$as_me: executing $ac_file commands" >&6;} + ;; + esac + + + case $ac_file$ac_mode in + "depfiles":C) test x"$AMDEP_TRUE" != x"" || { + # Older Autoconf quotes --file arguments for eval, but not when files + # are listed without --file. Let's play safe and only enable the eval + # if we detect the quoting. + case $CONFIG_FILES in + *\'*) eval set x "$CONFIG_FILES" ;; + *) set x $CONFIG_FILES ;; + esac + shift + for mf + do + # Strip MF so we end up with the name of the file. + mf=`echo "$mf" | sed -e 's/:.*$//'` + # Check whether this is an Automake generated Makefile or not. + # We used to match only the files named 'Makefile.in', but + # some people rename them; so instead we look at the file content. + # Grep'ing the first line is not enough: some people post-process + # each Makefile.in and add a new line on top of each file to say so. + # Grep'ing the whole file is not good either: AIX grep has a line + # limit of 2048, but all sed's we know have understand at least 4000. + if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then + dirpart=`$as_dirname -- "$mf" || +$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$mf" : 'X\(//\)[^/]' \| \ + X"$mf" : 'X\(//\)$' \| \ + X"$mf" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$mf" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + else + continue + fi + # Extract the definition of DEPDIR, am__include, and am__quote + # from the Makefile without running 'make'. + DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` + test -z "$DEPDIR" && continue + am__include=`sed -n 's/^am__include = //p' < "$mf"` + test -z "$am__include" && continue + am__quote=`sed -n 's/^am__quote = //p' < "$mf"` + # Find all dependency output files, they are included files with + # $(DEPDIR) in their names. We invoke sed twice because it is the + # simplest approach to changing $(DEPDIR) to its actual value in the + # expansion. + for file in `sed -n " + s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ + sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do + # Make sure the directory exists. + test -f "$dirpart/$file" && continue + fdir=`$as_dirname -- "$file" || +$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$file" : 'X\(//\)[^/]' \| \ + X"$file" : 'X\(//\)$' \| \ + X"$file" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$file" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + as_dir=$dirpart/$fdir; as_fn_mkdir_p + # echo "creating $dirpart/$file" + echo '# dummy' > "$dirpart/$file" + done + done +} + ;; + "libtool":C) + + # See if we are running on zsh, and set the options which allow our + # commands through without removal of \ escapes. + if test -n "${ZSH_VERSION+set}" ; then + setopt NO_GLOB_SUBST + fi + + cfgfile="${ofile}T" + trap "$RM \"$cfgfile\"; exit 1" 1 2 15 + $RM "$cfgfile" + + cat <<_LT_EOF >> "$cfgfile" +#! $SHELL + +# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. +# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION +# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: +# NOTE: Changes made to this file will be lost: look at ltmain.sh. +# +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, +# 2006, 2007, 2008, 2009, 2010, 2011 Free Software +# Foundation, Inc. +# Written by Gordon Matzigkeit, 1996 +# +# This file is part of GNU Libtool. +# +# GNU Libtool is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation; either version 2 of +# the License, or (at your option) any later version. +# +# As a special exception to the GNU General Public License, +# if you distribute this file as part of a program or library that +# is built using GNU Libtool, you may include this file under the +# same distribution terms that you use for the rest of that program. +# +# GNU Libtool is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with GNU Libtool; see the file COPYING. If not, a copy +# can be downloaded from http://www.gnu.org/licenses/gpl.html, or +# obtained by writing to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + + +# The names of the tagged configurations supported by this script. +available_tags="" + +# ### BEGIN LIBTOOL CONFIG + +# Which release of libtool.m4 was used? +macro_version=$macro_version +macro_revision=$macro_revision + +# Whether or not to build shared libraries. +build_libtool_libs=$enable_shared + +# Whether or not to build static libraries. +build_old_libs=$enable_static + +# What type of objects to build. +pic_mode=$pic_mode + +# Whether or not to optimize for fast installation. +fast_install=$enable_fast_install + +# Shell to use when invoking shell scripts. +SHELL=$lt_SHELL + +# An echo program that protects backslashes. +ECHO=$lt_ECHO + +# The PATH separator for the build system. +PATH_SEPARATOR=$lt_PATH_SEPARATOR + +# The host system. +host_alias=$host_alias +host=$host +host_os=$host_os + +# The build system. +build_alias=$build_alias +build=$build +build_os=$build_os + +# A sed program that does not truncate output. +SED=$lt_SED + +# Sed that helps us avoid accidentally triggering echo(1) options like -n. +Xsed="\$SED -e 1s/^X//" + +# A grep program that handles long lines. +GREP=$lt_GREP + +# An ERE matcher. +EGREP=$lt_EGREP + +# A literal string matcher. +FGREP=$lt_FGREP + +# A BSD- or MS-compatible name lister. +NM=$lt_NM + +# Whether we need soft or hard links. +LN_S=$lt_LN_S + +# What is the maximum length of a command? +max_cmd_len=$max_cmd_len + +# Object file suffix (normally "o"). +objext=$ac_objext + +# Executable file suffix (normally ""). +exeext=$exeext + +# whether the shell understands "unset". +lt_unset=$lt_unset + +# turn spaces into newlines. +SP2NL=$lt_lt_SP2NL + +# turn newlines into spaces. +NL2SP=$lt_lt_NL2SP + +# convert \$build file names to \$host format. +to_host_file_cmd=$lt_cv_to_host_file_cmd + +# convert \$build files to toolchain format. +to_tool_file_cmd=$lt_cv_to_tool_file_cmd + +# An object symbol dumper. +OBJDUMP=$lt_OBJDUMP + +# 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 + +# How to find potential files when deplibs_check_method = "file_magic". +file_magic_glob=$lt_file_magic_glob + +# Find potential files using nocaseglob when deplibs_check_method = "file_magic". +want_nocaseglob=$lt_want_nocaseglob + +# DLL creation program. +DLLTOOL=$lt_DLLTOOL + +# Command to associate shared and link libraries. +sharedlib_from_linklib_cmd=$lt_sharedlib_from_linklib_cmd + +# The archiver. +AR=$lt_AR + +# Flags to create an archive. +AR_FLAGS=$lt_AR_FLAGS + +# How to feed a file listing to the archiver. +archiver_list_spec=$lt_archiver_list_spec + +# A symbol stripping program. +STRIP=$lt_STRIP + +# Commands used to install an old-style archive. +RANLIB=$lt_RANLIB +old_postinstall_cmds=$lt_old_postinstall_cmds +old_postuninstall_cmds=$lt_old_postuninstall_cmds + +# Whether to use a lock for old archive extraction. +lock_old_archive_extraction=$lock_old_archive_extraction + +# A C compiler. +LTCC=$lt_CC + +# LTCC compiler flags. +LTCFLAGS=$lt_CFLAGS + +# Take the output of nm and produce a listing of raw symbols and C names. +global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe + +# Transform the output of nm in a proper C declaration. +global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl + +# Transform the output of nm in a C name address pair. +global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address + +# Transform the output of nm in a C name address pair when lib prefix is needed. +global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix + +# Specify filename containing input files for \$NM. +nm_file_list_spec=$lt_nm_file_list_spec + +# The root where to search for dependent libraries,and in which our libraries should be installed. +lt_sysroot=$lt_sysroot + +# The name of the directory that contains temporary libtool files. +objdir=$objdir + +# Used to examine libraries when file_magic_cmd begins with "file". +MAGIC_CMD=$MAGIC_CMD + +# Must we lock files when doing compilation? +need_locks=$lt_need_locks + +# Manifest tool. +MANIFEST_TOOL=$lt_MANIFEST_TOOL + +# Tool to manipulate archived DWARF debug symbol files on Mac OS X. +DSYMUTIL=$lt_DSYMUTIL + +# Tool to change global to local symbols on Mac OS X. +NMEDIT=$lt_NMEDIT + +# Tool to manipulate fat objects and archives on Mac OS X. +LIPO=$lt_LIPO + +# ldd/readelf like tool for Mach-O binaries on Mac OS X. +OTOOL=$lt_OTOOL + +# ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4. +OTOOL64=$lt_OTOOL64 + +# Old archive suffix (normally "a"). +libext=$libext + +# Shared library suffix (normally ".so"). +shrext_cmds=$lt_shrext_cmds + +# The commands to extract the exported symbol list from a shared archive. +extract_expsyms_cmds=$lt_extract_expsyms_cmds + +# Variables whose values should be saved in libtool wrapper scripts and +# restored at link time. +variables_saved_for_relink=$lt_variables_saved_for_relink + +# Do we need the "lib" prefix for modules? +need_lib_prefix=$need_lib_prefix + +# Do we need a version for libraries? +need_version=$need_version + +# Library versioning type. +version_type=$version_type + +# Shared library runtime path variable. +runpath_var=$runpath_var + +# Shared library path variable. +shlibpath_var=$shlibpath_var + +# Is shlibpath searched before the hard-coded library search path? +shlibpath_overrides_runpath=$shlibpath_overrides_runpath + +# Format of library name prefix. +libname_spec=$lt_libname_spec + +# List of archive names. First name is the real one, the rest are links. +# The last name is the one that the linker finds with -lNAME +library_names_spec=$lt_library_names_spec + +# The coded name of the library, if different from the real name. +soname_spec=$lt_soname_spec + +# Permission mode override for installation of shared libraries. +install_override_mode=$lt_install_override_mode + +# Command to use after installation of a shared archive. +postinstall_cmds=$lt_postinstall_cmds + +# Command to use after uninstallation of a shared archive. +postuninstall_cmds=$lt_postuninstall_cmds + +# Commands used to finish a libtool library installation in a directory. +finish_cmds=$lt_finish_cmds + +# As "finish_cmds", except a single script fragment to be evaled but +# not shown. +finish_eval=$lt_finish_eval + +# Whether we should hardcode library paths into libraries. +hardcode_into_libs=$hardcode_into_libs + +# Compile-time system search path for libraries. +sys_lib_search_path_spec=$lt_sys_lib_search_path_spec + +# Run-time system search path for libraries. +sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec + +# Whether dlopen is supported. +dlopen_support=$enable_dlopen + +# Whether dlopen of programs is supported. +dlopen_self=$enable_dlopen_self + +# Whether dlopen of statically linked programs is supported. +dlopen_self_static=$enable_dlopen_self_static + +# Commands to strip libraries. +old_striplib=$lt_old_striplib +striplib=$lt_striplib + + +# The linker used to build libraries. +LD=$lt_LD + +# How to create reloadable object files. +reload_flag=$lt_reload_flag +reload_cmds=$lt_reload_cmds + +# Commands used to build an old-style archive. +old_archive_cmds=$lt_old_archive_cmds + +# A language specific compiler. +CC=$lt_compiler + +# Is the compiler the GNU compiler? +with_gcc=$GCC + +# Compiler flag to turn off builtin functions. +no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag + +# Additional compiler flags for building library objects. +pic_flag=$lt_lt_prog_compiler_pic + +# How to pass a linker flag through the compiler. +wl=$lt_lt_prog_compiler_wl + +# Compiler flag to prevent dynamic linking. +link_static_flag=$lt_lt_prog_compiler_static + +# Does compiler simultaneously support -c and -o options? +compiler_c_o=$lt_lt_cv_prog_compiler_c_o + +# Whether or not to add -lc for building shared libraries. +build_libtool_need_lc=$archive_cmds_need_lc + +# Whether or not to disallow shared libs when runtime libs are static. +allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes + +# Compiler flag to allow reflexive dlopens. +export_dynamic_flag_spec=$lt_export_dynamic_flag_spec + +# Compiler flag to generate shared objects directly from archives. +whole_archive_flag_spec=$lt_whole_archive_flag_spec + +# Whether the compiler copes with passing no objects directly. +compiler_needs_object=$lt_compiler_needs_object + +# Create an old-style archive from a shared archive. +old_archive_from_new_cmds=$lt_old_archive_from_new_cmds + +# Create a temporary old-style archive to link instead of a shared archive. +old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds + +# Commands used to build a shared archive. +archive_cmds=$lt_archive_cmds +archive_expsym_cmds=$lt_archive_expsym_cmds + +# Commands used to build a loadable module if different from building +# a shared archive. +module_cmds=$lt_module_cmds +module_expsym_cmds=$lt_module_expsym_cmds + +# Whether we are building with GNU ld or not. +with_gnu_ld=$lt_with_gnu_ld + +# Flag that allows shared libraries with undefined symbols to be built. +allow_undefined_flag=$lt_allow_undefined_flag + +# Flag that enforces no undefined symbols. +no_undefined_flag=$lt_no_undefined_flag + +# Flag to hardcode \$libdir into a binary during linking. +# This must work even if \$libdir does not exist +hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec + +# Whether we need a single "-rpath" flag with a separated argument. +hardcode_libdir_separator=$lt_hardcode_libdir_separator + +# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes +# DIR into the resulting binary. +hardcode_direct=$hardcode_direct + +# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes +# DIR into the resulting binary and the resulting library dependency is +# "absolute",i.e impossible to change by setting \${shlibpath_var} if the +# library is relocated. +hardcode_direct_absolute=$hardcode_direct_absolute + +# Set to "yes" if using the -LDIR flag during linking hardcodes DIR +# into the resulting binary. +hardcode_minus_L=$hardcode_minus_L + +# Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR +# into the resulting binary. +hardcode_shlibpath_var=$hardcode_shlibpath_var + +# Set to "yes" if building a shared library automatically hardcodes DIR +# into the library and all subsequent libraries and executables linked +# against it. +hardcode_automatic=$hardcode_automatic + +# Set to yes if linker adds runtime paths of dependent libraries +# to runtime path list. +inherit_rpath=$inherit_rpath + +# Whether libtool must link a program against all its dependency libraries. +link_all_deplibs=$link_all_deplibs + +# Set to "yes" if exported symbols are required. +always_export_symbols=$always_export_symbols + +# The commands to list exported symbols. +export_symbols_cmds=$lt_export_symbols_cmds + +# Symbols that should not be listed in the preloaded symbols. +exclude_expsyms=$lt_exclude_expsyms + +# Symbols that must always be exported. +include_expsyms=$lt_include_expsyms + +# Commands necessary for linking programs (against libraries) with templates. +prelink_cmds=$lt_prelink_cmds + +# Commands necessary for finishing linking programs. +postlink_cmds=$lt_postlink_cmds + +# Specify filename containing input files. +file_list_spec=$lt_file_list_spec + +# How to hardcode a shared library path into an executable. +hardcode_action=$hardcode_action + +# ### END LIBTOOL CONFIG + +_LT_EOF + + case $host_os in + aix3*) + cat <<\_LT_EOF >> "$cfgfile" +# AIX sometimes has problems with the GCC collect2 program. For some +# reason, if we set the COLLECT_NAMES environment variable, the problems +# vanish in a puff of smoke. +if test "X${COLLECT_NAMES+set}" != Xset; then + COLLECT_NAMES= + export COLLECT_NAMES +fi +_LT_EOF + ;; + esac + + +ltmain="$ac_aux_dir/ltmain.sh" + + + # We use sed instead of cat because bash on DJGPP gets confused if + # if finds mixed CR/LF and LF-only lines. Since sed operates in + # text mode, it properly converts lines to CR/LF. This bash problem + # is reportedly fixed, but why not run on old versions too? + sed '$q' "$ltmain" >> "$cfgfile" \ + || (rm -f "$cfgfile"; exit 1) + + if test x"$xsi_shell" = xyes; then + sed -e '/^func_dirname ()$/,/^} # func_dirname /c\ +func_dirname ()\ +{\ +\ case ${1} in\ +\ */*) func_dirname_result="${1%/*}${2}" ;;\ +\ * ) func_dirname_result="${3}" ;;\ +\ esac\ +} # Extended-shell func_dirname implementation' "$cfgfile" > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") +test 0 -eq $? || _lt_function_replace_fail=: + + + sed -e '/^func_basename ()$/,/^} # func_basename /c\ +func_basename ()\ +{\ +\ func_basename_result="${1##*/}"\ +} # Extended-shell func_basename implementation' "$cfgfile" > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") +test 0 -eq $? || _lt_function_replace_fail=: + + + sed -e '/^func_dirname_and_basename ()$/,/^} # func_dirname_and_basename /c\ +func_dirname_and_basename ()\ +{\ +\ case ${1} in\ +\ */*) func_dirname_result="${1%/*}${2}" ;;\ +\ * ) func_dirname_result="${3}" ;;\ +\ esac\ +\ func_basename_result="${1##*/}"\ +} # Extended-shell func_dirname_and_basename implementation' "$cfgfile" > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") +test 0 -eq $? || _lt_function_replace_fail=: + + + sed -e '/^func_stripname ()$/,/^} # func_stripname /c\ +func_stripname ()\ +{\ +\ # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are\ +\ # positional parameters, so assign one to ordinary parameter first.\ +\ func_stripname_result=${3}\ +\ func_stripname_result=${func_stripname_result#"${1}"}\ +\ func_stripname_result=${func_stripname_result%"${2}"}\ +} # Extended-shell func_stripname implementation' "$cfgfile" > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") +test 0 -eq $? || _lt_function_replace_fail=: + + + sed -e '/^func_split_long_opt ()$/,/^} # func_split_long_opt /c\ +func_split_long_opt ()\ +{\ +\ func_split_long_opt_name=${1%%=*}\ +\ func_split_long_opt_arg=${1#*=}\ +} # Extended-shell func_split_long_opt implementation' "$cfgfile" > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") +test 0 -eq $? || _lt_function_replace_fail=: + + + sed -e '/^func_split_short_opt ()$/,/^} # func_split_short_opt /c\ +func_split_short_opt ()\ +{\ +\ func_split_short_opt_arg=${1#??}\ +\ func_split_short_opt_name=${1%"$func_split_short_opt_arg"}\ +} # Extended-shell func_split_short_opt implementation' "$cfgfile" > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") +test 0 -eq $? || _lt_function_replace_fail=: + + + sed -e '/^func_lo2o ()$/,/^} # func_lo2o /c\ +func_lo2o ()\ +{\ +\ case ${1} in\ +\ *.lo) func_lo2o_result=${1%.lo}.${objext} ;;\ +\ *) func_lo2o_result=${1} ;;\ +\ esac\ +} # Extended-shell func_lo2o implementation' "$cfgfile" > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") +test 0 -eq $? || _lt_function_replace_fail=: + + + sed -e '/^func_xform ()$/,/^} # func_xform /c\ +func_xform ()\ +{\ + func_xform_result=${1%.*}.lo\ +} # Extended-shell func_xform implementation' "$cfgfile" > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") +test 0 -eq $? || _lt_function_replace_fail=: + + + sed -e '/^func_arith ()$/,/^} # func_arith /c\ +func_arith ()\ +{\ + func_arith_result=$(( $* ))\ +} # Extended-shell func_arith implementation' "$cfgfile" > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") +test 0 -eq $? || _lt_function_replace_fail=: + + + sed -e '/^func_len ()$/,/^} # func_len /c\ +func_len ()\ +{\ + func_len_result=${#1}\ +} # Extended-shell func_len implementation' "$cfgfile" > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") +test 0 -eq $? || _lt_function_replace_fail=: + +fi + +if test x"$lt_shell_append" = xyes; then + sed -e '/^func_append ()$/,/^} # func_append /c\ +func_append ()\ +{\ + eval "${1}+=\\${2}"\ +} # Extended-shell func_append implementation' "$cfgfile" > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") +test 0 -eq $? || _lt_function_replace_fail=: + + + sed -e '/^func_append_quoted ()$/,/^} # func_append_quoted /c\ +func_append_quoted ()\ +{\ +\ func_quote_for_eval "${2}"\ +\ eval "${1}+=\\\\ \\$func_quote_for_eval_result"\ +} # Extended-shell func_append_quoted implementation' "$cfgfile" > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") +test 0 -eq $? || _lt_function_replace_fail=: + + + # Save a `func_append' function call where possible by direct use of '+=' + sed -e 's%func_append \([a-zA-Z_]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") + test 0 -eq $? || _lt_function_replace_fail=: +else + # Save a `func_append' function call even when '+=' is not available + sed -e 's%func_append \([a-zA-Z_]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") + test 0 -eq $? || _lt_function_replace_fail=: +fi + +if test x"$_lt_function_replace_fail" = x":"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unable to substitute extended shell functions in $ofile" >&5 +$as_echo "$as_me: WARNING: Unable to substitute extended shell functions in $ofile" >&2;} +fi + + + mv -f "$cfgfile" "$ofile" || + (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") + chmod +x "$ofile" + + ;; + + esac +done # for ac_tag + + +as_fn_exit 0 +_ACEOF +ac_clean_files=$ac_clean_files_save + +test $ac_write_fail = 0 || + as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5 + + +# configure is writing to config.log, and then calls config.status. +# config.status does its own redirection, appending to config.log. +# Unfortunately, on DOS this fails, as config.log is still kept open +# by configure, so config.status won't be able to write to it; its +# output is simply discarded. So we exec the FD to /dev/null, +# effectively closing config.log, so it can be properly (re)opened and +# appended to by config.status. When coming back to configure, we +# need to make the FD available again. +if test "$no_create" != yes; then + ac_cs_success=: + ac_config_status_args= + test "$silent" = yes && + ac_config_status_args="$ac_config_status_args --quiet" + exec 5>/dev/null + $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false + exec 5>>config.log + # Use ||, not &&, to avoid exiting from the if with $? = 1, which + # would make configure fail if this is the last instruction. + $ac_cs_success || as_fn_exit 1 +fi +if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 +$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} +fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking exemples construits" >&5 +$as_echo_n "checking exemples construits... " >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: ${exemples}" >&5 +$as_echo "${exemples}" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking support xpm" >&5 +$as_echo_n "checking support xpm... " >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: ${have_xpm}" >&5 +$as_echo "${have_xpm}" >&6; } diff --git a/bibliotheque-graphique-iut-1.1/configure.ac b/bibliotheque-graphique-iut-1.1/configure.ac new file mode 100644 index 0000000..7db43da --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/configure.ac @@ -0,0 +1,72 @@ +AC_INIT([bibliotheque graphique iut], [1.1], [monnerat@u-pec.fr]) +AC_CONFIG_MACRO_DIR([m4]) +AM_INIT_AUTOMAKE([foreign -Wall -Werror]) +AC_PROG_CC +AM_PROG_AR +AC_PROG_LIBTOOL + +if test "x$prefix" = "xNONE" ; then + prefix="/usr" + fi +if test "x$exec_prefix" = "xNONE" ; then + exec_prefix=$prefix +fi +if test "x$datadir" = "xNONE" ; then + datadir="/usr/share/" +fi + + +PREFIX=$prefix +EXEMPLES_IMAGES_DIR="${datadir}/libgraph/images/" +AC_SUBST(EXEMPLES_IMAGES_DIR) +AC_SUBST(PREFIX) + +AC_ARG_ENABLE( + exemples, + AS_HELP_STRING( + [--enable-exemples], + [construit les exemples (default is no)] + ), + [ if test "x$enableval" = "xyes" ; then + exemples="yes" + else + exemples="no" + fi + ], + [ exemples="no" ] +) + +have_xpm=no +AC_ARG_ENABLE(xpm, + AC_HELP_STRING([--enable-xpm], [enable xpm support @<:@default=detect@:>@]), + [want_xpm=$enableval], + [want_xpm=auto] +) +AC_CHECK_HEADERS(X11/Xlib.h,, AC_MSG_ERROR([Cannot find Xlib.h. Make sure your CFLAGS environment variable contains include lines for the location of this file])) +AC_CHECK_HEADERS(X11/cursorfont.h,, AC_MSG_ERROR([Cannot find cursorfont.h. Make sure your CFLAGS environment variable contains include lines for the location of this file])) +AC_CHECK_HEADERS(X11/Xatom.h,, AC_MSG_ERROR([Cannot find Xatom.h. Make sure your CFLAGS environment variable contains include lines for the location of this file])) +AC_CHECK_HEADERS(X11/Xutil.h,, AC_MSG_ERROR([Cannot find Xutil.h. Make sure your CFLAGS environment variable contains include lines for the location of this file])) +AC_CHECK_HEADERS(X11/keysym.h,, AC_MSG_ERROR([Cannot find keysym.h. Make sure your CFLAGS environment variable contains include lines for the location of this file])) + + +if test "x$want_xpm" != "xno" ; then + AC_CHECK_HEADERS(X11/xpm.h, [ + LIBS="$LIBS -lXpm" + have_xpm=yes + AC_DEFINE(HAVE_XPM, 1, [XPM Support des images xpm ])]) + if test "x$want_xpm$have_xpm" = "xyesno" ; then + AC_MSG_ERROR([XPM support est demandé mais pas trouvé]) + fi +fi +#AC_CHECK_HEADERS(X11/xpm.h,, AC_MSG_ERROR([Cannot find xpm.h. Make sure your CFLAGS environment variable contains include lines for the location of this file])) + + +AC_CONFIG_HEADERS([config.h]) +AM_CONDITIONAL([COND_EXPLES], [test "$exemples" = yes]) + +AC_CONFIG_FILES([Makefile src/Makefile src/lib/Makefile src/include/Makefile src/exemples/Makefile]) +AC_OUTPUT +AC_MSG_CHECKING([exemples construits]) +AC_MSG_RESULT([${exemples}]) +AC_MSG_CHECKING([support xpm]) +AC_MSG_RESULT([${have_xpm}]) diff --git a/bibliotheque-graphique-iut-1.1/depcomp b/bibliotheque-graphique-iut-1.1/depcomp new file mode 100755 index 0000000..debb6ff --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/depcomp @@ -0,0 +1,707 @@ +#! /bin/sh +# depcomp - compile a program generating dependencies as side-effects + +scriptversion=2012-03-27.16; # UTC + +# Copyright (C) 1999-2012 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program that contains a +# configuration script generated by Autoconf, you may include it under +# the same distribution terms that you use for the rest of that program. + +# Originally written by Alexandre Oliva . + +case $1 in + '') + echo "$0: No command. Try '$0 --help' for more information." 1>&2 + exit 1; + ;; + -h | --h*) + cat <<\EOF +Usage: depcomp [--help] [--version] PROGRAM [ARGS] + +Run PROGRAMS ARGS to compile a file, generating dependencies +as side-effects. + +Environment variables: + depmode Dependency tracking mode. + source Source file read by 'PROGRAMS ARGS'. + object Object file output by 'PROGRAMS ARGS'. + DEPDIR directory where to store dependencies. + depfile Dependency file to output. + tmpdepfile Temporary file to use when outputting dependencies. + libtool Whether libtool is used (yes/no). + +Report bugs to . +EOF + exit $? + ;; + -v | --v*) + echo "depcomp $scriptversion" + exit $? + ;; +esac + +# A tabulation character. +tab=' ' +# A newline character. +nl=' +' + +if test -z "$depmode" || test -z "$source" || test -z "$object"; then + echo "depcomp: Variables source, object and depmode must be set" 1>&2 + exit 1 +fi + +# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po. +depfile=${depfile-`echo "$object" | + sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`} +tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`} + +rm -f "$tmpdepfile" + +# Some modes work just like other modes, but use different flags. We +# parameterize here, but still list the modes in the big case below, +# to make depend.m4 easier to write. Note that we *cannot* use a case +# here, because this file can only contain one case statement. +if test "$depmode" = hp; then + # HP compiler uses -M and no extra arg. + gccflag=-M + depmode=gcc +fi + +if test "$depmode" = dashXmstdout; then + # This is just like dashmstdout with a different argument. + dashmflag=-xM + depmode=dashmstdout +fi + +cygpath_u="cygpath -u -f -" +if test "$depmode" = msvcmsys; then + # This is just like msvisualcpp but w/o cygpath translation. + # Just convert the backslash-escaped backslashes to single forward + # slashes to satisfy depend.m4 + cygpath_u='sed s,\\\\,/,g' + depmode=msvisualcpp +fi + +if test "$depmode" = msvc7msys; then + # This is just like msvc7 but w/o cygpath translation. + # Just convert the backslash-escaped backslashes to single forward + # slashes to satisfy depend.m4 + cygpath_u='sed s,\\\\,/,g' + depmode=msvc7 +fi + +if test "$depmode" = xlc; then + # IBM C/C++ Compilers xlc/xlC can output gcc-like dependency informations. + gccflag=-qmakedep=gcc,-MF + depmode=gcc +fi + +case "$depmode" in +gcc3) +## gcc 3 implements dependency tracking that does exactly what +## we want. Yay! Note: for some reason libtool 1.4 doesn't like +## it if -MD -MP comes after the -MF stuff. Hmm. +## Unfortunately, FreeBSD c89 acceptance of flags depends upon +## the command line argument order; so add the flags where they +## appear in depend2.am. Note that the slowdown incurred here +## affects only configure: in makefiles, %FASTDEP% shortcuts this. + for arg + do + case $arg in + -c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;; + *) set fnord "$@" "$arg" ;; + esac + shift # fnord + shift # $arg + done + "$@" + stat=$? + if test $stat -eq 0; then : + else + rm -f "$tmpdepfile" + exit $stat + fi + mv "$tmpdepfile" "$depfile" + ;; + +gcc) +## There are various ways to get dependency output from gcc. Here's +## why we pick this rather obscure method: +## - Don't want to use -MD because we'd like the dependencies to end +## up in a subdir. Having to rename by hand is ugly. +## (We might end up doing this anyway to support other compilers.) +## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like +## -MM, not -M (despite what the docs say). +## - Using -M directly means running the compiler twice (even worse +## than renaming). + if test -z "$gccflag"; then + gccflag=-MD, + fi + "$@" -Wp,"$gccflag$tmpdepfile" + stat=$? + if test $stat -eq 0; then : + else + rm -f "$tmpdepfile" + exit $stat + fi + rm -f "$depfile" + echo "$object : \\" > "$depfile" + alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz +## The second -e expression handles DOS-style file names with drive letters. + sed -e 's/^[^:]*: / /' \ + -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile" +## This next piece of magic avoids the "deleted header file" problem. +## The problem is that when a header file which appears in a .P file +## is deleted, the dependency causes make to die (because there is +## typically no way to rebuild the header). We avoid this by adding +## dummy dependencies for each header file. Too bad gcc doesn't do +## this for us directly. + tr ' ' "$nl" < "$tmpdepfile" | +## Some versions of gcc put a space before the ':'. On the theory +## that the space means something, we add a space to the output as +## well. hp depmode also adds that space, but also prefixes the VPATH +## to the object. Take care to not repeat it in the output. +## Some versions of the HPUX 10.20 sed can't process this invocation +## correctly. Breaking it into two sed invocations is a workaround. + sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \ + | sed -e 's/$/ :/' >> "$depfile" + rm -f "$tmpdepfile" + ;; + +hp) + # This case exists only to let depend.m4 do its work. It works by + # looking at the text of this script. This case will never be run, + # since it is checked for above. + exit 1 + ;; + +sgi) + if test "$libtool" = yes; then + "$@" "-Wp,-MDupdate,$tmpdepfile" + else + "$@" -MDupdate "$tmpdepfile" + fi + stat=$? + if test $stat -eq 0; then : + else + rm -f "$tmpdepfile" + exit $stat + fi + rm -f "$depfile" + + if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files + echo "$object : \\" > "$depfile" + + # Clip off the initial element (the dependent). Don't try to be + # clever and replace this with sed code, as IRIX sed won't handle + # lines with more than a fixed number of characters (4096 in + # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines; + # the IRIX cc adds comments like '#:fec' to the end of the + # dependency line. + tr ' ' "$nl" < "$tmpdepfile" \ + | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \ + tr "$nl" ' ' >> "$depfile" + echo >> "$depfile" + + # The second pass generates a dummy entry for each header file. + tr ' ' "$nl" < "$tmpdepfile" \ + | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \ + >> "$depfile" + else + # The sourcefile does not contain any dependencies, so just + # store a dummy comment line, to avoid errors with the Makefile + # "include basename.Plo" scheme. + echo "#dummy" > "$depfile" + fi + rm -f "$tmpdepfile" + ;; + +xlc) + # This case exists only to let depend.m4 do its work. It works by + # looking at the text of this script. This case will never be run, + # since it is checked for above. + exit 1 + ;; + +aix) + # The C for AIX Compiler uses -M and outputs the dependencies + # in a .u file. In older versions, this file always lives in the + # current directory. Also, the AIX compiler puts '$object:' at the + # start of each line; $object doesn't have directory information. + # Version 6 uses the directory in both cases. + dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` + test "x$dir" = "x$object" && dir= + base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'` + if test "$libtool" = yes; then + tmpdepfile1=$dir$base.u + tmpdepfile2=$base.u + tmpdepfile3=$dir.libs/$base.u + "$@" -Wc,-M + else + tmpdepfile1=$dir$base.u + tmpdepfile2=$dir$base.u + tmpdepfile3=$dir$base.u + "$@" -M + fi + stat=$? + + if test $stat -eq 0; then : + else + rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" + exit $stat + fi + + for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" + do + test -f "$tmpdepfile" && break + done + if test -f "$tmpdepfile"; then + # Each line is of the form 'foo.o: dependent.h'. + # Do two passes, one to just change these to + # '$object: dependent.h' and one to simply 'dependent.h:'. + sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile" + sed -e 's,^.*\.[a-z]*:['"$tab"' ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" + else + # The sourcefile does not contain any dependencies, so just + # store a dummy comment line, to avoid errors with the Makefile + # "include basename.Plo" scheme. + echo "#dummy" > "$depfile" + fi + rm -f "$tmpdepfile" + ;; + +icc) + # Intel's C compiler anf tcc (Tiny C Compiler) understand '-MD -MF file'. + # However on + # $CC -MD -MF foo.d -c -o sub/foo.o sub/foo.c + # ICC 7.0 will fill foo.d with something like + # foo.o: sub/foo.c + # foo.o: sub/foo.h + # which is wrong. We want + # sub/foo.o: sub/foo.c + # sub/foo.o: sub/foo.h + # sub/foo.c: + # sub/foo.h: + # ICC 7.1 will output + # foo.o: sub/foo.c sub/foo.h + # and will wrap long lines using '\': + # foo.o: sub/foo.c ... \ + # sub/foo.h ... \ + # ... + # tcc 0.9.26 (FIXME still under development at the moment of writing) + # will emit a similar output, but also prepend the continuation lines + # with horizontal tabulation characters. + "$@" -MD -MF "$tmpdepfile" + stat=$? + if test $stat -eq 0; then : + else + rm -f "$tmpdepfile" + exit $stat + fi + rm -f "$depfile" + # Each line is of the form 'foo.o: dependent.h', + # or 'foo.o: dep1.h dep2.h \', or ' dep3.h dep4.h \'. + # Do two passes, one to just change these to + # '$object: dependent.h' and one to simply 'dependent.h:'. + sed -e "s/^[ $tab][ $tab]*/ /" -e "s,^[^:]*:,$object :," \ + < "$tmpdepfile" > "$depfile" + sed ' + s/[ '"$tab"'][ '"$tab"']*/ /g + s/^ *// + s/ *\\*$// + s/^[^:]*: *// + /^$/d + /:$/d + s/$/ :/ + ' < "$tmpdepfile" >> "$depfile" + rm -f "$tmpdepfile" + ;; + +hp2) + # The "hp" stanza above does not work with aCC (C++) and HP's ia64 + # compilers, which have integrated preprocessors. The correct option + # to use with these is +Maked; it writes dependencies to a file named + # 'foo.d', which lands next to the object file, wherever that + # happens to be. + # Much of this is similar to the tru64 case; see comments there. + dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` + test "x$dir" = "x$object" && dir= + base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'` + if test "$libtool" = yes; then + tmpdepfile1=$dir$base.d + tmpdepfile2=$dir.libs/$base.d + "$@" -Wc,+Maked + else + tmpdepfile1=$dir$base.d + tmpdepfile2=$dir$base.d + "$@" +Maked + fi + stat=$? + if test $stat -eq 0; then : + else + rm -f "$tmpdepfile1" "$tmpdepfile2" + exit $stat + fi + + for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" + do + test -f "$tmpdepfile" && break + done + if test -f "$tmpdepfile"; then + sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile" + # Add 'dependent.h:' lines. + sed -ne '2,${ + s/^ *// + s/ \\*$// + s/$/:/ + p + }' "$tmpdepfile" >> "$depfile" + else + echo "#dummy" > "$depfile" + fi + rm -f "$tmpdepfile" "$tmpdepfile2" + ;; + +tru64) + # The Tru64 compiler uses -MD to generate dependencies as a side + # effect. 'cc -MD -o foo.o ...' puts the dependencies into 'foo.o.d'. + # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put + # dependencies in 'foo.d' instead, so we check for that too. + # Subdirectories are respected. + dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` + test "x$dir" = "x$object" && dir= + base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'` + + if test "$libtool" = yes; then + # With Tru64 cc, shared objects can also be used to make a + # static library. This mechanism is used in libtool 1.4 series to + # handle both shared and static libraries in a single compilation. + # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d. + # + # With libtool 1.5 this exception was removed, and libtool now + # generates 2 separate objects for the 2 libraries. These two + # compilations output dependencies in $dir.libs/$base.o.d and + # in $dir$base.o.d. We have to check for both files, because + # one of the two compilations can be disabled. We should prefer + # $dir$base.o.d over $dir.libs/$base.o.d because the latter is + # automatically cleaned when .libs/ is deleted, while ignoring + # the former would cause a distcleancheck panic. + tmpdepfile1=$dir.libs/$base.lo.d # libtool 1.4 + tmpdepfile2=$dir$base.o.d # libtool 1.5 + tmpdepfile3=$dir.libs/$base.o.d # libtool 1.5 + tmpdepfile4=$dir.libs/$base.d # Compaq CCC V6.2-504 + "$@" -Wc,-MD + else + tmpdepfile1=$dir$base.o.d + tmpdepfile2=$dir$base.d + tmpdepfile3=$dir$base.d + tmpdepfile4=$dir$base.d + "$@" -MD + fi + + stat=$? + if test $stat -eq 0; then : + else + rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4" + exit $stat + fi + + for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4" + do + test -f "$tmpdepfile" && break + done + if test -f "$tmpdepfile"; then + sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile" + sed -e 's,^.*\.[a-z]*:['"$tab"' ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" + else + echo "#dummy" > "$depfile" + fi + rm -f "$tmpdepfile" + ;; + +msvc7) + if test "$libtool" = yes; then + showIncludes=-Wc,-showIncludes + else + showIncludes=-showIncludes + fi + "$@" $showIncludes > "$tmpdepfile" + stat=$? + grep -v '^Note: including file: ' "$tmpdepfile" + if test "$stat" = 0; then : + else + rm -f "$tmpdepfile" + exit $stat + fi + rm -f "$depfile" + echo "$object : \\" > "$depfile" + # The first sed program below extracts the file names and escapes + # backslashes for cygpath. The second sed program outputs the file + # name when reading, but also accumulates all include files in the + # hold buffer in order to output them again at the end. This only + # works with sed implementations that can handle large buffers. + sed < "$tmpdepfile" -n ' +/^Note: including file: *\(.*\)/ { + s//\1/ + s/\\/\\\\/g + p +}' | $cygpath_u | sort -u | sed -n ' +s/ /\\ /g +s/\(.*\)/'"$tab"'\1 \\/p +s/.\(.*\) \\/\1:/ +H +$ { + s/.*/'"$tab"'/ + G + p +}' >> "$depfile" + rm -f "$tmpdepfile" + ;; + +msvc7msys) + # This case exists only to let depend.m4 do its work. It works by + # looking at the text of this script. This case will never be run, + # since it is checked for above. + exit 1 + ;; + +#nosideeffect) + # This comment above is used by automake to tell side-effect + # dependency tracking mechanisms from slower ones. + +dashmstdout) + # Important note: in order to support this mode, a compiler *must* + # always write the preprocessed file to stdout, regardless of -o. + "$@" || exit $? + + # Remove the call to Libtool. + if test "$libtool" = yes; then + while test "X$1" != 'X--mode=compile'; do + shift + done + shift + fi + + # Remove '-o $object'. + IFS=" " + for arg + do + case $arg in + -o) + shift + ;; + $object) + shift + ;; + *) + set fnord "$@" "$arg" + shift # fnord + shift # $arg + ;; + esac + done + + test -z "$dashmflag" && dashmflag=-M + # Require at least two characters before searching for ':' + # in the target name. This is to cope with DOS-style filenames: + # a dependency such as 'c:/foo/bar' could be seen as target 'c' otherwise. + "$@" $dashmflag | + sed 's:^['"$tab"' ]*[^:'"$tab"' ][^:][^:]*\:['"$tab"' ]*:'"$object"'\: :' > "$tmpdepfile" + rm -f "$depfile" + cat < "$tmpdepfile" > "$depfile" + tr ' ' "$nl" < "$tmpdepfile" | \ +## Some versions of the HPUX 10.20 sed can't process this invocation +## correctly. Breaking it into two sed invocations is a workaround. + sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" + rm -f "$tmpdepfile" + ;; + +dashXmstdout) + # This case only exists to satisfy depend.m4. It is never actually + # run, as this mode is specially recognized in the preamble. + exit 1 + ;; + +makedepend) + "$@" || exit $? + # Remove any Libtool call + if test "$libtool" = yes; then + while test "X$1" != 'X--mode=compile'; do + shift + done + shift + fi + # X makedepend + shift + cleared=no eat=no + for arg + do + case $cleared in + no) + set ""; shift + cleared=yes ;; + esac + if test $eat = yes; then + eat=no + continue + fi + case "$arg" in + -D*|-I*) + set fnord "$@" "$arg"; shift ;; + # Strip any option that makedepend may not understand. Remove + # the object too, otherwise makedepend will parse it as a source file. + -arch) + eat=yes ;; + -*|$object) + ;; + *) + set fnord "$@" "$arg"; shift ;; + esac + done + obj_suffix=`echo "$object" | sed 's/^.*\././'` + touch "$tmpdepfile" + ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@" + rm -f "$depfile" + # makedepend may prepend the VPATH from the source file name to the object. + # No need to regex-escape $object, excess matching of '.' is harmless. + sed "s|^.*\($object *:\)|\1|" "$tmpdepfile" > "$depfile" + sed '1,2d' "$tmpdepfile" | tr ' ' "$nl" | \ +## Some versions of the HPUX 10.20 sed can't process this invocation +## correctly. Breaking it into two sed invocations is a workaround. + sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" + rm -f "$tmpdepfile" "$tmpdepfile".bak + ;; + +cpp) + # Important note: in order to support this mode, a compiler *must* + # always write the preprocessed file to stdout. + "$@" || exit $? + + # Remove the call to Libtool. + if test "$libtool" = yes; then + while test "X$1" != 'X--mode=compile'; do + shift + done + shift + fi + + # Remove '-o $object'. + IFS=" " + for arg + do + case $arg in + -o) + shift + ;; + $object) + shift + ;; + *) + set fnord "$@" "$arg" + shift # fnord + shift # $arg + ;; + esac + done + + "$@" -E | + sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \ + -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' | + sed '$ s: \\$::' > "$tmpdepfile" + rm -f "$depfile" + echo "$object : \\" > "$depfile" + cat < "$tmpdepfile" >> "$depfile" + sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile" + rm -f "$tmpdepfile" + ;; + +msvisualcpp) + # Important note: in order to support this mode, a compiler *must* + # always write the preprocessed file to stdout. + "$@" || exit $? + + # Remove the call to Libtool. + if test "$libtool" = yes; then + while test "X$1" != 'X--mode=compile'; do + shift + done + shift + fi + + IFS=" " + for arg + do + case "$arg" in + -o) + shift + ;; + $object) + shift + ;; + "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI") + set fnord "$@" + shift + shift + ;; + *) + set fnord "$@" "$arg" + shift + shift + ;; + esac + done + "$@" -E 2>/dev/null | + sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile" + rm -f "$depfile" + echo "$object : \\" > "$depfile" + sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::'"$tab"'\1 \\:p' >> "$depfile" + echo "$tab" >> "$depfile" + sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile" + rm -f "$tmpdepfile" + ;; + +msvcmsys) + # This case exists only to let depend.m4 do its work. It works by + # looking at the text of this script. This case will never be run, + # since it is checked for above. + exit 1 + ;; + +none) + exec "$@" + ;; + +*) + echo "Unknown depmode $depmode" 1>&2 + exit 1 + ;; +esac + +exit 0 + +# Local Variables: +# mode: shell-script +# sh-indentation: 2 +# eval: (add-hook 'write-file-hooks 'time-stamp) +# time-stamp-start: "scriptversion=" +# time-stamp-format: "%:y-%02m-%02d.%02H" +# time-stamp-time-zone: "UTC" +# time-stamp-end: "; # UTC" +# End: diff --git a/bibliotheque-graphique-iut-1.1/install-sh b/bibliotheque-graphique-iut-1.1/install-sh new file mode 100755 index 0000000..377bb86 --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/install-sh @@ -0,0 +1,527 @@ +#!/bin/sh +# install - install a program, script, or datafile + +scriptversion=2011-11-20.07; # UTC + +# This originates from X11R5 (mit/util/scripts/install.sh), which was +# later released in X11R6 (xc/config/util/install.sh) with the +# following copyright and license. +# +# Copyright (C) 1994 X Consortium +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to +# deal in the Software without restriction, including without limitation the +# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +# sell copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC- +# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +# +# Except as contained in this notice, the name of the X Consortium shall not +# be used in advertising or otherwise to promote the sale, use or other deal- +# ings in this Software without prior written authorization from the X Consor- +# tium. +# +# +# FSF changes to this file are in the public domain. +# +# Calling this script install-sh is preferred over install.sh, to prevent +# 'make' implicit rules from creating a file called install from it +# when there is no Makefile. +# +# This script is compatible with the BSD install script, but was written +# from scratch. + +nl=' +' +IFS=" "" $nl" + +# set DOITPROG to echo to test this script + +# Don't use :- since 4.3BSD and earlier shells don't like it. +doit=${DOITPROG-} +if test -z "$doit"; then + doit_exec=exec +else + doit_exec=$doit +fi + +# Put in absolute file names if you don't have them in your path; +# or use environment vars. + +chgrpprog=${CHGRPPROG-chgrp} +chmodprog=${CHMODPROG-chmod} +chownprog=${CHOWNPROG-chown} +cmpprog=${CMPPROG-cmp} +cpprog=${CPPROG-cp} +mkdirprog=${MKDIRPROG-mkdir} +mvprog=${MVPROG-mv} +rmprog=${RMPROG-rm} +stripprog=${STRIPPROG-strip} + +posix_glob='?' +initialize_posix_glob=' + test "$posix_glob" != "?" || { + if (set -f) 2>/dev/null; then + posix_glob= + else + posix_glob=: + fi + } +' + +posix_mkdir= + +# Desired mode of installed file. +mode=0755 + +chgrpcmd= +chmodcmd=$chmodprog +chowncmd= +mvcmd=$mvprog +rmcmd="$rmprog -f" +stripcmd= + +src= +dst= +dir_arg= +dst_arg= + +copy_on_change=false +no_target_directory= + +usage="\ +Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE + or: $0 [OPTION]... SRCFILES... DIRECTORY + or: $0 [OPTION]... -t DIRECTORY SRCFILES... + or: $0 [OPTION]... -d DIRECTORIES... + +In the 1st form, copy SRCFILE to DSTFILE. +In the 2nd and 3rd, copy all SRCFILES to DIRECTORY. +In the 4th, create DIRECTORIES. + +Options: + --help display this help and exit. + --version display version info and exit. + + -c (ignored) + -C install only if different (preserve the last data modification time) + -d create directories instead of installing files. + -g GROUP $chgrpprog installed files to GROUP. + -m MODE $chmodprog installed files to MODE. + -o USER $chownprog installed files to USER. + -s $stripprog installed files. + -t DIRECTORY install into DIRECTORY. + -T report an error if DSTFILE is a directory. + +Environment variables override the default commands: + CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG + RMPROG STRIPPROG +" + +while test $# -ne 0; do + case $1 in + -c) ;; + + -C) copy_on_change=true;; + + -d) dir_arg=true;; + + -g) chgrpcmd="$chgrpprog $2" + shift;; + + --help) echo "$usage"; exit $?;; + + -m) mode=$2 + case $mode in + *' '* | *' '* | *' +'* | *'*'* | *'?'* | *'['*) + echo "$0: invalid mode: $mode" >&2 + exit 1;; + esac + shift;; + + -o) chowncmd="$chownprog $2" + shift;; + + -s) stripcmd=$stripprog;; + + -t) dst_arg=$2 + # Protect names problematic for 'test' and other utilities. + case $dst_arg in + -* | [=\(\)!]) dst_arg=./$dst_arg;; + esac + shift;; + + -T) no_target_directory=true;; + + --version) echo "$0 $scriptversion"; exit $?;; + + --) shift + break;; + + -*) echo "$0: invalid option: $1" >&2 + exit 1;; + + *) break;; + esac + shift +done + +if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then + # When -d is used, all remaining arguments are directories to create. + # When -t is used, the destination is already specified. + # Otherwise, the last argument is the destination. Remove it from $@. + for arg + do + if test -n "$dst_arg"; then + # $@ is not empty: it contains at least $arg. + set fnord "$@" "$dst_arg" + shift # fnord + fi + shift # arg + dst_arg=$arg + # Protect names problematic for 'test' and other utilities. + case $dst_arg in + -* | [=\(\)!]) dst_arg=./$dst_arg;; + esac + done +fi + +if test $# -eq 0; then + if test -z "$dir_arg"; then + echo "$0: no input file specified." >&2 + exit 1 + fi + # It's OK to call 'install-sh -d' without argument. + # This can happen when creating conditional directories. + exit 0 +fi + +if test -z "$dir_arg"; then + do_exit='(exit $ret); exit $ret' + trap "ret=129; $do_exit" 1 + trap "ret=130; $do_exit" 2 + trap "ret=141; $do_exit" 13 + trap "ret=143; $do_exit" 15 + + # Set umask so as not to create temps with too-generous modes. + # However, 'strip' requires both read and write access to temps. + case $mode in + # Optimize common cases. + *644) cp_umask=133;; + *755) cp_umask=22;; + + *[0-7]) + if test -z "$stripcmd"; then + u_plus_rw= + else + u_plus_rw='% 200' + fi + cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;; + *) + if test -z "$stripcmd"; then + u_plus_rw= + else + u_plus_rw=,u+rw + fi + cp_umask=$mode$u_plus_rw;; + esac +fi + +for src +do + # Protect names problematic for 'test' and other utilities. + case $src in + -* | [=\(\)!]) src=./$src;; + esac + + if test -n "$dir_arg"; then + dst=$src + dstdir=$dst + test -d "$dstdir" + dstdir_status=$? + else + + # Waiting for this to be detected by the "$cpprog $src $dsttmp" command + # might cause directories to be created, which would be especially bad + # if $src (and thus $dsttmp) contains '*'. + if test ! -f "$src" && test ! -d "$src"; then + echo "$0: $src does not exist." >&2 + exit 1 + fi + + if test -z "$dst_arg"; then + echo "$0: no destination specified." >&2 + exit 1 + fi + dst=$dst_arg + + # If destination is a directory, append the input filename; won't work + # if double slashes aren't ignored. + if test -d "$dst"; then + if test -n "$no_target_directory"; then + echo "$0: $dst_arg: Is a directory" >&2 + exit 1 + fi + dstdir=$dst + dst=$dstdir/`basename "$src"` + dstdir_status=0 + else + # Prefer dirname, but fall back on a substitute if dirname fails. + dstdir=` + (dirname "$dst") 2>/dev/null || + expr X"$dst" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$dst" : 'X\(//\)[^/]' \| \ + X"$dst" : 'X\(//\)$' \| \ + X"$dst" : 'X\(/\)' \| . 2>/dev/null || + echo X"$dst" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q' + ` + + test -d "$dstdir" + dstdir_status=$? + fi + fi + + obsolete_mkdir_used=false + + if test $dstdir_status != 0; then + case $posix_mkdir in + '') + # Create intermediate dirs using mode 755 as modified by the umask. + # This is like FreeBSD 'install' as of 1997-10-28. + umask=`umask` + case $stripcmd.$umask in + # Optimize common cases. + *[2367][2367]) mkdir_umask=$umask;; + .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;; + + *[0-7]) + mkdir_umask=`expr $umask + 22 \ + - $umask % 100 % 40 + $umask % 20 \ + - $umask % 10 % 4 + $umask % 2 + `;; + *) mkdir_umask=$umask,go-w;; + esac + + # With -d, create the new directory with the user-specified mode. + # Otherwise, rely on $mkdir_umask. + if test -n "$dir_arg"; then + mkdir_mode=-m$mode + else + mkdir_mode= + fi + + posix_mkdir=false + case $umask in + *[123567][0-7][0-7]) + # POSIX mkdir -p sets u+wx bits regardless of umask, which + # is incompatible with FreeBSD 'install' when (umask & 300) != 0. + ;; + *) + tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$ + trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0 + + if (umask $mkdir_umask && + exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1 + then + if test -z "$dir_arg" || { + # Check for POSIX incompatibilities with -m. + # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or + # other-writable bit of parent directory when it shouldn't. + # FreeBSD 6.1 mkdir -m -p sets mode of existing directory. + ls_ld_tmpdir=`ls -ld "$tmpdir"` + case $ls_ld_tmpdir in + d????-?r-*) different_mode=700;; + d????-?--*) different_mode=755;; + *) false;; + esac && + $mkdirprog -m$different_mode -p -- "$tmpdir" && { + ls_ld_tmpdir_1=`ls -ld "$tmpdir"` + test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1" + } + } + then posix_mkdir=: + fi + rmdir "$tmpdir/d" "$tmpdir" + else + # Remove any dirs left behind by ancient mkdir implementations. + rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null + fi + trap '' 0;; + esac;; + esac + + if + $posix_mkdir && ( + umask $mkdir_umask && + $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir" + ) + then : + else + + # The umask is ridiculous, or mkdir does not conform to POSIX, + # or it failed possibly due to a race condition. Create the + # directory the slow way, step by step, checking for races as we go. + + case $dstdir in + /*) prefix='/';; + [-=\(\)!]*) prefix='./';; + *) prefix='';; + esac + + eval "$initialize_posix_glob" + + oIFS=$IFS + IFS=/ + $posix_glob set -f + set fnord $dstdir + shift + $posix_glob set +f + IFS=$oIFS + + prefixes= + + for d + do + test X"$d" = X && continue + + prefix=$prefix$d + if test -d "$prefix"; then + prefixes= + else + if $posix_mkdir; then + (umask=$mkdir_umask && + $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break + # Don't fail if two instances are running concurrently. + test -d "$prefix" || exit 1 + else + case $prefix in + *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;; + *) qprefix=$prefix;; + esac + prefixes="$prefixes '$qprefix'" + fi + fi + prefix=$prefix/ + done + + if test -n "$prefixes"; then + # Don't fail if two instances are running concurrently. + (umask $mkdir_umask && + eval "\$doit_exec \$mkdirprog $prefixes") || + test -d "$dstdir" || exit 1 + obsolete_mkdir_used=true + fi + fi + fi + + if test -n "$dir_arg"; then + { test -z "$chowncmd" || $doit $chowncmd "$dst"; } && + { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } && + { test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false || + test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1 + else + + # Make a couple of temp file names in the proper directory. + dsttmp=$dstdir/_inst.$$_ + rmtmp=$dstdir/_rm.$$_ + + # Trap to clean up those temp files at exit. + trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0 + + # Copy the file name to the temp name. + (umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") && + + # and set any options; do chmod last to preserve setuid bits. + # + # If any of these fail, we abort the whole thing. If we want to + # ignore errors from any of these, just make sure not to ignore + # errors from the above "$doit $cpprog $src $dsttmp" command. + # + { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } && + { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } && + { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } && + { test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } && + + # If -C, don't bother to copy if it wouldn't change the file. + if $copy_on_change && + old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` && + new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` && + + eval "$initialize_posix_glob" && + $posix_glob set -f && + set X $old && old=:$2:$4:$5:$6 && + set X $new && new=:$2:$4:$5:$6 && + $posix_glob set +f && + + test "$old" = "$new" && + $cmpprog "$dst" "$dsttmp" >/dev/null 2>&1 + then + rm -f "$dsttmp" + else + # Rename the file to the real destination. + $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null || + + # The rename failed, perhaps because mv can't rename something else + # to itself, or perhaps because mv is so ancient that it does not + # support -f. + { + # Now remove or move aside any old file at destination location. + # We try this two ways since rm can't unlink itself on some + # systems and the destination file might be busy for other + # reasons. In this case, the final cleanup might fail but the new + # file should still install successfully. + { + test ! -f "$dst" || + $doit $rmcmd -f "$dst" 2>/dev/null || + { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null && + { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; } + } || + { echo "$0: cannot unlink or rename $dst" >&2 + (exit 1); exit 1 + } + } && + + # Now rename the file to the real destination. + $doit $mvcmd "$dsttmp" "$dst" + } + fi || exit 1 + + trap '' 0 + fi +done + +# Local variables: +# eval: (add-hook 'write-file-hooks 'time-stamp) +# time-stamp-start: "scriptversion=" +# time-stamp-format: "%:y-%02m-%02d.%02H" +# time-stamp-time-zone: "UTC" +# time-stamp-end: "; # UTC" +# End: diff --git a/bibliotheque-graphique-iut-1.1/libtool b/bibliotheque-graphique-iut-1.1/libtool new file mode 100755 index 0000000..bb4ebfa --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/libtool @@ -0,0 +1,10077 @@ +#! /bin/sh + +# libtool - Provide generalized library-building support services. +# Generated automatically by config.status (bibliotheque-graphique-iut) 1.1 +# Libtool was configured on host salle231-12: +# NOTE: Changes made to this file will be lost: look at ltmain.sh. +# +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, +# 2006, 2007, 2008, 2009, 2010, 2011 Free Software +# Foundation, Inc. +# Written by Gordon Matzigkeit, 1996 +# +# This file is part of GNU Libtool. +# +# GNU Libtool is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation; either version 2 of +# the License, or (at your option) any later version. +# +# As a special exception to the GNU General Public License, +# if you distribute this file as part of a program or library that +# is built using GNU Libtool, you may include this file under the +# same distribution terms that you use for the rest of that program. +# +# GNU Libtool is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with GNU Libtool; see the file COPYING. If not, a copy +# can be downloaded from http://www.gnu.org/licenses/gpl.html, or +# obtained by writing to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + + +# The names of the tagged configurations supported by this script. +available_tags="" + +# ### BEGIN LIBTOOL CONFIG + +# Which release of libtool.m4 was used? +macro_version=2.4.2 +macro_revision=1.3337 + +# Whether or not to build shared libraries. +build_libtool_libs=yes + +# Whether or not to build static libraries. +build_old_libs=yes + +# What type of objects to build. +pic_mode=default + +# Whether or not to optimize for fast installation. +fast_install=yes + +# Shell to use when invoking shell scripts. +SHELL="/bin/sh" + +# An echo program that protects backslashes. +ECHO="printf %s\\n" + +# The PATH separator for the build system. +PATH_SEPARATOR=":" + +# The host system. +host_alias= +host=x86_64-unknown-linux-gnu +host_os=linux-gnu + +# The build system. +build_alias= +build=x86_64-unknown-linux-gnu +build_os=linux-gnu + +# A sed program that does not truncate output. +SED="/usr/bin/sed" + +# Sed that helps us avoid accidentally triggering echo(1) options like -n. +Xsed="$SED -e 1s/^X//" + +# A grep program that handles long lines. +GREP="/usr/bin/grep" + +# An ERE matcher. +EGREP="/usr/bin/grep -E" + +# A literal string matcher. +FGREP="/usr/bin/grep -F" + +# A BSD- or MS-compatible name lister. +NM="/usr/bin/nm -B" + +# Whether we need soft or hard links. +LN_S="ln -s" + +# What is the maximum length of a command? +max_cmd_len=1572864 + +# Object file suffix (normally "o"). +objext=o + +# Executable file suffix (normally ""). +exeext= + +# whether the shell understands "unset". +lt_unset=unset + +# turn spaces into newlines. +SP2NL="tr \\040 \\012" + +# turn newlines into spaces. +NL2SP="tr \\015\\012 \\040\\040" + +# convert $build file names to $host format. +to_host_file_cmd=func_convert_file_noop + +# convert $build files to toolchain format. +to_tool_file_cmd=func_convert_file_noop + +# An object symbol dumper. +OBJDUMP="objdump" + +# Method to check whether dependent libraries are shared objects. +deplibs_check_method="pass_all" + +# Command to use when deplibs_check_method = "file_magic". +file_magic_cmd="\$MAGIC_CMD" + +# How to find potential files when deplibs_check_method = "file_magic". +file_magic_glob="" + +# Find potential files using nocaseglob when deplibs_check_method = "file_magic". +want_nocaseglob="no" + +# DLL creation program. +DLLTOOL="false" + +# Command to associate shared and link libraries. +sharedlib_from_linklib_cmd="printf %s\\n" + +# The archiver. +AR="ar" + +# Flags to create an archive. +AR_FLAGS="cru" + +# How to feed a file listing to the archiver. +archiver_list_spec="@" + +# A symbol stripping program. +STRIP="strip" + +# Commands used to install an old-style archive. +RANLIB="ranlib" +old_postinstall_cmds="chmod 644 \$oldlib~\$RANLIB \$tool_oldlib" +old_postuninstall_cmds="" + +# Whether to use a lock for old archive extraction. +lock_old_archive_extraction=no + +# A C compiler. +LTCC="gcc" + +# LTCC compiler flags. +LTCFLAGS="-g -O2" + +# Take the output of nm and produce a listing of raw symbols and C names. +global_symbol_pipe="sed -n -e 's/^.*[ ]\\([ABCDGIRSTW][ABCDGIRSTW]*\\)[ ][ ]*\\([_A-Za-z][_A-Za-z0-9]*\\)\$/\\1 \\2 \\2/p' | sed '/ __gnu_lto/d'" + +# Transform the output of nm in a proper C declaration. +global_symbol_to_cdecl="sed -n -e 's/^T .* \\(.*\\)\$/extern int \\1();/p' -e 's/^[ABCDGIRSTW]* .* \\(.*\\)\$/extern char \\1;/p'" + +# Transform the output of nm in a C name address pair. +global_symbol_to_c_name_address="sed -n -e 's/^: \\([^ ]*\\)[ ]*\$/ {\\\"\\1\\\", (void *) 0},/p' -e 's/^[ABCDGIRSTW]* \\([^ ]*\\) \\([^ ]*\\)\$/ {\"\\2\", (void *) \\&\\2},/p'" + +# Transform the output of nm in a C name address pair when lib prefix is needed. +global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \\([^ ]*\\)[ ]*\$/ {\\\"\\1\\\", (void *) 0},/p' -e 's/^[ABCDGIRSTW]* \\([^ ]*\\) \\(lib[^ ]*\\)\$/ {\"\\2\", (void *) \\&\\2},/p' -e 's/^[ABCDGIRSTW]* \\([^ ]*\\) \\([^ ]*\\)\$/ {\"lib\\2\", (void *) \\&\\2},/p'" + +# Specify filename containing input files for $NM. +nm_file_list_spec="@" + +# The root where to search for dependent libraries,and in which our libraries should be installed. +lt_sysroot= + +# The name of the directory that contains temporary libtool files. +objdir=.libs + +# Used to examine libraries when file_magic_cmd begins with "file". +MAGIC_CMD=file + +# Must we lock files when doing compilation? +need_locks="no" + +# Manifest tool. +MANIFEST_TOOL=":" + +# Tool to manipulate archived DWARF debug symbol files on Mac OS X. +DSYMUTIL="" + +# Tool to change global to local symbols on Mac OS X. +NMEDIT="" + +# Tool to manipulate fat objects and archives on Mac OS X. +LIPO="" + +# ldd/readelf like tool for Mach-O binaries on Mac OS X. +OTOOL="" + +# ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4. +OTOOL64="" + +# Old archive suffix (normally "a"). +libext=a + +# Shared library suffix (normally ".so"). +shrext_cmds=".so" + +# The commands to extract the exported symbol list from a shared archive. +extract_expsyms_cmds="" + +# Variables whose values should be saved in libtool wrapper scripts and +# restored at link time. +variables_saved_for_relink="PATH LD_LIBRARY_PATH LD_RUN_PATH GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" + +# Do we need the "lib" prefix for modules? +need_lib_prefix=no + +# Do we need a version for libraries? +need_version=no + +# Library versioning type. +version_type=linux + +# Shared library runtime path variable. +runpath_var=LD_RUN_PATH + +# Shared library path variable. +shlibpath_var=LD_LIBRARY_PATH + +# Is shlibpath searched before the hard-coded library search path? +shlibpath_overrides_runpath=no + +# Format of library name prefix. +libname_spec="lib\$name" + +# 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="\${libname}\${release}\${shared_ext}\$versuffix \${libname}\${release}\${shared_ext}\$major \$libname\${shared_ext}" + +# The coded name of the library, if different from the real name. +soname_spec="\${libname}\${release}\${shared_ext}\$major" + +# Permission mode override for installation of shared libraries. +install_override_mode="" + +# Command to use after installation of a shared archive. +postinstall_cmds="" + +# Command to use after uninstallation of a shared archive. +postuninstall_cmds="" + +# Commands used to finish a libtool library installation in a directory. +finish_cmds="PATH=\\\"\\\$PATH:/sbin\\\" ldconfig -n \$libdir" + +# As "finish_cmds", except a single script fragment to be evaled but +# not shown. +finish_eval="" + +# Whether we should hardcode library paths into libraries. +hardcode_into_libs=yes + +# Compile-time system search path for libraries. +sys_lib_search_path_spec="/usr/lib/gcc/x86_64-pc-linux-gnu/12.2.0 /usr/lib /lib " + +# Run-time system search path for libraries. +sys_lib_dlsearch_path_spec="/lib /usr/lib /opt/android-sdk/tools/lib /usr/lib/libfakeroot /usr/lib32 " + +# Whether dlopen is supported. +dlopen_support=unknown + +# Whether dlopen of programs is supported. +dlopen_self=unknown + +# Whether dlopen of statically linked programs is supported. +dlopen_self_static=unknown + +# Commands to strip libraries. +old_striplib="strip --strip-debug" +striplib="strip --strip-unneeded" + + +# The linker used to build libraries. +LD="/usr/bin/ld -m elf_x86_64" + +# How to create reloadable object files. +reload_flag=" -r" +reload_cmds="\$LD\$reload_flag -o \$output\$reload_objs" + +# Commands used to build an old-style archive. +old_archive_cmds="\$AR \$AR_FLAGS \$oldlib\$oldobjs~\$RANLIB \$tool_oldlib" + +# A language specific compiler. +CC="gcc" + +# Is the compiler the GNU compiler? +with_gcc=yes + +# Compiler flag to turn off builtin functions. +no_builtin_flag=" -fno-builtin" + +# Additional compiler flags for building library objects. +pic_flag=" -fPIC -DPIC" + +# How to pass a linker flag through the compiler. +wl="-Wl," + +# Compiler flag to prevent dynamic linking. +link_static_flag="-static" + +# Does compiler simultaneously support -c and -o options? +compiler_c_o="yes" + +# Whether or not to add -lc for building shared libraries. +build_libtool_need_lc=no + +# Whether or not to disallow shared libs when runtime libs are static. +allow_libtool_libs_with_static_runtimes=no + +# Compiler flag to allow reflexive dlopens. +export_dynamic_flag_spec="\${wl}--export-dynamic" + +# Compiler flag to generate shared objects directly from archives. +whole_archive_flag_spec="\${wl}--whole-archive\$convenience \${wl}--no-whole-archive" + +# Whether the compiler copes with passing no objects directly. +compiler_needs_object="no" + +# Create an old-style archive from a shared archive. +old_archive_from_new_cmds="" + +# Create a temporary old-style archive to link instead of a shared archive. +old_archive_from_expsyms_cmds="" + +# Commands used to build a shared archive. +archive_cmds="\$CC -shared \$pic_flag \$libobjs \$deplibs \$compiler_flags \${wl}-soname \$wl\$soname -o \$lib" +archive_expsym_cmds="echo \\\"{ global:\\\" > \$output_objdir/\$libname.ver~ + cat \$export_symbols | sed -e \\\"s/\\\\(.*\\\\)/\\\\1;/\\\" >> \$output_objdir/\$libname.ver~ + echo \\\"local: *; };\\\" >> \$output_objdir/\$libname.ver~ + \$CC -shared \$pic_flag \$libobjs \$deplibs \$compiler_flags \${wl}-soname \$wl\$soname \${wl}-version-script \${wl}\$output_objdir/\$libname.ver -o \$lib" + +# Commands used to build a loadable module if different from building +# a shared archive. +module_cmds="" +module_expsym_cmds="" + +# Whether we are building with GNU ld or not. +with_gnu_ld="yes" + +# Flag that allows shared libraries with undefined symbols to be built. +allow_undefined_flag="" + +# Flag that enforces no undefined symbols. +no_undefined_flag="" + +# Flag to hardcode $libdir into a binary during linking. +# This must work even if $libdir does not exist +hardcode_libdir_flag_spec="\${wl}-rpath \${wl}\$libdir" + +# Whether we need a single "-rpath" flag with a separated argument. +hardcode_libdir_separator="" + +# Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes +# DIR into the resulting binary. +hardcode_direct=no + +# Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes +# DIR into the resulting binary and the resulting library dependency is +# "absolute",i.e impossible to change by setting ${shlibpath_var} if the +# library is relocated. +hardcode_direct_absolute=no + +# Set to "yes" if using the -LDIR flag during linking hardcodes DIR +# into the resulting binary. +hardcode_minus_L=no + +# Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR +# into the resulting binary. +hardcode_shlibpath_var=unsupported + +# 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=no + +# Set to yes if linker adds runtime paths of dependent libraries +# to runtime path list. +inherit_rpath=no + +# Whether libtool must link a program against all its dependency libraries. +link_all_deplibs=unknown + +# Set to "yes" if exported symbols are required. +always_export_symbols=no + +# The commands to list exported symbols. +export_symbols_cmds="\$NM \$libobjs \$convenience | \$global_symbol_pipe | \$SED 's/.* //' | sort | uniq > \$export_symbols" + +# Symbols that should not be listed in the preloaded symbols. +exclude_expsyms="_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*" + +# Symbols that must always be exported. +include_expsyms="" + +# Commands necessary for linking programs (against libraries) with templates. +prelink_cmds="" + +# Commands necessary for finishing linking programs. +postlink_cmds="" + +# Specify filename containing input files. +file_list_spec="" + +# How to hardcode a shared library path into an executable. +hardcode_action=immediate + +# ### END LIBTOOL CONFIG + + +# libtool (GNU libtool) 2.4.2 +# Written by Gordon Matzigkeit , 1996 + +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006, +# 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc. +# This is free software; see the source for copying conditions. There is NO +# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +# GNU Libtool is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# As a special exception to the GNU General Public License, +# if you distribute this file as part of a program or library that +# is built using GNU Libtool, you may include this file under the +# same distribution terms that you use for the rest of that program. +# +# GNU Libtool is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with GNU Libtool; see the file COPYING. If not, a copy +# can be downloaded from http://www.gnu.org/licenses/gpl.html, +# or obtained by writing to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +# Usage: $progname [OPTION]... [MODE-ARG]... +# +# Provide generalized library-building support services. +# +# --config show all configuration variables +# --debug enable verbose shell tracing +# -n, --dry-run display commands without modifying any files +# --features display basic configuration information and exit +# --mode=MODE use operation mode MODE +# --preserve-dup-deps don't remove duplicate dependency libraries +# --quiet, --silent don't print informational messages +# --no-quiet, --no-silent +# print informational messages (default) +# --no-warn don't display warning messages +# --tag=TAG use configuration variables from tag TAG +# -v, --verbose print more informational messages than default +# --no-verbose don't print the extra informational messages +# --version print version information +# -h, --help, --help-all print short, long, or detailed help message +# +# MODE must be one of the following: +# +# clean remove files from the build directory +# compile compile a source file into a libtool object +# execute automatically set library path, then run a program +# finish complete the installation of libtool libraries +# install install libraries or executables +# link create a library or an executable +# uninstall remove libraries from an installed directory +# +# MODE-ARGS vary depending on the MODE. When passed as first option, +# `--mode=MODE' may be abbreviated as `MODE' or a unique abbreviation of that. +# Try `$progname --help --mode=MODE' for a more detailed description of MODE. +# +# When reporting a bug, please describe a test case to reproduce it and +# include the following information: +# +# host-triplet: $host +# shell: $SHELL +# compiler: $LTCC +# compiler flags: $LTCFLAGS +# linker: $LD (gnu? $with_gnu_ld) +# $progname: (GNU libtool) 2.4.2 +# automake: $automake_version +# autoconf: $autoconf_version +# +# Report bugs to . +# GNU libtool home page: . +# General help using GNU software: . + +PROGRAM=libtool +PACKAGE=libtool +VERSION=2.4.2 +TIMESTAMP="" +package_revision=1.3337 + +# Be Bourne compatible +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then + emulate sh + NULLCMD=: + # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac +fi +BIN_SH=xpg4; export BIN_SH # for Tru64 +DUALCASE=1; export DUALCASE # for MKS sh + +# A function that is used when there is no print builtin or printf. +func_fallback_echo () +{ + eval 'cat <<_LTECHO_EOF +$1 +_LTECHO_EOF' +} + +# NLS nuisances: We save the old values to restore during execute mode. +lt_user_locale= +lt_safe_locale= +for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES +do + eval "if test \"\${$lt_var+set}\" = set; then + save_$lt_var=\$$lt_var + $lt_var=C + export $lt_var + lt_user_locale=\"$lt_var=\\\$save_\$lt_var; \$lt_user_locale\" + lt_safe_locale=\"$lt_var=C; \$lt_safe_locale\" + fi" +done +LC_ALL=C +LANGUAGE=C +export LANGUAGE LC_ALL + +$lt_unset CDPATH + + +# Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh +# is ksh but when the shell is invoked as "sh" and the current value of +# the _XPG environment variable is not equal to 1 (one), the special +# positional parameter $0, within a function call, is the name of the +# function. +progpath="$0" + + + +: ${CP="cp -f"} +test "${ECHO+set}" = set || ECHO=${as_echo-'printf %s\n'} +: ${MAKE="make"} +: ${MKDIR="mkdir"} +: ${MV="mv -f"} +: ${RM="rm -f"} +: ${SHELL="${CONFIG_SHELL-/bin/sh}"} +: ${Xsed="$SED -e 1s/^X//"} + +# Global variables: +EXIT_SUCCESS=0 +EXIT_FAILURE=1 +EXIT_MISMATCH=63 # $? = 63 is used to indicate version mismatch to missing. +EXIT_SKIP=77 # $? = 77 is used to indicate a skipped test to automake. + +exit_status=$EXIT_SUCCESS + +# Make sure IFS has a sensible default +lt_nl=' +' +IFS=" $lt_nl" + +dirname="s,/[^/]*$,," +basename="s,^.*/,," + +# func_dirname file append nondir_replacement +# Compute the dirname of FILE. If nonempty, add APPEND to the result, +# otherwise set result to NONDIR_REPLACEMENT. +func_dirname () +{ + case ${1} in + */*) func_dirname_result="${1%/*}${2}" ;; + * ) func_dirname_result="${3}" ;; + esac +} # Extended-shell func_dirname implementation + + +# func_basename file +func_basename () +{ + func_basename_result="${1##*/}" +} # Extended-shell func_basename implementation + + +# func_dirname_and_basename file append nondir_replacement +# perform func_basename and func_dirname in a single function +# call: +# dirname: Compute the dirname of FILE. If nonempty, +# add APPEND to the result, otherwise set result +# to NONDIR_REPLACEMENT. +# value returned in "$func_dirname_result" +# basename: Compute filename of FILE. +# value retuned in "$func_basename_result" +# Implementation must be kept synchronized with func_dirname +# and func_basename. For efficiency, we do not delegate to +# those functions but instead duplicate the functionality here. +func_dirname_and_basename () +{ + case ${1} in + */*) func_dirname_result="${1%/*}${2}" ;; + * ) func_dirname_result="${3}" ;; + esac + func_basename_result="${1##*/}" +} # Extended-shell func_dirname_and_basename implementation + + +# func_stripname prefix suffix name +# strip PREFIX and SUFFIX off of NAME. +# PREFIX and SUFFIX must not contain globbing or regex special +# characters, hashes, percent signs, but SUFFIX may contain a leading +# dot (in which case that matches only a dot). +# func_strip_suffix prefix name +func_stripname () +{ + # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are + # positional parameters, so assign one to ordinary parameter first. + func_stripname_result=${3} + func_stripname_result=${func_stripname_result#"${1}"} + func_stripname_result=${func_stripname_result%"${2}"} +} # Extended-shell func_stripname implementation + + +# These SED scripts presuppose an absolute path with a trailing slash. +pathcar='s,^/\([^/]*\).*$,\1,' +pathcdr='s,^/[^/]*,,' +removedotparts=':dotsl + s@/\./@/@g + t dotsl + s,/\.$,/,' +collapseslashes='s@/\{1,\}@/@g' +finalslash='s,/*$,/,' + +# func_normal_abspath PATH +# Remove doubled-up and trailing slashes, "." path components, +# and cancel out any ".." path components in PATH after making +# it an absolute path. +# value returned in "$func_normal_abspath_result" +func_normal_abspath () +{ + # Start from root dir and reassemble the path. + func_normal_abspath_result= + func_normal_abspath_tpath=$1 + func_normal_abspath_altnamespace= + case $func_normal_abspath_tpath in + "") + # Empty path, that just means $cwd. + func_stripname '' '/' "`pwd`" + func_normal_abspath_result=$func_stripname_result + return + ;; + # The next three entries are used to spot a run of precisely + # two leading slashes without using negated character classes; + # we take advantage of case's first-match behaviour. + ///*) + # Unusual form of absolute path, do nothing. + ;; + //*) + # Not necessarily an ordinary path; POSIX reserves leading '//' + # and for example Cygwin uses it to access remote file shares + # over CIFS/SMB, so we conserve a leading double slash if found. + func_normal_abspath_altnamespace=/ + ;; + /*) + # Absolute path, do nothing. + ;; + *) + # Relative path, prepend $cwd. + func_normal_abspath_tpath=`pwd`/$func_normal_abspath_tpath + ;; + esac + # Cancel out all the simple stuff to save iterations. We also want + # the path to end with a slash for ease of parsing, so make sure + # there is one (and only one) here. + func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \ + -e "$removedotparts" -e "$collapseslashes" -e "$finalslash"` + while :; do + # Processed it all yet? + if test "$func_normal_abspath_tpath" = / ; then + # If we ascended to the root using ".." the result may be empty now. + if test -z "$func_normal_abspath_result" ; then + func_normal_abspath_result=/ + fi + break + fi + func_normal_abspath_tcomponent=`$ECHO "$func_normal_abspath_tpath" | $SED \ + -e "$pathcar"` + func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \ + -e "$pathcdr"` + # Figure out what to do with it + case $func_normal_abspath_tcomponent in + "") + # Trailing empty path component, ignore it. + ;; + ..) + # Parent dir; strip last assembled component from result. + func_dirname "$func_normal_abspath_result" + func_normal_abspath_result=$func_dirname_result + ;; + *) + # Actual path component, append it. + func_normal_abspath_result=$func_normal_abspath_result/$func_normal_abspath_tcomponent + ;; + esac + done + # Restore leading double-slash if one was found on entry. + func_normal_abspath_result=$func_normal_abspath_altnamespace$func_normal_abspath_result +} + +# func_relative_path SRCDIR DSTDIR +# generates a relative path from SRCDIR to DSTDIR, with a trailing +# slash if non-empty, suitable for immediately appending a filename +# without needing to append a separator. +# value returned in "$func_relative_path_result" +func_relative_path () +{ + func_relative_path_result= + func_normal_abspath "$1" + func_relative_path_tlibdir=$func_normal_abspath_result + func_normal_abspath "$2" + func_relative_path_tbindir=$func_normal_abspath_result + + # Ascend the tree starting from libdir + while :; do + # check if we have found a prefix of bindir + case $func_relative_path_tbindir in + $func_relative_path_tlibdir) + # found an exact match + func_relative_path_tcancelled= + break + ;; + $func_relative_path_tlibdir*) + # found a matching prefix + func_stripname "$func_relative_path_tlibdir" '' "$func_relative_path_tbindir" + func_relative_path_tcancelled=$func_stripname_result + if test -z "$func_relative_path_result"; then + func_relative_path_result=. + fi + break + ;; + *) + func_dirname $func_relative_path_tlibdir + func_relative_path_tlibdir=${func_dirname_result} + if test "x$func_relative_path_tlibdir" = x ; then + # Have to descend all the way to the root! + func_relative_path_result=../$func_relative_path_result + func_relative_path_tcancelled=$func_relative_path_tbindir + break + fi + func_relative_path_result=../$func_relative_path_result + ;; + esac + done + + # Now calculate path; take care to avoid doubling-up slashes. + func_stripname '' '/' "$func_relative_path_result" + func_relative_path_result=$func_stripname_result + func_stripname '/' '/' "$func_relative_path_tcancelled" + if test "x$func_stripname_result" != x ; then + func_relative_path_result=${func_relative_path_result}/${func_stripname_result} + fi + + # Normalisation. If bindir is libdir, return empty string, + # else relative path ending with a slash; either way, target + # file name can be directly appended. + if test ! -z "$func_relative_path_result"; then + func_stripname './' '' "$func_relative_path_result/" + func_relative_path_result=$func_stripname_result + fi +} + +# The name of this program: +func_dirname_and_basename "$progpath" +progname=$func_basename_result + +# Make sure we have an absolute path for reexecution: +case $progpath in + [\\/]*|[A-Za-z]:\\*) ;; + *[\\/]*) + progdir=$func_dirname_result + progdir=`cd "$progdir" && pwd` + progpath="$progdir/$progname" + ;; + *) + save_IFS="$IFS" + IFS=${PATH_SEPARATOR-:} + for progdir in $PATH; do + IFS="$save_IFS" + test -x "$progdir/$progname" && break + done + IFS="$save_IFS" + test -n "$progdir" || progdir=`pwd` + progpath="$progdir/$progname" + ;; +esac + +# Sed substitution that helps us do robust quoting. It backslashifies +# metacharacters that are still active within double-quoted strings. +Xsed="${SED}"' -e 1s/^X//' +sed_quote_subst='s/\([`"$\\]\)/\\\1/g' + +# Same as above, but do not quote variable references. +double_quote_subst='s/\(["`\\]\)/\\\1/g' + +# Sed substitution that turns a string into a regex matching for the +# string literally. +sed_make_literal_regex='s,[].[^$\\*\/],\\&,g' + +# Sed substitution that converts a w32 file name or path +# which contains forward slashes, into one that contains +# (escaped) backslashes. A very naive implementation. +lt_sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g' + +# Re-`\' parameter expansions in output of double_quote_subst that were +# `\'-ed in input to the same. If an odd number of `\' preceded a '$' +# in input to double_quote_subst, that '$' was protected from expansion. +# Since each input `\' is now two `\'s, look for any number of runs of +# four `\'s followed by two `\'s and then a '$'. `\' that '$'. +bs='\\' +bs2='\\\\' +bs4='\\\\\\\\' +dollar='\$' +sed_double_backslash="\ + s/$bs4/&\\ +/g + s/^$bs2$dollar/$bs&/ + s/\\([^$bs]\\)$bs2$dollar/\\1$bs2$bs$dollar/g + s/\n//g" + +# Standard options: +opt_dry_run=false +opt_help=false +opt_quiet=false +opt_verbose=false +opt_warning=: + +# func_echo arg... +# Echo program name prefixed message, along with the current mode +# name if it has been set yet. +func_echo () +{ + $ECHO "$progname: ${opt_mode+$opt_mode: }$*" +} + +# func_verbose arg... +# Echo program name prefixed message in verbose mode only. +func_verbose () +{ + $opt_verbose && func_echo ${1+"$@"} + + # A bug in bash halts the script if the last line of a function + # fails when set -e is in force, so we need another command to + # work around that: + : +} + +# func_echo_all arg... +# Invoke $ECHO with all args, space-separated. +func_echo_all () +{ + $ECHO "$*" +} + +# func_error arg... +# Echo program name prefixed message to standard error. +func_error () +{ + $ECHO "$progname: ${opt_mode+$opt_mode: }"${1+"$@"} 1>&2 +} + +# func_warning arg... +# Echo program name prefixed warning message to standard error. +func_warning () +{ + $opt_warning && $ECHO "$progname: ${opt_mode+$opt_mode: }warning: "${1+"$@"} 1>&2 + + # bash bug again: + : +} + +# func_fatal_error arg... +# Echo program name prefixed message to standard error, and exit. +func_fatal_error () +{ + func_error ${1+"$@"} + exit $EXIT_FAILURE +} + +# func_fatal_help arg... +# Echo program name prefixed message to standard error, followed by +# a help hint, and exit. +func_fatal_help () +{ + func_error ${1+"$@"} + func_fatal_error "$help" +} +help="Try \`$progname --help' for more information." ## default + + +# func_grep expression filename +# Check whether EXPRESSION matches any line of FILENAME, without output. +func_grep () +{ + $GREP "$1" "$2" >/dev/null 2>&1 +} + + +# func_mkdir_p directory-path +# Make sure the entire path to DIRECTORY-PATH is available. +func_mkdir_p () +{ + my_directory_path="$1" + my_dir_list= + + if test -n "$my_directory_path" && test "$opt_dry_run" != ":"; then + + # Protect directory names starting with `-' + case $my_directory_path in + -*) my_directory_path="./$my_directory_path" ;; + esac + + # While some portion of DIR does not yet exist... + while test ! -d "$my_directory_path"; do + # ...make a list in topmost first order. Use a colon delimited + # list incase some portion of path contains whitespace. + my_dir_list="$my_directory_path:$my_dir_list" + + # If the last portion added has no slash in it, the list is done + case $my_directory_path in */*) ;; *) break ;; esac + + # ...otherwise throw away the child directory and loop + my_directory_path=`$ECHO "$my_directory_path" | $SED -e "$dirname"` + done + my_dir_list=`$ECHO "$my_dir_list" | $SED 's,:*$,,'` + + save_mkdir_p_IFS="$IFS"; IFS=':' + for my_dir in $my_dir_list; do + IFS="$save_mkdir_p_IFS" + # mkdir can fail with a `File exist' error if two processes + # try to create one of the directories concurrently. Don't + # stop in that case! + $MKDIR "$my_dir" 2>/dev/null || : + done + IFS="$save_mkdir_p_IFS" + + # Bail out if we (or some other process) failed to create a directory. + test -d "$my_directory_path" || \ + func_fatal_error "Failed to create \`$1'" + fi +} + + +# func_mktempdir [string] +# Make a temporary directory that won't clash with other running +# libtool processes, and avoids race conditions if possible. If +# given, STRING is the basename for that directory. +func_mktempdir () +{ + my_template="${TMPDIR-/tmp}/${1-$progname}" + + if test "$opt_dry_run" = ":"; then + # Return a directory name, but don't create it in dry-run mode + my_tmpdir="${my_template}-$$" + else + + # If mktemp works, use that first and foremost + my_tmpdir=`mktemp -d "${my_template}-XXXXXXXX" 2>/dev/null` + + if test ! -d "$my_tmpdir"; then + # Failing that, at least try and use $RANDOM to avoid a race + my_tmpdir="${my_template}-${RANDOM-0}$$" + + save_mktempdir_umask=`umask` + umask 0077 + $MKDIR "$my_tmpdir" + umask $save_mktempdir_umask + fi + + # If we're not in dry-run mode, bomb out on failure + test -d "$my_tmpdir" || \ + func_fatal_error "cannot create temporary directory \`$my_tmpdir'" + fi + + $ECHO "$my_tmpdir" +} + + +# func_quote_for_eval arg +# Aesthetically quote ARG to be evaled later. +# This function returns two values: FUNC_QUOTE_FOR_EVAL_RESULT +# is double-quoted, suitable for a subsequent eval, whereas +# FUNC_QUOTE_FOR_EVAL_UNQUOTED_RESULT has merely all characters +# which are still active within double quotes backslashified. +func_quote_for_eval () +{ + case $1 in + *[\\\`\"\$]*) + func_quote_for_eval_unquoted_result=`$ECHO "$1" | $SED "$sed_quote_subst"` ;; + *) + func_quote_for_eval_unquoted_result="$1" ;; + esac + + case $func_quote_for_eval_unquoted_result in + # Double-quote args containing shell metacharacters to delay + # word splitting, command substitution and and variable + # expansion for a subsequent eval. + # Many Bourne shells cannot handle close brackets correctly + # in scan sets, so we specify it separately. + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + func_quote_for_eval_result="\"$func_quote_for_eval_unquoted_result\"" + ;; + *) + func_quote_for_eval_result="$func_quote_for_eval_unquoted_result" + esac +} + + +# func_quote_for_expand arg +# Aesthetically quote ARG to be evaled later; same as above, +# but do not quote variable references. +func_quote_for_expand () +{ + case $1 in + *[\\\`\"]*) + my_arg=`$ECHO "$1" | $SED \ + -e "$double_quote_subst" -e "$sed_double_backslash"` ;; + *) + my_arg="$1" ;; + esac + + case $my_arg in + # Double-quote args containing shell metacharacters to delay + # word splitting and command substitution for a subsequent eval. + # Many Bourne shells cannot handle close brackets correctly + # in scan sets, so we specify it separately. + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + my_arg="\"$my_arg\"" + ;; + esac + + func_quote_for_expand_result="$my_arg" +} + + +# func_show_eval cmd [fail_exp] +# Unless opt_silent is true, then output CMD. Then, if opt_dryrun is +# not true, evaluate CMD. If the evaluation of CMD fails, and FAIL_EXP +# is given, then evaluate it. +func_show_eval () +{ + my_cmd="$1" + my_fail_exp="${2-:}" + + ${opt_silent-false} || { + func_quote_for_expand "$my_cmd" + eval "func_echo $func_quote_for_expand_result" + } + + if ${opt_dry_run-false}; then :; else + eval "$my_cmd" + my_status=$? + if test "$my_status" -eq 0; then :; else + eval "(exit $my_status); $my_fail_exp" + fi + fi +} + + +# func_show_eval_locale cmd [fail_exp] +# Unless opt_silent is true, then output CMD. Then, if opt_dryrun is +# not true, evaluate CMD. If the evaluation of CMD fails, and FAIL_EXP +# is given, then evaluate it. Use the saved locale for evaluation. +func_show_eval_locale () +{ + my_cmd="$1" + my_fail_exp="${2-:}" + + ${opt_silent-false} || { + func_quote_for_expand "$my_cmd" + eval "func_echo $func_quote_for_expand_result" + } + + if ${opt_dry_run-false}; then :; else + eval "$lt_user_locale + $my_cmd" + my_status=$? + eval "$lt_safe_locale" + if test "$my_status" -eq 0; then :; else + eval "(exit $my_status); $my_fail_exp" + fi + fi +} + +# func_tr_sh +# Turn $1 into a string suitable for a shell variable name. +# Result is stored in $func_tr_sh_result. All characters +# not in the set a-zA-Z0-9_ are replaced with '_'. Further, +# if $1 begins with a digit, a '_' is prepended as well. +func_tr_sh () +{ + case $1 in + [0-9]* | *[!a-zA-Z0-9_]*) + func_tr_sh_result=`$ECHO "$1" | $SED 's/^\([0-9]\)/_\1/; s/[^a-zA-Z0-9_]/_/g'` + ;; + * ) + func_tr_sh_result=$1 + ;; + esac +} + + +# func_version +# Echo version message to standard output and exit. +func_version () +{ + $opt_debug + + $SED -n '/(C)/!b go + :more + /\./!{ + N + s/\n# / / + b more + } + :go + /^# '$PROGRAM' (GNU /,/# warranty; / { + s/^# // + s/^# *$// + s/\((C)\)[ 0-9,-]*\( [1-9][0-9]*\)/\1\2/ + p + }' < "$progpath" + exit $? +} + +# func_usage +# Echo short help message to standard output and exit. +func_usage () +{ + $opt_debug + + $SED -n '/^# Usage:/,/^# *.*--help/ { + s/^# // + s/^# *$// + s/\$progname/'$progname'/ + p + }' < "$progpath" + echo + $ECHO "run \`$progname --help | more' for full usage" + exit $? +} + +# func_help [NOEXIT] +# Echo long help message to standard output and exit, +# unless 'noexit' is passed as argument. +func_help () +{ + $opt_debug + + $SED -n '/^# Usage:/,/# Report bugs to/ { + :print + s/^# // + s/^# *$// + s*\$progname*'$progname'* + s*\$host*'"$host"'* + s*\$SHELL*'"$SHELL"'* + s*\$LTCC*'"$LTCC"'* + s*\$LTCFLAGS*'"$LTCFLAGS"'* + s*\$LD*'"$LD"'* + s/\$with_gnu_ld/'"$with_gnu_ld"'/ + s/\$automake_version/'"`(${AUTOMAKE-automake} --version) 2>/dev/null |$SED 1q`"'/ + s/\$autoconf_version/'"`(${AUTOCONF-autoconf} --version) 2>/dev/null |$SED 1q`"'/ + p + d + } + /^# .* home page:/b print + /^# General help using/b print + ' < "$progpath" + ret=$? + if test -z "$1"; then + exit $ret + fi +} + +# func_missing_arg argname +# Echo program name prefixed message to standard error and set global +# exit_cmd. +func_missing_arg () +{ + $opt_debug + + func_error "missing argument for $1." + exit_cmd=exit +} + + +# func_split_short_opt shortopt +# Set func_split_short_opt_name and func_split_short_opt_arg shell +# variables after splitting SHORTOPT after the 2nd character. +func_split_short_opt () +{ + func_split_short_opt_arg=${1#??} + func_split_short_opt_name=${1%"$func_split_short_opt_arg"} +} # Extended-shell func_split_short_opt implementation + + +# func_split_long_opt longopt +# Set func_split_long_opt_name and func_split_long_opt_arg shell +# variables after splitting LONGOPT at the `=' sign. +func_split_long_opt () +{ + func_split_long_opt_name=${1%%=*} + func_split_long_opt_arg=${1#*=} +} # Extended-shell func_split_long_opt implementation + +exit_cmd=: + + + + + +magic="%%%MAGIC variable%%%" +magic_exe="%%%MAGIC EXE variable%%%" + +# Global variables. +nonopt= +preserve_args= +lo2o="s/\\.lo\$/.${objext}/" +o2lo="s/\\.${objext}\$/.lo/" +extracted_archives= +extracted_serial=0 + +# If this variable is set in any of the actions, the command in it +# will be execed at the end. This prevents here-documents from being +# left over by shells. +exec_cmd= + +# func_append var value +# Append VALUE to the end of shell variable VAR. +func_append () +{ + eval "${1}+=\${2}" +} # Extended-shell func_append implementation + +# func_append_quoted var value +# Quote VALUE and append to the end of shell variable VAR, separated +# by a space. +func_append_quoted () +{ + func_quote_for_eval "${2}" + eval "${1}+=\\ \$func_quote_for_eval_result" +} # Extended-shell func_append_quoted implementation + + +# func_arith arithmetic-term... +func_arith () +{ + func_arith_result=$(( $* )) +} # Extended-shell func_arith implementation + + +# func_len string +# STRING may not start with a hyphen. +func_len () +{ + func_len_result=${#1} +} # Extended-shell func_len implementation + + +# func_lo2o object +func_lo2o () +{ + case ${1} in + *.lo) func_lo2o_result=${1%.lo}.${objext} ;; + *) func_lo2o_result=${1} ;; + esac +} # Extended-shell func_lo2o implementation + + +# func_xform libobj-or-source +func_xform () +{ + func_xform_result=${1%.*}.lo +} # Extended-shell func_xform implementation + + +# func_fatal_configuration arg... +# Echo program name prefixed message to standard error, followed by +# a configuration failure hint, and exit. +func_fatal_configuration () +{ + func_error ${1+"$@"} + func_error "See the $PACKAGE documentation for more information." + func_fatal_error "Fatal configuration error." +} + + +# func_config +# Display the configuration for all the tags in this script. +func_config () +{ + re_begincf='^# ### BEGIN LIBTOOL' + re_endcf='^# ### END LIBTOOL' + + # Default configuration. + $SED "1,/$re_begincf CONFIG/d;/$re_endcf CONFIG/,\$d" < "$progpath" + + # Now print the configurations for the tags. + for tagname in $taglist; do + $SED -n "/$re_begincf TAG CONFIG: $tagname\$/,/$re_endcf TAG CONFIG: $tagname\$/p" < "$progpath" + done + + exit $? +} + +# func_features +# Display the features supported by this script. +func_features () +{ + echo "host: $host" + if test "$build_libtool_libs" = yes; then + echo "enable shared libraries" + else + echo "disable shared libraries" + fi + if test "$build_old_libs" = yes; then + echo "enable static libraries" + else + echo "disable static libraries" + fi + + exit $? +} + +# func_enable_tag tagname +# Verify that TAGNAME is valid, and either flag an error and exit, or +# enable the TAGNAME tag. We also add TAGNAME to the global $taglist +# variable here. +func_enable_tag () +{ + # Global variable: + tagname="$1" + + re_begincf="^# ### BEGIN LIBTOOL TAG CONFIG: $tagname\$" + re_endcf="^# ### END LIBTOOL TAG CONFIG: $tagname\$" + sed_extractcf="/$re_begincf/,/$re_endcf/p" + + # Validate tagname. + case $tagname in + *[!-_A-Za-z0-9,/]*) + func_fatal_error "invalid tag name: $tagname" + ;; + esac + + # Don't test for the "default" C tag, as we know it's + # there but not specially marked. + case $tagname in + CC) ;; + *) + if $GREP "$re_begincf" "$progpath" >/dev/null 2>&1; then + taglist="$taglist $tagname" + + # Evaluate the configuration. Be careful to quote the path + # and the sed script, to avoid splitting on whitespace, but + # also don't use non-portable quotes within backquotes within + # quotes we have to do it in 2 steps: + extractedcf=`$SED -n -e "$sed_extractcf" < "$progpath"` + eval "$extractedcf" + else + func_error "ignoring unknown tag $tagname" + fi + ;; + esac +} + +# func_check_version_match +# Ensure that we are using m4 macros, and libtool script from the same +# release of libtool. +func_check_version_match () +{ + if test "$package_revision" != "$macro_revision"; then + if test "$VERSION" != "$macro_version"; then + if test -z "$macro_version"; then + cat >&2 <<_LT_EOF +$progname: Version mismatch error. This is $PACKAGE $VERSION, but the +$progname: definition of this LT_INIT comes from an older release. +$progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION +$progname: and run autoconf again. +_LT_EOF + else + cat >&2 <<_LT_EOF +$progname: Version mismatch error. This is $PACKAGE $VERSION, but the +$progname: definition of this LT_INIT comes from $PACKAGE $macro_version. +$progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION +$progname: and run autoconf again. +_LT_EOF + fi + else + cat >&2 <<_LT_EOF +$progname: Version mismatch error. This is $PACKAGE $VERSION, revision $package_revision, +$progname: but the definition of this LT_INIT comes from revision $macro_revision. +$progname: You should recreate aclocal.m4 with macros from revision $package_revision +$progname: of $PACKAGE $VERSION and run autoconf again. +_LT_EOF + fi + + exit $EXIT_MISMATCH + fi +} + + +# Shorthand for --mode=foo, only valid as the first argument +case $1 in +clean|clea|cle|cl) + shift; set dummy --mode clean ${1+"$@"}; shift + ;; +compile|compil|compi|comp|com|co|c) + shift; set dummy --mode compile ${1+"$@"}; shift + ;; +execute|execut|execu|exec|exe|ex|e) + shift; set dummy --mode execute ${1+"$@"}; shift + ;; +finish|finis|fini|fin|fi|f) + shift; set dummy --mode finish ${1+"$@"}; shift + ;; +install|instal|insta|inst|ins|in|i) + shift; set dummy --mode install ${1+"$@"}; shift + ;; +link|lin|li|l) + shift; set dummy --mode link ${1+"$@"}; shift + ;; +uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u) + shift; set dummy --mode uninstall ${1+"$@"}; shift + ;; +esac + + + +# Option defaults: +opt_debug=: +opt_dry_run=false +opt_config=false +opt_preserve_dup_deps=false +opt_features=false +opt_finish=false +opt_help=false +opt_help_all=false +opt_silent=: +opt_warning=: +opt_verbose=: +opt_silent=false +opt_verbose=false + + +# Parse options once, thoroughly. This comes as soon as possible in the +# script to make things like `--version' happen as quickly as we can. +{ + # this just eases exit handling + while test $# -gt 0; do + opt="$1" + shift + case $opt in + --debug|-x) opt_debug='set -x' + func_echo "enabling shell trace mode" + $opt_debug + ;; + --dry-run|--dryrun|-n) + opt_dry_run=: + ;; + --config) + opt_config=: +func_config + ;; + --dlopen|-dlopen) + optarg="$1" + opt_dlopen="${opt_dlopen+$opt_dlopen +}$optarg" + shift + ;; + --preserve-dup-deps) + opt_preserve_dup_deps=: + ;; + --features) + opt_features=: +func_features + ;; + --finish) + opt_finish=: +set dummy --mode finish ${1+"$@"}; shift + ;; + --help) + opt_help=: + ;; + --help-all) + opt_help_all=: +opt_help=': help-all' + ;; + --mode) + test $# = 0 && func_missing_arg $opt && break + optarg="$1" + opt_mode="$optarg" +case $optarg in + # Valid mode arguments: + clean|compile|execute|finish|install|link|relink|uninstall) ;; + + # Catch anything else as an error + *) func_error "invalid argument for $opt" + exit_cmd=exit + break + ;; +esac + shift + ;; + --no-silent|--no-quiet) + opt_silent=false +preserve_args+=" $opt" + ;; + --no-warning|--no-warn) + opt_warning=false +preserve_args+=" $opt" + ;; + --no-verbose) + opt_verbose=false +preserve_args+=" $opt" + ;; + --silent|--quiet) + opt_silent=: +preserve_args+=" $opt" + opt_verbose=false + ;; + --verbose|-v) + opt_verbose=: +preserve_args+=" $opt" +opt_silent=false + ;; + --tag) + test $# = 0 && func_missing_arg $opt && break + optarg="$1" + opt_tag="$optarg" +preserve_args+=" $opt $optarg" +func_enable_tag "$optarg" + shift + ;; + + -\?|-h) func_usage ;; + --help) func_help ;; + --version) func_version ;; + + # Separate optargs to long options: + --*=*) + func_split_long_opt "$opt" + set dummy "$func_split_long_opt_name" "$func_split_long_opt_arg" ${1+"$@"} + shift + ;; + + # Separate non-argument short options: + -\?*|-h*|-n*|-v*) + func_split_short_opt "$opt" + set dummy "$func_split_short_opt_name" "-$func_split_short_opt_arg" ${1+"$@"} + shift + ;; + + --) break ;; + -*) func_fatal_help "unrecognized option \`$opt'" ;; + *) set dummy "$opt" ${1+"$@"}; shift; break ;; + esac + done + + # Validate options: + + # save first non-option argument + if test "$#" -gt 0; then + nonopt="$opt" + shift + fi + + # preserve --debug + test "$opt_debug" = : || preserve_args+=" --debug" + + case $host in + *cygwin* | *mingw* | *pw32* | *cegcc*) + # don't eliminate duplications in $postdeps and $predeps + opt_duplicate_compiler_generated_deps=: + ;; + *) + opt_duplicate_compiler_generated_deps=$opt_preserve_dup_deps + ;; + esac + + $opt_help || { + # Sanity checks first: + func_check_version_match + + if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then + func_fatal_configuration "not configured to build any kind of library" + fi + + # Darwin sucks + eval std_shrext=\"$shrext_cmds\" + + # Only execute mode is allowed to have -dlopen flags. + if test -n "$opt_dlopen" && test "$opt_mode" != execute; then + func_error "unrecognized option \`-dlopen'" + $ECHO "$help" 1>&2 + exit $EXIT_FAILURE + fi + + # Change the help message to a mode-specific one. + generic_help="$help" + help="Try \`$progname --help --mode=$opt_mode' for more information." + } + + + # Bail if the options were screwed + $exit_cmd $EXIT_FAILURE +} + + + + +## ----------- ## +## Main. ## +## ----------- ## + +# func_lalib_p file +# True iff FILE is a libtool `.la' library or `.lo' object file. +# This function is only a basic sanity check; it will hardly flush out +# determined imposters. +func_lalib_p () +{ + test -f "$1" && + $SED -e 4q "$1" 2>/dev/null \ + | $GREP "^# Generated by .*$PACKAGE" > /dev/null 2>&1 +} + +# func_lalib_unsafe_p file +# True iff FILE is a libtool `.la' library or `.lo' object file. +# This function implements the same check as func_lalib_p without +# resorting to external programs. To this end, it redirects stdin and +# closes it afterwards, without saving the original file descriptor. +# As a safety measure, use it only where a negative result would be +# fatal anyway. Works if `file' does not exist. +func_lalib_unsafe_p () +{ + lalib_p=no + if test -f "$1" && test -r "$1" && exec 5<&0 <"$1"; then + for lalib_p_l in 1 2 3 4 + do + read lalib_p_line + case "$lalib_p_line" in + \#\ Generated\ by\ *$PACKAGE* ) lalib_p=yes; break;; + esac + done + exec 0<&5 5<&- + fi + test "$lalib_p" = yes +} + +# func_ltwrapper_script_p file +# True iff FILE is a libtool wrapper script +# This function is only a basic sanity check; it will hardly flush out +# determined imposters. +func_ltwrapper_script_p () +{ + func_lalib_p "$1" +} + +# func_ltwrapper_executable_p file +# True iff FILE is a libtool wrapper executable +# This function is only a basic sanity check; it will hardly flush out +# determined imposters. +func_ltwrapper_executable_p () +{ + func_ltwrapper_exec_suffix= + case $1 in + *.exe) ;; + *) func_ltwrapper_exec_suffix=.exe ;; + esac + $GREP "$magic_exe" "$1$func_ltwrapper_exec_suffix" >/dev/null 2>&1 +} + +# func_ltwrapper_scriptname file +# Assumes file is an ltwrapper_executable +# uses $file to determine the appropriate filename for a +# temporary ltwrapper_script. +func_ltwrapper_scriptname () +{ + func_dirname_and_basename "$1" "" "." + func_stripname '' '.exe' "$func_basename_result" + func_ltwrapper_scriptname_result="$func_dirname_result/$objdir/${func_stripname_result}_ltshwrapper" +} + +# func_ltwrapper_p file +# True iff FILE is a libtool wrapper script or wrapper executable +# This function is only a basic sanity check; it will hardly flush out +# determined imposters. +func_ltwrapper_p () +{ + func_ltwrapper_script_p "$1" || func_ltwrapper_executable_p "$1" +} + + +# func_execute_cmds commands fail_cmd +# Execute tilde-delimited COMMANDS. +# If FAIL_CMD is given, eval that upon failure. +# FAIL_CMD may read-access the current command in variable CMD! +func_execute_cmds () +{ + $opt_debug + save_ifs=$IFS; IFS='~' + for cmd in $1; do + IFS=$save_ifs + eval cmd=\"$cmd\" + func_show_eval "$cmd" "${2-:}" + done + IFS=$save_ifs +} + + +# func_source file +# Source FILE, adding directory component if necessary. +# Note that it is not necessary on cygwin/mingw to append a dot to +# FILE even if both FILE and FILE.exe exist: automatic-append-.exe +# behavior happens only for exec(3), not for open(2)! Also, sourcing +# `FILE.' does not work on cygwin managed mounts. +func_source () +{ + $opt_debug + case $1 in + */* | *\\*) . "$1" ;; + *) . "./$1" ;; + esac +} + + +# func_resolve_sysroot PATH +# Replace a leading = in PATH with a sysroot. Store the result into +# func_resolve_sysroot_result +func_resolve_sysroot () +{ + func_resolve_sysroot_result=$1 + case $func_resolve_sysroot_result in + =*) + func_stripname '=' '' "$func_resolve_sysroot_result" + func_resolve_sysroot_result=$lt_sysroot$func_stripname_result + ;; + esac +} + +# func_replace_sysroot PATH +# If PATH begins with the sysroot, replace it with = and +# store the result into func_replace_sysroot_result. +func_replace_sysroot () +{ + case "$lt_sysroot:$1" in + ?*:"$lt_sysroot"*) + func_stripname "$lt_sysroot" '' "$1" + func_replace_sysroot_result="=$func_stripname_result" + ;; + *) + # Including no sysroot. + func_replace_sysroot_result=$1 + ;; + esac +} + +# func_infer_tag arg +# Infer tagged configuration to use if any are available and +# if one wasn't chosen via the "--tag" command line option. +# Only attempt this if the compiler in the base compile +# command doesn't match the default compiler. +# arg is usually of the form 'gcc ...' +func_infer_tag () +{ + $opt_debug + if test -n "$available_tags" && test -z "$tagname"; then + CC_quoted= + for arg in $CC; do + func_append_quoted CC_quoted "$arg" + done + CC_expanded=`func_echo_all $CC` + CC_quoted_expanded=`func_echo_all $CC_quoted` + case $@ in + # Blanks in the command may have been stripped by the calling shell, + # but not from the CC environment variable when configure was run. + " $CC "* | "$CC "* | " $CC_expanded "* | "$CC_expanded "* | \ + " $CC_quoted"* | "$CC_quoted "* | " $CC_quoted_expanded "* | "$CC_quoted_expanded "*) ;; + # Blanks at the start of $base_compile will cause this to fail + # if we don't check for them as well. + *) + for z in $available_tags; do + if $GREP "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$progpath" > /dev/null; then + # Evaluate the configuration. + eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $progpath`" + CC_quoted= + for arg in $CC; do + # Double-quote args containing other shell metacharacters. + func_append_quoted CC_quoted "$arg" + done + CC_expanded=`func_echo_all $CC` + CC_quoted_expanded=`func_echo_all $CC_quoted` + case "$@ " in + " $CC "* | "$CC "* | " $CC_expanded "* | "$CC_expanded "* | \ + " $CC_quoted"* | "$CC_quoted "* | " $CC_quoted_expanded "* | "$CC_quoted_expanded "*) + # The compiler in the base compile command matches + # the one in the tagged configuration. + # Assume this is the tagged configuration we want. + tagname=$z + break + ;; + esac + fi + done + # If $tagname still isn't set, then no tagged configuration + # was found and let the user know that the "--tag" command + # line option must be used. + if test -z "$tagname"; then + func_echo "unable to infer tagged configuration" + func_fatal_error "specify a tag with \`--tag'" +# else +# func_verbose "using $tagname tagged configuration" + fi + ;; + esac + fi +} + + + +# func_write_libtool_object output_name pic_name nonpic_name +# Create a libtool object file (analogous to a ".la" file), +# but don't create it if we're doing a dry run. +func_write_libtool_object () +{ + write_libobj=${1} + if test "$build_libtool_libs" = yes; then + write_lobj=\'${2}\' + else + write_lobj=none + fi + + if test "$build_old_libs" = yes; then + write_oldobj=\'${3}\' + else + write_oldobj=none + fi + + $opt_dry_run || { + cat >${write_libobj}T </dev/null` + if test "$?" -eq 0 && test -n "${func_convert_core_file_wine_to_w32_tmp}"; then + func_convert_core_file_wine_to_w32_result=`$ECHO "$func_convert_core_file_wine_to_w32_tmp" | + $SED -e "$lt_sed_naive_backslashify"` + else + func_convert_core_file_wine_to_w32_result= + fi + fi +} +# end: func_convert_core_file_wine_to_w32 + + +# func_convert_core_path_wine_to_w32 ARG +# Helper function used by path conversion functions when $build is *nix, and +# $host is mingw, cygwin, or some other w32 environment. Relies on a correctly +# configured wine environment available, with the winepath program in $build's +# $PATH. Assumes ARG has no leading or trailing path separator characters. +# +# ARG is path to be converted from $build format to win32. +# Result is available in $func_convert_core_path_wine_to_w32_result. +# Unconvertible file (directory) names in ARG are skipped; if no directory names +# are convertible, then the result may be empty. +func_convert_core_path_wine_to_w32 () +{ + $opt_debug + # unfortunately, winepath doesn't convert paths, only file names + func_convert_core_path_wine_to_w32_result="" + if test -n "$1"; then + oldIFS=$IFS + IFS=: + for func_convert_core_path_wine_to_w32_f in $1; do + IFS=$oldIFS + func_convert_core_file_wine_to_w32 "$func_convert_core_path_wine_to_w32_f" + if test -n "$func_convert_core_file_wine_to_w32_result" ; then + if test -z "$func_convert_core_path_wine_to_w32_result"; then + func_convert_core_path_wine_to_w32_result="$func_convert_core_file_wine_to_w32_result" + else + func_append func_convert_core_path_wine_to_w32_result ";$func_convert_core_file_wine_to_w32_result" + fi + fi + done + IFS=$oldIFS + fi +} +# end: func_convert_core_path_wine_to_w32 + + +# func_cygpath ARGS... +# Wrapper around calling the cygpath program via LT_CYGPATH. This is used when +# when (1) $build is *nix and Cygwin is hosted via a wine environment; or (2) +# $build is MSYS and $host is Cygwin, or (3) $build is Cygwin. In case (1) or +# (2), returns the Cygwin file name or path in func_cygpath_result (input +# file name or path is assumed to be in w32 format, as previously converted +# from $build's *nix or MSYS format). In case (3), returns the w32 file name +# or path in func_cygpath_result (input file name or path is assumed to be in +# Cygwin format). Returns an empty string on error. +# +# ARGS are passed to cygpath, with the last one being the file name or path to +# be converted. +# +# Specify the absolute *nix (or w32) name to cygpath in the LT_CYGPATH +# environment variable; do not put it in $PATH. +func_cygpath () +{ + $opt_debug + if test -n "$LT_CYGPATH" && test -f "$LT_CYGPATH"; then + func_cygpath_result=`$LT_CYGPATH "$@" 2>/dev/null` + if test "$?" -ne 0; then + # on failure, ensure result is empty + func_cygpath_result= + fi + else + func_cygpath_result= + func_error "LT_CYGPATH is empty or specifies non-existent file: \`$LT_CYGPATH'" + fi +} +#end: func_cygpath + + +# func_convert_core_msys_to_w32 ARG +# Convert file name or path ARG from MSYS format to w32 format. Return +# result in func_convert_core_msys_to_w32_result. +func_convert_core_msys_to_w32 () +{ + $opt_debug + # awkward: cmd appends spaces to result + func_convert_core_msys_to_w32_result=`( cmd //c echo "$1" ) 2>/dev/null | + $SED -e 's/[ ]*$//' -e "$lt_sed_naive_backslashify"` +} +#end: func_convert_core_msys_to_w32 + + +# func_convert_file_check ARG1 ARG2 +# Verify that ARG1 (a file name in $build format) was converted to $host +# format in ARG2. Otherwise, emit an error message, but continue (resetting +# func_to_host_file_result to ARG1). +func_convert_file_check () +{ + $opt_debug + if test -z "$2" && test -n "$1" ; then + func_error "Could not determine host file name corresponding to" + func_error " \`$1'" + func_error "Continuing, but uninstalled executables may not work." + # Fallback: + func_to_host_file_result="$1" + fi +} +# end func_convert_file_check + + +# func_convert_path_check FROM_PATHSEP TO_PATHSEP FROM_PATH TO_PATH +# Verify that FROM_PATH (a path in $build format) was converted to $host +# format in TO_PATH. Otherwise, emit an error message, but continue, resetting +# func_to_host_file_result to a simplistic fallback value (see below). +func_convert_path_check () +{ + $opt_debug + if test -z "$4" && test -n "$3"; then + func_error "Could not determine the host path corresponding to" + func_error " \`$3'" + func_error "Continuing, but uninstalled executables may not work." + # Fallback. This is a deliberately simplistic "conversion" and + # should not be "improved". See libtool.info. + if test "x$1" != "x$2"; then + lt_replace_pathsep_chars="s|$1|$2|g" + func_to_host_path_result=`echo "$3" | + $SED -e "$lt_replace_pathsep_chars"` + else + func_to_host_path_result="$3" + fi + fi +} +# end func_convert_path_check + + +# func_convert_path_front_back_pathsep FRONTPAT BACKPAT REPL ORIG +# Modifies func_to_host_path_result by prepending REPL if ORIG matches FRONTPAT +# and appending REPL if ORIG matches BACKPAT. +func_convert_path_front_back_pathsep () +{ + $opt_debug + case $4 in + $1 ) func_to_host_path_result="$3$func_to_host_path_result" + ;; + esac + case $4 in + $2 ) func_to_host_path_result+="$3" + ;; + esac +} +# end func_convert_path_front_back_pathsep + + +################################################## +# $build to $host FILE NAME CONVERSION FUNCTIONS # +################################################## +# invoked via `$to_host_file_cmd ARG' +# +# In each case, ARG is the path to be converted from $build to $host format. +# Result will be available in $func_to_host_file_result. + + +# func_to_host_file ARG +# Converts the file name ARG from $build format to $host format. Return result +# in func_to_host_file_result. +func_to_host_file () +{ + $opt_debug + $to_host_file_cmd "$1" +} +# end func_to_host_file + + +# func_to_tool_file ARG LAZY +# converts the file name ARG from $build format to toolchain format. Return +# result in func_to_tool_file_result. If the conversion in use is listed +# in (the comma separated) LAZY, no conversion takes place. +func_to_tool_file () +{ + $opt_debug + case ,$2, in + *,"$to_tool_file_cmd",*) + func_to_tool_file_result=$1 + ;; + *) + $to_tool_file_cmd "$1" + func_to_tool_file_result=$func_to_host_file_result + ;; + esac +} +# end func_to_tool_file + + +# func_convert_file_noop ARG +# Copy ARG to func_to_host_file_result. +func_convert_file_noop () +{ + func_to_host_file_result="$1" +} +# end func_convert_file_noop + + +# func_convert_file_msys_to_w32 ARG +# Convert file name ARG from (mingw) MSYS to (mingw) w32 format; automatic +# conversion to w32 is not available inside the cwrapper. Returns result in +# func_to_host_file_result. +func_convert_file_msys_to_w32 () +{ + $opt_debug + func_to_host_file_result="$1" + if test -n "$1"; then + func_convert_core_msys_to_w32 "$1" + func_to_host_file_result="$func_convert_core_msys_to_w32_result" + fi + func_convert_file_check "$1" "$func_to_host_file_result" +} +# end func_convert_file_msys_to_w32 + + +# func_convert_file_cygwin_to_w32 ARG +# Convert file name ARG from Cygwin to w32 format. Returns result in +# func_to_host_file_result. +func_convert_file_cygwin_to_w32 () +{ + $opt_debug + func_to_host_file_result="$1" + if test -n "$1"; then + # because $build is cygwin, we call "the" cygpath in $PATH; no need to use + # LT_CYGPATH in this case. + func_to_host_file_result=`cygpath -m "$1"` + fi + func_convert_file_check "$1" "$func_to_host_file_result" +} +# end func_convert_file_cygwin_to_w32 + + +# func_convert_file_nix_to_w32 ARG +# Convert file name ARG from *nix to w32 format. Requires a wine environment +# and a working winepath. Returns result in func_to_host_file_result. +func_convert_file_nix_to_w32 () +{ + $opt_debug + func_to_host_file_result="$1" + if test -n "$1"; then + func_convert_core_file_wine_to_w32 "$1" + func_to_host_file_result="$func_convert_core_file_wine_to_w32_result" + fi + func_convert_file_check "$1" "$func_to_host_file_result" +} +# end func_convert_file_nix_to_w32 + + +# func_convert_file_msys_to_cygwin ARG +# Convert file name ARG from MSYS to Cygwin format. Requires LT_CYGPATH set. +# Returns result in func_to_host_file_result. +func_convert_file_msys_to_cygwin () +{ + $opt_debug + func_to_host_file_result="$1" + if test -n "$1"; then + func_convert_core_msys_to_w32 "$1" + func_cygpath -u "$func_convert_core_msys_to_w32_result" + func_to_host_file_result="$func_cygpath_result" + fi + func_convert_file_check "$1" "$func_to_host_file_result" +} +# end func_convert_file_msys_to_cygwin + + +# func_convert_file_nix_to_cygwin ARG +# Convert file name ARG from *nix to Cygwin format. Requires Cygwin installed +# in a wine environment, working winepath, and LT_CYGPATH set. Returns result +# in func_to_host_file_result. +func_convert_file_nix_to_cygwin () +{ + $opt_debug + func_to_host_file_result="$1" + if test -n "$1"; then + # convert from *nix to w32, then use cygpath to convert from w32 to cygwin. + func_convert_core_file_wine_to_w32 "$1" + func_cygpath -u "$func_convert_core_file_wine_to_w32_result" + func_to_host_file_result="$func_cygpath_result" + fi + func_convert_file_check "$1" "$func_to_host_file_result" +} +# end func_convert_file_nix_to_cygwin + + +############################################# +# $build to $host PATH CONVERSION FUNCTIONS # +############################################# +# invoked via `$to_host_path_cmd ARG' +# +# In each case, ARG is the path to be converted from $build to $host format. +# The result will be available in $func_to_host_path_result. +# +# Path separators are also converted from $build format to $host format. If +# ARG begins or ends with a path separator character, it is preserved (but +# converted to $host format) on output. +# +# All path conversion functions are named using the following convention: +# file name conversion function : func_convert_file_X_to_Y () +# path conversion function : func_convert_path_X_to_Y () +# where, for any given $build/$host combination the 'X_to_Y' value is the +# same. If conversion functions are added for new $build/$host combinations, +# the two new functions must follow this pattern, or func_init_to_host_path_cmd +# will break. + + +# func_init_to_host_path_cmd +# Ensures that function "pointer" variable $to_host_path_cmd is set to the +# appropriate value, based on the value of $to_host_file_cmd. +to_host_path_cmd= +func_init_to_host_path_cmd () +{ + $opt_debug + if test -z "$to_host_path_cmd"; then + func_stripname 'func_convert_file_' '' "$to_host_file_cmd" + to_host_path_cmd="func_convert_path_${func_stripname_result}" + fi +} + + +# func_to_host_path ARG +# Converts the path ARG from $build format to $host format. Return result +# in func_to_host_path_result. +func_to_host_path () +{ + $opt_debug + func_init_to_host_path_cmd + $to_host_path_cmd "$1" +} +# end func_to_host_path + + +# func_convert_path_noop ARG +# Copy ARG to func_to_host_path_result. +func_convert_path_noop () +{ + func_to_host_path_result="$1" +} +# end func_convert_path_noop + + +# func_convert_path_msys_to_w32 ARG +# Convert path ARG from (mingw) MSYS to (mingw) w32 format; automatic +# conversion to w32 is not available inside the cwrapper. Returns result in +# func_to_host_path_result. +func_convert_path_msys_to_w32 () +{ + $opt_debug + func_to_host_path_result="$1" + if test -n "$1"; then + # Remove leading and trailing path separator characters from ARG. MSYS + # behavior is inconsistent here; cygpath turns them into '.;' and ';.'; + # and winepath ignores them completely. + func_stripname : : "$1" + func_to_host_path_tmp1=$func_stripname_result + func_convert_core_msys_to_w32 "$func_to_host_path_tmp1" + func_to_host_path_result="$func_convert_core_msys_to_w32_result" + func_convert_path_check : ";" \ + "$func_to_host_path_tmp1" "$func_to_host_path_result" + func_convert_path_front_back_pathsep ":*" "*:" ";" "$1" + fi +} +# end func_convert_path_msys_to_w32 + + +# func_convert_path_cygwin_to_w32 ARG +# Convert path ARG from Cygwin to w32 format. Returns result in +# func_to_host_file_result. +func_convert_path_cygwin_to_w32 () +{ + $opt_debug + func_to_host_path_result="$1" + if test -n "$1"; then + # See func_convert_path_msys_to_w32: + func_stripname : : "$1" + func_to_host_path_tmp1=$func_stripname_result + func_to_host_path_result=`cygpath -m -p "$func_to_host_path_tmp1"` + func_convert_path_check : ";" \ + "$func_to_host_path_tmp1" "$func_to_host_path_result" + func_convert_path_front_back_pathsep ":*" "*:" ";" "$1" + fi +} +# end func_convert_path_cygwin_to_w32 + + +# func_convert_path_nix_to_w32 ARG +# Convert path ARG from *nix to w32 format. Requires a wine environment and +# a working winepath. Returns result in func_to_host_file_result. +func_convert_path_nix_to_w32 () +{ + $opt_debug + func_to_host_path_result="$1" + if test -n "$1"; then + # See func_convert_path_msys_to_w32: + func_stripname : : "$1" + func_to_host_path_tmp1=$func_stripname_result + func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1" + func_to_host_path_result="$func_convert_core_path_wine_to_w32_result" + func_convert_path_check : ";" \ + "$func_to_host_path_tmp1" "$func_to_host_path_result" + func_convert_path_front_back_pathsep ":*" "*:" ";" "$1" + fi +} +# end func_convert_path_nix_to_w32 + + +# func_convert_path_msys_to_cygwin ARG +# Convert path ARG from MSYS to Cygwin format. Requires LT_CYGPATH set. +# Returns result in func_to_host_file_result. +func_convert_path_msys_to_cygwin () +{ + $opt_debug + func_to_host_path_result="$1" + if test -n "$1"; then + # See func_convert_path_msys_to_w32: + func_stripname : : "$1" + func_to_host_path_tmp1=$func_stripname_result + func_convert_core_msys_to_w32 "$func_to_host_path_tmp1" + func_cygpath -u -p "$func_convert_core_msys_to_w32_result" + func_to_host_path_result="$func_cygpath_result" + func_convert_path_check : : \ + "$func_to_host_path_tmp1" "$func_to_host_path_result" + func_convert_path_front_back_pathsep ":*" "*:" : "$1" + fi +} +# end func_convert_path_msys_to_cygwin + + +# func_convert_path_nix_to_cygwin ARG +# Convert path ARG from *nix to Cygwin format. Requires Cygwin installed in a +# a wine environment, working winepath, and LT_CYGPATH set. Returns result in +# func_to_host_file_result. +func_convert_path_nix_to_cygwin () +{ + $opt_debug + func_to_host_path_result="$1" + if test -n "$1"; then + # Remove leading and trailing path separator characters from + # ARG. msys behavior is inconsistent here, cygpath turns them + # into '.;' and ';.', and winepath ignores them completely. + func_stripname : : "$1" + func_to_host_path_tmp1=$func_stripname_result + func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1" + func_cygpath -u -p "$func_convert_core_path_wine_to_w32_result" + func_to_host_path_result="$func_cygpath_result" + func_convert_path_check : : \ + "$func_to_host_path_tmp1" "$func_to_host_path_result" + func_convert_path_front_back_pathsep ":*" "*:" : "$1" + fi +} +# end func_convert_path_nix_to_cygwin + + +# func_mode_compile arg... +func_mode_compile () +{ + $opt_debug + # Get the compilation command and the source file. + base_compile= + srcfile="$nonopt" # always keep a non-empty value in "srcfile" + suppress_opt=yes + suppress_output= + arg_mode=normal + libobj= + later= + pie_flag= + + for arg + do + case $arg_mode in + arg ) + # do not "continue". Instead, add this to base_compile + lastarg="$arg" + arg_mode=normal + ;; + + target ) + libobj="$arg" + arg_mode=normal + continue + ;; + + normal ) + # Accept any command-line options. + case $arg in + -o) + test -n "$libobj" && \ + func_fatal_error "you cannot specify \`-o' more than once" + arg_mode=target + continue + ;; + + -pie | -fpie | -fPIE) + pie_flag+=" $arg" + continue + ;; + + -shared | -static | -prefer-pic | -prefer-non-pic) + later+=" $arg" + continue + ;; + + -no-suppress) + suppress_opt=no + continue + ;; + + -Xcompiler) + arg_mode=arg # the next one goes into the "base_compile" arg list + continue # The current "srcfile" will either be retained or + ;; # replaced later. I would guess that would be a bug. + + -Wc,*) + func_stripname '-Wc,' '' "$arg" + args=$func_stripname_result + lastarg= + save_ifs="$IFS"; IFS=',' + for arg in $args; do + IFS="$save_ifs" + func_append_quoted lastarg "$arg" + done + IFS="$save_ifs" + func_stripname ' ' '' "$lastarg" + lastarg=$func_stripname_result + + # Add the arguments to base_compile. + base_compile+=" $lastarg" + continue + ;; + + *) + # Accept the current argument as the source file. + # The previous "srcfile" becomes the current argument. + # + lastarg="$srcfile" + srcfile="$arg" + ;; + esac # case $arg + ;; + esac # case $arg_mode + + # Aesthetically quote the previous argument. + func_append_quoted base_compile "$lastarg" + done # for arg + + case $arg_mode in + arg) + func_fatal_error "you must specify an argument for -Xcompile" + ;; + target) + func_fatal_error "you must specify a target with \`-o'" + ;; + *) + # Get the name of the library object. + test -z "$libobj" && { + func_basename "$srcfile" + libobj="$func_basename_result" + } + ;; + esac + + # Recognize several different file suffixes. + # If the user specifies -o file.o, it is replaced with file.lo + case $libobj in + *.[cCFSifmso] | \ + *.ada | *.adb | *.ads | *.asm | \ + *.c++ | *.cc | *.ii | *.class | *.cpp | *.cxx | \ + *.[fF][09]? | *.for | *.java | *.go | *.obj | *.sx | *.cu | *.cup) + func_xform "$libobj" + libobj=$func_xform_result + ;; + esac + + case $libobj in + *.lo) func_lo2o "$libobj"; obj=$func_lo2o_result ;; + *) + func_fatal_error "cannot determine name of library object from \`$libobj'" + ;; + esac + + func_infer_tag $base_compile + + for arg in $later; do + case $arg in + -shared) + test "$build_libtool_libs" != yes && \ + func_fatal_configuration "can not build a shared library" + build_old_libs=no + continue + ;; + + -static) + build_libtool_libs=no + build_old_libs=yes + continue + ;; + + -prefer-pic) + pic_mode=yes + continue + ;; + + -prefer-non-pic) + pic_mode=no + continue + ;; + esac + done + + func_quote_for_eval "$libobj" + test "X$libobj" != "X$func_quote_for_eval_result" \ + && $ECHO "X$libobj" | $GREP '[]~#^*{};<>?"'"'"' &()|`$[]' \ + && func_warning "libobj name \`$libobj' may not contain shell special characters." + func_dirname_and_basename "$obj" "/" "" + objname="$func_basename_result" + xdir="$func_dirname_result" + lobj=${xdir}$objdir/$objname + + test -z "$base_compile" && \ + func_fatal_help "you must specify a compilation command" + + # Delete any leftover library objects. + if test "$build_old_libs" = yes; then + removelist="$obj $lobj $libobj ${libobj}T" + else + removelist="$lobj $libobj ${libobj}T" + fi + + # On Cygwin there's no "real" PIC flag so we must build both object types + case $host_os in + cygwin* | mingw* | pw32* | os2* | cegcc*) + pic_mode=default + ;; + esac + if test "$pic_mode" = no && test "$deplibs_check_method" != pass_all; then + # non-PIC code in shared libraries is not supported + pic_mode=default + fi + + # Calculate the filename of the output object if compiler does + # not support -o with -c + if test "$compiler_c_o" = no; then + output_obj=`$ECHO "$srcfile" | $SED 's%^.*/%%; s%\.[^.]*$%%'`.${objext} + lockfile="$output_obj.lock" + else + output_obj= + need_locks=no + lockfile= + fi + + # Lock this critical section if it is needed + # We use this script file to make the link, it avoids creating a new file + if test "$need_locks" = yes; then + until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do + func_echo "Waiting for $lockfile to be removed" + sleep 2 + done + elif test "$need_locks" = warn; then + if test -f "$lockfile"; then + $ECHO "\ +*** ERROR, $lockfile exists and contains: +`cat $lockfile 2>/dev/null` + +This indicates that another process is trying to use the same +temporary object file, and libtool could not work around it because +your compiler does not support \`-c' and \`-o' together. If you +repeat this compilation, it may succeed, by chance, but you had better +avoid parallel builds (make -j) in this platform, or get a better +compiler." + + $opt_dry_run || $RM $removelist + exit $EXIT_FAILURE + fi + removelist+=" $output_obj" + $ECHO "$srcfile" > "$lockfile" + fi + + $opt_dry_run || $RM $removelist + removelist+=" $lockfile" + trap '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' 1 2 15 + + func_to_tool_file "$srcfile" func_convert_file_msys_to_w32 + srcfile=$func_to_tool_file_result + func_quote_for_eval "$srcfile" + qsrcfile=$func_quote_for_eval_result + + # Only build a PIC object if we are building libtool libraries. + if test "$build_libtool_libs" = yes; then + # Without this assignment, base_compile gets emptied. + fbsd_hideous_sh_bug=$base_compile + + if test "$pic_mode" != no; then + command="$base_compile $qsrcfile $pic_flag" + else + # Don't build PIC code + command="$base_compile $qsrcfile" + fi + + func_mkdir_p "$xdir$objdir" + + if test -z "$output_obj"; then + # Place PIC objects in $objdir + command+=" -o $lobj" + fi + + func_show_eval_locale "$command" \ + 'test -n "$output_obj" && $RM $removelist; exit $EXIT_FAILURE' + + if test "$need_locks" = warn && + test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then + $ECHO "\ +*** ERROR, $lockfile contains: +`cat $lockfile 2>/dev/null` + +but it should contain: +$srcfile + +This indicates that another process is trying to use the same +temporary object file, and libtool could not work around it because +your compiler does not support \`-c' and \`-o' together. If you +repeat this compilation, it may succeed, by chance, but you had better +avoid parallel builds (make -j) in this platform, or get a better +compiler." + + $opt_dry_run || $RM $removelist + exit $EXIT_FAILURE + fi + + # Just move the object if needed, then go on to compile the next one + if test -n "$output_obj" && test "X$output_obj" != "X$lobj"; then + func_show_eval '$MV "$output_obj" "$lobj"' \ + 'error=$?; $opt_dry_run || $RM $removelist; exit $error' + fi + + # Allow error messages only from the first compilation. + if test "$suppress_opt" = yes; then + suppress_output=' >/dev/null 2>&1' + fi + fi + + # Only build a position-dependent object if we build old libraries. + if test "$build_old_libs" = yes; then + if test "$pic_mode" != yes; then + # Don't build PIC code + command="$base_compile $qsrcfile$pie_flag" + else + command="$base_compile $qsrcfile $pic_flag" + fi + if test "$compiler_c_o" = yes; then + command+=" -o $obj" + fi + + # Suppress compiler output if we already did a PIC compilation. + command+="$suppress_output" + func_show_eval_locale "$command" \ + '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' + + if test "$need_locks" = warn && + test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then + $ECHO "\ +*** ERROR, $lockfile contains: +`cat $lockfile 2>/dev/null` + +but it should contain: +$srcfile + +This indicates that another process is trying to use the same +temporary object file, and libtool could not work around it because +your compiler does not support \`-c' and \`-o' together. If you +repeat this compilation, it may succeed, by chance, but you had better +avoid parallel builds (make -j) in this platform, or get a better +compiler." + + $opt_dry_run || $RM $removelist + exit $EXIT_FAILURE + fi + + # Just move the object if needed + if test -n "$output_obj" && test "X$output_obj" != "X$obj"; then + func_show_eval '$MV "$output_obj" "$obj"' \ + 'error=$?; $opt_dry_run || $RM $removelist; exit $error' + fi + fi + + $opt_dry_run || { + func_write_libtool_object "$libobj" "$objdir/$objname" "$objname" + + # Unlock the critical section if it was locked + if test "$need_locks" != no; then + removelist=$lockfile + $RM "$lockfile" + fi + } + + exit $EXIT_SUCCESS +} + +$opt_help || { + test "$opt_mode" = compile && func_mode_compile ${1+"$@"} +} + +func_mode_help () +{ + # We need to display help for each of the modes. + case $opt_mode in + "") + # Generic help is extracted from the usage comments + # at the start of this file. + func_help + ;; + + clean) + $ECHO \ +"Usage: $progname [OPTION]... --mode=clean RM [RM-OPTION]... FILE... + +Remove files from the build directory. + +RM is the name of the program to use to delete files associated with each FILE +(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed +to RM. + +If FILE is a libtool library, object or program, all the files associated +with it are deleted. Otherwise, only FILE itself is deleted using RM." + ;; + + compile) + $ECHO \ +"Usage: $progname [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE + +Compile a source file into a libtool library object. + +This mode accepts the following additional options: + + -o OUTPUT-FILE set the output file name to OUTPUT-FILE + -no-suppress do not suppress compiler output for multiple passes + -prefer-pic try to build PIC objects only + -prefer-non-pic try to build non-PIC objects only + -shared do not build a \`.o' file suitable for static linking + -static only build a \`.o' file suitable for static linking + -Wc,FLAG pass FLAG directly to the compiler + +COMPILE-COMMAND is a command to be used in creating a \`standard' object file +from the given SOURCEFILE. + +The output file name is determined by removing the directory component from +SOURCEFILE, then substituting the C source code suffix \`.c' with the +library object suffix, \`.lo'." + ;; + + execute) + $ECHO \ +"Usage: $progname [OPTION]... --mode=execute COMMAND [ARGS]... + +Automatically set library path, then run a program. + +This mode accepts the following additional options: + + -dlopen FILE add the directory containing FILE to the library path + +This mode sets the library path environment variable according to \`-dlopen' +flags. + +If any of the ARGS are libtool executable wrappers, then they are translated +into their corresponding uninstalled binary, and any of their required library +directories are added to the library path. + +Then, COMMAND is executed, with ARGS as arguments." + ;; + + finish) + $ECHO \ +"Usage: $progname [OPTION]... --mode=finish [LIBDIR]... + +Complete the installation of libtool libraries. + +Each LIBDIR is a directory that contains libtool libraries. + +The commands that this mode executes may require superuser privileges. Use +the \`--dry-run' option if you just want to see what would be executed." + ;; + + install) + $ECHO \ +"Usage: $progname [OPTION]... --mode=install INSTALL-COMMAND... + +Install executables or libraries. + +INSTALL-COMMAND is the installation command. The first component should be +either the \`install' or \`cp' program. + +The following components of INSTALL-COMMAND are treated specially: + + -inst-prefix-dir PREFIX-DIR Use PREFIX-DIR as a staging area for installation + +The rest of the components are interpreted as arguments to that command (only +BSD-compatible install options are recognized)." + ;; + + link) + $ECHO \ +"Usage: $progname [OPTION]... --mode=link LINK-COMMAND... + +Link object files or libraries together to form another library, or to +create an executable program. + +LINK-COMMAND is a command using the C compiler that you would use to create +a program from several object files. + +The following components of LINK-COMMAND are treated specially: + + -all-static do not do any dynamic linking at all + -avoid-version do not add a version suffix if possible + -bindir BINDIR specify path to binaries directory (for systems where + libraries must be found in the PATH setting at runtime) + -dlopen FILE \`-dlpreopen' FILE if it cannot be dlopened at runtime + -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols + -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3) + -export-symbols SYMFILE + try to export only the symbols listed in SYMFILE + -export-symbols-regex REGEX + try to export only the symbols matching REGEX + -LLIBDIR search LIBDIR for required installed libraries + -lNAME OUTPUT-FILE requires the installed library libNAME + -module build a library that can dlopened + -no-fast-install disable the fast-install mode + -no-install link a not-installable executable + -no-undefined declare that a library does not refer to external symbols + -o OUTPUT-FILE create OUTPUT-FILE from the specified objects + -objectlist FILE Use a list of object files found in FILE to specify objects + -precious-files-regex REGEX + don't remove output files matching REGEX + -release RELEASE specify package release information + -rpath LIBDIR the created library will eventually be installed in LIBDIR + -R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries + -shared only do dynamic linking of libtool libraries + -shrext SUFFIX override the standard shared library file extension + -static do not do any dynamic linking of uninstalled libtool libraries + -static-libtool-libs + do not do any dynamic linking of libtool libraries + -version-info CURRENT[:REVISION[:AGE]] + specify library version info [each variable defaults to 0] + -weak LIBNAME declare that the target provides the LIBNAME interface + -Wc,FLAG + -Xcompiler FLAG pass linker-specific FLAG directly to the compiler + -Wl,FLAG + -Xlinker FLAG pass linker-specific FLAG directly to the linker + -XCClinker FLAG pass link-specific FLAG to the compiler driver (CC) + +All other options (arguments beginning with \`-') are ignored. + +Every other argument is treated as a filename. Files ending in \`.la' are +treated as uninstalled libtool libraries, other files are standard or library +object files. + +If the OUTPUT-FILE ends in \`.la', then a libtool library is created, +only library objects (\`.lo' files) may be specified, and \`-rpath' is +required, except when creating a convenience library. + +If OUTPUT-FILE ends in \`.a' or \`.lib', then a standard library is created +using \`ar' and \`ranlib', or on Windows using \`lib'. + +If OUTPUT-FILE ends in \`.lo' or \`.${objext}', then a reloadable object file +is created, otherwise an executable program is created." + ;; + + uninstall) + $ECHO \ +"Usage: $progname [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE... + +Remove libraries from an installation directory. + +RM is the name of the program to use to delete files associated with each FILE +(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed +to RM. + +If FILE is a libtool library, all the files associated with it are deleted. +Otherwise, only FILE itself is deleted using RM." + ;; + + *) + func_fatal_help "invalid operation mode \`$opt_mode'" + ;; + esac + + echo + $ECHO "Try \`$progname --help' for more information about other modes." +} + +# Now that we've collected a possible --mode arg, show help if necessary +if $opt_help; then + if test "$opt_help" = :; then + func_mode_help + else + { + func_help noexit + for opt_mode in compile link execute install finish uninstall clean; do + func_mode_help + done + } | sed -n '1p; 2,$s/^Usage:/ or: /p' + { + func_help noexit + for opt_mode in compile link execute install finish uninstall clean; do + echo + func_mode_help + done + } | + sed '1d + /^When reporting/,/^Report/{ + H + d + } + $x + /information about other modes/d + /more detailed .*MODE/d + s/^Usage:.*--mode=\([^ ]*\) .*/Description of \1 mode:/' + fi + exit $? +fi + + +# func_mode_execute arg... +func_mode_execute () +{ + $opt_debug + # The first argument is the command name. + cmd="$nonopt" + test -z "$cmd" && \ + func_fatal_help "you must specify a COMMAND" + + # Handle -dlopen flags immediately. + for file in $opt_dlopen; do + test -f "$file" \ + || func_fatal_help "\`$file' is not a file" + + dir= + case $file in + *.la) + func_resolve_sysroot "$file" + file=$func_resolve_sysroot_result + + # Check to see that this really is a libtool archive. + func_lalib_unsafe_p "$file" \ + || func_fatal_help "\`$lib' is not a valid libtool archive" + + # Read the libtool library. + dlname= + library_names= + func_source "$file" + + # Skip this library if it cannot be dlopened. + if test -z "$dlname"; then + # Warn if it was a shared library. + test -n "$library_names" && \ + func_warning "\`$file' was not linked with \`-export-dynamic'" + continue + fi + + func_dirname "$file" "" "." + dir="$func_dirname_result" + + if test -f "$dir/$objdir/$dlname"; then + dir+="/$objdir" + else + if test ! -f "$dir/$dlname"; then + func_fatal_error "cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'" + fi + fi + ;; + + *.lo) + # Just add the directory containing the .lo file. + func_dirname "$file" "" "." + dir="$func_dirname_result" + ;; + + *) + func_warning "\`-dlopen' is ignored for non-libtool libraries and objects" + continue + ;; + esac + + # Get the absolute pathname. + absdir=`cd "$dir" && pwd` + test -n "$absdir" && dir="$absdir" + + # Now add the directory to shlibpath_var. + if eval "test -z \"\$$shlibpath_var\""; then + eval "$shlibpath_var=\"\$dir\"" + else + eval "$shlibpath_var=\"\$dir:\$$shlibpath_var\"" + fi + done + + # This variable tells wrapper scripts just to set shlibpath_var + # rather than running their programs. + libtool_execute_magic="$magic" + + # Check if any of the arguments is a wrapper script. + args= + for file + do + case $file in + -* | *.la | *.lo ) ;; + *) + # Do a test to see if this is really a libtool program. + if func_ltwrapper_script_p "$file"; then + func_source "$file" + # Transform arg to wrapped name. + file="$progdir/$program" + elif func_ltwrapper_executable_p "$file"; then + func_ltwrapper_scriptname "$file" + func_source "$func_ltwrapper_scriptname_result" + # Transform arg to wrapped name. + file="$progdir/$program" + fi + ;; + esac + # Quote arguments (to preserve shell metacharacters). + func_append_quoted args "$file" + done + + if test "X$opt_dry_run" = Xfalse; then + if test -n "$shlibpath_var"; then + # Export the shlibpath_var. + eval "export $shlibpath_var" + fi + + # Restore saved environment variables + for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES + do + eval "if test \"\${save_$lt_var+set}\" = set; then + $lt_var=\$save_$lt_var; export $lt_var + else + $lt_unset $lt_var + fi" + done + + # Now prepare to actually exec the command. + exec_cmd="\$cmd$args" + else + # Display what would be done. + if test -n "$shlibpath_var"; then + eval "\$ECHO \"\$shlibpath_var=\$$shlibpath_var\"" + echo "export $shlibpath_var" + fi + $ECHO "$cmd$args" + exit $EXIT_SUCCESS + fi +} + +test "$opt_mode" = execute && func_mode_execute ${1+"$@"} + + +# func_mode_finish arg... +func_mode_finish () +{ + $opt_debug + libs= + libdirs= + admincmds= + + for opt in "$nonopt" ${1+"$@"} + do + if test -d "$opt"; then + libdirs+=" $opt" + + elif test -f "$opt"; then + if func_lalib_unsafe_p "$opt"; then + libs+=" $opt" + else + func_warning "\`$opt' is not a valid libtool archive" + fi + + else + func_fatal_error "invalid argument \`$opt'" + fi + done + + if test -n "$libs"; then + if test -n "$lt_sysroot"; then + sysroot_regex=`$ECHO "$lt_sysroot" | $SED "$sed_make_literal_regex"` + sysroot_cmd="s/\([ ']\)$sysroot_regex/\1/g;" + else + sysroot_cmd= + fi + + # Remove sysroot references + if $opt_dry_run; then + for lib in $libs; do + echo "removing references to $lt_sysroot and \`=' prefixes from $lib" + done + else + tmpdir=`func_mktempdir` + for lib in $libs; do + sed -e "${sysroot_cmd} s/\([ ']-[LR]\)=/\1/g; s/\([ ']\)=/\1/g" $lib \ + > $tmpdir/tmp-la + mv -f $tmpdir/tmp-la $lib + done + ${RM}r "$tmpdir" + fi + fi + + if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then + for libdir in $libdirs; do + if test -n "$finish_cmds"; then + # Do each command in the finish commands. + func_execute_cmds "$finish_cmds" 'admincmds="$admincmds +'"$cmd"'"' + fi + if test -n "$finish_eval"; then + # Do the single finish_eval. + eval cmds=\"$finish_eval\" + $opt_dry_run || eval "$cmds" || admincmds+=" + $cmds" + fi + done + fi + + # Exit here if they wanted silent mode. + $opt_silent && exit $EXIT_SUCCESS + + if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then + echo "----------------------------------------------------------------------" + echo "Libraries have been installed in:" + for libdir in $libdirs; do + $ECHO " $libdir" + done + echo + echo "If you ever happen to want to link against installed libraries" + echo "in a given directory, LIBDIR, you must either use libtool, and" + echo "specify the full pathname of the library, or use the \`-LLIBDIR'" + echo "flag during linking and do at least one of the following:" + if test -n "$shlibpath_var"; then + echo " - add LIBDIR to the \`$shlibpath_var' environment variable" + echo " during execution" + fi + if test -n "$runpath_var"; then + echo " - add LIBDIR to the \`$runpath_var' environment variable" + echo " during linking" + fi + if test -n "$hardcode_libdir_flag_spec"; then + libdir=LIBDIR + eval flag=\"$hardcode_libdir_flag_spec\" + + $ECHO " - use the \`$flag' linker flag" + fi + if test -n "$admincmds"; then + $ECHO " - have your system administrator run these commands:$admincmds" + fi + if test -f /etc/ld.so.conf; then + echo " - have your system administrator add LIBDIR to \`/etc/ld.so.conf'" + fi + echo + + echo "See any operating system documentation about shared libraries for" + case $host in + solaris2.[6789]|solaris2.1[0-9]) + echo "more information, such as the ld(1), crle(1) and ld.so(8) manual" + echo "pages." + ;; + *) + echo "more information, such as the ld(1) and ld.so(8) manual pages." + ;; + esac + echo "----------------------------------------------------------------------" + fi + exit $EXIT_SUCCESS +} + +test "$opt_mode" = finish && func_mode_finish ${1+"$@"} + + +# func_mode_install arg... +func_mode_install () +{ + $opt_debug + # There may be an optional sh(1) argument at the beginning of + # install_prog (especially on Windows NT). + if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh || + # Allow the use of GNU shtool's install command. + case $nonopt in *shtool*) :;; *) false;; esac; then + # Aesthetically quote it. + func_quote_for_eval "$nonopt" + install_prog="$func_quote_for_eval_result " + arg=$1 + shift + else + install_prog= + arg=$nonopt + fi + + # The real first argument should be the name of the installation program. + # Aesthetically quote it. + func_quote_for_eval "$arg" + install_prog+="$func_quote_for_eval_result" + install_shared_prog=$install_prog + case " $install_prog " in + *[\\\ /]cp\ *) install_cp=: ;; + *) install_cp=false ;; + esac + + # We need to accept at least all the BSD install flags. + dest= + files= + opts= + prev= + install_type= + isdir=no + stripme= + no_mode=: + for arg + do + arg2= + if test -n "$dest"; then + files+=" $dest" + dest=$arg + continue + fi + + case $arg in + -d) isdir=yes ;; + -f) + if $install_cp; then :; else + prev=$arg + fi + ;; + -g | -m | -o) + prev=$arg + ;; + -s) + stripme=" -s" + continue + ;; + -*) + ;; + *) + # If the previous option needed an argument, then skip it. + if test -n "$prev"; then + if test "x$prev" = x-m && test -n "$install_override_mode"; then + arg2=$install_override_mode + no_mode=false + fi + prev= + else + dest=$arg + continue + fi + ;; + esac + + # Aesthetically quote the argument. + func_quote_for_eval "$arg" + install_prog+=" $func_quote_for_eval_result" + if test -n "$arg2"; then + func_quote_for_eval "$arg2" + fi + install_shared_prog+=" $func_quote_for_eval_result" + done + + test -z "$install_prog" && \ + func_fatal_help "you must specify an install program" + + test -n "$prev" && \ + func_fatal_help "the \`$prev' option requires an argument" + + if test -n "$install_override_mode" && $no_mode; then + if $install_cp; then :; else + func_quote_for_eval "$install_override_mode" + install_shared_prog+=" -m $func_quote_for_eval_result" + fi + fi + + if test -z "$files"; then + if test -z "$dest"; then + func_fatal_help "no file or destination specified" + else + func_fatal_help "you must specify a destination" + fi + fi + + # Strip any trailing slash from the destination. + func_stripname '' '/' "$dest" + dest=$func_stripname_result + + # Check to see that the destination is a directory. + test -d "$dest" && isdir=yes + if test "$isdir" = yes; then + destdir="$dest" + destname= + else + func_dirname_and_basename "$dest" "" "." + destdir="$func_dirname_result" + destname="$func_basename_result" + + # Not a directory, so check to see that there is only one file specified. + set dummy $files; shift + test "$#" -gt 1 && \ + func_fatal_help "\`$dest' is not a directory" + fi + case $destdir in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + for file in $files; do + case $file in + *.lo) ;; + *) + func_fatal_help "\`$destdir' must be an absolute directory name" + ;; + esac + done + ;; + esac + + # This variable tells wrapper scripts just to set variables rather + # than running their programs. + libtool_install_magic="$magic" + + staticlibs= + future_libdirs= + current_libdirs= + for file in $files; do + + # Do each installation. + case $file in + *.$libext) + # Do the static libraries later. + staticlibs+=" $file" + ;; + + *.la) + func_resolve_sysroot "$file" + file=$func_resolve_sysroot_result + + # Check to see that this really is a libtool archive. + func_lalib_unsafe_p "$file" \ + || func_fatal_help "\`$file' is not a valid libtool archive" + + library_names= + old_library= + relink_command= + func_source "$file" + + # Add the libdir to current_libdirs if it is the destination. + if test "X$destdir" = "X$libdir"; then + case "$current_libdirs " in + *" $libdir "*) ;; + *) current_libdirs+=" $libdir" ;; + esac + else + # Note the libdir as a future libdir. + case "$future_libdirs " in + *" $libdir "*) ;; + *) future_libdirs+=" $libdir" ;; + esac + fi + + func_dirname "$file" "/" "" + dir="$func_dirname_result" + dir+="$objdir" + + if test -n "$relink_command"; then + # Determine the prefix the user has applied to our future dir. + inst_prefix_dir=`$ECHO "$destdir" | $SED -e "s%$libdir\$%%"` + + # Don't allow the user to place us outside of our expected + # location b/c this prevents finding dependent libraries that + # are installed to the same prefix. + # At present, this check doesn't affect windows .dll's that + # are installed into $libdir/../bin (currently, that works fine) + # but it's something to keep an eye on. + test "$inst_prefix_dir" = "$destdir" && \ + func_fatal_error "error: cannot install \`$file' to a directory not ending in $libdir" + + if test -n "$inst_prefix_dir"; then + # Stick the inst_prefix_dir data into the link command. + relink_command=`$ECHO "$relink_command" | $SED "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"` + else + relink_command=`$ECHO "$relink_command" | $SED "s%@inst_prefix_dir@%%"` + fi + + func_warning "relinking \`$file'" + func_show_eval "$relink_command" \ + 'func_fatal_error "error: relink \`$file'\'' with the above command before installing it"' + fi + + # See the names of the shared library. + set dummy $library_names; shift + if test -n "$1"; then + realname="$1" + shift + + srcname="$realname" + test -n "$relink_command" && srcname="$realname"T + + # Install the shared library and build the symlinks. + func_show_eval "$install_shared_prog $dir/$srcname $destdir/$realname" \ + 'exit $?' + tstripme="$stripme" + case $host_os in + cygwin* | mingw* | pw32* | cegcc*) + case $realname in + *.dll.a) + tstripme="" + ;; + esac + ;; + esac + if test -n "$tstripme" && test -n "$striplib"; then + func_show_eval "$striplib $destdir/$realname" 'exit $?' + fi + + if test "$#" -gt 0; then + # Delete the old symlinks, and create new ones. + # Try `ln -sf' first, because the `ln' binary might depend on + # the symlink we replace! Solaris /bin/ln does not understand -f, + # so we also need to try rm && ln -s. + for linkname + do + test "$linkname" != "$realname" \ + && func_show_eval "(cd $destdir && { $LN_S -f $realname $linkname || { $RM $linkname && $LN_S $realname $linkname; }; })" + done + fi + + # Do each command in the postinstall commands. + lib="$destdir/$realname" + func_execute_cmds "$postinstall_cmds" 'exit $?' + fi + + # Install the pseudo-library for information purposes. + func_basename "$file" + name="$func_basename_result" + instname="$dir/$name"i + func_show_eval "$install_prog $instname $destdir/$name" 'exit $?' + + # Maybe install the static library, too. + test -n "$old_library" && staticlibs+=" $dir/$old_library" + ;; + + *.lo) + # Install (i.e. copy) a libtool object. + + # Figure out destination file name, if it wasn't already specified. + if test -n "$destname"; then + destfile="$destdir/$destname" + else + func_basename "$file" + destfile="$func_basename_result" + destfile="$destdir/$destfile" + fi + + # Deduce the name of the destination old-style object file. + case $destfile in + *.lo) + func_lo2o "$destfile" + staticdest=$func_lo2o_result + ;; + *.$objext) + staticdest="$destfile" + destfile= + ;; + *) + func_fatal_help "cannot copy a libtool object to \`$destfile'" + ;; + esac + + # Install the libtool object if requested. + test -n "$destfile" && \ + func_show_eval "$install_prog $file $destfile" 'exit $?' + + # Install the old object if enabled. + if test "$build_old_libs" = yes; then + # Deduce the name of the old-style object file. + func_lo2o "$file" + staticobj=$func_lo2o_result + func_show_eval "$install_prog \$staticobj \$staticdest" 'exit $?' + fi + exit $EXIT_SUCCESS + ;; + + *) + # Figure out destination file name, if it wasn't already specified. + if test -n "$destname"; then + destfile="$destdir/$destname" + else + func_basename "$file" + destfile="$func_basename_result" + destfile="$destdir/$destfile" + fi + + # If the file is missing, and there is a .exe on the end, strip it + # because it is most likely a libtool script we actually want to + # install + stripped_ext="" + case $file in + *.exe) + if test ! -f "$file"; then + func_stripname '' '.exe' "$file" + file=$func_stripname_result + stripped_ext=".exe" + fi + ;; + esac + + # Do a test to see if this is really a libtool program. + case $host in + *cygwin* | *mingw*) + if func_ltwrapper_executable_p "$file"; then + func_ltwrapper_scriptname "$file" + wrapper=$func_ltwrapper_scriptname_result + else + func_stripname '' '.exe' "$file" + wrapper=$func_stripname_result + fi + ;; + *) + wrapper=$file + ;; + esac + if func_ltwrapper_script_p "$wrapper"; then + notinst_deplibs= + relink_command= + + func_source "$wrapper" + + # Check the variables that should have been set. + test -z "$generated_by_libtool_version" && \ + func_fatal_error "invalid libtool wrapper script \`$wrapper'" + + finalize=yes + for lib in $notinst_deplibs; do + # Check to see that each library is installed. + libdir= + if test -f "$lib"; then + func_source "$lib" + fi + libfile="$libdir/"`$ECHO "$lib" | $SED 's%^.*/%%g'` ### testsuite: skip nested quoting test + if test -n "$libdir" && test ! -f "$libfile"; then + func_warning "\`$lib' has not been installed in \`$libdir'" + finalize=no + fi + done + + relink_command= + func_source "$wrapper" + + outputname= + if test "$fast_install" = no && test -n "$relink_command"; then + $opt_dry_run || { + if test "$finalize" = yes; then + tmpdir=`func_mktempdir` + func_basename "$file$stripped_ext" + file="$func_basename_result" + outputname="$tmpdir/$file" + # Replace the output file specification. + relink_command=`$ECHO "$relink_command" | $SED 's%@OUTPUT@%'"$outputname"'%g'` + + $opt_silent || { + func_quote_for_expand "$relink_command" + eval "func_echo $func_quote_for_expand_result" + } + if eval "$relink_command"; then : + else + func_error "error: relink \`$file' with the above command before installing it" + $opt_dry_run || ${RM}r "$tmpdir" + continue + fi + file="$outputname" + else + func_warning "cannot relink \`$file'" + fi + } + else + # Install the binary that we compiled earlier. + file=`$ECHO "$file$stripped_ext" | $SED "s%\([^/]*\)$%$objdir/\1%"` + fi + fi + + # remove .exe since cygwin /usr/bin/install will append another + # one anyway + case $install_prog,$host in + */usr/bin/install*,*cygwin*) + case $file:$destfile in + *.exe:*.exe) + # this is ok + ;; + *.exe:*) + destfile=$destfile.exe + ;; + *:*.exe) + func_stripname '' '.exe' "$destfile" + destfile=$func_stripname_result + ;; + esac + ;; + esac + func_show_eval "$install_prog\$stripme \$file \$destfile" 'exit $?' + $opt_dry_run || if test -n "$outputname"; then + ${RM}r "$tmpdir" + fi + ;; + esac + done + + for file in $staticlibs; do + func_basename "$file" + name="$func_basename_result" + + # Set up the ranlib parameters. + oldlib="$destdir/$name" + func_to_tool_file "$oldlib" func_convert_file_msys_to_w32 + tool_oldlib=$func_to_tool_file_result + + func_show_eval "$install_prog \$file \$oldlib" 'exit $?' + + if test -n "$stripme" && test -n "$old_striplib"; then + func_show_eval "$old_striplib $tool_oldlib" 'exit $?' + fi + + # Do each command in the postinstall commands. + func_execute_cmds "$old_postinstall_cmds" 'exit $?' + done + + test -n "$future_libdirs" && \ + func_warning "remember to run \`$progname --finish$future_libdirs'" + + if test -n "$current_libdirs"; then + # Maybe just do a dry run. + $opt_dry_run && current_libdirs=" -n$current_libdirs" + exec_cmd='$SHELL $progpath $preserve_args --finish$current_libdirs' + else + exit $EXIT_SUCCESS + fi +} + +test "$opt_mode" = install && func_mode_install ${1+"$@"} + + +# func_generate_dlsyms outputname originator pic_p +# Extract symbols from dlprefiles and create ${outputname}S.o with +# a dlpreopen symbol table. +func_generate_dlsyms () +{ + $opt_debug + my_outputname="$1" + my_originator="$2" + my_pic_p="${3-no}" + my_prefix=`$ECHO "$my_originator" | sed 's%[^a-zA-Z0-9]%_%g'` + my_dlsyms= + + if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then + if test -n "$NM" && test -n "$global_symbol_pipe"; then + my_dlsyms="${my_outputname}S.c" + else + func_error "not configured to extract global symbols from dlpreopened files" + fi + fi + + if test -n "$my_dlsyms"; then + case $my_dlsyms in + "") ;; + *.c) + # Discover the nlist of each of the dlfiles. + nlist="$output_objdir/${my_outputname}.nm" + + func_show_eval "$RM $nlist ${nlist}S ${nlist}T" + + # Parse the name list into a source file. + func_verbose "creating $output_objdir/$my_dlsyms" + + $opt_dry_run || $ECHO > "$output_objdir/$my_dlsyms" "\ +/* $my_dlsyms - symbol resolution table for \`$my_outputname' dlsym emulation. */ +/* Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION */ + +#ifdef __cplusplus +extern \"C\" { +#endif + +#if defined(__GNUC__) && (((__GNUC__ == 4) && (__GNUC_MINOR__ >= 4)) || (__GNUC__ > 4)) +#pragma GCC diagnostic ignored \"-Wstrict-prototypes\" +#endif + +/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */ +#if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE) +/* DATA imports from DLLs on WIN32 con't be const, because runtime + relocations are performed -- see ld's documentation on pseudo-relocs. */ +# define LT_DLSYM_CONST +#elif defined(__osf__) +/* This system does not cope well with relocations in const data. */ +# define LT_DLSYM_CONST +#else +# define LT_DLSYM_CONST const +#endif + +/* External symbol declarations for the compiler. */\ +" + + if test "$dlself" = yes; then + func_verbose "generating symbol list for \`$output'" + + $opt_dry_run || echo ': @PROGRAM@ ' > "$nlist" + + # Add our own program objects to the symbol list. + progfiles=`$ECHO "$objs$old_deplibs" | $SP2NL | $SED "$lo2o" | $NL2SP` + for progfile in $progfiles; do + func_to_tool_file "$progfile" func_convert_file_msys_to_w32 + func_verbose "extracting global C symbols from \`$func_to_tool_file_result'" + $opt_dry_run || eval "$NM $func_to_tool_file_result | $global_symbol_pipe >> '$nlist'" + done + + if test -n "$exclude_expsyms"; then + $opt_dry_run || { + eval '$EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T' + eval '$MV "$nlist"T "$nlist"' + } + fi + + if test -n "$export_symbols_regex"; then + $opt_dry_run || { + eval '$EGREP -e "$export_symbols_regex" "$nlist" > "$nlist"T' + eval '$MV "$nlist"T "$nlist"' + } + fi + + # Prepare the list of exported symbols + if test -z "$export_symbols"; then + export_symbols="$output_objdir/$outputname.exp" + $opt_dry_run || { + $RM $export_symbols + eval "${SED} -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"' + case $host in + *cygwin* | *mingw* | *cegcc* ) + eval "echo EXPORTS "'> "$output_objdir/$outputname.def"' + eval 'cat "$export_symbols" >> "$output_objdir/$outputname.def"' + ;; + esac + } + else + $opt_dry_run || { + eval "${SED} -e 's/\([].[*^$]\)/\\\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$outputname.exp"' + eval '$GREP -f "$output_objdir/$outputname.exp" < "$nlist" > "$nlist"T' + eval '$MV "$nlist"T "$nlist"' + case $host in + *cygwin* | *mingw* | *cegcc* ) + eval "echo EXPORTS "'> "$output_objdir/$outputname.def"' + eval 'cat "$nlist" >> "$output_objdir/$outputname.def"' + ;; + esac + } + fi + fi + + for dlprefile in $dlprefiles; do + func_verbose "extracting global C symbols from \`$dlprefile'" + func_basename "$dlprefile" + name="$func_basename_result" + case $host in + *cygwin* | *mingw* | *cegcc* ) + # if an import library, we need to obtain dlname + if func_win32_import_lib_p "$dlprefile"; then + func_tr_sh "$dlprefile" + eval "curr_lafile=\$libfile_$func_tr_sh_result" + dlprefile_dlbasename="" + if test -n "$curr_lafile" && func_lalib_p "$curr_lafile"; then + # Use subshell, to avoid clobbering current variable values + dlprefile_dlname=`source "$curr_lafile" && echo "$dlname"` + if test -n "$dlprefile_dlname" ; then + func_basename "$dlprefile_dlname" + dlprefile_dlbasename="$func_basename_result" + else + # no lafile. user explicitly requested -dlpreopen . + $sharedlib_from_linklib_cmd "$dlprefile" + dlprefile_dlbasename=$sharedlib_from_linklib_result + fi + fi + $opt_dry_run || { + if test -n "$dlprefile_dlbasename" ; then + eval '$ECHO ": $dlprefile_dlbasename" >> "$nlist"' + else + func_warning "Could not compute DLL name from $name" + eval '$ECHO ": $name " >> "$nlist"' + fi + func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32 + eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe | + $SED -e '/I __imp/d' -e 's/I __nm_/D /;s/_nm__//' >> '$nlist'" + } + else # not an import lib + $opt_dry_run || { + eval '$ECHO ": $name " >> "$nlist"' + func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32 + eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe >> '$nlist'" + } + fi + ;; + *) + $opt_dry_run || { + eval '$ECHO ": $name " >> "$nlist"' + func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32 + eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe >> '$nlist'" + } + ;; + esac + done + + $opt_dry_run || { + # Make sure we have at least an empty file. + test -f "$nlist" || : > "$nlist" + + if test -n "$exclude_expsyms"; then + $EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T + $MV "$nlist"T "$nlist" + fi + + # Try sorting and uniquifying the output. + if $GREP -v "^: " < "$nlist" | + if sort -k 3 /dev/null 2>&1; then + sort -k 3 + else + sort +2 + fi | + uniq > "$nlist"S; then + : + else + $GREP -v "^: " < "$nlist" > "$nlist"S + fi + + if test -f "$nlist"S; then + eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$my_dlsyms"' + else + echo '/* NONE */' >> "$output_objdir/$my_dlsyms" + fi + + echo >> "$output_objdir/$my_dlsyms" "\ + +/* The mapping between symbol names and symbols. */ +typedef struct { + const char *name; + void *address; +} lt_dlsymlist; +extern LT_DLSYM_CONST lt_dlsymlist +lt_${my_prefix}_LTX_preloaded_symbols[]; +LT_DLSYM_CONST lt_dlsymlist +lt_${my_prefix}_LTX_preloaded_symbols[] = +{\ + { \"$my_originator\", (void *) 0 }," + + case $need_lib_prefix in + no) + eval "$global_symbol_to_c_name_address" < "$nlist" >> "$output_objdir/$my_dlsyms" + ;; + *) + eval "$global_symbol_to_c_name_address_lib_prefix" < "$nlist" >> "$output_objdir/$my_dlsyms" + ;; + esac + echo >> "$output_objdir/$my_dlsyms" "\ + {0, (void *) 0} +}; + +/* This works around a problem in FreeBSD linker */ +#ifdef FREEBSD_WORKAROUND +static const void *lt_preloaded_setup() { + return lt_${my_prefix}_LTX_preloaded_symbols; +} +#endif + +#ifdef __cplusplus +} +#endif\ +" + } # !$opt_dry_run + + pic_flag_for_symtable= + case "$compile_command " in + *" -static "*) ;; + *) + case $host in + # compiling the symbol table file with pic_flag works around + # a FreeBSD bug that causes programs to crash when -lm is + # linked before any other PIC object. But we must not use + # pic_flag when linking with -static. The problem exists in + # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1. + *-*-freebsd2.*|*-*-freebsd3.0*|*-*-freebsdelf3.0*) + pic_flag_for_symtable=" $pic_flag -DFREEBSD_WORKAROUND" ;; + *-*-hpux*) + pic_flag_for_symtable=" $pic_flag" ;; + *) + if test "X$my_pic_p" != Xno; then + pic_flag_for_symtable=" $pic_flag" + fi + ;; + esac + ;; + esac + symtab_cflags= + for arg in $LTCFLAGS; do + case $arg in + -pie | -fpie | -fPIE) ;; + *) symtab_cflags+=" $arg" ;; + esac + done + + # Now compile the dynamic symbol file. + func_show_eval '(cd $output_objdir && $LTCC$symtab_cflags -c$no_builtin_flag$pic_flag_for_symtable "$my_dlsyms")' 'exit $?' + + # Clean up the generated files. + func_show_eval '$RM "$output_objdir/$my_dlsyms" "$nlist" "${nlist}S" "${nlist}T"' + + # Transform the symbol file into the correct name. + symfileobj="$output_objdir/${my_outputname}S.$objext" + case $host in + *cygwin* | *mingw* | *cegcc* ) + if test -f "$output_objdir/$my_outputname.def"; then + compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"` + finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"` + else + compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$symfileobj%"` + finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$symfileobj%"` + fi + ;; + *) + compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$symfileobj%"` + finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$symfileobj%"` + ;; + esac + ;; + *) + func_fatal_error "unknown suffix for \`$my_dlsyms'" + ;; + esac + else + # We keep going just in case the user didn't refer to + # lt_preloaded_symbols. The linker will fail if global_symbol_pipe + # really was required. + + # Nullify the symbol file. + compile_command=`$ECHO "$compile_command" | $SED "s% @SYMFILE@%%"` + finalize_command=`$ECHO "$finalize_command" | $SED "s% @SYMFILE@%%"` + fi +} + +# func_win32_libid arg +# return the library type of file 'arg' +# +# Need a lot of goo to handle *both* DLLs and import libs +# Has to be a shell function in order to 'eat' the argument +# that is supplied when $file_magic_command is called. +# Despite the name, also deal with 64 bit binaries. +func_win32_libid () +{ + $opt_debug + win32_libid_type="unknown" + win32_fileres=`file -L $1 2>/dev/null` + case $win32_fileres in + *ar\ archive\ import\ library*) # definitely import + win32_libid_type="x86 archive import" + ;; + *ar\ archive*) # could be an import, or static + # Keep the egrep pattern in sync with the one in _LT_CHECK_MAGIC_METHOD. + if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null | + $EGREP 'file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' >/dev/null; then + func_to_tool_file "$1" func_convert_file_msys_to_w32 + win32_nmres=`eval $NM -f posix -A \"$func_to_tool_file_result\" | + $SED -n -e ' + 1,100{ + / I /{ + s,.*,import, + p + q + } + }'` + case $win32_nmres in + import*) win32_libid_type="x86 archive import";; + *) win32_libid_type="x86 archive static";; + esac + fi + ;; + *DLL*) + win32_libid_type="x86 DLL" + ;; + *executable*) # but shell scripts are "executable" too... + case $win32_fileres in + *MS\ Windows\ PE\ Intel*) + win32_libid_type="x86 DLL" + ;; + esac + ;; + esac + $ECHO "$win32_libid_type" +} + +# func_cygming_dll_for_implib ARG +# +# Platform-specific function to extract the +# name of the DLL associated with the specified +# import library ARG. +# Invoked by eval'ing the libtool variable +# $sharedlib_from_linklib_cmd +# Result is available in the variable +# $sharedlib_from_linklib_result +func_cygming_dll_for_implib () +{ + $opt_debug + sharedlib_from_linklib_result=`$DLLTOOL --identify-strict --identify "$1"` +} + +# func_cygming_dll_for_implib_fallback_core SECTION_NAME LIBNAMEs +# +# The is the core of a fallback implementation of a +# platform-specific function to extract the name of the +# DLL associated with the specified import library LIBNAME. +# +# SECTION_NAME is either .idata$6 or .idata$7, depending +# on the platform and compiler that created the implib. +# +# Echos the name of the DLL associated with the +# specified import library. +func_cygming_dll_for_implib_fallback_core () +{ + $opt_debug + match_literal=`$ECHO "$1" | $SED "$sed_make_literal_regex"` + $OBJDUMP -s --section "$1" "$2" 2>/dev/null | + $SED '/^Contents of section '"$match_literal"':/{ + # Place marker at beginning of archive member dllname section + s/.*/====MARK====/ + p + d + } + # These lines can sometimes be longer than 43 characters, but + # are always uninteresting + /:[ ]*file format pe[i]\{,1\}-/d + /^In archive [^:]*:/d + # Ensure marker is printed + /^====MARK====/p + # Remove all lines with less than 43 characters + /^.\{43\}/!d + # From remaining lines, remove first 43 characters + s/^.\{43\}//' | + $SED -n ' + # Join marker and all lines until next marker into a single line + /^====MARK====/ b para + H + $ b para + b + :para + x + s/\n//g + # Remove the marker + s/^====MARK====// + # Remove trailing dots and whitespace + s/[\. \t]*$// + # Print + /./p' | + # we now have a list, one entry per line, of the stringified + # contents of the appropriate section of all members of the + # archive which possess that section. Heuristic: eliminate + # all those which have a first or second character that is + # a '.' (that is, objdump's representation of an unprintable + # character.) This should work for all archives with less than + # 0x302f exports -- but will fail for DLLs whose name actually + # begins with a literal '.' or a single character followed by + # a '.'. + # + # Of those that remain, print the first one. + $SED -e '/^\./d;/^.\./d;q' +} + +# func_cygming_gnu_implib_p ARG +# This predicate returns with zero status (TRUE) if +# ARG is a GNU/binutils-style import library. Returns +# with nonzero status (FALSE) otherwise. +func_cygming_gnu_implib_p () +{ + $opt_debug + func_to_tool_file "$1" func_convert_file_msys_to_w32 + func_cygming_gnu_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $EGREP ' (_head_[A-Za-z0-9_]+_[ad]l*|[A-Za-z0-9_]+_[ad]l*_iname)$'` + test -n "$func_cygming_gnu_implib_tmp" +} + +# func_cygming_ms_implib_p ARG +# This predicate returns with zero status (TRUE) if +# ARG is an MS-style import library. Returns +# with nonzero status (FALSE) otherwise. +func_cygming_ms_implib_p () +{ + $opt_debug + func_to_tool_file "$1" func_convert_file_msys_to_w32 + func_cygming_ms_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $GREP '_NULL_IMPORT_DESCRIPTOR'` + test -n "$func_cygming_ms_implib_tmp" +} + +# func_cygming_dll_for_implib_fallback ARG +# Platform-specific function to extract the +# name of the DLL associated with the specified +# import library ARG. +# +# This fallback implementation is for use when $DLLTOOL +# does not support the --identify-strict option. +# Invoked by eval'ing the libtool variable +# $sharedlib_from_linklib_cmd +# Result is available in the variable +# $sharedlib_from_linklib_result +func_cygming_dll_for_implib_fallback () +{ + $opt_debug + if func_cygming_gnu_implib_p "$1" ; then + # binutils import library + sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$7' "$1"` + elif func_cygming_ms_implib_p "$1" ; then + # ms-generated import library + sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$6' "$1"` + else + # unknown + sharedlib_from_linklib_result="" + fi +} + + +# func_extract_an_archive dir oldlib +func_extract_an_archive () +{ + $opt_debug + f_ex_an_ar_dir="$1"; shift + f_ex_an_ar_oldlib="$1" + if test "$lock_old_archive_extraction" = yes; then + lockfile=$f_ex_an_ar_oldlib.lock + until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do + func_echo "Waiting for $lockfile to be removed" + sleep 2 + done + fi + func_show_eval "(cd \$f_ex_an_ar_dir && $AR x \"\$f_ex_an_ar_oldlib\")" \ + 'stat=$?; rm -f "$lockfile"; exit $stat' + if test "$lock_old_archive_extraction" = yes; then + $opt_dry_run || rm -f "$lockfile" + fi + if ($AR t "$f_ex_an_ar_oldlib" | sort | sort -uc >/dev/null 2>&1); then + : + else + func_fatal_error "object name conflicts in archive: $f_ex_an_ar_dir/$f_ex_an_ar_oldlib" + fi +} + + +# func_extract_archives gentop oldlib ... +func_extract_archives () +{ + $opt_debug + my_gentop="$1"; shift + my_oldlibs=${1+"$@"} + my_oldobjs="" + my_xlib="" + my_xabs="" + my_xdir="" + + for my_xlib in $my_oldlibs; do + # Extract the objects. + case $my_xlib in + [\\/]* | [A-Za-z]:[\\/]*) my_xabs="$my_xlib" ;; + *) my_xabs=`pwd`"/$my_xlib" ;; + esac + func_basename "$my_xlib" + my_xlib="$func_basename_result" + my_xlib_u=$my_xlib + while :; do + case " $extracted_archives " in + *" $my_xlib_u "*) + func_arith $extracted_serial + 1 + extracted_serial=$func_arith_result + my_xlib_u=lt$extracted_serial-$my_xlib ;; + *) break ;; + esac + done + extracted_archives="$extracted_archives $my_xlib_u" + my_xdir="$my_gentop/$my_xlib_u" + + func_mkdir_p "$my_xdir" + + case $host in + *-darwin*) + func_verbose "Extracting $my_xabs" + # Do not bother doing anything if just a dry run + $opt_dry_run || { + darwin_orig_dir=`pwd` + cd $my_xdir || exit $? + darwin_archive=$my_xabs + darwin_curdir=`pwd` + darwin_base_archive=`basename "$darwin_archive"` + darwin_arches=`$LIPO -info "$darwin_archive" 2>/dev/null | $GREP Architectures 2>/dev/null || true` + if test -n "$darwin_arches"; then + darwin_arches=`$ECHO "$darwin_arches" | $SED -e 's/.*are://'` + darwin_arch= + func_verbose "$darwin_base_archive has multiple architectures $darwin_arches" + for darwin_arch in $darwin_arches ; do + func_mkdir_p "unfat-$$/${darwin_base_archive}-${darwin_arch}" + $LIPO -thin $darwin_arch -output "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}" "${darwin_archive}" + cd "unfat-$$/${darwin_base_archive}-${darwin_arch}" + func_extract_an_archive "`pwd`" "${darwin_base_archive}" + cd "$darwin_curdir" + $RM "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}" + done # $darwin_arches + ## Okay now we've a bunch of thin objects, gotta fatten them up :) + darwin_filelist=`find unfat-$$ -type f -name \*.o -print -o -name \*.lo -print | $SED -e "$basename" | sort -u` + darwin_file= + darwin_files= + for darwin_file in $darwin_filelist; do + darwin_files=`find unfat-$$ -name $darwin_file -print | sort | $NL2SP` + $LIPO -create -output "$darwin_file" $darwin_files + done # $darwin_filelist + $RM -rf unfat-$$ + cd "$darwin_orig_dir" + else + cd $darwin_orig_dir + func_extract_an_archive "$my_xdir" "$my_xabs" + fi # $darwin_arches + } # !$opt_dry_run + ;; + *) + func_extract_an_archive "$my_xdir" "$my_xabs" + ;; + esac + my_oldobjs="$my_oldobjs "`find $my_xdir -name \*.$objext -print -o -name \*.lo -print | sort | $NL2SP` + done + + func_extract_archives_result="$my_oldobjs" +} + + +# func_emit_wrapper [arg=no] +# +# Emit a libtool wrapper script on stdout. +# Don't directly open a file because we may want to +# incorporate the script contents within a cygwin/mingw +# wrapper executable. Must ONLY be called from within +# func_mode_link because it depends on a number of variables +# set therein. +# +# ARG is the value that the WRAPPER_SCRIPT_BELONGS_IN_OBJDIR +# variable will take. If 'yes', then the emitted script +# will assume that the directory in which it is stored is +# the $objdir directory. This is a cygwin/mingw-specific +# behavior. +func_emit_wrapper () +{ + func_emit_wrapper_arg1=${1-no} + + $ECHO "\ +#! $SHELL + +# $output - temporary wrapper script for $objdir/$outputname +# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION +# +# The $output program cannot be directly executed until all the libtool +# libraries that it depends on are installed. +# +# This wrapper script should never be moved out of the build directory. +# If it is, it will not operate correctly. + +# Sed substitution that helps us do robust quoting. It backslashifies +# metacharacters that are still active within double-quoted strings. +sed_quote_subst='$sed_quote_subst' + +# Be Bourne compatible +if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then + emulate sh + NULLCMD=: + # Zsh 3.x and 4.x performs word splitting on \${1+\"\$@\"}, which + # is contrary to our usage. Disable this feature. + alias -g '\${1+\"\$@\"}'='\"\$@\"' + setopt NO_GLOB_SUBST +else + case \`(set -o) 2>/dev/null\` in *posix*) set -o posix;; esac +fi +BIN_SH=xpg4; export BIN_SH # for Tru64 +DUALCASE=1; export DUALCASE # for MKS sh + +# The HP-UX ksh and POSIX shell print the target directory to stdout +# if CDPATH is set. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + +relink_command=\"$relink_command\" + +# This environment variable determines our operation mode. +if test \"\$libtool_install_magic\" = \"$magic\"; then + # install mode needs the following variables: + generated_by_libtool_version='$macro_version' + notinst_deplibs='$notinst_deplibs' +else + # When we are sourced in execute mode, \$file and \$ECHO are already set. + if test \"\$libtool_execute_magic\" != \"$magic\"; then + file=\"\$0\"" + + qECHO=`$ECHO "$ECHO" | $SED "$sed_quote_subst"` + $ECHO "\ + +# A function that is used when there is no print builtin or printf. +func_fallback_echo () +{ + eval 'cat <<_LTECHO_EOF +\$1 +_LTECHO_EOF' +} + ECHO=\"$qECHO\" + fi + +# Very basic option parsing. These options are (a) specific to +# the libtool wrapper, (b) are identical between the wrapper +# /script/ and the wrapper /executable/ which is used only on +# windows platforms, and (c) all begin with the string "--lt-" +# (application programs are unlikely to have options which match +# this pattern). +# +# There are only two supported options: --lt-debug and +# --lt-dump-script. There is, deliberately, no --lt-help. +# +# The first argument to this parsing function should be the +# script's $0 value, followed by "$@". +lt_option_debug= +func_parse_lt_options () +{ + lt_script_arg0=\$0 + shift + for lt_opt + do + case \"\$lt_opt\" in + --lt-debug) lt_option_debug=1 ;; + --lt-dump-script) + lt_dump_D=\`\$ECHO \"X\$lt_script_arg0\" | $SED -e 's/^X//' -e 's%/[^/]*$%%'\` + test \"X\$lt_dump_D\" = \"X\$lt_script_arg0\" && lt_dump_D=. + lt_dump_F=\`\$ECHO \"X\$lt_script_arg0\" | $SED -e 's/^X//' -e 's%^.*/%%'\` + cat \"\$lt_dump_D/\$lt_dump_F\" + exit 0 + ;; + --lt-*) + \$ECHO \"Unrecognized --lt- option: '\$lt_opt'\" 1>&2 + exit 1 + ;; + esac + done + + # Print the debug banner immediately: + if test -n \"\$lt_option_debug\"; then + echo \"${outputname}:${output}:\${LINENO}: libtool wrapper (GNU $PACKAGE$TIMESTAMP) $VERSION\" 1>&2 + fi +} + +# Used when --lt-debug. Prints its arguments to stdout +# (redirection is the responsibility of the caller) +func_lt_dump_args () +{ + lt_dump_args_N=1; + for lt_arg + do + \$ECHO \"${outputname}:${output}:\${LINENO}: newargv[\$lt_dump_args_N]: \$lt_arg\" + lt_dump_args_N=\`expr \$lt_dump_args_N + 1\` + done +} + +# Core function for launching the target application +func_exec_program_core () +{ +" + case $host in + # Backslashes separate directories on plain windows + *-*-mingw | *-*-os2* | *-cegcc*) + $ECHO "\ + if test -n \"\$lt_option_debug\"; then + \$ECHO \"${outputname}:${output}:\${LINENO}: newargv[0]: \$progdir\\\\\$program\" 1>&2 + func_lt_dump_args \${1+\"\$@\"} 1>&2 + fi + exec \"\$progdir\\\\\$program\" \${1+\"\$@\"} +" + ;; + + *) + $ECHO "\ + if test -n \"\$lt_option_debug\"; then + \$ECHO \"${outputname}:${output}:\${LINENO}: newargv[0]: \$progdir/\$program\" 1>&2 + func_lt_dump_args \${1+\"\$@\"} 1>&2 + fi + exec \"\$progdir/\$program\" \${1+\"\$@\"} +" + ;; + esac + $ECHO "\ + \$ECHO \"\$0: cannot exec \$program \$*\" 1>&2 + exit 1 +} + +# A function to encapsulate launching the target application +# Strips options in the --lt-* namespace from \$@ and +# launches target application with the remaining arguments. +func_exec_program () +{ + case \" \$* \" in + *\\ --lt-*) + for lt_wr_arg + do + case \$lt_wr_arg in + --lt-*) ;; + *) set x \"\$@\" \"\$lt_wr_arg\"; shift;; + esac + shift + done ;; + esac + func_exec_program_core \${1+\"\$@\"} +} + + # Parse options + func_parse_lt_options \"\$0\" \${1+\"\$@\"} + + # Find the directory that this script lives in. + thisdir=\`\$ECHO \"\$file\" | $SED 's%/[^/]*$%%'\` + test \"x\$thisdir\" = \"x\$file\" && thisdir=. + + # Follow symbolic links until we get to the real thisdir. + file=\`ls -ld \"\$file\" | $SED -n 's/.*-> //p'\` + while test -n \"\$file\"; do + destdir=\`\$ECHO \"\$file\" | $SED 's%/[^/]*\$%%'\` + + # If there was a directory component, then change thisdir. + if test \"x\$destdir\" != \"x\$file\"; then + case \"\$destdir\" in + [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;; + *) thisdir=\"\$thisdir/\$destdir\" ;; + esac + fi + + file=\`\$ECHO \"\$file\" | $SED 's%^.*/%%'\` + file=\`ls -ld \"\$thisdir/\$file\" | $SED -n 's/.*-> //p'\` + done + + # Usually 'no', except on cygwin/mingw when embedded into + # the cwrapper. + WRAPPER_SCRIPT_BELONGS_IN_OBJDIR=$func_emit_wrapper_arg1 + if test \"\$WRAPPER_SCRIPT_BELONGS_IN_OBJDIR\" = \"yes\"; then + # special case for '.' + if test \"\$thisdir\" = \".\"; then + thisdir=\`pwd\` + fi + # remove .libs from thisdir + case \"\$thisdir\" in + *[\\\\/]$objdir ) thisdir=\`\$ECHO \"\$thisdir\" | $SED 's%[\\\\/][^\\\\/]*$%%'\` ;; + $objdir ) thisdir=. ;; + esac + fi + + # Try to get the absolute directory name. + absdir=\`cd \"\$thisdir\" && pwd\` + test -n \"\$absdir\" && thisdir=\"\$absdir\" +" + + if test "$fast_install" = yes; then + $ECHO "\ + program=lt-'$outputname'$exeext + progdir=\"\$thisdir/$objdir\" + + if test ! -f \"\$progdir/\$program\" || + { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | ${SED} 1q\`; \\ + test \"X\$file\" != \"X\$progdir/\$program\"; }; then + + file=\"\$\$-\$program\" + + if test ! -d \"\$progdir\"; then + $MKDIR \"\$progdir\" + else + $RM \"\$progdir/\$file\" + fi" + + $ECHO "\ + + # relink executable if necessary + if test -n \"\$relink_command\"; then + if relink_command_output=\`eval \$relink_command 2>&1\`; then : + else + $ECHO \"\$relink_command_output\" >&2 + $RM \"\$progdir/\$file\" + exit 1 + fi + fi + + $MV \"\$progdir/\$file\" \"\$progdir/\$program\" 2>/dev/null || + { $RM \"\$progdir/\$program\"; + $MV \"\$progdir/\$file\" \"\$progdir/\$program\"; } + $RM \"\$progdir/\$file\" + fi" + else + $ECHO "\ + program='$outputname' + progdir=\"\$thisdir/$objdir\" +" + fi + + $ECHO "\ + + if test -f \"\$progdir/\$program\"; then" + + # fixup the dll searchpath if we need to. + # + # Fix the DLL searchpath if we need to. Do this before prepending + # to shlibpath, because on Windows, both are PATH and uninstalled + # libraries must come first. + if test -n "$dllsearchpath"; then + $ECHO "\ + # Add the dll search path components to the executable PATH + PATH=$dllsearchpath:\$PATH +" + fi + + # Export our shlibpath_var if we have one. + if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then + $ECHO "\ + # Add our own library path to $shlibpath_var + $shlibpath_var=\"$temp_rpath\$$shlibpath_var\" + + # Some systems cannot cope with colon-terminated $shlibpath_var + # The second colon is a workaround for a bug in BeOS R4 sed + $shlibpath_var=\`\$ECHO \"\$$shlibpath_var\" | $SED 's/::*\$//'\` + + export $shlibpath_var +" + fi + + $ECHO "\ + if test \"\$libtool_execute_magic\" != \"$magic\"; then + # Run the actual program with our arguments. + func_exec_program \${1+\"\$@\"} + fi + else + # The program doesn't exist. + \$ECHO \"\$0: error: \\\`\$progdir/\$program' does not exist\" 1>&2 + \$ECHO \"This script is just a wrapper for \$program.\" 1>&2 + \$ECHO \"See the $PACKAGE documentation for more information.\" 1>&2 + exit 1 + fi +fi\ +" +} + + +# func_emit_cwrapperexe_src +# emit the source code for a wrapper executable on stdout +# Must ONLY be called from within func_mode_link because +# it depends on a number of variable set therein. +func_emit_cwrapperexe_src () +{ + cat < +#include +#ifdef _MSC_VER +# include +# include +# include +#else +# include +# include +# ifdef __CYGWIN__ +# include +# endif +#endif +#include +#include +#include +#include +#include +#include +#include +#include + +/* declarations of non-ANSI functions */ +#if defined(__MINGW32__) +# ifdef __STRICT_ANSI__ +int _putenv (const char *); +# endif +#elif defined(__CYGWIN__) +# ifdef __STRICT_ANSI__ +char *realpath (const char *, char *); +int putenv (char *); +int setenv (const char *, const char *, int); +# endif +/* #elif defined (other platforms) ... */ +#endif + +/* portability defines, excluding path handling macros */ +#if defined(_MSC_VER) +# define setmode _setmode +# define stat _stat +# define chmod _chmod +# define getcwd _getcwd +# define putenv _putenv +# define S_IXUSR _S_IEXEC +# ifndef _INTPTR_T_DEFINED +# define _INTPTR_T_DEFINED +# define intptr_t int +# endif +#elif defined(__MINGW32__) +# define setmode _setmode +# define stat _stat +# define chmod _chmod +# define getcwd _getcwd +# define putenv _putenv +#elif defined(__CYGWIN__) +# define HAVE_SETENV +# define FOPEN_WB "wb" +/* #elif defined (other platforms) ... */ +#endif + +#if defined(PATH_MAX) +# define LT_PATHMAX PATH_MAX +#elif defined(MAXPATHLEN) +# define LT_PATHMAX MAXPATHLEN +#else +# define LT_PATHMAX 1024 +#endif + +#ifndef S_IXOTH +# define S_IXOTH 0 +#endif +#ifndef S_IXGRP +# define S_IXGRP 0 +#endif + +/* path handling portability macros */ +#ifndef DIR_SEPARATOR +# define DIR_SEPARATOR '/' +# define PATH_SEPARATOR ':' +#endif + +#if defined (_WIN32) || defined (__MSDOS__) || defined (__DJGPP__) || \ + defined (__OS2__) +# define HAVE_DOS_BASED_FILE_SYSTEM +# define FOPEN_WB "wb" +# ifndef DIR_SEPARATOR_2 +# define DIR_SEPARATOR_2 '\\' +# endif +# ifndef PATH_SEPARATOR_2 +# define PATH_SEPARATOR_2 ';' +# endif +#endif + +#ifndef DIR_SEPARATOR_2 +# define IS_DIR_SEPARATOR(ch) ((ch) == DIR_SEPARATOR) +#else /* DIR_SEPARATOR_2 */ +# define IS_DIR_SEPARATOR(ch) \ + (((ch) == DIR_SEPARATOR) || ((ch) == DIR_SEPARATOR_2)) +#endif /* DIR_SEPARATOR_2 */ + +#ifndef PATH_SEPARATOR_2 +# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR) +#else /* PATH_SEPARATOR_2 */ +# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR_2) +#endif /* PATH_SEPARATOR_2 */ + +#ifndef FOPEN_WB +# define FOPEN_WB "w" +#endif +#ifndef _O_BINARY +# define _O_BINARY 0 +#endif + +#define XMALLOC(type, num) ((type *) xmalloc ((num) * sizeof(type))) +#define XFREE(stale) do { \ + if (stale) { free ((void *) stale); stale = 0; } \ +} while (0) + +#if defined(LT_DEBUGWRAPPER) +static int lt_debug = 1; +#else +static int lt_debug = 0; +#endif + +const char *program_name = "libtool-wrapper"; /* in case xstrdup fails */ + +void *xmalloc (size_t num); +char *xstrdup (const char *string); +const char *base_name (const char *name); +char *find_executable (const char *wrapper); +char *chase_symlinks (const char *pathspec); +int make_executable (const char *path); +int check_executable (const char *path); +char *strendzap (char *str, const char *pat); +void lt_debugprintf (const char *file, int line, const char *fmt, ...); +void lt_fatal (const char *file, int line, const char *message, ...); +static const char *nonnull (const char *s); +static const char *nonempty (const char *s); +void lt_setenv (const char *name, const char *value); +char *lt_extend_str (const char *orig_value, const char *add, int to_end); +void lt_update_exe_path (const char *name, const char *value); +void lt_update_lib_path (const char *name, const char *value); +char **prepare_spawn (char **argv); +void lt_dump_script (FILE *f); +EOF + + cat <= 0) + && (st.st_mode & (S_IXUSR | S_IXGRP | S_IXOTH))) + return 1; + else + return 0; +} + +int +make_executable (const char *path) +{ + int rval = 0; + struct stat st; + + lt_debugprintf (__FILE__, __LINE__, "(make_executable): %s\n", + nonempty (path)); + if ((!path) || (!*path)) + return 0; + + if (stat (path, &st) >= 0) + { + rval = chmod (path, st.st_mode | S_IXOTH | S_IXGRP | S_IXUSR); + } + return rval; +} + +/* Searches for the full path of the wrapper. Returns + newly allocated full path name if found, NULL otherwise + Does not chase symlinks, even on platforms that support them. +*/ +char * +find_executable (const char *wrapper) +{ + int has_slash = 0; + const char *p; + const char *p_next; + /* static buffer for getcwd */ + char tmp[LT_PATHMAX + 1]; + int tmp_len; + char *concat_name; + + lt_debugprintf (__FILE__, __LINE__, "(find_executable): %s\n", + nonempty (wrapper)); + + if ((wrapper == NULL) || (*wrapper == '\0')) + return NULL; + + /* Absolute path? */ +#if defined (HAVE_DOS_BASED_FILE_SYSTEM) + if (isalpha ((unsigned char) wrapper[0]) && wrapper[1] == ':') + { + concat_name = xstrdup (wrapper); + if (check_executable (concat_name)) + return concat_name; + XFREE (concat_name); + } + else + { +#endif + if (IS_DIR_SEPARATOR (wrapper[0])) + { + concat_name = xstrdup (wrapper); + if (check_executable (concat_name)) + return concat_name; + XFREE (concat_name); + } +#if defined (HAVE_DOS_BASED_FILE_SYSTEM) + } +#endif + + for (p = wrapper; *p; p++) + if (*p == '/') + { + has_slash = 1; + break; + } + if (!has_slash) + { + /* no slashes; search PATH */ + const char *path = getenv ("PATH"); + if (path != NULL) + { + for (p = path; *p; p = p_next) + { + const char *q; + size_t p_len; + for (q = p; *q; q++) + if (IS_PATH_SEPARATOR (*q)) + break; + p_len = q - p; + p_next = (*q == '\0' ? q : q + 1); + if (p_len == 0) + { + /* empty path: current directory */ + if (getcwd (tmp, LT_PATHMAX) == NULL) + lt_fatal (__FILE__, __LINE__, "getcwd failed: %s", + nonnull (strerror (errno))); + tmp_len = strlen (tmp); + concat_name = + XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1); + memcpy (concat_name, tmp, tmp_len); + concat_name[tmp_len] = '/'; + strcpy (concat_name + tmp_len + 1, wrapper); + } + else + { + concat_name = + XMALLOC (char, p_len + 1 + strlen (wrapper) + 1); + memcpy (concat_name, p, p_len); + concat_name[p_len] = '/'; + strcpy (concat_name + p_len + 1, wrapper); + } + if (check_executable (concat_name)) + return concat_name; + XFREE (concat_name); + } + } + /* not found in PATH; assume curdir */ + } + /* Relative path | not found in path: prepend cwd */ + if (getcwd (tmp, LT_PATHMAX) == NULL) + lt_fatal (__FILE__, __LINE__, "getcwd failed: %s", + nonnull (strerror (errno))); + tmp_len = strlen (tmp); + concat_name = XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1); + memcpy (concat_name, tmp, tmp_len); + concat_name[tmp_len] = '/'; + strcpy (concat_name + tmp_len + 1, wrapper); + + if (check_executable (concat_name)) + return concat_name; + XFREE (concat_name); + return NULL; +} + +char * +chase_symlinks (const char *pathspec) +{ +#ifndef S_ISLNK + return xstrdup (pathspec); +#else + char buf[LT_PATHMAX]; + struct stat s; + char *tmp_pathspec = xstrdup (pathspec); + char *p; + int has_symlinks = 0; + while (strlen (tmp_pathspec) && !has_symlinks) + { + lt_debugprintf (__FILE__, __LINE__, + "checking path component for symlinks: %s\n", + tmp_pathspec); + if (lstat (tmp_pathspec, &s) == 0) + { + if (S_ISLNK (s.st_mode) != 0) + { + has_symlinks = 1; + break; + } + + /* search backwards for last DIR_SEPARATOR */ + p = tmp_pathspec + strlen (tmp_pathspec) - 1; + while ((p > tmp_pathspec) && (!IS_DIR_SEPARATOR (*p))) + p--; + if ((p == tmp_pathspec) && (!IS_DIR_SEPARATOR (*p))) + { + /* no more DIR_SEPARATORS left */ + break; + } + *p = '\0'; + } + else + { + lt_fatal (__FILE__, __LINE__, + "error accessing file \"%s\": %s", + tmp_pathspec, nonnull (strerror (errno))); + } + } + XFREE (tmp_pathspec); + + if (!has_symlinks) + { + return xstrdup (pathspec); + } + + tmp_pathspec = realpath (pathspec, buf); + if (tmp_pathspec == 0) + { + lt_fatal (__FILE__, __LINE__, + "could not follow symlinks for %s", pathspec); + } + return xstrdup (tmp_pathspec); +#endif +} + +char * +strendzap (char *str, const char *pat) +{ + size_t len, patlen; + + assert (str != NULL); + assert (pat != NULL); + + len = strlen (str); + patlen = strlen (pat); + + if (patlen <= len) + { + str += len - patlen; + if (strcmp (str, pat) == 0) + *str = '\0'; + } + return str; +} + +void +lt_debugprintf (const char *file, int line, const char *fmt, ...) +{ + va_list args; + if (lt_debug) + { + (void) fprintf (stderr, "%s:%s:%d: ", program_name, file, line); + va_start (args, fmt); + (void) vfprintf (stderr, fmt, args); + va_end (args); + } +} + +static void +lt_error_core (int exit_status, const char *file, + int line, const char *mode, + const char *message, va_list ap) +{ + fprintf (stderr, "%s:%s:%d: %s: ", program_name, file, line, mode); + vfprintf (stderr, message, ap); + fprintf (stderr, ".\n"); + + if (exit_status >= 0) + exit (exit_status); +} + +void +lt_fatal (const char *file, int line, const char *message, ...) +{ + va_list ap; + va_start (ap, message); + lt_error_core (EXIT_FAILURE, file, line, "FATAL", message, ap); + va_end (ap); +} + +static const char * +nonnull (const char *s) +{ + return s ? s : "(null)"; +} + +static const char * +nonempty (const char *s) +{ + return (s && !*s) ? "(empty)" : nonnull (s); +} + +void +lt_setenv (const char *name, const char *value) +{ + lt_debugprintf (__FILE__, __LINE__, + "(lt_setenv) setting '%s' to '%s'\n", + nonnull (name), nonnull (value)); + { +#ifdef HAVE_SETENV + /* always make a copy, for consistency with !HAVE_SETENV */ + char *str = xstrdup (value); + setenv (name, str, 1); +#else + int len = strlen (name) + 1 + strlen (value) + 1; + char *str = XMALLOC (char, len); + sprintf (str, "%s=%s", name, value); + if (putenv (str) != EXIT_SUCCESS) + { + XFREE (str); + } +#endif + } +} + +char * +lt_extend_str (const char *orig_value, const char *add, int to_end) +{ + char *new_value; + if (orig_value && *orig_value) + { + int orig_value_len = strlen (orig_value); + int add_len = strlen (add); + new_value = XMALLOC (char, add_len + orig_value_len + 1); + if (to_end) + { + strcpy (new_value, orig_value); + strcpy (new_value + orig_value_len, add); + } + else + { + strcpy (new_value, add); + strcpy (new_value + add_len, orig_value); + } + } + else + { + new_value = xstrdup (add); + } + return new_value; +} + +void +lt_update_exe_path (const char *name, const char *value) +{ + lt_debugprintf (__FILE__, __LINE__, + "(lt_update_exe_path) modifying '%s' by prepending '%s'\n", + nonnull (name), nonnull (value)); + + if (name && *name && value && *value) + { + char *new_value = lt_extend_str (getenv (name), value, 0); + /* some systems can't cope with a ':'-terminated path #' */ + int len = strlen (new_value); + while (((len = strlen (new_value)) > 0) && IS_PATH_SEPARATOR (new_value[len-1])) + { + new_value[len-1] = '\0'; + } + lt_setenv (name, new_value); + XFREE (new_value); + } +} + +void +lt_update_lib_path (const char *name, const char *value) +{ + lt_debugprintf (__FILE__, __LINE__, + "(lt_update_lib_path) modifying '%s' by prepending '%s'\n", + nonnull (name), nonnull (value)); + + if (name && *name && value && *value) + { + char *new_value = lt_extend_str (getenv (name), value, 0); + lt_setenv (name, new_value); + XFREE (new_value); + } +} + +EOF + case $host_os in + mingw*) + cat <<"EOF" + +/* Prepares an argument vector before calling spawn(). + Note that spawn() does not by itself call the command interpreter + (getenv ("COMSPEC") != NULL ? getenv ("COMSPEC") : + ({ OSVERSIONINFO v; v.dwOSVersionInfoSize = sizeof(OSVERSIONINFO); + GetVersionEx(&v); + v.dwPlatformId == VER_PLATFORM_WIN32_NT; + }) ? "cmd.exe" : "command.com"). + Instead it simply concatenates the arguments, separated by ' ', and calls + CreateProcess(). We must quote the arguments since Win32 CreateProcess() + interprets characters like ' ', '\t', '\\', '"' (but not '<' and '>') in a + special way: + - Space and tab are interpreted as delimiters. They are not treated as + delimiters if they are surrounded by double quotes: "...". + - Unescaped double quotes are removed from the input. Their only effect is + that within double quotes, space and tab are treated like normal + characters. + - Backslashes not followed by double quotes are not special. + - But 2*n+1 backslashes followed by a double quote become + n backslashes followed by a double quote (n >= 0): + \" -> " + \\\" -> \" + \\\\\" -> \\" + */ +#define SHELL_SPECIAL_CHARS "\"\\ \001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037" +#define SHELL_SPACE_CHARS " \001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037" +char ** +prepare_spawn (char **argv) +{ + size_t argc; + char **new_argv; + size_t i; + + /* Count number of arguments. */ + for (argc = 0; argv[argc] != NULL; argc++) + ; + + /* Allocate new argument vector. */ + new_argv = XMALLOC (char *, argc + 1); + + /* Put quoted arguments into the new argument vector. */ + for (i = 0; i < argc; i++) + { + const char *string = argv[i]; + + if (string[0] == '\0') + new_argv[i] = xstrdup ("\"\""); + else if (strpbrk (string, SHELL_SPECIAL_CHARS) != NULL) + { + int quote_around = (strpbrk (string, SHELL_SPACE_CHARS) != NULL); + size_t length; + unsigned int backslashes; + const char *s; + char *quoted_string; + char *p; + + length = 0; + backslashes = 0; + if (quote_around) + length++; + for (s = string; *s != '\0'; s++) + { + char c = *s; + if (c == '"') + length += backslashes + 1; + length++; + if (c == '\\') + backslashes++; + else + backslashes = 0; + } + if (quote_around) + length += backslashes + 1; + + quoted_string = XMALLOC (char, length + 1); + + p = quoted_string; + backslashes = 0; + if (quote_around) + *p++ = '"'; + for (s = string; *s != '\0'; s++) + { + char c = *s; + if (c == '"') + { + unsigned int j; + for (j = backslashes + 1; j > 0; j--) + *p++ = '\\'; + } + *p++ = c; + if (c == '\\') + backslashes++; + else + backslashes = 0; + } + if (quote_around) + { + unsigned int j; + for (j = backslashes; j > 0; j--) + *p++ = '\\'; + *p++ = '"'; + } + *p = '\0'; + + new_argv[i] = quoted_string; + } + else + new_argv[i] = (char *) string; + } + new_argv[argc] = NULL; + + return new_argv; +} +EOF + ;; + esac + + cat <<"EOF" +void lt_dump_script (FILE* f) +{ +EOF + func_emit_wrapper yes | + $SED -n -e ' +s/^\(.\{79\}\)\(..*\)/\1\ +\2/ +h +s/\([\\"]\)/\\\1/g +s/$/\\n/ +s/\([^\n]*\).*/ fputs ("\1", f);/p +g +D' + cat <<"EOF" +} +EOF +} +# end: func_emit_cwrapperexe_src + +# func_win32_import_lib_p ARG +# True if ARG is an import lib, as indicated by $file_magic_cmd +func_win32_import_lib_p () +{ + $opt_debug + case `eval $file_magic_cmd \"\$1\" 2>/dev/null | $SED -e 10q` in + *import*) : ;; + *) false ;; + esac +} + +# func_mode_link arg... +func_mode_link () +{ + $opt_debug + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) + # It is impossible to link a dll without this setting, and + # we shouldn't force the makefile maintainer to figure out + # which system we are compiling for in order to pass an extra + # flag for every libtool invocation. + # allow_undefined=no + + # FIXME: Unfortunately, there are problems with the above when trying + # to make a dll which has undefined symbols, in which case not + # even a static library is built. For now, we need to specify + # -no-undefined on the libtool link line when we can be certain + # that all symbols are satisfied, otherwise we get a static library. + allow_undefined=yes + ;; + *) + allow_undefined=yes + ;; + esac + libtool_args=$nonopt + base_compile="$nonopt $@" + compile_command=$nonopt + finalize_command=$nonopt + + compile_rpath= + finalize_rpath= + compile_shlibpath= + finalize_shlibpath= + convenience= + old_convenience= + deplibs= + old_deplibs= + compiler_flags= + linker_flags= + dllsearchpath= + lib_search_path=`pwd` + inst_prefix_dir= + new_inherited_linker_flags= + + avoid_version=no + bindir= + dlfiles= + dlprefiles= + dlself=no + export_dynamic=no + export_symbols= + export_symbols_regex= + generated= + libobjs= + ltlibs= + module=no + no_install=no + objs= + non_pic_objects= + precious_files_regex= + prefer_static_libs=no + preload=no + prev= + prevarg= + release= + rpath= + xrpath= + perm_rpath= + temp_rpath= + thread_safe=no + vinfo= + vinfo_number=no + weak_libs= + single_module="${wl}-single_module" + func_infer_tag $base_compile + + # We need to know -static, to get the right output filenames. + for arg + do + case $arg in + -shared) + test "$build_libtool_libs" != yes && \ + func_fatal_configuration "can not build a shared library" + build_old_libs=no + break + ;; + -all-static | -static | -static-libtool-libs) + case $arg in + -all-static) + if test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then + func_warning "complete static linking is impossible in this configuration" + fi + if test -n "$link_static_flag"; then + dlopen_self=$dlopen_self_static + fi + prefer_static_libs=yes + ;; + -static) + if test -z "$pic_flag" && test -n "$link_static_flag"; then + dlopen_self=$dlopen_self_static + fi + prefer_static_libs=built + ;; + -static-libtool-libs) + if test -z "$pic_flag" && test -n "$link_static_flag"; then + dlopen_self=$dlopen_self_static + fi + prefer_static_libs=yes + ;; + esac + build_libtool_libs=no + build_old_libs=yes + break + ;; + esac + done + + # See if our shared archives depend on static archives. + test -n "$old_archive_from_new_cmds" && build_old_libs=yes + + # Go through the arguments, transforming them on the way. + while test "$#" -gt 0; do + arg="$1" + shift + func_quote_for_eval "$arg" + qarg=$func_quote_for_eval_unquoted_result + libtool_args+=" $func_quote_for_eval_result" + + # If the previous option needs an argument, assign it. + if test -n "$prev"; then + case $prev in + output) + compile_command+=" @OUTPUT@" + finalize_command+=" @OUTPUT@" + ;; + esac + + case $prev in + bindir) + bindir="$arg" + prev= + continue + ;; + dlfiles|dlprefiles) + if test "$preload" = no; then + # Add the symbol object into the linking commands. + compile_command+=" @SYMFILE@" + finalize_command+=" @SYMFILE@" + preload=yes + fi + case $arg in + *.la | *.lo) ;; # We handle these cases below. + force) + if test "$dlself" = no; then + dlself=needless + export_dynamic=yes + fi + prev= + continue + ;; + self) + if test "$prev" = dlprefiles; then + dlself=yes + elif test "$prev" = dlfiles && test "$dlopen_self" != yes; then + dlself=yes + else + dlself=needless + export_dynamic=yes + fi + prev= + continue + ;; + *) + if test "$prev" = dlfiles; then + dlfiles+=" $arg" + else + dlprefiles+=" $arg" + fi + prev= + continue + ;; + esac + ;; + expsyms) + export_symbols="$arg" + test -f "$arg" \ + || func_fatal_error "symbol file \`$arg' does not exist" + prev= + continue + ;; + expsyms_regex) + export_symbols_regex="$arg" + prev= + continue + ;; + framework) + case $host in + *-*-darwin*) + case "$deplibs " in + *" $qarg.ltframework "*) ;; + *) deplibs+=" $qarg.ltframework" # this is fixed later + ;; + esac + ;; + esac + prev= + continue + ;; + inst_prefix) + inst_prefix_dir="$arg" + prev= + continue + ;; + objectlist) + if test -f "$arg"; then + save_arg=$arg + moreargs= + for fil in `cat "$save_arg"` + do +# moreargs+=" $fil" + arg=$fil + # A libtool-controlled object. + + # Check to see that this really is a libtool object. + if func_lalib_unsafe_p "$arg"; then + pic_object= + non_pic_object= + + # Read the .lo file + func_source "$arg" + + if test -z "$pic_object" || + test -z "$non_pic_object" || + test "$pic_object" = none && + test "$non_pic_object" = none; then + func_fatal_error "cannot find name of object for \`$arg'" + fi + + # Extract subdirectory from the argument. + func_dirname "$arg" "/" "" + xdir="$func_dirname_result" + + if test "$pic_object" != none; then + # Prepend the subdirectory the object is found in. + pic_object="$xdir$pic_object" + + if test "$prev" = dlfiles; then + if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then + dlfiles+=" $pic_object" + prev= + continue + else + # If libtool objects are unsupported, then we need to preload. + prev=dlprefiles + fi + fi + + # CHECK ME: I think I busted this. -Ossama + if test "$prev" = dlprefiles; then + # Preload the old-style object. + dlprefiles+=" $pic_object" + prev= + fi + + # A PIC object. + libobjs+=" $pic_object" + arg="$pic_object" + fi + + # Non-PIC object. + if test "$non_pic_object" != none; then + # Prepend the subdirectory the object is found in. + non_pic_object="$xdir$non_pic_object" + + # A standard non-PIC object + non_pic_objects+=" $non_pic_object" + if test -z "$pic_object" || test "$pic_object" = none ; then + arg="$non_pic_object" + fi + else + # If the PIC object exists, use it instead. + # $xdir was prepended to $pic_object above. + non_pic_object="$pic_object" + non_pic_objects+=" $non_pic_object" + fi + else + # Only an error if not doing a dry-run. + if $opt_dry_run; then + # Extract subdirectory from the argument. + func_dirname "$arg" "/" "" + xdir="$func_dirname_result" + + func_lo2o "$arg" + pic_object=$xdir$objdir/$func_lo2o_result + non_pic_object=$xdir$func_lo2o_result + libobjs+=" $pic_object" + non_pic_objects+=" $non_pic_object" + else + func_fatal_error "\`$arg' is not a valid libtool object" + fi + fi + done + else + func_fatal_error "link input file \`$arg' does not exist" + fi + arg=$save_arg + prev= + continue + ;; + precious_regex) + precious_files_regex="$arg" + prev= + continue + ;; + release) + release="-$arg" + prev= + continue + ;; + rpath | xrpath) + # We need an absolute path. + case $arg in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + func_fatal_error "only absolute run-paths are allowed" + ;; + esac + if test "$prev" = rpath; then + case "$rpath " in + *" $arg "*) ;; + *) rpath+=" $arg" ;; + esac + else + case "$xrpath " in + *" $arg "*) ;; + *) xrpath+=" $arg" ;; + esac + fi + prev= + continue + ;; + shrext) + shrext_cmds="$arg" + prev= + continue + ;; + weak) + weak_libs+=" $arg" + prev= + continue + ;; + xcclinker) + linker_flags+=" $qarg" + compiler_flags+=" $qarg" + prev= + compile_command+=" $qarg" + finalize_command+=" $qarg" + continue + ;; + xcompiler) + compiler_flags+=" $qarg" + prev= + compile_command+=" $qarg" + finalize_command+=" $qarg" + continue + ;; + xlinker) + linker_flags+=" $qarg" + compiler_flags+=" $wl$qarg" + prev= + compile_command+=" $wl$qarg" + finalize_command+=" $wl$qarg" + continue + ;; + *) + eval "$prev=\"\$arg\"" + prev= + continue + ;; + esac + fi # test -n "$prev" + + prevarg="$arg" + + case $arg in + -all-static) + if test -n "$link_static_flag"; then + # See comment for -static flag below, for more details. + compile_command+=" $link_static_flag" + finalize_command+=" $link_static_flag" + fi + continue + ;; + + -allow-undefined) + # FIXME: remove this flag sometime in the future. + func_fatal_error "\`-allow-undefined' must not be used because it is the default" + ;; + + -avoid-version) + avoid_version=yes + continue + ;; + + -bindir) + prev=bindir + continue + ;; + + -dlopen) + prev=dlfiles + continue + ;; + + -dlpreopen) + prev=dlprefiles + continue + ;; + + -export-dynamic) + export_dynamic=yes + continue + ;; + + -export-symbols | -export-symbols-regex) + if test -n "$export_symbols" || test -n "$export_symbols_regex"; then + func_fatal_error "more than one -exported-symbols argument is not allowed" + fi + if test "X$arg" = "X-export-symbols"; then + prev=expsyms + else + prev=expsyms_regex + fi + continue + ;; + + -framework) + prev=framework + continue + ;; + + -inst-prefix-dir) + prev=inst_prefix + continue + ;; + + # The native IRIX linker understands -LANG:*, -LIST:* and -LNO:* + # so, if we see these flags be careful not to treat them like -L + -L[A-Z][A-Z]*:*) + case $with_gcc/$host in + no/*-*-irix* | /*-*-irix*) + compile_command+=" $arg" + finalize_command+=" $arg" + ;; + esac + continue + ;; + + -L*) + func_stripname "-L" '' "$arg" + if test -z "$func_stripname_result"; then + if test "$#" -gt 0; then + func_fatal_error "require no space between \`-L' and \`$1'" + else + func_fatal_error "need path for \`-L' option" + fi + fi + func_resolve_sysroot "$func_stripname_result" + dir=$func_resolve_sysroot_result + # We need an absolute path. + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + absdir=`cd "$dir" && pwd` + test -z "$absdir" && \ + func_fatal_error "cannot determine absolute directory name of \`$dir'" + dir="$absdir" + ;; + esac + case "$deplibs " in + *" -L$dir "* | *" $arg "*) + # Will only happen for absolute or sysroot arguments + ;; + *) + # Preserve sysroot, but never include relative directories + case $dir in + [\\/]* | [A-Za-z]:[\\/]* | =*) deplibs+=" $arg" ;; + *) deplibs+=" -L$dir" ;; + esac + lib_search_path+=" $dir" + ;; + esac + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) + testbindir=`$ECHO "$dir" | $SED 's*/lib$*/bin*'` + case :$dllsearchpath: in + *":$dir:"*) ;; + ::) dllsearchpath=$dir;; + *) dllsearchpath+=":$dir";; + esac + case :$dllsearchpath: in + *":$testbindir:"*) ;; + ::) dllsearchpath=$testbindir;; + *) dllsearchpath+=":$testbindir";; + esac + ;; + esac + continue + ;; + + -l*) + if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos* | *-cegcc* | *-*-haiku*) + # These systems don't actually have a C or math library (as such) + continue + ;; + *-*-os2*) + # These systems don't actually have a C library (as such) + test "X$arg" = "X-lc" && continue + ;; + *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) + # Do not include libc due to us having libc/libc_r. + test "X$arg" = "X-lc" && continue + ;; + *-*-rhapsody* | *-*-darwin1.[012]) + # Rhapsody C and math libraries are in the System framework + deplibs+=" System.ltframework" + continue + ;; + *-*-sco3.2v5* | *-*-sco5v6*) + # Causes problems with __ctype + test "X$arg" = "X-lc" && continue + ;; + *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) + # Compiler inserts libc in the correct place for threads to work + test "X$arg" = "X-lc" && continue + ;; + esac + elif test "X$arg" = "X-lc_r"; then + case $host in + *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) + # Do not include libc_r directly, use -pthread flag. + continue + ;; + esac + fi + deplibs+=" $arg" + continue + ;; + + -module) + module=yes + continue + ;; + + # Tru64 UNIX uses -model [arg] to determine the layout of C++ + # classes, name mangling, and exception handling. + # Darwin uses the -arch flag to determine output architecture. + -model|-arch|-isysroot|--sysroot) + compiler_flags+=" $arg" + compile_command+=" $arg" + finalize_command+=" $arg" + prev=xcompiler + continue + ;; + + -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe \ + |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*) + compiler_flags+=" $arg" + compile_command+=" $arg" + finalize_command+=" $arg" + case "$new_inherited_linker_flags " in + *" $arg "*) ;; + * ) new_inherited_linker_flags+=" $arg" ;; + esac + continue + ;; + + -multi_module) + single_module="${wl}-multi_module" + continue + ;; + + -no-fast-install) + fast_install=no + continue + ;; + + -no-install) + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-darwin* | *-cegcc*) + # The PATH hackery in wrapper scripts is required on Windows + # and Darwin in order for the loader to find any dlls it needs. + func_warning "\`-no-install' is ignored for $host" + func_warning "assuming \`-no-fast-install' instead" + fast_install=no + ;; + *) no_install=yes ;; + esac + continue + ;; + + -no-undefined) + allow_undefined=no + continue + ;; + + -objectlist) + prev=objectlist + continue + ;; + + -o) prev=output ;; + + -precious-files-regex) + prev=precious_regex + continue + ;; + + -release) + prev=release + continue + ;; + + -rpath) + prev=rpath + continue + ;; + + -R) + prev=xrpath + continue + ;; + + -R*) + func_stripname '-R' '' "$arg" + dir=$func_stripname_result + # We need an absolute path. + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) ;; + =*) + func_stripname '=' '' "$dir" + dir=$lt_sysroot$func_stripname_result + ;; + *) + func_fatal_error "only absolute run-paths are allowed" + ;; + esac + case "$xrpath " in + *" $dir "*) ;; + *) xrpath+=" $dir" ;; + esac + continue + ;; + + -shared) + # The effects of -shared are defined in a previous loop. + continue + ;; + + -shrext) + prev=shrext + continue + ;; + + -static | -static-libtool-libs) + # The effects of -static are defined in a previous loop. + # We used to do the same as -all-static on platforms that + # didn't have a PIC flag, but the assumption that the effects + # would be equivalent was wrong. It would break on at least + # Digital Unix and AIX. + continue + ;; + + -thread-safe) + thread_safe=yes + continue + ;; + + -version-info) + prev=vinfo + continue + ;; + + -version-number) + prev=vinfo + vinfo_number=yes + continue + ;; + + -weak) + prev=weak + continue + ;; + + -Wc,*) + func_stripname '-Wc,' '' "$arg" + args=$func_stripname_result + arg= + save_ifs="$IFS"; IFS=',' + for flag in $args; do + IFS="$save_ifs" + func_quote_for_eval "$flag" + arg+=" $func_quote_for_eval_result" + compiler_flags+=" $func_quote_for_eval_result" + done + IFS="$save_ifs" + func_stripname ' ' '' "$arg" + arg=$func_stripname_result + ;; + + -Wl,*) + func_stripname '-Wl,' '' "$arg" + args=$func_stripname_result + arg= + save_ifs="$IFS"; IFS=',' + for flag in $args; do + IFS="$save_ifs" + func_quote_for_eval "$flag" + arg+=" $wl$func_quote_for_eval_result" + compiler_flags+=" $wl$func_quote_for_eval_result" + linker_flags+=" $func_quote_for_eval_result" + done + IFS="$save_ifs" + func_stripname ' ' '' "$arg" + arg=$func_stripname_result + ;; + + -Xcompiler) + prev=xcompiler + continue + ;; + + -Xlinker) + prev=xlinker + continue + ;; + + -XCClinker) + prev=xcclinker + continue + ;; + + # -msg_* for osf cc + -msg_*) + func_quote_for_eval "$arg" + arg="$func_quote_for_eval_result" + ;; + + # Flags to be passed through unchanged, with rationale: + # -64, -mips[0-9] enable 64-bit mode for the SGI compiler + # -r[0-9][0-9]* specify processor for the SGI compiler + # -xarch=*, -xtarget=* enable 64-bit mode for the Sun compiler + # +DA*, +DD* enable 64-bit mode for the HP compiler + # -q* compiler args for the IBM compiler + # -m*, -t[45]*, -txscale* architecture-specific flags for GCC + # -F/path path to uninstalled frameworks, gcc on darwin + # -p, -pg, --coverage, -fprofile-* profiling flags for GCC + # @file GCC response files + # -tp=* Portland pgcc target processor selection + # --sysroot=* for sysroot support + # -O*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization + -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \ + -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \ + -O*|-flto*|-fwhopr*|-fuse-linker-plugin) + func_quote_for_eval "$arg" + arg="$func_quote_for_eval_result" + compile_command+=" $arg" + finalize_command+=" $arg" + compiler_flags+=" $arg" + continue + ;; + + # Some other compiler flag. + -* | +*) + func_quote_for_eval "$arg" + arg="$func_quote_for_eval_result" + ;; + + *.$objext) + # A standard object. + objs+=" $arg" + ;; + + *.lo) + # A libtool-controlled object. + + # Check to see that this really is a libtool object. + if func_lalib_unsafe_p "$arg"; then + pic_object= + non_pic_object= + + # Read the .lo file + func_source "$arg" + + if test -z "$pic_object" || + test -z "$non_pic_object" || + test "$pic_object" = none && + test "$non_pic_object" = none; then + func_fatal_error "cannot find name of object for \`$arg'" + fi + + # Extract subdirectory from the argument. + func_dirname "$arg" "/" "" + xdir="$func_dirname_result" + + if test "$pic_object" != none; then + # Prepend the subdirectory the object is found in. + pic_object="$xdir$pic_object" + + if test "$prev" = dlfiles; then + if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then + dlfiles+=" $pic_object" + prev= + continue + else + # If libtool objects are unsupported, then we need to preload. + prev=dlprefiles + fi + fi + + # CHECK ME: I think I busted this. -Ossama + if test "$prev" = dlprefiles; then + # Preload the old-style object. + dlprefiles+=" $pic_object" + prev= + fi + + # A PIC object. + libobjs+=" $pic_object" + arg="$pic_object" + fi + + # Non-PIC object. + if test "$non_pic_object" != none; then + # Prepend the subdirectory the object is found in. + non_pic_object="$xdir$non_pic_object" + + # A standard non-PIC object + non_pic_objects+=" $non_pic_object" + if test -z "$pic_object" || test "$pic_object" = none ; then + arg="$non_pic_object" + fi + else + # If the PIC object exists, use it instead. + # $xdir was prepended to $pic_object above. + non_pic_object="$pic_object" + non_pic_objects+=" $non_pic_object" + fi + else + # Only an error if not doing a dry-run. + if $opt_dry_run; then + # Extract subdirectory from the argument. + func_dirname "$arg" "/" "" + xdir="$func_dirname_result" + + func_lo2o "$arg" + pic_object=$xdir$objdir/$func_lo2o_result + non_pic_object=$xdir$func_lo2o_result + libobjs+=" $pic_object" + non_pic_objects+=" $non_pic_object" + else + func_fatal_error "\`$arg' is not a valid libtool object" + fi + fi + ;; + + *.$libext) + # An archive. + deplibs+=" $arg" + old_deplibs+=" $arg" + continue + ;; + + *.la) + # A libtool-controlled library. + + func_resolve_sysroot "$arg" + if test "$prev" = dlfiles; then + # This library was specified with -dlopen. + dlfiles+=" $func_resolve_sysroot_result" + prev= + elif test "$prev" = dlprefiles; then + # The library was specified with -dlpreopen. + dlprefiles+=" $func_resolve_sysroot_result" + prev= + else + deplibs+=" $func_resolve_sysroot_result" + fi + continue + ;; + + # Some other compiler argument. + *) + # Unknown arguments in both finalize_command and compile_command need + # to be aesthetically quoted because they are evaled later. + func_quote_for_eval "$arg" + arg="$func_quote_for_eval_result" + ;; + esac # arg + + # Now actually substitute the argument into the commands. + if test -n "$arg"; then + compile_command+=" $arg" + finalize_command+=" $arg" + fi + done # argument parsing loop + + test -n "$prev" && \ + func_fatal_help "the \`$prevarg' option requires an argument" + + if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then + eval arg=\"$export_dynamic_flag_spec\" + compile_command+=" $arg" + finalize_command+=" $arg" + fi + + oldlibs= + # calculate the name of the file, without its directory + func_basename "$output" + outputname="$func_basename_result" + libobjs_save="$libobjs" + + if test -n "$shlibpath_var"; then + # get the directories listed in $shlibpath_var + eval shlib_search_path=\`\$ECHO \"\${$shlibpath_var}\" \| \$SED \'s/:/ /g\'\` + else + shlib_search_path= + fi + eval sys_lib_search_path=\"$sys_lib_search_path_spec\" + eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\" + + func_dirname "$output" "/" "" + output_objdir="$func_dirname_result$objdir" + func_to_tool_file "$output_objdir/" + tool_output_objdir=$func_to_tool_file_result + # Create the object directory. + func_mkdir_p "$output_objdir" + + # Determine the type of output + case $output in + "") + func_fatal_help "you must specify an output file" + ;; + *.$libext) linkmode=oldlib ;; + *.lo | *.$objext) linkmode=obj ;; + *.la) linkmode=lib ;; + *) linkmode=prog ;; # Anything else should be a program. + esac + + specialdeplibs= + + libs= + # Find all interdependent deplibs by searching for libraries + # that are linked more than once (e.g. -la -lb -la) + for deplib in $deplibs; do + if $opt_preserve_dup_deps ; then + case "$libs " in + *" $deplib "*) specialdeplibs+=" $deplib" ;; + esac + fi + libs+=" $deplib" + done + + if test "$linkmode" = lib; then + libs="$predeps $libs $compiler_lib_search_path $postdeps" + + # Compute libraries that are listed more than once in $predeps + # $postdeps and mark them as special (i.e., whose duplicates are + # not to be eliminated). + pre_post_deps= + if $opt_duplicate_compiler_generated_deps; then + for pre_post_dep in $predeps $postdeps; do + case "$pre_post_deps " in + *" $pre_post_dep "*) specialdeplibs+=" $pre_post_deps" ;; + esac + pre_post_deps+=" $pre_post_dep" + done + fi + pre_post_deps= + fi + + deplibs= + newdependency_libs= + newlib_search_path= + need_relink=no # whether we're linking any uninstalled libtool libraries + notinst_deplibs= # not-installed libtool libraries + notinst_path= # paths that contain not-installed libtool libraries + + case $linkmode in + lib) + passes="conv dlpreopen link" + for file in $dlfiles $dlprefiles; do + case $file in + *.la) ;; + *) + func_fatal_help "libraries can \`-dlopen' only libtool libraries: $file" + ;; + esac + done + ;; + prog) + compile_deplibs= + finalize_deplibs= + alldeplibs=no + newdlfiles= + newdlprefiles= + passes="conv scan dlopen dlpreopen link" + ;; + *) passes="conv" + ;; + esac + + for pass in $passes; do + # The preopen pass in lib mode reverses $deplibs; put it back here + # so that -L comes before libs that need it for instance... + if test "$linkmode,$pass" = "lib,link"; then + ## FIXME: Find the place where the list is rebuilt in the wrong + ## order, and fix it there properly + tmp_deplibs= + for deplib in $deplibs; do + tmp_deplibs="$deplib $tmp_deplibs" + done + deplibs="$tmp_deplibs" + fi + + if test "$linkmode,$pass" = "lib,link" || + test "$linkmode,$pass" = "prog,scan"; then + libs="$deplibs" + deplibs= + fi + if test "$linkmode" = prog; then + case $pass in + dlopen) libs="$dlfiles" ;; + dlpreopen) libs="$dlprefiles" ;; + link) libs="$deplibs %DEPLIBS% $dependency_libs" ;; + esac + fi + if test "$linkmode,$pass" = "lib,dlpreopen"; then + # Collect and forward deplibs of preopened libtool libs + for lib in $dlprefiles; do + # Ignore non-libtool-libs + dependency_libs= + func_resolve_sysroot "$lib" + case $lib in + *.la) func_source "$func_resolve_sysroot_result" ;; + esac + + # Collect preopened libtool deplibs, except any this library + # has declared as weak libs + for deplib in $dependency_libs; do + func_basename "$deplib" + deplib_base=$func_basename_result + case " $weak_libs " in + *" $deplib_base "*) ;; + *) deplibs+=" $deplib" ;; + esac + done + done + libs="$dlprefiles" + fi + if test "$pass" = dlopen; then + # Collect dlpreopened libraries + save_deplibs="$deplibs" + deplibs= + fi + + for deplib in $libs; do + lib= + found=no + case $deplib in + -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe \ + |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*) + if test "$linkmode,$pass" = "prog,link"; then + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + compiler_flags+=" $deplib" + if test "$linkmode" = lib ; then + case "$new_inherited_linker_flags " in + *" $deplib "*) ;; + * ) new_inherited_linker_flags+=" $deplib" ;; + esac + fi + fi + continue + ;; + -l*) + if test "$linkmode" != lib && test "$linkmode" != prog; then + func_warning "\`-l' is ignored for archives/objects" + continue + fi + func_stripname '-l' '' "$deplib" + name=$func_stripname_result + if test "$linkmode" = lib; then + searchdirs="$newlib_search_path $lib_search_path $compiler_lib_search_dirs $sys_lib_search_path $shlib_search_path" + else + searchdirs="$newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path" + fi + for searchdir in $searchdirs; do + for search_ext in .la $std_shrext .so .a; do + # Search the libtool library + lib="$searchdir/lib${name}${search_ext}" + if test -f "$lib"; then + if test "$search_ext" = ".la"; then + found=yes + else + found=no + fi + break 2 + fi + done + done + if test "$found" != yes; then + # deplib doesn't seem to be a libtool library + if test "$linkmode,$pass" = "prog,link"; then + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + deplibs="$deplib $deplibs" + test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs" + fi + continue + else # deplib is a libtool library + # If $allow_libtool_libs_with_static_runtimes && $deplib is a stdlib, + # We need to do some special things here, and not later. + if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then + case " $predeps $postdeps " in + *" $deplib "*) + if func_lalib_p "$lib"; then + library_names= + old_library= + func_source "$lib" + for l in $old_library $library_names; do + ll="$l" + done + if test "X$ll" = "X$old_library" ; then # only static version available + found=no + func_dirname "$lib" "" "." + ladir="$func_dirname_result" + lib=$ladir/$old_library + if test "$linkmode,$pass" = "prog,link"; then + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + deplibs="$deplib $deplibs" + test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs" + fi + continue + fi + fi + ;; + *) ;; + esac + fi + fi + ;; # -l + *.ltframework) + if test "$linkmode,$pass" = "prog,link"; then + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + deplibs="$deplib $deplibs" + if test "$linkmode" = lib ; then + case "$new_inherited_linker_flags " in + *" $deplib "*) ;; + * ) new_inherited_linker_flags+=" $deplib" ;; + esac + fi + fi + continue + ;; + -L*) + case $linkmode in + lib) + deplibs="$deplib $deplibs" + test "$pass" = conv && continue + newdependency_libs="$deplib $newdependency_libs" + func_stripname '-L' '' "$deplib" + func_resolve_sysroot "$func_stripname_result" + newlib_search_path+=" $func_resolve_sysroot_result" + ;; + prog) + if test "$pass" = conv; then + deplibs="$deplib $deplibs" + continue + fi + if test "$pass" = scan; then + deplibs="$deplib $deplibs" + else + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + fi + func_stripname '-L' '' "$deplib" + func_resolve_sysroot "$func_stripname_result" + newlib_search_path+=" $func_resolve_sysroot_result" + ;; + *) + func_warning "\`-L' is ignored for archives/objects" + ;; + esac # linkmode + continue + ;; # -L + -R*) + if test "$pass" = link; then + func_stripname '-R' '' "$deplib" + func_resolve_sysroot "$func_stripname_result" + dir=$func_resolve_sysroot_result + # Make sure the xrpath contains only unique directories. + case "$xrpath " in + *" $dir "*) ;; + *) xrpath+=" $dir" ;; + esac + fi + deplibs="$deplib $deplibs" + continue + ;; + *.la) + func_resolve_sysroot "$deplib" + lib=$func_resolve_sysroot_result + ;; + *.$libext) + if test "$pass" = conv; then + deplibs="$deplib $deplibs" + continue + fi + case $linkmode in + lib) + # Linking convenience modules into shared libraries is allowed, + # but linking other static libraries is non-portable. + case " $dlpreconveniencelibs " in + *" $deplib "*) ;; + *) + valid_a_lib=no + case $deplibs_check_method in + match_pattern*) + set dummy $deplibs_check_method; shift + match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"` + if eval "\$ECHO \"$deplib\"" 2>/dev/null | $SED 10q \ + | $EGREP "$match_pattern_regex" > /dev/null; then + valid_a_lib=yes + fi + ;; + pass_all) + valid_a_lib=yes + ;; + esac + if test "$valid_a_lib" != yes; then + echo + $ECHO "*** Warning: Trying to link with static lib archive $deplib." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have" + echo "*** because the file extensions .$libext of this argument makes me believe" + echo "*** that it is just a static archive that I should not use here." + else + echo + $ECHO "*** Warning: Linking the shared library $output against the" + $ECHO "*** static library $deplib is not portable!" + deplibs="$deplib $deplibs" + fi + ;; + esac + continue + ;; + prog) + if test "$pass" != link; then + deplibs="$deplib $deplibs" + else + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + fi + continue + ;; + esac # linkmode + ;; # *.$libext + *.lo | *.$objext) + if test "$pass" = conv; then + deplibs="$deplib $deplibs" + elif test "$linkmode" = prog; then + if test "$pass" = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then + # If there is no dlopen support or we're linking statically, + # we need to preload. + newdlprefiles+=" $deplib" + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + newdlfiles+=" $deplib" + fi + fi + continue + ;; + %DEPLIBS%) + alldeplibs=yes + continue + ;; + esac # case $deplib + + if test "$found" = yes || test -f "$lib"; then : + else + func_fatal_error "cannot find the library \`$lib' or unhandled argument \`$deplib'" + fi + + # Check to see that this really is a libtool archive. + func_lalib_unsafe_p "$lib" \ + || func_fatal_error "\`$lib' is not a valid libtool archive" + + func_dirname "$lib" "" "." + ladir="$func_dirname_result" + + dlname= + dlopen= + dlpreopen= + libdir= + library_names= + old_library= + inherited_linker_flags= + # If the library was installed with an old release of libtool, + # it will not redefine variables installed, or shouldnotlink + installed=yes + shouldnotlink=no + avoidtemprpath= + + + # Read the .la file + func_source "$lib" + + # Convert "-framework foo" to "foo.ltframework" + if test -n "$inherited_linker_flags"; then + tmp_inherited_linker_flags=`$ECHO "$inherited_linker_flags" | $SED 's/-framework \([^ $]*\)/\1.ltframework/g'` + for tmp_inherited_linker_flag in $tmp_inherited_linker_flags; do + case " $new_inherited_linker_flags " in + *" $tmp_inherited_linker_flag "*) ;; + *) new_inherited_linker_flags+=" $tmp_inherited_linker_flag";; + esac + done + fi + dependency_libs=`$ECHO " $dependency_libs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + if test "$linkmode,$pass" = "lib,link" || + test "$linkmode,$pass" = "prog,scan" || + { test "$linkmode" != prog && test "$linkmode" != lib; }; then + test -n "$dlopen" && dlfiles+=" $dlopen" + test -n "$dlpreopen" && dlprefiles+=" $dlpreopen" + fi + + if test "$pass" = conv; then + # Only check for convenience libraries + deplibs="$lib $deplibs" + if test -z "$libdir"; then + if test -z "$old_library"; then + func_fatal_error "cannot find name of link library for \`$lib'" + fi + # It is a libtool convenience library, so add in its objects. + convenience+=" $ladir/$objdir/$old_library" + old_convenience+=" $ladir/$objdir/$old_library" + elif test "$linkmode" != prog && test "$linkmode" != lib; then + func_fatal_error "\`$lib' is not a convenience library" + fi + tmp_libs= + for deplib in $dependency_libs; do + deplibs="$deplib $deplibs" + if $opt_preserve_dup_deps ; then + case "$tmp_libs " in + *" $deplib "*) specialdeplibs+=" $deplib" ;; + esac + fi + tmp_libs+=" $deplib" + done + continue + fi # $pass = conv + + + # Get the name of the library we link against. + linklib= + if test -n "$old_library" && + { test "$prefer_static_libs" = yes || + test "$prefer_static_libs,$installed" = "built,no"; }; then + linklib=$old_library + else + for l in $old_library $library_names; do + linklib="$l" + done + fi + if test -z "$linklib"; then + func_fatal_error "cannot find name of link library for \`$lib'" + fi + + # This library was specified with -dlopen. + if test "$pass" = dlopen; then + if test -z "$libdir"; then + func_fatal_error "cannot -dlopen a convenience library: \`$lib'" + fi + if test -z "$dlname" || + test "$dlopen_support" != yes || + test "$build_libtool_libs" = no; then + # If there is no dlname, no dlopen support or we're linking + # statically, we need to preload. We also need to preload any + # dependent libraries so libltdl's deplib preloader doesn't + # bomb out in the load deplibs phase. + dlprefiles+=" $lib $dependency_libs" + else + newdlfiles+=" $lib" + fi + continue + fi # $pass = dlopen + + # We need an absolute path. + case $ladir in + [\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;; + *) + abs_ladir=`cd "$ladir" && pwd` + if test -z "$abs_ladir"; then + func_warning "cannot determine absolute directory name of \`$ladir'" + func_warning "passing it literally to the linker, although it might fail" + abs_ladir="$ladir" + fi + ;; + esac + func_basename "$lib" + laname="$func_basename_result" + + # Find the relevant object directory and library name. + if test "X$installed" = Xyes; then + if test ! -f "$lt_sysroot$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then + func_warning "library \`$lib' was moved." + dir="$ladir" + absdir="$abs_ladir" + libdir="$abs_ladir" + else + dir="$lt_sysroot$libdir" + absdir="$lt_sysroot$libdir" + fi + test "X$hardcode_automatic" = Xyes && avoidtemprpath=yes + else + if test ! -f "$ladir/$objdir/$linklib" && test -f "$abs_ladir/$linklib"; then + dir="$ladir" + absdir="$abs_ladir" + # Remove this search path later + notinst_path+=" $abs_ladir" + else + dir="$ladir/$objdir" + absdir="$abs_ladir/$objdir" + # Remove this search path later + notinst_path+=" $abs_ladir" + fi + fi # $installed = yes + func_stripname 'lib' '.la' "$laname" + name=$func_stripname_result + + # This library was specified with -dlpreopen. + if test "$pass" = dlpreopen; then + if test -z "$libdir" && test "$linkmode" = prog; then + func_fatal_error "only libraries may -dlpreopen a convenience library: \`$lib'" + fi + case "$host" in + # special handling for platforms with PE-DLLs. + *cygwin* | *mingw* | *cegcc* ) + # Linker will automatically link against shared library if both + # static and shared are present. Therefore, ensure we extract + # symbols from the import library if a shared library is present + # (otherwise, the dlopen module name will be incorrect). We do + # this by putting the import library name into $newdlprefiles. + # We recover the dlopen module name by 'saving' the la file + # name in a special purpose variable, and (later) extracting the + # dlname from the la file. + if test -n "$dlname"; then + func_tr_sh "$dir/$linklib" + eval "libfile_$func_tr_sh_result=\$abs_ladir/\$laname" + newdlprefiles+=" $dir/$linklib" + else + newdlprefiles+=" $dir/$old_library" + # Keep a list of preopened convenience libraries to check + # that they are being used correctly in the link pass. + test -z "$libdir" && \ + dlpreconveniencelibs+=" $dir/$old_library" + fi + ;; + * ) + # Prefer using a static library (so that no silly _DYNAMIC symbols + # are required to link). + if test -n "$old_library"; then + newdlprefiles+=" $dir/$old_library" + # Keep a list of preopened convenience libraries to check + # that they are being used correctly in the link pass. + test -z "$libdir" && \ + dlpreconveniencelibs+=" $dir/$old_library" + # Otherwise, use the dlname, so that lt_dlopen finds it. + elif test -n "$dlname"; then + newdlprefiles+=" $dir/$dlname" + else + newdlprefiles+=" $dir/$linklib" + fi + ;; + esac + fi # $pass = dlpreopen + + if test -z "$libdir"; then + # Link the convenience library + if test "$linkmode" = lib; then + deplibs="$dir/$old_library $deplibs" + elif test "$linkmode,$pass" = "prog,link"; then + compile_deplibs="$dir/$old_library $compile_deplibs" + finalize_deplibs="$dir/$old_library $finalize_deplibs" + else + deplibs="$lib $deplibs" # used for prog,scan pass + fi + continue + fi + + + if test "$linkmode" = prog && test "$pass" != link; then + newlib_search_path+=" $ladir" + deplibs="$lib $deplibs" + + linkalldeplibs=no + if test "$link_all_deplibs" != no || test -z "$library_names" || + test "$build_libtool_libs" = no; then + linkalldeplibs=yes + fi + + tmp_libs= + for deplib in $dependency_libs; do + case $deplib in + -L*) func_stripname '-L' '' "$deplib" + func_resolve_sysroot "$func_stripname_result" + newlib_search_path+=" $func_resolve_sysroot_result" + ;; + esac + # Need to link against all dependency_libs? + if test "$linkalldeplibs" = yes; then + deplibs="$deplib $deplibs" + else + # Need to hardcode shared library paths + # or/and link against static libraries + newdependency_libs="$deplib $newdependency_libs" + fi + if $opt_preserve_dup_deps ; then + case "$tmp_libs " in + *" $deplib "*) specialdeplibs+=" $deplib" ;; + esac + fi + tmp_libs+=" $deplib" + done # for deplib + continue + fi # $linkmode = prog... + + if test "$linkmode,$pass" = "prog,link"; then + if test -n "$library_names" && + { { test "$prefer_static_libs" = no || + test "$prefer_static_libs,$installed" = "built,yes"; } || + test -z "$old_library"; }; then + # We need to hardcode the library path + if test -n "$shlibpath_var" && test -z "$avoidtemprpath" ; then + # Make sure the rpath contains only unique directories. + case "$temp_rpath:" in + *"$absdir:"*) ;; + *) temp_rpath+="$absdir:" ;; + esac + fi + + # Hardcode the library path. + # Skip directories that are in the system default run-time + # search path. + case " $sys_lib_dlsearch_path " in + *" $absdir "*) ;; + *) + case "$compile_rpath " in + *" $absdir "*) ;; + *) compile_rpath+=" $absdir" ;; + esac + ;; + esac + case " $sys_lib_dlsearch_path " in + *" $libdir "*) ;; + *) + case "$finalize_rpath " in + *" $libdir "*) ;; + *) finalize_rpath+=" $libdir" ;; + esac + ;; + esac + fi # $linkmode,$pass = prog,link... + + if test "$alldeplibs" = yes && + { test "$deplibs_check_method" = pass_all || + { test "$build_libtool_libs" = yes && + test -n "$library_names"; }; }; then + # We only need to search for static libraries + continue + fi + fi + + link_static=no # Whether the deplib will be linked statically + use_static_libs=$prefer_static_libs + if test "$use_static_libs" = built && test "$installed" = yes; then + use_static_libs=no + fi + if test -n "$library_names" && + { test "$use_static_libs" = no || test -z "$old_library"; }; then + case $host in + *cygwin* | *mingw* | *cegcc*) + # No point in relinking DLLs because paths are not encoded + notinst_deplibs+=" $lib" + need_relink=no + ;; + *) + if test "$installed" = no; then + notinst_deplibs+=" $lib" + need_relink=yes + fi + ;; + esac + # This is a shared library + + # Warn about portability, can't link against -module's on some + # systems (darwin). Don't bleat about dlopened modules though! + dlopenmodule="" + for dlpremoduletest in $dlprefiles; do + if test "X$dlpremoduletest" = "X$lib"; then + dlopenmodule="$dlpremoduletest" + break + fi + done + if test -z "$dlopenmodule" && test "$shouldnotlink" = yes && test "$pass" = link; then + echo + if test "$linkmode" = prog; then + $ECHO "*** Warning: Linking the executable $output against the loadable module" + else + $ECHO "*** Warning: Linking the shared library $output against the loadable module" + fi + $ECHO "*** $linklib is not portable!" + fi + if test "$linkmode" = lib && + test "$hardcode_into_libs" = yes; then + # Hardcode the library path. + # Skip directories that are in the system default run-time + # search path. + case " $sys_lib_dlsearch_path " in + *" $absdir "*) ;; + *) + case "$compile_rpath " in + *" $absdir "*) ;; + *) compile_rpath+=" $absdir" ;; + esac + ;; + esac + case " $sys_lib_dlsearch_path " in + *" $libdir "*) ;; + *) + case "$finalize_rpath " in + *" $libdir "*) ;; + *) finalize_rpath+=" $libdir" ;; + esac + ;; + esac + fi + + if test -n "$old_archive_from_expsyms_cmds"; then + # figure out the soname + set dummy $library_names + shift + realname="$1" + shift + libname=`eval "\\$ECHO \"$libname_spec\""` + # use dlname if we got it. it's perfectly good, no? + if test -n "$dlname"; then + soname="$dlname" + elif test -n "$soname_spec"; then + # bleh windows + case $host in + *cygwin* | mingw* | *cegcc*) + func_arith $current - $age + major=$func_arith_result + versuffix="-$major" + ;; + esac + eval soname=\"$soname_spec\" + else + soname="$realname" + fi + + # Make a new name for the extract_expsyms_cmds to use + soroot="$soname" + func_basename "$soroot" + soname="$func_basename_result" + func_stripname 'lib' '.dll' "$soname" + newlib=libimp-$func_stripname_result.a + + # If the library has no export list, then create one now + if test -f "$output_objdir/$soname-def"; then : + else + func_verbose "extracting exported symbol list from \`$soname'" + func_execute_cmds "$extract_expsyms_cmds" 'exit $?' + fi + + # Create $newlib + if test -f "$output_objdir/$newlib"; then :; else + func_verbose "generating import library for \`$soname'" + func_execute_cmds "$old_archive_from_expsyms_cmds" 'exit $?' + fi + # make sure the library variables are pointing to the new library + dir=$output_objdir + linklib=$newlib + fi # test -n "$old_archive_from_expsyms_cmds" + + if test "$linkmode" = prog || test "$opt_mode" != relink; then + add_shlibpath= + add_dir= + add= + lib_linked=yes + case $hardcode_action in + immediate | unsupported) + if test "$hardcode_direct" = no; then + add="$dir/$linklib" + case $host in + *-*-sco3.2v5.0.[024]*) add_dir="-L$dir" ;; + *-*-sysv4*uw2*) add_dir="-L$dir" ;; + *-*-sysv5OpenUNIX* | *-*-sysv5UnixWare7.[01].[10]* | \ + *-*-unixware7*) add_dir="-L$dir" ;; + *-*-darwin* ) + # if the lib is a (non-dlopened) module then we can not + # link against it, someone is ignoring the earlier warnings + if /usr/bin/file -L $add 2> /dev/null | + $GREP ": [^:]* bundle" >/dev/null ; then + if test "X$dlopenmodule" != "X$lib"; then + $ECHO "*** Warning: lib $linklib is a module, not a shared library" + if test -z "$old_library" ; then + echo + echo "*** And there doesn't seem to be a static archive available" + echo "*** The link will probably fail, sorry" + else + add="$dir/$old_library" + fi + elif test -n "$old_library"; then + add="$dir/$old_library" + fi + fi + esac + elif test "$hardcode_minus_L" = no; then + case $host in + *-*-sunos*) add_shlibpath="$dir" ;; + esac + add_dir="-L$dir" + add="-l$name" + elif test "$hardcode_shlibpath_var" = no; then + add_shlibpath="$dir" + add="-l$name" + else + lib_linked=no + fi + ;; + relink) + if test "$hardcode_direct" = yes && + test "$hardcode_direct_absolute" = no; then + add="$dir/$linklib" + elif test "$hardcode_minus_L" = yes; then + add_dir="-L$absdir" + # Try looking first in the location we're being installed to. + if test -n "$inst_prefix_dir"; then + case $libdir in + [\\/]*) + add_dir+=" -L$inst_prefix_dir$libdir" + ;; + esac + fi + add="-l$name" + elif test "$hardcode_shlibpath_var" = yes; then + add_shlibpath="$dir" + add="-l$name" + else + lib_linked=no + fi + ;; + *) lib_linked=no ;; + esac + + if test "$lib_linked" != yes; then + func_fatal_configuration "unsupported hardcode properties" + fi + + if test -n "$add_shlibpath"; then + case :$compile_shlibpath: in + *":$add_shlibpath:"*) ;; + *) compile_shlibpath+="$add_shlibpath:" ;; + esac + fi + if test "$linkmode" = prog; then + test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs" + test -n "$add" && compile_deplibs="$add $compile_deplibs" + else + test -n "$add_dir" && deplibs="$add_dir $deplibs" + test -n "$add" && deplibs="$add $deplibs" + if test "$hardcode_direct" != yes && + test "$hardcode_minus_L" != yes && + test "$hardcode_shlibpath_var" = yes; then + case :$finalize_shlibpath: in + *":$libdir:"*) ;; + *) finalize_shlibpath+="$libdir:" ;; + esac + fi + fi + fi + + if test "$linkmode" = prog || test "$opt_mode" = relink; then + add_shlibpath= + add_dir= + add= + # Finalize command for both is simple: just hardcode it. + if test "$hardcode_direct" = yes && + test "$hardcode_direct_absolute" = no; then + add="$libdir/$linklib" + elif test "$hardcode_minus_L" = yes; then + add_dir="-L$libdir" + add="-l$name" + elif test "$hardcode_shlibpath_var" = yes; then + case :$finalize_shlibpath: in + *":$libdir:"*) ;; + *) finalize_shlibpath+="$libdir:" ;; + esac + add="-l$name" + elif test "$hardcode_automatic" = yes; then + if test -n "$inst_prefix_dir" && + test -f "$inst_prefix_dir$libdir/$linklib" ; then + add="$inst_prefix_dir$libdir/$linklib" + else + add="$libdir/$linklib" + fi + else + # We cannot seem to hardcode it, guess we'll fake it. + add_dir="-L$libdir" + # Try looking first in the location we're being installed to. + if test -n "$inst_prefix_dir"; then + case $libdir in + [\\/]*) + add_dir+=" -L$inst_prefix_dir$libdir" + ;; + esac + fi + add="-l$name" + fi + + if test "$linkmode" = prog; then + test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs" + test -n "$add" && finalize_deplibs="$add $finalize_deplibs" + else + test -n "$add_dir" && deplibs="$add_dir $deplibs" + test -n "$add" && deplibs="$add $deplibs" + fi + fi + elif test "$linkmode" = prog; then + # Here we assume that one of hardcode_direct or hardcode_minus_L + # is not unsupported. This is valid on all known static and + # shared platforms. + if test "$hardcode_direct" != unsupported; then + test -n "$old_library" && linklib="$old_library" + compile_deplibs="$dir/$linklib $compile_deplibs" + finalize_deplibs="$dir/$linklib $finalize_deplibs" + else + compile_deplibs="-l$name -L$dir $compile_deplibs" + finalize_deplibs="-l$name -L$dir $finalize_deplibs" + fi + elif test "$build_libtool_libs" = yes; then + # Not a shared library + if test "$deplibs_check_method" != pass_all; then + # We're trying link a shared library against a static one + # but the system doesn't support it. + + # Just print a warning and add the library to dependency_libs so + # that the program can be linked against the static library. + echo + $ECHO "*** Warning: This system can not link to static lib archive $lib." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have." + if test "$module" = yes; then + echo "*** But as you try to build a module library, libtool will still create " + echo "*** a static module, that should work as long as the dlopening application" + echo "*** is linked with the -dlopen flag to resolve symbols at runtime." + if test -z "$global_symbol_pipe"; then + echo + echo "*** However, this would only work if libtool was able to extract symbol" + echo "*** lists from a program, using \`nm' or equivalent, but libtool could" + echo "*** not find such a program. So, this module is probably useless." + echo "*** \`nm' from GNU binutils and a full rebuild may help." + fi + if test "$build_old_libs" = no; then + build_libtool_libs=module + build_old_libs=yes + else + build_libtool_libs=no + fi + fi + else + deplibs="$dir/$old_library $deplibs" + link_static=yes + fi + fi # link shared/static library? + + if test "$linkmode" = lib; then + if test -n "$dependency_libs" && + { test "$hardcode_into_libs" != yes || + test "$build_old_libs" = yes || + test "$link_static" = yes; }; then + # Extract -R from dependency_libs + temp_deplibs= + for libdir in $dependency_libs; do + case $libdir in + -R*) func_stripname '-R' '' "$libdir" + temp_xrpath=$func_stripname_result + case " $xrpath " in + *" $temp_xrpath "*) ;; + *) xrpath+=" $temp_xrpath";; + esac;; + *) temp_deplibs+=" $libdir";; + esac + done + dependency_libs="$temp_deplibs" + fi + + newlib_search_path+=" $absdir" + # Link against this library + test "$link_static" = no && newdependency_libs="$abs_ladir/$laname $newdependency_libs" + # ... and its dependency_libs + tmp_libs= + for deplib in $dependency_libs; do + newdependency_libs="$deplib $newdependency_libs" + case $deplib in + -L*) func_stripname '-L' '' "$deplib" + func_resolve_sysroot "$func_stripname_result";; + *) func_resolve_sysroot "$deplib" ;; + esac + if $opt_preserve_dup_deps ; then + case "$tmp_libs " in + *" $func_resolve_sysroot_result "*) + specialdeplibs+=" $func_resolve_sysroot_result" ;; + esac + fi + tmp_libs+=" $func_resolve_sysroot_result" + done + + if test "$link_all_deplibs" != no; then + # Add the search paths of all dependency libraries + for deplib in $dependency_libs; do + path= + case $deplib in + -L*) path="$deplib" ;; + *.la) + func_resolve_sysroot "$deplib" + deplib=$func_resolve_sysroot_result + func_dirname "$deplib" "" "." + dir=$func_dirname_result + # We need an absolute path. + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) absdir="$dir" ;; + *) + absdir=`cd "$dir" && pwd` + if test -z "$absdir"; then + func_warning "cannot determine absolute directory name of \`$dir'" + absdir="$dir" + fi + ;; + esac + if $GREP "^installed=no" $deplib > /dev/null; then + case $host in + *-*-darwin*) + depdepl= + eval deplibrary_names=`${SED} -n -e 's/^library_names=\(.*\)$/\1/p' $deplib` + if test -n "$deplibrary_names" ; then + for tmp in $deplibrary_names ; do + depdepl=$tmp + done + if test -f "$absdir/$objdir/$depdepl" ; then + depdepl="$absdir/$objdir/$depdepl" + darwin_install_name=`${OTOOL} -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'` + if test -z "$darwin_install_name"; then + darwin_install_name=`${OTOOL64} -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'` + fi + compiler_flags+=" ${wl}-dylib_file ${wl}${darwin_install_name}:${depdepl}" + linker_flags+=" -dylib_file ${darwin_install_name}:${depdepl}" + path= + fi + fi + ;; + *) + path="-L$absdir/$objdir" + ;; + esac + else + eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` + test -z "$libdir" && \ + func_fatal_error "\`$deplib' is not a valid libtool archive" + test "$absdir" != "$libdir" && \ + func_warning "\`$deplib' seems to be moved" + + path="-L$absdir" + fi + ;; + esac + case " $deplibs " in + *" $path "*) ;; + *) deplibs="$path $deplibs" ;; + esac + done + fi # link_all_deplibs != no + fi # linkmode = lib + done # for deplib in $libs + if test "$pass" = link; then + if test "$linkmode" = "prog"; then + compile_deplibs="$new_inherited_linker_flags $compile_deplibs" + finalize_deplibs="$new_inherited_linker_flags $finalize_deplibs" + else + compiler_flags="$compiler_flags "`$ECHO " $new_inherited_linker_flags" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + fi + fi + dependency_libs="$newdependency_libs" + if test "$pass" = dlpreopen; then + # Link the dlpreopened libraries before other libraries + for deplib in $save_deplibs; do + deplibs="$deplib $deplibs" + done + fi + if test "$pass" != dlopen; then + if test "$pass" != conv; then + # Make sure lib_search_path contains only unique directories. + lib_search_path= + for dir in $newlib_search_path; do + case "$lib_search_path " in + *" $dir "*) ;; + *) lib_search_path+=" $dir" ;; + esac + done + newlib_search_path= + fi + + if test "$linkmode,$pass" != "prog,link"; then + vars="deplibs" + else + vars="compile_deplibs finalize_deplibs" + fi + for var in $vars dependency_libs; do + # Add libraries to $var in reverse order + eval tmp_libs=\"\$$var\" + new_libs= + for deplib in $tmp_libs; do + # FIXME: Pedantically, this is the right thing to do, so + # that some nasty dependency loop isn't accidentally + # broken: + #new_libs="$deplib $new_libs" + # Pragmatically, this seems to cause very few problems in + # practice: + case $deplib in + -L*) new_libs="$deplib $new_libs" ;; + -R*) ;; + *) + # And here is the reason: when a library appears more + # than once as an explicit dependence of a library, or + # is implicitly linked in more than once by the + # compiler, it is considered special, and multiple + # occurrences thereof are not removed. Compare this + # with having the same library being listed as a + # dependency of multiple other libraries: in this case, + # we know (pedantically, we assume) the library does not + # need to be listed more than once, so we keep only the + # last copy. This is not always right, but it is rare + # enough that we require users that really mean to play + # such unportable linking tricks to link the library + # using -Wl,-lname, so that libtool does not consider it + # for duplicate removal. + case " $specialdeplibs " in + *" $deplib "*) new_libs="$deplib $new_libs" ;; + *) + case " $new_libs " in + *" $deplib "*) ;; + *) new_libs="$deplib $new_libs" ;; + esac + ;; + esac + ;; + esac + done + tmp_libs= + for deplib in $new_libs; do + case $deplib in + -L*) + case " $tmp_libs " in + *" $deplib "*) ;; + *) tmp_libs+=" $deplib" ;; + esac + ;; + *) tmp_libs+=" $deplib" ;; + esac + done + eval $var=\"$tmp_libs\" + done # for var + fi + # Last step: remove runtime libs from dependency_libs + # (they stay in deplibs) + tmp_libs= + for i in $dependency_libs ; do + case " $predeps $postdeps $compiler_lib_search_path " in + *" $i "*) + i="" + ;; + esac + if test -n "$i" ; then + tmp_libs+=" $i" + fi + done + dependency_libs=$tmp_libs + done # for pass + if test "$linkmode" = prog; then + dlfiles="$newdlfiles" + fi + if test "$linkmode" = prog || test "$linkmode" = lib; then + dlprefiles="$newdlprefiles" + fi + + case $linkmode in + oldlib) + if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then + func_warning "\`-dlopen' is ignored for archives" + fi + + case " $deplibs" in + *\ -l* | *\ -L*) + func_warning "\`-l' and \`-L' are ignored for archives" ;; + esac + + test -n "$rpath" && \ + func_warning "\`-rpath' is ignored for archives" + + test -n "$xrpath" && \ + func_warning "\`-R' is ignored for archives" + + test -n "$vinfo" && \ + func_warning "\`-version-info/-version-number' is ignored for archives" + + test -n "$release" && \ + func_warning "\`-release' is ignored for archives" + + test -n "$export_symbols$export_symbols_regex" && \ + func_warning "\`-export-symbols' is ignored for archives" + + # Now set the variables for building old libraries. + build_libtool_libs=no + oldlibs="$output" + objs+="$old_deplibs" + ;; + + lib) + # Make sure we only generate libraries of the form `libNAME.la'. + case $outputname in + lib*) + func_stripname 'lib' '.la' "$outputname" + name=$func_stripname_result + eval shared_ext=\"$shrext_cmds\" + eval libname=\"$libname_spec\" + ;; + *) + test "$module" = no && \ + func_fatal_help "libtool library \`$output' must begin with \`lib'" + + if test "$need_lib_prefix" != no; then + # Add the "lib" prefix for modules if required + func_stripname '' '.la' "$outputname" + name=$func_stripname_result + eval shared_ext=\"$shrext_cmds\" + eval libname=\"$libname_spec\" + else + func_stripname '' '.la' "$outputname" + libname=$func_stripname_result + fi + ;; + esac + + if test -n "$objs"; then + if test "$deplibs_check_method" != pass_all; then + func_fatal_error "cannot build libtool library \`$output' from non-libtool objects on this host:$objs" + else + echo + $ECHO "*** Warning: Linking the shared library $output against the non-libtool" + $ECHO "*** objects $objs is not portable!" + libobjs+=" $objs" + fi + fi + + test "$dlself" != no && \ + func_warning "\`-dlopen self' is ignored for libtool libraries" + + set dummy $rpath + shift + test "$#" -gt 1 && \ + func_warning "ignoring multiple \`-rpath's for a libtool library" + + install_libdir="$1" + + oldlibs= + if test -z "$rpath"; then + if test "$build_libtool_libs" = yes; then + # Building a libtool convenience library. + # Some compilers have problems with a `.al' extension so + # convenience libraries should have the same extension an + # archive normally would. + oldlibs="$output_objdir/$libname.$libext $oldlibs" + build_libtool_libs=convenience + build_old_libs=yes + fi + + test -n "$vinfo" && \ + func_warning "\`-version-info/-version-number' is ignored for convenience libraries" + + test -n "$release" && \ + func_warning "\`-release' is ignored for convenience libraries" + else + + # Parse the version information argument. + save_ifs="$IFS"; IFS=':' + set dummy $vinfo 0 0 0 + shift + IFS="$save_ifs" + + test -n "$7" && \ + func_fatal_help "too many parameters to \`-version-info'" + + # convert absolute version numbers to libtool ages + # this retains compatibility with .la files and attempts + # to make the code below a bit more comprehensible + + case $vinfo_number in + yes) + number_major="$1" + number_minor="$2" + number_revision="$3" + # + # There are really only two kinds -- those that + # use the current revision as the major version + # and those that subtract age and use age as + # a minor version. But, then there is irix + # which has an extra 1 added just for fun + # + case $version_type in + # correct linux to gnu/linux during the next big refactor + darwin|linux|osf|windows|none) + func_arith $number_major + $number_minor + current=$func_arith_result + age="$number_minor" + revision="$number_revision" + ;; + freebsd-aout|freebsd-elf|qnx|sunos) + current="$number_major" + revision="$number_minor" + age="0" + ;; + irix|nonstopux) + func_arith $number_major + $number_minor + current=$func_arith_result + age="$number_minor" + revision="$number_minor" + lt_irix_increment=no + ;; + esac + ;; + no) + current="$1" + revision="$2" + age="$3" + ;; + esac + + # Check that each of the things are valid numbers. + case $current in + 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; + *) + func_error "CURRENT \`$current' must be a nonnegative integer" + func_fatal_error "\`$vinfo' is not valid version information" + ;; + esac + + case $revision in + 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; + *) + func_error "REVISION \`$revision' must be a nonnegative integer" + func_fatal_error "\`$vinfo' is not valid version information" + ;; + esac + + case $age in + 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; + *) + func_error "AGE \`$age' must be a nonnegative integer" + func_fatal_error "\`$vinfo' is not valid version information" + ;; + esac + + if test "$age" -gt "$current"; then + func_error "AGE \`$age' is greater than the current interface number \`$current'" + func_fatal_error "\`$vinfo' is not valid version information" + fi + + # Calculate the version variables. + major= + versuffix= + verstring= + case $version_type in + none) ;; + + darwin) + # Like Linux, but with the current version available in + # verstring for coding it into the library header + func_arith $current - $age + major=.$func_arith_result + versuffix="$major.$age.$revision" + # Darwin ld doesn't like 0 for these options... + func_arith $current + 1 + minor_current=$func_arith_result + xlcverstring="${wl}-compatibility_version ${wl}$minor_current ${wl}-current_version ${wl}$minor_current.$revision" + verstring="-compatibility_version $minor_current -current_version $minor_current.$revision" + ;; + + freebsd-aout) + major=".$current" + versuffix=".$current.$revision"; + ;; + + freebsd-elf) + major=".$current" + versuffix=".$current" + ;; + + irix | nonstopux) + if test "X$lt_irix_increment" = "Xno"; then + func_arith $current - $age + else + func_arith $current - $age + 1 + fi + major=$func_arith_result + + case $version_type in + nonstopux) verstring_prefix=nonstopux ;; + *) verstring_prefix=sgi ;; + esac + verstring="$verstring_prefix$major.$revision" + + # Add in all the interfaces that we are compatible with. + loop=$revision + while test "$loop" -ne 0; do + func_arith $revision - $loop + iface=$func_arith_result + func_arith $loop - 1 + loop=$func_arith_result + verstring="$verstring_prefix$major.$iface:$verstring" + done + + # Before this point, $major must not contain `.'. + major=.$major + versuffix="$major.$revision" + ;; + + linux) # correct to gnu/linux during the next big refactor + func_arith $current - $age + major=.$func_arith_result + versuffix="$major.$age.$revision" + ;; + + osf) + func_arith $current - $age + major=.$func_arith_result + versuffix=".$current.$age.$revision" + verstring="$current.$age.$revision" + + # Add in all the interfaces that we are compatible with. + loop=$age + while test "$loop" -ne 0; do + func_arith $current - $loop + iface=$func_arith_result + func_arith $loop - 1 + loop=$func_arith_result + verstring="$verstring:${iface}.0" + done + + # Make executables depend on our current version. + verstring+=":${current}.0" + ;; + + qnx) + major=".$current" + versuffix=".$current" + ;; + + sunos) + major=".$current" + versuffix=".$current.$revision" + ;; + + windows) + # Use '-' rather than '.', since we only want one + # extension on DOS 8.3 filesystems. + func_arith $current - $age + major=$func_arith_result + versuffix="-$major" + ;; + + *) + func_fatal_configuration "unknown library version type \`$version_type'" + ;; + esac + + # Clear the version info if we defaulted, and they specified a release. + if test -z "$vinfo" && test -n "$release"; then + major= + case $version_type in + darwin) + # we can't check for "0.0" in archive_cmds due to quoting + # problems, so we reset it completely + verstring= + ;; + *) + verstring="0.0" + ;; + esac + if test "$need_version" = no; then + versuffix= + else + versuffix=".0.0" + fi + fi + + # Remove version info from name if versioning should be avoided + if test "$avoid_version" = yes && test "$need_version" = no; then + major= + versuffix= + verstring="" + fi + + # Check to see if the archive will have undefined symbols. + if test "$allow_undefined" = yes; then + if test "$allow_undefined_flag" = unsupported; then + func_warning "undefined symbols not allowed in $host shared libraries" + build_libtool_libs=no + build_old_libs=yes + fi + else + # Don't allow undefined symbols. + allow_undefined_flag="$no_undefined_flag" + fi + + fi + + func_generate_dlsyms "$libname" "$libname" "yes" + libobjs+=" $symfileobj" + test "X$libobjs" = "X " && libobjs= + + if test "$opt_mode" != relink; then + # Remove our outputs, but don't remove object files since they + # may have been created when compiling PIC objects. + removelist= + tempremovelist=`$ECHO "$output_objdir/*"` + for p in $tempremovelist; do + case $p in + *.$objext | *.gcno) + ;; + $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/${libname}${release}.*) + if test "X$precious_files_regex" != "X"; then + if $ECHO "$p" | $EGREP -e "$precious_files_regex" >/dev/null 2>&1 + then + continue + fi + fi + removelist+=" $p" + ;; + *) ;; + esac + done + test -n "$removelist" && \ + func_show_eval "${RM}r \$removelist" + fi + + # Now set the variables for building old libraries. + if test "$build_old_libs" = yes && test "$build_libtool_libs" != convenience ; then + oldlibs+=" $output_objdir/$libname.$libext" + + # Transform .lo files to .o files. + oldobjs="$objs "`$ECHO "$libobjs" | $SP2NL | $SED "/\.${libext}$/d; $lo2o" | $NL2SP` + fi + + # Eliminate all temporary directories. + #for path in $notinst_path; do + # lib_search_path=`$ECHO "$lib_search_path " | $SED "s% $path % %g"` + # deplibs=`$ECHO "$deplibs " | $SED "s% -L$path % %g"` + # dependency_libs=`$ECHO "$dependency_libs " | $SED "s% -L$path % %g"` + #done + + if test -n "$xrpath"; then + # If the user specified any rpath flags, then add them. + temp_xrpath= + for libdir in $xrpath; do + func_replace_sysroot "$libdir" + temp_xrpath+=" -R$func_replace_sysroot_result" + case "$finalize_rpath " in + *" $libdir "*) ;; + *) finalize_rpath+=" $libdir" ;; + esac + done + if test "$hardcode_into_libs" != yes || test "$build_old_libs" = yes; then + dependency_libs="$temp_xrpath $dependency_libs" + fi + fi + + # Make sure dlfiles contains only unique files that won't be dlpreopened + old_dlfiles="$dlfiles" + dlfiles= + for lib in $old_dlfiles; do + case " $dlprefiles $dlfiles " in + *" $lib "*) ;; + *) dlfiles+=" $lib" ;; + esac + done + + # Make sure dlprefiles contains only unique files + old_dlprefiles="$dlprefiles" + dlprefiles= + for lib in $old_dlprefiles; do + case "$dlprefiles " in + *" $lib "*) ;; + *) dlprefiles+=" $lib" ;; + esac + done + + if test "$build_libtool_libs" = yes; then + if test -n "$rpath"; then + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos* | *-cegcc* | *-*-haiku*) + # these systems don't actually have a c library (as such)! + ;; + *-*-rhapsody* | *-*-darwin1.[012]) + # Rhapsody C library is in the System framework + deplibs+=" System.ltframework" + ;; + *-*-netbsd*) + # Don't link with libc until the a.out ld.so is fixed. + ;; + *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) + # Do not include libc due to us having libc/libc_r. + ;; + *-*-sco3.2v5* | *-*-sco5v6*) + # Causes problems with __ctype + ;; + *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) + # Compiler inserts libc in the correct place for threads to work + ;; + *) + # Add libc to deplibs on all other systems if necessary. + if test "$build_libtool_need_lc" = "yes"; then + deplibs+=" -lc" + fi + ;; + esac + fi + + # Transform deplibs into only deplibs that can be linked in shared. + name_save=$name + libname_save=$libname + release_save=$release + versuffix_save=$versuffix + major_save=$major + # I'm not sure if I'm treating the release correctly. I think + # release should show up in the -l (ie -lgmp5) so we don't want to + # add it in twice. Is that correct? + release="" + versuffix="" + major="" + newdeplibs= + droppeddeps=no + case $deplibs_check_method in + pass_all) + # Don't check for shared/static. Everything works. + # This might be a little naive. We might want to check + # whether the library exists or not. But this is on + # osf3 & osf4 and I'm not really sure... Just + # implementing what was already the behavior. + newdeplibs=$deplibs + ;; + test_compile) + # This code stresses the "libraries are programs" paradigm to its + # limits. Maybe even breaks it. We compile a program, linking it + # against the deplibs as a proxy for the library. Then we can check + # whether they linked in statically or dynamically with ldd. + $opt_dry_run || $RM conftest.c + cat > conftest.c </dev/null` + $nocaseglob + else + potential_libs=`ls $i/$libnameglob[.-]* 2>/dev/null` + fi + for potent_lib in $potential_libs; do + # Follow soft links. + if ls -lLd "$potent_lib" 2>/dev/null | + $GREP " -> " >/dev/null; then + continue + fi + # The statement above tries to avoid entering an + # endless loop below, in case of cyclic links. + # We might still enter an endless loop, since a link + # loop can be closed while we follow links, + # but so what? + potlib="$potent_lib" + while test -h "$potlib" 2>/dev/null; do + potliblink=`ls -ld $potlib | ${SED} 's/.* -> //'` + case $potliblink in + [\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";; + *) potlib=`$ECHO "$potlib" | $SED 's,[^/]*$,,'`"$potliblink";; + esac + done + if eval $file_magic_cmd \"\$potlib\" 2>/dev/null | + $SED -e 10q | + $EGREP "$file_magic_regex" > /dev/null; then + newdeplibs+=" $a_deplib" + a_deplib="" + break 2 + fi + done + done + fi + if test -n "$a_deplib" ; then + droppeddeps=yes + echo + $ECHO "*** Warning: linker path does not have real file for library $a_deplib." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have" + echo "*** because I did check the linker path looking for a file starting" + if test -z "$potlib" ; then + $ECHO "*** with $libname but no candidates were found. (...for file magic test)" + else + $ECHO "*** with $libname and none of the candidates passed a file format test" + $ECHO "*** using a file magic. Last file checked: $potlib" + fi + fi + ;; + *) + # Add a -L argument. + newdeplibs+=" $a_deplib" + ;; + esac + done # Gone through all deplibs. + ;; + match_pattern*) + set dummy $deplibs_check_method; shift + match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"` + for a_deplib in $deplibs; do + case $a_deplib in + -l*) + func_stripname -l '' "$a_deplib" + name=$func_stripname_result + if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then + case " $predeps $postdeps " in + *" $a_deplib "*) + newdeplibs+=" $a_deplib" + a_deplib="" + ;; + esac + fi + if test -n "$a_deplib" ; then + libname=`eval "\\$ECHO \"$libname_spec\""` + for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do + potential_libs=`ls $i/$libname[.-]* 2>/dev/null` + for potent_lib in $potential_libs; do + potlib="$potent_lib" # see symlink-check above in file_magic test + if eval "\$ECHO \"$potent_lib\"" 2>/dev/null | $SED 10q | \ + $EGREP "$match_pattern_regex" > /dev/null; then + newdeplibs+=" $a_deplib" + a_deplib="" + break 2 + fi + done + done + fi + if test -n "$a_deplib" ; then + droppeddeps=yes + echo + $ECHO "*** Warning: linker path does not have real file for library $a_deplib." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have" + echo "*** because I did check the linker path looking for a file starting" + if test -z "$potlib" ; then + $ECHO "*** with $libname but no candidates were found. (...for regex pattern test)" + else + $ECHO "*** with $libname and none of the candidates passed a file format test" + $ECHO "*** using a regex pattern. Last file checked: $potlib" + fi + fi + ;; + *) + # Add a -L argument. + newdeplibs+=" $a_deplib" + ;; + esac + done # Gone through all deplibs. + ;; + none | unknown | *) + newdeplibs="" + tmp_deplibs=`$ECHO " $deplibs" | $SED 's/ -lc$//; s/ -[LR][^ ]*//g'` + if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then + for i in $predeps $postdeps ; do + # can't use Xsed below, because $i might contain '/' + tmp_deplibs=`$ECHO " $tmp_deplibs" | $SED "s,$i,,"` + done + fi + case $tmp_deplibs in + *[!\ \ ]*) + echo + if test "X$deplibs_check_method" = "Xnone"; then + echo "*** Warning: inter-library dependencies are not supported in this platform." + else + echo "*** Warning: inter-library dependencies are not known to be supported." + fi + echo "*** All declared inter-library dependencies are being dropped." + droppeddeps=yes + ;; + esac + ;; + esac + versuffix=$versuffix_save + major=$major_save + release=$release_save + libname=$libname_save + name=$name_save + + case $host in + *-*-rhapsody* | *-*-darwin1.[012]) + # On Rhapsody replace the C library with the System framework + newdeplibs=`$ECHO " $newdeplibs" | $SED 's/ -lc / System.ltframework /'` + ;; + esac + + if test "$droppeddeps" = yes; then + if test "$module" = yes; then + echo + echo "*** Warning: libtool could not satisfy all declared inter-library" + $ECHO "*** dependencies of module $libname. Therefore, libtool will create" + echo "*** a static module, that should work as long as the dlopening" + echo "*** application is linked with the -dlopen flag." + if test -z "$global_symbol_pipe"; then + echo + echo "*** However, this would only work if libtool was able to extract symbol" + echo "*** lists from a program, using \`nm' or equivalent, but libtool could" + echo "*** not find such a program. So, this module is probably useless." + echo "*** \`nm' from GNU binutils and a full rebuild may help." + fi + if test "$build_old_libs" = no; then + oldlibs="$output_objdir/$libname.$libext" + build_libtool_libs=module + build_old_libs=yes + else + build_libtool_libs=no + fi + else + echo "*** The inter-library dependencies that have been dropped here will be" + echo "*** automatically added whenever a program is linked with this library" + echo "*** or is declared to -dlopen it." + + if test "$allow_undefined" = no; then + echo + echo "*** Since this library must not contain undefined symbols," + echo "*** because either the platform does not support them or" + echo "*** it was explicitly requested with -no-undefined," + echo "*** libtool will only create a static version of it." + if test "$build_old_libs" = no; then + oldlibs="$output_objdir/$libname.$libext" + build_libtool_libs=module + build_old_libs=yes + else + build_libtool_libs=no + fi + fi + fi + fi + # Done checking deplibs! + deplibs=$newdeplibs + fi + # Time to change all our "foo.ltframework" stuff back to "-framework foo" + case $host in + *-*-darwin*) + newdeplibs=`$ECHO " $newdeplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + new_inherited_linker_flags=`$ECHO " $new_inherited_linker_flags" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + deplibs=`$ECHO " $deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + ;; + esac + + # move library search paths that coincide with paths to not yet + # installed libraries to the beginning of the library search list + new_libs= + for path in $notinst_path; do + case " $new_libs " in + *" -L$path/$objdir "*) ;; + *) + case " $deplibs " in + *" -L$path/$objdir "*) + new_libs+=" -L$path/$objdir" ;; + esac + ;; + esac + done + for deplib in $deplibs; do + case $deplib in + -L*) + case " $new_libs " in + *" $deplib "*) ;; + *) new_libs+=" $deplib" ;; + esac + ;; + *) new_libs+=" $deplib" ;; + esac + done + deplibs="$new_libs" + + # All the library-specific variables (install_libdir is set above). + library_names= + old_library= + dlname= + + # Test again, we may have decided not to build it any more + if test "$build_libtool_libs" = yes; then + # Remove ${wl} instances when linking with ld. + # FIXME: should test the right _cmds variable. + case $archive_cmds in + *\$LD\ *) wl= ;; + esac + if test "$hardcode_into_libs" = yes; then + # Hardcode the library paths + hardcode_libdirs= + dep_rpath= + rpath="$finalize_rpath" + test "$opt_mode" != relink && rpath="$compile_rpath$rpath" + for libdir in $rpath; do + if test -n "$hardcode_libdir_flag_spec"; then + if test -n "$hardcode_libdir_separator"; then + func_replace_sysroot "$libdir" + libdir=$func_replace_sysroot_result + if test -z "$hardcode_libdirs"; then + hardcode_libdirs="$libdir" + else + # Just accumulate the unique libdirs. + case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in + *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) + ;; + *) + hardcode_libdirs+="$hardcode_libdir_separator$libdir" + ;; + esac + fi + else + eval flag=\"$hardcode_libdir_flag_spec\" + dep_rpath+=" $flag" + fi + elif test -n "$runpath_var"; then + case "$perm_rpath " in + *" $libdir "*) ;; + *) perm_rpath+=" $libdir" ;; + esac + fi + done + # Substitute the hardcoded libdirs into the rpath. + if test -n "$hardcode_libdir_separator" && + test -n "$hardcode_libdirs"; then + libdir="$hardcode_libdirs" + eval "dep_rpath=\"$hardcode_libdir_flag_spec\"" + fi + if test -n "$runpath_var" && test -n "$perm_rpath"; then + # We should set the runpath_var. + rpath= + for dir in $perm_rpath; do + rpath+="$dir:" + done + eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var" + fi + test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs" + fi + + shlibpath="$finalize_shlibpath" + test "$opt_mode" != relink && shlibpath="$compile_shlibpath$shlibpath" + if test -n "$shlibpath"; then + eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var" + fi + + # Get the real and link names of the library. + eval shared_ext=\"$shrext_cmds\" + eval library_names=\"$library_names_spec\" + set dummy $library_names + shift + realname="$1" + shift + + if test -n "$soname_spec"; then + eval soname=\"$soname_spec\" + else + soname="$realname" + fi + if test -z "$dlname"; then + dlname=$soname + fi + + lib="$output_objdir/$realname" + linknames= + for link + do + linknames+=" $link" + done + + # Use standard objects if they are pic + test -z "$pic_flag" && libobjs=`$ECHO "$libobjs" | $SP2NL | $SED "$lo2o" | $NL2SP` + test "X$libobjs" = "X " && libobjs= + + delfiles= + if test -n "$export_symbols" && test -n "$include_expsyms"; then + $opt_dry_run || cp "$export_symbols" "$output_objdir/$libname.uexp" + export_symbols="$output_objdir/$libname.uexp" + delfiles+=" $export_symbols" + fi + + orig_export_symbols= + case $host_os in + cygwin* | mingw* | cegcc*) + if test -n "$export_symbols" && test -z "$export_symbols_regex"; then + # exporting using user supplied symfile + if test "x`$SED 1q $export_symbols`" != xEXPORTS; then + # and it's NOT already a .def file. Must figure out + # which of the given symbols are data symbols and tag + # them as such. So, trigger use of export_symbols_cmds. + # export_symbols gets reassigned inside the "prepare + # the list of exported symbols" if statement, so the + # include_expsyms logic still works. + orig_export_symbols="$export_symbols" + export_symbols= + always_export_symbols=yes + fi + fi + ;; + esac + + # Prepare the list of exported symbols + if test -z "$export_symbols"; then + if test "$always_export_symbols" = yes || test -n "$export_symbols_regex"; then + func_verbose "generating symbol list for \`$libname.la'" + export_symbols="$output_objdir/$libname.exp" + $opt_dry_run || $RM $export_symbols + cmds=$export_symbols_cmds + save_ifs="$IFS"; IFS='~' + for cmd1 in $cmds; do + IFS="$save_ifs" + # Take the normal branch if the nm_file_list_spec branch + # doesn't work or if tool conversion is not needed. + case $nm_file_list_spec~$to_tool_file_cmd in + *~func_convert_file_noop | *~func_convert_file_msys_to_w32 | ~*) + try_normal_branch=yes + eval cmd=\"$cmd1\" + func_len " $cmd" + len=$func_len_result + ;; + *) + try_normal_branch=no + ;; + esac + if test "$try_normal_branch" = yes \ + && { test "$len" -lt "$max_cmd_len" \ + || test "$max_cmd_len" -le -1; } + then + func_show_eval "$cmd" 'exit $?' + skipped_export=false + elif test -n "$nm_file_list_spec"; then + func_basename "$output" + output_la=$func_basename_result + save_libobjs=$libobjs + save_output=$output + output=${output_objdir}/${output_la}.nm + func_to_tool_file "$output" + libobjs=$nm_file_list_spec$func_to_tool_file_result + delfiles+=" $output" + func_verbose "creating $NM input file list: $output" + for obj in $save_libobjs; do + func_to_tool_file "$obj" + $ECHO "$func_to_tool_file_result" + done > "$output" + eval cmd=\"$cmd1\" + func_show_eval "$cmd" 'exit $?' + output=$save_output + libobjs=$save_libobjs + skipped_export=false + else + # The command line is too long to execute in one step. + func_verbose "using reloadable object file for export list..." + skipped_export=: + # Break out early, otherwise skipped_export may be + # set to false by a later but shorter cmd. + break + fi + done + IFS="$save_ifs" + if test -n "$export_symbols_regex" && test "X$skipped_export" != "X:"; then + func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' + func_show_eval '$MV "${export_symbols}T" "$export_symbols"' + fi + fi + fi + + if test -n "$export_symbols" && test -n "$include_expsyms"; then + tmp_export_symbols="$export_symbols" + test -n "$orig_export_symbols" && tmp_export_symbols="$orig_export_symbols" + $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"' + fi + + if test "X$skipped_export" != "X:" && test -n "$orig_export_symbols"; then + # The given exports_symbols file has to be filtered, so filter it. + func_verbose "filter symbol list for \`$libname.la' to tag DATA exports" + # FIXME: $output_objdir/$libname.filter potentially contains lots of + # 's' commands which not all seds can handle. GNU sed should be fine + # though. Also, the filter scales superlinearly with the number of + # global variables. join(1) would be nice here, but unfortunately + # isn't a blessed tool. + $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter + delfiles+=" $export_symbols $output_objdir/$libname.filter" + export_symbols=$output_objdir/$libname.def + $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols + fi + + tmp_deplibs= + for test_deplib in $deplibs; do + case " $convenience " in + *" $test_deplib "*) ;; + *) + tmp_deplibs+=" $test_deplib" + ;; + esac + done + deplibs="$tmp_deplibs" + + if test -n "$convenience"; then + if test -n "$whole_archive_flag_spec" && + test "$compiler_needs_object" = yes && + test -z "$libobjs"; then + # extract the archives, so we have objects to list. + # TODO: could optimize this to just extract one archive. + whole_archive_flag_spec= + fi + if test -n "$whole_archive_flag_spec"; then + save_libobjs=$libobjs + eval libobjs=\"\$libobjs $whole_archive_flag_spec\" + test "X$libobjs" = "X " && libobjs= + else + gentop="$output_objdir/${outputname}x" + generated+=" $gentop" + + func_extract_archives $gentop $convenience + libobjs+=" $func_extract_archives_result" + test "X$libobjs" = "X " && libobjs= + fi + fi + + if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then + eval flag=\"$thread_safe_flag_spec\" + linker_flags+=" $flag" + fi + + # Make a backup of the uninstalled library when relinking + if test "$opt_mode" = relink; then + $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}U && $MV $realname ${realname}U)' || exit $? + fi + + # Do each of the archive commands. + if test "$module" = yes && test -n "$module_cmds" ; then + if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then + eval test_cmds=\"$module_expsym_cmds\" + cmds=$module_expsym_cmds + else + eval test_cmds=\"$module_cmds\" + cmds=$module_cmds + fi + else + if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then + eval test_cmds=\"$archive_expsym_cmds\" + cmds=$archive_expsym_cmds + else + eval test_cmds=\"$archive_cmds\" + cmds=$archive_cmds + fi + fi + + if test "X$skipped_export" != "X:" && + func_len " $test_cmds" && + len=$func_len_result && + test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then + : + else + # The command line is too long to link in one step, link piecewise + # or, if using GNU ld and skipped_export is not :, use a linker + # script. + + # Save the value of $output and $libobjs because we want to + # use them later. If we have whole_archive_flag_spec, we + # want to use save_libobjs as it was before + # whole_archive_flag_spec was expanded, because we can't + # assume the linker understands whole_archive_flag_spec. + # This may have to be revisited, in case too many + # convenience libraries get linked in and end up exceeding + # the spec. + if test -z "$convenience" || test -z "$whole_archive_flag_spec"; then + save_libobjs=$libobjs + fi + save_output=$output + func_basename "$output" + output_la=$func_basename_result + + # Clear the reloadable object creation command queue and + # initialize k to one. + test_cmds= + concat_cmds= + objlist= + last_robj= + k=1 + + if test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "$with_gnu_ld" = yes; then + output=${output_objdir}/${output_la}.lnkscript + func_verbose "creating GNU ld script: $output" + echo 'INPUT (' > $output + for obj in $save_libobjs + do + func_to_tool_file "$obj" + $ECHO "$func_to_tool_file_result" >> $output + done + echo ')' >> $output + delfiles+=" $output" + func_to_tool_file "$output" + output=$func_to_tool_file_result + elif test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "X$file_list_spec" != X; then + output=${output_objdir}/${output_la}.lnk + func_verbose "creating linker input file list: $output" + : > $output + set x $save_libobjs + shift + firstobj= + if test "$compiler_needs_object" = yes; then + firstobj="$1 " + shift + fi + for obj + do + func_to_tool_file "$obj" + $ECHO "$func_to_tool_file_result" >> $output + done + delfiles+=" $output" + func_to_tool_file "$output" + output=$firstobj\"$file_list_spec$func_to_tool_file_result\" + else + if test -n "$save_libobjs"; then + func_verbose "creating reloadable object files..." + output=$output_objdir/$output_la-${k}.$objext + eval test_cmds=\"$reload_cmds\" + func_len " $test_cmds" + len0=$func_len_result + len=$len0 + + # Loop over the list of objects to be linked. + for obj in $save_libobjs + do + func_len " $obj" + func_arith $len + $func_len_result + len=$func_arith_result + if test "X$objlist" = X || + test "$len" -lt "$max_cmd_len"; then + objlist+=" $obj" + else + # The command $test_cmds is almost too long, add a + # command to the queue. + if test "$k" -eq 1 ; then + # The first file doesn't have a previous command to add. + reload_objs=$objlist + eval concat_cmds=\"$reload_cmds\" + else + # All subsequent reloadable object files will link in + # the last one created. + reload_objs="$objlist $last_robj" + eval concat_cmds=\"\$concat_cmds~$reload_cmds~\$RM $last_robj\" + fi + last_robj=$output_objdir/$output_la-${k}.$objext + func_arith $k + 1 + k=$func_arith_result + output=$output_objdir/$output_la-${k}.$objext + objlist=" $obj" + func_len " $last_robj" + func_arith $len0 + $func_len_result + len=$func_arith_result + fi + done + # Handle the remaining objects by creating one last + # reloadable object file. All subsequent reloadable object + # files will link in the last one created. + test -z "$concat_cmds" || concat_cmds=$concat_cmds~ + reload_objs="$objlist $last_robj" + eval concat_cmds=\"\${concat_cmds}$reload_cmds\" + if test -n "$last_robj"; then + eval concat_cmds=\"\${concat_cmds}~\$RM $last_robj\" + fi + delfiles+=" $output" + + else + output= + fi + + if ${skipped_export-false}; then + func_verbose "generating symbol list for \`$libname.la'" + export_symbols="$output_objdir/$libname.exp" + $opt_dry_run || $RM $export_symbols + libobjs=$output + # Append the command to create the export file. + test -z "$concat_cmds" || concat_cmds=$concat_cmds~ + eval concat_cmds=\"\$concat_cmds$export_symbols_cmds\" + if test -n "$last_robj"; then + eval concat_cmds=\"\$concat_cmds~\$RM $last_robj\" + fi + fi + + test -n "$save_libobjs" && + func_verbose "creating a temporary reloadable object file: $output" + + # Loop through the commands generated above and execute them. + save_ifs="$IFS"; IFS='~' + for cmd in $concat_cmds; do + IFS="$save_ifs" + $opt_silent || { + func_quote_for_expand "$cmd" + eval "func_echo $func_quote_for_expand_result" + } + $opt_dry_run || eval "$cmd" || { + lt_exit=$? + + # Restore the uninstalled library and exit + if test "$opt_mode" = relink; then + ( cd "$output_objdir" && \ + $RM "${realname}T" && \ + $MV "${realname}U" "$realname" ) + fi + + exit $lt_exit + } + done + IFS="$save_ifs" + + if test -n "$export_symbols_regex" && ${skipped_export-false}; then + func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' + func_show_eval '$MV "${export_symbols}T" "$export_symbols"' + fi + fi + + if ${skipped_export-false}; then + if test -n "$export_symbols" && test -n "$include_expsyms"; then + tmp_export_symbols="$export_symbols" + test -n "$orig_export_symbols" && tmp_export_symbols="$orig_export_symbols" + $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"' + fi + + if test -n "$orig_export_symbols"; then + # The given exports_symbols file has to be filtered, so filter it. + func_verbose "filter symbol list for \`$libname.la' to tag DATA exports" + # FIXME: $output_objdir/$libname.filter potentially contains lots of + # 's' commands which not all seds can handle. GNU sed should be fine + # though. Also, the filter scales superlinearly with the number of + # global variables. join(1) would be nice here, but unfortunately + # isn't a blessed tool. + $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter + delfiles+=" $export_symbols $output_objdir/$libname.filter" + export_symbols=$output_objdir/$libname.def + $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols + fi + fi + + libobjs=$output + # Restore the value of output. + output=$save_output + + if test -n "$convenience" && test -n "$whole_archive_flag_spec"; then + eval libobjs=\"\$libobjs $whole_archive_flag_spec\" + test "X$libobjs" = "X " && libobjs= + fi + # Expand the library linking commands again to reset the + # value of $libobjs for piecewise linking. + + # Do each of the archive commands. + if test "$module" = yes && test -n "$module_cmds" ; then + if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then + cmds=$module_expsym_cmds + else + cmds=$module_cmds + fi + else + if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then + cmds=$archive_expsym_cmds + else + cmds=$archive_cmds + fi + fi + fi + + if test -n "$delfiles"; then + # Append the command to remove temporary files to $cmds. + eval cmds=\"\$cmds~\$RM $delfiles\" + fi + + # Add any objects from preloaded convenience libraries + if test -n "$dlprefiles"; then + gentop="$output_objdir/${outputname}x" + generated+=" $gentop" + + func_extract_archives $gentop $dlprefiles + libobjs+=" $func_extract_archives_result" + test "X$libobjs" = "X " && libobjs= + fi + + save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + eval cmd=\"$cmd\" + $opt_silent || { + func_quote_for_expand "$cmd" + eval "func_echo $func_quote_for_expand_result" + } + $opt_dry_run || eval "$cmd" || { + lt_exit=$? + + # Restore the uninstalled library and exit + if test "$opt_mode" = relink; then + ( cd "$output_objdir" && \ + $RM "${realname}T" && \ + $MV "${realname}U" "$realname" ) + fi + + exit $lt_exit + } + done + IFS="$save_ifs" + + # Restore the uninstalled library and exit + if test "$opt_mode" = relink; then + $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}T && $MV $realname ${realname}T && $MV ${realname}U $realname)' || exit $? + + if test -n "$convenience"; then + if test -z "$whole_archive_flag_spec"; then + func_show_eval '${RM}r "$gentop"' + fi + fi + + exit $EXIT_SUCCESS + fi + + # Create links to the real library. + for linkname in $linknames; do + if test "$realname" != "$linkname"; then + func_show_eval '(cd "$output_objdir" && $RM "$linkname" && $LN_S "$realname" "$linkname")' 'exit $?' + fi + done + + # If -module or -export-dynamic was specified, set the dlname. + if test "$module" = yes || test "$export_dynamic" = yes; then + # On all known operating systems, these are identical. + dlname="$soname" + fi + fi + ;; + + obj) + if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then + func_warning "\`-dlopen' is ignored for objects" + fi + + case " $deplibs" in + *\ -l* | *\ -L*) + func_warning "\`-l' and \`-L' are ignored for objects" ;; + esac + + test -n "$rpath" && \ + func_warning "\`-rpath' is ignored for objects" + + test -n "$xrpath" && \ + func_warning "\`-R' is ignored for objects" + + test -n "$vinfo" && \ + func_warning "\`-version-info' is ignored for objects" + + test -n "$release" && \ + func_warning "\`-release' is ignored for objects" + + case $output in + *.lo) + test -n "$objs$old_deplibs" && \ + func_fatal_error "cannot build library object \`$output' from non-libtool objects" + + libobj=$output + func_lo2o "$libobj" + obj=$func_lo2o_result + ;; + *) + libobj= + obj="$output" + ;; + esac + + # Delete the old objects. + $opt_dry_run || $RM $obj $libobj + + # Objects from convenience libraries. This assumes + # single-version convenience libraries. Whenever we create + # different ones for PIC/non-PIC, this we'll have to duplicate + # the extraction. + reload_conv_objs= + gentop= + # reload_cmds runs $LD directly, so let us get rid of + # -Wl from whole_archive_flag_spec and hope we can get by with + # turning comma into space.. + wl= + + if test -n "$convenience"; then + if test -n "$whole_archive_flag_spec"; then + eval tmp_whole_archive_flags=\"$whole_archive_flag_spec\" + reload_conv_objs=$reload_objs\ `$ECHO "$tmp_whole_archive_flags" | $SED 's|,| |g'` + else + gentop="$output_objdir/${obj}x" + generated+=" $gentop" + + func_extract_archives $gentop $convenience + reload_conv_objs="$reload_objs $func_extract_archives_result" + fi + fi + + # If we're not building shared, we need to use non_pic_objs + test "$build_libtool_libs" != yes && libobjs="$non_pic_objects" + + # Create the old-style object. + reload_objs="$objs$old_deplibs "`$ECHO "$libobjs" | $SP2NL | $SED "/\.${libext}$/d; /\.lib$/d; $lo2o" | $NL2SP`" $reload_conv_objs" ### testsuite: skip nested quoting test + + output="$obj" + func_execute_cmds "$reload_cmds" 'exit $?' + + # Exit if we aren't doing a library object file. + if test -z "$libobj"; then + if test -n "$gentop"; then + func_show_eval '${RM}r "$gentop"' + fi + + exit $EXIT_SUCCESS + fi + + if test "$build_libtool_libs" != yes; then + if test -n "$gentop"; then + func_show_eval '${RM}r "$gentop"' + fi + + # Create an invalid libtool object if no PIC, so that we don't + # accidentally link it into a program. + # $show "echo timestamp > $libobj" + # $opt_dry_run || eval "echo timestamp > $libobj" || exit $? + exit $EXIT_SUCCESS + fi + + if test -n "$pic_flag" || test "$pic_mode" != default; then + # Only do commands if we really have different PIC objects. + reload_objs="$libobjs $reload_conv_objs" + output="$libobj" + func_execute_cmds "$reload_cmds" 'exit $?' + fi + + if test -n "$gentop"; then + func_show_eval '${RM}r "$gentop"' + fi + + exit $EXIT_SUCCESS + ;; + + prog) + case $host in + *cygwin*) func_stripname '' '.exe' "$output" + output=$func_stripname_result.exe;; + esac + test -n "$vinfo" && \ + func_warning "\`-version-info' is ignored for programs" + + test -n "$release" && \ + func_warning "\`-release' is ignored for programs" + + test "$preload" = yes \ + && test "$dlopen_support" = unknown \ + && test "$dlopen_self" = unknown \ + && test "$dlopen_self_static" = unknown && \ + func_warning "\`LT_INIT([dlopen])' not used. Assuming no dlopen support." + + case $host in + *-*-rhapsody* | *-*-darwin1.[012]) + # On Rhapsody replace the C library is the System framework + compile_deplibs=`$ECHO " $compile_deplibs" | $SED 's/ -lc / System.ltframework /'` + finalize_deplibs=`$ECHO " $finalize_deplibs" | $SED 's/ -lc / System.ltframework /'` + ;; + esac + + case $host in + *-*-darwin*) + # Don't allow lazy linking, it breaks C++ global constructors + # But is supposedly fixed on 10.4 or later (yay!). + if test "$tagname" = CXX ; then + case ${MACOSX_DEPLOYMENT_TARGET-10.0} in + 10.[0123]) + compile_command+=" ${wl}-bind_at_load" + finalize_command+=" ${wl}-bind_at_load" + ;; + esac + fi + # Time to change all our "foo.ltframework" stuff back to "-framework foo" + compile_deplibs=`$ECHO " $compile_deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + finalize_deplibs=`$ECHO " $finalize_deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + ;; + esac + + + # move library search paths that coincide with paths to not yet + # installed libraries to the beginning of the library search list + new_libs= + for path in $notinst_path; do + case " $new_libs " in + *" -L$path/$objdir "*) ;; + *) + case " $compile_deplibs " in + *" -L$path/$objdir "*) + new_libs+=" -L$path/$objdir" ;; + esac + ;; + esac + done + for deplib in $compile_deplibs; do + case $deplib in + -L*) + case " $new_libs " in + *" $deplib "*) ;; + *) new_libs+=" $deplib" ;; + esac + ;; + *) new_libs+=" $deplib" ;; + esac + done + compile_deplibs="$new_libs" + + + compile_command+=" $compile_deplibs" + finalize_command+=" $finalize_deplibs" + + if test -n "$rpath$xrpath"; then + # If the user specified any rpath flags, then add them. + for libdir in $rpath $xrpath; do + # This is the magic to use -rpath. + case "$finalize_rpath " in + *" $libdir "*) ;; + *) finalize_rpath+=" $libdir" ;; + esac + done + fi + + # Now hardcode the library paths + rpath= + hardcode_libdirs= + for libdir in $compile_rpath $finalize_rpath; do + if test -n "$hardcode_libdir_flag_spec"; then + if test -n "$hardcode_libdir_separator"; then + if test -z "$hardcode_libdirs"; then + hardcode_libdirs="$libdir" + else + # Just accumulate the unique libdirs. + case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in + *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) + ;; + *) + hardcode_libdirs+="$hardcode_libdir_separator$libdir" + ;; + esac + fi + else + eval flag=\"$hardcode_libdir_flag_spec\" + rpath+=" $flag" + fi + elif test -n "$runpath_var"; then + case "$perm_rpath " in + *" $libdir "*) ;; + *) perm_rpath+=" $libdir" ;; + esac + fi + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) + testbindir=`${ECHO} "$libdir" | ${SED} -e 's*/lib$*/bin*'` + case :$dllsearchpath: in + *":$libdir:"*) ;; + ::) dllsearchpath=$libdir;; + *) dllsearchpath+=":$libdir";; + esac + case :$dllsearchpath: in + *":$testbindir:"*) ;; + ::) dllsearchpath=$testbindir;; + *) dllsearchpath+=":$testbindir";; + esac + ;; + esac + done + # Substitute the hardcoded libdirs into the rpath. + if test -n "$hardcode_libdir_separator" && + test -n "$hardcode_libdirs"; then + libdir="$hardcode_libdirs" + eval rpath=\" $hardcode_libdir_flag_spec\" + fi + compile_rpath="$rpath" + + rpath= + hardcode_libdirs= + for libdir in $finalize_rpath; do + if test -n "$hardcode_libdir_flag_spec"; then + if test -n "$hardcode_libdir_separator"; then + if test -z "$hardcode_libdirs"; then + hardcode_libdirs="$libdir" + else + # Just accumulate the unique libdirs. + case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in + *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) + ;; + *) + hardcode_libdirs+="$hardcode_libdir_separator$libdir" + ;; + esac + fi + else + eval flag=\"$hardcode_libdir_flag_spec\" + rpath+=" $flag" + fi + elif test -n "$runpath_var"; then + case "$finalize_perm_rpath " in + *" $libdir "*) ;; + *) finalize_perm_rpath+=" $libdir" ;; + esac + fi + done + # Substitute the hardcoded libdirs into the rpath. + if test -n "$hardcode_libdir_separator" && + test -n "$hardcode_libdirs"; then + libdir="$hardcode_libdirs" + eval rpath=\" $hardcode_libdir_flag_spec\" + fi + finalize_rpath="$rpath" + + if test -n "$libobjs" && test "$build_old_libs" = yes; then + # Transform all the library objects into standard objects. + compile_command=`$ECHO "$compile_command" | $SP2NL | $SED "$lo2o" | $NL2SP` + finalize_command=`$ECHO "$finalize_command" | $SP2NL | $SED "$lo2o" | $NL2SP` + fi + + func_generate_dlsyms "$outputname" "@PROGRAM@" "no" + + # template prelinking step + if test -n "$prelink_cmds"; then + func_execute_cmds "$prelink_cmds" 'exit $?' + fi + + wrappers_required=yes + case $host in + *cegcc* | *mingw32ce*) + # Disable wrappers for cegcc and mingw32ce hosts, we are cross compiling anyway. + wrappers_required=no + ;; + *cygwin* | *mingw* ) + if test "$build_libtool_libs" != yes; then + wrappers_required=no + fi + ;; + *) + if test "$need_relink" = no || test "$build_libtool_libs" != yes; then + wrappers_required=no + fi + ;; + esac + if test "$wrappers_required" = no; then + # Replace the output file specification. + compile_command=`$ECHO "$compile_command" | $SED 's%@OUTPUT@%'"$output"'%g'` + link_command="$compile_command$compile_rpath" + + # We have no uninstalled library dependencies, so finalize right now. + exit_status=0 + func_show_eval "$link_command" 'exit_status=$?' + + if test -n "$postlink_cmds"; then + func_to_tool_file "$output" + postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'` + func_execute_cmds "$postlink_cmds" 'exit $?' + fi + + # Delete the generated files. + if test -f "$output_objdir/${outputname}S.${objext}"; then + func_show_eval '$RM "$output_objdir/${outputname}S.${objext}"' + fi + + exit $exit_status + fi + + if test -n "$compile_shlibpath$finalize_shlibpath"; then + compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibpath\$$shlibpath_var\" $compile_command" + fi + if test -n "$finalize_shlibpath"; then + finalize_command="$shlibpath_var=\"$finalize_shlibpath\$$shlibpath_var\" $finalize_command" + fi + + compile_var= + finalize_var= + if test -n "$runpath_var"; then + if test -n "$perm_rpath"; then + # We should set the runpath_var. + rpath= + for dir in $perm_rpath; do + rpath+="$dir:" + done + compile_var="$runpath_var=\"$rpath\$$runpath_var\" " + fi + if test -n "$finalize_perm_rpath"; then + # We should set the runpath_var. + rpath= + for dir in $finalize_perm_rpath; do + rpath+="$dir:" + done + finalize_var="$runpath_var=\"$rpath\$$runpath_var\" " + fi + fi + + if test "$no_install" = yes; then + # We don't need to create a wrapper script. + link_command="$compile_var$compile_command$compile_rpath" + # Replace the output file specification. + link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output"'%g'` + # Delete the old output file. + $opt_dry_run || $RM $output + # Link the executable and exit + func_show_eval "$link_command" 'exit $?' + + if test -n "$postlink_cmds"; then + func_to_tool_file "$output" + postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'` + func_execute_cmds "$postlink_cmds" 'exit $?' + fi + + exit $EXIT_SUCCESS + fi + + if test "$hardcode_action" = relink; then + # Fast installation is not supported + link_command="$compile_var$compile_command$compile_rpath" + relink_command="$finalize_var$finalize_command$finalize_rpath" + + func_warning "this platform does not like uninstalled shared libraries" + func_warning "\`$output' will be relinked during installation" + else + if test "$fast_install" != no; then + link_command="$finalize_var$compile_command$finalize_rpath" + if test "$fast_install" = yes; then + relink_command=`$ECHO "$compile_var$compile_command$compile_rpath" | $SED 's%@OUTPUT@%\$progdir/\$file%g'` + else + # fast_install is set to needless + relink_command= + fi + else + link_command="$compile_var$compile_command$compile_rpath" + relink_command="$finalize_var$finalize_command$finalize_rpath" + fi + fi + + # Replace the output file specification. + link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'` + + # Delete the old output files. + $opt_dry_run || $RM $output $output_objdir/$outputname $output_objdir/lt-$outputname + + func_show_eval "$link_command" 'exit $?' + + if test -n "$postlink_cmds"; then + func_to_tool_file "$output_objdir/$outputname" + postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'` + func_execute_cmds "$postlink_cmds" 'exit $?' + fi + + # Now create the wrapper script. + func_verbose "creating $output" + + # Quote the relink command for shipping. + if test -n "$relink_command"; then + # Preserve any variables that may affect compiler behavior + for var in $variables_saved_for_relink; do + if eval test -z \"\${$var+set}\"; then + relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command" + elif eval var_value=\$$var; test -z "$var_value"; then + relink_command="$var=; export $var; $relink_command" + else + func_quote_for_eval "$var_value" + relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command" + fi + done + relink_command="(cd `pwd`; $relink_command)" + relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"` + fi + + # Only actually do things if not in dry run mode. + $opt_dry_run || { + # win32 will think the script is a binary if it has + # a .exe suffix, so we strip it off here. + case $output in + *.exe) func_stripname '' '.exe' "$output" + output=$func_stripname_result ;; + esac + # test for cygwin because mv fails w/o .exe extensions + case $host in + *cygwin*) + exeext=.exe + func_stripname '' '.exe' "$outputname" + outputname=$func_stripname_result ;; + *) exeext= ;; + esac + case $host in + *cygwin* | *mingw* ) + func_dirname_and_basename "$output" "" "." + output_name=$func_basename_result + output_path=$func_dirname_result + cwrappersource="$output_path/$objdir/lt-$output_name.c" + cwrapper="$output_path/$output_name.exe" + $RM $cwrappersource $cwrapper + trap "$RM $cwrappersource $cwrapper; exit $EXIT_FAILURE" 1 2 15 + + func_emit_cwrapperexe_src > $cwrappersource + + # The wrapper executable is built using the $host compiler, + # because it contains $host paths and files. If cross- + # compiling, it, like the target executable, must be + # executed on the $host or under an emulation environment. + $opt_dry_run || { + $LTCC $LTCFLAGS -o $cwrapper $cwrappersource + $STRIP $cwrapper + } + + # Now, create the wrapper script for func_source use: + func_ltwrapper_scriptname $cwrapper + $RM $func_ltwrapper_scriptname_result + trap "$RM $func_ltwrapper_scriptname_result; exit $EXIT_FAILURE" 1 2 15 + $opt_dry_run || { + # note: this script will not be executed, so do not chmod. + if test "x$build" = "x$host" ; then + $cwrapper --lt-dump-script > $func_ltwrapper_scriptname_result + else + func_emit_wrapper no > $func_ltwrapper_scriptname_result + fi + } + ;; + * ) + $RM $output + trap "$RM $output; exit $EXIT_FAILURE" 1 2 15 + + func_emit_wrapper no > $output + chmod +x $output + ;; + esac + } + exit $EXIT_SUCCESS + ;; + esac + + # See if we need to build an old-fashioned archive. + for oldlib in $oldlibs; do + + if test "$build_libtool_libs" = convenience; then + oldobjs="$libobjs_save $symfileobj" + addlibs="$convenience" + build_libtool_libs=no + else + if test "$build_libtool_libs" = module; then + oldobjs="$libobjs_save" + build_libtool_libs=no + else + oldobjs="$old_deplibs $non_pic_objects" + if test "$preload" = yes && test -f "$symfileobj"; then + oldobjs+=" $symfileobj" + fi + fi + addlibs="$old_convenience" + fi + + if test -n "$addlibs"; then + gentop="$output_objdir/${outputname}x" + generated+=" $gentop" + + func_extract_archives $gentop $addlibs + oldobjs+=" $func_extract_archives_result" + fi + + # Do each command in the archive commands. + if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then + cmds=$old_archive_from_new_cmds + else + + # Add any objects from preloaded convenience libraries + if test -n "$dlprefiles"; then + gentop="$output_objdir/${outputname}x" + generated+=" $gentop" + + func_extract_archives $gentop $dlprefiles + oldobjs+=" $func_extract_archives_result" + fi + + # POSIX demands no paths to be encoded in archives. We have + # to avoid creating archives with duplicate basenames if we + # might have to extract them afterwards, e.g., when creating a + # static archive out of a convenience library, or when linking + # the entirety of a libtool archive into another (currently + # not supported by libtool). + if (for obj in $oldobjs + do + func_basename "$obj" + $ECHO "$func_basename_result" + done | sort | sort -uc >/dev/null 2>&1); then + : + else + echo "copying selected object files to avoid basename conflicts..." + gentop="$output_objdir/${outputname}x" + generated+=" $gentop" + func_mkdir_p "$gentop" + save_oldobjs=$oldobjs + oldobjs= + counter=1 + for obj in $save_oldobjs + do + func_basename "$obj" + objbase="$func_basename_result" + case " $oldobjs " in + " ") oldobjs=$obj ;; + *[\ /]"$objbase "*) + while :; do + # Make sure we don't pick an alternate name that also + # overlaps. + newobj=lt$counter-$objbase + func_arith $counter + 1 + counter=$func_arith_result + case " $oldobjs " in + *[\ /]"$newobj "*) ;; + *) if test ! -f "$gentop/$newobj"; then break; fi ;; + esac + done + func_show_eval "ln $obj $gentop/$newobj || cp $obj $gentop/$newobj" + oldobjs+=" $gentop/$newobj" + ;; + *) oldobjs+=" $obj" ;; + esac + done + fi + func_to_tool_file "$oldlib" func_convert_file_msys_to_w32 + tool_oldlib=$func_to_tool_file_result + eval cmds=\"$old_archive_cmds\" + + func_len " $cmds" + len=$func_len_result + if test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then + cmds=$old_archive_cmds + elif test -n "$archiver_list_spec"; then + func_verbose "using command file archive linking..." + for obj in $oldobjs + do + func_to_tool_file "$obj" + $ECHO "$func_to_tool_file_result" + done > $output_objdir/$libname.libcmd + func_to_tool_file "$output_objdir/$libname.libcmd" + oldobjs=" $archiver_list_spec$func_to_tool_file_result" + cmds=$old_archive_cmds + else + # the command line is too long to link in one step, link in parts + func_verbose "using piecewise archive linking..." + save_RANLIB=$RANLIB + RANLIB=: + objlist= + concat_cmds= + save_oldobjs=$oldobjs + oldobjs= + # Is there a better way of finding the last object in the list? + for obj in $save_oldobjs + do + last_oldobj=$obj + done + eval test_cmds=\"$old_archive_cmds\" + func_len " $test_cmds" + len0=$func_len_result + len=$len0 + for obj in $save_oldobjs + do + func_len " $obj" + func_arith $len + $func_len_result + len=$func_arith_result + objlist+=" $obj" + if test "$len" -lt "$max_cmd_len"; then + : + else + # the above command should be used before it gets too long + oldobjs=$objlist + if test "$obj" = "$last_oldobj" ; then + RANLIB=$save_RANLIB + fi + test -z "$concat_cmds" || concat_cmds=$concat_cmds~ + eval concat_cmds=\"\${concat_cmds}$old_archive_cmds\" + objlist= + len=$len0 + fi + done + RANLIB=$save_RANLIB + oldobjs=$objlist + if test "X$oldobjs" = "X" ; then + eval cmds=\"\$concat_cmds\" + else + eval cmds=\"\$concat_cmds~\$old_archive_cmds\" + fi + fi + fi + func_execute_cmds "$cmds" 'exit $?' + done + + test -n "$generated" && \ + func_show_eval "${RM}r$generated" + + # Now create the libtool archive. + case $output in + *.la) + old_library= + test "$build_old_libs" = yes && old_library="$libname.$libext" + func_verbose "creating $output" + + # Preserve any variables that may affect compiler behavior + for var in $variables_saved_for_relink; do + if eval test -z \"\${$var+set}\"; then + relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command" + elif eval var_value=\$$var; test -z "$var_value"; then + relink_command="$var=; export $var; $relink_command" + else + func_quote_for_eval "$var_value" + relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command" + fi + done + # Quote the link command for shipping. + relink_command="(cd `pwd`; $SHELL $progpath $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)" + relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"` + if test "$hardcode_automatic" = yes ; then + relink_command= + fi + + # Only create the output if not a dry run. + $opt_dry_run || { + for installed in no yes; do + if test "$installed" = yes; then + if test -z "$install_libdir"; then + break + fi + output="$output_objdir/$outputname"i + # Replace all uninstalled libtool libraries with the installed ones + newdependency_libs= + for deplib in $dependency_libs; do + case $deplib in + *.la) + func_basename "$deplib" + name="$func_basename_result" + func_resolve_sysroot "$deplib" + eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $func_resolve_sysroot_result` + test -z "$libdir" && \ + func_fatal_error "\`$deplib' is not a valid libtool archive" + newdependency_libs+=" ${lt_sysroot:+=}$libdir/$name" + ;; + -L*) + func_stripname -L '' "$deplib" + func_replace_sysroot "$func_stripname_result" + newdependency_libs+=" -L$func_replace_sysroot_result" + ;; + -R*) + func_stripname -R '' "$deplib" + func_replace_sysroot "$func_stripname_result" + newdependency_libs+=" -R$func_replace_sysroot_result" + ;; + *) newdependency_libs+=" $deplib" ;; + esac + done + dependency_libs="$newdependency_libs" + newdlfiles= + + for lib in $dlfiles; do + case $lib in + *.la) + func_basename "$lib" + name="$func_basename_result" + eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib` + test -z "$libdir" && \ + func_fatal_error "\`$lib' is not a valid libtool archive" + newdlfiles+=" ${lt_sysroot:+=}$libdir/$name" + ;; + *) newdlfiles+=" $lib" ;; + esac + done + dlfiles="$newdlfiles" + newdlprefiles= + for lib in $dlprefiles; do + case $lib in + *.la) + # Only pass preopened files to the pseudo-archive (for + # eventual linking with the app. that links it) if we + # didn't already link the preopened objects directly into + # the library: + func_basename "$lib" + name="$func_basename_result" + eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib` + test -z "$libdir" && \ + func_fatal_error "\`$lib' is not a valid libtool archive" + newdlprefiles+=" ${lt_sysroot:+=}$libdir/$name" + ;; + esac + done + dlprefiles="$newdlprefiles" + else + newdlfiles= + for lib in $dlfiles; do + case $lib in + [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;; + *) abs=`pwd`"/$lib" ;; + esac + newdlfiles+=" $abs" + done + dlfiles="$newdlfiles" + newdlprefiles= + for lib in $dlprefiles; do + case $lib in + [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;; + *) abs=`pwd`"/$lib" ;; + esac + newdlprefiles+=" $abs" + done + dlprefiles="$newdlprefiles" + fi + $RM $output + # place dlname in correct position for cygwin + # In fact, it would be nice if we could use this code for all target + # systems that can't hard-code library paths into their executables + # and that have no shared library path variable independent of PATH, + # but it turns out we can't easily determine that from inspecting + # libtool variables, so we have to hard-code the OSs to which it + # applies here; at the moment, that means platforms that use the PE + # object format with DLL files. See the long comment at the top of + # tests/bindir.at for full details. + tdlname=$dlname + case $host,$output,$installed,$module,$dlname in + *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll | *cegcc*,*lai,yes,no,*.dll) + # If a -bindir argument was supplied, place the dll there. + if test "x$bindir" != x ; + then + func_relative_path "$install_libdir" "$bindir" + tdlname=$func_relative_path_result$dlname + else + # Otherwise fall back on heuristic. + tdlname=../bin/$dlname + fi + ;; + esac + $ECHO > $output "\ +# $outputname - a libtool library file +# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION +# +# Please DO NOT delete this file! +# It is necessary for linking the library. + +# The name that we can dlopen(3). +dlname='$tdlname' + +# Names of this library. +library_names='$library_names' + +# The name of the static archive. +old_library='$old_library' + +# Linker flags that can not go in dependency_libs. +inherited_linker_flags='$new_inherited_linker_flags' + +# Libraries that this one depends upon. +dependency_libs='$dependency_libs' + +# Names of additional weak libraries provided by this library +weak_library_names='$weak_libs' + +# Version information for $libname. +current=$current +age=$age +revision=$revision + +# Is this an already installed library? +installed=$installed + +# Should we warn about portability when linking against -modules? +shouldnotlink=$module + +# Files to dlopen/dlpreopen +dlopen='$dlfiles' +dlpreopen='$dlprefiles' + +# Directory that this library needs to be installed in: +libdir='$install_libdir'" + if test "$installed" = no && test "$need_relink" = yes; then + $ECHO >> $output "\ +relink_command=\"$relink_command\"" + fi + done + } + + # Do a symbolic link so that the libtool archive can be found in + # LD_LIBRARY_PATH before the program is installed. + func_show_eval '( cd "$output_objdir" && $RM "$outputname" && $LN_S "../$outputname" "$outputname" )' 'exit $?' + ;; + esac + exit $EXIT_SUCCESS +} + +{ test "$opt_mode" = link || test "$opt_mode" = relink; } && + func_mode_link ${1+"$@"} + + +# func_mode_uninstall arg... +func_mode_uninstall () +{ + $opt_debug + RM="$nonopt" + files= + rmforce= + exit_status=0 + + # This variable tells wrapper scripts just to set variables rather + # than running their programs. + libtool_install_magic="$magic" + + for arg + do + case $arg in + -f) RM+=" $arg"; rmforce=yes ;; + -*) RM+=" $arg" ;; + *) files+=" $arg" ;; + esac + done + + test -z "$RM" && \ + func_fatal_help "you must specify an RM program" + + rmdirs= + + for file in $files; do + func_dirname "$file" "" "." + dir="$func_dirname_result" + if test "X$dir" = X.; then + odir="$objdir" + else + odir="$dir/$objdir" + fi + func_basename "$file" + name="$func_basename_result" + test "$opt_mode" = uninstall && odir="$dir" + + # Remember odir for removal later, being careful to avoid duplicates + if test "$opt_mode" = clean; then + case " $rmdirs " in + *" $odir "*) ;; + *) rmdirs+=" $odir" ;; + esac + fi + + # Don't error if the file doesn't exist and rm -f was used. + if { test -L "$file"; } >/dev/null 2>&1 || + { test -h "$file"; } >/dev/null 2>&1 || + test -f "$file"; then + : + elif test -d "$file"; then + exit_status=1 + continue + elif test "$rmforce" = yes; then + continue + fi + + rmfiles="$file" + + case $name in + *.la) + # Possibly a libtool archive, so verify it. + if func_lalib_p "$file"; then + func_source $dir/$name + + # Delete the libtool libraries and symlinks. + for n in $library_names; do + rmfiles+=" $odir/$n" + done + test -n "$old_library" && rmfiles+=" $odir/$old_library" + + case "$opt_mode" in + clean) + case " $library_names " in + *" $dlname "*) ;; + *) test -n "$dlname" && rmfiles+=" $odir/$dlname" ;; + esac + test -n "$libdir" && rmfiles+=" $odir/$name $odir/${name}i" + ;; + uninstall) + if test -n "$library_names"; then + # Do each command in the postuninstall commands. + func_execute_cmds "$postuninstall_cmds" 'test "$rmforce" = yes || exit_status=1' + fi + + if test -n "$old_library"; then + # Do each command in the old_postuninstall commands. + func_execute_cmds "$old_postuninstall_cmds" 'test "$rmforce" = yes || exit_status=1' + fi + # FIXME: should reinstall the best remaining shared library. + ;; + esac + fi + ;; + + *.lo) + # Possibly a libtool object, so verify it. + if func_lalib_p "$file"; then + + # Read the .lo file + func_source $dir/$name + + # Add PIC object to the list of files to remove. + if test -n "$pic_object" && + test "$pic_object" != none; then + rmfiles+=" $dir/$pic_object" + fi + + # Add non-PIC object to the list of files to remove. + if test -n "$non_pic_object" && + test "$non_pic_object" != none; then + rmfiles+=" $dir/$non_pic_object" + fi + fi + ;; + + *) + if test "$opt_mode" = clean ; then + noexename=$name + case $file in + *.exe) + func_stripname '' '.exe' "$file" + file=$func_stripname_result + func_stripname '' '.exe' "$name" + noexename=$func_stripname_result + # $file with .exe has already been added to rmfiles, + # add $file without .exe + rmfiles+=" $file" + ;; + esac + # Do a test to see if this is a libtool program. + if func_ltwrapper_p "$file"; then + if func_ltwrapper_executable_p "$file"; then + func_ltwrapper_scriptname "$file" + relink_command= + func_source $func_ltwrapper_scriptname_result + rmfiles+=" $func_ltwrapper_scriptname_result" + else + relink_command= + func_source $dir/$noexename + fi + + # note $name still contains .exe if it was in $file originally + # as does the version of $file that was added into $rmfiles + rmfiles+=" $odir/$name $odir/${name}S.${objext}" + if test "$fast_install" = yes && test -n "$relink_command"; then + rmfiles+=" $odir/lt-$name" + fi + if test "X$noexename" != "X$name" ; then + rmfiles+=" $odir/lt-${noexename}.c" + fi + fi + fi + ;; + esac + func_show_eval "$RM $rmfiles" 'exit_status=1' + done + + # Try to remove the ${objdir}s in the directories where we deleted files + for dir in $rmdirs; do + if test -d "$dir"; then + func_show_eval "rmdir $dir >/dev/null 2>&1" + fi + done + + exit $exit_status +} + +{ test "$opt_mode" = uninstall || test "$opt_mode" = clean; } && + func_mode_uninstall ${1+"$@"} + +test -z "$opt_mode" && { + help="$generic_help" + func_fatal_help "you must specify a MODE" +} + +test -z "$exec_cmd" && \ + func_fatal_help "invalid operation mode \`$opt_mode'" + +if test -n "$exec_cmd"; then + eval exec "$exec_cmd" + exit $EXIT_FAILURE +fi + +exit $exit_status + + +# The TAGs below are defined such that we never get into a situation +# in which we disable both kinds of libraries. Given conflicting +# choices, we go for a static library, that is the most portable, +# since we can't tell whether shared libraries were disabled because +# the user asked for that or because the platform doesn't support +# them. This is particularly important on AIX, because we don't +# support having both static and shared libraries enabled at the same +# time on that platform, so we default to a shared-only configuration. +# If a disable-shared tag is given, we'll fallback to a static-only +# configuration. But we'll never go from static-only to shared-only. + +# ### BEGIN LIBTOOL TAG CONFIG: disable-shared +build_libtool_libs=no +build_old_libs=yes +# ### END LIBTOOL TAG CONFIG: disable-shared + +# ### BEGIN LIBTOOL TAG CONFIG: disable-static +build_old_libs=`case $build_libtool_libs in yes) echo no;; *) echo yes;; esac` +# ### END LIBTOOL TAG CONFIG: disable-static + +# Local Variables: +# mode:shell-script +# sh-indentation:2 +# End: +# vi:sw=2 + diff --git a/bibliotheque-graphique-iut-1.1/ltmain.sh b/bibliotheque-graphique-iut-1.1/ltmain.sh new file mode 100644 index 0000000..63ae69d --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/ltmain.sh @@ -0,0 +1,9655 @@ + +# libtool (GNU libtool) 2.4.2 +# Written by Gordon Matzigkeit , 1996 + +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006, +# 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc. +# This is free software; see the source for copying conditions. There is NO +# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +# GNU Libtool is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# As a special exception to the GNU General Public License, +# if you distribute this file as part of a program or library that +# is built using GNU Libtool, you may include this file under the +# same distribution terms that you use for the rest of that program. +# +# GNU Libtool is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with GNU Libtool; see the file COPYING. If not, a copy +# can be downloaded from http://www.gnu.org/licenses/gpl.html, +# or obtained by writing to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +# Usage: $progname [OPTION]... [MODE-ARG]... +# +# Provide generalized library-building support services. +# +# --config show all configuration variables +# --debug enable verbose shell tracing +# -n, --dry-run display commands without modifying any files +# --features display basic configuration information and exit +# --mode=MODE use operation mode MODE +# --preserve-dup-deps don't remove duplicate dependency libraries +# --quiet, --silent don't print informational messages +# --no-quiet, --no-silent +# print informational messages (default) +# --no-warn don't display warning messages +# --tag=TAG use configuration variables from tag TAG +# -v, --verbose print more informational messages than default +# --no-verbose don't print the extra informational messages +# --version print version information +# -h, --help, --help-all print short, long, or detailed help message +# +# MODE must be one of the following: +# +# clean remove files from the build directory +# compile compile a source file into a libtool object +# execute automatically set library path, then run a program +# finish complete the installation of libtool libraries +# install install libraries or executables +# link create a library or an executable +# uninstall remove libraries from an installed directory +# +# MODE-ARGS vary depending on the MODE. When passed as first option, +# `--mode=MODE' may be abbreviated as `MODE' or a unique abbreviation of that. +# Try `$progname --help --mode=MODE' for a more detailed description of MODE. +# +# When reporting a bug, please describe a test case to reproduce it and +# include the following information: +# +# host-triplet: $host +# shell: $SHELL +# compiler: $LTCC +# compiler flags: $LTCFLAGS +# linker: $LD (gnu? $with_gnu_ld) +# $progname: (GNU libtool) 2.4.2 +# automake: $automake_version +# autoconf: $autoconf_version +# +# Report bugs to . +# GNU libtool home page: . +# General help using GNU software: . + +PROGRAM=libtool +PACKAGE=libtool +VERSION=2.4.2 +TIMESTAMP="" +package_revision=1.3337 + +# Be Bourne compatible +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then + emulate sh + NULLCMD=: + # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac +fi +BIN_SH=xpg4; export BIN_SH # for Tru64 +DUALCASE=1; export DUALCASE # for MKS sh + +# A function that is used when there is no print builtin or printf. +func_fallback_echo () +{ + eval 'cat <<_LTECHO_EOF +$1 +_LTECHO_EOF' +} + +# NLS nuisances: We save the old values to restore during execute mode. +lt_user_locale= +lt_safe_locale= +for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES +do + eval "if test \"\${$lt_var+set}\" = set; then + save_$lt_var=\$$lt_var + $lt_var=C + export $lt_var + lt_user_locale=\"$lt_var=\\\$save_\$lt_var; \$lt_user_locale\" + lt_safe_locale=\"$lt_var=C; \$lt_safe_locale\" + fi" +done +LC_ALL=C +LANGUAGE=C +export LANGUAGE LC_ALL + +$lt_unset CDPATH + + +# Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh +# is ksh but when the shell is invoked as "sh" and the current value of +# the _XPG environment variable is not equal to 1 (one), the special +# positional parameter $0, within a function call, is the name of the +# function. +progpath="$0" + + + +: ${CP="cp -f"} +test "${ECHO+set}" = set || ECHO=${as_echo-'printf %s\n'} +: ${MAKE="make"} +: ${MKDIR="mkdir"} +: ${MV="mv -f"} +: ${RM="rm -f"} +: ${SHELL="${CONFIG_SHELL-/bin/sh}"} +: ${Xsed="$SED -e 1s/^X//"} + +# Global variables: +EXIT_SUCCESS=0 +EXIT_FAILURE=1 +EXIT_MISMATCH=63 # $? = 63 is used to indicate version mismatch to missing. +EXIT_SKIP=77 # $? = 77 is used to indicate a skipped test to automake. + +exit_status=$EXIT_SUCCESS + +# Make sure IFS has a sensible default +lt_nl=' +' +IFS=" $lt_nl" + +dirname="s,/[^/]*$,," +basename="s,^.*/,," + +# func_dirname file append nondir_replacement +# Compute the dirname of FILE. If nonempty, add APPEND to the result, +# otherwise set result to NONDIR_REPLACEMENT. +func_dirname () +{ + func_dirname_result=`$ECHO "${1}" | $SED "$dirname"` + if test "X$func_dirname_result" = "X${1}"; then + func_dirname_result="${3}" + else + func_dirname_result="$func_dirname_result${2}" + fi +} # func_dirname may be replaced by extended shell implementation + + +# func_basename file +func_basename () +{ + func_basename_result=`$ECHO "${1}" | $SED "$basename"` +} # func_basename may be replaced by extended shell implementation + + +# func_dirname_and_basename file append nondir_replacement +# perform func_basename and func_dirname in a single function +# call: +# dirname: Compute the dirname of FILE. If nonempty, +# add APPEND to the result, otherwise set result +# to NONDIR_REPLACEMENT. +# value returned in "$func_dirname_result" +# basename: Compute filename of FILE. +# value retuned in "$func_basename_result" +# Implementation must be kept synchronized with func_dirname +# and func_basename. For efficiency, we do not delegate to +# those functions but instead duplicate the functionality here. +func_dirname_and_basename () +{ + # Extract subdirectory from the argument. + func_dirname_result=`$ECHO "${1}" | $SED -e "$dirname"` + if test "X$func_dirname_result" = "X${1}"; then + func_dirname_result="${3}" + else + func_dirname_result="$func_dirname_result${2}" + fi + func_basename_result=`$ECHO "${1}" | $SED -e "$basename"` +} # func_dirname_and_basename may be replaced by extended shell implementation + + +# func_stripname prefix suffix name +# strip PREFIX and SUFFIX off of NAME. +# PREFIX and SUFFIX must not contain globbing or regex special +# characters, hashes, percent signs, but SUFFIX may contain a leading +# dot (in which case that matches only a dot). +# func_strip_suffix prefix name +func_stripname () +{ + case ${2} in + .*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;; + *) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%%"`;; + esac +} # func_stripname may be replaced by extended shell implementation + + +# These SED scripts presuppose an absolute path with a trailing slash. +pathcar='s,^/\([^/]*\).*$,\1,' +pathcdr='s,^/[^/]*,,' +removedotparts=':dotsl + s@/\./@/@g + t dotsl + s,/\.$,/,' +collapseslashes='s@/\{1,\}@/@g' +finalslash='s,/*$,/,' + +# func_normal_abspath PATH +# Remove doubled-up and trailing slashes, "." path components, +# and cancel out any ".." path components in PATH after making +# it an absolute path. +# value returned in "$func_normal_abspath_result" +func_normal_abspath () +{ + # Start from root dir and reassemble the path. + func_normal_abspath_result= + func_normal_abspath_tpath=$1 + func_normal_abspath_altnamespace= + case $func_normal_abspath_tpath in + "") + # Empty path, that just means $cwd. + func_stripname '' '/' "`pwd`" + func_normal_abspath_result=$func_stripname_result + return + ;; + # The next three entries are used to spot a run of precisely + # two leading slashes without using negated character classes; + # we take advantage of case's first-match behaviour. + ///*) + # Unusual form of absolute path, do nothing. + ;; + //*) + # Not necessarily an ordinary path; POSIX reserves leading '//' + # and for example Cygwin uses it to access remote file shares + # over CIFS/SMB, so we conserve a leading double slash if found. + func_normal_abspath_altnamespace=/ + ;; + /*) + # Absolute path, do nothing. + ;; + *) + # Relative path, prepend $cwd. + func_normal_abspath_tpath=`pwd`/$func_normal_abspath_tpath + ;; + esac + # Cancel out all the simple stuff to save iterations. We also want + # the path to end with a slash for ease of parsing, so make sure + # there is one (and only one) here. + func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \ + -e "$removedotparts" -e "$collapseslashes" -e "$finalslash"` + while :; do + # Processed it all yet? + if test "$func_normal_abspath_tpath" = / ; then + # If we ascended to the root using ".." the result may be empty now. + if test -z "$func_normal_abspath_result" ; then + func_normal_abspath_result=/ + fi + break + fi + func_normal_abspath_tcomponent=`$ECHO "$func_normal_abspath_tpath" | $SED \ + -e "$pathcar"` + func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \ + -e "$pathcdr"` + # Figure out what to do with it + case $func_normal_abspath_tcomponent in + "") + # Trailing empty path component, ignore it. + ;; + ..) + # Parent dir; strip last assembled component from result. + func_dirname "$func_normal_abspath_result" + func_normal_abspath_result=$func_dirname_result + ;; + *) + # Actual path component, append it. + func_normal_abspath_result=$func_normal_abspath_result/$func_normal_abspath_tcomponent + ;; + esac + done + # Restore leading double-slash if one was found on entry. + func_normal_abspath_result=$func_normal_abspath_altnamespace$func_normal_abspath_result +} + +# func_relative_path SRCDIR DSTDIR +# generates a relative path from SRCDIR to DSTDIR, with a trailing +# slash if non-empty, suitable for immediately appending a filename +# without needing to append a separator. +# value returned in "$func_relative_path_result" +func_relative_path () +{ + func_relative_path_result= + func_normal_abspath "$1" + func_relative_path_tlibdir=$func_normal_abspath_result + func_normal_abspath "$2" + func_relative_path_tbindir=$func_normal_abspath_result + + # Ascend the tree starting from libdir + while :; do + # check if we have found a prefix of bindir + case $func_relative_path_tbindir in + $func_relative_path_tlibdir) + # found an exact match + func_relative_path_tcancelled= + break + ;; + $func_relative_path_tlibdir*) + # found a matching prefix + func_stripname "$func_relative_path_tlibdir" '' "$func_relative_path_tbindir" + func_relative_path_tcancelled=$func_stripname_result + if test -z "$func_relative_path_result"; then + func_relative_path_result=. + fi + break + ;; + *) + func_dirname $func_relative_path_tlibdir + func_relative_path_tlibdir=${func_dirname_result} + if test "x$func_relative_path_tlibdir" = x ; then + # Have to descend all the way to the root! + func_relative_path_result=../$func_relative_path_result + func_relative_path_tcancelled=$func_relative_path_tbindir + break + fi + func_relative_path_result=../$func_relative_path_result + ;; + esac + done + + # Now calculate path; take care to avoid doubling-up slashes. + func_stripname '' '/' "$func_relative_path_result" + func_relative_path_result=$func_stripname_result + func_stripname '/' '/' "$func_relative_path_tcancelled" + if test "x$func_stripname_result" != x ; then + func_relative_path_result=${func_relative_path_result}/${func_stripname_result} + fi + + # Normalisation. If bindir is libdir, return empty string, + # else relative path ending with a slash; either way, target + # file name can be directly appended. + if test ! -z "$func_relative_path_result"; then + func_stripname './' '' "$func_relative_path_result/" + func_relative_path_result=$func_stripname_result + fi +} + +# The name of this program: +func_dirname_and_basename "$progpath" +progname=$func_basename_result + +# Make sure we have an absolute path for reexecution: +case $progpath in + [\\/]*|[A-Za-z]:\\*) ;; + *[\\/]*) + progdir=$func_dirname_result + progdir=`cd "$progdir" && pwd` + progpath="$progdir/$progname" + ;; + *) + save_IFS="$IFS" + IFS=${PATH_SEPARATOR-:} + for progdir in $PATH; do + IFS="$save_IFS" + test -x "$progdir/$progname" && break + done + IFS="$save_IFS" + test -n "$progdir" || progdir=`pwd` + progpath="$progdir/$progname" + ;; +esac + +# Sed substitution that helps us do robust quoting. It backslashifies +# metacharacters that are still active within double-quoted strings. +Xsed="${SED}"' -e 1s/^X//' +sed_quote_subst='s/\([`"$\\]\)/\\\1/g' + +# Same as above, but do not quote variable references. +double_quote_subst='s/\(["`\\]\)/\\\1/g' + +# Sed substitution that turns a string into a regex matching for the +# string literally. +sed_make_literal_regex='s,[].[^$\\*\/],\\&,g' + +# Sed substitution that converts a w32 file name or path +# which contains forward slashes, into one that contains +# (escaped) backslashes. A very naive implementation. +lt_sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g' + +# Re-`\' parameter expansions in output of double_quote_subst that were +# `\'-ed in input to the same. If an odd number of `\' preceded a '$' +# in input to double_quote_subst, that '$' was protected from expansion. +# Since each input `\' is now two `\'s, look for any number of runs of +# four `\'s followed by two `\'s and then a '$'. `\' that '$'. +bs='\\' +bs2='\\\\' +bs4='\\\\\\\\' +dollar='\$' +sed_double_backslash="\ + s/$bs4/&\\ +/g + s/^$bs2$dollar/$bs&/ + s/\\([^$bs]\\)$bs2$dollar/\\1$bs2$bs$dollar/g + s/\n//g" + +# Standard options: +opt_dry_run=false +opt_help=false +opt_quiet=false +opt_verbose=false +opt_warning=: + +# func_echo arg... +# Echo program name prefixed message, along with the current mode +# name if it has been set yet. +func_echo () +{ + $ECHO "$progname: ${opt_mode+$opt_mode: }$*" +} + +# func_verbose arg... +# Echo program name prefixed message in verbose mode only. +func_verbose () +{ + $opt_verbose && func_echo ${1+"$@"} + + # A bug in bash halts the script if the last line of a function + # fails when set -e is in force, so we need another command to + # work around that: + : +} + +# func_echo_all arg... +# Invoke $ECHO with all args, space-separated. +func_echo_all () +{ + $ECHO "$*" +} + +# func_error arg... +# Echo program name prefixed message to standard error. +func_error () +{ + $ECHO "$progname: ${opt_mode+$opt_mode: }"${1+"$@"} 1>&2 +} + +# func_warning arg... +# Echo program name prefixed warning message to standard error. +func_warning () +{ + $opt_warning && $ECHO "$progname: ${opt_mode+$opt_mode: }warning: "${1+"$@"} 1>&2 + + # bash bug again: + : +} + +# func_fatal_error arg... +# Echo program name prefixed message to standard error, and exit. +func_fatal_error () +{ + func_error ${1+"$@"} + exit $EXIT_FAILURE +} + +# func_fatal_help arg... +# Echo program name prefixed message to standard error, followed by +# a help hint, and exit. +func_fatal_help () +{ + func_error ${1+"$@"} + func_fatal_error "$help" +} +help="Try \`$progname --help' for more information." ## default + + +# func_grep expression filename +# Check whether EXPRESSION matches any line of FILENAME, without output. +func_grep () +{ + $GREP "$1" "$2" >/dev/null 2>&1 +} + + +# func_mkdir_p directory-path +# Make sure the entire path to DIRECTORY-PATH is available. +func_mkdir_p () +{ + my_directory_path="$1" + my_dir_list= + + if test -n "$my_directory_path" && test "$opt_dry_run" != ":"; then + + # Protect directory names starting with `-' + case $my_directory_path in + -*) my_directory_path="./$my_directory_path" ;; + esac + + # While some portion of DIR does not yet exist... + while test ! -d "$my_directory_path"; do + # ...make a list in topmost first order. Use a colon delimited + # list incase some portion of path contains whitespace. + my_dir_list="$my_directory_path:$my_dir_list" + + # If the last portion added has no slash in it, the list is done + case $my_directory_path in */*) ;; *) break ;; esac + + # ...otherwise throw away the child directory and loop + my_directory_path=`$ECHO "$my_directory_path" | $SED -e "$dirname"` + done + my_dir_list=`$ECHO "$my_dir_list" | $SED 's,:*$,,'` + + save_mkdir_p_IFS="$IFS"; IFS=':' + for my_dir in $my_dir_list; do + IFS="$save_mkdir_p_IFS" + # mkdir can fail with a `File exist' error if two processes + # try to create one of the directories concurrently. Don't + # stop in that case! + $MKDIR "$my_dir" 2>/dev/null || : + done + IFS="$save_mkdir_p_IFS" + + # Bail out if we (or some other process) failed to create a directory. + test -d "$my_directory_path" || \ + func_fatal_error "Failed to create \`$1'" + fi +} + + +# func_mktempdir [string] +# Make a temporary directory that won't clash with other running +# libtool processes, and avoids race conditions if possible. If +# given, STRING is the basename for that directory. +func_mktempdir () +{ + my_template="${TMPDIR-/tmp}/${1-$progname}" + + if test "$opt_dry_run" = ":"; then + # Return a directory name, but don't create it in dry-run mode + my_tmpdir="${my_template}-$$" + else + + # If mktemp works, use that first and foremost + my_tmpdir=`mktemp -d "${my_template}-XXXXXXXX" 2>/dev/null` + + if test ! -d "$my_tmpdir"; then + # Failing that, at least try and use $RANDOM to avoid a race + my_tmpdir="${my_template}-${RANDOM-0}$$" + + save_mktempdir_umask=`umask` + umask 0077 + $MKDIR "$my_tmpdir" + umask $save_mktempdir_umask + fi + + # If we're not in dry-run mode, bomb out on failure + test -d "$my_tmpdir" || \ + func_fatal_error "cannot create temporary directory \`$my_tmpdir'" + fi + + $ECHO "$my_tmpdir" +} + + +# func_quote_for_eval arg +# Aesthetically quote ARG to be evaled later. +# This function returns two values: FUNC_QUOTE_FOR_EVAL_RESULT +# is double-quoted, suitable for a subsequent eval, whereas +# FUNC_QUOTE_FOR_EVAL_UNQUOTED_RESULT has merely all characters +# which are still active within double quotes backslashified. +func_quote_for_eval () +{ + case $1 in + *[\\\`\"\$]*) + func_quote_for_eval_unquoted_result=`$ECHO "$1" | $SED "$sed_quote_subst"` ;; + *) + func_quote_for_eval_unquoted_result="$1" ;; + esac + + case $func_quote_for_eval_unquoted_result in + # Double-quote args containing shell metacharacters to delay + # word splitting, command substitution and and variable + # expansion for a subsequent eval. + # Many Bourne shells cannot handle close brackets correctly + # in scan sets, so we specify it separately. + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + func_quote_for_eval_result="\"$func_quote_for_eval_unquoted_result\"" + ;; + *) + func_quote_for_eval_result="$func_quote_for_eval_unquoted_result" + esac +} + + +# func_quote_for_expand arg +# Aesthetically quote ARG to be evaled later; same as above, +# but do not quote variable references. +func_quote_for_expand () +{ + case $1 in + *[\\\`\"]*) + my_arg=`$ECHO "$1" | $SED \ + -e "$double_quote_subst" -e "$sed_double_backslash"` ;; + *) + my_arg="$1" ;; + esac + + case $my_arg in + # Double-quote args containing shell metacharacters to delay + # word splitting and command substitution for a subsequent eval. + # Many Bourne shells cannot handle close brackets correctly + # in scan sets, so we specify it separately. + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + my_arg="\"$my_arg\"" + ;; + esac + + func_quote_for_expand_result="$my_arg" +} + + +# func_show_eval cmd [fail_exp] +# Unless opt_silent is true, then output CMD. Then, if opt_dryrun is +# not true, evaluate CMD. If the evaluation of CMD fails, and FAIL_EXP +# is given, then evaluate it. +func_show_eval () +{ + my_cmd="$1" + my_fail_exp="${2-:}" + + ${opt_silent-false} || { + func_quote_for_expand "$my_cmd" + eval "func_echo $func_quote_for_expand_result" + } + + if ${opt_dry_run-false}; then :; else + eval "$my_cmd" + my_status=$? + if test "$my_status" -eq 0; then :; else + eval "(exit $my_status); $my_fail_exp" + fi + fi +} + + +# func_show_eval_locale cmd [fail_exp] +# Unless opt_silent is true, then output CMD. Then, if opt_dryrun is +# not true, evaluate CMD. If the evaluation of CMD fails, and FAIL_EXP +# is given, then evaluate it. Use the saved locale for evaluation. +func_show_eval_locale () +{ + my_cmd="$1" + my_fail_exp="${2-:}" + + ${opt_silent-false} || { + func_quote_for_expand "$my_cmd" + eval "func_echo $func_quote_for_expand_result" + } + + if ${opt_dry_run-false}; then :; else + eval "$lt_user_locale + $my_cmd" + my_status=$? + eval "$lt_safe_locale" + if test "$my_status" -eq 0; then :; else + eval "(exit $my_status); $my_fail_exp" + fi + fi +} + +# func_tr_sh +# Turn $1 into a string suitable for a shell variable name. +# Result is stored in $func_tr_sh_result. All characters +# not in the set a-zA-Z0-9_ are replaced with '_'. Further, +# if $1 begins with a digit, a '_' is prepended as well. +func_tr_sh () +{ + case $1 in + [0-9]* | *[!a-zA-Z0-9_]*) + func_tr_sh_result=`$ECHO "$1" | $SED 's/^\([0-9]\)/_\1/; s/[^a-zA-Z0-9_]/_/g'` + ;; + * ) + func_tr_sh_result=$1 + ;; + esac +} + + +# func_version +# Echo version message to standard output and exit. +func_version () +{ + $opt_debug + + $SED -n '/(C)/!b go + :more + /\./!{ + N + s/\n# / / + b more + } + :go + /^# '$PROGRAM' (GNU /,/# warranty; / { + s/^# // + s/^# *$// + s/\((C)\)[ 0-9,-]*\( [1-9][0-9]*\)/\1\2/ + p + }' < "$progpath" + exit $? +} + +# func_usage +# Echo short help message to standard output and exit. +func_usage () +{ + $opt_debug + + $SED -n '/^# Usage:/,/^# *.*--help/ { + s/^# // + s/^# *$// + s/\$progname/'$progname'/ + p + }' < "$progpath" + echo + $ECHO "run \`$progname --help | more' for full usage" + exit $? +} + +# func_help [NOEXIT] +# Echo long help message to standard output and exit, +# unless 'noexit' is passed as argument. +func_help () +{ + $opt_debug + + $SED -n '/^# Usage:/,/# Report bugs to/ { + :print + s/^# // + s/^# *$// + s*\$progname*'$progname'* + s*\$host*'"$host"'* + s*\$SHELL*'"$SHELL"'* + s*\$LTCC*'"$LTCC"'* + s*\$LTCFLAGS*'"$LTCFLAGS"'* + s*\$LD*'"$LD"'* + s/\$with_gnu_ld/'"$with_gnu_ld"'/ + s/\$automake_version/'"`(${AUTOMAKE-automake} --version) 2>/dev/null |$SED 1q`"'/ + s/\$autoconf_version/'"`(${AUTOCONF-autoconf} --version) 2>/dev/null |$SED 1q`"'/ + p + d + } + /^# .* home page:/b print + /^# General help using/b print + ' < "$progpath" + ret=$? + if test -z "$1"; then + exit $ret + fi +} + +# func_missing_arg argname +# Echo program name prefixed message to standard error and set global +# exit_cmd. +func_missing_arg () +{ + $opt_debug + + func_error "missing argument for $1." + exit_cmd=exit +} + + +# func_split_short_opt shortopt +# Set func_split_short_opt_name and func_split_short_opt_arg shell +# variables after splitting SHORTOPT after the 2nd character. +func_split_short_opt () +{ + my_sed_short_opt='1s/^\(..\).*$/\1/;q' + my_sed_short_rest='1s/^..\(.*\)$/\1/;q' + + func_split_short_opt_name=`$ECHO "$1" | $SED "$my_sed_short_opt"` + func_split_short_opt_arg=`$ECHO "$1" | $SED "$my_sed_short_rest"` +} # func_split_short_opt may be replaced by extended shell implementation + + +# func_split_long_opt longopt +# Set func_split_long_opt_name and func_split_long_opt_arg shell +# variables after splitting LONGOPT at the `=' sign. +func_split_long_opt () +{ + my_sed_long_opt='1s/^\(--[^=]*\)=.*/\1/;q' + my_sed_long_arg='1s/^--[^=]*=//' + + func_split_long_opt_name=`$ECHO "$1" | $SED "$my_sed_long_opt"` + func_split_long_opt_arg=`$ECHO "$1" | $SED "$my_sed_long_arg"` +} # func_split_long_opt may be replaced by extended shell implementation + +exit_cmd=: + + + + + +magic="%%%MAGIC variable%%%" +magic_exe="%%%MAGIC EXE variable%%%" + +# Global variables. +nonopt= +preserve_args= +lo2o="s/\\.lo\$/.${objext}/" +o2lo="s/\\.${objext}\$/.lo/" +extracted_archives= +extracted_serial=0 + +# If this variable is set in any of the actions, the command in it +# will be execed at the end. This prevents here-documents from being +# left over by shells. +exec_cmd= + +# func_append var value +# Append VALUE to the end of shell variable VAR. +func_append () +{ + eval "${1}=\$${1}\${2}" +} # func_append may be replaced by extended shell implementation + +# func_append_quoted var value +# Quote VALUE and append to the end of shell variable VAR, separated +# by a space. +func_append_quoted () +{ + func_quote_for_eval "${2}" + eval "${1}=\$${1}\\ \$func_quote_for_eval_result" +} # func_append_quoted may be replaced by extended shell implementation + + +# func_arith arithmetic-term... +func_arith () +{ + func_arith_result=`expr "${@}"` +} # func_arith may be replaced by extended shell implementation + + +# func_len string +# STRING may not start with a hyphen. +func_len () +{ + func_len_result=`expr "${1}" : ".*" 2>/dev/null || echo $max_cmd_len` +} # func_len may be replaced by extended shell implementation + + +# func_lo2o object +func_lo2o () +{ + func_lo2o_result=`$ECHO "${1}" | $SED "$lo2o"` +} # func_lo2o may be replaced by extended shell implementation + + +# func_xform libobj-or-source +func_xform () +{ + func_xform_result=`$ECHO "${1}" | $SED 's/\.[^.]*$/.lo/'` +} # func_xform may be replaced by extended shell implementation + + +# func_fatal_configuration arg... +# Echo program name prefixed message to standard error, followed by +# a configuration failure hint, and exit. +func_fatal_configuration () +{ + func_error ${1+"$@"} + func_error "See the $PACKAGE documentation for more information." + func_fatal_error "Fatal configuration error." +} + + +# func_config +# Display the configuration for all the tags in this script. +func_config () +{ + re_begincf='^# ### BEGIN LIBTOOL' + re_endcf='^# ### END LIBTOOL' + + # Default configuration. + $SED "1,/$re_begincf CONFIG/d;/$re_endcf CONFIG/,\$d" < "$progpath" + + # Now print the configurations for the tags. + for tagname in $taglist; do + $SED -n "/$re_begincf TAG CONFIG: $tagname\$/,/$re_endcf TAG CONFIG: $tagname\$/p" < "$progpath" + done + + exit $? +} + +# func_features +# Display the features supported by this script. +func_features () +{ + echo "host: $host" + if test "$build_libtool_libs" = yes; then + echo "enable shared libraries" + else + echo "disable shared libraries" + fi + if test "$build_old_libs" = yes; then + echo "enable static libraries" + else + echo "disable static libraries" + fi + + exit $? +} + +# func_enable_tag tagname +# Verify that TAGNAME is valid, and either flag an error and exit, or +# enable the TAGNAME tag. We also add TAGNAME to the global $taglist +# variable here. +func_enable_tag () +{ + # Global variable: + tagname="$1" + + re_begincf="^# ### BEGIN LIBTOOL TAG CONFIG: $tagname\$" + re_endcf="^# ### END LIBTOOL TAG CONFIG: $tagname\$" + sed_extractcf="/$re_begincf/,/$re_endcf/p" + + # Validate tagname. + case $tagname in + *[!-_A-Za-z0-9,/]*) + func_fatal_error "invalid tag name: $tagname" + ;; + esac + + # Don't test for the "default" C tag, as we know it's + # there but not specially marked. + case $tagname in + CC) ;; + *) + if $GREP "$re_begincf" "$progpath" >/dev/null 2>&1; then + taglist="$taglist $tagname" + + # Evaluate the configuration. Be careful to quote the path + # and the sed script, to avoid splitting on whitespace, but + # also don't use non-portable quotes within backquotes within + # quotes we have to do it in 2 steps: + extractedcf=`$SED -n -e "$sed_extractcf" < "$progpath"` + eval "$extractedcf" + else + func_error "ignoring unknown tag $tagname" + fi + ;; + esac +} + +# func_check_version_match +# Ensure that we are using m4 macros, and libtool script from the same +# release of libtool. +func_check_version_match () +{ + if test "$package_revision" != "$macro_revision"; then + if test "$VERSION" != "$macro_version"; then + if test -z "$macro_version"; then + cat >&2 <<_LT_EOF +$progname: Version mismatch error. This is $PACKAGE $VERSION, but the +$progname: definition of this LT_INIT comes from an older release. +$progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION +$progname: and run autoconf again. +_LT_EOF + else + cat >&2 <<_LT_EOF +$progname: Version mismatch error. This is $PACKAGE $VERSION, but the +$progname: definition of this LT_INIT comes from $PACKAGE $macro_version. +$progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION +$progname: and run autoconf again. +_LT_EOF + fi + else + cat >&2 <<_LT_EOF +$progname: Version mismatch error. This is $PACKAGE $VERSION, revision $package_revision, +$progname: but the definition of this LT_INIT comes from revision $macro_revision. +$progname: You should recreate aclocal.m4 with macros from revision $package_revision +$progname: of $PACKAGE $VERSION and run autoconf again. +_LT_EOF + fi + + exit $EXIT_MISMATCH + fi +} + + +# Shorthand for --mode=foo, only valid as the first argument +case $1 in +clean|clea|cle|cl) + shift; set dummy --mode clean ${1+"$@"}; shift + ;; +compile|compil|compi|comp|com|co|c) + shift; set dummy --mode compile ${1+"$@"}; shift + ;; +execute|execut|execu|exec|exe|ex|e) + shift; set dummy --mode execute ${1+"$@"}; shift + ;; +finish|finis|fini|fin|fi|f) + shift; set dummy --mode finish ${1+"$@"}; shift + ;; +install|instal|insta|inst|ins|in|i) + shift; set dummy --mode install ${1+"$@"}; shift + ;; +link|lin|li|l) + shift; set dummy --mode link ${1+"$@"}; shift + ;; +uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u) + shift; set dummy --mode uninstall ${1+"$@"}; shift + ;; +esac + + + +# Option defaults: +opt_debug=: +opt_dry_run=false +opt_config=false +opt_preserve_dup_deps=false +opt_features=false +opt_finish=false +opt_help=false +opt_help_all=false +opt_silent=: +opt_warning=: +opt_verbose=: +opt_silent=false +opt_verbose=false + + +# Parse options once, thoroughly. This comes as soon as possible in the +# script to make things like `--version' happen as quickly as we can. +{ + # this just eases exit handling + while test $# -gt 0; do + opt="$1" + shift + case $opt in + --debug|-x) opt_debug='set -x' + func_echo "enabling shell trace mode" + $opt_debug + ;; + --dry-run|--dryrun|-n) + opt_dry_run=: + ;; + --config) + opt_config=: +func_config + ;; + --dlopen|-dlopen) + optarg="$1" + opt_dlopen="${opt_dlopen+$opt_dlopen +}$optarg" + shift + ;; + --preserve-dup-deps) + opt_preserve_dup_deps=: + ;; + --features) + opt_features=: +func_features + ;; + --finish) + opt_finish=: +set dummy --mode finish ${1+"$@"}; shift + ;; + --help) + opt_help=: + ;; + --help-all) + opt_help_all=: +opt_help=': help-all' + ;; + --mode) + test $# = 0 && func_missing_arg $opt && break + optarg="$1" + opt_mode="$optarg" +case $optarg in + # Valid mode arguments: + clean|compile|execute|finish|install|link|relink|uninstall) ;; + + # Catch anything else as an error + *) func_error "invalid argument for $opt" + exit_cmd=exit + break + ;; +esac + shift + ;; + --no-silent|--no-quiet) + opt_silent=false +func_append preserve_args " $opt" + ;; + --no-warning|--no-warn) + opt_warning=false +func_append preserve_args " $opt" + ;; + --no-verbose) + opt_verbose=false +func_append preserve_args " $opt" + ;; + --silent|--quiet) + opt_silent=: +func_append preserve_args " $opt" + opt_verbose=false + ;; + --verbose|-v) + opt_verbose=: +func_append preserve_args " $opt" +opt_silent=false + ;; + --tag) + test $# = 0 && func_missing_arg $opt && break + optarg="$1" + opt_tag="$optarg" +func_append preserve_args " $opt $optarg" +func_enable_tag "$optarg" + shift + ;; + + -\?|-h) func_usage ;; + --help) func_help ;; + --version) func_version ;; + + # Separate optargs to long options: + --*=*) + func_split_long_opt "$opt" + set dummy "$func_split_long_opt_name" "$func_split_long_opt_arg" ${1+"$@"} + shift + ;; + + # Separate non-argument short options: + -\?*|-h*|-n*|-v*) + func_split_short_opt "$opt" + set dummy "$func_split_short_opt_name" "-$func_split_short_opt_arg" ${1+"$@"} + shift + ;; + + --) break ;; + -*) func_fatal_help "unrecognized option \`$opt'" ;; + *) set dummy "$opt" ${1+"$@"}; shift; break ;; + esac + done + + # Validate options: + + # save first non-option argument + if test "$#" -gt 0; then + nonopt="$opt" + shift + fi + + # preserve --debug + test "$opt_debug" = : || func_append preserve_args " --debug" + + case $host in + *cygwin* | *mingw* | *pw32* | *cegcc*) + # don't eliminate duplications in $postdeps and $predeps + opt_duplicate_compiler_generated_deps=: + ;; + *) + opt_duplicate_compiler_generated_deps=$opt_preserve_dup_deps + ;; + esac + + $opt_help || { + # Sanity checks first: + func_check_version_match + + if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then + func_fatal_configuration "not configured to build any kind of library" + fi + + # Darwin sucks + eval std_shrext=\"$shrext_cmds\" + + # Only execute mode is allowed to have -dlopen flags. + if test -n "$opt_dlopen" && test "$opt_mode" != execute; then + func_error "unrecognized option \`-dlopen'" + $ECHO "$help" 1>&2 + exit $EXIT_FAILURE + fi + + # Change the help message to a mode-specific one. + generic_help="$help" + help="Try \`$progname --help --mode=$opt_mode' for more information." + } + + + # Bail if the options were screwed + $exit_cmd $EXIT_FAILURE +} + + + + +## ----------- ## +## Main. ## +## ----------- ## + +# func_lalib_p file +# True iff FILE is a libtool `.la' library or `.lo' object file. +# This function is only a basic sanity check; it will hardly flush out +# determined imposters. +func_lalib_p () +{ + test -f "$1" && + $SED -e 4q "$1" 2>/dev/null \ + | $GREP "^# Generated by .*$PACKAGE" > /dev/null 2>&1 +} + +# func_lalib_unsafe_p file +# True iff FILE is a libtool `.la' library or `.lo' object file. +# This function implements the same check as func_lalib_p without +# resorting to external programs. To this end, it redirects stdin and +# closes it afterwards, without saving the original file descriptor. +# As a safety measure, use it only where a negative result would be +# fatal anyway. Works if `file' does not exist. +func_lalib_unsafe_p () +{ + lalib_p=no + if test -f "$1" && test -r "$1" && exec 5<&0 <"$1"; then + for lalib_p_l in 1 2 3 4 + do + read lalib_p_line + case "$lalib_p_line" in + \#\ Generated\ by\ *$PACKAGE* ) lalib_p=yes; break;; + esac + done + exec 0<&5 5<&- + fi + test "$lalib_p" = yes +} + +# func_ltwrapper_script_p file +# True iff FILE is a libtool wrapper script +# This function is only a basic sanity check; it will hardly flush out +# determined imposters. +func_ltwrapper_script_p () +{ + func_lalib_p "$1" +} + +# func_ltwrapper_executable_p file +# True iff FILE is a libtool wrapper executable +# This function is only a basic sanity check; it will hardly flush out +# determined imposters. +func_ltwrapper_executable_p () +{ + func_ltwrapper_exec_suffix= + case $1 in + *.exe) ;; + *) func_ltwrapper_exec_suffix=.exe ;; + esac + $GREP "$magic_exe" "$1$func_ltwrapper_exec_suffix" >/dev/null 2>&1 +} + +# func_ltwrapper_scriptname file +# Assumes file is an ltwrapper_executable +# uses $file to determine the appropriate filename for a +# temporary ltwrapper_script. +func_ltwrapper_scriptname () +{ + func_dirname_and_basename "$1" "" "." + func_stripname '' '.exe' "$func_basename_result" + func_ltwrapper_scriptname_result="$func_dirname_result/$objdir/${func_stripname_result}_ltshwrapper" +} + +# func_ltwrapper_p file +# True iff FILE is a libtool wrapper script or wrapper executable +# This function is only a basic sanity check; it will hardly flush out +# determined imposters. +func_ltwrapper_p () +{ + func_ltwrapper_script_p "$1" || func_ltwrapper_executable_p "$1" +} + + +# func_execute_cmds commands fail_cmd +# Execute tilde-delimited COMMANDS. +# If FAIL_CMD is given, eval that upon failure. +# FAIL_CMD may read-access the current command in variable CMD! +func_execute_cmds () +{ + $opt_debug + save_ifs=$IFS; IFS='~' + for cmd in $1; do + IFS=$save_ifs + eval cmd=\"$cmd\" + func_show_eval "$cmd" "${2-:}" + done + IFS=$save_ifs +} + + +# func_source file +# Source FILE, adding directory component if necessary. +# Note that it is not necessary on cygwin/mingw to append a dot to +# FILE even if both FILE and FILE.exe exist: automatic-append-.exe +# behavior happens only for exec(3), not for open(2)! Also, sourcing +# `FILE.' does not work on cygwin managed mounts. +func_source () +{ + $opt_debug + case $1 in + */* | *\\*) . "$1" ;; + *) . "./$1" ;; + esac +} + + +# func_resolve_sysroot PATH +# Replace a leading = in PATH with a sysroot. Store the result into +# func_resolve_sysroot_result +func_resolve_sysroot () +{ + func_resolve_sysroot_result=$1 + case $func_resolve_sysroot_result in + =*) + func_stripname '=' '' "$func_resolve_sysroot_result" + func_resolve_sysroot_result=$lt_sysroot$func_stripname_result + ;; + esac +} + +# func_replace_sysroot PATH +# If PATH begins with the sysroot, replace it with = and +# store the result into func_replace_sysroot_result. +func_replace_sysroot () +{ + case "$lt_sysroot:$1" in + ?*:"$lt_sysroot"*) + func_stripname "$lt_sysroot" '' "$1" + func_replace_sysroot_result="=$func_stripname_result" + ;; + *) + # Including no sysroot. + func_replace_sysroot_result=$1 + ;; + esac +} + +# func_infer_tag arg +# Infer tagged configuration to use if any are available and +# if one wasn't chosen via the "--tag" command line option. +# Only attempt this if the compiler in the base compile +# command doesn't match the default compiler. +# arg is usually of the form 'gcc ...' +func_infer_tag () +{ + $opt_debug + if test -n "$available_tags" && test -z "$tagname"; then + CC_quoted= + for arg in $CC; do + func_append_quoted CC_quoted "$arg" + done + CC_expanded=`func_echo_all $CC` + CC_quoted_expanded=`func_echo_all $CC_quoted` + case $@ in + # Blanks in the command may have been stripped by the calling shell, + # but not from the CC environment variable when configure was run. + " $CC "* | "$CC "* | " $CC_expanded "* | "$CC_expanded "* | \ + " $CC_quoted"* | "$CC_quoted "* | " $CC_quoted_expanded "* | "$CC_quoted_expanded "*) ;; + # Blanks at the start of $base_compile will cause this to fail + # if we don't check for them as well. + *) + for z in $available_tags; do + if $GREP "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$progpath" > /dev/null; then + # Evaluate the configuration. + eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $progpath`" + CC_quoted= + for arg in $CC; do + # Double-quote args containing other shell metacharacters. + func_append_quoted CC_quoted "$arg" + done + CC_expanded=`func_echo_all $CC` + CC_quoted_expanded=`func_echo_all $CC_quoted` + case "$@ " in + " $CC "* | "$CC "* | " $CC_expanded "* | "$CC_expanded "* | \ + " $CC_quoted"* | "$CC_quoted "* | " $CC_quoted_expanded "* | "$CC_quoted_expanded "*) + # The compiler in the base compile command matches + # the one in the tagged configuration. + # Assume this is the tagged configuration we want. + tagname=$z + break + ;; + esac + fi + done + # If $tagname still isn't set, then no tagged configuration + # was found and let the user know that the "--tag" command + # line option must be used. + if test -z "$tagname"; then + func_echo "unable to infer tagged configuration" + func_fatal_error "specify a tag with \`--tag'" +# else +# func_verbose "using $tagname tagged configuration" + fi + ;; + esac + fi +} + + + +# func_write_libtool_object output_name pic_name nonpic_name +# Create a libtool object file (analogous to a ".la" file), +# but don't create it if we're doing a dry run. +func_write_libtool_object () +{ + write_libobj=${1} + if test "$build_libtool_libs" = yes; then + write_lobj=\'${2}\' + else + write_lobj=none + fi + + if test "$build_old_libs" = yes; then + write_oldobj=\'${3}\' + else + write_oldobj=none + fi + + $opt_dry_run || { + cat >${write_libobj}T </dev/null` + if test "$?" -eq 0 && test -n "${func_convert_core_file_wine_to_w32_tmp}"; then + func_convert_core_file_wine_to_w32_result=`$ECHO "$func_convert_core_file_wine_to_w32_tmp" | + $SED -e "$lt_sed_naive_backslashify"` + else + func_convert_core_file_wine_to_w32_result= + fi + fi +} +# end: func_convert_core_file_wine_to_w32 + + +# func_convert_core_path_wine_to_w32 ARG +# Helper function used by path conversion functions when $build is *nix, and +# $host is mingw, cygwin, or some other w32 environment. Relies on a correctly +# configured wine environment available, with the winepath program in $build's +# $PATH. Assumes ARG has no leading or trailing path separator characters. +# +# ARG is path to be converted from $build format to win32. +# Result is available in $func_convert_core_path_wine_to_w32_result. +# Unconvertible file (directory) names in ARG are skipped; if no directory names +# are convertible, then the result may be empty. +func_convert_core_path_wine_to_w32 () +{ + $opt_debug + # unfortunately, winepath doesn't convert paths, only file names + func_convert_core_path_wine_to_w32_result="" + if test -n "$1"; then + oldIFS=$IFS + IFS=: + for func_convert_core_path_wine_to_w32_f in $1; do + IFS=$oldIFS + func_convert_core_file_wine_to_w32 "$func_convert_core_path_wine_to_w32_f" + if test -n "$func_convert_core_file_wine_to_w32_result" ; then + if test -z "$func_convert_core_path_wine_to_w32_result"; then + func_convert_core_path_wine_to_w32_result="$func_convert_core_file_wine_to_w32_result" + else + func_append func_convert_core_path_wine_to_w32_result ";$func_convert_core_file_wine_to_w32_result" + fi + fi + done + IFS=$oldIFS + fi +} +# end: func_convert_core_path_wine_to_w32 + + +# func_cygpath ARGS... +# Wrapper around calling the cygpath program via LT_CYGPATH. This is used when +# when (1) $build is *nix and Cygwin is hosted via a wine environment; or (2) +# $build is MSYS and $host is Cygwin, or (3) $build is Cygwin. In case (1) or +# (2), returns the Cygwin file name or path in func_cygpath_result (input +# file name or path is assumed to be in w32 format, as previously converted +# from $build's *nix or MSYS format). In case (3), returns the w32 file name +# or path in func_cygpath_result (input file name or path is assumed to be in +# Cygwin format). Returns an empty string on error. +# +# ARGS are passed to cygpath, with the last one being the file name or path to +# be converted. +# +# Specify the absolute *nix (or w32) name to cygpath in the LT_CYGPATH +# environment variable; do not put it in $PATH. +func_cygpath () +{ + $opt_debug + if test -n "$LT_CYGPATH" && test -f "$LT_CYGPATH"; then + func_cygpath_result=`$LT_CYGPATH "$@" 2>/dev/null` + if test "$?" -ne 0; then + # on failure, ensure result is empty + func_cygpath_result= + fi + else + func_cygpath_result= + func_error "LT_CYGPATH is empty or specifies non-existent file: \`$LT_CYGPATH'" + fi +} +#end: func_cygpath + + +# func_convert_core_msys_to_w32 ARG +# Convert file name or path ARG from MSYS format to w32 format. Return +# result in func_convert_core_msys_to_w32_result. +func_convert_core_msys_to_w32 () +{ + $opt_debug + # awkward: cmd appends spaces to result + func_convert_core_msys_to_w32_result=`( cmd //c echo "$1" ) 2>/dev/null | + $SED -e 's/[ ]*$//' -e "$lt_sed_naive_backslashify"` +} +#end: func_convert_core_msys_to_w32 + + +# func_convert_file_check ARG1 ARG2 +# Verify that ARG1 (a file name in $build format) was converted to $host +# format in ARG2. Otherwise, emit an error message, but continue (resetting +# func_to_host_file_result to ARG1). +func_convert_file_check () +{ + $opt_debug + if test -z "$2" && test -n "$1" ; then + func_error "Could not determine host file name corresponding to" + func_error " \`$1'" + func_error "Continuing, but uninstalled executables may not work." + # Fallback: + func_to_host_file_result="$1" + fi +} +# end func_convert_file_check + + +# func_convert_path_check FROM_PATHSEP TO_PATHSEP FROM_PATH TO_PATH +# Verify that FROM_PATH (a path in $build format) was converted to $host +# format in TO_PATH. Otherwise, emit an error message, but continue, resetting +# func_to_host_file_result to a simplistic fallback value (see below). +func_convert_path_check () +{ + $opt_debug + if test -z "$4" && test -n "$3"; then + func_error "Could not determine the host path corresponding to" + func_error " \`$3'" + func_error "Continuing, but uninstalled executables may not work." + # Fallback. This is a deliberately simplistic "conversion" and + # should not be "improved". See libtool.info. + if test "x$1" != "x$2"; then + lt_replace_pathsep_chars="s|$1|$2|g" + func_to_host_path_result=`echo "$3" | + $SED -e "$lt_replace_pathsep_chars"` + else + func_to_host_path_result="$3" + fi + fi +} +# end func_convert_path_check + + +# func_convert_path_front_back_pathsep FRONTPAT BACKPAT REPL ORIG +# Modifies func_to_host_path_result by prepending REPL if ORIG matches FRONTPAT +# and appending REPL if ORIG matches BACKPAT. +func_convert_path_front_back_pathsep () +{ + $opt_debug + case $4 in + $1 ) func_to_host_path_result="$3$func_to_host_path_result" + ;; + esac + case $4 in + $2 ) func_append func_to_host_path_result "$3" + ;; + esac +} +# end func_convert_path_front_back_pathsep + + +################################################## +# $build to $host FILE NAME CONVERSION FUNCTIONS # +################################################## +# invoked via `$to_host_file_cmd ARG' +# +# In each case, ARG is the path to be converted from $build to $host format. +# Result will be available in $func_to_host_file_result. + + +# func_to_host_file ARG +# Converts the file name ARG from $build format to $host format. Return result +# in func_to_host_file_result. +func_to_host_file () +{ + $opt_debug + $to_host_file_cmd "$1" +} +# end func_to_host_file + + +# func_to_tool_file ARG LAZY +# converts the file name ARG from $build format to toolchain format. Return +# result in func_to_tool_file_result. If the conversion in use is listed +# in (the comma separated) LAZY, no conversion takes place. +func_to_tool_file () +{ + $opt_debug + case ,$2, in + *,"$to_tool_file_cmd",*) + func_to_tool_file_result=$1 + ;; + *) + $to_tool_file_cmd "$1" + func_to_tool_file_result=$func_to_host_file_result + ;; + esac +} +# end func_to_tool_file + + +# func_convert_file_noop ARG +# Copy ARG to func_to_host_file_result. +func_convert_file_noop () +{ + func_to_host_file_result="$1" +} +# end func_convert_file_noop + + +# func_convert_file_msys_to_w32 ARG +# Convert file name ARG from (mingw) MSYS to (mingw) w32 format; automatic +# conversion to w32 is not available inside the cwrapper. Returns result in +# func_to_host_file_result. +func_convert_file_msys_to_w32 () +{ + $opt_debug + func_to_host_file_result="$1" + if test -n "$1"; then + func_convert_core_msys_to_w32 "$1" + func_to_host_file_result="$func_convert_core_msys_to_w32_result" + fi + func_convert_file_check "$1" "$func_to_host_file_result" +} +# end func_convert_file_msys_to_w32 + + +# func_convert_file_cygwin_to_w32 ARG +# Convert file name ARG from Cygwin to w32 format. Returns result in +# func_to_host_file_result. +func_convert_file_cygwin_to_w32 () +{ + $opt_debug + func_to_host_file_result="$1" + if test -n "$1"; then + # because $build is cygwin, we call "the" cygpath in $PATH; no need to use + # LT_CYGPATH in this case. + func_to_host_file_result=`cygpath -m "$1"` + fi + func_convert_file_check "$1" "$func_to_host_file_result" +} +# end func_convert_file_cygwin_to_w32 + + +# func_convert_file_nix_to_w32 ARG +# Convert file name ARG from *nix to w32 format. Requires a wine environment +# and a working winepath. Returns result in func_to_host_file_result. +func_convert_file_nix_to_w32 () +{ + $opt_debug + func_to_host_file_result="$1" + if test -n "$1"; then + func_convert_core_file_wine_to_w32 "$1" + func_to_host_file_result="$func_convert_core_file_wine_to_w32_result" + fi + func_convert_file_check "$1" "$func_to_host_file_result" +} +# end func_convert_file_nix_to_w32 + + +# func_convert_file_msys_to_cygwin ARG +# Convert file name ARG from MSYS to Cygwin format. Requires LT_CYGPATH set. +# Returns result in func_to_host_file_result. +func_convert_file_msys_to_cygwin () +{ + $opt_debug + func_to_host_file_result="$1" + if test -n "$1"; then + func_convert_core_msys_to_w32 "$1" + func_cygpath -u "$func_convert_core_msys_to_w32_result" + func_to_host_file_result="$func_cygpath_result" + fi + func_convert_file_check "$1" "$func_to_host_file_result" +} +# end func_convert_file_msys_to_cygwin + + +# func_convert_file_nix_to_cygwin ARG +# Convert file name ARG from *nix to Cygwin format. Requires Cygwin installed +# in a wine environment, working winepath, and LT_CYGPATH set. Returns result +# in func_to_host_file_result. +func_convert_file_nix_to_cygwin () +{ + $opt_debug + func_to_host_file_result="$1" + if test -n "$1"; then + # convert from *nix to w32, then use cygpath to convert from w32 to cygwin. + func_convert_core_file_wine_to_w32 "$1" + func_cygpath -u "$func_convert_core_file_wine_to_w32_result" + func_to_host_file_result="$func_cygpath_result" + fi + func_convert_file_check "$1" "$func_to_host_file_result" +} +# end func_convert_file_nix_to_cygwin + + +############################################# +# $build to $host PATH CONVERSION FUNCTIONS # +############################################# +# invoked via `$to_host_path_cmd ARG' +# +# In each case, ARG is the path to be converted from $build to $host format. +# The result will be available in $func_to_host_path_result. +# +# Path separators are also converted from $build format to $host format. If +# ARG begins or ends with a path separator character, it is preserved (but +# converted to $host format) on output. +# +# All path conversion functions are named using the following convention: +# file name conversion function : func_convert_file_X_to_Y () +# path conversion function : func_convert_path_X_to_Y () +# where, for any given $build/$host combination the 'X_to_Y' value is the +# same. If conversion functions are added for new $build/$host combinations, +# the two new functions must follow this pattern, or func_init_to_host_path_cmd +# will break. + + +# func_init_to_host_path_cmd +# Ensures that function "pointer" variable $to_host_path_cmd is set to the +# appropriate value, based on the value of $to_host_file_cmd. +to_host_path_cmd= +func_init_to_host_path_cmd () +{ + $opt_debug + if test -z "$to_host_path_cmd"; then + func_stripname 'func_convert_file_' '' "$to_host_file_cmd" + to_host_path_cmd="func_convert_path_${func_stripname_result}" + fi +} + + +# func_to_host_path ARG +# Converts the path ARG from $build format to $host format. Return result +# in func_to_host_path_result. +func_to_host_path () +{ + $opt_debug + func_init_to_host_path_cmd + $to_host_path_cmd "$1" +} +# end func_to_host_path + + +# func_convert_path_noop ARG +# Copy ARG to func_to_host_path_result. +func_convert_path_noop () +{ + func_to_host_path_result="$1" +} +# end func_convert_path_noop + + +# func_convert_path_msys_to_w32 ARG +# Convert path ARG from (mingw) MSYS to (mingw) w32 format; automatic +# conversion to w32 is not available inside the cwrapper. Returns result in +# func_to_host_path_result. +func_convert_path_msys_to_w32 () +{ + $opt_debug + func_to_host_path_result="$1" + if test -n "$1"; then + # Remove leading and trailing path separator characters from ARG. MSYS + # behavior is inconsistent here; cygpath turns them into '.;' and ';.'; + # and winepath ignores them completely. + func_stripname : : "$1" + func_to_host_path_tmp1=$func_stripname_result + func_convert_core_msys_to_w32 "$func_to_host_path_tmp1" + func_to_host_path_result="$func_convert_core_msys_to_w32_result" + func_convert_path_check : ";" \ + "$func_to_host_path_tmp1" "$func_to_host_path_result" + func_convert_path_front_back_pathsep ":*" "*:" ";" "$1" + fi +} +# end func_convert_path_msys_to_w32 + + +# func_convert_path_cygwin_to_w32 ARG +# Convert path ARG from Cygwin to w32 format. Returns result in +# func_to_host_file_result. +func_convert_path_cygwin_to_w32 () +{ + $opt_debug + func_to_host_path_result="$1" + if test -n "$1"; then + # See func_convert_path_msys_to_w32: + func_stripname : : "$1" + func_to_host_path_tmp1=$func_stripname_result + func_to_host_path_result=`cygpath -m -p "$func_to_host_path_tmp1"` + func_convert_path_check : ";" \ + "$func_to_host_path_tmp1" "$func_to_host_path_result" + func_convert_path_front_back_pathsep ":*" "*:" ";" "$1" + fi +} +# end func_convert_path_cygwin_to_w32 + + +# func_convert_path_nix_to_w32 ARG +# Convert path ARG from *nix to w32 format. Requires a wine environment and +# a working winepath. Returns result in func_to_host_file_result. +func_convert_path_nix_to_w32 () +{ + $opt_debug + func_to_host_path_result="$1" + if test -n "$1"; then + # See func_convert_path_msys_to_w32: + func_stripname : : "$1" + func_to_host_path_tmp1=$func_stripname_result + func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1" + func_to_host_path_result="$func_convert_core_path_wine_to_w32_result" + func_convert_path_check : ";" \ + "$func_to_host_path_tmp1" "$func_to_host_path_result" + func_convert_path_front_back_pathsep ":*" "*:" ";" "$1" + fi +} +# end func_convert_path_nix_to_w32 + + +# func_convert_path_msys_to_cygwin ARG +# Convert path ARG from MSYS to Cygwin format. Requires LT_CYGPATH set. +# Returns result in func_to_host_file_result. +func_convert_path_msys_to_cygwin () +{ + $opt_debug + func_to_host_path_result="$1" + if test -n "$1"; then + # See func_convert_path_msys_to_w32: + func_stripname : : "$1" + func_to_host_path_tmp1=$func_stripname_result + func_convert_core_msys_to_w32 "$func_to_host_path_tmp1" + func_cygpath -u -p "$func_convert_core_msys_to_w32_result" + func_to_host_path_result="$func_cygpath_result" + func_convert_path_check : : \ + "$func_to_host_path_tmp1" "$func_to_host_path_result" + func_convert_path_front_back_pathsep ":*" "*:" : "$1" + fi +} +# end func_convert_path_msys_to_cygwin + + +# func_convert_path_nix_to_cygwin ARG +# Convert path ARG from *nix to Cygwin format. Requires Cygwin installed in a +# a wine environment, working winepath, and LT_CYGPATH set. Returns result in +# func_to_host_file_result. +func_convert_path_nix_to_cygwin () +{ + $opt_debug + func_to_host_path_result="$1" + if test -n "$1"; then + # Remove leading and trailing path separator characters from + # ARG. msys behavior is inconsistent here, cygpath turns them + # into '.;' and ';.', and winepath ignores them completely. + func_stripname : : "$1" + func_to_host_path_tmp1=$func_stripname_result + func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1" + func_cygpath -u -p "$func_convert_core_path_wine_to_w32_result" + func_to_host_path_result="$func_cygpath_result" + func_convert_path_check : : \ + "$func_to_host_path_tmp1" "$func_to_host_path_result" + func_convert_path_front_back_pathsep ":*" "*:" : "$1" + fi +} +# end func_convert_path_nix_to_cygwin + + +# func_mode_compile arg... +func_mode_compile () +{ + $opt_debug + # Get the compilation command and the source file. + base_compile= + srcfile="$nonopt" # always keep a non-empty value in "srcfile" + suppress_opt=yes + suppress_output= + arg_mode=normal + libobj= + later= + pie_flag= + + for arg + do + case $arg_mode in + arg ) + # do not "continue". Instead, add this to base_compile + lastarg="$arg" + arg_mode=normal + ;; + + target ) + libobj="$arg" + arg_mode=normal + continue + ;; + + normal ) + # Accept any command-line options. + case $arg in + -o) + test -n "$libobj" && \ + func_fatal_error "you cannot specify \`-o' more than once" + arg_mode=target + continue + ;; + + -pie | -fpie | -fPIE) + func_append pie_flag " $arg" + continue + ;; + + -shared | -static | -prefer-pic | -prefer-non-pic) + func_append later " $arg" + continue + ;; + + -no-suppress) + suppress_opt=no + continue + ;; + + -Xcompiler) + arg_mode=arg # the next one goes into the "base_compile" arg list + continue # The current "srcfile" will either be retained or + ;; # replaced later. I would guess that would be a bug. + + -Wc,*) + func_stripname '-Wc,' '' "$arg" + args=$func_stripname_result + lastarg= + save_ifs="$IFS"; IFS=',' + for arg in $args; do + IFS="$save_ifs" + func_append_quoted lastarg "$arg" + done + IFS="$save_ifs" + func_stripname ' ' '' "$lastarg" + lastarg=$func_stripname_result + + # Add the arguments to base_compile. + func_append base_compile " $lastarg" + continue + ;; + + *) + # Accept the current argument as the source file. + # The previous "srcfile" becomes the current argument. + # + lastarg="$srcfile" + srcfile="$arg" + ;; + esac # case $arg + ;; + esac # case $arg_mode + + # Aesthetically quote the previous argument. + func_append_quoted base_compile "$lastarg" + done # for arg + + case $arg_mode in + arg) + func_fatal_error "you must specify an argument for -Xcompile" + ;; + target) + func_fatal_error "you must specify a target with \`-o'" + ;; + *) + # Get the name of the library object. + test -z "$libobj" && { + func_basename "$srcfile" + libobj="$func_basename_result" + } + ;; + esac + + # Recognize several different file suffixes. + # If the user specifies -o file.o, it is replaced with file.lo + case $libobj in + *.[cCFSifmso] | \ + *.ada | *.adb | *.ads | *.asm | \ + *.c++ | *.cc | *.ii | *.class | *.cpp | *.cxx | \ + *.[fF][09]? | *.for | *.java | *.go | *.obj | *.sx | *.cu | *.cup) + func_xform "$libobj" + libobj=$func_xform_result + ;; + esac + + case $libobj in + *.lo) func_lo2o "$libobj"; obj=$func_lo2o_result ;; + *) + func_fatal_error "cannot determine name of library object from \`$libobj'" + ;; + esac + + func_infer_tag $base_compile + + for arg in $later; do + case $arg in + -shared) + test "$build_libtool_libs" != yes && \ + func_fatal_configuration "can not build a shared library" + build_old_libs=no + continue + ;; + + -static) + build_libtool_libs=no + build_old_libs=yes + continue + ;; + + -prefer-pic) + pic_mode=yes + continue + ;; + + -prefer-non-pic) + pic_mode=no + continue + ;; + esac + done + + func_quote_for_eval "$libobj" + test "X$libobj" != "X$func_quote_for_eval_result" \ + && $ECHO "X$libobj" | $GREP '[]~#^*{};<>?"'"'"' &()|`$[]' \ + && func_warning "libobj name \`$libobj' may not contain shell special characters." + func_dirname_and_basename "$obj" "/" "" + objname="$func_basename_result" + xdir="$func_dirname_result" + lobj=${xdir}$objdir/$objname + + test -z "$base_compile" && \ + func_fatal_help "you must specify a compilation command" + + # Delete any leftover library objects. + if test "$build_old_libs" = yes; then + removelist="$obj $lobj $libobj ${libobj}T" + else + removelist="$lobj $libobj ${libobj}T" + fi + + # On Cygwin there's no "real" PIC flag so we must build both object types + case $host_os in + cygwin* | mingw* | pw32* | os2* | cegcc*) + pic_mode=default + ;; + esac + if test "$pic_mode" = no && test "$deplibs_check_method" != pass_all; then + # non-PIC code in shared libraries is not supported + pic_mode=default + fi + + # Calculate the filename of the output object if compiler does + # not support -o with -c + if test "$compiler_c_o" = no; then + output_obj=`$ECHO "$srcfile" | $SED 's%^.*/%%; s%\.[^.]*$%%'`.${objext} + lockfile="$output_obj.lock" + else + output_obj= + need_locks=no + lockfile= + fi + + # Lock this critical section if it is needed + # We use this script file to make the link, it avoids creating a new file + if test "$need_locks" = yes; then + until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do + func_echo "Waiting for $lockfile to be removed" + sleep 2 + done + elif test "$need_locks" = warn; then + if test -f "$lockfile"; then + $ECHO "\ +*** ERROR, $lockfile exists and contains: +`cat $lockfile 2>/dev/null` + +This indicates that another process is trying to use the same +temporary object file, and libtool could not work around it because +your compiler does not support \`-c' and \`-o' together. If you +repeat this compilation, it may succeed, by chance, but you had better +avoid parallel builds (make -j) in this platform, or get a better +compiler." + + $opt_dry_run || $RM $removelist + exit $EXIT_FAILURE + fi + func_append removelist " $output_obj" + $ECHO "$srcfile" > "$lockfile" + fi + + $opt_dry_run || $RM $removelist + func_append removelist " $lockfile" + trap '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' 1 2 15 + + func_to_tool_file "$srcfile" func_convert_file_msys_to_w32 + srcfile=$func_to_tool_file_result + func_quote_for_eval "$srcfile" + qsrcfile=$func_quote_for_eval_result + + # Only build a PIC object if we are building libtool libraries. + if test "$build_libtool_libs" = yes; then + # Without this assignment, base_compile gets emptied. + fbsd_hideous_sh_bug=$base_compile + + if test "$pic_mode" != no; then + command="$base_compile $qsrcfile $pic_flag" + else + # Don't build PIC code + command="$base_compile $qsrcfile" + fi + + func_mkdir_p "$xdir$objdir" + + if test -z "$output_obj"; then + # Place PIC objects in $objdir + func_append command " -o $lobj" + fi + + func_show_eval_locale "$command" \ + 'test -n "$output_obj" && $RM $removelist; exit $EXIT_FAILURE' + + if test "$need_locks" = warn && + test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then + $ECHO "\ +*** ERROR, $lockfile contains: +`cat $lockfile 2>/dev/null` + +but it should contain: +$srcfile + +This indicates that another process is trying to use the same +temporary object file, and libtool could not work around it because +your compiler does not support \`-c' and \`-o' together. If you +repeat this compilation, it may succeed, by chance, but you had better +avoid parallel builds (make -j) in this platform, or get a better +compiler." + + $opt_dry_run || $RM $removelist + exit $EXIT_FAILURE + fi + + # Just move the object if needed, then go on to compile the next one + if test -n "$output_obj" && test "X$output_obj" != "X$lobj"; then + func_show_eval '$MV "$output_obj" "$lobj"' \ + 'error=$?; $opt_dry_run || $RM $removelist; exit $error' + fi + + # Allow error messages only from the first compilation. + if test "$suppress_opt" = yes; then + suppress_output=' >/dev/null 2>&1' + fi + fi + + # Only build a position-dependent object if we build old libraries. + if test "$build_old_libs" = yes; then + if test "$pic_mode" != yes; then + # Don't build PIC code + command="$base_compile $qsrcfile$pie_flag" + else + command="$base_compile $qsrcfile $pic_flag" + fi + if test "$compiler_c_o" = yes; then + func_append command " -o $obj" + fi + + # Suppress compiler output if we already did a PIC compilation. + func_append command "$suppress_output" + func_show_eval_locale "$command" \ + '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' + + if test "$need_locks" = warn && + test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then + $ECHO "\ +*** ERROR, $lockfile contains: +`cat $lockfile 2>/dev/null` + +but it should contain: +$srcfile + +This indicates that another process is trying to use the same +temporary object file, and libtool could not work around it because +your compiler does not support \`-c' and \`-o' together. If you +repeat this compilation, it may succeed, by chance, but you had better +avoid parallel builds (make -j) in this platform, or get a better +compiler." + + $opt_dry_run || $RM $removelist + exit $EXIT_FAILURE + fi + + # Just move the object if needed + if test -n "$output_obj" && test "X$output_obj" != "X$obj"; then + func_show_eval '$MV "$output_obj" "$obj"' \ + 'error=$?; $opt_dry_run || $RM $removelist; exit $error' + fi + fi + + $opt_dry_run || { + func_write_libtool_object "$libobj" "$objdir/$objname" "$objname" + + # Unlock the critical section if it was locked + if test "$need_locks" != no; then + removelist=$lockfile + $RM "$lockfile" + fi + } + + exit $EXIT_SUCCESS +} + +$opt_help || { + test "$opt_mode" = compile && func_mode_compile ${1+"$@"} +} + +func_mode_help () +{ + # We need to display help for each of the modes. + case $opt_mode in + "") + # Generic help is extracted from the usage comments + # at the start of this file. + func_help + ;; + + clean) + $ECHO \ +"Usage: $progname [OPTION]... --mode=clean RM [RM-OPTION]... FILE... + +Remove files from the build directory. + +RM is the name of the program to use to delete files associated with each FILE +(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed +to RM. + +If FILE is a libtool library, object or program, all the files associated +with it are deleted. Otherwise, only FILE itself is deleted using RM." + ;; + + compile) + $ECHO \ +"Usage: $progname [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE + +Compile a source file into a libtool library object. + +This mode accepts the following additional options: + + -o OUTPUT-FILE set the output file name to OUTPUT-FILE + -no-suppress do not suppress compiler output for multiple passes + -prefer-pic try to build PIC objects only + -prefer-non-pic try to build non-PIC objects only + -shared do not build a \`.o' file suitable for static linking + -static only build a \`.o' file suitable for static linking + -Wc,FLAG pass FLAG directly to the compiler + +COMPILE-COMMAND is a command to be used in creating a \`standard' object file +from the given SOURCEFILE. + +The output file name is determined by removing the directory component from +SOURCEFILE, then substituting the C source code suffix \`.c' with the +library object suffix, \`.lo'." + ;; + + execute) + $ECHO \ +"Usage: $progname [OPTION]... --mode=execute COMMAND [ARGS]... + +Automatically set library path, then run a program. + +This mode accepts the following additional options: + + -dlopen FILE add the directory containing FILE to the library path + +This mode sets the library path environment variable according to \`-dlopen' +flags. + +If any of the ARGS are libtool executable wrappers, then they are translated +into their corresponding uninstalled binary, and any of their required library +directories are added to the library path. + +Then, COMMAND is executed, with ARGS as arguments." + ;; + + finish) + $ECHO \ +"Usage: $progname [OPTION]... --mode=finish [LIBDIR]... + +Complete the installation of libtool libraries. + +Each LIBDIR is a directory that contains libtool libraries. + +The commands that this mode executes may require superuser privileges. Use +the \`--dry-run' option if you just want to see what would be executed." + ;; + + install) + $ECHO \ +"Usage: $progname [OPTION]... --mode=install INSTALL-COMMAND... + +Install executables or libraries. + +INSTALL-COMMAND is the installation command. The first component should be +either the \`install' or \`cp' program. + +The following components of INSTALL-COMMAND are treated specially: + + -inst-prefix-dir PREFIX-DIR Use PREFIX-DIR as a staging area for installation + +The rest of the components are interpreted as arguments to that command (only +BSD-compatible install options are recognized)." + ;; + + link) + $ECHO \ +"Usage: $progname [OPTION]... --mode=link LINK-COMMAND... + +Link object files or libraries together to form another library, or to +create an executable program. + +LINK-COMMAND is a command using the C compiler that you would use to create +a program from several object files. + +The following components of LINK-COMMAND are treated specially: + + -all-static do not do any dynamic linking at all + -avoid-version do not add a version suffix if possible + -bindir BINDIR specify path to binaries directory (for systems where + libraries must be found in the PATH setting at runtime) + -dlopen FILE \`-dlpreopen' FILE if it cannot be dlopened at runtime + -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols + -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3) + -export-symbols SYMFILE + try to export only the symbols listed in SYMFILE + -export-symbols-regex REGEX + try to export only the symbols matching REGEX + -LLIBDIR search LIBDIR for required installed libraries + -lNAME OUTPUT-FILE requires the installed library libNAME + -module build a library that can dlopened + -no-fast-install disable the fast-install mode + -no-install link a not-installable executable + -no-undefined declare that a library does not refer to external symbols + -o OUTPUT-FILE create OUTPUT-FILE from the specified objects + -objectlist FILE Use a list of object files found in FILE to specify objects + -precious-files-regex REGEX + don't remove output files matching REGEX + -release RELEASE specify package release information + -rpath LIBDIR the created library will eventually be installed in LIBDIR + -R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries + -shared only do dynamic linking of libtool libraries + -shrext SUFFIX override the standard shared library file extension + -static do not do any dynamic linking of uninstalled libtool libraries + -static-libtool-libs + do not do any dynamic linking of libtool libraries + -version-info CURRENT[:REVISION[:AGE]] + specify library version info [each variable defaults to 0] + -weak LIBNAME declare that the target provides the LIBNAME interface + -Wc,FLAG + -Xcompiler FLAG pass linker-specific FLAG directly to the compiler + -Wl,FLAG + -Xlinker FLAG pass linker-specific FLAG directly to the linker + -XCClinker FLAG pass link-specific FLAG to the compiler driver (CC) + +All other options (arguments beginning with \`-') are ignored. + +Every other argument is treated as a filename. Files ending in \`.la' are +treated as uninstalled libtool libraries, other files are standard or library +object files. + +If the OUTPUT-FILE ends in \`.la', then a libtool library is created, +only library objects (\`.lo' files) may be specified, and \`-rpath' is +required, except when creating a convenience library. + +If OUTPUT-FILE ends in \`.a' or \`.lib', then a standard library is created +using \`ar' and \`ranlib', or on Windows using \`lib'. + +If OUTPUT-FILE ends in \`.lo' or \`.${objext}', then a reloadable object file +is created, otherwise an executable program is created." + ;; + + uninstall) + $ECHO \ +"Usage: $progname [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE... + +Remove libraries from an installation directory. + +RM is the name of the program to use to delete files associated with each FILE +(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed +to RM. + +If FILE is a libtool library, all the files associated with it are deleted. +Otherwise, only FILE itself is deleted using RM." + ;; + + *) + func_fatal_help "invalid operation mode \`$opt_mode'" + ;; + esac + + echo + $ECHO "Try \`$progname --help' for more information about other modes." +} + +# Now that we've collected a possible --mode arg, show help if necessary +if $opt_help; then + if test "$opt_help" = :; then + func_mode_help + else + { + func_help noexit + for opt_mode in compile link execute install finish uninstall clean; do + func_mode_help + done + } | sed -n '1p; 2,$s/^Usage:/ or: /p' + { + func_help noexit + for opt_mode in compile link execute install finish uninstall clean; do + echo + func_mode_help + done + } | + sed '1d + /^When reporting/,/^Report/{ + H + d + } + $x + /information about other modes/d + /more detailed .*MODE/d + s/^Usage:.*--mode=\([^ ]*\) .*/Description of \1 mode:/' + fi + exit $? +fi + + +# func_mode_execute arg... +func_mode_execute () +{ + $opt_debug + # The first argument is the command name. + cmd="$nonopt" + test -z "$cmd" && \ + func_fatal_help "you must specify a COMMAND" + + # Handle -dlopen flags immediately. + for file in $opt_dlopen; do + test -f "$file" \ + || func_fatal_help "\`$file' is not a file" + + dir= + case $file in + *.la) + func_resolve_sysroot "$file" + file=$func_resolve_sysroot_result + + # Check to see that this really is a libtool archive. + func_lalib_unsafe_p "$file" \ + || func_fatal_help "\`$lib' is not a valid libtool archive" + + # Read the libtool library. + dlname= + library_names= + func_source "$file" + + # Skip this library if it cannot be dlopened. + if test -z "$dlname"; then + # Warn if it was a shared library. + test -n "$library_names" && \ + func_warning "\`$file' was not linked with \`-export-dynamic'" + continue + fi + + func_dirname "$file" "" "." + dir="$func_dirname_result" + + if test -f "$dir/$objdir/$dlname"; then + func_append dir "/$objdir" + else + if test ! -f "$dir/$dlname"; then + func_fatal_error "cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'" + fi + fi + ;; + + *.lo) + # Just add the directory containing the .lo file. + func_dirname "$file" "" "." + dir="$func_dirname_result" + ;; + + *) + func_warning "\`-dlopen' is ignored for non-libtool libraries and objects" + continue + ;; + esac + + # Get the absolute pathname. + absdir=`cd "$dir" && pwd` + test -n "$absdir" && dir="$absdir" + + # Now add the directory to shlibpath_var. + if eval "test -z \"\$$shlibpath_var\""; then + eval "$shlibpath_var=\"\$dir\"" + else + eval "$shlibpath_var=\"\$dir:\$$shlibpath_var\"" + fi + done + + # This variable tells wrapper scripts just to set shlibpath_var + # rather than running their programs. + libtool_execute_magic="$magic" + + # Check if any of the arguments is a wrapper script. + args= + for file + do + case $file in + -* | *.la | *.lo ) ;; + *) + # Do a test to see if this is really a libtool program. + if func_ltwrapper_script_p "$file"; then + func_source "$file" + # Transform arg to wrapped name. + file="$progdir/$program" + elif func_ltwrapper_executable_p "$file"; then + func_ltwrapper_scriptname "$file" + func_source "$func_ltwrapper_scriptname_result" + # Transform arg to wrapped name. + file="$progdir/$program" + fi + ;; + esac + # Quote arguments (to preserve shell metacharacters). + func_append_quoted args "$file" + done + + if test "X$opt_dry_run" = Xfalse; then + if test -n "$shlibpath_var"; then + # Export the shlibpath_var. + eval "export $shlibpath_var" + fi + + # Restore saved environment variables + for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES + do + eval "if test \"\${save_$lt_var+set}\" = set; then + $lt_var=\$save_$lt_var; export $lt_var + else + $lt_unset $lt_var + fi" + done + + # Now prepare to actually exec the command. + exec_cmd="\$cmd$args" + else + # Display what would be done. + if test -n "$shlibpath_var"; then + eval "\$ECHO \"\$shlibpath_var=\$$shlibpath_var\"" + echo "export $shlibpath_var" + fi + $ECHO "$cmd$args" + exit $EXIT_SUCCESS + fi +} + +test "$opt_mode" = execute && func_mode_execute ${1+"$@"} + + +# func_mode_finish arg... +func_mode_finish () +{ + $opt_debug + libs= + libdirs= + admincmds= + + for opt in "$nonopt" ${1+"$@"} + do + if test -d "$opt"; then + func_append libdirs " $opt" + + elif test -f "$opt"; then + if func_lalib_unsafe_p "$opt"; then + func_append libs " $opt" + else + func_warning "\`$opt' is not a valid libtool archive" + fi + + else + func_fatal_error "invalid argument \`$opt'" + fi + done + + if test -n "$libs"; then + if test -n "$lt_sysroot"; then + sysroot_regex=`$ECHO "$lt_sysroot" | $SED "$sed_make_literal_regex"` + sysroot_cmd="s/\([ ']\)$sysroot_regex/\1/g;" + else + sysroot_cmd= + fi + + # Remove sysroot references + if $opt_dry_run; then + for lib in $libs; do + echo "removing references to $lt_sysroot and \`=' prefixes from $lib" + done + else + tmpdir=`func_mktempdir` + for lib in $libs; do + sed -e "${sysroot_cmd} s/\([ ']-[LR]\)=/\1/g; s/\([ ']\)=/\1/g" $lib \ + > $tmpdir/tmp-la + mv -f $tmpdir/tmp-la $lib + done + ${RM}r "$tmpdir" + fi + fi + + if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then + for libdir in $libdirs; do + if test -n "$finish_cmds"; then + # Do each command in the finish commands. + func_execute_cmds "$finish_cmds" 'admincmds="$admincmds +'"$cmd"'"' + fi + if test -n "$finish_eval"; then + # Do the single finish_eval. + eval cmds=\"$finish_eval\" + $opt_dry_run || eval "$cmds" || func_append admincmds " + $cmds" + fi + done + fi + + # Exit here if they wanted silent mode. + $opt_silent && exit $EXIT_SUCCESS + + if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then + echo "----------------------------------------------------------------------" + echo "Libraries have been installed in:" + for libdir in $libdirs; do + $ECHO " $libdir" + done + echo + echo "If you ever happen to want to link against installed libraries" + echo "in a given directory, LIBDIR, you must either use libtool, and" + echo "specify the full pathname of the library, or use the \`-LLIBDIR'" + echo "flag during linking and do at least one of the following:" + if test -n "$shlibpath_var"; then + echo " - add LIBDIR to the \`$shlibpath_var' environment variable" + echo " during execution" + fi + if test -n "$runpath_var"; then + echo " - add LIBDIR to the \`$runpath_var' environment variable" + echo " during linking" + fi + if test -n "$hardcode_libdir_flag_spec"; then + libdir=LIBDIR + eval flag=\"$hardcode_libdir_flag_spec\" + + $ECHO " - use the \`$flag' linker flag" + fi + if test -n "$admincmds"; then + $ECHO " - have your system administrator run these commands:$admincmds" + fi + if test -f /etc/ld.so.conf; then + echo " - have your system administrator add LIBDIR to \`/etc/ld.so.conf'" + fi + echo + + echo "See any operating system documentation about shared libraries for" + case $host in + solaris2.[6789]|solaris2.1[0-9]) + echo "more information, such as the ld(1), crle(1) and ld.so(8) manual" + echo "pages." + ;; + *) + echo "more information, such as the ld(1) and ld.so(8) manual pages." + ;; + esac + echo "----------------------------------------------------------------------" + fi + exit $EXIT_SUCCESS +} + +test "$opt_mode" = finish && func_mode_finish ${1+"$@"} + + +# func_mode_install arg... +func_mode_install () +{ + $opt_debug + # There may be an optional sh(1) argument at the beginning of + # install_prog (especially on Windows NT). + if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh || + # Allow the use of GNU shtool's install command. + case $nonopt in *shtool*) :;; *) false;; esac; then + # Aesthetically quote it. + func_quote_for_eval "$nonopt" + install_prog="$func_quote_for_eval_result " + arg=$1 + shift + else + install_prog= + arg=$nonopt + fi + + # The real first argument should be the name of the installation program. + # Aesthetically quote it. + func_quote_for_eval "$arg" + func_append install_prog "$func_quote_for_eval_result" + install_shared_prog=$install_prog + case " $install_prog " in + *[\\\ /]cp\ *) install_cp=: ;; + *) install_cp=false ;; + esac + + # We need to accept at least all the BSD install flags. + dest= + files= + opts= + prev= + install_type= + isdir=no + stripme= + no_mode=: + for arg + do + arg2= + if test -n "$dest"; then + func_append files " $dest" + dest=$arg + continue + fi + + case $arg in + -d) isdir=yes ;; + -f) + if $install_cp; then :; else + prev=$arg + fi + ;; + -g | -m | -o) + prev=$arg + ;; + -s) + stripme=" -s" + continue + ;; + -*) + ;; + *) + # If the previous option needed an argument, then skip it. + if test -n "$prev"; then + if test "x$prev" = x-m && test -n "$install_override_mode"; then + arg2=$install_override_mode + no_mode=false + fi + prev= + else + dest=$arg + continue + fi + ;; + esac + + # Aesthetically quote the argument. + func_quote_for_eval "$arg" + func_append install_prog " $func_quote_for_eval_result" + if test -n "$arg2"; then + func_quote_for_eval "$arg2" + fi + func_append install_shared_prog " $func_quote_for_eval_result" + done + + test -z "$install_prog" && \ + func_fatal_help "you must specify an install program" + + test -n "$prev" && \ + func_fatal_help "the \`$prev' option requires an argument" + + if test -n "$install_override_mode" && $no_mode; then + if $install_cp; then :; else + func_quote_for_eval "$install_override_mode" + func_append install_shared_prog " -m $func_quote_for_eval_result" + fi + fi + + if test -z "$files"; then + if test -z "$dest"; then + func_fatal_help "no file or destination specified" + else + func_fatal_help "you must specify a destination" + fi + fi + + # Strip any trailing slash from the destination. + func_stripname '' '/' "$dest" + dest=$func_stripname_result + + # Check to see that the destination is a directory. + test -d "$dest" && isdir=yes + if test "$isdir" = yes; then + destdir="$dest" + destname= + else + func_dirname_and_basename "$dest" "" "." + destdir="$func_dirname_result" + destname="$func_basename_result" + + # Not a directory, so check to see that there is only one file specified. + set dummy $files; shift + test "$#" -gt 1 && \ + func_fatal_help "\`$dest' is not a directory" + fi + case $destdir in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + for file in $files; do + case $file in + *.lo) ;; + *) + func_fatal_help "\`$destdir' must be an absolute directory name" + ;; + esac + done + ;; + esac + + # This variable tells wrapper scripts just to set variables rather + # than running their programs. + libtool_install_magic="$magic" + + staticlibs= + future_libdirs= + current_libdirs= + for file in $files; do + + # Do each installation. + case $file in + *.$libext) + # Do the static libraries later. + func_append staticlibs " $file" + ;; + + *.la) + func_resolve_sysroot "$file" + file=$func_resolve_sysroot_result + + # Check to see that this really is a libtool archive. + func_lalib_unsafe_p "$file" \ + || func_fatal_help "\`$file' is not a valid libtool archive" + + library_names= + old_library= + relink_command= + func_source "$file" + + # Add the libdir to current_libdirs if it is the destination. + if test "X$destdir" = "X$libdir"; then + case "$current_libdirs " in + *" $libdir "*) ;; + *) func_append current_libdirs " $libdir" ;; + esac + else + # Note the libdir as a future libdir. + case "$future_libdirs " in + *" $libdir "*) ;; + *) func_append future_libdirs " $libdir" ;; + esac + fi + + func_dirname "$file" "/" "" + dir="$func_dirname_result" + func_append dir "$objdir" + + if test -n "$relink_command"; then + # Determine the prefix the user has applied to our future dir. + inst_prefix_dir=`$ECHO "$destdir" | $SED -e "s%$libdir\$%%"` + + # Don't allow the user to place us outside of our expected + # location b/c this prevents finding dependent libraries that + # are installed to the same prefix. + # At present, this check doesn't affect windows .dll's that + # are installed into $libdir/../bin (currently, that works fine) + # but it's something to keep an eye on. + test "$inst_prefix_dir" = "$destdir" && \ + func_fatal_error "error: cannot install \`$file' to a directory not ending in $libdir" + + if test -n "$inst_prefix_dir"; then + # Stick the inst_prefix_dir data into the link command. + relink_command=`$ECHO "$relink_command" | $SED "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"` + else + relink_command=`$ECHO "$relink_command" | $SED "s%@inst_prefix_dir@%%"` + fi + + func_warning "relinking \`$file'" + func_show_eval "$relink_command" \ + 'func_fatal_error "error: relink \`$file'\'' with the above command before installing it"' + fi + + # See the names of the shared library. + set dummy $library_names; shift + if test -n "$1"; then + realname="$1" + shift + + srcname="$realname" + test -n "$relink_command" && srcname="$realname"T + + # Install the shared library and build the symlinks. + func_show_eval "$install_shared_prog $dir/$srcname $destdir/$realname" \ + 'exit $?' + tstripme="$stripme" + case $host_os in + cygwin* | mingw* | pw32* | cegcc*) + case $realname in + *.dll.a) + tstripme="" + ;; + esac + ;; + esac + if test -n "$tstripme" && test -n "$striplib"; then + func_show_eval "$striplib $destdir/$realname" 'exit $?' + fi + + if test "$#" -gt 0; then + # Delete the old symlinks, and create new ones. + # Try `ln -sf' first, because the `ln' binary might depend on + # the symlink we replace! Solaris /bin/ln does not understand -f, + # so we also need to try rm && ln -s. + for linkname + do + test "$linkname" != "$realname" \ + && func_show_eval "(cd $destdir && { $LN_S -f $realname $linkname || { $RM $linkname && $LN_S $realname $linkname; }; })" + done + fi + + # Do each command in the postinstall commands. + lib="$destdir/$realname" + func_execute_cmds "$postinstall_cmds" 'exit $?' + fi + + # Install the pseudo-library for information purposes. + func_basename "$file" + name="$func_basename_result" + instname="$dir/$name"i + func_show_eval "$install_prog $instname $destdir/$name" 'exit $?' + + # Maybe install the static library, too. + test -n "$old_library" && func_append staticlibs " $dir/$old_library" + ;; + + *.lo) + # Install (i.e. copy) a libtool object. + + # Figure out destination file name, if it wasn't already specified. + if test -n "$destname"; then + destfile="$destdir/$destname" + else + func_basename "$file" + destfile="$func_basename_result" + destfile="$destdir/$destfile" + fi + + # Deduce the name of the destination old-style object file. + case $destfile in + *.lo) + func_lo2o "$destfile" + staticdest=$func_lo2o_result + ;; + *.$objext) + staticdest="$destfile" + destfile= + ;; + *) + func_fatal_help "cannot copy a libtool object to \`$destfile'" + ;; + esac + + # Install the libtool object if requested. + test -n "$destfile" && \ + func_show_eval "$install_prog $file $destfile" 'exit $?' + + # Install the old object if enabled. + if test "$build_old_libs" = yes; then + # Deduce the name of the old-style object file. + func_lo2o "$file" + staticobj=$func_lo2o_result + func_show_eval "$install_prog \$staticobj \$staticdest" 'exit $?' + fi + exit $EXIT_SUCCESS + ;; + + *) + # Figure out destination file name, if it wasn't already specified. + if test -n "$destname"; then + destfile="$destdir/$destname" + else + func_basename "$file" + destfile="$func_basename_result" + destfile="$destdir/$destfile" + fi + + # If the file is missing, and there is a .exe on the end, strip it + # because it is most likely a libtool script we actually want to + # install + stripped_ext="" + case $file in + *.exe) + if test ! -f "$file"; then + func_stripname '' '.exe' "$file" + file=$func_stripname_result + stripped_ext=".exe" + fi + ;; + esac + + # Do a test to see if this is really a libtool program. + case $host in + *cygwin* | *mingw*) + if func_ltwrapper_executable_p "$file"; then + func_ltwrapper_scriptname "$file" + wrapper=$func_ltwrapper_scriptname_result + else + func_stripname '' '.exe' "$file" + wrapper=$func_stripname_result + fi + ;; + *) + wrapper=$file + ;; + esac + if func_ltwrapper_script_p "$wrapper"; then + notinst_deplibs= + relink_command= + + func_source "$wrapper" + + # Check the variables that should have been set. + test -z "$generated_by_libtool_version" && \ + func_fatal_error "invalid libtool wrapper script \`$wrapper'" + + finalize=yes + for lib in $notinst_deplibs; do + # Check to see that each library is installed. + libdir= + if test -f "$lib"; then + func_source "$lib" + fi + libfile="$libdir/"`$ECHO "$lib" | $SED 's%^.*/%%g'` ### testsuite: skip nested quoting test + if test -n "$libdir" && test ! -f "$libfile"; then + func_warning "\`$lib' has not been installed in \`$libdir'" + finalize=no + fi + done + + relink_command= + func_source "$wrapper" + + outputname= + if test "$fast_install" = no && test -n "$relink_command"; then + $opt_dry_run || { + if test "$finalize" = yes; then + tmpdir=`func_mktempdir` + func_basename "$file$stripped_ext" + file="$func_basename_result" + outputname="$tmpdir/$file" + # Replace the output file specification. + relink_command=`$ECHO "$relink_command" | $SED 's%@OUTPUT@%'"$outputname"'%g'` + + $opt_silent || { + func_quote_for_expand "$relink_command" + eval "func_echo $func_quote_for_expand_result" + } + if eval "$relink_command"; then : + else + func_error "error: relink \`$file' with the above command before installing it" + $opt_dry_run || ${RM}r "$tmpdir" + continue + fi + file="$outputname" + else + func_warning "cannot relink \`$file'" + fi + } + else + # Install the binary that we compiled earlier. + file=`$ECHO "$file$stripped_ext" | $SED "s%\([^/]*\)$%$objdir/\1%"` + fi + fi + + # remove .exe since cygwin /usr/bin/install will append another + # one anyway + case $install_prog,$host in + */usr/bin/install*,*cygwin*) + case $file:$destfile in + *.exe:*.exe) + # this is ok + ;; + *.exe:*) + destfile=$destfile.exe + ;; + *:*.exe) + func_stripname '' '.exe' "$destfile" + destfile=$func_stripname_result + ;; + esac + ;; + esac + func_show_eval "$install_prog\$stripme \$file \$destfile" 'exit $?' + $opt_dry_run || if test -n "$outputname"; then + ${RM}r "$tmpdir" + fi + ;; + esac + done + + for file in $staticlibs; do + func_basename "$file" + name="$func_basename_result" + + # Set up the ranlib parameters. + oldlib="$destdir/$name" + func_to_tool_file "$oldlib" func_convert_file_msys_to_w32 + tool_oldlib=$func_to_tool_file_result + + func_show_eval "$install_prog \$file \$oldlib" 'exit $?' + + if test -n "$stripme" && test -n "$old_striplib"; then + func_show_eval "$old_striplib $tool_oldlib" 'exit $?' + fi + + # Do each command in the postinstall commands. + func_execute_cmds "$old_postinstall_cmds" 'exit $?' + done + + test -n "$future_libdirs" && \ + func_warning "remember to run \`$progname --finish$future_libdirs'" + + if test -n "$current_libdirs"; then + # Maybe just do a dry run. + $opt_dry_run && current_libdirs=" -n$current_libdirs" + exec_cmd='$SHELL $progpath $preserve_args --finish$current_libdirs' + else + exit $EXIT_SUCCESS + fi +} + +test "$opt_mode" = install && func_mode_install ${1+"$@"} + + +# func_generate_dlsyms outputname originator pic_p +# Extract symbols from dlprefiles and create ${outputname}S.o with +# a dlpreopen symbol table. +func_generate_dlsyms () +{ + $opt_debug + my_outputname="$1" + my_originator="$2" + my_pic_p="${3-no}" + my_prefix=`$ECHO "$my_originator" | sed 's%[^a-zA-Z0-9]%_%g'` + my_dlsyms= + + if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then + if test -n "$NM" && test -n "$global_symbol_pipe"; then + my_dlsyms="${my_outputname}S.c" + else + func_error "not configured to extract global symbols from dlpreopened files" + fi + fi + + if test -n "$my_dlsyms"; then + case $my_dlsyms in + "") ;; + *.c) + # Discover the nlist of each of the dlfiles. + nlist="$output_objdir/${my_outputname}.nm" + + func_show_eval "$RM $nlist ${nlist}S ${nlist}T" + + # Parse the name list into a source file. + func_verbose "creating $output_objdir/$my_dlsyms" + + $opt_dry_run || $ECHO > "$output_objdir/$my_dlsyms" "\ +/* $my_dlsyms - symbol resolution table for \`$my_outputname' dlsym emulation. */ +/* Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION */ + +#ifdef __cplusplus +extern \"C\" { +#endif + +#if defined(__GNUC__) && (((__GNUC__ == 4) && (__GNUC_MINOR__ >= 4)) || (__GNUC__ > 4)) +#pragma GCC diagnostic ignored \"-Wstrict-prototypes\" +#endif + +/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */ +#if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE) +/* DATA imports from DLLs on WIN32 con't be const, because runtime + relocations are performed -- see ld's documentation on pseudo-relocs. */ +# define LT_DLSYM_CONST +#elif defined(__osf__) +/* This system does not cope well with relocations in const data. */ +# define LT_DLSYM_CONST +#else +# define LT_DLSYM_CONST const +#endif + +/* External symbol declarations for the compiler. */\ +" + + if test "$dlself" = yes; then + func_verbose "generating symbol list for \`$output'" + + $opt_dry_run || echo ': @PROGRAM@ ' > "$nlist" + + # Add our own program objects to the symbol list. + progfiles=`$ECHO "$objs$old_deplibs" | $SP2NL | $SED "$lo2o" | $NL2SP` + for progfile in $progfiles; do + func_to_tool_file "$progfile" func_convert_file_msys_to_w32 + func_verbose "extracting global C symbols from \`$func_to_tool_file_result'" + $opt_dry_run || eval "$NM $func_to_tool_file_result | $global_symbol_pipe >> '$nlist'" + done + + if test -n "$exclude_expsyms"; then + $opt_dry_run || { + eval '$EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T' + eval '$MV "$nlist"T "$nlist"' + } + fi + + if test -n "$export_symbols_regex"; then + $opt_dry_run || { + eval '$EGREP -e "$export_symbols_regex" "$nlist" > "$nlist"T' + eval '$MV "$nlist"T "$nlist"' + } + fi + + # Prepare the list of exported symbols + if test -z "$export_symbols"; then + export_symbols="$output_objdir/$outputname.exp" + $opt_dry_run || { + $RM $export_symbols + eval "${SED} -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"' + case $host in + *cygwin* | *mingw* | *cegcc* ) + eval "echo EXPORTS "'> "$output_objdir/$outputname.def"' + eval 'cat "$export_symbols" >> "$output_objdir/$outputname.def"' + ;; + esac + } + else + $opt_dry_run || { + eval "${SED} -e 's/\([].[*^$]\)/\\\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$outputname.exp"' + eval '$GREP -f "$output_objdir/$outputname.exp" < "$nlist" > "$nlist"T' + eval '$MV "$nlist"T "$nlist"' + case $host in + *cygwin* | *mingw* | *cegcc* ) + eval "echo EXPORTS "'> "$output_objdir/$outputname.def"' + eval 'cat "$nlist" >> "$output_objdir/$outputname.def"' + ;; + esac + } + fi + fi + + for dlprefile in $dlprefiles; do + func_verbose "extracting global C symbols from \`$dlprefile'" + func_basename "$dlprefile" + name="$func_basename_result" + case $host in + *cygwin* | *mingw* | *cegcc* ) + # if an import library, we need to obtain dlname + if func_win32_import_lib_p "$dlprefile"; then + func_tr_sh "$dlprefile" + eval "curr_lafile=\$libfile_$func_tr_sh_result" + dlprefile_dlbasename="" + if test -n "$curr_lafile" && func_lalib_p "$curr_lafile"; then + # Use subshell, to avoid clobbering current variable values + dlprefile_dlname=`source "$curr_lafile" && echo "$dlname"` + if test -n "$dlprefile_dlname" ; then + func_basename "$dlprefile_dlname" + dlprefile_dlbasename="$func_basename_result" + else + # no lafile. user explicitly requested -dlpreopen . + $sharedlib_from_linklib_cmd "$dlprefile" + dlprefile_dlbasename=$sharedlib_from_linklib_result + fi + fi + $opt_dry_run || { + if test -n "$dlprefile_dlbasename" ; then + eval '$ECHO ": $dlprefile_dlbasename" >> "$nlist"' + else + func_warning "Could not compute DLL name from $name" + eval '$ECHO ": $name " >> "$nlist"' + fi + func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32 + eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe | + $SED -e '/I __imp/d' -e 's/I __nm_/D /;s/_nm__//' >> '$nlist'" + } + else # not an import lib + $opt_dry_run || { + eval '$ECHO ": $name " >> "$nlist"' + func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32 + eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe >> '$nlist'" + } + fi + ;; + *) + $opt_dry_run || { + eval '$ECHO ": $name " >> "$nlist"' + func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32 + eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe >> '$nlist'" + } + ;; + esac + done + + $opt_dry_run || { + # Make sure we have at least an empty file. + test -f "$nlist" || : > "$nlist" + + if test -n "$exclude_expsyms"; then + $EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T + $MV "$nlist"T "$nlist" + fi + + # Try sorting and uniquifying the output. + if $GREP -v "^: " < "$nlist" | + if sort -k 3 /dev/null 2>&1; then + sort -k 3 + else + sort +2 + fi | + uniq > "$nlist"S; then + : + else + $GREP -v "^: " < "$nlist" > "$nlist"S + fi + + if test -f "$nlist"S; then + eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$my_dlsyms"' + else + echo '/* NONE */' >> "$output_objdir/$my_dlsyms" + fi + + echo >> "$output_objdir/$my_dlsyms" "\ + +/* The mapping between symbol names and symbols. */ +typedef struct { + const char *name; + void *address; +} lt_dlsymlist; +extern LT_DLSYM_CONST lt_dlsymlist +lt_${my_prefix}_LTX_preloaded_symbols[]; +LT_DLSYM_CONST lt_dlsymlist +lt_${my_prefix}_LTX_preloaded_symbols[] = +{\ + { \"$my_originator\", (void *) 0 }," + + case $need_lib_prefix in + no) + eval "$global_symbol_to_c_name_address" < "$nlist" >> "$output_objdir/$my_dlsyms" + ;; + *) + eval "$global_symbol_to_c_name_address_lib_prefix" < "$nlist" >> "$output_objdir/$my_dlsyms" + ;; + esac + echo >> "$output_objdir/$my_dlsyms" "\ + {0, (void *) 0} +}; + +/* This works around a problem in FreeBSD linker */ +#ifdef FREEBSD_WORKAROUND +static const void *lt_preloaded_setup() { + return lt_${my_prefix}_LTX_preloaded_symbols; +} +#endif + +#ifdef __cplusplus +} +#endif\ +" + } # !$opt_dry_run + + pic_flag_for_symtable= + case "$compile_command " in + *" -static "*) ;; + *) + case $host in + # compiling the symbol table file with pic_flag works around + # a FreeBSD bug that causes programs to crash when -lm is + # linked before any other PIC object. But we must not use + # pic_flag when linking with -static. The problem exists in + # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1. + *-*-freebsd2.*|*-*-freebsd3.0*|*-*-freebsdelf3.0*) + pic_flag_for_symtable=" $pic_flag -DFREEBSD_WORKAROUND" ;; + *-*-hpux*) + pic_flag_for_symtable=" $pic_flag" ;; + *) + if test "X$my_pic_p" != Xno; then + pic_flag_for_symtable=" $pic_flag" + fi + ;; + esac + ;; + esac + symtab_cflags= + for arg in $LTCFLAGS; do + case $arg in + -pie | -fpie | -fPIE) ;; + *) func_append symtab_cflags " $arg" ;; + esac + done + + # Now compile the dynamic symbol file. + func_show_eval '(cd $output_objdir && $LTCC$symtab_cflags -c$no_builtin_flag$pic_flag_for_symtable "$my_dlsyms")' 'exit $?' + + # Clean up the generated files. + func_show_eval '$RM "$output_objdir/$my_dlsyms" "$nlist" "${nlist}S" "${nlist}T"' + + # Transform the symbol file into the correct name. + symfileobj="$output_objdir/${my_outputname}S.$objext" + case $host in + *cygwin* | *mingw* | *cegcc* ) + if test -f "$output_objdir/$my_outputname.def"; then + compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"` + finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"` + else + compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$symfileobj%"` + finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$symfileobj%"` + fi + ;; + *) + compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$symfileobj%"` + finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$symfileobj%"` + ;; + esac + ;; + *) + func_fatal_error "unknown suffix for \`$my_dlsyms'" + ;; + esac + else + # We keep going just in case the user didn't refer to + # lt_preloaded_symbols. The linker will fail if global_symbol_pipe + # really was required. + + # Nullify the symbol file. + compile_command=`$ECHO "$compile_command" | $SED "s% @SYMFILE@%%"` + finalize_command=`$ECHO "$finalize_command" | $SED "s% @SYMFILE@%%"` + fi +} + +# func_win32_libid arg +# return the library type of file 'arg' +# +# Need a lot of goo to handle *both* DLLs and import libs +# Has to be a shell function in order to 'eat' the argument +# that is supplied when $file_magic_command is called. +# Despite the name, also deal with 64 bit binaries. +func_win32_libid () +{ + $opt_debug + win32_libid_type="unknown" + win32_fileres=`file -L $1 2>/dev/null` + case $win32_fileres in + *ar\ archive\ import\ library*) # definitely import + win32_libid_type="x86 archive import" + ;; + *ar\ archive*) # could be an import, or static + # Keep the egrep pattern in sync with the one in _LT_CHECK_MAGIC_METHOD. + if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null | + $EGREP 'file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' >/dev/null; then + func_to_tool_file "$1" func_convert_file_msys_to_w32 + win32_nmres=`eval $NM -f posix -A \"$func_to_tool_file_result\" | + $SED -n -e ' + 1,100{ + / I /{ + s,.*,import, + p + q + } + }'` + case $win32_nmres in + import*) win32_libid_type="x86 archive import";; + *) win32_libid_type="x86 archive static";; + esac + fi + ;; + *DLL*) + win32_libid_type="x86 DLL" + ;; + *executable*) # but shell scripts are "executable" too... + case $win32_fileres in + *MS\ Windows\ PE\ Intel*) + win32_libid_type="x86 DLL" + ;; + esac + ;; + esac + $ECHO "$win32_libid_type" +} + +# func_cygming_dll_for_implib ARG +# +# Platform-specific function to extract the +# name of the DLL associated with the specified +# import library ARG. +# Invoked by eval'ing the libtool variable +# $sharedlib_from_linklib_cmd +# Result is available in the variable +# $sharedlib_from_linklib_result +func_cygming_dll_for_implib () +{ + $opt_debug + sharedlib_from_linklib_result=`$DLLTOOL --identify-strict --identify "$1"` +} + +# func_cygming_dll_for_implib_fallback_core SECTION_NAME LIBNAMEs +# +# The is the core of a fallback implementation of a +# platform-specific function to extract the name of the +# DLL associated with the specified import library LIBNAME. +# +# SECTION_NAME is either .idata$6 or .idata$7, depending +# on the platform and compiler that created the implib. +# +# Echos the name of the DLL associated with the +# specified import library. +func_cygming_dll_for_implib_fallback_core () +{ + $opt_debug + match_literal=`$ECHO "$1" | $SED "$sed_make_literal_regex"` + $OBJDUMP -s --section "$1" "$2" 2>/dev/null | + $SED '/^Contents of section '"$match_literal"':/{ + # Place marker at beginning of archive member dllname section + s/.*/====MARK====/ + p + d + } + # These lines can sometimes be longer than 43 characters, but + # are always uninteresting + /:[ ]*file format pe[i]\{,1\}-/d + /^In archive [^:]*:/d + # Ensure marker is printed + /^====MARK====/p + # Remove all lines with less than 43 characters + /^.\{43\}/!d + # From remaining lines, remove first 43 characters + s/^.\{43\}//' | + $SED -n ' + # Join marker and all lines until next marker into a single line + /^====MARK====/ b para + H + $ b para + b + :para + x + s/\n//g + # Remove the marker + s/^====MARK====// + # Remove trailing dots and whitespace + s/[\. \t]*$// + # Print + /./p' | + # we now have a list, one entry per line, of the stringified + # contents of the appropriate section of all members of the + # archive which possess that section. Heuristic: eliminate + # all those which have a first or second character that is + # a '.' (that is, objdump's representation of an unprintable + # character.) This should work for all archives with less than + # 0x302f exports -- but will fail for DLLs whose name actually + # begins with a literal '.' or a single character followed by + # a '.'. + # + # Of those that remain, print the first one. + $SED -e '/^\./d;/^.\./d;q' +} + +# func_cygming_gnu_implib_p ARG +# This predicate returns with zero status (TRUE) if +# ARG is a GNU/binutils-style import library. Returns +# with nonzero status (FALSE) otherwise. +func_cygming_gnu_implib_p () +{ + $opt_debug + func_to_tool_file "$1" func_convert_file_msys_to_w32 + func_cygming_gnu_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $EGREP ' (_head_[A-Za-z0-9_]+_[ad]l*|[A-Za-z0-9_]+_[ad]l*_iname)$'` + test -n "$func_cygming_gnu_implib_tmp" +} + +# func_cygming_ms_implib_p ARG +# This predicate returns with zero status (TRUE) if +# ARG is an MS-style import library. Returns +# with nonzero status (FALSE) otherwise. +func_cygming_ms_implib_p () +{ + $opt_debug + func_to_tool_file "$1" func_convert_file_msys_to_w32 + func_cygming_ms_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $GREP '_NULL_IMPORT_DESCRIPTOR'` + test -n "$func_cygming_ms_implib_tmp" +} + +# func_cygming_dll_for_implib_fallback ARG +# Platform-specific function to extract the +# name of the DLL associated with the specified +# import library ARG. +# +# This fallback implementation is for use when $DLLTOOL +# does not support the --identify-strict option. +# Invoked by eval'ing the libtool variable +# $sharedlib_from_linklib_cmd +# Result is available in the variable +# $sharedlib_from_linklib_result +func_cygming_dll_for_implib_fallback () +{ + $opt_debug + if func_cygming_gnu_implib_p "$1" ; then + # binutils import library + sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$7' "$1"` + elif func_cygming_ms_implib_p "$1" ; then + # ms-generated import library + sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$6' "$1"` + else + # unknown + sharedlib_from_linklib_result="" + fi +} + + +# func_extract_an_archive dir oldlib +func_extract_an_archive () +{ + $opt_debug + f_ex_an_ar_dir="$1"; shift + f_ex_an_ar_oldlib="$1" + if test "$lock_old_archive_extraction" = yes; then + lockfile=$f_ex_an_ar_oldlib.lock + until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do + func_echo "Waiting for $lockfile to be removed" + sleep 2 + done + fi + func_show_eval "(cd \$f_ex_an_ar_dir && $AR x \"\$f_ex_an_ar_oldlib\")" \ + 'stat=$?; rm -f "$lockfile"; exit $stat' + if test "$lock_old_archive_extraction" = yes; then + $opt_dry_run || rm -f "$lockfile" + fi + if ($AR t "$f_ex_an_ar_oldlib" | sort | sort -uc >/dev/null 2>&1); then + : + else + func_fatal_error "object name conflicts in archive: $f_ex_an_ar_dir/$f_ex_an_ar_oldlib" + fi +} + + +# func_extract_archives gentop oldlib ... +func_extract_archives () +{ + $opt_debug + my_gentop="$1"; shift + my_oldlibs=${1+"$@"} + my_oldobjs="" + my_xlib="" + my_xabs="" + my_xdir="" + + for my_xlib in $my_oldlibs; do + # Extract the objects. + case $my_xlib in + [\\/]* | [A-Za-z]:[\\/]*) my_xabs="$my_xlib" ;; + *) my_xabs=`pwd`"/$my_xlib" ;; + esac + func_basename "$my_xlib" + my_xlib="$func_basename_result" + my_xlib_u=$my_xlib + while :; do + case " $extracted_archives " in + *" $my_xlib_u "*) + func_arith $extracted_serial + 1 + extracted_serial=$func_arith_result + my_xlib_u=lt$extracted_serial-$my_xlib ;; + *) break ;; + esac + done + extracted_archives="$extracted_archives $my_xlib_u" + my_xdir="$my_gentop/$my_xlib_u" + + func_mkdir_p "$my_xdir" + + case $host in + *-darwin*) + func_verbose "Extracting $my_xabs" + # Do not bother doing anything if just a dry run + $opt_dry_run || { + darwin_orig_dir=`pwd` + cd $my_xdir || exit $? + darwin_archive=$my_xabs + darwin_curdir=`pwd` + darwin_base_archive=`basename "$darwin_archive"` + darwin_arches=`$LIPO -info "$darwin_archive" 2>/dev/null | $GREP Architectures 2>/dev/null || true` + if test -n "$darwin_arches"; then + darwin_arches=`$ECHO "$darwin_arches" | $SED -e 's/.*are://'` + darwin_arch= + func_verbose "$darwin_base_archive has multiple architectures $darwin_arches" + for darwin_arch in $darwin_arches ; do + func_mkdir_p "unfat-$$/${darwin_base_archive}-${darwin_arch}" + $LIPO -thin $darwin_arch -output "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}" "${darwin_archive}" + cd "unfat-$$/${darwin_base_archive}-${darwin_arch}" + func_extract_an_archive "`pwd`" "${darwin_base_archive}" + cd "$darwin_curdir" + $RM "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}" + done # $darwin_arches + ## Okay now we've a bunch of thin objects, gotta fatten them up :) + darwin_filelist=`find unfat-$$ -type f -name \*.o -print -o -name \*.lo -print | $SED -e "$basename" | sort -u` + darwin_file= + darwin_files= + for darwin_file in $darwin_filelist; do + darwin_files=`find unfat-$$ -name $darwin_file -print | sort | $NL2SP` + $LIPO -create -output "$darwin_file" $darwin_files + done # $darwin_filelist + $RM -rf unfat-$$ + cd "$darwin_orig_dir" + else + cd $darwin_orig_dir + func_extract_an_archive "$my_xdir" "$my_xabs" + fi # $darwin_arches + } # !$opt_dry_run + ;; + *) + func_extract_an_archive "$my_xdir" "$my_xabs" + ;; + esac + my_oldobjs="$my_oldobjs "`find $my_xdir -name \*.$objext -print -o -name \*.lo -print | sort | $NL2SP` + done + + func_extract_archives_result="$my_oldobjs" +} + + +# func_emit_wrapper [arg=no] +# +# Emit a libtool wrapper script on stdout. +# Don't directly open a file because we may want to +# incorporate the script contents within a cygwin/mingw +# wrapper executable. Must ONLY be called from within +# func_mode_link because it depends on a number of variables +# set therein. +# +# ARG is the value that the WRAPPER_SCRIPT_BELONGS_IN_OBJDIR +# variable will take. If 'yes', then the emitted script +# will assume that the directory in which it is stored is +# the $objdir directory. This is a cygwin/mingw-specific +# behavior. +func_emit_wrapper () +{ + func_emit_wrapper_arg1=${1-no} + + $ECHO "\ +#! $SHELL + +# $output - temporary wrapper script for $objdir/$outputname +# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION +# +# The $output program cannot be directly executed until all the libtool +# libraries that it depends on are installed. +# +# This wrapper script should never be moved out of the build directory. +# If it is, it will not operate correctly. + +# Sed substitution that helps us do robust quoting. It backslashifies +# metacharacters that are still active within double-quoted strings. +sed_quote_subst='$sed_quote_subst' + +# Be Bourne compatible +if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then + emulate sh + NULLCMD=: + # Zsh 3.x and 4.x performs word splitting on \${1+\"\$@\"}, which + # is contrary to our usage. Disable this feature. + alias -g '\${1+\"\$@\"}'='\"\$@\"' + setopt NO_GLOB_SUBST +else + case \`(set -o) 2>/dev/null\` in *posix*) set -o posix;; esac +fi +BIN_SH=xpg4; export BIN_SH # for Tru64 +DUALCASE=1; export DUALCASE # for MKS sh + +# The HP-UX ksh and POSIX shell print the target directory to stdout +# if CDPATH is set. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + +relink_command=\"$relink_command\" + +# This environment variable determines our operation mode. +if test \"\$libtool_install_magic\" = \"$magic\"; then + # install mode needs the following variables: + generated_by_libtool_version='$macro_version' + notinst_deplibs='$notinst_deplibs' +else + # When we are sourced in execute mode, \$file and \$ECHO are already set. + if test \"\$libtool_execute_magic\" != \"$magic\"; then + file=\"\$0\"" + + qECHO=`$ECHO "$ECHO" | $SED "$sed_quote_subst"` + $ECHO "\ + +# A function that is used when there is no print builtin or printf. +func_fallback_echo () +{ + eval 'cat <<_LTECHO_EOF +\$1 +_LTECHO_EOF' +} + ECHO=\"$qECHO\" + fi + +# Very basic option parsing. These options are (a) specific to +# the libtool wrapper, (b) are identical between the wrapper +# /script/ and the wrapper /executable/ which is used only on +# windows platforms, and (c) all begin with the string "--lt-" +# (application programs are unlikely to have options which match +# this pattern). +# +# There are only two supported options: --lt-debug and +# --lt-dump-script. There is, deliberately, no --lt-help. +# +# The first argument to this parsing function should be the +# script's $0 value, followed by "$@". +lt_option_debug= +func_parse_lt_options () +{ + lt_script_arg0=\$0 + shift + for lt_opt + do + case \"\$lt_opt\" in + --lt-debug) lt_option_debug=1 ;; + --lt-dump-script) + lt_dump_D=\`\$ECHO \"X\$lt_script_arg0\" | $SED -e 's/^X//' -e 's%/[^/]*$%%'\` + test \"X\$lt_dump_D\" = \"X\$lt_script_arg0\" && lt_dump_D=. + lt_dump_F=\`\$ECHO \"X\$lt_script_arg0\" | $SED -e 's/^X//' -e 's%^.*/%%'\` + cat \"\$lt_dump_D/\$lt_dump_F\" + exit 0 + ;; + --lt-*) + \$ECHO \"Unrecognized --lt- option: '\$lt_opt'\" 1>&2 + exit 1 + ;; + esac + done + + # Print the debug banner immediately: + if test -n \"\$lt_option_debug\"; then + echo \"${outputname}:${output}:\${LINENO}: libtool wrapper (GNU $PACKAGE$TIMESTAMP) $VERSION\" 1>&2 + fi +} + +# Used when --lt-debug. Prints its arguments to stdout +# (redirection is the responsibility of the caller) +func_lt_dump_args () +{ + lt_dump_args_N=1; + for lt_arg + do + \$ECHO \"${outputname}:${output}:\${LINENO}: newargv[\$lt_dump_args_N]: \$lt_arg\" + lt_dump_args_N=\`expr \$lt_dump_args_N + 1\` + done +} + +# Core function for launching the target application +func_exec_program_core () +{ +" + case $host in + # Backslashes separate directories on plain windows + *-*-mingw | *-*-os2* | *-cegcc*) + $ECHO "\ + if test -n \"\$lt_option_debug\"; then + \$ECHO \"${outputname}:${output}:\${LINENO}: newargv[0]: \$progdir\\\\\$program\" 1>&2 + func_lt_dump_args \${1+\"\$@\"} 1>&2 + fi + exec \"\$progdir\\\\\$program\" \${1+\"\$@\"} +" + ;; + + *) + $ECHO "\ + if test -n \"\$lt_option_debug\"; then + \$ECHO \"${outputname}:${output}:\${LINENO}: newargv[0]: \$progdir/\$program\" 1>&2 + func_lt_dump_args \${1+\"\$@\"} 1>&2 + fi + exec \"\$progdir/\$program\" \${1+\"\$@\"} +" + ;; + esac + $ECHO "\ + \$ECHO \"\$0: cannot exec \$program \$*\" 1>&2 + exit 1 +} + +# A function to encapsulate launching the target application +# Strips options in the --lt-* namespace from \$@ and +# launches target application with the remaining arguments. +func_exec_program () +{ + case \" \$* \" in + *\\ --lt-*) + for lt_wr_arg + do + case \$lt_wr_arg in + --lt-*) ;; + *) set x \"\$@\" \"\$lt_wr_arg\"; shift;; + esac + shift + done ;; + esac + func_exec_program_core \${1+\"\$@\"} +} + + # Parse options + func_parse_lt_options \"\$0\" \${1+\"\$@\"} + + # Find the directory that this script lives in. + thisdir=\`\$ECHO \"\$file\" | $SED 's%/[^/]*$%%'\` + test \"x\$thisdir\" = \"x\$file\" && thisdir=. + + # Follow symbolic links until we get to the real thisdir. + file=\`ls -ld \"\$file\" | $SED -n 's/.*-> //p'\` + while test -n \"\$file\"; do + destdir=\`\$ECHO \"\$file\" | $SED 's%/[^/]*\$%%'\` + + # If there was a directory component, then change thisdir. + if test \"x\$destdir\" != \"x\$file\"; then + case \"\$destdir\" in + [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;; + *) thisdir=\"\$thisdir/\$destdir\" ;; + esac + fi + + file=\`\$ECHO \"\$file\" | $SED 's%^.*/%%'\` + file=\`ls -ld \"\$thisdir/\$file\" | $SED -n 's/.*-> //p'\` + done + + # Usually 'no', except on cygwin/mingw when embedded into + # the cwrapper. + WRAPPER_SCRIPT_BELONGS_IN_OBJDIR=$func_emit_wrapper_arg1 + if test \"\$WRAPPER_SCRIPT_BELONGS_IN_OBJDIR\" = \"yes\"; then + # special case for '.' + if test \"\$thisdir\" = \".\"; then + thisdir=\`pwd\` + fi + # remove .libs from thisdir + case \"\$thisdir\" in + *[\\\\/]$objdir ) thisdir=\`\$ECHO \"\$thisdir\" | $SED 's%[\\\\/][^\\\\/]*$%%'\` ;; + $objdir ) thisdir=. ;; + esac + fi + + # Try to get the absolute directory name. + absdir=\`cd \"\$thisdir\" && pwd\` + test -n \"\$absdir\" && thisdir=\"\$absdir\" +" + + if test "$fast_install" = yes; then + $ECHO "\ + program=lt-'$outputname'$exeext + progdir=\"\$thisdir/$objdir\" + + if test ! -f \"\$progdir/\$program\" || + { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | ${SED} 1q\`; \\ + test \"X\$file\" != \"X\$progdir/\$program\"; }; then + + file=\"\$\$-\$program\" + + if test ! -d \"\$progdir\"; then + $MKDIR \"\$progdir\" + else + $RM \"\$progdir/\$file\" + fi" + + $ECHO "\ + + # relink executable if necessary + if test -n \"\$relink_command\"; then + if relink_command_output=\`eval \$relink_command 2>&1\`; then : + else + $ECHO \"\$relink_command_output\" >&2 + $RM \"\$progdir/\$file\" + exit 1 + fi + fi + + $MV \"\$progdir/\$file\" \"\$progdir/\$program\" 2>/dev/null || + { $RM \"\$progdir/\$program\"; + $MV \"\$progdir/\$file\" \"\$progdir/\$program\"; } + $RM \"\$progdir/\$file\" + fi" + else + $ECHO "\ + program='$outputname' + progdir=\"\$thisdir/$objdir\" +" + fi + + $ECHO "\ + + if test -f \"\$progdir/\$program\"; then" + + # fixup the dll searchpath if we need to. + # + # Fix the DLL searchpath if we need to. Do this before prepending + # to shlibpath, because on Windows, both are PATH and uninstalled + # libraries must come first. + if test -n "$dllsearchpath"; then + $ECHO "\ + # Add the dll search path components to the executable PATH + PATH=$dllsearchpath:\$PATH +" + fi + + # Export our shlibpath_var if we have one. + if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then + $ECHO "\ + # Add our own library path to $shlibpath_var + $shlibpath_var=\"$temp_rpath\$$shlibpath_var\" + + # Some systems cannot cope with colon-terminated $shlibpath_var + # The second colon is a workaround for a bug in BeOS R4 sed + $shlibpath_var=\`\$ECHO \"\$$shlibpath_var\" | $SED 's/::*\$//'\` + + export $shlibpath_var +" + fi + + $ECHO "\ + if test \"\$libtool_execute_magic\" != \"$magic\"; then + # Run the actual program with our arguments. + func_exec_program \${1+\"\$@\"} + fi + else + # The program doesn't exist. + \$ECHO \"\$0: error: \\\`\$progdir/\$program' does not exist\" 1>&2 + \$ECHO \"This script is just a wrapper for \$program.\" 1>&2 + \$ECHO \"See the $PACKAGE documentation for more information.\" 1>&2 + exit 1 + fi +fi\ +" +} + + +# func_emit_cwrapperexe_src +# emit the source code for a wrapper executable on stdout +# Must ONLY be called from within func_mode_link because +# it depends on a number of variable set therein. +func_emit_cwrapperexe_src () +{ + cat < +#include +#ifdef _MSC_VER +# include +# include +# include +#else +# include +# include +# ifdef __CYGWIN__ +# include +# endif +#endif +#include +#include +#include +#include +#include +#include +#include +#include + +/* declarations of non-ANSI functions */ +#if defined(__MINGW32__) +# ifdef __STRICT_ANSI__ +int _putenv (const char *); +# endif +#elif defined(__CYGWIN__) +# ifdef __STRICT_ANSI__ +char *realpath (const char *, char *); +int putenv (char *); +int setenv (const char *, const char *, int); +# endif +/* #elif defined (other platforms) ... */ +#endif + +/* portability defines, excluding path handling macros */ +#if defined(_MSC_VER) +# define setmode _setmode +# define stat _stat +# define chmod _chmod +# define getcwd _getcwd +# define putenv _putenv +# define S_IXUSR _S_IEXEC +# ifndef _INTPTR_T_DEFINED +# define _INTPTR_T_DEFINED +# define intptr_t int +# endif +#elif defined(__MINGW32__) +# define setmode _setmode +# define stat _stat +# define chmod _chmod +# define getcwd _getcwd +# define putenv _putenv +#elif defined(__CYGWIN__) +# define HAVE_SETENV +# define FOPEN_WB "wb" +/* #elif defined (other platforms) ... */ +#endif + +#if defined(PATH_MAX) +# define LT_PATHMAX PATH_MAX +#elif defined(MAXPATHLEN) +# define LT_PATHMAX MAXPATHLEN +#else +# define LT_PATHMAX 1024 +#endif + +#ifndef S_IXOTH +# define S_IXOTH 0 +#endif +#ifndef S_IXGRP +# define S_IXGRP 0 +#endif + +/* path handling portability macros */ +#ifndef DIR_SEPARATOR +# define DIR_SEPARATOR '/' +# define PATH_SEPARATOR ':' +#endif + +#if defined (_WIN32) || defined (__MSDOS__) || defined (__DJGPP__) || \ + defined (__OS2__) +# define HAVE_DOS_BASED_FILE_SYSTEM +# define FOPEN_WB "wb" +# ifndef DIR_SEPARATOR_2 +# define DIR_SEPARATOR_2 '\\' +# endif +# ifndef PATH_SEPARATOR_2 +# define PATH_SEPARATOR_2 ';' +# endif +#endif + +#ifndef DIR_SEPARATOR_2 +# define IS_DIR_SEPARATOR(ch) ((ch) == DIR_SEPARATOR) +#else /* DIR_SEPARATOR_2 */ +# define IS_DIR_SEPARATOR(ch) \ + (((ch) == DIR_SEPARATOR) || ((ch) == DIR_SEPARATOR_2)) +#endif /* DIR_SEPARATOR_2 */ + +#ifndef PATH_SEPARATOR_2 +# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR) +#else /* PATH_SEPARATOR_2 */ +# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR_2) +#endif /* PATH_SEPARATOR_2 */ + +#ifndef FOPEN_WB +# define FOPEN_WB "w" +#endif +#ifndef _O_BINARY +# define _O_BINARY 0 +#endif + +#define XMALLOC(type, num) ((type *) xmalloc ((num) * sizeof(type))) +#define XFREE(stale) do { \ + if (stale) { free ((void *) stale); stale = 0; } \ +} while (0) + +#if defined(LT_DEBUGWRAPPER) +static int lt_debug = 1; +#else +static int lt_debug = 0; +#endif + +const char *program_name = "libtool-wrapper"; /* in case xstrdup fails */ + +void *xmalloc (size_t num); +char *xstrdup (const char *string); +const char *base_name (const char *name); +char *find_executable (const char *wrapper); +char *chase_symlinks (const char *pathspec); +int make_executable (const char *path); +int check_executable (const char *path); +char *strendzap (char *str, const char *pat); +void lt_debugprintf (const char *file, int line, const char *fmt, ...); +void lt_fatal (const char *file, int line, const char *message, ...); +static const char *nonnull (const char *s); +static const char *nonempty (const char *s); +void lt_setenv (const char *name, const char *value); +char *lt_extend_str (const char *orig_value, const char *add, int to_end); +void lt_update_exe_path (const char *name, const char *value); +void lt_update_lib_path (const char *name, const char *value); +char **prepare_spawn (char **argv); +void lt_dump_script (FILE *f); +EOF + + cat <= 0) + && (st.st_mode & (S_IXUSR | S_IXGRP | S_IXOTH))) + return 1; + else + return 0; +} + +int +make_executable (const char *path) +{ + int rval = 0; + struct stat st; + + lt_debugprintf (__FILE__, __LINE__, "(make_executable): %s\n", + nonempty (path)); + if ((!path) || (!*path)) + return 0; + + if (stat (path, &st) >= 0) + { + rval = chmod (path, st.st_mode | S_IXOTH | S_IXGRP | S_IXUSR); + } + return rval; +} + +/* Searches for the full path of the wrapper. Returns + newly allocated full path name if found, NULL otherwise + Does not chase symlinks, even on platforms that support them. +*/ +char * +find_executable (const char *wrapper) +{ + int has_slash = 0; + const char *p; + const char *p_next; + /* static buffer for getcwd */ + char tmp[LT_PATHMAX + 1]; + int tmp_len; + char *concat_name; + + lt_debugprintf (__FILE__, __LINE__, "(find_executable): %s\n", + nonempty (wrapper)); + + if ((wrapper == NULL) || (*wrapper == '\0')) + return NULL; + + /* Absolute path? */ +#if defined (HAVE_DOS_BASED_FILE_SYSTEM) + if (isalpha ((unsigned char) wrapper[0]) && wrapper[1] == ':') + { + concat_name = xstrdup (wrapper); + if (check_executable (concat_name)) + return concat_name; + XFREE (concat_name); + } + else + { +#endif + if (IS_DIR_SEPARATOR (wrapper[0])) + { + concat_name = xstrdup (wrapper); + if (check_executable (concat_name)) + return concat_name; + XFREE (concat_name); + } +#if defined (HAVE_DOS_BASED_FILE_SYSTEM) + } +#endif + + for (p = wrapper; *p; p++) + if (*p == '/') + { + has_slash = 1; + break; + } + if (!has_slash) + { + /* no slashes; search PATH */ + const char *path = getenv ("PATH"); + if (path != NULL) + { + for (p = path; *p; p = p_next) + { + const char *q; + size_t p_len; + for (q = p; *q; q++) + if (IS_PATH_SEPARATOR (*q)) + break; + p_len = q - p; + p_next = (*q == '\0' ? q : q + 1); + if (p_len == 0) + { + /* empty path: current directory */ + if (getcwd (tmp, LT_PATHMAX) == NULL) + lt_fatal (__FILE__, __LINE__, "getcwd failed: %s", + nonnull (strerror (errno))); + tmp_len = strlen (tmp); + concat_name = + XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1); + memcpy (concat_name, tmp, tmp_len); + concat_name[tmp_len] = '/'; + strcpy (concat_name + tmp_len + 1, wrapper); + } + else + { + concat_name = + XMALLOC (char, p_len + 1 + strlen (wrapper) + 1); + memcpy (concat_name, p, p_len); + concat_name[p_len] = '/'; + strcpy (concat_name + p_len + 1, wrapper); + } + if (check_executable (concat_name)) + return concat_name; + XFREE (concat_name); + } + } + /* not found in PATH; assume curdir */ + } + /* Relative path | not found in path: prepend cwd */ + if (getcwd (tmp, LT_PATHMAX) == NULL) + lt_fatal (__FILE__, __LINE__, "getcwd failed: %s", + nonnull (strerror (errno))); + tmp_len = strlen (tmp); + concat_name = XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1); + memcpy (concat_name, tmp, tmp_len); + concat_name[tmp_len] = '/'; + strcpy (concat_name + tmp_len + 1, wrapper); + + if (check_executable (concat_name)) + return concat_name; + XFREE (concat_name); + return NULL; +} + +char * +chase_symlinks (const char *pathspec) +{ +#ifndef S_ISLNK + return xstrdup (pathspec); +#else + char buf[LT_PATHMAX]; + struct stat s; + char *tmp_pathspec = xstrdup (pathspec); + char *p; + int has_symlinks = 0; + while (strlen (tmp_pathspec) && !has_symlinks) + { + lt_debugprintf (__FILE__, __LINE__, + "checking path component for symlinks: %s\n", + tmp_pathspec); + if (lstat (tmp_pathspec, &s) == 0) + { + if (S_ISLNK (s.st_mode) != 0) + { + has_symlinks = 1; + break; + } + + /* search backwards for last DIR_SEPARATOR */ + p = tmp_pathspec + strlen (tmp_pathspec) - 1; + while ((p > tmp_pathspec) && (!IS_DIR_SEPARATOR (*p))) + p--; + if ((p == tmp_pathspec) && (!IS_DIR_SEPARATOR (*p))) + { + /* no more DIR_SEPARATORS left */ + break; + } + *p = '\0'; + } + else + { + lt_fatal (__FILE__, __LINE__, + "error accessing file \"%s\": %s", + tmp_pathspec, nonnull (strerror (errno))); + } + } + XFREE (tmp_pathspec); + + if (!has_symlinks) + { + return xstrdup (pathspec); + } + + tmp_pathspec = realpath (pathspec, buf); + if (tmp_pathspec == 0) + { + lt_fatal (__FILE__, __LINE__, + "could not follow symlinks for %s", pathspec); + } + return xstrdup (tmp_pathspec); +#endif +} + +char * +strendzap (char *str, const char *pat) +{ + size_t len, patlen; + + assert (str != NULL); + assert (pat != NULL); + + len = strlen (str); + patlen = strlen (pat); + + if (patlen <= len) + { + str += len - patlen; + if (strcmp (str, pat) == 0) + *str = '\0'; + } + return str; +} + +void +lt_debugprintf (const char *file, int line, const char *fmt, ...) +{ + va_list args; + if (lt_debug) + { + (void) fprintf (stderr, "%s:%s:%d: ", program_name, file, line); + va_start (args, fmt); + (void) vfprintf (stderr, fmt, args); + va_end (args); + } +} + +static void +lt_error_core (int exit_status, const char *file, + int line, const char *mode, + const char *message, va_list ap) +{ + fprintf (stderr, "%s:%s:%d: %s: ", program_name, file, line, mode); + vfprintf (stderr, message, ap); + fprintf (stderr, ".\n"); + + if (exit_status >= 0) + exit (exit_status); +} + +void +lt_fatal (const char *file, int line, const char *message, ...) +{ + va_list ap; + va_start (ap, message); + lt_error_core (EXIT_FAILURE, file, line, "FATAL", message, ap); + va_end (ap); +} + +static const char * +nonnull (const char *s) +{ + return s ? s : "(null)"; +} + +static const char * +nonempty (const char *s) +{ + return (s && !*s) ? "(empty)" : nonnull (s); +} + +void +lt_setenv (const char *name, const char *value) +{ + lt_debugprintf (__FILE__, __LINE__, + "(lt_setenv) setting '%s' to '%s'\n", + nonnull (name), nonnull (value)); + { +#ifdef HAVE_SETENV + /* always make a copy, for consistency with !HAVE_SETENV */ + char *str = xstrdup (value); + setenv (name, str, 1); +#else + int len = strlen (name) + 1 + strlen (value) + 1; + char *str = XMALLOC (char, len); + sprintf (str, "%s=%s", name, value); + if (putenv (str) != EXIT_SUCCESS) + { + XFREE (str); + } +#endif + } +} + +char * +lt_extend_str (const char *orig_value, const char *add, int to_end) +{ + char *new_value; + if (orig_value && *orig_value) + { + int orig_value_len = strlen (orig_value); + int add_len = strlen (add); + new_value = XMALLOC (char, add_len + orig_value_len + 1); + if (to_end) + { + strcpy (new_value, orig_value); + strcpy (new_value + orig_value_len, add); + } + else + { + strcpy (new_value, add); + strcpy (new_value + add_len, orig_value); + } + } + else + { + new_value = xstrdup (add); + } + return new_value; +} + +void +lt_update_exe_path (const char *name, const char *value) +{ + lt_debugprintf (__FILE__, __LINE__, + "(lt_update_exe_path) modifying '%s' by prepending '%s'\n", + nonnull (name), nonnull (value)); + + if (name && *name && value && *value) + { + char *new_value = lt_extend_str (getenv (name), value, 0); + /* some systems can't cope with a ':'-terminated path #' */ + int len = strlen (new_value); + while (((len = strlen (new_value)) > 0) && IS_PATH_SEPARATOR (new_value[len-1])) + { + new_value[len-1] = '\0'; + } + lt_setenv (name, new_value); + XFREE (new_value); + } +} + +void +lt_update_lib_path (const char *name, const char *value) +{ + lt_debugprintf (__FILE__, __LINE__, + "(lt_update_lib_path) modifying '%s' by prepending '%s'\n", + nonnull (name), nonnull (value)); + + if (name && *name && value && *value) + { + char *new_value = lt_extend_str (getenv (name), value, 0); + lt_setenv (name, new_value); + XFREE (new_value); + } +} + +EOF + case $host_os in + mingw*) + cat <<"EOF" + +/* Prepares an argument vector before calling spawn(). + Note that spawn() does not by itself call the command interpreter + (getenv ("COMSPEC") != NULL ? getenv ("COMSPEC") : + ({ OSVERSIONINFO v; v.dwOSVersionInfoSize = sizeof(OSVERSIONINFO); + GetVersionEx(&v); + v.dwPlatformId == VER_PLATFORM_WIN32_NT; + }) ? "cmd.exe" : "command.com"). + Instead it simply concatenates the arguments, separated by ' ', and calls + CreateProcess(). We must quote the arguments since Win32 CreateProcess() + interprets characters like ' ', '\t', '\\', '"' (but not '<' and '>') in a + special way: + - Space and tab are interpreted as delimiters. They are not treated as + delimiters if they are surrounded by double quotes: "...". + - Unescaped double quotes are removed from the input. Their only effect is + that within double quotes, space and tab are treated like normal + characters. + - Backslashes not followed by double quotes are not special. + - But 2*n+1 backslashes followed by a double quote become + n backslashes followed by a double quote (n >= 0): + \" -> " + \\\" -> \" + \\\\\" -> \\" + */ +#define SHELL_SPECIAL_CHARS "\"\\ \001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037" +#define SHELL_SPACE_CHARS " \001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037" +char ** +prepare_spawn (char **argv) +{ + size_t argc; + char **new_argv; + size_t i; + + /* Count number of arguments. */ + for (argc = 0; argv[argc] != NULL; argc++) + ; + + /* Allocate new argument vector. */ + new_argv = XMALLOC (char *, argc + 1); + + /* Put quoted arguments into the new argument vector. */ + for (i = 0; i < argc; i++) + { + const char *string = argv[i]; + + if (string[0] == '\0') + new_argv[i] = xstrdup ("\"\""); + else if (strpbrk (string, SHELL_SPECIAL_CHARS) != NULL) + { + int quote_around = (strpbrk (string, SHELL_SPACE_CHARS) != NULL); + size_t length; + unsigned int backslashes; + const char *s; + char *quoted_string; + char *p; + + length = 0; + backslashes = 0; + if (quote_around) + length++; + for (s = string; *s != '\0'; s++) + { + char c = *s; + if (c == '"') + length += backslashes + 1; + length++; + if (c == '\\') + backslashes++; + else + backslashes = 0; + } + if (quote_around) + length += backslashes + 1; + + quoted_string = XMALLOC (char, length + 1); + + p = quoted_string; + backslashes = 0; + if (quote_around) + *p++ = '"'; + for (s = string; *s != '\0'; s++) + { + char c = *s; + if (c == '"') + { + unsigned int j; + for (j = backslashes + 1; j > 0; j--) + *p++ = '\\'; + } + *p++ = c; + if (c == '\\') + backslashes++; + else + backslashes = 0; + } + if (quote_around) + { + unsigned int j; + for (j = backslashes; j > 0; j--) + *p++ = '\\'; + *p++ = '"'; + } + *p = '\0'; + + new_argv[i] = quoted_string; + } + else + new_argv[i] = (char *) string; + } + new_argv[argc] = NULL; + + return new_argv; +} +EOF + ;; + esac + + cat <<"EOF" +void lt_dump_script (FILE* f) +{ +EOF + func_emit_wrapper yes | + $SED -n -e ' +s/^\(.\{79\}\)\(..*\)/\1\ +\2/ +h +s/\([\\"]\)/\\\1/g +s/$/\\n/ +s/\([^\n]*\).*/ fputs ("\1", f);/p +g +D' + cat <<"EOF" +} +EOF +} +# end: func_emit_cwrapperexe_src + +# func_win32_import_lib_p ARG +# True if ARG is an import lib, as indicated by $file_magic_cmd +func_win32_import_lib_p () +{ + $opt_debug + case `eval $file_magic_cmd \"\$1\" 2>/dev/null | $SED -e 10q` in + *import*) : ;; + *) false ;; + esac +} + +# func_mode_link arg... +func_mode_link () +{ + $opt_debug + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) + # It is impossible to link a dll without this setting, and + # we shouldn't force the makefile maintainer to figure out + # which system we are compiling for in order to pass an extra + # flag for every libtool invocation. + # allow_undefined=no + + # FIXME: Unfortunately, there are problems with the above when trying + # to make a dll which has undefined symbols, in which case not + # even a static library is built. For now, we need to specify + # -no-undefined on the libtool link line when we can be certain + # that all symbols are satisfied, otherwise we get a static library. + allow_undefined=yes + ;; + *) + allow_undefined=yes + ;; + esac + libtool_args=$nonopt + base_compile="$nonopt $@" + compile_command=$nonopt + finalize_command=$nonopt + + compile_rpath= + finalize_rpath= + compile_shlibpath= + finalize_shlibpath= + convenience= + old_convenience= + deplibs= + old_deplibs= + compiler_flags= + linker_flags= + dllsearchpath= + lib_search_path=`pwd` + inst_prefix_dir= + new_inherited_linker_flags= + + avoid_version=no + bindir= + dlfiles= + dlprefiles= + dlself=no + export_dynamic=no + export_symbols= + export_symbols_regex= + generated= + libobjs= + ltlibs= + module=no + no_install=no + objs= + non_pic_objects= + precious_files_regex= + prefer_static_libs=no + preload=no + prev= + prevarg= + release= + rpath= + xrpath= + perm_rpath= + temp_rpath= + thread_safe=no + vinfo= + vinfo_number=no + weak_libs= + single_module="${wl}-single_module" + func_infer_tag $base_compile + + # We need to know -static, to get the right output filenames. + for arg + do + case $arg in + -shared) + test "$build_libtool_libs" != yes && \ + func_fatal_configuration "can not build a shared library" + build_old_libs=no + break + ;; + -all-static | -static | -static-libtool-libs) + case $arg in + -all-static) + if test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then + func_warning "complete static linking is impossible in this configuration" + fi + if test -n "$link_static_flag"; then + dlopen_self=$dlopen_self_static + fi + prefer_static_libs=yes + ;; + -static) + if test -z "$pic_flag" && test -n "$link_static_flag"; then + dlopen_self=$dlopen_self_static + fi + prefer_static_libs=built + ;; + -static-libtool-libs) + if test -z "$pic_flag" && test -n "$link_static_flag"; then + dlopen_self=$dlopen_self_static + fi + prefer_static_libs=yes + ;; + esac + build_libtool_libs=no + build_old_libs=yes + break + ;; + esac + done + + # See if our shared archives depend on static archives. + test -n "$old_archive_from_new_cmds" && build_old_libs=yes + + # Go through the arguments, transforming them on the way. + while test "$#" -gt 0; do + arg="$1" + shift + func_quote_for_eval "$arg" + qarg=$func_quote_for_eval_unquoted_result + func_append libtool_args " $func_quote_for_eval_result" + + # If the previous option needs an argument, assign it. + if test -n "$prev"; then + case $prev in + output) + func_append compile_command " @OUTPUT@" + func_append finalize_command " @OUTPUT@" + ;; + esac + + case $prev in + bindir) + bindir="$arg" + prev= + continue + ;; + dlfiles|dlprefiles) + if test "$preload" = no; then + # Add the symbol object into the linking commands. + func_append compile_command " @SYMFILE@" + func_append finalize_command " @SYMFILE@" + preload=yes + fi + case $arg in + *.la | *.lo) ;; # We handle these cases below. + force) + if test "$dlself" = no; then + dlself=needless + export_dynamic=yes + fi + prev= + continue + ;; + self) + if test "$prev" = dlprefiles; then + dlself=yes + elif test "$prev" = dlfiles && test "$dlopen_self" != yes; then + dlself=yes + else + dlself=needless + export_dynamic=yes + fi + prev= + continue + ;; + *) + if test "$prev" = dlfiles; then + func_append dlfiles " $arg" + else + func_append dlprefiles " $arg" + fi + prev= + continue + ;; + esac + ;; + expsyms) + export_symbols="$arg" + test -f "$arg" \ + || func_fatal_error "symbol file \`$arg' does not exist" + prev= + continue + ;; + expsyms_regex) + export_symbols_regex="$arg" + prev= + continue + ;; + framework) + case $host in + *-*-darwin*) + case "$deplibs " in + *" $qarg.ltframework "*) ;; + *) func_append deplibs " $qarg.ltframework" # this is fixed later + ;; + esac + ;; + esac + prev= + continue + ;; + inst_prefix) + inst_prefix_dir="$arg" + prev= + continue + ;; + objectlist) + if test -f "$arg"; then + save_arg=$arg + moreargs= + for fil in `cat "$save_arg"` + do +# func_append moreargs " $fil" + arg=$fil + # A libtool-controlled object. + + # Check to see that this really is a libtool object. + if func_lalib_unsafe_p "$arg"; then + pic_object= + non_pic_object= + + # Read the .lo file + func_source "$arg" + + if test -z "$pic_object" || + test -z "$non_pic_object" || + test "$pic_object" = none && + test "$non_pic_object" = none; then + func_fatal_error "cannot find name of object for \`$arg'" + fi + + # Extract subdirectory from the argument. + func_dirname "$arg" "/" "" + xdir="$func_dirname_result" + + if test "$pic_object" != none; then + # Prepend the subdirectory the object is found in. + pic_object="$xdir$pic_object" + + if test "$prev" = dlfiles; then + if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then + func_append dlfiles " $pic_object" + prev= + continue + else + # If libtool objects are unsupported, then we need to preload. + prev=dlprefiles + fi + fi + + # CHECK ME: I think I busted this. -Ossama + if test "$prev" = dlprefiles; then + # Preload the old-style object. + func_append dlprefiles " $pic_object" + prev= + fi + + # A PIC object. + func_append libobjs " $pic_object" + arg="$pic_object" + fi + + # Non-PIC object. + if test "$non_pic_object" != none; then + # Prepend the subdirectory the object is found in. + non_pic_object="$xdir$non_pic_object" + + # A standard non-PIC object + func_append non_pic_objects " $non_pic_object" + if test -z "$pic_object" || test "$pic_object" = none ; then + arg="$non_pic_object" + fi + else + # If the PIC object exists, use it instead. + # $xdir was prepended to $pic_object above. + non_pic_object="$pic_object" + func_append non_pic_objects " $non_pic_object" + fi + else + # Only an error if not doing a dry-run. + if $opt_dry_run; then + # Extract subdirectory from the argument. + func_dirname "$arg" "/" "" + xdir="$func_dirname_result" + + func_lo2o "$arg" + pic_object=$xdir$objdir/$func_lo2o_result + non_pic_object=$xdir$func_lo2o_result + func_append libobjs " $pic_object" + func_append non_pic_objects " $non_pic_object" + else + func_fatal_error "\`$arg' is not a valid libtool object" + fi + fi + done + else + func_fatal_error "link input file \`$arg' does not exist" + fi + arg=$save_arg + prev= + continue + ;; + precious_regex) + precious_files_regex="$arg" + prev= + continue + ;; + release) + release="-$arg" + prev= + continue + ;; + rpath | xrpath) + # We need an absolute path. + case $arg in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + func_fatal_error "only absolute run-paths are allowed" + ;; + esac + if test "$prev" = rpath; then + case "$rpath " in + *" $arg "*) ;; + *) func_append rpath " $arg" ;; + esac + else + case "$xrpath " in + *" $arg "*) ;; + *) func_append xrpath " $arg" ;; + esac + fi + prev= + continue + ;; + shrext) + shrext_cmds="$arg" + prev= + continue + ;; + weak) + func_append weak_libs " $arg" + prev= + continue + ;; + xcclinker) + func_append linker_flags " $qarg" + func_append compiler_flags " $qarg" + prev= + func_append compile_command " $qarg" + func_append finalize_command " $qarg" + continue + ;; + xcompiler) + func_append compiler_flags " $qarg" + prev= + func_append compile_command " $qarg" + func_append finalize_command " $qarg" + continue + ;; + xlinker) + func_append linker_flags " $qarg" + func_append compiler_flags " $wl$qarg" + prev= + func_append compile_command " $wl$qarg" + func_append finalize_command " $wl$qarg" + continue + ;; + *) + eval "$prev=\"\$arg\"" + prev= + continue + ;; + esac + fi # test -n "$prev" + + prevarg="$arg" + + case $arg in + -all-static) + if test -n "$link_static_flag"; then + # See comment for -static flag below, for more details. + func_append compile_command " $link_static_flag" + func_append finalize_command " $link_static_flag" + fi + continue + ;; + + -allow-undefined) + # FIXME: remove this flag sometime in the future. + func_fatal_error "\`-allow-undefined' must not be used because it is the default" + ;; + + -avoid-version) + avoid_version=yes + continue + ;; + + -bindir) + prev=bindir + continue + ;; + + -dlopen) + prev=dlfiles + continue + ;; + + -dlpreopen) + prev=dlprefiles + continue + ;; + + -export-dynamic) + export_dynamic=yes + continue + ;; + + -export-symbols | -export-symbols-regex) + if test -n "$export_symbols" || test -n "$export_symbols_regex"; then + func_fatal_error "more than one -exported-symbols argument is not allowed" + fi + if test "X$arg" = "X-export-symbols"; then + prev=expsyms + else + prev=expsyms_regex + fi + continue + ;; + + -framework) + prev=framework + continue + ;; + + -inst-prefix-dir) + prev=inst_prefix + continue + ;; + + # The native IRIX linker understands -LANG:*, -LIST:* and -LNO:* + # so, if we see these flags be careful not to treat them like -L + -L[A-Z][A-Z]*:*) + case $with_gcc/$host in + no/*-*-irix* | /*-*-irix*) + func_append compile_command " $arg" + func_append finalize_command " $arg" + ;; + esac + continue + ;; + + -L*) + func_stripname "-L" '' "$arg" + if test -z "$func_stripname_result"; then + if test "$#" -gt 0; then + func_fatal_error "require no space between \`-L' and \`$1'" + else + func_fatal_error "need path for \`-L' option" + fi + fi + func_resolve_sysroot "$func_stripname_result" + dir=$func_resolve_sysroot_result + # We need an absolute path. + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + absdir=`cd "$dir" && pwd` + test -z "$absdir" && \ + func_fatal_error "cannot determine absolute directory name of \`$dir'" + dir="$absdir" + ;; + esac + case "$deplibs " in + *" -L$dir "* | *" $arg "*) + # Will only happen for absolute or sysroot arguments + ;; + *) + # Preserve sysroot, but never include relative directories + case $dir in + [\\/]* | [A-Za-z]:[\\/]* | =*) func_append deplibs " $arg" ;; + *) func_append deplibs " -L$dir" ;; + esac + func_append lib_search_path " $dir" + ;; + esac + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) + testbindir=`$ECHO "$dir" | $SED 's*/lib$*/bin*'` + case :$dllsearchpath: in + *":$dir:"*) ;; + ::) dllsearchpath=$dir;; + *) func_append dllsearchpath ":$dir";; + esac + case :$dllsearchpath: in + *":$testbindir:"*) ;; + ::) dllsearchpath=$testbindir;; + *) func_append dllsearchpath ":$testbindir";; + esac + ;; + esac + continue + ;; + + -l*) + if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos* | *-cegcc* | *-*-haiku*) + # These systems don't actually have a C or math library (as such) + continue + ;; + *-*-os2*) + # These systems don't actually have a C library (as such) + test "X$arg" = "X-lc" && continue + ;; + *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) + # Do not include libc due to us having libc/libc_r. + test "X$arg" = "X-lc" && continue + ;; + *-*-rhapsody* | *-*-darwin1.[012]) + # Rhapsody C and math libraries are in the System framework + func_append deplibs " System.ltframework" + continue + ;; + *-*-sco3.2v5* | *-*-sco5v6*) + # Causes problems with __ctype + test "X$arg" = "X-lc" && continue + ;; + *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) + # Compiler inserts libc in the correct place for threads to work + test "X$arg" = "X-lc" && continue + ;; + esac + elif test "X$arg" = "X-lc_r"; then + case $host in + *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) + # Do not include libc_r directly, use -pthread flag. + continue + ;; + esac + fi + func_append deplibs " $arg" + continue + ;; + + -module) + module=yes + continue + ;; + + # Tru64 UNIX uses -model [arg] to determine the layout of C++ + # classes, name mangling, and exception handling. + # Darwin uses the -arch flag to determine output architecture. + -model|-arch|-isysroot|--sysroot) + func_append compiler_flags " $arg" + func_append compile_command " $arg" + func_append finalize_command " $arg" + prev=xcompiler + continue + ;; + + -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe \ + |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*) + func_append compiler_flags " $arg" + func_append compile_command " $arg" + func_append finalize_command " $arg" + case "$new_inherited_linker_flags " in + *" $arg "*) ;; + * ) func_append new_inherited_linker_flags " $arg" ;; + esac + continue + ;; + + -multi_module) + single_module="${wl}-multi_module" + continue + ;; + + -no-fast-install) + fast_install=no + continue + ;; + + -no-install) + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-darwin* | *-cegcc*) + # The PATH hackery in wrapper scripts is required on Windows + # and Darwin in order for the loader to find any dlls it needs. + func_warning "\`-no-install' is ignored for $host" + func_warning "assuming \`-no-fast-install' instead" + fast_install=no + ;; + *) no_install=yes ;; + esac + continue + ;; + + -no-undefined) + allow_undefined=no + continue + ;; + + -objectlist) + prev=objectlist + continue + ;; + + -o) prev=output ;; + + -precious-files-regex) + prev=precious_regex + continue + ;; + + -release) + prev=release + continue + ;; + + -rpath) + prev=rpath + continue + ;; + + -R) + prev=xrpath + continue + ;; + + -R*) + func_stripname '-R' '' "$arg" + dir=$func_stripname_result + # We need an absolute path. + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) ;; + =*) + func_stripname '=' '' "$dir" + dir=$lt_sysroot$func_stripname_result + ;; + *) + func_fatal_error "only absolute run-paths are allowed" + ;; + esac + case "$xrpath " in + *" $dir "*) ;; + *) func_append xrpath " $dir" ;; + esac + continue + ;; + + -shared) + # The effects of -shared are defined in a previous loop. + continue + ;; + + -shrext) + prev=shrext + continue + ;; + + -static | -static-libtool-libs) + # The effects of -static are defined in a previous loop. + # We used to do the same as -all-static on platforms that + # didn't have a PIC flag, but the assumption that the effects + # would be equivalent was wrong. It would break on at least + # Digital Unix and AIX. + continue + ;; + + -thread-safe) + thread_safe=yes + continue + ;; + + -version-info) + prev=vinfo + continue + ;; + + -version-number) + prev=vinfo + vinfo_number=yes + continue + ;; + + -weak) + prev=weak + continue + ;; + + -Wc,*) + func_stripname '-Wc,' '' "$arg" + args=$func_stripname_result + arg= + save_ifs="$IFS"; IFS=',' + for flag in $args; do + IFS="$save_ifs" + func_quote_for_eval "$flag" + func_append arg " $func_quote_for_eval_result" + func_append compiler_flags " $func_quote_for_eval_result" + done + IFS="$save_ifs" + func_stripname ' ' '' "$arg" + arg=$func_stripname_result + ;; + + -Wl,*) + func_stripname '-Wl,' '' "$arg" + args=$func_stripname_result + arg= + save_ifs="$IFS"; IFS=',' + for flag in $args; do + IFS="$save_ifs" + func_quote_for_eval "$flag" + func_append arg " $wl$func_quote_for_eval_result" + func_append compiler_flags " $wl$func_quote_for_eval_result" + func_append linker_flags " $func_quote_for_eval_result" + done + IFS="$save_ifs" + func_stripname ' ' '' "$arg" + arg=$func_stripname_result + ;; + + -Xcompiler) + prev=xcompiler + continue + ;; + + -Xlinker) + prev=xlinker + continue + ;; + + -XCClinker) + prev=xcclinker + continue + ;; + + # -msg_* for osf cc + -msg_*) + func_quote_for_eval "$arg" + arg="$func_quote_for_eval_result" + ;; + + # Flags to be passed through unchanged, with rationale: + # -64, -mips[0-9] enable 64-bit mode for the SGI compiler + # -r[0-9][0-9]* specify processor for the SGI compiler + # -xarch=*, -xtarget=* enable 64-bit mode for the Sun compiler + # +DA*, +DD* enable 64-bit mode for the HP compiler + # -q* compiler args for the IBM compiler + # -m*, -t[45]*, -txscale* architecture-specific flags for GCC + # -F/path path to uninstalled frameworks, gcc on darwin + # -p, -pg, --coverage, -fprofile-* profiling flags for GCC + # @file GCC response files + # -tp=* Portland pgcc target processor selection + # --sysroot=* for sysroot support + # -O*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization + -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \ + -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \ + -O*|-flto*|-fwhopr*|-fuse-linker-plugin) + func_quote_for_eval "$arg" + arg="$func_quote_for_eval_result" + func_append compile_command " $arg" + func_append finalize_command " $arg" + func_append compiler_flags " $arg" + continue + ;; + + # Some other compiler flag. + -* | +*) + func_quote_for_eval "$arg" + arg="$func_quote_for_eval_result" + ;; + + *.$objext) + # A standard object. + func_append objs " $arg" + ;; + + *.lo) + # A libtool-controlled object. + + # Check to see that this really is a libtool object. + if func_lalib_unsafe_p "$arg"; then + pic_object= + non_pic_object= + + # Read the .lo file + func_source "$arg" + + if test -z "$pic_object" || + test -z "$non_pic_object" || + test "$pic_object" = none && + test "$non_pic_object" = none; then + func_fatal_error "cannot find name of object for \`$arg'" + fi + + # Extract subdirectory from the argument. + func_dirname "$arg" "/" "" + xdir="$func_dirname_result" + + if test "$pic_object" != none; then + # Prepend the subdirectory the object is found in. + pic_object="$xdir$pic_object" + + if test "$prev" = dlfiles; then + if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then + func_append dlfiles " $pic_object" + prev= + continue + else + # If libtool objects are unsupported, then we need to preload. + prev=dlprefiles + fi + fi + + # CHECK ME: I think I busted this. -Ossama + if test "$prev" = dlprefiles; then + # Preload the old-style object. + func_append dlprefiles " $pic_object" + prev= + fi + + # A PIC object. + func_append libobjs " $pic_object" + arg="$pic_object" + fi + + # Non-PIC object. + if test "$non_pic_object" != none; then + # Prepend the subdirectory the object is found in. + non_pic_object="$xdir$non_pic_object" + + # A standard non-PIC object + func_append non_pic_objects " $non_pic_object" + if test -z "$pic_object" || test "$pic_object" = none ; then + arg="$non_pic_object" + fi + else + # If the PIC object exists, use it instead. + # $xdir was prepended to $pic_object above. + non_pic_object="$pic_object" + func_append non_pic_objects " $non_pic_object" + fi + else + # Only an error if not doing a dry-run. + if $opt_dry_run; then + # Extract subdirectory from the argument. + func_dirname "$arg" "/" "" + xdir="$func_dirname_result" + + func_lo2o "$arg" + pic_object=$xdir$objdir/$func_lo2o_result + non_pic_object=$xdir$func_lo2o_result + func_append libobjs " $pic_object" + func_append non_pic_objects " $non_pic_object" + else + func_fatal_error "\`$arg' is not a valid libtool object" + fi + fi + ;; + + *.$libext) + # An archive. + func_append deplibs " $arg" + func_append old_deplibs " $arg" + continue + ;; + + *.la) + # A libtool-controlled library. + + func_resolve_sysroot "$arg" + if test "$prev" = dlfiles; then + # This library was specified with -dlopen. + func_append dlfiles " $func_resolve_sysroot_result" + prev= + elif test "$prev" = dlprefiles; then + # The library was specified with -dlpreopen. + func_append dlprefiles " $func_resolve_sysroot_result" + prev= + else + func_append deplibs " $func_resolve_sysroot_result" + fi + continue + ;; + + # Some other compiler argument. + *) + # Unknown arguments in both finalize_command and compile_command need + # to be aesthetically quoted because they are evaled later. + func_quote_for_eval "$arg" + arg="$func_quote_for_eval_result" + ;; + esac # arg + + # Now actually substitute the argument into the commands. + if test -n "$arg"; then + func_append compile_command " $arg" + func_append finalize_command " $arg" + fi + done # argument parsing loop + + test -n "$prev" && \ + func_fatal_help "the \`$prevarg' option requires an argument" + + if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then + eval arg=\"$export_dynamic_flag_spec\" + func_append compile_command " $arg" + func_append finalize_command " $arg" + fi + + oldlibs= + # calculate the name of the file, without its directory + func_basename "$output" + outputname="$func_basename_result" + libobjs_save="$libobjs" + + if test -n "$shlibpath_var"; then + # get the directories listed in $shlibpath_var + eval shlib_search_path=\`\$ECHO \"\${$shlibpath_var}\" \| \$SED \'s/:/ /g\'\` + else + shlib_search_path= + fi + eval sys_lib_search_path=\"$sys_lib_search_path_spec\" + eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\" + + func_dirname "$output" "/" "" + output_objdir="$func_dirname_result$objdir" + func_to_tool_file "$output_objdir/" + tool_output_objdir=$func_to_tool_file_result + # Create the object directory. + func_mkdir_p "$output_objdir" + + # Determine the type of output + case $output in + "") + func_fatal_help "you must specify an output file" + ;; + *.$libext) linkmode=oldlib ;; + *.lo | *.$objext) linkmode=obj ;; + *.la) linkmode=lib ;; + *) linkmode=prog ;; # Anything else should be a program. + esac + + specialdeplibs= + + libs= + # Find all interdependent deplibs by searching for libraries + # that are linked more than once (e.g. -la -lb -la) + for deplib in $deplibs; do + if $opt_preserve_dup_deps ; then + case "$libs " in + *" $deplib "*) func_append specialdeplibs " $deplib" ;; + esac + fi + func_append libs " $deplib" + done + + if test "$linkmode" = lib; then + libs="$predeps $libs $compiler_lib_search_path $postdeps" + + # Compute libraries that are listed more than once in $predeps + # $postdeps and mark them as special (i.e., whose duplicates are + # not to be eliminated). + pre_post_deps= + if $opt_duplicate_compiler_generated_deps; then + for pre_post_dep in $predeps $postdeps; do + case "$pre_post_deps " in + *" $pre_post_dep "*) func_append specialdeplibs " $pre_post_deps" ;; + esac + func_append pre_post_deps " $pre_post_dep" + done + fi + pre_post_deps= + fi + + deplibs= + newdependency_libs= + newlib_search_path= + need_relink=no # whether we're linking any uninstalled libtool libraries + notinst_deplibs= # not-installed libtool libraries + notinst_path= # paths that contain not-installed libtool libraries + + case $linkmode in + lib) + passes="conv dlpreopen link" + for file in $dlfiles $dlprefiles; do + case $file in + *.la) ;; + *) + func_fatal_help "libraries can \`-dlopen' only libtool libraries: $file" + ;; + esac + done + ;; + prog) + compile_deplibs= + finalize_deplibs= + alldeplibs=no + newdlfiles= + newdlprefiles= + passes="conv scan dlopen dlpreopen link" + ;; + *) passes="conv" + ;; + esac + + for pass in $passes; do + # The preopen pass in lib mode reverses $deplibs; put it back here + # so that -L comes before libs that need it for instance... + if test "$linkmode,$pass" = "lib,link"; then + ## FIXME: Find the place where the list is rebuilt in the wrong + ## order, and fix it there properly + tmp_deplibs= + for deplib in $deplibs; do + tmp_deplibs="$deplib $tmp_deplibs" + done + deplibs="$tmp_deplibs" + fi + + if test "$linkmode,$pass" = "lib,link" || + test "$linkmode,$pass" = "prog,scan"; then + libs="$deplibs" + deplibs= + fi + if test "$linkmode" = prog; then + case $pass in + dlopen) libs="$dlfiles" ;; + dlpreopen) libs="$dlprefiles" ;; + link) libs="$deplibs %DEPLIBS% $dependency_libs" ;; + esac + fi + if test "$linkmode,$pass" = "lib,dlpreopen"; then + # Collect and forward deplibs of preopened libtool libs + for lib in $dlprefiles; do + # Ignore non-libtool-libs + dependency_libs= + func_resolve_sysroot "$lib" + case $lib in + *.la) func_source "$func_resolve_sysroot_result" ;; + esac + + # Collect preopened libtool deplibs, except any this library + # has declared as weak libs + for deplib in $dependency_libs; do + func_basename "$deplib" + deplib_base=$func_basename_result + case " $weak_libs " in + *" $deplib_base "*) ;; + *) func_append deplibs " $deplib" ;; + esac + done + done + libs="$dlprefiles" + fi + if test "$pass" = dlopen; then + # Collect dlpreopened libraries + save_deplibs="$deplibs" + deplibs= + fi + + for deplib in $libs; do + lib= + found=no + case $deplib in + -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe \ + |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*) + if test "$linkmode,$pass" = "prog,link"; then + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + func_append compiler_flags " $deplib" + if test "$linkmode" = lib ; then + case "$new_inherited_linker_flags " in + *" $deplib "*) ;; + * ) func_append new_inherited_linker_flags " $deplib" ;; + esac + fi + fi + continue + ;; + -l*) + if test "$linkmode" != lib && test "$linkmode" != prog; then + func_warning "\`-l' is ignored for archives/objects" + continue + fi + func_stripname '-l' '' "$deplib" + name=$func_stripname_result + if test "$linkmode" = lib; then + searchdirs="$newlib_search_path $lib_search_path $compiler_lib_search_dirs $sys_lib_search_path $shlib_search_path" + else + searchdirs="$newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path" + fi + for searchdir in $searchdirs; do + for search_ext in .la $std_shrext .so .a; do + # Search the libtool library + lib="$searchdir/lib${name}${search_ext}" + if test -f "$lib"; then + if test "$search_ext" = ".la"; then + found=yes + else + found=no + fi + break 2 + fi + done + done + if test "$found" != yes; then + # deplib doesn't seem to be a libtool library + if test "$linkmode,$pass" = "prog,link"; then + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + deplibs="$deplib $deplibs" + test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs" + fi + continue + else # deplib is a libtool library + # If $allow_libtool_libs_with_static_runtimes && $deplib is a stdlib, + # We need to do some special things here, and not later. + if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then + case " $predeps $postdeps " in + *" $deplib "*) + if func_lalib_p "$lib"; then + library_names= + old_library= + func_source "$lib" + for l in $old_library $library_names; do + ll="$l" + done + if test "X$ll" = "X$old_library" ; then # only static version available + found=no + func_dirname "$lib" "" "." + ladir="$func_dirname_result" + lib=$ladir/$old_library + if test "$linkmode,$pass" = "prog,link"; then + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + deplibs="$deplib $deplibs" + test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs" + fi + continue + fi + fi + ;; + *) ;; + esac + fi + fi + ;; # -l + *.ltframework) + if test "$linkmode,$pass" = "prog,link"; then + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + deplibs="$deplib $deplibs" + if test "$linkmode" = lib ; then + case "$new_inherited_linker_flags " in + *" $deplib "*) ;; + * ) func_append new_inherited_linker_flags " $deplib" ;; + esac + fi + fi + continue + ;; + -L*) + case $linkmode in + lib) + deplibs="$deplib $deplibs" + test "$pass" = conv && continue + newdependency_libs="$deplib $newdependency_libs" + func_stripname '-L' '' "$deplib" + func_resolve_sysroot "$func_stripname_result" + func_append newlib_search_path " $func_resolve_sysroot_result" + ;; + prog) + if test "$pass" = conv; then + deplibs="$deplib $deplibs" + continue + fi + if test "$pass" = scan; then + deplibs="$deplib $deplibs" + else + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + fi + func_stripname '-L' '' "$deplib" + func_resolve_sysroot "$func_stripname_result" + func_append newlib_search_path " $func_resolve_sysroot_result" + ;; + *) + func_warning "\`-L' is ignored for archives/objects" + ;; + esac # linkmode + continue + ;; # -L + -R*) + if test "$pass" = link; then + func_stripname '-R' '' "$deplib" + func_resolve_sysroot "$func_stripname_result" + dir=$func_resolve_sysroot_result + # Make sure the xrpath contains only unique directories. + case "$xrpath " in + *" $dir "*) ;; + *) func_append xrpath " $dir" ;; + esac + fi + deplibs="$deplib $deplibs" + continue + ;; + *.la) + func_resolve_sysroot "$deplib" + lib=$func_resolve_sysroot_result + ;; + *.$libext) + if test "$pass" = conv; then + deplibs="$deplib $deplibs" + continue + fi + case $linkmode in + lib) + # Linking convenience modules into shared libraries is allowed, + # but linking other static libraries is non-portable. + case " $dlpreconveniencelibs " in + *" $deplib "*) ;; + *) + valid_a_lib=no + case $deplibs_check_method in + match_pattern*) + set dummy $deplibs_check_method; shift + match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"` + if eval "\$ECHO \"$deplib\"" 2>/dev/null | $SED 10q \ + | $EGREP "$match_pattern_regex" > /dev/null; then + valid_a_lib=yes + fi + ;; + pass_all) + valid_a_lib=yes + ;; + esac + if test "$valid_a_lib" != yes; then + echo + $ECHO "*** Warning: Trying to link with static lib archive $deplib." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have" + echo "*** because the file extensions .$libext of this argument makes me believe" + echo "*** that it is just a static archive that I should not use here." + else + echo + $ECHO "*** Warning: Linking the shared library $output against the" + $ECHO "*** static library $deplib is not portable!" + deplibs="$deplib $deplibs" + fi + ;; + esac + continue + ;; + prog) + if test "$pass" != link; then + deplibs="$deplib $deplibs" + else + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + fi + continue + ;; + esac # linkmode + ;; # *.$libext + *.lo | *.$objext) + if test "$pass" = conv; then + deplibs="$deplib $deplibs" + elif test "$linkmode" = prog; then + if test "$pass" = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then + # If there is no dlopen support or we're linking statically, + # we need to preload. + func_append newdlprefiles " $deplib" + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + func_append newdlfiles " $deplib" + fi + fi + continue + ;; + %DEPLIBS%) + alldeplibs=yes + continue + ;; + esac # case $deplib + + if test "$found" = yes || test -f "$lib"; then : + else + func_fatal_error "cannot find the library \`$lib' or unhandled argument \`$deplib'" + fi + + # Check to see that this really is a libtool archive. + func_lalib_unsafe_p "$lib" \ + || func_fatal_error "\`$lib' is not a valid libtool archive" + + func_dirname "$lib" "" "." + ladir="$func_dirname_result" + + dlname= + dlopen= + dlpreopen= + libdir= + library_names= + old_library= + inherited_linker_flags= + # If the library was installed with an old release of libtool, + # it will not redefine variables installed, or shouldnotlink + installed=yes + shouldnotlink=no + avoidtemprpath= + + + # Read the .la file + func_source "$lib" + + # Convert "-framework foo" to "foo.ltframework" + if test -n "$inherited_linker_flags"; then + tmp_inherited_linker_flags=`$ECHO "$inherited_linker_flags" | $SED 's/-framework \([^ $]*\)/\1.ltframework/g'` + for tmp_inherited_linker_flag in $tmp_inherited_linker_flags; do + case " $new_inherited_linker_flags " in + *" $tmp_inherited_linker_flag "*) ;; + *) func_append new_inherited_linker_flags " $tmp_inherited_linker_flag";; + esac + done + fi + dependency_libs=`$ECHO " $dependency_libs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + if test "$linkmode,$pass" = "lib,link" || + test "$linkmode,$pass" = "prog,scan" || + { test "$linkmode" != prog && test "$linkmode" != lib; }; then + test -n "$dlopen" && func_append dlfiles " $dlopen" + test -n "$dlpreopen" && func_append dlprefiles " $dlpreopen" + fi + + if test "$pass" = conv; then + # Only check for convenience libraries + deplibs="$lib $deplibs" + if test -z "$libdir"; then + if test -z "$old_library"; then + func_fatal_error "cannot find name of link library for \`$lib'" + fi + # It is a libtool convenience library, so add in its objects. + func_append convenience " $ladir/$objdir/$old_library" + func_append old_convenience " $ladir/$objdir/$old_library" + elif test "$linkmode" != prog && test "$linkmode" != lib; then + func_fatal_error "\`$lib' is not a convenience library" + fi + tmp_libs= + for deplib in $dependency_libs; do + deplibs="$deplib $deplibs" + if $opt_preserve_dup_deps ; then + case "$tmp_libs " in + *" $deplib "*) func_append specialdeplibs " $deplib" ;; + esac + fi + func_append tmp_libs " $deplib" + done + continue + fi # $pass = conv + + + # Get the name of the library we link against. + linklib= + if test -n "$old_library" && + { test "$prefer_static_libs" = yes || + test "$prefer_static_libs,$installed" = "built,no"; }; then + linklib=$old_library + else + for l in $old_library $library_names; do + linklib="$l" + done + fi + if test -z "$linklib"; then + func_fatal_error "cannot find name of link library for \`$lib'" + fi + + # This library was specified with -dlopen. + if test "$pass" = dlopen; then + if test -z "$libdir"; then + func_fatal_error "cannot -dlopen a convenience library: \`$lib'" + fi + if test -z "$dlname" || + test "$dlopen_support" != yes || + test "$build_libtool_libs" = no; then + # If there is no dlname, no dlopen support or we're linking + # statically, we need to preload. We also need to preload any + # dependent libraries so libltdl's deplib preloader doesn't + # bomb out in the load deplibs phase. + func_append dlprefiles " $lib $dependency_libs" + else + func_append newdlfiles " $lib" + fi + continue + fi # $pass = dlopen + + # We need an absolute path. + case $ladir in + [\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;; + *) + abs_ladir=`cd "$ladir" && pwd` + if test -z "$abs_ladir"; then + func_warning "cannot determine absolute directory name of \`$ladir'" + func_warning "passing it literally to the linker, although it might fail" + abs_ladir="$ladir" + fi + ;; + esac + func_basename "$lib" + laname="$func_basename_result" + + # Find the relevant object directory and library name. + if test "X$installed" = Xyes; then + if test ! -f "$lt_sysroot$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then + func_warning "library \`$lib' was moved." + dir="$ladir" + absdir="$abs_ladir" + libdir="$abs_ladir" + else + dir="$lt_sysroot$libdir" + absdir="$lt_sysroot$libdir" + fi + test "X$hardcode_automatic" = Xyes && avoidtemprpath=yes + else + if test ! -f "$ladir/$objdir/$linklib" && test -f "$abs_ladir/$linklib"; then + dir="$ladir" + absdir="$abs_ladir" + # Remove this search path later + func_append notinst_path " $abs_ladir" + else + dir="$ladir/$objdir" + absdir="$abs_ladir/$objdir" + # Remove this search path later + func_append notinst_path " $abs_ladir" + fi + fi # $installed = yes + func_stripname 'lib' '.la' "$laname" + name=$func_stripname_result + + # This library was specified with -dlpreopen. + if test "$pass" = dlpreopen; then + if test -z "$libdir" && test "$linkmode" = prog; then + func_fatal_error "only libraries may -dlpreopen a convenience library: \`$lib'" + fi + case "$host" in + # special handling for platforms with PE-DLLs. + *cygwin* | *mingw* | *cegcc* ) + # Linker will automatically link against shared library if both + # static and shared are present. Therefore, ensure we extract + # symbols from the import library if a shared library is present + # (otherwise, the dlopen module name will be incorrect). We do + # this by putting the import library name into $newdlprefiles. + # We recover the dlopen module name by 'saving' the la file + # name in a special purpose variable, and (later) extracting the + # dlname from the la file. + if test -n "$dlname"; then + func_tr_sh "$dir/$linklib" + eval "libfile_$func_tr_sh_result=\$abs_ladir/\$laname" + func_append newdlprefiles " $dir/$linklib" + else + func_append newdlprefiles " $dir/$old_library" + # Keep a list of preopened convenience libraries to check + # that they are being used correctly in the link pass. + test -z "$libdir" && \ + func_append dlpreconveniencelibs " $dir/$old_library" + fi + ;; + * ) + # Prefer using a static library (so that no silly _DYNAMIC symbols + # are required to link). + if test -n "$old_library"; then + func_append newdlprefiles " $dir/$old_library" + # Keep a list of preopened convenience libraries to check + # that they are being used correctly in the link pass. + test -z "$libdir" && \ + func_append dlpreconveniencelibs " $dir/$old_library" + # Otherwise, use the dlname, so that lt_dlopen finds it. + elif test -n "$dlname"; then + func_append newdlprefiles " $dir/$dlname" + else + func_append newdlprefiles " $dir/$linklib" + fi + ;; + esac + fi # $pass = dlpreopen + + if test -z "$libdir"; then + # Link the convenience library + if test "$linkmode" = lib; then + deplibs="$dir/$old_library $deplibs" + elif test "$linkmode,$pass" = "prog,link"; then + compile_deplibs="$dir/$old_library $compile_deplibs" + finalize_deplibs="$dir/$old_library $finalize_deplibs" + else + deplibs="$lib $deplibs" # used for prog,scan pass + fi + continue + fi + + + if test "$linkmode" = prog && test "$pass" != link; then + func_append newlib_search_path " $ladir" + deplibs="$lib $deplibs" + + linkalldeplibs=no + if test "$link_all_deplibs" != no || test -z "$library_names" || + test "$build_libtool_libs" = no; then + linkalldeplibs=yes + fi + + tmp_libs= + for deplib in $dependency_libs; do + case $deplib in + -L*) func_stripname '-L' '' "$deplib" + func_resolve_sysroot "$func_stripname_result" + func_append newlib_search_path " $func_resolve_sysroot_result" + ;; + esac + # Need to link against all dependency_libs? + if test "$linkalldeplibs" = yes; then + deplibs="$deplib $deplibs" + else + # Need to hardcode shared library paths + # or/and link against static libraries + newdependency_libs="$deplib $newdependency_libs" + fi + if $opt_preserve_dup_deps ; then + case "$tmp_libs " in + *" $deplib "*) func_append specialdeplibs " $deplib" ;; + esac + fi + func_append tmp_libs " $deplib" + done # for deplib + continue + fi # $linkmode = prog... + + if test "$linkmode,$pass" = "prog,link"; then + if test -n "$library_names" && + { { test "$prefer_static_libs" = no || + test "$prefer_static_libs,$installed" = "built,yes"; } || + test -z "$old_library"; }; then + # We need to hardcode the library path + if test -n "$shlibpath_var" && test -z "$avoidtemprpath" ; then + # Make sure the rpath contains only unique directories. + case "$temp_rpath:" in + *"$absdir:"*) ;; + *) func_append temp_rpath "$absdir:" ;; + esac + fi + + # Hardcode the library path. + # Skip directories that are in the system default run-time + # search path. + case " $sys_lib_dlsearch_path " in + *" $absdir "*) ;; + *) + case "$compile_rpath " in + *" $absdir "*) ;; + *) func_append compile_rpath " $absdir" ;; + esac + ;; + esac + case " $sys_lib_dlsearch_path " in + *" $libdir "*) ;; + *) + case "$finalize_rpath " in + *" $libdir "*) ;; + *) func_append finalize_rpath " $libdir" ;; + esac + ;; + esac + fi # $linkmode,$pass = prog,link... + + if test "$alldeplibs" = yes && + { test "$deplibs_check_method" = pass_all || + { test "$build_libtool_libs" = yes && + test -n "$library_names"; }; }; then + # We only need to search for static libraries + continue + fi + fi + + link_static=no # Whether the deplib will be linked statically + use_static_libs=$prefer_static_libs + if test "$use_static_libs" = built && test "$installed" = yes; then + use_static_libs=no + fi + if test -n "$library_names" && + { test "$use_static_libs" = no || test -z "$old_library"; }; then + case $host in + *cygwin* | *mingw* | *cegcc*) + # No point in relinking DLLs because paths are not encoded + func_append notinst_deplibs " $lib" + need_relink=no + ;; + *) + if test "$installed" = no; then + func_append notinst_deplibs " $lib" + need_relink=yes + fi + ;; + esac + # This is a shared library + + # Warn about portability, can't link against -module's on some + # systems (darwin). Don't bleat about dlopened modules though! + dlopenmodule="" + for dlpremoduletest in $dlprefiles; do + if test "X$dlpremoduletest" = "X$lib"; then + dlopenmodule="$dlpremoduletest" + break + fi + done + if test -z "$dlopenmodule" && test "$shouldnotlink" = yes && test "$pass" = link; then + echo + if test "$linkmode" = prog; then + $ECHO "*** Warning: Linking the executable $output against the loadable module" + else + $ECHO "*** Warning: Linking the shared library $output against the loadable module" + fi + $ECHO "*** $linklib is not portable!" + fi + if test "$linkmode" = lib && + test "$hardcode_into_libs" = yes; then + # Hardcode the library path. + # Skip directories that are in the system default run-time + # search path. + case " $sys_lib_dlsearch_path " in + *" $absdir "*) ;; + *) + case "$compile_rpath " in + *" $absdir "*) ;; + *) func_append compile_rpath " $absdir" ;; + esac + ;; + esac + case " $sys_lib_dlsearch_path " in + *" $libdir "*) ;; + *) + case "$finalize_rpath " in + *" $libdir "*) ;; + *) func_append finalize_rpath " $libdir" ;; + esac + ;; + esac + fi + + if test -n "$old_archive_from_expsyms_cmds"; then + # figure out the soname + set dummy $library_names + shift + realname="$1" + shift + libname=`eval "\\$ECHO \"$libname_spec\""` + # use dlname if we got it. it's perfectly good, no? + if test -n "$dlname"; then + soname="$dlname" + elif test -n "$soname_spec"; then + # bleh windows + case $host in + *cygwin* | mingw* | *cegcc*) + func_arith $current - $age + major=$func_arith_result + versuffix="-$major" + ;; + esac + eval soname=\"$soname_spec\" + else + soname="$realname" + fi + + # Make a new name for the extract_expsyms_cmds to use + soroot="$soname" + func_basename "$soroot" + soname="$func_basename_result" + func_stripname 'lib' '.dll' "$soname" + newlib=libimp-$func_stripname_result.a + + # If the library has no export list, then create one now + if test -f "$output_objdir/$soname-def"; then : + else + func_verbose "extracting exported symbol list from \`$soname'" + func_execute_cmds "$extract_expsyms_cmds" 'exit $?' + fi + + # Create $newlib + if test -f "$output_objdir/$newlib"; then :; else + func_verbose "generating import library for \`$soname'" + func_execute_cmds "$old_archive_from_expsyms_cmds" 'exit $?' + fi + # make sure the library variables are pointing to the new library + dir=$output_objdir + linklib=$newlib + fi # test -n "$old_archive_from_expsyms_cmds" + + if test "$linkmode" = prog || test "$opt_mode" != relink; then + add_shlibpath= + add_dir= + add= + lib_linked=yes + case $hardcode_action in + immediate | unsupported) + if test "$hardcode_direct" = no; then + add="$dir/$linklib" + case $host in + *-*-sco3.2v5.0.[024]*) add_dir="-L$dir" ;; + *-*-sysv4*uw2*) add_dir="-L$dir" ;; + *-*-sysv5OpenUNIX* | *-*-sysv5UnixWare7.[01].[10]* | \ + *-*-unixware7*) add_dir="-L$dir" ;; + *-*-darwin* ) + # if the lib is a (non-dlopened) module then we can not + # link against it, someone is ignoring the earlier warnings + if /usr/bin/file -L $add 2> /dev/null | + $GREP ": [^:]* bundle" >/dev/null ; then + if test "X$dlopenmodule" != "X$lib"; then + $ECHO "*** Warning: lib $linklib is a module, not a shared library" + if test -z "$old_library" ; then + echo + echo "*** And there doesn't seem to be a static archive available" + echo "*** The link will probably fail, sorry" + else + add="$dir/$old_library" + fi + elif test -n "$old_library"; then + add="$dir/$old_library" + fi + fi + esac + elif test "$hardcode_minus_L" = no; then + case $host in + *-*-sunos*) add_shlibpath="$dir" ;; + esac + add_dir="-L$dir" + add="-l$name" + elif test "$hardcode_shlibpath_var" = no; then + add_shlibpath="$dir" + add="-l$name" + else + lib_linked=no + fi + ;; + relink) + if test "$hardcode_direct" = yes && + test "$hardcode_direct_absolute" = no; then + add="$dir/$linklib" + elif test "$hardcode_minus_L" = yes; then + add_dir="-L$absdir" + # Try looking first in the location we're being installed to. + if test -n "$inst_prefix_dir"; then + case $libdir in + [\\/]*) + func_append add_dir " -L$inst_prefix_dir$libdir" + ;; + esac + fi + add="-l$name" + elif test "$hardcode_shlibpath_var" = yes; then + add_shlibpath="$dir" + add="-l$name" + else + lib_linked=no + fi + ;; + *) lib_linked=no ;; + esac + + if test "$lib_linked" != yes; then + func_fatal_configuration "unsupported hardcode properties" + fi + + if test -n "$add_shlibpath"; then + case :$compile_shlibpath: in + *":$add_shlibpath:"*) ;; + *) func_append compile_shlibpath "$add_shlibpath:" ;; + esac + fi + if test "$linkmode" = prog; then + test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs" + test -n "$add" && compile_deplibs="$add $compile_deplibs" + else + test -n "$add_dir" && deplibs="$add_dir $deplibs" + test -n "$add" && deplibs="$add $deplibs" + if test "$hardcode_direct" != yes && + test "$hardcode_minus_L" != yes && + test "$hardcode_shlibpath_var" = yes; then + case :$finalize_shlibpath: in + *":$libdir:"*) ;; + *) func_append finalize_shlibpath "$libdir:" ;; + esac + fi + fi + fi + + if test "$linkmode" = prog || test "$opt_mode" = relink; then + add_shlibpath= + add_dir= + add= + # Finalize command for both is simple: just hardcode it. + if test "$hardcode_direct" = yes && + test "$hardcode_direct_absolute" = no; then + add="$libdir/$linklib" + elif test "$hardcode_minus_L" = yes; then + add_dir="-L$libdir" + add="-l$name" + elif test "$hardcode_shlibpath_var" = yes; then + case :$finalize_shlibpath: in + *":$libdir:"*) ;; + *) func_append finalize_shlibpath "$libdir:" ;; + esac + add="-l$name" + elif test "$hardcode_automatic" = yes; then + if test -n "$inst_prefix_dir" && + test -f "$inst_prefix_dir$libdir/$linklib" ; then + add="$inst_prefix_dir$libdir/$linklib" + else + add="$libdir/$linklib" + fi + else + # We cannot seem to hardcode it, guess we'll fake it. + add_dir="-L$libdir" + # Try looking first in the location we're being installed to. + if test -n "$inst_prefix_dir"; then + case $libdir in + [\\/]*) + func_append add_dir " -L$inst_prefix_dir$libdir" + ;; + esac + fi + add="-l$name" + fi + + if test "$linkmode" = prog; then + test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs" + test -n "$add" && finalize_deplibs="$add $finalize_deplibs" + else + test -n "$add_dir" && deplibs="$add_dir $deplibs" + test -n "$add" && deplibs="$add $deplibs" + fi + fi + elif test "$linkmode" = prog; then + # Here we assume that one of hardcode_direct or hardcode_minus_L + # is not unsupported. This is valid on all known static and + # shared platforms. + if test "$hardcode_direct" != unsupported; then + test -n "$old_library" && linklib="$old_library" + compile_deplibs="$dir/$linklib $compile_deplibs" + finalize_deplibs="$dir/$linklib $finalize_deplibs" + else + compile_deplibs="-l$name -L$dir $compile_deplibs" + finalize_deplibs="-l$name -L$dir $finalize_deplibs" + fi + elif test "$build_libtool_libs" = yes; then + # Not a shared library + if test "$deplibs_check_method" != pass_all; then + # We're trying link a shared library against a static one + # but the system doesn't support it. + + # Just print a warning and add the library to dependency_libs so + # that the program can be linked against the static library. + echo + $ECHO "*** Warning: This system can not link to static lib archive $lib." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have." + if test "$module" = yes; then + echo "*** But as you try to build a module library, libtool will still create " + echo "*** a static module, that should work as long as the dlopening application" + echo "*** is linked with the -dlopen flag to resolve symbols at runtime." + if test -z "$global_symbol_pipe"; then + echo + echo "*** However, this would only work if libtool was able to extract symbol" + echo "*** lists from a program, using \`nm' or equivalent, but libtool could" + echo "*** not find such a program. So, this module is probably useless." + echo "*** \`nm' from GNU binutils and a full rebuild may help." + fi + if test "$build_old_libs" = no; then + build_libtool_libs=module + build_old_libs=yes + else + build_libtool_libs=no + fi + fi + else + deplibs="$dir/$old_library $deplibs" + link_static=yes + fi + fi # link shared/static library? + + if test "$linkmode" = lib; then + if test -n "$dependency_libs" && + { test "$hardcode_into_libs" != yes || + test "$build_old_libs" = yes || + test "$link_static" = yes; }; then + # Extract -R from dependency_libs + temp_deplibs= + for libdir in $dependency_libs; do + case $libdir in + -R*) func_stripname '-R' '' "$libdir" + temp_xrpath=$func_stripname_result + case " $xrpath " in + *" $temp_xrpath "*) ;; + *) func_append xrpath " $temp_xrpath";; + esac;; + *) func_append temp_deplibs " $libdir";; + esac + done + dependency_libs="$temp_deplibs" + fi + + func_append newlib_search_path " $absdir" + # Link against this library + test "$link_static" = no && newdependency_libs="$abs_ladir/$laname $newdependency_libs" + # ... and its dependency_libs + tmp_libs= + for deplib in $dependency_libs; do + newdependency_libs="$deplib $newdependency_libs" + case $deplib in + -L*) func_stripname '-L' '' "$deplib" + func_resolve_sysroot "$func_stripname_result";; + *) func_resolve_sysroot "$deplib" ;; + esac + if $opt_preserve_dup_deps ; then + case "$tmp_libs " in + *" $func_resolve_sysroot_result "*) + func_append specialdeplibs " $func_resolve_sysroot_result" ;; + esac + fi + func_append tmp_libs " $func_resolve_sysroot_result" + done + + if test "$link_all_deplibs" != no; then + # Add the search paths of all dependency libraries + for deplib in $dependency_libs; do + path= + case $deplib in + -L*) path="$deplib" ;; + *.la) + func_resolve_sysroot "$deplib" + deplib=$func_resolve_sysroot_result + func_dirname "$deplib" "" "." + dir=$func_dirname_result + # We need an absolute path. + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) absdir="$dir" ;; + *) + absdir=`cd "$dir" && pwd` + if test -z "$absdir"; then + func_warning "cannot determine absolute directory name of \`$dir'" + absdir="$dir" + fi + ;; + esac + if $GREP "^installed=no" $deplib > /dev/null; then + case $host in + *-*-darwin*) + depdepl= + eval deplibrary_names=`${SED} -n -e 's/^library_names=\(.*\)$/\1/p' $deplib` + if test -n "$deplibrary_names" ; then + for tmp in $deplibrary_names ; do + depdepl=$tmp + done + if test -f "$absdir/$objdir/$depdepl" ; then + depdepl="$absdir/$objdir/$depdepl" + darwin_install_name=`${OTOOL} -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'` + if test -z "$darwin_install_name"; then + darwin_install_name=`${OTOOL64} -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'` + fi + func_append compiler_flags " ${wl}-dylib_file ${wl}${darwin_install_name}:${depdepl}" + func_append linker_flags " -dylib_file ${darwin_install_name}:${depdepl}" + path= + fi + fi + ;; + *) + path="-L$absdir/$objdir" + ;; + esac + else + eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` + test -z "$libdir" && \ + func_fatal_error "\`$deplib' is not a valid libtool archive" + test "$absdir" != "$libdir" && \ + func_warning "\`$deplib' seems to be moved" + + path="-L$absdir" + fi + ;; + esac + case " $deplibs " in + *" $path "*) ;; + *) deplibs="$path $deplibs" ;; + esac + done + fi # link_all_deplibs != no + fi # linkmode = lib + done # for deplib in $libs + if test "$pass" = link; then + if test "$linkmode" = "prog"; then + compile_deplibs="$new_inherited_linker_flags $compile_deplibs" + finalize_deplibs="$new_inherited_linker_flags $finalize_deplibs" + else + compiler_flags="$compiler_flags "`$ECHO " $new_inherited_linker_flags" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + fi + fi + dependency_libs="$newdependency_libs" + if test "$pass" = dlpreopen; then + # Link the dlpreopened libraries before other libraries + for deplib in $save_deplibs; do + deplibs="$deplib $deplibs" + done + fi + if test "$pass" != dlopen; then + if test "$pass" != conv; then + # Make sure lib_search_path contains only unique directories. + lib_search_path= + for dir in $newlib_search_path; do + case "$lib_search_path " in + *" $dir "*) ;; + *) func_append lib_search_path " $dir" ;; + esac + done + newlib_search_path= + fi + + if test "$linkmode,$pass" != "prog,link"; then + vars="deplibs" + else + vars="compile_deplibs finalize_deplibs" + fi + for var in $vars dependency_libs; do + # Add libraries to $var in reverse order + eval tmp_libs=\"\$$var\" + new_libs= + for deplib in $tmp_libs; do + # FIXME: Pedantically, this is the right thing to do, so + # that some nasty dependency loop isn't accidentally + # broken: + #new_libs="$deplib $new_libs" + # Pragmatically, this seems to cause very few problems in + # practice: + case $deplib in + -L*) new_libs="$deplib $new_libs" ;; + -R*) ;; + *) + # And here is the reason: when a library appears more + # than once as an explicit dependence of a library, or + # is implicitly linked in more than once by the + # compiler, it is considered special, and multiple + # occurrences thereof are not removed. Compare this + # with having the same library being listed as a + # dependency of multiple other libraries: in this case, + # we know (pedantically, we assume) the library does not + # need to be listed more than once, so we keep only the + # last copy. This is not always right, but it is rare + # enough that we require users that really mean to play + # such unportable linking tricks to link the library + # using -Wl,-lname, so that libtool does not consider it + # for duplicate removal. + case " $specialdeplibs " in + *" $deplib "*) new_libs="$deplib $new_libs" ;; + *) + case " $new_libs " in + *" $deplib "*) ;; + *) new_libs="$deplib $new_libs" ;; + esac + ;; + esac + ;; + esac + done + tmp_libs= + for deplib in $new_libs; do + case $deplib in + -L*) + case " $tmp_libs " in + *" $deplib "*) ;; + *) func_append tmp_libs " $deplib" ;; + esac + ;; + *) func_append tmp_libs " $deplib" ;; + esac + done + eval $var=\"$tmp_libs\" + done # for var + fi + # Last step: remove runtime libs from dependency_libs + # (they stay in deplibs) + tmp_libs= + for i in $dependency_libs ; do + case " $predeps $postdeps $compiler_lib_search_path " in + *" $i "*) + i="" + ;; + esac + if test -n "$i" ; then + func_append tmp_libs " $i" + fi + done + dependency_libs=$tmp_libs + done # for pass + if test "$linkmode" = prog; then + dlfiles="$newdlfiles" + fi + if test "$linkmode" = prog || test "$linkmode" = lib; then + dlprefiles="$newdlprefiles" + fi + + case $linkmode in + oldlib) + if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then + func_warning "\`-dlopen' is ignored for archives" + fi + + case " $deplibs" in + *\ -l* | *\ -L*) + func_warning "\`-l' and \`-L' are ignored for archives" ;; + esac + + test -n "$rpath" && \ + func_warning "\`-rpath' is ignored for archives" + + test -n "$xrpath" && \ + func_warning "\`-R' is ignored for archives" + + test -n "$vinfo" && \ + func_warning "\`-version-info/-version-number' is ignored for archives" + + test -n "$release" && \ + func_warning "\`-release' is ignored for archives" + + test -n "$export_symbols$export_symbols_regex" && \ + func_warning "\`-export-symbols' is ignored for archives" + + # Now set the variables for building old libraries. + build_libtool_libs=no + oldlibs="$output" + func_append objs "$old_deplibs" + ;; + + lib) + # Make sure we only generate libraries of the form `libNAME.la'. + case $outputname in + lib*) + func_stripname 'lib' '.la' "$outputname" + name=$func_stripname_result + eval shared_ext=\"$shrext_cmds\" + eval libname=\"$libname_spec\" + ;; + *) + test "$module" = no && \ + func_fatal_help "libtool library \`$output' must begin with \`lib'" + + if test "$need_lib_prefix" != no; then + # Add the "lib" prefix for modules if required + func_stripname '' '.la' "$outputname" + name=$func_stripname_result + eval shared_ext=\"$shrext_cmds\" + eval libname=\"$libname_spec\" + else + func_stripname '' '.la' "$outputname" + libname=$func_stripname_result + fi + ;; + esac + + if test -n "$objs"; then + if test "$deplibs_check_method" != pass_all; then + func_fatal_error "cannot build libtool library \`$output' from non-libtool objects on this host:$objs" + else + echo + $ECHO "*** Warning: Linking the shared library $output against the non-libtool" + $ECHO "*** objects $objs is not portable!" + func_append libobjs " $objs" + fi + fi + + test "$dlself" != no && \ + func_warning "\`-dlopen self' is ignored for libtool libraries" + + set dummy $rpath + shift + test "$#" -gt 1 && \ + func_warning "ignoring multiple \`-rpath's for a libtool library" + + install_libdir="$1" + + oldlibs= + if test -z "$rpath"; then + if test "$build_libtool_libs" = yes; then + # Building a libtool convenience library. + # Some compilers have problems with a `.al' extension so + # convenience libraries should have the same extension an + # archive normally would. + oldlibs="$output_objdir/$libname.$libext $oldlibs" + build_libtool_libs=convenience + build_old_libs=yes + fi + + test -n "$vinfo" && \ + func_warning "\`-version-info/-version-number' is ignored for convenience libraries" + + test -n "$release" && \ + func_warning "\`-release' is ignored for convenience libraries" + else + + # Parse the version information argument. + save_ifs="$IFS"; IFS=':' + set dummy $vinfo 0 0 0 + shift + IFS="$save_ifs" + + test -n "$7" && \ + func_fatal_help "too many parameters to \`-version-info'" + + # convert absolute version numbers to libtool ages + # this retains compatibility with .la files and attempts + # to make the code below a bit more comprehensible + + case $vinfo_number in + yes) + number_major="$1" + number_minor="$2" + number_revision="$3" + # + # There are really only two kinds -- those that + # use the current revision as the major version + # and those that subtract age and use age as + # a minor version. But, then there is irix + # which has an extra 1 added just for fun + # + case $version_type in + # correct linux to gnu/linux during the next big refactor + darwin|linux|osf|windows|none) + func_arith $number_major + $number_minor + current=$func_arith_result + age="$number_minor" + revision="$number_revision" + ;; + freebsd-aout|freebsd-elf|qnx|sunos) + current="$number_major" + revision="$number_minor" + age="0" + ;; + irix|nonstopux) + func_arith $number_major + $number_minor + current=$func_arith_result + age="$number_minor" + revision="$number_minor" + lt_irix_increment=no + ;; + esac + ;; + no) + current="$1" + revision="$2" + age="$3" + ;; + esac + + # Check that each of the things are valid numbers. + case $current in + 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; + *) + func_error "CURRENT \`$current' must be a nonnegative integer" + func_fatal_error "\`$vinfo' is not valid version information" + ;; + esac + + case $revision in + 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; + *) + func_error "REVISION \`$revision' must be a nonnegative integer" + func_fatal_error "\`$vinfo' is not valid version information" + ;; + esac + + case $age in + 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; + *) + func_error "AGE \`$age' must be a nonnegative integer" + func_fatal_error "\`$vinfo' is not valid version information" + ;; + esac + + if test "$age" -gt "$current"; then + func_error "AGE \`$age' is greater than the current interface number \`$current'" + func_fatal_error "\`$vinfo' is not valid version information" + fi + + # Calculate the version variables. + major= + versuffix= + verstring= + case $version_type in + none) ;; + + darwin) + # Like Linux, but with the current version available in + # verstring for coding it into the library header + func_arith $current - $age + major=.$func_arith_result + versuffix="$major.$age.$revision" + # Darwin ld doesn't like 0 for these options... + func_arith $current + 1 + minor_current=$func_arith_result + xlcverstring="${wl}-compatibility_version ${wl}$minor_current ${wl}-current_version ${wl}$minor_current.$revision" + verstring="-compatibility_version $minor_current -current_version $minor_current.$revision" + ;; + + freebsd-aout) + major=".$current" + versuffix=".$current.$revision"; + ;; + + freebsd-elf) + major=".$current" + versuffix=".$current" + ;; + + irix | nonstopux) + if test "X$lt_irix_increment" = "Xno"; then + func_arith $current - $age + else + func_arith $current - $age + 1 + fi + major=$func_arith_result + + case $version_type in + nonstopux) verstring_prefix=nonstopux ;; + *) verstring_prefix=sgi ;; + esac + verstring="$verstring_prefix$major.$revision" + + # Add in all the interfaces that we are compatible with. + loop=$revision + while test "$loop" -ne 0; do + func_arith $revision - $loop + iface=$func_arith_result + func_arith $loop - 1 + loop=$func_arith_result + verstring="$verstring_prefix$major.$iface:$verstring" + done + + # Before this point, $major must not contain `.'. + major=.$major + versuffix="$major.$revision" + ;; + + linux) # correct to gnu/linux during the next big refactor + func_arith $current - $age + major=.$func_arith_result + versuffix="$major.$age.$revision" + ;; + + osf) + func_arith $current - $age + major=.$func_arith_result + versuffix=".$current.$age.$revision" + verstring="$current.$age.$revision" + + # Add in all the interfaces that we are compatible with. + loop=$age + while test "$loop" -ne 0; do + func_arith $current - $loop + iface=$func_arith_result + func_arith $loop - 1 + loop=$func_arith_result + verstring="$verstring:${iface}.0" + done + + # Make executables depend on our current version. + func_append verstring ":${current}.0" + ;; + + qnx) + major=".$current" + versuffix=".$current" + ;; + + sunos) + major=".$current" + versuffix=".$current.$revision" + ;; + + windows) + # Use '-' rather than '.', since we only want one + # extension on DOS 8.3 filesystems. + func_arith $current - $age + major=$func_arith_result + versuffix="-$major" + ;; + + *) + func_fatal_configuration "unknown library version type \`$version_type'" + ;; + esac + + # Clear the version info if we defaulted, and they specified a release. + if test -z "$vinfo" && test -n "$release"; then + major= + case $version_type in + darwin) + # we can't check for "0.0" in archive_cmds due to quoting + # problems, so we reset it completely + verstring= + ;; + *) + verstring="0.0" + ;; + esac + if test "$need_version" = no; then + versuffix= + else + versuffix=".0.0" + fi + fi + + # Remove version info from name if versioning should be avoided + if test "$avoid_version" = yes && test "$need_version" = no; then + major= + versuffix= + verstring="" + fi + + # Check to see if the archive will have undefined symbols. + if test "$allow_undefined" = yes; then + if test "$allow_undefined_flag" = unsupported; then + func_warning "undefined symbols not allowed in $host shared libraries" + build_libtool_libs=no + build_old_libs=yes + fi + else + # Don't allow undefined symbols. + allow_undefined_flag="$no_undefined_flag" + fi + + fi + + func_generate_dlsyms "$libname" "$libname" "yes" + func_append libobjs " $symfileobj" + test "X$libobjs" = "X " && libobjs= + + if test "$opt_mode" != relink; then + # Remove our outputs, but don't remove object files since they + # may have been created when compiling PIC objects. + removelist= + tempremovelist=`$ECHO "$output_objdir/*"` + for p in $tempremovelist; do + case $p in + *.$objext | *.gcno) + ;; + $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/${libname}${release}.*) + if test "X$precious_files_regex" != "X"; then + if $ECHO "$p" | $EGREP -e "$precious_files_regex" >/dev/null 2>&1 + then + continue + fi + fi + func_append removelist " $p" + ;; + *) ;; + esac + done + test -n "$removelist" && \ + func_show_eval "${RM}r \$removelist" + fi + + # Now set the variables for building old libraries. + if test "$build_old_libs" = yes && test "$build_libtool_libs" != convenience ; then + func_append oldlibs " $output_objdir/$libname.$libext" + + # Transform .lo files to .o files. + oldobjs="$objs "`$ECHO "$libobjs" | $SP2NL | $SED "/\.${libext}$/d; $lo2o" | $NL2SP` + fi + + # Eliminate all temporary directories. + #for path in $notinst_path; do + # lib_search_path=`$ECHO "$lib_search_path " | $SED "s% $path % %g"` + # deplibs=`$ECHO "$deplibs " | $SED "s% -L$path % %g"` + # dependency_libs=`$ECHO "$dependency_libs " | $SED "s% -L$path % %g"` + #done + + if test -n "$xrpath"; then + # If the user specified any rpath flags, then add them. + temp_xrpath= + for libdir in $xrpath; do + func_replace_sysroot "$libdir" + func_append temp_xrpath " -R$func_replace_sysroot_result" + case "$finalize_rpath " in + *" $libdir "*) ;; + *) func_append finalize_rpath " $libdir" ;; + esac + done + if test "$hardcode_into_libs" != yes || test "$build_old_libs" = yes; then + dependency_libs="$temp_xrpath $dependency_libs" + fi + fi + + # Make sure dlfiles contains only unique files that won't be dlpreopened + old_dlfiles="$dlfiles" + dlfiles= + for lib in $old_dlfiles; do + case " $dlprefiles $dlfiles " in + *" $lib "*) ;; + *) func_append dlfiles " $lib" ;; + esac + done + + # Make sure dlprefiles contains only unique files + old_dlprefiles="$dlprefiles" + dlprefiles= + for lib in $old_dlprefiles; do + case "$dlprefiles " in + *" $lib "*) ;; + *) func_append dlprefiles " $lib" ;; + esac + done + + if test "$build_libtool_libs" = yes; then + if test -n "$rpath"; then + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos* | *-cegcc* | *-*-haiku*) + # these systems don't actually have a c library (as such)! + ;; + *-*-rhapsody* | *-*-darwin1.[012]) + # Rhapsody C library is in the System framework + func_append deplibs " System.ltframework" + ;; + *-*-netbsd*) + # Don't link with libc until the a.out ld.so is fixed. + ;; + *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) + # Do not include libc due to us having libc/libc_r. + ;; + *-*-sco3.2v5* | *-*-sco5v6*) + # Causes problems with __ctype + ;; + *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) + # Compiler inserts libc in the correct place for threads to work + ;; + *) + # Add libc to deplibs on all other systems if necessary. + if test "$build_libtool_need_lc" = "yes"; then + func_append deplibs " -lc" + fi + ;; + esac + fi + + # Transform deplibs into only deplibs that can be linked in shared. + name_save=$name + libname_save=$libname + release_save=$release + versuffix_save=$versuffix + major_save=$major + # I'm not sure if I'm treating the release correctly. I think + # release should show up in the -l (ie -lgmp5) so we don't want to + # add it in twice. Is that correct? + release="" + versuffix="" + major="" + newdeplibs= + droppeddeps=no + case $deplibs_check_method in + pass_all) + # Don't check for shared/static. Everything works. + # This might be a little naive. We might want to check + # whether the library exists or not. But this is on + # osf3 & osf4 and I'm not really sure... Just + # implementing what was already the behavior. + newdeplibs=$deplibs + ;; + test_compile) + # This code stresses the "libraries are programs" paradigm to its + # limits. Maybe even breaks it. We compile a program, linking it + # against the deplibs as a proxy for the library. Then we can check + # whether they linked in statically or dynamically with ldd. + $opt_dry_run || $RM conftest.c + cat > conftest.c </dev/null` + $nocaseglob + else + potential_libs=`ls $i/$libnameglob[.-]* 2>/dev/null` + fi + for potent_lib in $potential_libs; do + # Follow soft links. + if ls -lLd "$potent_lib" 2>/dev/null | + $GREP " -> " >/dev/null; then + continue + fi + # The statement above tries to avoid entering an + # endless loop below, in case of cyclic links. + # We might still enter an endless loop, since a link + # loop can be closed while we follow links, + # but so what? + potlib="$potent_lib" + while test -h "$potlib" 2>/dev/null; do + potliblink=`ls -ld $potlib | ${SED} 's/.* -> //'` + case $potliblink in + [\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";; + *) potlib=`$ECHO "$potlib" | $SED 's,[^/]*$,,'`"$potliblink";; + esac + done + if eval $file_magic_cmd \"\$potlib\" 2>/dev/null | + $SED -e 10q | + $EGREP "$file_magic_regex" > /dev/null; then + func_append newdeplibs " $a_deplib" + a_deplib="" + break 2 + fi + done + done + fi + if test -n "$a_deplib" ; then + droppeddeps=yes + echo + $ECHO "*** Warning: linker path does not have real file for library $a_deplib." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have" + echo "*** because I did check the linker path looking for a file starting" + if test -z "$potlib" ; then + $ECHO "*** with $libname but no candidates were found. (...for file magic test)" + else + $ECHO "*** with $libname and none of the candidates passed a file format test" + $ECHO "*** using a file magic. Last file checked: $potlib" + fi + fi + ;; + *) + # Add a -L argument. + func_append newdeplibs " $a_deplib" + ;; + esac + done # Gone through all deplibs. + ;; + match_pattern*) + set dummy $deplibs_check_method; shift + match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"` + for a_deplib in $deplibs; do + case $a_deplib in + -l*) + func_stripname -l '' "$a_deplib" + name=$func_stripname_result + if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then + case " $predeps $postdeps " in + *" $a_deplib "*) + func_append newdeplibs " $a_deplib" + a_deplib="" + ;; + esac + fi + if test -n "$a_deplib" ; then + libname=`eval "\\$ECHO \"$libname_spec\""` + for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do + potential_libs=`ls $i/$libname[.-]* 2>/dev/null` + for potent_lib in $potential_libs; do + potlib="$potent_lib" # see symlink-check above in file_magic test + if eval "\$ECHO \"$potent_lib\"" 2>/dev/null | $SED 10q | \ + $EGREP "$match_pattern_regex" > /dev/null; then + func_append newdeplibs " $a_deplib" + a_deplib="" + break 2 + fi + done + done + fi + if test -n "$a_deplib" ; then + droppeddeps=yes + echo + $ECHO "*** Warning: linker path does not have real file for library $a_deplib." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have" + echo "*** because I did check the linker path looking for a file starting" + if test -z "$potlib" ; then + $ECHO "*** with $libname but no candidates were found. (...for regex pattern test)" + else + $ECHO "*** with $libname and none of the candidates passed a file format test" + $ECHO "*** using a regex pattern. Last file checked: $potlib" + fi + fi + ;; + *) + # Add a -L argument. + func_append newdeplibs " $a_deplib" + ;; + esac + done # Gone through all deplibs. + ;; + none | unknown | *) + newdeplibs="" + tmp_deplibs=`$ECHO " $deplibs" | $SED 's/ -lc$//; s/ -[LR][^ ]*//g'` + if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then + for i in $predeps $postdeps ; do + # can't use Xsed below, because $i might contain '/' + tmp_deplibs=`$ECHO " $tmp_deplibs" | $SED "s,$i,,"` + done + fi + case $tmp_deplibs in + *[!\ \ ]*) + echo + if test "X$deplibs_check_method" = "Xnone"; then + echo "*** Warning: inter-library dependencies are not supported in this platform." + else + echo "*** Warning: inter-library dependencies are not known to be supported." + fi + echo "*** All declared inter-library dependencies are being dropped." + droppeddeps=yes + ;; + esac + ;; + esac + versuffix=$versuffix_save + major=$major_save + release=$release_save + libname=$libname_save + name=$name_save + + case $host in + *-*-rhapsody* | *-*-darwin1.[012]) + # On Rhapsody replace the C library with the System framework + newdeplibs=`$ECHO " $newdeplibs" | $SED 's/ -lc / System.ltframework /'` + ;; + esac + + if test "$droppeddeps" = yes; then + if test "$module" = yes; then + echo + echo "*** Warning: libtool could not satisfy all declared inter-library" + $ECHO "*** dependencies of module $libname. Therefore, libtool will create" + echo "*** a static module, that should work as long as the dlopening" + echo "*** application is linked with the -dlopen flag." + if test -z "$global_symbol_pipe"; then + echo + echo "*** However, this would only work if libtool was able to extract symbol" + echo "*** lists from a program, using \`nm' or equivalent, but libtool could" + echo "*** not find such a program. So, this module is probably useless." + echo "*** \`nm' from GNU binutils and a full rebuild may help." + fi + if test "$build_old_libs" = no; then + oldlibs="$output_objdir/$libname.$libext" + build_libtool_libs=module + build_old_libs=yes + else + build_libtool_libs=no + fi + else + echo "*** The inter-library dependencies that have been dropped here will be" + echo "*** automatically added whenever a program is linked with this library" + echo "*** or is declared to -dlopen it." + + if test "$allow_undefined" = no; then + echo + echo "*** Since this library must not contain undefined symbols," + echo "*** because either the platform does not support them or" + echo "*** it was explicitly requested with -no-undefined," + echo "*** libtool will only create a static version of it." + if test "$build_old_libs" = no; then + oldlibs="$output_objdir/$libname.$libext" + build_libtool_libs=module + build_old_libs=yes + else + build_libtool_libs=no + fi + fi + fi + fi + # Done checking deplibs! + deplibs=$newdeplibs + fi + # Time to change all our "foo.ltframework" stuff back to "-framework foo" + case $host in + *-*-darwin*) + newdeplibs=`$ECHO " $newdeplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + new_inherited_linker_flags=`$ECHO " $new_inherited_linker_flags" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + deplibs=`$ECHO " $deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + ;; + esac + + # move library search paths that coincide with paths to not yet + # installed libraries to the beginning of the library search list + new_libs= + for path in $notinst_path; do + case " $new_libs " in + *" -L$path/$objdir "*) ;; + *) + case " $deplibs " in + *" -L$path/$objdir "*) + func_append new_libs " -L$path/$objdir" ;; + esac + ;; + esac + done + for deplib in $deplibs; do + case $deplib in + -L*) + case " $new_libs " in + *" $deplib "*) ;; + *) func_append new_libs " $deplib" ;; + esac + ;; + *) func_append new_libs " $deplib" ;; + esac + done + deplibs="$new_libs" + + # All the library-specific variables (install_libdir is set above). + library_names= + old_library= + dlname= + + # Test again, we may have decided not to build it any more + if test "$build_libtool_libs" = yes; then + # Remove ${wl} instances when linking with ld. + # FIXME: should test the right _cmds variable. + case $archive_cmds in + *\$LD\ *) wl= ;; + esac + if test "$hardcode_into_libs" = yes; then + # Hardcode the library paths + hardcode_libdirs= + dep_rpath= + rpath="$finalize_rpath" + test "$opt_mode" != relink && rpath="$compile_rpath$rpath" + for libdir in $rpath; do + if test -n "$hardcode_libdir_flag_spec"; then + if test -n "$hardcode_libdir_separator"; then + func_replace_sysroot "$libdir" + libdir=$func_replace_sysroot_result + if test -z "$hardcode_libdirs"; then + hardcode_libdirs="$libdir" + else + # Just accumulate the unique libdirs. + case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in + *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) + ;; + *) + func_append hardcode_libdirs "$hardcode_libdir_separator$libdir" + ;; + esac + fi + else + eval flag=\"$hardcode_libdir_flag_spec\" + func_append dep_rpath " $flag" + fi + elif test -n "$runpath_var"; then + case "$perm_rpath " in + *" $libdir "*) ;; + *) func_append perm_rpath " $libdir" ;; + esac + fi + done + # Substitute the hardcoded libdirs into the rpath. + if test -n "$hardcode_libdir_separator" && + test -n "$hardcode_libdirs"; then + libdir="$hardcode_libdirs" + eval "dep_rpath=\"$hardcode_libdir_flag_spec\"" + fi + if test -n "$runpath_var" && test -n "$perm_rpath"; then + # We should set the runpath_var. + rpath= + for dir in $perm_rpath; do + func_append rpath "$dir:" + done + eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var" + fi + test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs" + fi + + shlibpath="$finalize_shlibpath" + test "$opt_mode" != relink && shlibpath="$compile_shlibpath$shlibpath" + if test -n "$shlibpath"; then + eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var" + fi + + # Get the real and link names of the library. + eval shared_ext=\"$shrext_cmds\" + eval library_names=\"$library_names_spec\" + set dummy $library_names + shift + realname="$1" + shift + + if test -n "$soname_spec"; then + eval soname=\"$soname_spec\" + else + soname="$realname" + fi + if test -z "$dlname"; then + dlname=$soname + fi + + lib="$output_objdir/$realname" + linknames= + for link + do + func_append linknames " $link" + done + + # Use standard objects if they are pic + test -z "$pic_flag" && libobjs=`$ECHO "$libobjs" | $SP2NL | $SED "$lo2o" | $NL2SP` + test "X$libobjs" = "X " && libobjs= + + delfiles= + if test -n "$export_symbols" && test -n "$include_expsyms"; then + $opt_dry_run || cp "$export_symbols" "$output_objdir/$libname.uexp" + export_symbols="$output_objdir/$libname.uexp" + func_append delfiles " $export_symbols" + fi + + orig_export_symbols= + case $host_os in + cygwin* | mingw* | cegcc*) + if test -n "$export_symbols" && test -z "$export_symbols_regex"; then + # exporting using user supplied symfile + if test "x`$SED 1q $export_symbols`" != xEXPORTS; then + # and it's NOT already a .def file. Must figure out + # which of the given symbols are data symbols and tag + # them as such. So, trigger use of export_symbols_cmds. + # export_symbols gets reassigned inside the "prepare + # the list of exported symbols" if statement, so the + # include_expsyms logic still works. + orig_export_symbols="$export_symbols" + export_symbols= + always_export_symbols=yes + fi + fi + ;; + esac + + # Prepare the list of exported symbols + if test -z "$export_symbols"; then + if test "$always_export_symbols" = yes || test -n "$export_symbols_regex"; then + func_verbose "generating symbol list for \`$libname.la'" + export_symbols="$output_objdir/$libname.exp" + $opt_dry_run || $RM $export_symbols + cmds=$export_symbols_cmds + save_ifs="$IFS"; IFS='~' + for cmd1 in $cmds; do + IFS="$save_ifs" + # Take the normal branch if the nm_file_list_spec branch + # doesn't work or if tool conversion is not needed. + case $nm_file_list_spec~$to_tool_file_cmd in + *~func_convert_file_noop | *~func_convert_file_msys_to_w32 | ~*) + try_normal_branch=yes + eval cmd=\"$cmd1\" + func_len " $cmd" + len=$func_len_result + ;; + *) + try_normal_branch=no + ;; + esac + if test "$try_normal_branch" = yes \ + && { test "$len" -lt "$max_cmd_len" \ + || test "$max_cmd_len" -le -1; } + then + func_show_eval "$cmd" 'exit $?' + skipped_export=false + elif test -n "$nm_file_list_spec"; then + func_basename "$output" + output_la=$func_basename_result + save_libobjs=$libobjs + save_output=$output + output=${output_objdir}/${output_la}.nm + func_to_tool_file "$output" + libobjs=$nm_file_list_spec$func_to_tool_file_result + func_append delfiles " $output" + func_verbose "creating $NM input file list: $output" + for obj in $save_libobjs; do + func_to_tool_file "$obj" + $ECHO "$func_to_tool_file_result" + done > "$output" + eval cmd=\"$cmd1\" + func_show_eval "$cmd" 'exit $?' + output=$save_output + libobjs=$save_libobjs + skipped_export=false + else + # The command line is too long to execute in one step. + func_verbose "using reloadable object file for export list..." + skipped_export=: + # Break out early, otherwise skipped_export may be + # set to false by a later but shorter cmd. + break + fi + done + IFS="$save_ifs" + if test -n "$export_symbols_regex" && test "X$skipped_export" != "X:"; then + func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' + func_show_eval '$MV "${export_symbols}T" "$export_symbols"' + fi + fi + fi + + if test -n "$export_symbols" && test -n "$include_expsyms"; then + tmp_export_symbols="$export_symbols" + test -n "$orig_export_symbols" && tmp_export_symbols="$orig_export_symbols" + $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"' + fi + + if test "X$skipped_export" != "X:" && test -n "$orig_export_symbols"; then + # The given exports_symbols file has to be filtered, so filter it. + func_verbose "filter symbol list for \`$libname.la' to tag DATA exports" + # FIXME: $output_objdir/$libname.filter potentially contains lots of + # 's' commands which not all seds can handle. GNU sed should be fine + # though. Also, the filter scales superlinearly with the number of + # global variables. join(1) would be nice here, but unfortunately + # isn't a blessed tool. + $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter + func_append delfiles " $export_symbols $output_objdir/$libname.filter" + export_symbols=$output_objdir/$libname.def + $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols + fi + + tmp_deplibs= + for test_deplib in $deplibs; do + case " $convenience " in + *" $test_deplib "*) ;; + *) + func_append tmp_deplibs " $test_deplib" + ;; + esac + done + deplibs="$tmp_deplibs" + + if test -n "$convenience"; then + if test -n "$whole_archive_flag_spec" && + test "$compiler_needs_object" = yes && + test -z "$libobjs"; then + # extract the archives, so we have objects to list. + # TODO: could optimize this to just extract one archive. + whole_archive_flag_spec= + fi + if test -n "$whole_archive_flag_spec"; then + save_libobjs=$libobjs + eval libobjs=\"\$libobjs $whole_archive_flag_spec\" + test "X$libobjs" = "X " && libobjs= + else + gentop="$output_objdir/${outputname}x" + func_append generated " $gentop" + + func_extract_archives $gentop $convenience + func_append libobjs " $func_extract_archives_result" + test "X$libobjs" = "X " && libobjs= + fi + fi + + if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then + eval flag=\"$thread_safe_flag_spec\" + func_append linker_flags " $flag" + fi + + # Make a backup of the uninstalled library when relinking + if test "$opt_mode" = relink; then + $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}U && $MV $realname ${realname}U)' || exit $? + fi + + # Do each of the archive commands. + if test "$module" = yes && test -n "$module_cmds" ; then + if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then + eval test_cmds=\"$module_expsym_cmds\" + cmds=$module_expsym_cmds + else + eval test_cmds=\"$module_cmds\" + cmds=$module_cmds + fi + else + if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then + eval test_cmds=\"$archive_expsym_cmds\" + cmds=$archive_expsym_cmds + else + eval test_cmds=\"$archive_cmds\" + cmds=$archive_cmds + fi + fi + + if test "X$skipped_export" != "X:" && + func_len " $test_cmds" && + len=$func_len_result && + test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then + : + else + # The command line is too long to link in one step, link piecewise + # or, if using GNU ld and skipped_export is not :, use a linker + # script. + + # Save the value of $output and $libobjs because we want to + # use them later. If we have whole_archive_flag_spec, we + # want to use save_libobjs as it was before + # whole_archive_flag_spec was expanded, because we can't + # assume the linker understands whole_archive_flag_spec. + # This may have to be revisited, in case too many + # convenience libraries get linked in and end up exceeding + # the spec. + if test -z "$convenience" || test -z "$whole_archive_flag_spec"; then + save_libobjs=$libobjs + fi + save_output=$output + func_basename "$output" + output_la=$func_basename_result + + # Clear the reloadable object creation command queue and + # initialize k to one. + test_cmds= + concat_cmds= + objlist= + last_robj= + k=1 + + if test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "$with_gnu_ld" = yes; then + output=${output_objdir}/${output_la}.lnkscript + func_verbose "creating GNU ld script: $output" + echo 'INPUT (' > $output + for obj in $save_libobjs + do + func_to_tool_file "$obj" + $ECHO "$func_to_tool_file_result" >> $output + done + echo ')' >> $output + func_append delfiles " $output" + func_to_tool_file "$output" + output=$func_to_tool_file_result + elif test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "X$file_list_spec" != X; then + output=${output_objdir}/${output_la}.lnk + func_verbose "creating linker input file list: $output" + : > $output + set x $save_libobjs + shift + firstobj= + if test "$compiler_needs_object" = yes; then + firstobj="$1 " + shift + fi + for obj + do + func_to_tool_file "$obj" + $ECHO "$func_to_tool_file_result" >> $output + done + func_append delfiles " $output" + func_to_tool_file "$output" + output=$firstobj\"$file_list_spec$func_to_tool_file_result\" + else + if test -n "$save_libobjs"; then + func_verbose "creating reloadable object files..." + output=$output_objdir/$output_la-${k}.$objext + eval test_cmds=\"$reload_cmds\" + func_len " $test_cmds" + len0=$func_len_result + len=$len0 + + # Loop over the list of objects to be linked. + for obj in $save_libobjs + do + func_len " $obj" + func_arith $len + $func_len_result + len=$func_arith_result + if test "X$objlist" = X || + test "$len" -lt "$max_cmd_len"; then + func_append objlist " $obj" + else + # The command $test_cmds is almost too long, add a + # command to the queue. + if test "$k" -eq 1 ; then + # The first file doesn't have a previous command to add. + reload_objs=$objlist + eval concat_cmds=\"$reload_cmds\" + else + # All subsequent reloadable object files will link in + # the last one created. + reload_objs="$objlist $last_robj" + eval concat_cmds=\"\$concat_cmds~$reload_cmds~\$RM $last_robj\" + fi + last_robj=$output_objdir/$output_la-${k}.$objext + func_arith $k + 1 + k=$func_arith_result + output=$output_objdir/$output_la-${k}.$objext + objlist=" $obj" + func_len " $last_robj" + func_arith $len0 + $func_len_result + len=$func_arith_result + fi + done + # Handle the remaining objects by creating one last + # reloadable object file. All subsequent reloadable object + # files will link in the last one created. + test -z "$concat_cmds" || concat_cmds=$concat_cmds~ + reload_objs="$objlist $last_robj" + eval concat_cmds=\"\${concat_cmds}$reload_cmds\" + if test -n "$last_robj"; then + eval concat_cmds=\"\${concat_cmds}~\$RM $last_robj\" + fi + func_append delfiles " $output" + + else + output= + fi + + if ${skipped_export-false}; then + func_verbose "generating symbol list for \`$libname.la'" + export_symbols="$output_objdir/$libname.exp" + $opt_dry_run || $RM $export_symbols + libobjs=$output + # Append the command to create the export file. + test -z "$concat_cmds" || concat_cmds=$concat_cmds~ + eval concat_cmds=\"\$concat_cmds$export_symbols_cmds\" + if test -n "$last_robj"; then + eval concat_cmds=\"\$concat_cmds~\$RM $last_robj\" + fi + fi + + test -n "$save_libobjs" && + func_verbose "creating a temporary reloadable object file: $output" + + # Loop through the commands generated above and execute them. + save_ifs="$IFS"; IFS='~' + for cmd in $concat_cmds; do + IFS="$save_ifs" + $opt_silent || { + func_quote_for_expand "$cmd" + eval "func_echo $func_quote_for_expand_result" + } + $opt_dry_run || eval "$cmd" || { + lt_exit=$? + + # Restore the uninstalled library and exit + if test "$opt_mode" = relink; then + ( cd "$output_objdir" && \ + $RM "${realname}T" && \ + $MV "${realname}U" "$realname" ) + fi + + exit $lt_exit + } + done + IFS="$save_ifs" + + if test -n "$export_symbols_regex" && ${skipped_export-false}; then + func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' + func_show_eval '$MV "${export_symbols}T" "$export_symbols"' + fi + fi + + if ${skipped_export-false}; then + if test -n "$export_symbols" && test -n "$include_expsyms"; then + tmp_export_symbols="$export_symbols" + test -n "$orig_export_symbols" && tmp_export_symbols="$orig_export_symbols" + $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"' + fi + + if test -n "$orig_export_symbols"; then + # The given exports_symbols file has to be filtered, so filter it. + func_verbose "filter symbol list for \`$libname.la' to tag DATA exports" + # FIXME: $output_objdir/$libname.filter potentially contains lots of + # 's' commands which not all seds can handle. GNU sed should be fine + # though. Also, the filter scales superlinearly with the number of + # global variables. join(1) would be nice here, but unfortunately + # isn't a blessed tool. + $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter + func_append delfiles " $export_symbols $output_objdir/$libname.filter" + export_symbols=$output_objdir/$libname.def + $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols + fi + fi + + libobjs=$output + # Restore the value of output. + output=$save_output + + if test -n "$convenience" && test -n "$whole_archive_flag_spec"; then + eval libobjs=\"\$libobjs $whole_archive_flag_spec\" + test "X$libobjs" = "X " && libobjs= + fi + # Expand the library linking commands again to reset the + # value of $libobjs for piecewise linking. + + # Do each of the archive commands. + if test "$module" = yes && test -n "$module_cmds" ; then + if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then + cmds=$module_expsym_cmds + else + cmds=$module_cmds + fi + else + if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then + cmds=$archive_expsym_cmds + else + cmds=$archive_cmds + fi + fi + fi + + if test -n "$delfiles"; then + # Append the command to remove temporary files to $cmds. + eval cmds=\"\$cmds~\$RM $delfiles\" + fi + + # Add any objects from preloaded convenience libraries + if test -n "$dlprefiles"; then + gentop="$output_objdir/${outputname}x" + func_append generated " $gentop" + + func_extract_archives $gentop $dlprefiles + func_append libobjs " $func_extract_archives_result" + test "X$libobjs" = "X " && libobjs= + fi + + save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + eval cmd=\"$cmd\" + $opt_silent || { + func_quote_for_expand "$cmd" + eval "func_echo $func_quote_for_expand_result" + } + $opt_dry_run || eval "$cmd" || { + lt_exit=$? + + # Restore the uninstalled library and exit + if test "$opt_mode" = relink; then + ( cd "$output_objdir" && \ + $RM "${realname}T" && \ + $MV "${realname}U" "$realname" ) + fi + + exit $lt_exit + } + done + IFS="$save_ifs" + + # Restore the uninstalled library and exit + if test "$opt_mode" = relink; then + $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}T && $MV $realname ${realname}T && $MV ${realname}U $realname)' || exit $? + + if test -n "$convenience"; then + if test -z "$whole_archive_flag_spec"; then + func_show_eval '${RM}r "$gentop"' + fi + fi + + exit $EXIT_SUCCESS + fi + + # Create links to the real library. + for linkname in $linknames; do + if test "$realname" != "$linkname"; then + func_show_eval '(cd "$output_objdir" && $RM "$linkname" && $LN_S "$realname" "$linkname")' 'exit $?' + fi + done + + # If -module or -export-dynamic was specified, set the dlname. + if test "$module" = yes || test "$export_dynamic" = yes; then + # On all known operating systems, these are identical. + dlname="$soname" + fi + fi + ;; + + obj) + if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then + func_warning "\`-dlopen' is ignored for objects" + fi + + case " $deplibs" in + *\ -l* | *\ -L*) + func_warning "\`-l' and \`-L' are ignored for objects" ;; + esac + + test -n "$rpath" && \ + func_warning "\`-rpath' is ignored for objects" + + test -n "$xrpath" && \ + func_warning "\`-R' is ignored for objects" + + test -n "$vinfo" && \ + func_warning "\`-version-info' is ignored for objects" + + test -n "$release" && \ + func_warning "\`-release' is ignored for objects" + + case $output in + *.lo) + test -n "$objs$old_deplibs" && \ + func_fatal_error "cannot build library object \`$output' from non-libtool objects" + + libobj=$output + func_lo2o "$libobj" + obj=$func_lo2o_result + ;; + *) + libobj= + obj="$output" + ;; + esac + + # Delete the old objects. + $opt_dry_run || $RM $obj $libobj + + # Objects from convenience libraries. This assumes + # single-version convenience libraries. Whenever we create + # different ones for PIC/non-PIC, this we'll have to duplicate + # the extraction. + reload_conv_objs= + gentop= + # reload_cmds runs $LD directly, so let us get rid of + # -Wl from whole_archive_flag_spec and hope we can get by with + # turning comma into space.. + wl= + + if test -n "$convenience"; then + if test -n "$whole_archive_flag_spec"; then + eval tmp_whole_archive_flags=\"$whole_archive_flag_spec\" + reload_conv_objs=$reload_objs\ `$ECHO "$tmp_whole_archive_flags" | $SED 's|,| |g'` + else + gentop="$output_objdir/${obj}x" + func_append generated " $gentop" + + func_extract_archives $gentop $convenience + reload_conv_objs="$reload_objs $func_extract_archives_result" + fi + fi + + # If we're not building shared, we need to use non_pic_objs + test "$build_libtool_libs" != yes && libobjs="$non_pic_objects" + + # Create the old-style object. + reload_objs="$objs$old_deplibs "`$ECHO "$libobjs" | $SP2NL | $SED "/\.${libext}$/d; /\.lib$/d; $lo2o" | $NL2SP`" $reload_conv_objs" ### testsuite: skip nested quoting test + + output="$obj" + func_execute_cmds "$reload_cmds" 'exit $?' + + # Exit if we aren't doing a library object file. + if test -z "$libobj"; then + if test -n "$gentop"; then + func_show_eval '${RM}r "$gentop"' + fi + + exit $EXIT_SUCCESS + fi + + if test "$build_libtool_libs" != yes; then + if test -n "$gentop"; then + func_show_eval '${RM}r "$gentop"' + fi + + # Create an invalid libtool object if no PIC, so that we don't + # accidentally link it into a program. + # $show "echo timestamp > $libobj" + # $opt_dry_run || eval "echo timestamp > $libobj" || exit $? + exit $EXIT_SUCCESS + fi + + if test -n "$pic_flag" || test "$pic_mode" != default; then + # Only do commands if we really have different PIC objects. + reload_objs="$libobjs $reload_conv_objs" + output="$libobj" + func_execute_cmds "$reload_cmds" 'exit $?' + fi + + if test -n "$gentop"; then + func_show_eval '${RM}r "$gentop"' + fi + + exit $EXIT_SUCCESS + ;; + + prog) + case $host in + *cygwin*) func_stripname '' '.exe' "$output" + output=$func_stripname_result.exe;; + esac + test -n "$vinfo" && \ + func_warning "\`-version-info' is ignored for programs" + + test -n "$release" && \ + func_warning "\`-release' is ignored for programs" + + test "$preload" = yes \ + && test "$dlopen_support" = unknown \ + && test "$dlopen_self" = unknown \ + && test "$dlopen_self_static" = unknown && \ + func_warning "\`LT_INIT([dlopen])' not used. Assuming no dlopen support." + + case $host in + *-*-rhapsody* | *-*-darwin1.[012]) + # On Rhapsody replace the C library is the System framework + compile_deplibs=`$ECHO " $compile_deplibs" | $SED 's/ -lc / System.ltframework /'` + finalize_deplibs=`$ECHO " $finalize_deplibs" | $SED 's/ -lc / System.ltframework /'` + ;; + esac + + case $host in + *-*-darwin*) + # Don't allow lazy linking, it breaks C++ global constructors + # But is supposedly fixed on 10.4 or later (yay!). + if test "$tagname" = CXX ; then + case ${MACOSX_DEPLOYMENT_TARGET-10.0} in + 10.[0123]) + func_append compile_command " ${wl}-bind_at_load" + func_append finalize_command " ${wl}-bind_at_load" + ;; + esac + fi + # Time to change all our "foo.ltframework" stuff back to "-framework foo" + compile_deplibs=`$ECHO " $compile_deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + finalize_deplibs=`$ECHO " $finalize_deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + ;; + esac + + + # move library search paths that coincide with paths to not yet + # installed libraries to the beginning of the library search list + new_libs= + for path in $notinst_path; do + case " $new_libs " in + *" -L$path/$objdir "*) ;; + *) + case " $compile_deplibs " in + *" -L$path/$objdir "*) + func_append new_libs " -L$path/$objdir" ;; + esac + ;; + esac + done + for deplib in $compile_deplibs; do + case $deplib in + -L*) + case " $new_libs " in + *" $deplib "*) ;; + *) func_append new_libs " $deplib" ;; + esac + ;; + *) func_append new_libs " $deplib" ;; + esac + done + compile_deplibs="$new_libs" + + + func_append compile_command " $compile_deplibs" + func_append finalize_command " $finalize_deplibs" + + if test -n "$rpath$xrpath"; then + # If the user specified any rpath flags, then add them. + for libdir in $rpath $xrpath; do + # This is the magic to use -rpath. + case "$finalize_rpath " in + *" $libdir "*) ;; + *) func_append finalize_rpath " $libdir" ;; + esac + done + fi + + # Now hardcode the library paths + rpath= + hardcode_libdirs= + for libdir in $compile_rpath $finalize_rpath; do + if test -n "$hardcode_libdir_flag_spec"; then + if test -n "$hardcode_libdir_separator"; then + if test -z "$hardcode_libdirs"; then + hardcode_libdirs="$libdir" + else + # Just accumulate the unique libdirs. + case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in + *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) + ;; + *) + func_append hardcode_libdirs "$hardcode_libdir_separator$libdir" + ;; + esac + fi + else + eval flag=\"$hardcode_libdir_flag_spec\" + func_append rpath " $flag" + fi + elif test -n "$runpath_var"; then + case "$perm_rpath " in + *" $libdir "*) ;; + *) func_append perm_rpath " $libdir" ;; + esac + fi + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) + testbindir=`${ECHO} "$libdir" | ${SED} -e 's*/lib$*/bin*'` + case :$dllsearchpath: in + *":$libdir:"*) ;; + ::) dllsearchpath=$libdir;; + *) func_append dllsearchpath ":$libdir";; + esac + case :$dllsearchpath: in + *":$testbindir:"*) ;; + ::) dllsearchpath=$testbindir;; + *) func_append dllsearchpath ":$testbindir";; + esac + ;; + esac + done + # Substitute the hardcoded libdirs into the rpath. + if test -n "$hardcode_libdir_separator" && + test -n "$hardcode_libdirs"; then + libdir="$hardcode_libdirs" + eval rpath=\" $hardcode_libdir_flag_spec\" + fi + compile_rpath="$rpath" + + rpath= + hardcode_libdirs= + for libdir in $finalize_rpath; do + if test -n "$hardcode_libdir_flag_spec"; then + if test -n "$hardcode_libdir_separator"; then + if test -z "$hardcode_libdirs"; then + hardcode_libdirs="$libdir" + else + # Just accumulate the unique libdirs. + case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in + *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) + ;; + *) + func_append hardcode_libdirs "$hardcode_libdir_separator$libdir" + ;; + esac + fi + else + eval flag=\"$hardcode_libdir_flag_spec\" + func_append rpath " $flag" + fi + elif test -n "$runpath_var"; then + case "$finalize_perm_rpath " in + *" $libdir "*) ;; + *) func_append finalize_perm_rpath " $libdir" ;; + esac + fi + done + # Substitute the hardcoded libdirs into the rpath. + if test -n "$hardcode_libdir_separator" && + test -n "$hardcode_libdirs"; then + libdir="$hardcode_libdirs" + eval rpath=\" $hardcode_libdir_flag_spec\" + fi + finalize_rpath="$rpath" + + if test -n "$libobjs" && test "$build_old_libs" = yes; then + # Transform all the library objects into standard objects. + compile_command=`$ECHO "$compile_command" | $SP2NL | $SED "$lo2o" | $NL2SP` + finalize_command=`$ECHO "$finalize_command" | $SP2NL | $SED "$lo2o" | $NL2SP` + fi + + func_generate_dlsyms "$outputname" "@PROGRAM@" "no" + + # template prelinking step + if test -n "$prelink_cmds"; then + func_execute_cmds "$prelink_cmds" 'exit $?' + fi + + wrappers_required=yes + case $host in + *cegcc* | *mingw32ce*) + # Disable wrappers for cegcc and mingw32ce hosts, we are cross compiling anyway. + wrappers_required=no + ;; + *cygwin* | *mingw* ) + if test "$build_libtool_libs" != yes; then + wrappers_required=no + fi + ;; + *) + if test "$need_relink" = no || test "$build_libtool_libs" != yes; then + wrappers_required=no + fi + ;; + esac + if test "$wrappers_required" = no; then + # Replace the output file specification. + compile_command=`$ECHO "$compile_command" | $SED 's%@OUTPUT@%'"$output"'%g'` + link_command="$compile_command$compile_rpath" + + # We have no uninstalled library dependencies, so finalize right now. + exit_status=0 + func_show_eval "$link_command" 'exit_status=$?' + + if test -n "$postlink_cmds"; then + func_to_tool_file "$output" + postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'` + func_execute_cmds "$postlink_cmds" 'exit $?' + fi + + # Delete the generated files. + if test -f "$output_objdir/${outputname}S.${objext}"; then + func_show_eval '$RM "$output_objdir/${outputname}S.${objext}"' + fi + + exit $exit_status + fi + + if test -n "$compile_shlibpath$finalize_shlibpath"; then + compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibpath\$$shlibpath_var\" $compile_command" + fi + if test -n "$finalize_shlibpath"; then + finalize_command="$shlibpath_var=\"$finalize_shlibpath\$$shlibpath_var\" $finalize_command" + fi + + compile_var= + finalize_var= + if test -n "$runpath_var"; then + if test -n "$perm_rpath"; then + # We should set the runpath_var. + rpath= + for dir in $perm_rpath; do + func_append rpath "$dir:" + done + compile_var="$runpath_var=\"$rpath\$$runpath_var\" " + fi + if test -n "$finalize_perm_rpath"; then + # We should set the runpath_var. + rpath= + for dir in $finalize_perm_rpath; do + func_append rpath "$dir:" + done + finalize_var="$runpath_var=\"$rpath\$$runpath_var\" " + fi + fi + + if test "$no_install" = yes; then + # We don't need to create a wrapper script. + link_command="$compile_var$compile_command$compile_rpath" + # Replace the output file specification. + link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output"'%g'` + # Delete the old output file. + $opt_dry_run || $RM $output + # Link the executable and exit + func_show_eval "$link_command" 'exit $?' + + if test -n "$postlink_cmds"; then + func_to_tool_file "$output" + postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'` + func_execute_cmds "$postlink_cmds" 'exit $?' + fi + + exit $EXIT_SUCCESS + fi + + if test "$hardcode_action" = relink; then + # Fast installation is not supported + link_command="$compile_var$compile_command$compile_rpath" + relink_command="$finalize_var$finalize_command$finalize_rpath" + + func_warning "this platform does not like uninstalled shared libraries" + func_warning "\`$output' will be relinked during installation" + else + if test "$fast_install" != no; then + link_command="$finalize_var$compile_command$finalize_rpath" + if test "$fast_install" = yes; then + relink_command=`$ECHO "$compile_var$compile_command$compile_rpath" | $SED 's%@OUTPUT@%\$progdir/\$file%g'` + else + # fast_install is set to needless + relink_command= + fi + else + link_command="$compile_var$compile_command$compile_rpath" + relink_command="$finalize_var$finalize_command$finalize_rpath" + fi + fi + + # Replace the output file specification. + link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'` + + # Delete the old output files. + $opt_dry_run || $RM $output $output_objdir/$outputname $output_objdir/lt-$outputname + + func_show_eval "$link_command" 'exit $?' + + if test -n "$postlink_cmds"; then + func_to_tool_file "$output_objdir/$outputname" + postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'` + func_execute_cmds "$postlink_cmds" 'exit $?' + fi + + # Now create the wrapper script. + func_verbose "creating $output" + + # Quote the relink command for shipping. + if test -n "$relink_command"; then + # Preserve any variables that may affect compiler behavior + for var in $variables_saved_for_relink; do + if eval test -z \"\${$var+set}\"; then + relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command" + elif eval var_value=\$$var; test -z "$var_value"; then + relink_command="$var=; export $var; $relink_command" + else + func_quote_for_eval "$var_value" + relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command" + fi + done + relink_command="(cd `pwd`; $relink_command)" + relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"` + fi + + # Only actually do things if not in dry run mode. + $opt_dry_run || { + # win32 will think the script is a binary if it has + # a .exe suffix, so we strip it off here. + case $output in + *.exe) func_stripname '' '.exe' "$output" + output=$func_stripname_result ;; + esac + # test for cygwin because mv fails w/o .exe extensions + case $host in + *cygwin*) + exeext=.exe + func_stripname '' '.exe' "$outputname" + outputname=$func_stripname_result ;; + *) exeext= ;; + esac + case $host in + *cygwin* | *mingw* ) + func_dirname_and_basename "$output" "" "." + output_name=$func_basename_result + output_path=$func_dirname_result + cwrappersource="$output_path/$objdir/lt-$output_name.c" + cwrapper="$output_path/$output_name.exe" + $RM $cwrappersource $cwrapper + trap "$RM $cwrappersource $cwrapper; exit $EXIT_FAILURE" 1 2 15 + + func_emit_cwrapperexe_src > $cwrappersource + + # The wrapper executable is built using the $host compiler, + # because it contains $host paths and files. If cross- + # compiling, it, like the target executable, must be + # executed on the $host or under an emulation environment. + $opt_dry_run || { + $LTCC $LTCFLAGS -o $cwrapper $cwrappersource + $STRIP $cwrapper + } + + # Now, create the wrapper script for func_source use: + func_ltwrapper_scriptname $cwrapper + $RM $func_ltwrapper_scriptname_result + trap "$RM $func_ltwrapper_scriptname_result; exit $EXIT_FAILURE" 1 2 15 + $opt_dry_run || { + # note: this script will not be executed, so do not chmod. + if test "x$build" = "x$host" ; then + $cwrapper --lt-dump-script > $func_ltwrapper_scriptname_result + else + func_emit_wrapper no > $func_ltwrapper_scriptname_result + fi + } + ;; + * ) + $RM $output + trap "$RM $output; exit $EXIT_FAILURE" 1 2 15 + + func_emit_wrapper no > $output + chmod +x $output + ;; + esac + } + exit $EXIT_SUCCESS + ;; + esac + + # See if we need to build an old-fashioned archive. + for oldlib in $oldlibs; do + + if test "$build_libtool_libs" = convenience; then + oldobjs="$libobjs_save $symfileobj" + addlibs="$convenience" + build_libtool_libs=no + else + if test "$build_libtool_libs" = module; then + oldobjs="$libobjs_save" + build_libtool_libs=no + else + oldobjs="$old_deplibs $non_pic_objects" + if test "$preload" = yes && test -f "$symfileobj"; then + func_append oldobjs " $symfileobj" + fi + fi + addlibs="$old_convenience" + fi + + if test -n "$addlibs"; then + gentop="$output_objdir/${outputname}x" + func_append generated " $gentop" + + func_extract_archives $gentop $addlibs + func_append oldobjs " $func_extract_archives_result" + fi + + # Do each command in the archive commands. + if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then + cmds=$old_archive_from_new_cmds + else + + # Add any objects from preloaded convenience libraries + if test -n "$dlprefiles"; then + gentop="$output_objdir/${outputname}x" + func_append generated " $gentop" + + func_extract_archives $gentop $dlprefiles + func_append oldobjs " $func_extract_archives_result" + fi + + # POSIX demands no paths to be encoded in archives. We have + # to avoid creating archives with duplicate basenames if we + # might have to extract them afterwards, e.g., when creating a + # static archive out of a convenience library, or when linking + # the entirety of a libtool archive into another (currently + # not supported by libtool). + if (for obj in $oldobjs + do + func_basename "$obj" + $ECHO "$func_basename_result" + done | sort | sort -uc >/dev/null 2>&1); then + : + else + echo "copying selected object files to avoid basename conflicts..." + gentop="$output_objdir/${outputname}x" + func_append generated " $gentop" + func_mkdir_p "$gentop" + save_oldobjs=$oldobjs + oldobjs= + counter=1 + for obj in $save_oldobjs + do + func_basename "$obj" + objbase="$func_basename_result" + case " $oldobjs " in + " ") oldobjs=$obj ;; + *[\ /]"$objbase "*) + while :; do + # Make sure we don't pick an alternate name that also + # overlaps. + newobj=lt$counter-$objbase + func_arith $counter + 1 + counter=$func_arith_result + case " $oldobjs " in + *[\ /]"$newobj "*) ;; + *) if test ! -f "$gentop/$newobj"; then break; fi ;; + esac + done + func_show_eval "ln $obj $gentop/$newobj || cp $obj $gentop/$newobj" + func_append oldobjs " $gentop/$newobj" + ;; + *) func_append oldobjs " $obj" ;; + esac + done + fi + func_to_tool_file "$oldlib" func_convert_file_msys_to_w32 + tool_oldlib=$func_to_tool_file_result + eval cmds=\"$old_archive_cmds\" + + func_len " $cmds" + len=$func_len_result + if test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then + cmds=$old_archive_cmds + elif test -n "$archiver_list_spec"; then + func_verbose "using command file archive linking..." + for obj in $oldobjs + do + func_to_tool_file "$obj" + $ECHO "$func_to_tool_file_result" + done > $output_objdir/$libname.libcmd + func_to_tool_file "$output_objdir/$libname.libcmd" + oldobjs=" $archiver_list_spec$func_to_tool_file_result" + cmds=$old_archive_cmds + else + # the command line is too long to link in one step, link in parts + func_verbose "using piecewise archive linking..." + save_RANLIB=$RANLIB + RANLIB=: + objlist= + concat_cmds= + save_oldobjs=$oldobjs + oldobjs= + # Is there a better way of finding the last object in the list? + for obj in $save_oldobjs + do + last_oldobj=$obj + done + eval test_cmds=\"$old_archive_cmds\" + func_len " $test_cmds" + len0=$func_len_result + len=$len0 + for obj in $save_oldobjs + do + func_len " $obj" + func_arith $len + $func_len_result + len=$func_arith_result + func_append objlist " $obj" + if test "$len" -lt "$max_cmd_len"; then + : + else + # the above command should be used before it gets too long + oldobjs=$objlist + if test "$obj" = "$last_oldobj" ; then + RANLIB=$save_RANLIB + fi + test -z "$concat_cmds" || concat_cmds=$concat_cmds~ + eval concat_cmds=\"\${concat_cmds}$old_archive_cmds\" + objlist= + len=$len0 + fi + done + RANLIB=$save_RANLIB + oldobjs=$objlist + if test "X$oldobjs" = "X" ; then + eval cmds=\"\$concat_cmds\" + else + eval cmds=\"\$concat_cmds~\$old_archive_cmds\" + fi + fi + fi + func_execute_cmds "$cmds" 'exit $?' + done + + test -n "$generated" && \ + func_show_eval "${RM}r$generated" + + # Now create the libtool archive. + case $output in + *.la) + old_library= + test "$build_old_libs" = yes && old_library="$libname.$libext" + func_verbose "creating $output" + + # Preserve any variables that may affect compiler behavior + for var in $variables_saved_for_relink; do + if eval test -z \"\${$var+set}\"; then + relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command" + elif eval var_value=\$$var; test -z "$var_value"; then + relink_command="$var=; export $var; $relink_command" + else + func_quote_for_eval "$var_value" + relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command" + fi + done + # Quote the link command for shipping. + relink_command="(cd `pwd`; $SHELL $progpath $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)" + relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"` + if test "$hardcode_automatic" = yes ; then + relink_command= + fi + + # Only create the output if not a dry run. + $opt_dry_run || { + for installed in no yes; do + if test "$installed" = yes; then + if test -z "$install_libdir"; then + break + fi + output="$output_objdir/$outputname"i + # Replace all uninstalled libtool libraries with the installed ones + newdependency_libs= + for deplib in $dependency_libs; do + case $deplib in + *.la) + func_basename "$deplib" + name="$func_basename_result" + func_resolve_sysroot "$deplib" + eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $func_resolve_sysroot_result` + test -z "$libdir" && \ + func_fatal_error "\`$deplib' is not a valid libtool archive" + func_append newdependency_libs " ${lt_sysroot:+=}$libdir/$name" + ;; + -L*) + func_stripname -L '' "$deplib" + func_replace_sysroot "$func_stripname_result" + func_append newdependency_libs " -L$func_replace_sysroot_result" + ;; + -R*) + func_stripname -R '' "$deplib" + func_replace_sysroot "$func_stripname_result" + func_append newdependency_libs " -R$func_replace_sysroot_result" + ;; + *) func_append newdependency_libs " $deplib" ;; + esac + done + dependency_libs="$newdependency_libs" + newdlfiles= + + for lib in $dlfiles; do + case $lib in + *.la) + func_basename "$lib" + name="$func_basename_result" + eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib` + test -z "$libdir" && \ + func_fatal_error "\`$lib' is not a valid libtool archive" + func_append newdlfiles " ${lt_sysroot:+=}$libdir/$name" + ;; + *) func_append newdlfiles " $lib" ;; + esac + done + dlfiles="$newdlfiles" + newdlprefiles= + for lib in $dlprefiles; do + case $lib in + *.la) + # Only pass preopened files to the pseudo-archive (for + # eventual linking with the app. that links it) if we + # didn't already link the preopened objects directly into + # the library: + func_basename "$lib" + name="$func_basename_result" + eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib` + test -z "$libdir" && \ + func_fatal_error "\`$lib' is not a valid libtool archive" + func_append newdlprefiles " ${lt_sysroot:+=}$libdir/$name" + ;; + esac + done + dlprefiles="$newdlprefiles" + else + newdlfiles= + for lib in $dlfiles; do + case $lib in + [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;; + *) abs=`pwd`"/$lib" ;; + esac + func_append newdlfiles " $abs" + done + dlfiles="$newdlfiles" + newdlprefiles= + for lib in $dlprefiles; do + case $lib in + [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;; + *) abs=`pwd`"/$lib" ;; + esac + func_append newdlprefiles " $abs" + done + dlprefiles="$newdlprefiles" + fi + $RM $output + # place dlname in correct position for cygwin + # In fact, it would be nice if we could use this code for all target + # systems that can't hard-code library paths into their executables + # and that have no shared library path variable independent of PATH, + # but it turns out we can't easily determine that from inspecting + # libtool variables, so we have to hard-code the OSs to which it + # applies here; at the moment, that means platforms that use the PE + # object format with DLL files. See the long comment at the top of + # tests/bindir.at for full details. + tdlname=$dlname + case $host,$output,$installed,$module,$dlname in + *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll | *cegcc*,*lai,yes,no,*.dll) + # If a -bindir argument was supplied, place the dll there. + if test "x$bindir" != x ; + then + func_relative_path "$install_libdir" "$bindir" + tdlname=$func_relative_path_result$dlname + else + # Otherwise fall back on heuristic. + tdlname=../bin/$dlname + fi + ;; + esac + $ECHO > $output "\ +# $outputname - a libtool library file +# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION +# +# Please DO NOT delete this file! +# It is necessary for linking the library. + +# The name that we can dlopen(3). +dlname='$tdlname' + +# Names of this library. +library_names='$library_names' + +# The name of the static archive. +old_library='$old_library' + +# Linker flags that can not go in dependency_libs. +inherited_linker_flags='$new_inherited_linker_flags' + +# Libraries that this one depends upon. +dependency_libs='$dependency_libs' + +# Names of additional weak libraries provided by this library +weak_library_names='$weak_libs' + +# Version information for $libname. +current=$current +age=$age +revision=$revision + +# Is this an already installed library? +installed=$installed + +# Should we warn about portability when linking against -modules? +shouldnotlink=$module + +# Files to dlopen/dlpreopen +dlopen='$dlfiles' +dlpreopen='$dlprefiles' + +# Directory that this library needs to be installed in: +libdir='$install_libdir'" + if test "$installed" = no && test "$need_relink" = yes; then + $ECHO >> $output "\ +relink_command=\"$relink_command\"" + fi + done + } + + # Do a symbolic link so that the libtool archive can be found in + # LD_LIBRARY_PATH before the program is installed. + func_show_eval '( cd "$output_objdir" && $RM "$outputname" && $LN_S "../$outputname" "$outputname" )' 'exit $?' + ;; + esac + exit $EXIT_SUCCESS +} + +{ test "$opt_mode" = link || test "$opt_mode" = relink; } && + func_mode_link ${1+"$@"} + + +# func_mode_uninstall arg... +func_mode_uninstall () +{ + $opt_debug + RM="$nonopt" + files= + rmforce= + exit_status=0 + + # This variable tells wrapper scripts just to set variables rather + # than running their programs. + libtool_install_magic="$magic" + + for arg + do + case $arg in + -f) func_append RM " $arg"; rmforce=yes ;; + -*) func_append RM " $arg" ;; + *) func_append files " $arg" ;; + esac + done + + test -z "$RM" && \ + func_fatal_help "you must specify an RM program" + + rmdirs= + + for file in $files; do + func_dirname "$file" "" "." + dir="$func_dirname_result" + if test "X$dir" = X.; then + odir="$objdir" + else + odir="$dir/$objdir" + fi + func_basename "$file" + name="$func_basename_result" + test "$opt_mode" = uninstall && odir="$dir" + + # Remember odir for removal later, being careful to avoid duplicates + if test "$opt_mode" = clean; then + case " $rmdirs " in + *" $odir "*) ;; + *) func_append rmdirs " $odir" ;; + esac + fi + + # Don't error if the file doesn't exist and rm -f was used. + if { test -L "$file"; } >/dev/null 2>&1 || + { test -h "$file"; } >/dev/null 2>&1 || + test -f "$file"; then + : + elif test -d "$file"; then + exit_status=1 + continue + elif test "$rmforce" = yes; then + continue + fi + + rmfiles="$file" + + case $name in + *.la) + # Possibly a libtool archive, so verify it. + if func_lalib_p "$file"; then + func_source $dir/$name + + # Delete the libtool libraries and symlinks. + for n in $library_names; do + func_append rmfiles " $odir/$n" + done + test -n "$old_library" && func_append rmfiles " $odir/$old_library" + + case "$opt_mode" in + clean) + case " $library_names " in + *" $dlname "*) ;; + *) test -n "$dlname" && func_append rmfiles " $odir/$dlname" ;; + esac + test -n "$libdir" && func_append rmfiles " $odir/$name $odir/${name}i" + ;; + uninstall) + if test -n "$library_names"; then + # Do each command in the postuninstall commands. + func_execute_cmds "$postuninstall_cmds" 'test "$rmforce" = yes || exit_status=1' + fi + + if test -n "$old_library"; then + # Do each command in the old_postuninstall commands. + func_execute_cmds "$old_postuninstall_cmds" 'test "$rmforce" = yes || exit_status=1' + fi + # FIXME: should reinstall the best remaining shared library. + ;; + esac + fi + ;; + + *.lo) + # Possibly a libtool object, so verify it. + if func_lalib_p "$file"; then + + # Read the .lo file + func_source $dir/$name + + # Add PIC object to the list of files to remove. + if test -n "$pic_object" && + test "$pic_object" != none; then + func_append rmfiles " $dir/$pic_object" + fi + + # Add non-PIC object to the list of files to remove. + if test -n "$non_pic_object" && + test "$non_pic_object" != none; then + func_append rmfiles " $dir/$non_pic_object" + fi + fi + ;; + + *) + if test "$opt_mode" = clean ; then + noexename=$name + case $file in + *.exe) + func_stripname '' '.exe' "$file" + file=$func_stripname_result + func_stripname '' '.exe' "$name" + noexename=$func_stripname_result + # $file with .exe has already been added to rmfiles, + # add $file without .exe + func_append rmfiles " $file" + ;; + esac + # Do a test to see if this is a libtool program. + if func_ltwrapper_p "$file"; then + if func_ltwrapper_executable_p "$file"; then + func_ltwrapper_scriptname "$file" + relink_command= + func_source $func_ltwrapper_scriptname_result + func_append rmfiles " $func_ltwrapper_scriptname_result" + else + relink_command= + func_source $dir/$noexename + fi + + # note $name still contains .exe if it was in $file originally + # as does the version of $file that was added into $rmfiles + func_append rmfiles " $odir/$name $odir/${name}S.${objext}" + if test "$fast_install" = yes && test -n "$relink_command"; then + func_append rmfiles " $odir/lt-$name" + fi + if test "X$noexename" != "X$name" ; then + func_append rmfiles " $odir/lt-${noexename}.c" + fi + fi + fi + ;; + esac + func_show_eval "$RM $rmfiles" 'exit_status=1' + done + + # Try to remove the ${objdir}s in the directories where we deleted files + for dir in $rmdirs; do + if test -d "$dir"; then + func_show_eval "rmdir $dir >/dev/null 2>&1" + fi + done + + exit $exit_status +} + +{ test "$opt_mode" = uninstall || test "$opt_mode" = clean; } && + func_mode_uninstall ${1+"$@"} + +test -z "$opt_mode" && { + help="$generic_help" + func_fatal_help "you must specify a MODE" +} + +test -z "$exec_cmd" && \ + func_fatal_help "invalid operation mode \`$opt_mode'" + +if test -n "$exec_cmd"; then + eval exec "$exec_cmd" + exit $EXIT_FAILURE +fi + +exit $exit_status + + +# The TAGs below are defined such that we never get into a situation +# in which we disable both kinds of libraries. Given conflicting +# choices, we go for a static library, that is the most portable, +# since we can't tell whether shared libraries were disabled because +# the user asked for that or because the platform doesn't support +# them. This is particularly important on AIX, because we don't +# support having both static and shared libraries enabled at the same +# time on that platform, so we default to a shared-only configuration. +# If a disable-shared tag is given, we'll fallback to a static-only +# configuration. But we'll never go from static-only to shared-only. + +# ### BEGIN LIBTOOL TAG CONFIG: disable-shared +build_libtool_libs=no +build_old_libs=yes +# ### END LIBTOOL TAG CONFIG: disable-shared + +# ### BEGIN LIBTOOL TAG CONFIG: disable-static +build_old_libs=`case $build_libtool_libs in yes) echo no;; *) echo yes;; esac` +# ### END LIBTOOL TAG CONFIG: disable-static + +# Local Variables: +# mode:shell-script +# sh-indentation:2 +# End: +# vi:sw=2 + diff --git a/bibliotheque-graphique-iut-1.1/missing b/bibliotheque-graphique-iut-1.1/missing new file mode 100755 index 0000000..9a55648 --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/missing @@ -0,0 +1,330 @@ +#! /bin/sh +# Common stub for a few missing GNU programs while installing. + +scriptversion=2012-01-06.18; # UTC + +# Copyright (C) 1996-2012 Free Software Foundation, Inc. +# Originally by Fran,cois Pinard , 1996. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program that contains a +# configuration script generated by Autoconf, you may include it under +# the same distribution terms that you use for the rest of that program. + +if test $# -eq 0; then + echo 1>&2 "Try '$0 --help' for more information" + exit 1 +fi + +run=: +sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p' +sed_minuso='s/.* -o \([^ ]*\).*/\1/p' + +# In the cases where this matters, 'missing' is being run in the +# srcdir already. +if test -f configure.ac; then + configure_ac=configure.ac +else + configure_ac=configure.in +fi + +msg="missing on your system" + +case $1 in +--run) + # Try to run requested program, and just exit if it succeeds. + run= + shift + "$@" && exit 0 + # Exit code 63 means version mismatch. This often happens + # when the user try to use an ancient version of a tool on + # a file that requires a minimum version. In this case we + # we should proceed has if the program had been absent, or + # if --run hadn't been passed. + if test $? = 63; then + run=: + msg="probably too old" + fi + ;; + + -h|--h|--he|--hel|--help) + echo "\ +$0 [OPTION]... PROGRAM [ARGUMENT]... + +Handle 'PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an +error status if there is no known handling for PROGRAM. + +Options: + -h, --help display this help and exit + -v, --version output version information and exit + --run try to run the given command, and emulate it if it fails + +Supported PROGRAM values: + aclocal touch file 'aclocal.m4' + autoconf touch file 'configure' + autoheader touch file 'config.h.in' + autom4te touch the output file, or create a stub one + automake touch all 'Makefile.in' files + bison create 'y.tab.[ch]', if possible, from existing .[ch] + flex create 'lex.yy.c', if possible, from existing .c + help2man touch the output file + lex create 'lex.yy.c', if possible, from existing .c + makeinfo touch the output file + yacc create 'y.tab.[ch]', if possible, from existing .[ch] + +Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and +'g' are ignored when checking the name. + +Send bug reports to ." + exit $? + ;; + + -v|--v|--ve|--ver|--vers|--versi|--versio|--version) + echo "missing $scriptversion (GNU Automake)" + exit $? + ;; + + -*) + echo 1>&2 "$0: Unknown '$1' option" + echo 1>&2 "Try '$0 --help' for more information" + exit 1 + ;; + +esac + +# normalize program name to check for. +program=`echo "$1" | sed ' + s/^gnu-//; t + s/^gnu//; t + s/^g//; t'` + +# Now exit if we have it, but it failed. Also exit now if we +# don't have it and --version was passed (most likely to detect +# the program). This is about non-GNU programs, so use $1 not +# $program. +case $1 in + lex*|yacc*) + # Not GNU programs, they don't have --version. + ;; + + *) + if test -z "$run" && ($1 --version) > /dev/null 2>&1; then + # We have it, but it failed. + exit 1 + elif test "x$2" = "x--version" || test "x$2" = "x--help"; then + # Could not run --version or --help. This is probably someone + # running '$TOOL --version' or '$TOOL --help' to check whether + # $TOOL exists and not knowing $TOOL uses missing. + exit 1 + fi + ;; +esac + +# If it does not exist, or fails to run (possibly an outdated version), +# try to emulate it. +case $program in + aclocal*) + echo 1>&2 "\ +WARNING: '$1' is $msg. You should only need it if + you modified 'acinclude.m4' or '${configure_ac}'. You might want + to install the Automake and Perl packages. Grab them from + any GNU archive site." + touch aclocal.m4 + ;; + + autoconf*) + echo 1>&2 "\ +WARNING: '$1' is $msg. You should only need it if + you modified '${configure_ac}'. You might want to install the + Autoconf and GNU m4 packages. Grab them from any GNU + archive site." + touch configure + ;; + + autoheader*) + echo 1>&2 "\ +WARNING: '$1' is $msg. You should only need it if + you modified 'acconfig.h' or '${configure_ac}'. You might want + to install the Autoconf and GNU m4 packages. Grab them + from any GNU archive site." + files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}` + test -z "$files" && files="config.h" + touch_files= + for f in $files; do + case $f in + *:*) touch_files="$touch_files "`echo "$f" | + sed -e 's/^[^:]*://' -e 's/:.*//'`;; + *) touch_files="$touch_files $f.in";; + esac + done + touch $touch_files + ;; + + automake*) + echo 1>&2 "\ +WARNING: '$1' is $msg. You should only need it if + you modified 'Makefile.am', 'acinclude.m4' or '${configure_ac}'. + You might want to install the Automake and Perl packages. + Grab them from any GNU archive site." + find . -type f -name Makefile.am -print | + sed 's/\.am$/.in/' | + while read f; do touch "$f"; done + ;; + + autom4te*) + echo 1>&2 "\ +WARNING: '$1' is needed, but is $msg. + You might have modified some files without having the + proper tools for further handling them. + You can get '$1' as part of Autoconf from any GNU + archive site." + + file=`echo "$*" | sed -n "$sed_output"` + test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"` + if test -f "$file"; then + touch $file + else + test -z "$file" || exec >$file + echo "#! /bin/sh" + echo "# Created by GNU Automake missing as a replacement of" + echo "# $ $@" + echo "exit 0" + chmod +x $file + exit 1 + fi + ;; + + bison*|yacc*) + echo 1>&2 "\ +WARNING: '$1' $msg. You should only need it if + you modified a '.y' file. You may need the Bison package + in order for those modifications to take effect. You can get + Bison from any GNU archive site." + rm -f y.tab.c y.tab.h + if test $# -ne 1; then + eval LASTARG=\${$#} + case $LASTARG in + *.y) + SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'` + if test -f "$SRCFILE"; then + cp "$SRCFILE" y.tab.c + fi + SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'` + if test -f "$SRCFILE"; then + cp "$SRCFILE" y.tab.h + fi + ;; + esac + fi + if test ! -f y.tab.h; then + echo >y.tab.h + fi + if test ! -f y.tab.c; then + echo 'main() { return 0; }' >y.tab.c + fi + ;; + + lex*|flex*) + echo 1>&2 "\ +WARNING: '$1' is $msg. You should only need it if + you modified a '.l' file. You may need the Flex package + in order for those modifications to take effect. You can get + Flex from any GNU archive site." + rm -f lex.yy.c + if test $# -ne 1; then + eval LASTARG=\${$#} + case $LASTARG in + *.l) + SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'` + if test -f "$SRCFILE"; then + cp "$SRCFILE" lex.yy.c + fi + ;; + esac + fi + if test ! -f lex.yy.c; then + echo 'main() { return 0; }' >lex.yy.c + fi + ;; + + help2man*) + echo 1>&2 "\ +WARNING: '$1' is $msg. You should only need it if + you modified a dependency of a manual page. You may need the + Help2man package in order for those modifications to take + effect. You can get Help2man from any GNU archive site." + + file=`echo "$*" | sed -n "$sed_output"` + test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"` + if test -f "$file"; then + touch $file + else + test -z "$file" || exec >$file + echo ".ab help2man is required to generate this page" + exit $? + fi + ;; + + makeinfo*) + echo 1>&2 "\ +WARNING: '$1' is $msg. You should only need it if + you modified a '.texi' or '.texinfo' file, or any other file + indirectly affecting the aspect of the manual. The spurious + call might also be the consequence of using a buggy 'make' (AIX, + DU, IRIX). You might want to install the Texinfo package or + the GNU make package. Grab either from any GNU archive site." + # The file to touch is that specified with -o ... + file=`echo "$*" | sed -n "$sed_output"` + test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"` + if test -z "$file"; then + # ... or it is the one specified with @setfilename ... + infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'` + file=`sed -n ' + /^@setfilename/{ + s/.* \([^ ]*\) *$/\1/ + p + q + }' $infile` + # ... or it is derived from the source name (dir/f.texi becomes f.info) + test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info + fi + # If the file does not exist, the user really needs makeinfo; + # let's fail without touching anything. + test -f $file || exit 1 + touch $file + ;; + + *) + echo 1>&2 "\ +WARNING: '$1' is needed, and is $msg. + You might have modified some files without having the + proper tools for further handling them. Check the 'README' file, + it often tells you about the needed prerequisites for installing + this package. You may also peek at any GNU archive site, in case + some other package would contain this missing '$1' program." + exit 1 + ;; +esac + +exit 0 + +# Local variables: +# eval: (add-hook 'write-file-hooks 'time-stamp) +# time-stamp-start: "scriptversion=" +# time-stamp-format: "%:y-%02m-%02d.%02H" +# time-stamp-time-zone: "UTC" +# time-stamp-end: "; # UTC" +# End: diff --git a/bibliotheque-graphique-iut-1.1/src/Makefile b/bibliotheque-graphique-iut-1.1/src/Makefile new file mode 100644 index 0000000..4a41ed4 --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/Makefile @@ -0,0 +1,602 @@ +# Makefile.in generated by automake 1.14 from Makefile.am. +# src/Makefile. Generated from Makefile.in by configure. + +# Copyright (C) 1994-2013 Free Software Foundation, Inc. + +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + + + +am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)' +am__make_running_with_option = \ + case $${target_option-} in \ + ?) ;; \ + *) echo "am__make_running_with_option: internal error: invalid" \ + "target option '$${target_option-}' specified" >&2; \ + exit 1;; \ + esac; \ + has_opt=no; \ + sane_makeflags=$$MAKEFLAGS; \ + if $(am__is_gnu_make); then \ + sane_makeflags=$$MFLAGS; \ + else \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + bs=\\; \ + sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ + | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ + esac; \ + fi; \ + skip_next=no; \ + strip_trailopt () \ + { \ + flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ + }; \ + for flg in $$sane_makeflags; do \ + test $$skip_next = yes && { skip_next=no; continue; }; \ + case $$flg in \ + *=*|--*) continue;; \ + -*I) strip_trailopt 'I'; skip_next=yes;; \ + -*I?*) strip_trailopt 'I';; \ + -*O) strip_trailopt 'O'; skip_next=yes;; \ + -*O?*) strip_trailopt 'O';; \ + -*l) strip_trailopt 'l'; skip_next=yes;; \ + -*l?*) strip_trailopt 'l';; \ + -[dEDm]) skip_next=yes;; \ + -[JT]) skip_next=yes;; \ + esac; \ + case $$flg in \ + *$$target_option*) has_opt=yes; break;; \ + esac; \ + done; \ + test $$has_opt = yes +am__make_dryrun = (target_option=n; $(am__make_running_with_option)) +am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +pkgdatadir = $(datadir)/bibliotheque-graphique-iut +pkgincludedir = $(includedir)/bibliotheque-graphique-iut +pkglibdir = $(libdir)/bibliotheque-graphique-iut +pkglibexecdir = $(libexecdir)/bibliotheque-graphique-iut +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = x86_64-unknown-linux-gnu +host_triplet = x86_64-unknown-linux-gnu +subdir = src +DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +AM_V_P = $(am__v_P_$(V)) +am__v_P_ = $(am__v_P_$(AM_DEFAULT_VERBOSITY)) +am__v_P_0 = false +am__v_P_1 = : +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +am__v_GEN_1 = +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ +am__v_at_1 = +SOURCES = +DIST_SOURCES = +RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \ + ctags-recursive dvi-recursive html-recursive info-recursive \ + install-data-recursive install-dvi-recursive \ + install-exec-recursive install-html-recursive \ + install-info-recursive install-pdf-recursive \ + install-ps-recursive install-recursive installcheck-recursive \ + installdirs-recursive pdf-recursive ps-recursive \ + tags-recursive uninstall-recursive +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ + distclean-recursive maintainer-clean-recursive +am__recursive_targets = \ + $(RECURSIVE_TARGETS) \ + $(RECURSIVE_CLEAN_TARGETS) \ + $(am__extra_recursive_targets) +AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ + distdir +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +# Read a list of newline-separated strings from the standard input, +# and print each of them once, without duplicates. Input order is +# *not* preserved. +am__uniquify_input = $(AWK) '\ + BEGIN { nonempty = 0; } \ + { items[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in items) print i; }; } \ +' +# Make sure the list of sources is unique. This is necessary because, +# e.g., the same source file might be shared among _SOURCES variables +# for different programs/libraries. +am__define_uniq_tagged_files = \ + list='$(am__tagged_files)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | $(am__uniquify_input)` +ETAGS = etags +CTAGS = ctags +DIST_SUBDIRS = lib include exemples +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +am__relativize = \ + dir0=`pwd`; \ + sed_first='s,^\([^/]*\)/.*$$,\1,'; \ + sed_rest='s,^[^/]*/*,,'; \ + sed_last='s,^.*/\([^/]*\)$$,\1,'; \ + sed_butlast='s,/*[^/]*$$,,'; \ + while test -n "$$dir1"; do \ + first=`echo "$$dir1" | sed -e "$$sed_first"`; \ + if test "$$first" != "."; then \ + if test "$$first" = ".."; then \ + dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ + dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ + else \ + first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ + if test "$$first2" = "$$first"; then \ + dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ + else \ + dir2="../$$dir2"; \ + fi; \ + dir0="$$dir0"/"$$first"; \ + fi; \ + fi; \ + dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ + done; \ + reldir="$$dir2" +ACLOCAL = aclocal-1.14 +AMTAR = $${TAR-tar} +AM_DEFAULT_VERBOSITY = 1 +AR = ar +AUTOCONF = autoconf +AUTOHEADER = autoheader +AUTOMAKE = automake-1.14 +AWK = gawk +CC = gcc +CCDEPMODE = depmode=gcc3 +CFLAGS = -g -O2 +CPP = gcc -E +CPPFLAGS = +CYGPATH_W = echo +DEFS = -DHAVE_CONFIG_H +DEPDIR = .deps +DLLTOOL = false +DSYMUTIL = +DUMPBIN = +ECHO_C = +ECHO_N = -n +ECHO_T = +EGREP = /usr/bin/grep -E +EXEEXT = +EXEMPLES_IMAGES_DIR = ${datarootdir}/libgraph/images/ +FGREP = /usr/bin/grep -F +GREP = /usr/bin/grep +INSTALL = /usr/bin/install -c +INSTALL_DATA = ${INSTALL} -m 644 +INSTALL_PROGRAM = ${INSTALL} +INSTALL_SCRIPT = ${INSTALL} +INSTALL_STRIP_PROGRAM = $(install_sh) -c -s +LD = /usr/bin/ld -m elf_x86_64 +LDFLAGS = +LIBOBJS = +LIBS = -lXpm +LIBTOOL = $(SHELL) $(top_builddir)/libtool +LIPO = +LN_S = ln -s +LTLIBOBJS = +MAKEINFO = makeinfo +MANIFEST_TOOL = : +MKDIR_P = /usr/bin/mkdir -p +NM = /usr/bin/nm -B +NMEDIT = +OBJDUMP = objdump +OBJEXT = o +OTOOL = +OTOOL64 = +PACKAGE = bibliotheque-graphique-iut +PACKAGE_BUGREPORT = monnerat@u-pec.fr +PACKAGE_NAME = bibliotheque graphique iut +PACKAGE_STRING = bibliotheque graphique iut 1.1 +PACKAGE_TARNAME = bibliotheque-graphique-iut +PACKAGE_URL = +PACKAGE_VERSION = 1.1 +PATH_SEPARATOR = : +PREFIX = /export/home/an22/pietrois/SAE11_2022 +RANLIB = ranlib +SED = /usr/bin/sed +SET_MAKE = +SHELL = /bin/sh +STRIP = strip +VERSION = 1.1 +abs_builddir = /export/home/an22/pietrois/SAE11_2022/bibliotheque-graphique-iut-1.1/src +abs_srcdir = /export/home/an22/pietrois/SAE11_2022/bibliotheque-graphique-iut-1.1/src +abs_top_builddir = /export/home/an22/pietrois/SAE11_2022/bibliotheque-graphique-iut-1.1 +abs_top_srcdir = /export/home/an22/pietrois/SAE11_2022/bibliotheque-graphique-iut-1.1 +ac_ct_AR = ar +ac_ct_CC = gcc +ac_ct_DUMPBIN = +am__include = include +am__leading_dot = . +am__quote = +am__tar = $${TAR-tar} chof - "$$tardir" +am__untar = $${TAR-tar} xf - +bindir = ${exec_prefix}/bin +build = x86_64-unknown-linux-gnu +build_alias = +build_cpu = x86_64 +build_os = linux-gnu +build_vendor = unknown +builddir = . +datadir = ${datarootdir} +datarootdir = ${prefix}/share +docdir = ${datarootdir}/doc/${PACKAGE_TARNAME} +dvidir = ${docdir} +exec_prefix = /export/home/an22/pietrois/SAE11_2022 +host = x86_64-unknown-linux-gnu +host_alias = +host_cpu = x86_64 +host_os = linux-gnu +host_vendor = unknown +htmldir = ${docdir} +includedir = ${prefix}/include +infodir = ${datarootdir}/info +install_sh = ${SHELL} /export/home/an22/pietrois/SAE11_2022/bibliotheque-graphique-iut-1.1/install-sh +libdir = ${exec_prefix}/lib +libexecdir = ${exec_prefix}/libexec +localedir = ${datarootdir}/locale +localstatedir = ${prefix}/var +mandir = ${datarootdir}/man +mkdir_p = $(MKDIR_P) +oldincludedir = /usr/include +pdfdir = ${docdir} +prefix = /export/home/an22/pietrois/SAE11_2022 +program_transform_name = s,x,x, +psdir = ${docdir} +sbindir = ${exec_prefix}/sbin +sharedstatedir = ${prefix}/com +srcdir = . +sysconfdir = ${prefix}/etc +target_alias = +top_build_prefix = ../ +top_builddir = .. +top_srcdir = .. +#MAYBE_EXPLES = exemples +SUBDIRS = lib include $(MAYBE_EXPLES) +all: all-recursive + +.SUFFIXES: +$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign src/Makefile +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +# This directory's subdirectories are mostly independent; you can cd +# into them and run 'make' without going through this Makefile. +# To change the values of 'make' variables: instead of editing Makefiles, +# (1) if the variable is set in 'config.status', edit 'config.status' +# (which will cause the Makefiles to be regenerated when you run 'make'); +# (2) otherwise, pass the desired values on the 'make' command line. +$(am__recursive_targets): + @fail=; \ + if $(am__make_keepgoing); then \ + failcom='fail=yes'; \ + else \ + failcom='exit 1'; \ + fi; \ + dot_seen=no; \ + target=`echo $@ | sed s/-recursive//`; \ + case "$@" in \ + distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ + *) list='$(SUBDIRS)' ;; \ + esac; \ + for subdir in $$list; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + dot_seen=yes; \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || eval $$failcom; \ + done; \ + if test "$$dot_seen" = "no"; then \ + $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ + fi; test -z "$$fail" + +ID: $(am__tagged_files) + $(am__define_uniq_tagged_files); mkid -fID $$unique +tags: tags-recursive +TAGS: tags + +tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + set x; \ + here=`pwd`; \ + if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ + include_option=--etags-include; \ + empty_fix=.; \ + else \ + include_option=--include; \ + empty_fix=; \ + fi; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test ! -f $$subdir/TAGS || \ + set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ + fi; \ + done; \ + $(am__define_uniq_tagged_files); \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: ctags-recursive + +CTAGS: ctags +ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + $(am__define_uniq_tagged_files); \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" +cscopelist: cscopelist-recursive + +cscopelist-am: $(am__tagged_files) + list='$(am__tagged_files)'; \ + case "$(srcdir)" in \ + [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ + *) sdir=$(subdir)/$(srcdir) ;; \ + esac; \ + for i in $$list; do \ + if test -f "$$i"; then \ + echo "$(subdir)/$$i"; \ + else \ + echo "$$sdir/$$i"; \ + fi; \ + done >> $(top_builddir)/cscope.files + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done + @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + $(am__make_dryrun) \ + || test -d "$(distdir)/$$subdir" \ + || $(MKDIR_P) "$(distdir)/$$subdir" \ + || exit 1; \ + dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ + $(am__relativize); \ + new_distdir=$$reldir; \ + dir1=$$subdir; dir2="$(top_distdir)"; \ + $(am__relativize); \ + new_top_distdir=$$reldir; \ + echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ + echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ + ($(am__cd) $$subdir && \ + $(MAKE) $(AM_MAKEFLAGS) \ + top_distdir="$$new_top_distdir" \ + distdir="$$new_distdir" \ + am__remove_distdir=: \ + am__skip_length_check=: \ + am__skip_mode_fix=: \ + distdir) \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-recursive +all-am: Makefile +installdirs: installdirs-recursive +installdirs-am: +install: install-recursive +install-exec: install-exec-recursive +install-data: install-data-recursive +uninstall: uninstall-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-recursive +install-strip: + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-recursive + +clean-am: clean-generic clean-libtool mostlyclean-am + +distclean: distclean-recursive + -rm -f Makefile +distclean-am: clean-am distclean-generic distclean-tags + +dvi: dvi-recursive + +dvi-am: + +html: html-recursive + +html-am: + +info: info-recursive + +info-am: + +install-data-am: + +install-dvi: install-dvi-recursive + +install-dvi-am: + +install-exec-am: + +install-html: install-html-recursive + +install-html-am: + +install-info: install-info-recursive + +install-info-am: + +install-man: + +install-pdf: install-pdf-recursive + +install-pdf-am: + +install-ps: install-ps-recursive + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-recursive + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-recursive + +mostlyclean-am: mostlyclean-generic mostlyclean-libtool + +pdf: pdf-recursive + +pdf-am: + +ps: ps-recursive + +ps-am: + +uninstall-am: + +.MAKE: $(am__recursive_targets) install-am install-strip + +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ + check-am clean clean-generic clean-libtool cscopelist-am ctags \ + ctags-am distclean distclean-generic distclean-libtool \ + distclean-tags distdir dvi dvi-am html html-am info info-am \ + install install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-ps install-ps-am \ + install-strip installcheck installcheck-am installdirs \ + installdirs-am maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am tags tags-am uninstall uninstall-am + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/bibliotheque-graphique-iut-1.1/src/Makefile.am b/bibliotheque-graphique-iut-1.1/src/Makefile.am new file mode 100644 index 0000000..dc219b3 --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/Makefile.am @@ -0,0 +1,5 @@ +if COND_EXPLES + MAYBE_EXPLES = exemples +endif + +SUBDIRS = lib include $(MAYBE_EXPLES) diff --git a/bibliotheque-graphique-iut-1.1/src/Makefile.in b/bibliotheque-graphique-iut-1.1/src/Makefile.in new file mode 100644 index 0000000..33898cf --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/Makefile.in @@ -0,0 +1,602 @@ +# Makefile.in generated by automake 1.14 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994-2013 Free Software Foundation, Inc. + +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ +VPATH = @srcdir@ +am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)' +am__make_running_with_option = \ + case $${target_option-} in \ + ?) ;; \ + *) echo "am__make_running_with_option: internal error: invalid" \ + "target option '$${target_option-}' specified" >&2; \ + exit 1;; \ + esac; \ + has_opt=no; \ + sane_makeflags=$$MAKEFLAGS; \ + if $(am__is_gnu_make); then \ + sane_makeflags=$$MFLAGS; \ + else \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + bs=\\; \ + sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ + | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ + esac; \ + fi; \ + skip_next=no; \ + strip_trailopt () \ + { \ + flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ + }; \ + for flg in $$sane_makeflags; do \ + test $$skip_next = yes && { skip_next=no; continue; }; \ + case $$flg in \ + *=*|--*) continue;; \ + -*I) strip_trailopt 'I'; skip_next=yes;; \ + -*I?*) strip_trailopt 'I';; \ + -*O) strip_trailopt 'O'; skip_next=yes;; \ + -*O?*) strip_trailopt 'O';; \ + -*l) strip_trailopt 'l'; skip_next=yes;; \ + -*l?*) strip_trailopt 'l';; \ + -[dEDm]) skip_next=yes;; \ + -[JT]) skip_next=yes;; \ + esac; \ + case $$flg in \ + *$$target_option*) has_opt=yes; break;; \ + esac; \ + done; \ + test $$has_opt = yes +am__make_dryrun = (target_option=n; $(am__make_running_with_option)) +am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +subdir = src +DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +AM_V_P = $(am__v_P_@AM_V@) +am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) +am__v_P_0 = false +am__v_P_1 = : +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) +am__v_GEN_0 = @echo " GEN " $@; +am__v_GEN_1 = +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) +am__v_at_0 = @ +am__v_at_1 = +SOURCES = +DIST_SOURCES = +RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \ + ctags-recursive dvi-recursive html-recursive info-recursive \ + install-data-recursive install-dvi-recursive \ + install-exec-recursive install-html-recursive \ + install-info-recursive install-pdf-recursive \ + install-ps-recursive install-recursive installcheck-recursive \ + installdirs-recursive pdf-recursive ps-recursive \ + tags-recursive uninstall-recursive +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ + distclean-recursive maintainer-clean-recursive +am__recursive_targets = \ + $(RECURSIVE_TARGETS) \ + $(RECURSIVE_CLEAN_TARGETS) \ + $(am__extra_recursive_targets) +AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ + distdir +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +# Read a list of newline-separated strings from the standard input, +# and print each of them once, without duplicates. Input order is +# *not* preserved. +am__uniquify_input = $(AWK) '\ + BEGIN { nonempty = 0; } \ + { items[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in items) print i; }; } \ +' +# Make sure the list of sources is unique. This is necessary because, +# e.g., the same source file might be shared among _SOURCES variables +# for different programs/libraries. +am__define_uniq_tagged_files = \ + list='$(am__tagged_files)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | $(am__uniquify_input)` +ETAGS = etags +CTAGS = ctags +DIST_SUBDIRS = lib include exemples +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +am__relativize = \ + dir0=`pwd`; \ + sed_first='s,^\([^/]*\)/.*$$,\1,'; \ + sed_rest='s,^[^/]*/*,,'; \ + sed_last='s,^.*/\([^/]*\)$$,\1,'; \ + sed_butlast='s,/*[^/]*$$,,'; \ + while test -n "$$dir1"; do \ + first=`echo "$$dir1" | sed -e "$$sed_first"`; \ + if test "$$first" != "."; then \ + if test "$$first" = ".."; then \ + dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ + dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ + else \ + first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ + if test "$$first2" = "$$first"; then \ + dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ + else \ + dir2="../$$dir2"; \ + fi; \ + dir0="$$dir0"/"$$first"; \ + fi; \ + fi; \ + dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ + done; \ + reldir="$$dir2" +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DLLTOOL = @DLLTOOL@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +EXEMPLES_IMAGES_DIR = @EXEMPLES_IMAGES_DIR@ +FGREP = @FGREP@ +GREP = @GREP@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ +MKDIR_P = @MKDIR_P@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PREFIX = @PREFIX@ +RANLIB = @RANLIB@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +VERSION = @VERSION@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +@COND_EXPLES_TRUE@MAYBE_EXPLES = exemples +SUBDIRS = lib include $(MAYBE_EXPLES) +all: all-recursive + +.SUFFIXES: +$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign src/Makefile +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +# This directory's subdirectories are mostly independent; you can cd +# into them and run 'make' without going through this Makefile. +# To change the values of 'make' variables: instead of editing Makefiles, +# (1) if the variable is set in 'config.status', edit 'config.status' +# (which will cause the Makefiles to be regenerated when you run 'make'); +# (2) otherwise, pass the desired values on the 'make' command line. +$(am__recursive_targets): + @fail=; \ + if $(am__make_keepgoing); then \ + failcom='fail=yes'; \ + else \ + failcom='exit 1'; \ + fi; \ + dot_seen=no; \ + target=`echo $@ | sed s/-recursive//`; \ + case "$@" in \ + distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ + *) list='$(SUBDIRS)' ;; \ + esac; \ + for subdir in $$list; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + dot_seen=yes; \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || eval $$failcom; \ + done; \ + if test "$$dot_seen" = "no"; then \ + $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ + fi; test -z "$$fail" + +ID: $(am__tagged_files) + $(am__define_uniq_tagged_files); mkid -fID $$unique +tags: tags-recursive +TAGS: tags + +tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + set x; \ + here=`pwd`; \ + if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ + include_option=--etags-include; \ + empty_fix=.; \ + else \ + include_option=--include; \ + empty_fix=; \ + fi; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test ! -f $$subdir/TAGS || \ + set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ + fi; \ + done; \ + $(am__define_uniq_tagged_files); \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: ctags-recursive + +CTAGS: ctags +ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + $(am__define_uniq_tagged_files); \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" +cscopelist: cscopelist-recursive + +cscopelist-am: $(am__tagged_files) + list='$(am__tagged_files)'; \ + case "$(srcdir)" in \ + [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ + *) sdir=$(subdir)/$(srcdir) ;; \ + esac; \ + for i in $$list; do \ + if test -f "$$i"; then \ + echo "$(subdir)/$$i"; \ + else \ + echo "$$sdir/$$i"; \ + fi; \ + done >> $(top_builddir)/cscope.files + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done + @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + $(am__make_dryrun) \ + || test -d "$(distdir)/$$subdir" \ + || $(MKDIR_P) "$(distdir)/$$subdir" \ + || exit 1; \ + dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ + $(am__relativize); \ + new_distdir=$$reldir; \ + dir1=$$subdir; dir2="$(top_distdir)"; \ + $(am__relativize); \ + new_top_distdir=$$reldir; \ + echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ + echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ + ($(am__cd) $$subdir && \ + $(MAKE) $(AM_MAKEFLAGS) \ + top_distdir="$$new_top_distdir" \ + distdir="$$new_distdir" \ + am__remove_distdir=: \ + am__skip_length_check=: \ + am__skip_mode_fix=: \ + distdir) \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-recursive +all-am: Makefile +installdirs: installdirs-recursive +installdirs-am: +install: install-recursive +install-exec: install-exec-recursive +install-data: install-data-recursive +uninstall: uninstall-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-recursive +install-strip: + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-recursive + +clean-am: clean-generic clean-libtool mostlyclean-am + +distclean: distclean-recursive + -rm -f Makefile +distclean-am: clean-am distclean-generic distclean-tags + +dvi: dvi-recursive + +dvi-am: + +html: html-recursive + +html-am: + +info: info-recursive + +info-am: + +install-data-am: + +install-dvi: install-dvi-recursive + +install-dvi-am: + +install-exec-am: + +install-html: install-html-recursive + +install-html-am: + +install-info: install-info-recursive + +install-info-am: + +install-man: + +install-pdf: install-pdf-recursive + +install-pdf-am: + +install-ps: install-ps-recursive + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-recursive + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-recursive + +mostlyclean-am: mostlyclean-generic mostlyclean-libtool + +pdf: pdf-recursive + +pdf-am: + +ps: ps-recursive + +ps-am: + +uninstall-am: + +.MAKE: $(am__recursive_targets) install-am install-strip + +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ + check-am clean clean-generic clean-libtool cscopelist-am ctags \ + ctags-am distclean distclean-generic distclean-libtool \ + distclean-tags distdir dvi dvi-am html html-am info info-am \ + install install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-ps install-ps-am \ + install-strip installcheck installcheck-am installdirs \ + installdirs-am maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am tags tags-am uninstall uninstall-am + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/bibliotheque-graphique-iut-1.1/src/exemples/.deps/ExempleGraphique.Po b/bibliotheque-graphique-iut-1.1/src/exemples/.deps/ExempleGraphique.Po new file mode 100644 index 0000000..9ce06a8 --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/exemples/.deps/ExempleGraphique.Po @@ -0,0 +1 @@ +# dummy diff --git a/bibliotheque-graphique-iut-1.1/src/exemples/.deps/ExempleMandelbrot.Po b/bibliotheque-graphique-iut-1.1/src/exemples/.deps/ExempleMandelbrot.Po new file mode 100644 index 0000000..9ce06a8 --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/exemples/.deps/ExempleMandelbrot.Po @@ -0,0 +1 @@ +# dummy diff --git a/bibliotheque-graphique-iut-1.1/src/exemples/.deps/ExempleSouris.Po b/bibliotheque-graphique-iut-1.1/src/exemples/.deps/ExempleSouris.Po new file mode 100644 index 0000000..9ce06a8 --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/exemples/.deps/ExempleSouris.Po @@ -0,0 +1 @@ +# dummy diff --git a/bibliotheque-graphique-iut-1.1/src/exemples/.deps/ExempleSprite.Po b/bibliotheque-graphique-iut-1.1/src/exemples/.deps/ExempleSprite.Po new file mode 100644 index 0000000..9ce06a8 --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/exemples/.deps/ExempleSprite.Po @@ -0,0 +1 @@ +# dummy diff --git a/bibliotheque-graphique-iut-1.1/src/exemples/ExempleGraphique.c b/bibliotheque-graphique-iut-1.1/src/exemples/ExempleGraphique.c new file mode 100644 index 0000000..a23d98f --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/exemples/ExempleGraphique.c @@ -0,0 +1,334 @@ +#include +#include +#include +#include +#define ra 30 + +#define tx 650 +#define ty 500 +int pt[2][100][100]; + +typedef struct point +{float x,y;} point ; + +void ressort() +{ + point m={tx/2,10}; + point ma=m; + time_t t1,t2; + point m1={100,100}; + point m2={100,200}; + point m1d={0,0}; + point m2d={0,0}; + point mdd,m1dd,m2dd; + point u1,u2; + float n1,n2; + float k1=0.5,k2=0.5 ; + float l1=50,l2=100,l=0.1; + float mm1=2,mm2=0.5; + float F1,F2; + float g=9.81; + float dt=0.5; + int i,j; + unsigned long cn,cb,temps,temporisation=50000; + cn=CouleurParNom("red"); + cb=CouleurParNom("white"); + ChoisirCouleurDessin(cn); + SourisPosition(); + m.x=_X;m.y=_Y; + ma=m; + DessinerSegment(m.x,m.y,m1.x,m1.y); + DessinerSegment(m1.x,m1.y,m2.x,m2.y); + DessinerArc(m1.x-ra/2,m1.y-ra/2,ra,ra,0,360); + DessinerArc(m2.x-ra/2,m2.y-ra/2,ra,ra,0,360); + while(!SourisCliquee()) + { + SourisPosition(); + m.x=_X;m.y=_Y; + + temps=Microsecondes()+temporisation; + while(Microsecondes()tx) x=0;} + if (y<0) y=ty;else {if (y>ty) y=0;} + while ((Microsecondes()-t1)<10000); + t1=Microsecondes(); + // RemplirArc(x,y,d,d,0,360,r); + if (xold!=x||yold!=y) + { + DessinerArc(xold,yold,d,d,0,360); + DessinerArc(x,y,d,d,0,360); + xold=x; + yold=y; + } + + } +} + +int main(void) + +{ + int x,y; + int i,j; + unsigned long couleur=0; + int a,mode; + float teta; + + char * s="appuyez sur une touche pour commencer"; + char *s1="Super cette bibliotèque!!!"; + char *s2="et pour changer d'écrans"; + + InitialiserGraphique(); + CreerFenetre(0,0,tx,ty); + //affiche_fenetre(); + //while((x=touche())!=XK_space) printf("%x:%c\n",x,x); + EffacerEcran(CouleurParNom("white")); + ChoisirCouleurDessin(CouleurParNom("black")); + + y=ty/2; + x=(tx-TailleChaineEcran(s,1))/2; + EcrireTexte(x,y,s,1); + y=ty/2+50; + x=(tx-TailleChaineEcran(s2,1))/2; + EcrireTexte(x,y,s2,1); + Touche(); + EffacerEcran(CouleurParNom("white")); + ChoisirCouleurDessin(CouleurParNom("red")); + RemplirRectangle(50,50,100,100); + ChoisirCouleurDessin(CouleurParNom("green")); + RemplirRectangle(75,75,100,100); + ChoisirCouleurDessin(CouleurParNom("blue")); + RemplirRectangle(100,100,100,100); + DessinerArc(200,200,200,200,90,90); + ChoisirCouleurDessin(CouleurParNom("yellow")); + RemplirArc(300,300,200,200,45,270); + Touche(); + EffacerEcran(CouleurParNom("white")); + calcul(); + ChoisirCouleurDessin(CouleurParNom("black")); + affiche(); + Touche(); + //sauve_image("toto.xpm",0,0,tx,ty); + //cache_fenetre(); + //printf("fenetre cachee pendant 2 secondes\n"); + //sleep(2); + + /* + EffacerEcran(CouleurParNom("blue")); + EcrireTexte(10,20,s1,0); + EcrireTexte(10,40,s1,1); + EcrireTexte(10,70,s1,2);//CouleurParNom("green"),2); + + //EcrireTexteC(10,70,s1,CouleurParNom("green"),2); + AfficherFenetre(); + Touche(); + + ChargerImage("flocon.xpm",100,100,0,0,200,200); + Touche(); + ChoisirEcran(1); + EffacerEcran(CouleurParNom("green")); + ChoisirCouleurDessin(CouleurParNom("blue")); + EcrireTexte(50,40,"C'est Beau !!!",1); + CopierZone(1,0,0,0,200,200,300,100); + ChoisirEcran(0); + Touche(); + ChoisirCouleurDessin(CouleurParNom("yellow")); + DessinerArc(300,300,200,200,0,360); + Touche(); + EffacerEcran(CouleurParNom("white")); + ChargerImageFond("flocon.xpm"); + Touche(); + */ + EffacerEcran(CouleurParNom("white")); + //ChargerImageFond("flocon.xpm"); + y=ty/2; + x=(tx-TailleChaineEcran("fleches pour deplacer le cercle",2))/2; + + ChoisirCouleurDessin(CouleurParNom("blue")); + EcrireTexte(x,y,"fleches pour deplacer le cercle",2); + y=ty/2+40; + x=(tx-TailleChaineEcran("espace pour commencer",2))/2; + + EcrireTexte(x,y,"espace pour commencer",2); + + y=ty/2+80; + x=(tx-TailleChaineEcran("q pour quitter",2))/2; + EcrireTexte(x,y,"q pour quitter",2); + ballon(); + ChoisirModeDessin(0); + EffacerEcran(CouleurParNom("white")); + while(SourisCliquee()); + ressort(); + FermerGraphique(); + printf("Bye !!!!\n"); + //InitialiserGraphique(); + //CreerFenetre(50,10,tx,ty); + //EffacerEcran(CouleurParNom("red")); + //Touche(); + +} + + + + + + +void rotation(float *x,float *y,float *z,float teta,int mode) +{float xx,yy,zz; + float co=cos(teta),so=sin(teta); + switch(mode) + { + case 0 : /* rotation autour de z */ + xx=co**x+*y*so; + yy=-so**x+*y*co; + *x=xx; + *y=yy; + break; + case 1: + xx=*x*co+*z*so; + zz=-*x*so+*z*co; + *x=xx; + *y=yy; + } + +} diff --git a/bibliotheque-graphique-iut-1.1/src/exemples/ExempleMandelbrot.c b/bibliotheque-graphique-iut-1.1/src/exemples/ExempleMandelbrot.c new file mode 100644 index 0000000..862013b --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/exemples/ExempleMandelbrot.c @@ -0,0 +1,266 @@ +#include +#include +#include +#define N 256 /* nombre d'iteration et de couleurs donc */ + +/* listes des fonctions */ + +void mise_a_jour_coef(); +int mandelbrot(); +void dessine_mandelbrot(); +void init_palette(); +void init_parametre(); +typedef struct R +{ + int x,y,width,height; +} R; +/* variables globales pour X */ + + + +/* variables globales pour la fractale */ + +double ax,bx,ay,by; /* coefficient de changement de repere */ +double xr0,xr1,yr0,yr1,tmp; /* borne du domaine reel [xr0,xr1]*[yr0,yr1] */ +unsigned long palette[N]; /* couleurs pour le dessin de la fractale */ +R Rcourant,Rancien; + + + +int main(int nbarg,char *arg[]) +{ + int display_width, display_height; /* taille de l'ecran (root window) */ + int width, height; /* taille de la fenetre */ + int x=0, y=0; /* position de la fenetre */ + int Xold,Yold; + XColor couleur; + int ancx,ancy; + int x0,y0,x1,y1; /* coordonnee pour le zoom */ + int pb; + int clic; + int to; + /* Initialiser la taille de la fenetre en fonction de la taille de l'ecran */ + if (nbarg!=1) + { + width=atoi(arg[1]); + height=atoi(arg[2]); + } + else { + width = 550; + height = 550; + } + +printf("Utiliser la souris pour zoomer sur une partie de l'ensemble\n"); + InitialiserGraphique(); + CreerFenetre(0,0,width,height); + init_parametre(); + dessine_mandelbrot(width,height); + while(1) + { + if (SourisCliquee()) + { + if (clic==0) + { + Xold=_X; + Yold=_Y; + Rcourant.x=_X; + Rcourant.y=_Y; + x0=Rcourant.x; + y0=Rcourant.y; + xr0=ax*_X+bx; + yr0=ay*_Y+by; + Rcourant.width=Rcourant.height=0; + ChoisirModeDessin(2); + DessinerRectangle(Rcourant.x,Rcourant.y,Rcourant.width,Rcourant.height); + ChoisirModeDessin(0); + clic=1; + } + else + { + xr1=ax*_X+bx; + yr1=ay*_Y+by; + if (xr1 +#include + +int main(void) +{ + int x=100,y=100,x1,y1; + InitialiserGraphique(); + CreerFenetre(700,100,500,500); + EffacerEcran(CouleurParNom("white")); + while(!SourisCliquee()); + x=_X; + y=_Y; + while(1) + { + if (SourisCliquee()) + { + DessinerSegmentC(_X,_Y,x,y,CouleurParComposante(rand()%256,rand()%256,rand()%256)); + x=_X; + y=_Y; + } + if (ToucheEnAttente()) break; + } + FermerGraphique(); + +} diff --git a/bibliotheque-graphique-iut-1.1/src/exemples/ExempleSprite.c b/bibliotheque-graphique-iut-1.1/src/exemples/ExempleSprite.c new file mode 100644 index 0000000..fafb2ce --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/exemples/ExempleSprite.c @@ -0,0 +1,78 @@ +#include +#include +#include + + +int main() +{ + int t; + int dir; + int spr[6]; + int spl[6]; + char nom[500]; + int inc=10,i; + int x=10,y=420; + int dx=1,dy; + int ok=1; + InitialiserGraphique(); + CreerFenetre(0,0,800,500); + ChoisirEcran(2); + sprintf(nom,"%s/%s",EXEMPLES_IMAGES_DIR,"arctis2.jpg"); + ChargerImageFond(nom); + //ChargerImageFond("./images/walks-1.png"); + for (i=0;i<6;i++) + { + sprintf(nom,"%s/nouveau%0d.xpm",EXEMPLES_IMAGES_DIR,i); + if ((spr[i]=ChargerSprite(nom))==-1) + { + + sprintf(nom,"%s/walk-%d.png",EXEMPLES_IMAGES_DIR,i); + spr[i]=ChargerSprite(nom); + } + + sprintf(nom,"%s/nouveauinverse%0d.xpm",EXEMPLES_IMAGES_DIR,i); + if ((spl[i]=ChargerSprite(nom))==-1) + { + sprintf(nom,"%s/walks-%d.png",EXEMPLES_IMAGES_DIR,i); + spl[i]=ChargerSprite(nom); + } + + } + ChoisirEcran(1); + CopierZone(2,1,0,0,800,500,0,0); + AfficherSprite(spr[0],x,y); + CopierZone(1,0,0,0,800,500,0,0); + dir=1; + i=0; + while(ok) + { + t=Touche(); + switch(t) + { + case XK_Left : + x-=inc; + dir=-1; + break; + case XK_Right: + x+=inc; + dir=1; + break; + default:ok=0; + } + ChoisirEcran(1); + CopierZone(2,1,0,0,800,500,0,0); + + if (i>5) i=0; + if ((x+64)>800) x=800-64; + else + if (x<0) x=0; + + if (dir==1) + AfficherSprite(spr[i],x,y); + else + AfficherSprite(spl[i],x,y); + CopierZone(1,0,0,0,800,500,0,0); + i=i+1; + } + FermerGraphique(); +} diff --git a/bibliotheque-graphique-iut-1.1/src/exemples/Makefile b/bibliotheque-graphique-iut-1.1/src/exemples/Makefile new file mode 100644 index 0000000..32082a2 --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/exemples/Makefile @@ -0,0 +1,738 @@ +# Makefile.in generated by automake 1.14 from Makefile.am. +# src/exemples/Makefile. Generated from Makefile.in by configure. + +# Copyright (C) 1994-2013 Free Software Foundation, Inc. + +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + + + + + +am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)' +am__make_running_with_option = \ + case $${target_option-} in \ + ?) ;; \ + *) echo "am__make_running_with_option: internal error: invalid" \ + "target option '$${target_option-}' specified" >&2; \ + exit 1;; \ + esac; \ + has_opt=no; \ + sane_makeflags=$$MAKEFLAGS; \ + if $(am__is_gnu_make); then \ + sane_makeflags=$$MFLAGS; \ + else \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + bs=\\; \ + sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ + | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ + esac; \ + fi; \ + skip_next=no; \ + strip_trailopt () \ + { \ + flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ + }; \ + for flg in $$sane_makeflags; do \ + test $$skip_next = yes && { skip_next=no; continue; }; \ + case $$flg in \ + *=*|--*) continue;; \ + -*I) strip_trailopt 'I'; skip_next=yes;; \ + -*I?*) strip_trailopt 'I';; \ + -*O) strip_trailopt 'O'; skip_next=yes;; \ + -*O?*) strip_trailopt 'O';; \ + -*l) strip_trailopt 'l'; skip_next=yes;; \ + -*l?*) strip_trailopt 'l';; \ + -[dEDm]) skip_next=yes;; \ + -[JT]) skip_next=yes;; \ + esac; \ + case $$flg in \ + *$$target_option*) has_opt=yes; break;; \ + esac; \ + done; \ + test $$has_opt = yes +am__make_dryrun = (target_option=n; $(am__make_running_with_option)) +am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +pkgdatadir = $(datadir)/bibliotheque-graphique-iut +pkgincludedir = $(includedir)/bibliotheque-graphique-iut +pkglibdir = $(libdir)/bibliotheque-graphique-iut +pkglibexecdir = $(libexecdir)/bibliotheque-graphique-iut +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = x86_64-unknown-linux-gnu +host_triplet = x86_64-unknown-linux-gnu +exemples_PROGRAMS = ExempleGraphique$(EXEEXT) ExempleSouris$(EXEEXT) \ + ExempleMandelbrot$(EXEEXT) ExempleSprite$(EXEEXT) +subdir = src/exemples +DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \ + $(top_srcdir)/depcomp +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +am__installdirs = "$(DESTDIR)$(exemplesdir)" "$(DESTDIR)$(filesdir)" +PROGRAMS = $(exemples_PROGRAMS) +ExempleGraphique_SOURCES = ExempleGraphique.c +ExempleGraphique_OBJECTS = ExempleGraphique.$(OBJEXT) +ExempleGraphique_LDADD = $(LDADD) +ExempleGraphique_DEPENDENCIES = $(top_builddir)/src/lib/libgraph.la +AM_V_lt = $(am__v_lt_$(V)) +am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) +am__v_lt_0 = --silent +am__v_lt_1 = +ExempleMandelbrot_SOURCES = ExempleMandelbrot.c +ExempleMandelbrot_OBJECTS = ExempleMandelbrot.$(OBJEXT) +ExempleMandelbrot_LDADD = $(LDADD) +ExempleMandelbrot_DEPENDENCIES = $(top_builddir)/src/lib/libgraph.la +ExempleSouris_SOURCES = ExempleSouris.c +ExempleSouris_OBJECTS = ExempleSouris.$(OBJEXT) +ExempleSouris_LDADD = $(LDADD) +ExempleSouris_DEPENDENCIES = $(top_builddir)/src/lib/libgraph.la +ExempleSprite_SOURCES = ExempleSprite.c +ExempleSprite_OBJECTS = ExempleSprite.$(OBJEXT) +ExempleSprite_LDADD = $(LDADD) +ExempleSprite_DEPENDENCIES = $(top_builddir)/src/lib/libgraph.la +AM_V_P = $(am__v_P_$(V)) +am__v_P_ = $(am__v_P_$(AM_DEFAULT_VERBOSITY)) +am__v_P_0 = false +am__v_P_1 = : +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +am__v_GEN_1 = +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ +am__v_at_1 = +DEFAULT_INCLUDES = -I. -I$(top_builddir) +depcomp = $(SHELL) $(top_srcdir)/depcomp +am__depfiles_maybe = depfiles +am__mv = mv -f +COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ + $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ + $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ + $(AM_CFLAGS) $(CFLAGS) +AM_V_CC = $(am__v_CC_$(V)) +am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY)) +am__v_CC_0 = @echo " CC " $@; +am__v_CC_1 = +CCLD = $(CC) +LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ + $(AM_LDFLAGS) $(LDFLAGS) -o $@ +AM_V_CCLD = $(am__v_CCLD_$(V)) +am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY)) +am__v_CCLD_0 = @echo " CCLD " $@; +am__v_CCLD_1 = +SOURCES = ExempleGraphique.c ExempleMandelbrot.c ExempleSouris.c \ + ExempleSprite.c +DIST_SOURCES = ExempleGraphique.c ExempleMandelbrot.c ExempleSouris.c \ + ExempleSprite.c +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__uninstall_files_from_dir = { \ + test -z "$$files" \ + || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ + || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ + $(am__cd) "$$dir" && rm -f $$files; }; \ + } +DATA = $(files_DATA) +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +# Read a list of newline-separated strings from the standard input, +# and print each of them once, without duplicates. Input order is +# *not* preserved. +am__uniquify_input = $(AWK) '\ + BEGIN { nonempty = 0; } \ + { items[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in items) print i; }; } \ +' +# Make sure the list of sources is unique. This is necessary because, +# e.g., the same source file might be shared among _SOURCES variables +# for different programs/libraries. +am__define_uniq_tagged_files = \ + list='$(am__tagged_files)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | $(am__uniquify_input)` +ETAGS = etags +CTAGS = ctags +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = aclocal-1.14 +AMTAR = $${TAR-tar} +AM_DEFAULT_VERBOSITY = 1 +AR = ar +AUTOCONF = autoconf +AUTOHEADER = autoheader +AUTOMAKE = automake-1.14 +AWK = gawk +CC = gcc +CCDEPMODE = depmode=gcc3 +CFLAGS = -g -O2 +CPP = gcc -E +CPPFLAGS = +CYGPATH_W = echo +DEFS = -DHAVE_CONFIG_H +DEPDIR = .deps +DLLTOOL = false +DSYMUTIL = +DUMPBIN = +ECHO_C = +ECHO_N = -n +ECHO_T = +EGREP = /usr/bin/grep -E +EXEEXT = +EXEMPLES_IMAGES_DIR = ${datarootdir}/libgraph/images/ +FGREP = /usr/bin/grep -F +GREP = /usr/bin/grep +INSTALL = /usr/bin/install -c +INSTALL_DATA = ${INSTALL} -m 644 +INSTALL_PROGRAM = ${INSTALL} +INSTALL_SCRIPT = ${INSTALL} +INSTALL_STRIP_PROGRAM = $(install_sh) -c -s +LD = /usr/bin/ld -m elf_x86_64 +LDFLAGS = +LIBOBJS = +LIBS = -lXpm +LIBTOOL = $(SHELL) $(top_builddir)/libtool +LIPO = +LN_S = ln -s +LTLIBOBJS = +MAKEINFO = makeinfo +MANIFEST_TOOL = : +MKDIR_P = /usr/bin/mkdir -p +NM = /usr/bin/nm -B +NMEDIT = +OBJDUMP = objdump +OBJEXT = o +OTOOL = +OTOOL64 = +PACKAGE = bibliotheque-graphique-iut +PACKAGE_BUGREPORT = monnerat@u-pec.fr +PACKAGE_NAME = bibliotheque graphique iut +PACKAGE_STRING = bibliotheque graphique iut 1.1 +PACKAGE_TARNAME = bibliotheque-graphique-iut +PACKAGE_URL = +PACKAGE_VERSION = 1.1 +PATH_SEPARATOR = : +PREFIX = /export/home/an22/pietrois/SAE11_2022 +RANLIB = ranlib +SED = /usr/bin/sed +SET_MAKE = +SHELL = /bin/sh +STRIP = strip +VERSION = 1.1 +abs_builddir = /export/home/an22/pietrois/SAE11_2022/bibliotheque-graphique-iut-1.1/src/exemples +abs_srcdir = /export/home/an22/pietrois/SAE11_2022/bibliotheque-graphique-iut-1.1/src/exemples +abs_top_builddir = /export/home/an22/pietrois/SAE11_2022/bibliotheque-graphique-iut-1.1 +abs_top_srcdir = /export/home/an22/pietrois/SAE11_2022/bibliotheque-graphique-iut-1.1 +ac_ct_AR = ar +ac_ct_CC = gcc +ac_ct_DUMPBIN = +am__include = include +am__leading_dot = . +am__quote = +am__tar = $${TAR-tar} chof - "$$tardir" +am__untar = $${TAR-tar} xf - +bindir = ${exec_prefix}/bin +build = x86_64-unknown-linux-gnu +build_alias = +build_cpu = x86_64 +build_os = linux-gnu +build_vendor = unknown +builddir = . +datadir = ${datarootdir} +datarootdir = ${prefix}/share +docdir = ${datarootdir}/doc/${PACKAGE_TARNAME} +dvidir = ${docdir} +exec_prefix = /export/home/an22/pietrois/SAE11_2022 +host = x86_64-unknown-linux-gnu +host_alias = +host_cpu = x86_64 +host_os = linux-gnu +host_vendor = unknown +htmldir = ${docdir} +includedir = ${prefix}/include +infodir = ${datarootdir}/info +install_sh = ${SHELL} /export/home/an22/pietrois/SAE11_2022/bibliotheque-graphique-iut-1.1/install-sh +libdir = ${exec_prefix}/lib +libexecdir = ${exec_prefix}/libexec +localedir = ${datarootdir}/locale +localstatedir = ${prefix}/var +mandir = ${datarootdir}/man +mkdir_p = $(MKDIR_P) +oldincludedir = /usr/include +pdfdir = ${docdir} +prefix = /export/home/an22/pietrois/SAE11_2022 +program_transform_name = s,x,x, +psdir = ${docdir} +sbindir = ${exec_prefix}/sbin +sharedstatedir = ${prefix}/com +srcdir = . +sysconfdir = ${prefix}/etc +target_alias = +top_build_prefix = ../../ +top_builddir = ../.. +top_srcdir = ../.. +exemplesdir = $(exec_prefix)/bin/ +AM_CPPFLAGS = \ +-I. \ +-I$(top_srcdir)/src/include \ +-I$(top_builddir)/src/include\ +-DEXEMPLES_IMAGES_DIR=\"${datarootdir}/libgraph/images/\" + +LDADD = $(top_builddir)/src/lib/libgraph.la +AM_LDFLAGS = -lm +SRCS = \ +ExempleGraphique.c \ +ExempleSouris.c \ +ExempleMandelbrot.c \ +ExempleSprite.c + +filesdir = $(datadir)/libgraph/images +files_DATA = \ +./images/walk-0.png \ +./images/walk-1.png \ +./images/walk-2.png \ +./images/walk-3.png \ +./images/walk-4.png\ +./images/walk-5.png \ +./images/walks-0.png \ +./images/walks-1.png \ +./images/walks-2.png \ +./images/walks-3.png \ +./images/walks-4.png \ +./images/walks-5.png \ +./images/arctis2.jpg \ +./images/nouveau0.xpm \ +./images/nouveau1.xpm \ +./images/nouveau2.xpm \ +./images/nouveau3.xpm \ +./images/nouveau4.xpm \ +./images/nouveau5.xpm \ +./images/nouveauinverse0.xpm \ +./images/nouveauinverse1.xpm \ +./images/nouveauinverse2.xpm \ +./images/nouveauinverse3.xpm \ +./images/nouveauinverse4.xpm \ +./images/nouveauinverse5.xpm + +EXTRA_DIST = $(files_DATA) +all: all-am + +.SUFFIXES: +.SUFFIXES: .c .lo .o .obj +$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/exemples/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign src/exemples/Makefile +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): +install-exemplesPROGRAMS: $(exemples_PROGRAMS) + @$(NORMAL_INSTALL) + @list='$(exemples_PROGRAMS)'; test -n "$(exemplesdir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(exemplesdir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(exemplesdir)" || exit 1; \ + fi; \ + for p in $$list; do echo "$$p $$p"; done | \ + sed 's/$(EXEEXT)$$//' | \ + while read p p1; do if test -f $$p \ + || test -f $$p1 \ + ; then echo "$$p"; echo "$$p"; else :; fi; \ + done | \ + sed -e 'p;s,.*/,,;n;h' \ + -e 's|.*|.|' \ + -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ + sed 'N;N;N;s,\n, ,g' | \ + $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ + { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ + if ($$2 == $$4) files[d] = files[d] " " $$1; \ + else { print "f", $$3 "/" $$4, $$1; } } \ + END { for (d in files) print "f", d, files[d] }' | \ + while read type dir files; do \ + if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ + test -z "$$files" || { \ + echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(exemplesdir)$$dir'"; \ + $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(exemplesdir)$$dir" || exit $$?; \ + } \ + ; done + +uninstall-exemplesPROGRAMS: + @$(NORMAL_UNINSTALL) + @list='$(exemples_PROGRAMS)'; test -n "$(exemplesdir)" || list=; \ + files=`for p in $$list; do echo "$$p"; done | \ + sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ + -e 's/$$/$(EXEEXT)/' \ + `; \ + test -n "$$list" || exit 0; \ + echo " ( cd '$(DESTDIR)$(exemplesdir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(exemplesdir)" && rm -f $$files + +clean-exemplesPROGRAMS: + @list='$(exemples_PROGRAMS)'; test -n "$$list" || exit 0; \ + echo " rm -f" $$list; \ + rm -f $$list || exit $$?; \ + test -n "$(EXEEXT)" || exit 0; \ + list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ + echo " rm -f" $$list; \ + rm -f $$list + +ExempleGraphique$(EXEEXT): $(ExempleGraphique_OBJECTS) $(ExempleGraphique_DEPENDENCIES) $(EXTRA_ExempleGraphique_DEPENDENCIES) + @rm -f ExempleGraphique$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(ExempleGraphique_OBJECTS) $(ExempleGraphique_LDADD) $(LIBS) + +ExempleMandelbrot$(EXEEXT): $(ExempleMandelbrot_OBJECTS) $(ExempleMandelbrot_DEPENDENCIES) $(EXTRA_ExempleMandelbrot_DEPENDENCIES) + @rm -f ExempleMandelbrot$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(ExempleMandelbrot_OBJECTS) $(ExempleMandelbrot_LDADD) $(LIBS) + +ExempleSouris$(EXEEXT): $(ExempleSouris_OBJECTS) $(ExempleSouris_DEPENDENCIES) $(EXTRA_ExempleSouris_DEPENDENCIES) + @rm -f ExempleSouris$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(ExempleSouris_OBJECTS) $(ExempleSouris_LDADD) $(LIBS) + +ExempleSprite$(EXEEXT): $(ExempleSprite_OBJECTS) $(ExempleSprite_DEPENDENCIES) $(EXTRA_ExempleSprite_DEPENDENCIES) + @rm -f ExempleSprite$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(ExempleSprite_OBJECTS) $(ExempleSprite_LDADD) $(LIBS) + +mostlyclean-compile: + -rm -f *.$(OBJEXT) + +distclean-compile: + -rm -f *.tab.c + +include ./$(DEPDIR)/ExempleGraphique.Po +include ./$(DEPDIR)/ExempleMandelbrot.Po +include ./$(DEPDIR)/ExempleSouris.Po +include ./$(DEPDIR)/ExempleSprite.Po + +.c.o: + $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< + $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +# $(AM_V_CC)source='$<' object='$@' libtool=no \ +# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \ +# $(AM_V_CC_no)$(COMPILE) -c -o $@ $< + +.c.obj: + $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` + $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +# $(AM_V_CC)source='$<' object='$@' libtool=no \ +# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \ +# $(AM_V_CC_no)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` + +.c.lo: + $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< + $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +# $(AM_V_CC)source='$<' object='$@' libtool=yes \ +# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \ +# $(AM_V_CC_no)$(LTCOMPILE) -c -o $@ $< + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs +install-filesDATA: $(files_DATA) + @$(NORMAL_INSTALL) + @list='$(files_DATA)'; test -n "$(filesdir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(filesdir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(filesdir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(filesdir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(filesdir)" || exit $$?; \ + done + +uninstall-filesDATA: + @$(NORMAL_UNINSTALL) + @list='$(files_DATA)'; test -n "$(filesdir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(filesdir)'; $(am__uninstall_files_from_dir) + +ID: $(am__tagged_files) + $(am__define_uniq_tagged_files); mkid -fID $$unique +tags: tags-am +TAGS: tags + +tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + set x; \ + here=`pwd`; \ + $(am__define_uniq_tagged_files); \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: ctags-am + +CTAGS: ctags +ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + $(am__define_uniq_tagged_files); \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" +cscopelist: cscopelist-am + +cscopelist-am: $(am__tagged_files) + list='$(am__tagged_files)'; \ + case "$(srcdir)" in \ + [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ + *) sdir=$(subdir)/$(srcdir) ;; \ + esac; \ + for i in $$list; do \ + if test -f "$$i"; then \ + echo "$(subdir)/$$i"; \ + else \ + echo "$$sdir/$$i"; \ + fi; \ + done >> $(top_builddir)/cscope.files + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-am +all-am: Makefile $(PROGRAMS) $(DATA) +installdirs: + for dir in "$(DESTDIR)$(exemplesdir)" "$(DESTDIR)$(filesdir)"; do \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ + done +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-exemplesPROGRAMS clean-generic clean-libtool \ + mostlyclean-am + +distclean: distclean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +distclean-am: clean-am distclean-compile distclean-generic \ + distclean-tags + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: install-exemplesPROGRAMS install-filesDATA + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: + +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: uninstall-exemplesPROGRAMS uninstall-filesDATA + +.MAKE: install-am install-strip + +.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean \ + clean-exemplesPROGRAMS clean-generic clean-libtool \ + cscopelist-am ctags ctags-am distclean distclean-compile \ + distclean-generic distclean-libtool distclean-tags distdir dvi \ + dvi-am html html-am info info-am install install-am \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-exemplesPROGRAMS \ + install-filesDATA install-html install-html-am install-info \ + install-info-am install-man install-pdf install-pdf-am \ + install-ps install-ps-am install-strip installcheck \ + installcheck-am installdirs maintainer-clean \ + maintainer-clean-generic mostlyclean mostlyclean-compile \ + mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ + tags tags-am uninstall uninstall-am uninstall-exemplesPROGRAMS \ + uninstall-filesDATA + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/bibliotheque-graphique-iut-1.1/src/exemples/Makefile.am b/bibliotheque-graphique-iut-1.1/src/exemples/Makefile.am new file mode 100644 index 0000000..87c160f --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/exemples/Makefile.am @@ -0,0 +1,53 @@ +exemplesdir = $(exec_prefix)/bin/ + +AM_CPPFLAGS = \ +-I. \ +-I$(top_srcdir)/src/include \ +-I$(top_builddir)/src/include\ +-DEXEMPLES_IMAGES_DIR=\"@EXEMPLES_IMAGES_DIR@\" + +LDADD = $(top_builddir)/src/lib/libgraph.la + +AM_LDFLAGS = -lm + +SRCS = \ +ExempleGraphique.c \ +ExempleSouris.c \ +ExempleMandelbrot.c \ +ExempleSprite.c +exemples_PROGRAMS = ExempleGraphique\ + ExempleSouris \ + ExempleMandelbrot \ + ExempleSprite + +filesdir = $(datadir)/libgraph/images +files_DATA = \ +./images/walk-0.png \ +./images/walk-1.png \ +./images/walk-2.png \ +./images/walk-3.png \ +./images/walk-4.png\ +./images/walk-5.png \ +./images/walks-0.png \ +./images/walks-1.png \ +./images/walks-2.png \ +./images/walks-3.png \ +./images/walks-4.png \ +./images/walks-5.png \ +./images/arctis2.jpg \ +./images/nouveau0.xpm \ +./images/nouveau1.xpm \ +./images/nouveau2.xpm \ +./images/nouveau3.xpm \ +./images/nouveau4.xpm \ +./images/nouveau5.xpm \ +./images/nouveauinverse0.xpm \ +./images/nouveauinverse1.xpm \ +./images/nouveauinverse2.xpm \ +./images/nouveauinverse3.xpm \ +./images/nouveauinverse4.xpm \ +./images/nouveauinverse5.xpm + + + +EXTRA_DIST = $(files_DATA) diff --git a/bibliotheque-graphique-iut-1.1/src/exemples/Makefile.in b/bibliotheque-graphique-iut-1.1/src/exemples/Makefile.in new file mode 100644 index 0000000..041379b --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/exemples/Makefile.in @@ -0,0 +1,738 @@ +# Makefile.in generated by automake 1.14 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994-2013 Free Software Foundation, Inc. + +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ + + +VPATH = @srcdir@ +am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)' +am__make_running_with_option = \ + case $${target_option-} in \ + ?) ;; \ + *) echo "am__make_running_with_option: internal error: invalid" \ + "target option '$${target_option-}' specified" >&2; \ + exit 1;; \ + esac; \ + has_opt=no; \ + sane_makeflags=$$MAKEFLAGS; \ + if $(am__is_gnu_make); then \ + sane_makeflags=$$MFLAGS; \ + else \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + bs=\\; \ + sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ + | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ + esac; \ + fi; \ + skip_next=no; \ + strip_trailopt () \ + { \ + flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ + }; \ + for flg in $$sane_makeflags; do \ + test $$skip_next = yes && { skip_next=no; continue; }; \ + case $$flg in \ + *=*|--*) continue;; \ + -*I) strip_trailopt 'I'; skip_next=yes;; \ + -*I?*) strip_trailopt 'I';; \ + -*O) strip_trailopt 'O'; skip_next=yes;; \ + -*O?*) strip_trailopt 'O';; \ + -*l) strip_trailopt 'l'; skip_next=yes;; \ + -*l?*) strip_trailopt 'l';; \ + -[dEDm]) skip_next=yes;; \ + -[JT]) skip_next=yes;; \ + esac; \ + case $$flg in \ + *$$target_option*) has_opt=yes; break;; \ + esac; \ + done; \ + test $$has_opt = yes +am__make_dryrun = (target_option=n; $(am__make_running_with_option)) +am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +exemples_PROGRAMS = ExempleGraphique$(EXEEXT) ExempleSouris$(EXEEXT) \ + ExempleMandelbrot$(EXEEXT) ExempleSprite$(EXEEXT) +subdir = src/exemples +DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \ + $(top_srcdir)/depcomp +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +am__installdirs = "$(DESTDIR)$(exemplesdir)" "$(DESTDIR)$(filesdir)" +PROGRAMS = $(exemples_PROGRAMS) +ExempleGraphique_SOURCES = ExempleGraphique.c +ExempleGraphique_OBJECTS = ExempleGraphique.$(OBJEXT) +ExempleGraphique_LDADD = $(LDADD) +ExempleGraphique_DEPENDENCIES = $(top_builddir)/src/lib/libgraph.la +AM_V_lt = $(am__v_lt_@AM_V@) +am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) +am__v_lt_0 = --silent +am__v_lt_1 = +ExempleMandelbrot_SOURCES = ExempleMandelbrot.c +ExempleMandelbrot_OBJECTS = ExempleMandelbrot.$(OBJEXT) +ExempleMandelbrot_LDADD = $(LDADD) +ExempleMandelbrot_DEPENDENCIES = $(top_builddir)/src/lib/libgraph.la +ExempleSouris_SOURCES = ExempleSouris.c +ExempleSouris_OBJECTS = ExempleSouris.$(OBJEXT) +ExempleSouris_LDADD = $(LDADD) +ExempleSouris_DEPENDENCIES = $(top_builddir)/src/lib/libgraph.la +ExempleSprite_SOURCES = ExempleSprite.c +ExempleSprite_OBJECTS = ExempleSprite.$(OBJEXT) +ExempleSprite_LDADD = $(LDADD) +ExempleSprite_DEPENDENCIES = $(top_builddir)/src/lib/libgraph.la +AM_V_P = $(am__v_P_@AM_V@) +am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) +am__v_P_0 = false +am__v_P_1 = : +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) +am__v_GEN_0 = @echo " GEN " $@; +am__v_GEN_1 = +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) +am__v_at_0 = @ +am__v_at_1 = +DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) +depcomp = $(SHELL) $(top_srcdir)/depcomp +am__depfiles_maybe = depfiles +am__mv = mv -f +COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ + $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ + $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ + $(AM_CFLAGS) $(CFLAGS) +AM_V_CC = $(am__v_CC_@AM_V@) +am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) +am__v_CC_0 = @echo " CC " $@; +am__v_CC_1 = +CCLD = $(CC) +LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ + $(AM_LDFLAGS) $(LDFLAGS) -o $@ +AM_V_CCLD = $(am__v_CCLD_@AM_V@) +am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) +am__v_CCLD_0 = @echo " CCLD " $@; +am__v_CCLD_1 = +SOURCES = ExempleGraphique.c ExempleMandelbrot.c ExempleSouris.c \ + ExempleSprite.c +DIST_SOURCES = ExempleGraphique.c ExempleMandelbrot.c ExempleSouris.c \ + ExempleSprite.c +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__uninstall_files_from_dir = { \ + test -z "$$files" \ + || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ + || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ + $(am__cd) "$$dir" && rm -f $$files; }; \ + } +DATA = $(files_DATA) +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +# Read a list of newline-separated strings from the standard input, +# and print each of them once, without duplicates. Input order is +# *not* preserved. +am__uniquify_input = $(AWK) '\ + BEGIN { nonempty = 0; } \ + { items[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in items) print i; }; } \ +' +# Make sure the list of sources is unique. This is necessary because, +# e.g., the same source file might be shared among _SOURCES variables +# for different programs/libraries. +am__define_uniq_tagged_files = \ + list='$(am__tagged_files)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | $(am__uniquify_input)` +ETAGS = etags +CTAGS = ctags +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DLLTOOL = @DLLTOOL@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +EXEMPLES_IMAGES_DIR = @EXEMPLES_IMAGES_DIR@ +FGREP = @FGREP@ +GREP = @GREP@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ +MKDIR_P = @MKDIR_P@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PREFIX = @PREFIX@ +RANLIB = @RANLIB@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +VERSION = @VERSION@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +exemplesdir = $(exec_prefix)/bin/ +AM_CPPFLAGS = \ +-I. \ +-I$(top_srcdir)/src/include \ +-I$(top_builddir)/src/include\ +-DEXEMPLES_IMAGES_DIR=\"@EXEMPLES_IMAGES_DIR@\" + +LDADD = $(top_builddir)/src/lib/libgraph.la +AM_LDFLAGS = -lm +SRCS = \ +ExempleGraphique.c \ +ExempleSouris.c \ +ExempleMandelbrot.c \ +ExempleSprite.c + +filesdir = $(datadir)/libgraph/images +files_DATA = \ +./images/walk-0.png \ +./images/walk-1.png \ +./images/walk-2.png \ +./images/walk-3.png \ +./images/walk-4.png\ +./images/walk-5.png \ +./images/walks-0.png \ +./images/walks-1.png \ +./images/walks-2.png \ +./images/walks-3.png \ +./images/walks-4.png \ +./images/walks-5.png \ +./images/arctis2.jpg \ +./images/nouveau0.xpm \ +./images/nouveau1.xpm \ +./images/nouveau2.xpm \ +./images/nouveau3.xpm \ +./images/nouveau4.xpm \ +./images/nouveau5.xpm \ +./images/nouveauinverse0.xpm \ +./images/nouveauinverse1.xpm \ +./images/nouveauinverse2.xpm \ +./images/nouveauinverse3.xpm \ +./images/nouveauinverse4.xpm \ +./images/nouveauinverse5.xpm + +EXTRA_DIST = $(files_DATA) +all: all-am + +.SUFFIXES: +.SUFFIXES: .c .lo .o .obj +$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/exemples/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign src/exemples/Makefile +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): +install-exemplesPROGRAMS: $(exemples_PROGRAMS) + @$(NORMAL_INSTALL) + @list='$(exemples_PROGRAMS)'; test -n "$(exemplesdir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(exemplesdir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(exemplesdir)" || exit 1; \ + fi; \ + for p in $$list; do echo "$$p $$p"; done | \ + sed 's/$(EXEEXT)$$//' | \ + while read p p1; do if test -f $$p \ + || test -f $$p1 \ + ; then echo "$$p"; echo "$$p"; else :; fi; \ + done | \ + sed -e 'p;s,.*/,,;n;h' \ + -e 's|.*|.|' \ + -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ + sed 'N;N;N;s,\n, ,g' | \ + $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ + { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ + if ($$2 == $$4) files[d] = files[d] " " $$1; \ + else { print "f", $$3 "/" $$4, $$1; } } \ + END { for (d in files) print "f", d, files[d] }' | \ + while read type dir files; do \ + if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ + test -z "$$files" || { \ + echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(exemplesdir)$$dir'"; \ + $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(exemplesdir)$$dir" || exit $$?; \ + } \ + ; done + +uninstall-exemplesPROGRAMS: + @$(NORMAL_UNINSTALL) + @list='$(exemples_PROGRAMS)'; test -n "$(exemplesdir)" || list=; \ + files=`for p in $$list; do echo "$$p"; done | \ + sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ + -e 's/$$/$(EXEEXT)/' \ + `; \ + test -n "$$list" || exit 0; \ + echo " ( cd '$(DESTDIR)$(exemplesdir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(exemplesdir)" && rm -f $$files + +clean-exemplesPROGRAMS: + @list='$(exemples_PROGRAMS)'; test -n "$$list" || exit 0; \ + echo " rm -f" $$list; \ + rm -f $$list || exit $$?; \ + test -n "$(EXEEXT)" || exit 0; \ + list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ + echo " rm -f" $$list; \ + rm -f $$list + +ExempleGraphique$(EXEEXT): $(ExempleGraphique_OBJECTS) $(ExempleGraphique_DEPENDENCIES) $(EXTRA_ExempleGraphique_DEPENDENCIES) + @rm -f ExempleGraphique$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(ExempleGraphique_OBJECTS) $(ExempleGraphique_LDADD) $(LIBS) + +ExempleMandelbrot$(EXEEXT): $(ExempleMandelbrot_OBJECTS) $(ExempleMandelbrot_DEPENDENCIES) $(EXTRA_ExempleMandelbrot_DEPENDENCIES) + @rm -f ExempleMandelbrot$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(ExempleMandelbrot_OBJECTS) $(ExempleMandelbrot_LDADD) $(LIBS) + +ExempleSouris$(EXEEXT): $(ExempleSouris_OBJECTS) $(ExempleSouris_DEPENDENCIES) $(EXTRA_ExempleSouris_DEPENDENCIES) + @rm -f ExempleSouris$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(ExempleSouris_OBJECTS) $(ExempleSouris_LDADD) $(LIBS) + +ExempleSprite$(EXEEXT): $(ExempleSprite_OBJECTS) $(ExempleSprite_DEPENDENCIES) $(EXTRA_ExempleSprite_DEPENDENCIES) + @rm -f ExempleSprite$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(ExempleSprite_OBJECTS) $(ExempleSprite_LDADD) $(LIBS) + +mostlyclean-compile: + -rm -f *.$(OBJEXT) + +distclean-compile: + -rm -f *.tab.c + +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ExempleGraphique.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ExempleMandelbrot.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ExempleSouris.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ExempleSprite.Po@am__quote@ + +.c.o: +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $< + +.c.obj: +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` + +.c.lo: +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $< + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs +install-filesDATA: $(files_DATA) + @$(NORMAL_INSTALL) + @list='$(files_DATA)'; test -n "$(filesdir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(filesdir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(filesdir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(filesdir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(filesdir)" || exit $$?; \ + done + +uninstall-filesDATA: + @$(NORMAL_UNINSTALL) + @list='$(files_DATA)'; test -n "$(filesdir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(filesdir)'; $(am__uninstall_files_from_dir) + +ID: $(am__tagged_files) + $(am__define_uniq_tagged_files); mkid -fID $$unique +tags: tags-am +TAGS: tags + +tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + set x; \ + here=`pwd`; \ + $(am__define_uniq_tagged_files); \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: ctags-am + +CTAGS: ctags +ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + $(am__define_uniq_tagged_files); \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" +cscopelist: cscopelist-am + +cscopelist-am: $(am__tagged_files) + list='$(am__tagged_files)'; \ + case "$(srcdir)" in \ + [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ + *) sdir=$(subdir)/$(srcdir) ;; \ + esac; \ + for i in $$list; do \ + if test -f "$$i"; then \ + echo "$(subdir)/$$i"; \ + else \ + echo "$$sdir/$$i"; \ + fi; \ + done >> $(top_builddir)/cscope.files + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-am +all-am: Makefile $(PROGRAMS) $(DATA) +installdirs: + for dir in "$(DESTDIR)$(exemplesdir)" "$(DESTDIR)$(filesdir)"; do \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ + done +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-exemplesPROGRAMS clean-generic clean-libtool \ + mostlyclean-am + +distclean: distclean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +distclean-am: clean-am distclean-compile distclean-generic \ + distclean-tags + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: install-exemplesPROGRAMS install-filesDATA + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: + +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: uninstall-exemplesPROGRAMS uninstall-filesDATA + +.MAKE: install-am install-strip + +.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean \ + clean-exemplesPROGRAMS clean-generic clean-libtool \ + cscopelist-am ctags ctags-am distclean distclean-compile \ + distclean-generic distclean-libtool distclean-tags distdir dvi \ + dvi-am html html-am info info-am install install-am \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-exemplesPROGRAMS \ + install-filesDATA install-html install-html-am install-info \ + install-info-am install-man install-pdf install-pdf-am \ + install-ps install-ps-am install-strip installcheck \ + installcheck-am installdirs maintainer-clean \ + maintainer-clean-generic mostlyclean mostlyclean-compile \ + mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ + tags tags-am uninstall uninstall-am uninstall-exemplesPROGRAMS \ + uninstall-filesDATA + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/bibliotheque-graphique-iut-1.1/src/exemples/images/arctis2.jpg b/bibliotheque-graphique-iut-1.1/src/exemples/images/arctis2.jpg new file mode 100644 index 0000000000000000000000000000000000000000..633040280191f73212ef554fb432d2ca4699bd3a GIT binary patch literal 18374 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 GqyGn9-Hvns literal 0 HcmV?d00001 diff --git a/bibliotheque-graphique-iut-1.1/src/exemples/images/nouveau0.xpm b/bibliotheque-graphique-iut-1.1/src/exemples/images/nouveau0.xpm new file mode 100644 index 0000000..5f6c22e --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/exemples/images/nouveau0.xpm @@ -0,0 +1,288 @@ +/* XPM */ +static char *nouveau0[] = { +/* columns rows colors chars-per-pixel */ +"64 80 202 2 ", +" c #030303", +". c #0C0C0B", +"X c #16130F", +"o c #141414", +"O c #181612", +"+ c #1C1C1C", +"@ c #231B0A", +"# c #201D12", +"$ c #211F1D", +"% c #21201E", +"& c #372615", +"* c #3A2D1A", +"= c #393214", +"- c #3C341D", +"; c #232323", +": c #292725", +"> c #2C2C2C", +", c #332D26", +"< c #312F2D", +"1 c #30302F", +"2 c #3A322A", +"3 c #333333", +"4 c #3A3836", +"5 c #3B3B3B", +"6 c #40350C", +"7 c #423518", +"8 c #4C341D", +"9 c #473C1F", +"0 c #483E19", +"q c #413620", +"w c #433A20", +"e c #44392F", +"r c #4B3A28", +"t c #563B22", +"y c #514315", +"u c #574915", +"i c #584A11", +"p c #5C4E19", +"a c #7C7406", +"s c #4E492F", +"d c #514521", +"f c #4A4636", +"g c #45433D", +"h c #5A4734", +"j c #5A4934", +"k c #595437", +"l c #684827", +"z c #664628", +"x c #6C4E2F", +"c c #674C32", +"v c #635431", +"b c #6C543E", +"n c #7C662D", +"m c #434343", +"M c #4C4C4C", +"N c #534B43", +"B c #5C564F", +"V c #545454", +"C c #5B5B5B", +"Z c #6A5440", +"A c #745D47", +"S c #655A50", +"D c #676243", +"F c #7E6145", +"G c #636363", +"H c #6B6B6B", +"J c #7B786B", +"K c #737373", +"L c #7A7A7A", +"P c #8D7B1D", +"I c #907D15", +"U c #81692C", +"Y c #967627", +"T c #8F6337", +"R c #866D31", +"E c #8F6338", +"W c #8C7F38", +"Q c #937732", +"! c #967C35", +"~ c #9A7E33", +"^ c #93733B", +"/ c #9B723C", +"( c #937A38", +") c #A17E3A", +"_ c #816041", +"` c #967F44", +"' c #826C51", +"] c #A37040", +"[ c #AB7642", +"{ c #B27B46", +"} c #B17D49", +"| c #A4980D", +" . c #A39114", +".. c #BCAA12", +"X. c #9F8626", +"o. c #9D8428", +"O. c #9E8335", +"+. c #9B8B37", +"@. c #91833B", +"#. c #9D8A39", +"$. c #A58B27", +"%. c #A88F27", +"&. c #A58C2B", +"*. c #AB8F2B", +"=. c #A99226", +"-. c #AC952B", +";. c #B29B24", +":. c #B49A2B", +">. c #A28534", +",. c #A48934", +"<. c #AA8E33", +"1. c #AD8739", +"2. c #A78C3E", +"3. c #AB8F39", +"4. c #B48F37", +"5. c #B78F3B", +"6. c #B0963E", +"7. c #BA9238", +"8. c #BEA22D", +"9. c #C9AE1E", +"0. c #C4A72E", +"q. c #CCAE2C", +"w. c #DDBF23", +"e. c #D3B62B", +"r. c #C7A43C", +"t. c #C2A83F", +"y. c #DCAF3B", +"u. c #D8B43B", +"i. c #E2B53A", +"p. c #DEC12F", +"a. c #DBC13D", +"s. c #EBC926", +"d. c #F0CF27", +"f. c #F5D62B", +"g. c #FBD52D", +"h. c #FACD35", +"j. c #F6C738", +"k. c #FCCC39", +"l. c #EED036", +"z. c #FCD033", +"x. c #F3D13D", +"c. c #F9DA3B", +"v. c #FDE036", +"b. c #FDE03A", +"n. c #8F8756", +"m. c #A78E40", +"M. c #B78147", +"N. c #B38B40", +"B. c #AD9444", +"V. c #B49A4A", +"C. c #878267", +"Z. c #858273", +"A. c #8A8674", +"S. c #BEAF69", +"D. c #C2864C", +"F. c #C2884C", +"G. c #D2974A", +"H. c #CF8F50", +"J. c #D59453", +"K. c #DC9A53", +"L. c #E09B56", +"P. c #C4A442", +"I. c #C3AE43", +"U. c #DEAE43", +"Y. c #DCA148", +"T. c #DDAE4A", +"R. c #D6BC46", +"E. c #DFBA47", +"W. c #DDB75B", +"Q. c #EDB545", +"!. c #E2BB42", +"~. c #E6CE42", +"^. c #E8C14B", +"/. c #F7DD5E", +"(. c #FDE34C", +"). c #FEE65B", +"_. c #E6C875", +"`. c #F2D675", +"'. c #848484", +"]. c #8B8B8B", +"[. c #91908C", +"{. c #949494", +"}. c #9D9D9D", +"|. c #ACA99D", +" X c #BAB595", +".X c #A4A4A4", +"XX c #A8A8A8", +"oX c #B3B3B3", +"OX c #BCBCBC", +"+X c #FCEB86", +"@X c #FEED8A", +"#X c #C2C0B6", +"$X c #E1D3AB", +"%X c #C3C3C3", +"&X c #CBCBCB", +"*X c #D4D4D4", +"=X c #DCDCDC", +"-X c #E4E4E4", +";X c #ECECEC", +":X c #F4F4F4", +">X c #FDFDFD", +",X c None", +/* pixels */ +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X. . . ,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X. o + o + + + o . ,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X. o % ; > 1 5 5 5 5 > ; o . ,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X o ; 3 m M M M M m m 5 5 > + o ,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X o % 5 M V C V m 5 3 3 3 5 3 1 ; . ,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X o % > M C C V M m 3 3 3 3 3 5 4 1 o . ,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X > ; m C C V V m 5 3 5 4 4 5 3 3 3 ; . ,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X o 3 > V C V V M M 5 5 5 5 m K .XXXM : o ,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X ; 1 4 V V V V V M m 3 1 5 {.&X*X%X'.1 o . ,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X. 1 > m M V V V V M 5 5 > C &X-X{.V H 3 + . ,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,Xo 3 ; M M C V C V M m 3 > K ;X:XM ; m 4 + . ,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,Xo 3 > M M C V V V M m 5 3 ].:X*X3 + > 4 ; . @ ,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,Xo 1 1 M V C C V M m 5 3 m }.*XOX5 ; 2 j 7 6 i I a ,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X . > 4 m V G C V M m 5 5 5 K '.K V r / y.d.s.w.9...| .Y l & ,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X . ; m M V C V V m 5 5 3 5 m M 3 F F.Q.z.g.z.k.k.k.h.j.Q.L.[ ,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X . ; M M V C V M m 5 3 5 5 5 4 > F D.F.G.Y.K.J.J.J.H.D.[ T t ,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X + m M m V V m 5 3 5 4 5 5 4 : e _ } { M.{ ] T z 8 ,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X . + 5 m m m m m 5 5 3 5 5 5 5 > > , h c x * ,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X o + 1 3 5 5 5 5 5 5 4 3 3 3 3 1 > % + $ ; ,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X o + > > 3 3 > 1 3 3 3 1 > > ; ; ; ; % > ,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X + ; 1 > 1 1 > > > > > > ; ; % ; % + > 1 ,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,Xo % ; 3 5 3 3 3 > > > ; ; ; ; ; ; % ; 3 + ,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X. + ; > m M m 5 5 5 5 3 1 1 > > ; > ; 3 1 . ,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X+ ; > m C C C M M M m m 5 3 > ; ; > ; 3 1 ,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,Xo o > m G H H H G V V V m m 5 > ; ; ; % 3 > ,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,Xo % 5 C K K K K G G C V M M 5 ; ; + ; + 1 > ,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,Xo + > M H L L K H C C V M M m 3 > ; ; ; + > 3 . ,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X. + + 5 V H L K H C V M M M m 5 3 ; ; + ; + ; m > ; ,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X+ % > 5 V H K H G V M m m 5 5 3 > ; % ; ; ; 3 C L 3 ,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X. ; ; 5 m m H K G C M m m 5 5 1 > > + ; ; ; ; m oXoXV ; ,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X% ; 3 ; 5 m C H G V M 5 5 5 3 1 ; ; ; ; ; > m '.:X-X{.3 % ,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X. % 3 1 1 ; 5 M G C M m 5 5 3 3 > ; ; ; ; > > oX:X:X>X&XK 3 ,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,Xo ; m ; 1 5 ; V V V M M V 3 3 1 ; ; ; % ; + L :X>X>X>X:X&XH . ,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,Xo > m ; > 3 > 5 G V m M V 3 1 > > ; ; o + > >X>X>X>X>X>X;XOXo ,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,Xo . 3 m ; ; 5 5 M V M G H m 5 > > > ; + + + OX>X>X>X>X>X>X:X-XL ,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,Xo o 1 3 ; ; 5 5 M G V K G 3 3 > > > > + 3 :X>X>X>X>X>X>X>X-X%X. ,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,Xo o > > + > 3 m C H L G M 3 1 > > 1 ; o o -X>X>X>X>X>X>X>X>X:X=XG ,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,Xo o 1 ; + ; m M C L H G m 3 1 > > 1 + . 5 >X>X>X>X>X>X>X>X>X:X:XoX ,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X. o 1 + + 3 M V H L M G 3 1 3 > > 1 + + V >X>X>X>X>X>X>X>X>X>X>X&X> ,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X o 3 % ; m C G '.5 V V 3 3 3 > > o ; + G >X>X>X>X>X>X>X>X>X:X>X=XL ,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X o 3 ; ; m C ].C 5 G V 3 1 1 > > . 1 ; K >X>X>X>X>X>X>X>X>X:X>X-X.X. ,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X o 1 ; ; 5 K }.m 5 K V 1 3 3 > > . 3 o '.:X>X>X>X>X>X>X>X>X>X:X-XOX1 ,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X o 5 1 > M L K m 3 G m 3 3 3 > 1 . > ; H :X:X>X>X>X>X>X>X>X:X:X-XOXV ,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X . m m 3 m K C 5 3 C 5 3 3 3 > : . ; + G -X>X>X>X>X>X>X>X>X:X;X-X%XC ,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X . m V M m G C m 3 m 5 3 3 3 1 1 . . + C %X:X>X>X>X>X>X>X:X:X;X=X%XM ,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X . 3 V G H M V M 3 3 3 3 3 3 3 1 o . 1 OX:X>X>X>X:X>X>X:X:X;X=XOX5 ,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X . > M H L G M M m 3 3 3 3 3 3 1 o o ; 1 :X:X:X:X:X:X:X:X;X-X=XOX; ,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X ; m V H G V m V 5 3 3 3 3 3 1 . ; . ; XX;X;X;X;X;X;X;X-X=X*XXX5 ,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X . : 3 M C G V M 5 3 3 3 3 3 3 1 + + o ; %X-X-X-X-X-X-X=X=X*XK H ,X@X(.q.f.,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X ; 1 m C C C M m 3 3 3 3 3 3 3 + % . > > OX=X=X=X*X=X*X*XOXV oX,X).v.0.q.q.R.,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X ; ; m V C V M m 5 3 3 3 3 3 > ; > . + V + '.*X*X&X&X&X&XL J +X).^.l.4.) ,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X % + 4 M M V M m 5 5 3 3 > 3 > > > + m > V m *X*X&X%XL H n.~.b.c.E.7.^ V.,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X o o ; M M V M m m 5 3 3 3 3 > > 3 o % 1 > ; &X&X%X'.H J @.I.x.T.1.^ 6.,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X . o + 5 M M m m m 5 3 3 1 > > > ; 1 . ; o 5 {.%X*X%X].C.@.!.T.7.^ 2.,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X . o o : M M 5 5 5 5 5 3 3 > > ; ; 5 > o . . + > M }.%X%XZ.+.r.U.4.^ 3.,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,Xo o % % % 3 m m 3 3 3 3 3 3 3 > > % ; o + % 3 4 m G ].XXL A.P.i.<.~ P.,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,Xo % 3 3 3 > 5 5 5 5 3 > 3 1 3 > > % + o o > m m 3 1 XXH D O.E.m.,.,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X; % 5 M M M 5 3 1 3 5 5 3 1 > 1 > > ; + % ; 3 C 1 . o m f ` u.#.3.,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X; ; 5 M C C M m 5 1 > 3 5 5 3 > > ; > ; ; ; ; : m K o + k _.W.O.O.,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X3 ; 5 V M V M m 5 1 > ; ; ; ; 1 3 1 > > : 3 M C H '.}.f s $X`.B.! ,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X> m M m M M m 5 5 1 : % % ; ; ; > 1 1 1 1 : C L {.|.#X XS./.*.,.,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X; ; 5 5 > > ; % 3 1 < ; % O X = + 0 d - w w - d #.I.a.p.q.i.>.e.,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X4 + + + + 1 N % : , - 0 p y u P -.-.-.:.*.$.&.-.:.0.:.:.N.^ ,.,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X; 1 S Z Z A F v n n n U R ! ( -.;.-.-.%.*.X.o.&.*.*.*.,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X", +",X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X" +}; diff --git a/bibliotheque-graphique-iut-1.1/src/exemples/images/nouveau1.xpm b/bibliotheque-graphique-iut-1.1/src/exemples/images/nouveau1.xpm new file mode 100644 index 0000000..43430b5 --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/exemples/images/nouveau1.xpm @@ -0,0 +1,222 @@ +/* XPM */ +static char *nouveau1[] = { +/* columns rows colors chars-per-pixel */ +"64 80 136 2 ", +" c #030303", +". c #0E0A07", +"X c #0C0C0C", +"o c #100F0F", +"O c #1A120A", +"+ c #141414", +"@ c #1E1C12", +"# c #1C1C1C", +"$ c #261F08", +"% c #281F0B", +"& c #352716", +"* c #362E19", +"= c #3C2C1C", +"- c #373114", +"; c #3C331C", +": c #242424", +"> c #2C2C2C", +", c #332A21", +"< c #322D28", +"1 c #333333", +"2 c #3B3B3B", +"3 c #4C341D", +"4 c #443A1C", +"5 c #563B22", +"6 c #4A4019", +"7 c #574B14", +"8 c #7F7706", +"9 c #514620", +"0 c #4E4033", +"q c #664628", +"w c #6E4C29", +"e c #6D553E", +"r c #434343", +"t c #4B4B4B", +"y c #545454", +"u c #5B5B5B", +"i c #685847", +"p c #795E44", +"a c #636363", +"s c #6C6C6C", +"d c #747474", +"f c #7A7A7A", +"g c #835E3A", +"h c #8F6337", +"j c #8F6338", +"k c #886645", +"l c #A37040", +"z c #AB7643", +"x c #AF7A46", +"c c #B37B47", +"v c #B37D4A", +"b c #97841D", +"n c #98851E", +"m c #B49B1B", +"M c #9D8724", +"N c #9E852A", +"B c #A48B25", +"V c #A68C2B", +"C c #AA8E2C", +"Z c #AB9225", +"A c #AF9B25", +"S c #AD922E", +"D c #B19B20", +"F c #B4992B", +"G c #BA9E2C", +"H c #A08D35", +"J c #B38C30", +"K c #AD9130", +"L c #B59C3C", +"P c #BDA12A", +"I c #BBA030", +"U c #C4A82C", +"Y c #CEB12A", +"T c #D5B921", +"R c #D6B92A", +"E c #C6AA31", +"W c #C4AC3A", +"Q c #D5A63E", +"! c #E2C81E", +"~ c #F6E017", +"^ c #FCE11E", +"/ c #DEC12C", +"( c #E7C625", +") c #EECD27", +"_ c #E1C42E", +"` c #EDCE28", +"' c #FDDC26", +"] c #F2D329", +"[ c #FCD72B", +"{ c #FDDA2A", +"} c #E4C731", +"| c #E0C63D", +" . c #FADD34", +".. c #FBDF3F", +"X. c #BF8649", +"o. c #BAB074", +"O. c #C2864B", +"+. c #CA8E4C", +"@. c #CB9049", +"#. c #CD8E50", +"$. c #D29252", +"%. c #E09C58", +"&. c #F0BA45", +"*. c #F9BF47", +"=. c #F6B84B", +"-. c #FBBF49", +";. c #EBAC50", +":. c #F5AA5F", +">. c #FBAF5E", +",. c #FCB05B", +"<. c #FBAD61", +"1. c #FDC642", +"2. c #FDC049", +"3. c #FCE147", +"4. c #FCE148", +"5. c #FDE352", +"6. c #FBE465", +"7. c #858585", +"8. c #8E8E8E", +"9. c #939393", +"0. c #9B9B9B", +"q. c #A4A4A4", +"w. c #ABABAB", +"e. c #B1B0A4", +"r. c #B4B4B4", +"t. c #BBBBBB", +"y. c #C4C4C4", +"u. c #CDCCC7", +"i. c #CBCBCB", +"p. c #D4D4D4", +"a. c #DCDCDC", +"s. c #E4E4E4", +"d. c #ECECEC", +"f. c #F4F4F4", +"g. c #FDFDFD", +"h. c None", +/* pixels */ +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.X X X h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.+ # # # : : : # + h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.X # > 2 r t t y t r 2 1 + X h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h. + 1 r y y t t r 2 2 2 2 2 > + h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h. # > r y u u y r 2 > 1 1 1 2 1 > X h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h. + : 1 u u u y r 2 1 2 2 1 1 1 1 1 # X h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.X 1 : t u y y t t 2 2 2 2 r s 7.u 1 : X h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h. + 1 1 u y y y y t 2 2 1 1 0.i.a.a.s > + h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.X > 1 r t y u y y t 2 2 > u i.s.p.r.9.1 # X h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.X > : r t y y y y t r 2 : s d.f.a 1 t 2 # X h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.+ 1 > t t u y y y t r 1 > f f.a.1 # > 2 # X h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.+ > > t y u u y y t 2 2 2 q.f.y.1 : < 0 & $ $ h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.+ > 1 r y a u y t r 2 1 t 0.r.r.y * g Q ) ( T m 8 h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h. X > r t y u u t t r 2 2 2 y u y i c &.[ { { [ ' ^ ~ ! J w & h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h. X : t t y u y t r 2 1 2 2 2 2 < k %.;.=.*.>.<.>.,.-.1.-.:.z h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h. : t t t u y t 2 2 1 1 2 2 2 > p v x X.+.+.#.$.$.$.O.z h 5 h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.X # r t r t t t 2 2 1 2 2 2 1 : > e c z x c l j q 3 h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.X + 1 r 2 r r r 2 2 1 1 2 2 2 1 > : : , = = h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.o # > 1 1 1 > 2 2 2 1 1 1 > 1 1 > : X # : h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h. + # 1 > 1 1 > > > 1 1 > : : : : : # > 1 h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.X # : > > > > > : > > > > > : : # # # > > h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.X : > r r r 2 2 1 > : : : : : : > # 1 1 h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.o : : 2 y u y r r t t r 1 1 > : > > : 2 > h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.# : 2 u a s a a t t t t 2 1 > : : > : 1 > h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.# + 1 u s f d s s a u t t 2 1 > : # > : > > h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.+ : t a f f f s a u u y y t 2 > : # : # 1 1 h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.# + 1 y s f d s a u y t t r r 1 > : : : # : r : h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.X # 1 t y s f s a u t t t r 2 1 1 : # : : + 1 u f 1 h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.: : y t t s s s a t t r r 2 1 1 > : # : > : 2 r.r.t h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.: : : : 2 r u s a y t r 2 2 1 1 > : # : : : r 7.f.s.9.> h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.# > > > # 1 r a a y r 2 2 2 1 > > : : : > > r.d.g.g.i.s # h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.X : 2 > > r + t y y t r 2 2 1 1 > # : : : # f f.g.g.g.f.i.u h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.+ : r 1 : 2 # : s a t 2 2 1 1 > : : : # # > g.g.g.g.g.g.d.t. h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.o 1 t 1 # 2 1 2 u u s s 1 1 > > > : : : # t.g.g.g.g.g.g.f.a.t h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.+ X 1 t > # > > 1 t t d s 1 2 1 > > : # 1 f.g.g.g.g.g.g.g.d.y. h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.+ + 1 1 : 1 : : r t y d y 1 1 > > > > X + d.g.g.g.g.g.g.g.g.d.s.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.+ + 1 > : > > : 2 y a f r 1 1 > > 1 > X 2 g.g.g.g.g.g.g.g.g.f.f.0.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.# + 2 : # > # : 1 y s f 2 > 1 > > > # # y g.g.g.g.g.g.g.g.g.f.g.p.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.+ + r : # : > : 2 y 7.s 1 1 > > > 1 : # a g.g.g.g.g.g.g.g.g.f.g.a.u h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.X + r 1 # : : > 1 u 9.s 1 1 1 > > # 1 : s f.g.g.g.g.g.g.g.g.f.f.s.q. h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.X + r 1 # : : > 1 y w.u 1 1 1 > > + 1 + 7.f.g.g.g.g.g.g.g.g.f.f.d.t.# h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.X + t 2 # r > > : y w.t 1 1 1 > 1 + > : a f.f.g.g.g.g.g.g.g.f.d.s.y.r h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h. X X t y : 1 r > : t 9.r 1 1 1 > > X > # a d.f.g.g.g.g.g.g.g.f.d.s.y.u h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h. X X r y r > t 2 r r 0.r 1 1 1 1 > X X # a i.f.g.g.g.g.g.g.f.f.d.s.t.u h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h. X 2 y u u 1 2 a 2 d 1 1 1 1 1 1 + > y.f.g.g.f.g.g.g.f.d.d.s.t.t h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h. X 1 t y a u t y a y > 1 1 1 1 > # : > f.f.f.f.f.f.f.d.d.s.a.t.2 h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h. > r y s u y r s t 1 1 1 1 1 1 : X X : w.f.f.d.d.d.d.d.d.a.p.t.# h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h. : 2 y a a y r 2 1 1 1 1 1 1 1 > X + > i.d.d.s.d.s.s.s.a.p.0.# h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h. > 1 r u a u t 2 1 1 1 1 1 1 1 1 > X > > y.s.s.s.a.a.p.p.p.a h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h. # > r y u y t r 2 1 1 1 1 1 > : u X # u # 8.a.a.p.p.p.p.r.> h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h. # > r y y u t r 2 1 1 1 1 1 > > u # t > y t p.p.i.i.i.y.s + h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h. # 1 t r y t r r 2 1 1 > 1 1 > r X # > > : i.i.y.y.i.0.2 h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h. + # t t t t t 2 2 1 1 1 > > > > # X : + 1 9.i.y.y.w.t h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h. + + 2 t r r r r 2 2 1 > > > > : 1 X + X + : r t.y.y.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.X # # : r t r 1 1 2 2 1 1 1 > > # : # X # > X + > t.r.d f h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.+ # > : # 1 r r 2 1 > 1 1 1 1 > > # # # X # r + : w.s r h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.+ : r r 2 > 1 2 2 2 1 > > > 1 > > : + 2 r 8.0.1 + r > t h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.# 1 t u y y 2 1 1 1 2 2 1 1 > > : > : 1 d 9.0.r.9.+ X > h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.: : t y u u t r 2 > > > 1 2 2 1 1 > > : 2 0.r.q.r.t.1 > s.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.> > t t t y t r 2 > > : : : : : > 1 1 1 > > a 8.q.r.u.e.o.6.4... . .5.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.> r t r r 2 1 1 1 > : + o o - @ 6 4 ; ; 4 * 9 H W | _ Y Y U R ) ] ] .3.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.# : 1 > > > : # + + X . O O 7 n n M Z B N C Z F P G I F K N C K I E / } h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.+ # # # + + h.h.h.h.h.h.h.h.A D Z Z B B B N B Z C C K K K K C C C K L h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h." +}; diff --git a/bibliotheque-graphique-iut-1.1/src/exemples/images/nouveau2.xpm b/bibliotheque-graphique-iut-1.1/src/exemples/images/nouveau2.xpm new file mode 100644 index 0000000..676772a --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/exemples/images/nouveau2.xpm @@ -0,0 +1,259 @@ +/* XPM */ +static char *nouveau2[] = { +/* columns rows colors chars-per-pixel */ +"64 80 173 2 ", +" c #030303", +". c #0C0C0C", +"X c #110F0E", +"o c #1F180F", +"O c #141313", +"+ c #1C1C1B", +"@ c #261F08", +"# c #281F0B", +"$ c #221C12", +"% c #25221A", +"& c #352716", +"* c #32281D", +"= c #3D2D1D", +"- c #242424", +"; c #2B2B2B", +": c #332A21", +"> c #322D28", +", c #3E342A", +"< c #333333", +"1 c #3B3B3B", +"2 c #4C341D", +"3 c #563B22", +"4 c #4D3F31", +"5 c #7F7706", +"6 c #4E4033", +"7 c #4A4339", +"8 c #5D543A", +"9 c #664628", +"0 c #6E4C29", +"q c #6D553E", +"w c #7C6C39", +"e c #434343", +"r c #4B4B4B", +"t c #545454", +"y c #5B5B5B", +"u c #685847", +"i c #795E44", +"p c #69624F", +"a c #646464", +"s c #6B6B6B", +"d c #7C786A", +"f c #737373", +"g c #7C7C7C", +"h c #835E3A", +"j c #8F6337", +"k c #8F6338", +"l c #886645", +"z c #897E52", +"x c #A37040", +"c c #AB7643", +"v c #AF7A46", +"b c #B37B47", +"n c #B37D4A", +"m c #B49B1B", +"M c #9E822D", +"N c #9D8235", +"B c #A68A2D", +"V c #AB8E2C", +"C c #AF912D", +"Z c #B3942E", +"A c #BB9C2F", +"S c #A78C33", +"D c #A98D33", +"F c #A68C3D", +"G c #A88E38", +"H c #B38C30", +"J c #AE9132", +"K c #B19534", +"L c #BA9C33", +"P c #B0963A", +"I c #B79E3F", +"U c #B89B3E", +"Y c #BEA22B", +"T c #C6A92D", +"R c #CCAF2B", +"E c #D5B921", +"W c #DABD2A", +"Q c #C7A431", +"! c #C8A533", +"~ c #CEAC3C", +"^ c #D4AE34", +"/ c #D5A63E", +"( c #D9B336", +") c #D9BD33", +"_ c #DABF3B", +"` c #E8BE32", +"' c #E4BE38", +"] c #E2C81E", +"[ c #F6E017", +"{ c #FCE11E", +"} c #DEC02B", +"| c #DDC23B", +" . c #E7C625", +".. c #EBCB27", +"X. c #E1C329", +"o. c #EDCE28", +"O. c #FDDC26", +"+. c #F3D52F", +"@. c #FCD72B", +"#. c #FBD92A", +"$. c #EEC536", +"%. c #E6CA39", +"&. c #F8CC36", +"*. c #F8CE3C", +"=. c #BF8649", +"-. c #AA934B", +";. c #B09B41", +":. c #AE9752", +">. c #A59B5E", +",. c #AF9A5B", +"<. c #B09B5C", +"1. c #BEA44D", +"2. c #BFA654", +"3. c #BCAA51", +"4. c #8F806F", +"5. c #958C61", +"6. c #988E6C", +"7. c #A1997E", +"8. c #C2864B", +"9. c #CA8E4C", +"0. c #CB9049", +"q. c #CD8E50", +"w. c #D29252", +"e. c #E09C58", +"r. c #D8B64A", +"t. c #C2A851", +"y. c #C7B554", +"u. c #C9B056", +"i. c #F0BA45", +"p. c #F9BF47", +"a. c #F6B84B", +"s. c #FBBF49", +"d. c #EBAC50", +"f. c #F5AA5F", +"g. c #FBAF5E", +"h. c #FCB05B", +"j. c #FBAD61", +"k. c #D6C048", +"l. c #DFC15B", +"z. c #E4CB47", +"x. c #FDC642", +"c. c #F8CF40", +"v. c #FDC049", +"b. c #EFCB51", +"n. c #F9D351", +"m. c #DDC87F", +"M. c #F2D77B", +"N. c #838383", +"B. c #8B8B8B", +"V. c #939393", +"C. c #9D9D9D", +"Z. c #A79684", +"A. c #B1AC99", +"S. c #A3A3A3", +"D. c #A8A7A7", +"F. c #ABABAB", +"G. c #B6B0A3", +"H. c #B4B4B4", +"J. c #BCBCBC", +"K. c #C0B6A5", +"L. c #C7BCAA", +"P. c #E8D698", +"I. c #EEDB9B", +"U. c #FBE084", +"Y. c #C4C4C4", +"T. c #CBCBCB", +"R. c #D4D4D4", +"E. c #DCDCDC", +"W. c #E4E4E4", +"Q. c #ECECEC", +"!. c #F4F4F4", +"~. c #FDFDFD", +"^. c None", +/* pixels */ +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.. . . ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.. + + + - - - + X . ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^. + ; 1 e r t t r e 1 < + . ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.. + < e t t r r e 1 1 1 1 1 ; O ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^. O ; e t y t t e < < < < < < 1 ; . ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^. O - 1 y y y t e 1 < < 1 < 1 < < < + . ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^. < ; r y t t t r 1 < 1 1 e s N.t < - . ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^. O < < t t t t t r 1 1 1 < C.T.E.E.s ; O ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.. ; ; e r r y t t r 1 1 ; y T.W.R.J.V.< O . ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.. < - e r t y y t r e < - f Q.!.a < r 1 + . ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.O < - r t t y t t r e < ; g !.E.< + ; 1 - . ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.O < < r t y y t r r e 1 1 C.!.Y.< - > 4 & @ @ ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.X ; < e t a y t r e 1 < r C.H.J.t : h / o. .E m 5 ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^. . ; e r t y y t r e 1 1 1 t y t u v i.@.#.#.#.O.{ [ ] H 0 & ^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^. . - r r t y t r e 1 < < 1 1 1 ; l e.d.a.p.g.j.j.h.v.x.s.f.c ^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^. - e r r y t r 1 1 < < 1 1 1 - i =.v =.9.9.q.w.w.q.8.c j 3 ^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.. + e r e r r e 1 < < 1 1 1 1 - - q n c v b x k 9 2 ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.. O < e 1 e e e 1 1 < 1 1 1 1 1 ; + - : = = ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.X + ; < 1 < ; 1 1 < 1 < < > < > ; - X + - ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^. O - ; ; ; < ; ; < < < ; - - - - - - ; < ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^. + - < ; ; ; ; ; ; ; - ; - - - + + + ; ; ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.O - ; 1 e e 1 1 < ; ; - - - - - - - ; < ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.X - - 1 t y t e e r e e < < < ; ; ; - 1 ; ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.+ - 1 y a s a y t r r e 1 < ; - - ; - < ; ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.O + < y f g f f a a y t r e < ; - + ; - ; ; ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.O - r a g g f f a y y y t r 1 - - + + + < < ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.+ + < t s f f s a y t r r e e 1 - - - - + - e - ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.X + - 1 t s f s a y r r e e 1 1 < - - + - + ; y g ; ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.+ - ; e a f f s y t e e 1 1 < ; ; - - - - + 1 H.H.t ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.X + ; 1 t a f f a y r e 1 1 1 ; ; - - + - + + g !.W.B.; ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.+ ; e e y s f s a r e 1 1 < < ; ; - - - ; + ^.^.~.~.T.s - ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.. - 1 e e a s f a y r e 1 ; ; ; ; - + - - - X ^.~.~.~.!.T.y ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.O - e 1 r y s s a t r 1 1 ; - ; - - - + + O ^.~.~.~.~.~.Q.J.; ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.X ; < 1 r y y a y r 1 < < < - ; ; - - - - F.~.~.~.~.~.~.!.E.r ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.O . < < 1 t y t t r e 1 ; < 1 - ; ; - + + B.~.~.~.~.~.~.~.~.Q.Y. ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.O O < < < t t r r 1 1 1 < < < + - ; ; + r Q.~.~.~.~.~.~.~.~.!.W.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.O O < ; < r t r r 1 + r s y ; - - < - + Y.!.~.~.~.~.~.~.~.~.!.!.C.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.X O e ; ; 1 r r e ; ; 1 N.g < - ; ; + t W.~.~.~.~.~.~.~.~.~.!.~.R.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.. O e e + < 1 e < ; ; t D.J.; ; ; ; - H.!.~.~.~.~.~.~.~.~.~.!.!.E.y ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.. O r 1 - - < 1 < ; < a V.J.< ; ; ; - E.!.!.~.~.~.~.~.~.~.~.!.~.Q.S. ^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^. O r < + O - < ; ; < y N.S.1 ; < - t Q.!.!.~.~.~.~.~.~.~.~.!.!.W.J.- ^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^. O r r ; O + ; - - < t f C.y ; ; - g Q.!.!.!.~.~.~.~.~.~.~.!.!.W.J.e ^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^. O r t t - . O - + e y f B.B.; ; - N.E.Q.!.!.~.~.~.~.~.~.~.!.Q.E.Y.y ^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^. . e t t e O . O < r s f V.H.e ; - N.E.Q.!.!.~.~.~.~.~.~.!.!.Q.W.Y.y ^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^. . 1 t t a + O - 1 t a g S.N.< - B.R.W.Q.!.~.~.~.!.~.~.!.!.W.E.J.r ^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^. . < t t a < O X + ; r t s N.V.r ; V.R.Q.Q.!.!.!.!.!.!.!.!.Q.W.E.J.1 ^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^. . ; e t s t - X . + < r y a f f ; V.Y.W.Q.!.!.!.!.Q.Q.!.Q.W.E.E.J.+ ^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^. . + 1 r a a t < + . - 1 r y a y ; N.Y.W.W.W.Q.Q.Q.W.W.W.W.E.E.R.C.+ ^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^. . ; < r y a t r ; O + ; 1 r y s < ^.J.R.R.E.W.W.W.W.W.E.E.R.R.R.a ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^. X - ; e t y t r e 1 < ; < t y r < ^.Y.Y.R.T.R.R.E.E.E.E.R.R.R.H.; ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^. X - - e t t t r e 1 < < < ; < < ; t H.H.Y.Y.T.T.T.R.R.T.T.T.Y.s X ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^. . + + 1 r e t r e e 1 < < < < ; ; a D.F.J.J.Y.Y.T.T.T.Y.Y.T.C.< ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.. X O + e e r r e e 1 < < < ; ; ; 1 S.H.J.J.J.Y.Y.T.T.Y.T.D.r + ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.e O X O < e e e e e 1 1 < < < ; ; - B.H.Y.J.Y.Y.Y.T.T.Y.J.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.+ + + + ; < 1 < < 1 < < < ; ; - - y J.J.T.Y.Y.J.Y.Y.F.y e ^.^.U.n.c.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.e + ; - X . - ; 1 ; ; < < < < ; ; - - g J.Y.J.H.H.J.J.a y ^.U.&.&.&.&.r.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.+ ; e e + . ; 1 1 < ; ; ; < r y - + < f C.F.C.g f 1 ; 6.M.&.&.&.` ! ~ ^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.- ; r y t + . O . ; 1 1 1 < < s s a - + + ; 1 t t < + < ^.U.*.$.( Z D V ^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.- - r t y t + X O + O - < 1 1 1 B.C.F.t ; - + + ; 1 ; a I.b.| ^ A M B Z ^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.t - r r t t 1 O X - + O + - - ; a V.N.B.r ; - + + ; r d P.l.Q Z C D L ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.; e r e e 1 - . . + O O . X X + D.T.T.C.s % X O O % p t.L V C Z t.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.r - < ; ; ; + O X . X O + + $ $ 7 G.K.L.Z.4.4 * , 8 w G Z C K u.m.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.1 + + + + ; r y >.A.7.5.z 3._ W ) _ | } } %.z.r.y.;.I 3.U ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.e 1 t ^.^.^.^.^.1.G K K L R W X.X.X.X.X.} W X.X. .o.+.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.P C B M N D K S J J D K L A A Y Y T } #.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.J V V G :.,.,.,.<.<.,.,.,.-.F B S Z T %.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^." +}; diff --git a/bibliotheque-graphique-iut-1.1/src/exemples/images/nouveau3.xpm b/bibliotheque-graphique-iut-1.1/src/exemples/images/nouveau3.xpm new file mode 100644 index 0000000..c95b81b --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/exemples/images/nouveau3.xpm @@ -0,0 +1,314 @@ +/* XPM */ +static char *nouveau3[] = { +/* columns rows colors chars-per-pixel */ +"64 80 228 2 ", +" c #030303", +". c #080701", +"X c #0C0B04", +"o c #0C0C0C", +"O c #191406", +"+ c #17150F", +"@ c #141414", +"# c #1A1715", +"$ c #1A1816", +"% c #1C1C1C", +"& c #261F08", +"* c #281F0B", +"= c #352716", +"- c #352F1D", +"; c #3D3210", +": c #242423", +"> c #2B2B2B", +", c #342B22", +"< c #322D28", +"1 c #3E3021", +"2 c #333333", +"3 c #3B3B3B", +"4 c #4E3A26", +"5 c #533A22", +"6 c #503C28", +"7 c #504C0A", +"8 c #6B5B1C", +"9 c #7A7306", +"0 c #4E4033", +"q c #534334", +"w c #5D4833", +"e c #704F2C", +"r c #695B2D", +"t c #624A32", +"y c #6C4D30", +"u c #695E34", +"i c #6D553E", +"p c #755A3E", +"a c #6B622F", +"s c #7A6726", +"d c #7F6635", +"f c #434343", +"g c #4A4A46", +"h c #4B4B4B", +"j c #535044", +"k c #585648", +"l c #5D5949", +"z c #545454", +"x c #5B5B5B", +"c c #685847", +"v c #615E4D", +"b c #765D43", +"n c #795E44", +"m c #65604B", +"M c #6D6648", +"N c #636363", +"B c #6B6B6B", +"V c #737373", +"C c #7B7B7B", +"Z c #817A08", +"A c #835E3A", +"S c #836E28", +"D c #947627", +"F c #917A27", +"G c #94792D", +"H c #8F6337", +"J c #866C36", +"K c #886E36", +"L c #826839", +"P c #91653B", +"I c #8D7234", +"U c #8D7937", +"Y c #8E723C", +"T c #917633", +"R c #9A7B34", +"E c #9B7D39", +"W c #A07F34", +"Q c #886645", +"! c #826B54", +"~ c #A37040", +"^ c #AB7644", +"/ c #AE7946", +"( c #B37B47", +") c #B37D4A", +"_ c #9C9109", +"` c #B49B1B", +"' c #A9A003", +"] c #9D822D", +"[ c #9D8332", +"{ c #9E843C", +"} c #A38829", +"| c #AC912D", +" . c #B19A2E", +".. c #A28334", +"X. c #A48A33", +"o. c #AC8D34", +"O. c #A5863C", +"+. c #AA8539", +"@. c #AE8C38", +"#. c #B38F36", +"$. c #B38B3A", +"%. c #A0913D", +"&. c #AA923F", +"*. c #B59236", +"=. c #BB9730", +"-. c #B49931", +";. c #B49A3D", +":. c #BEAA26", +">. c #C39D34", +",. c #C7AF21", +"<. c #D5B921", +"1. c #D7BA28", +"2. c #CBA23B", +"3. c #D5A63E", +"4. c #D3A83B", +"5. c #E0BF31", +"6. c #E2B539", +"7. c #E7BA3E", +"8. c #E8BB3A", +"9. c #D8CF01", +"0. c #DBCD17", +"q. c #EED61D", +"w. c #EEDA19", +"e. c #F1DD15", +"r. c #F1D51F", +"t. c #FADD1F", +"y. c #F4E30D", +"u. c #FBEB0B", +"i. c #F2E014", +"p. c #FBE217", +"a. c #FDE913", +"s. c #F6E018", +"d. c #FCE11E", +"f. c #FEF11D", +"g. c #E7C625", +"h. c #E2C820", +"j. c #EECD27", +"k. c #F0CF28", +"l. c #E2D22C", +"z. c #F7D526", +"x. c #FCDC24", +"c. c #FCD62C", +"v. c #FCD92B", +"b. c #EBC036", +"n. c #F1C535", +"m. c #FACF34", +"M. c #FBCB38", +"N. c #F3D035", +"B. c #F8D333", +"V. c #F9E63D", +"C. c #B58D44", +"Z. c #BF8649", +"A. c #AC9741", +"S. c #AE964A", +"D. c #B9944B", +"F. c #B49C4A", +"G. c #BAA350", +"H. c #888770", +"J. c #8B8A74", +"K. c #A9926C", +"L. c #BFAD79", +"P. c #C2864B", +"I. c #CA8E4C", +"U. c #C09143", +"Y. c #CB9049", +"T. c #CD8E50", +"R. c #D29252", +"E. c #E09C58", +"W. c #CEA243", +"Q. c #CEA940", +"!. c #C4A048", +"~. c #CFA348", +"^. c #D3A646", +"/. c #DBAB45", +"(. c #DEBE40", +"). c #D8BE49", +"_. c #C3A655", +"`. c #D4B156", +"'. c #E2AF46", +"]. c #E5B341", +"[. c #E9B346", +"{. c #E9B847", +"}. c #F1BC43", +"|. c #F9BF47", +" X c #F6B84B", +".X c #FBBF4A", +"XX c #EBAC50", +"oX c #F5AA5F", +"OX c #FBAF5E", +"+X c #FCB05B", +"@X c #FBAD61", +"#X c #DCC54E", +"$X c #FDC642", +"%X c #FDC049", +"&X c #E3C352", +"*X c #E2C76C", +"=X c #EDD06F", +"-X c #F2D066", +";X c #F4DF6B", +":X c #F8E36A", +">X c #F5E074", +",X c #858585", +" 3 g h z z h f 3 2 $ o hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXo @ 2 h z z h h f 3 3 3 3 3 > @ hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX @ > f z x z z f 3 > 2 2 2 2 2 > @ hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX @ > 2 x x x z f 3 2 2 3 2 3 2 2 2 $ o hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXo 2 : h x z z h g 3 3 3 3 f V ,Xx 2 : o hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX @ 2 2 z z z z z h 3 3 2 2 2XuXpXpXB > @ hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXX > 2 3 z h x x z h f 2 2 x uXaXiX9X2X2 $ o hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXo 2 : h h z z x h h f 2 > V sXfXN 2 z 2 : o hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX@ 2 : h h x z z z h f 3 : C fXpX2 % > 3 % X hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX@ 2 > h z x x z h f f 3 3 6XfXyX2 % < 0 = & * hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX@ > 2 h z N x z h f 3 2 h 2X8X8Xz , A 3.j.g.<.` 9 hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX o > f g z x x h h f 3 3 3 z x z c ) }.c.x.v.v.v.s.s.g.*.e = hXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX o : h h z x z h f 3 2 3 3 3 f > Q E.XX X|.+X@X@X+X%X$X.XoX/ hXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX : f h h x z g f 2 3 2 3 3 2 : n ) ( Z.Y.I.T.R.R.T.P.^ H 5 hXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXX $ f h f z h f 3 3 2 3 3 3 3 > : i ) ^ ( ) ~ P y 5 hXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXo % 2 f 3 f f f 3 2 2 2 3 3 3 2 > : : , 1 q hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXo % > 2 2 2 2 3 2 3 3 2 2 2 2 > > % @ $ : hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX @ : > > 2 2 > > 2 2 2 > : : : : : : > 2 hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXo % : > > > > > > > > : > : : : % % $ > > hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX@ : > 3 h 3 3 2 2 > > : : > : : : % 2 2 hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXo : : 3 z x z f f h f f 2 2 > > > > : 2 2 hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX% : 3 x B B N x z h h g 3 2 > : : > : 2 > hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX@ % 2 z V C V V B N x z h f 2 > : % > : > > hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX@ : 2 h B C C B N x x z z h 2 > : % : % 2 2 o hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX@ 2 2 2 B C V B N x z h h f f 2 : : % : % : 3 : hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXo % > 2 x B V V B z h f f f 3 2 2 > : % : @ > x C 2 hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX: : 2 f N B V B x h h f f 3 3 > > : : : > $ 3 8X7Xz hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX@ % 2 f x B V V B z h f 3 3 3 2 > : : : : % : C fXaX1X: hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX@ > > z x N B B x z f f 3 2 2 > : : : : : % C sXgXgXiXB : hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXo : 3 f h 2 > z B x h f 3 3 > > > : : : : : 3 fXgXgXgXfXuXx hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX@ : f 2 2 2 : 2 z z h 3 h 2 > > : : % : % @ gXgXgXgXgXgXsX9XX hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX@ > f 2 > f > 2 z h 3 3 x z > > > : : % : 8XgXgXgXgXgXgXgXpXh hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhX$ @ 2 h 3 > 3 f 2 f 3 2 2 C x 2 > > > % $ 1XgXgXgXgXgXgXgXgXaXyX hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhX@ @ 2 h 3 2 > 2 2 2 2 2 3 1XB > > > > $ z aXgXgXgXgXgXgXgXgXfXaXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhX@ @ 3 x f 2 2 f 2 2 : 2 h V ,X3 > 2 : : yXgXgXgXgXgXgXgXgXgXfXfX3XhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXo @ f x z 3 2 2 h : : > 3 x 3XB > > 2 3XaXgXgXgXgXgXgXgXgXgXfXgXuXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXo @ h x z z 3 > f f % : : 2 B 2XC C C iXfXgXgXgXgXgXgXgXgXgXgXgXpXx hXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhX @ h x z N h 2 % f 2 : % % 2 h z B ,XsXfXgXgXgXgXgXgXgXgXgXfXgXaX6X hXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhX @ h x z N x h : @ : 3 > @ % 2 z h g B aXfXgXgXgXgXgXgXgXgXfXfXaX9X% hXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhX @ h z x N z z 3 % % : 2 : : $ % 3 3 3 V fXfXgXgXgXgXgXgXgXfXfXaXyXg hXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXo o h z z x z h 3 > > : % : o % f > f h pXgXgXgXgXgXgXgXgXfXsXaXyXx hXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhX@ o f z z N z h f > > 2 > > $ @ 3 x N x ,XpXgXgXgXgXgXgXgXgXfXsXpXyXz hXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhX> X 3 z x N z f 3 2 > 2 2 2 2 > 9XaXaXpXiXsXfXgXgXgXgXgXgXfXsXsXpX9Xh hXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhX> 2 z z B z h 3 3 > > 2 2 2 2 yXiXaXpXsXsXfXgXfXfXfXfXfXsXsXsXpX9X3 hXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhX > f z N x h f 3 > 2 > 2 2 2 1XuXyXuXaXsXsXfXfXsXsXsXsXsXsXpXiX9X% hXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhX % 2 z N N z f f > > % 2 2 2 V 9XyXyXpXaXaXsXsXsXaXaXsXsXpXpXiX3X$ hXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhX1X @ 2 f z x z h 3 2 > % 2 2 > 2 7XiXaXiXiXpXpXaXaXaXaXpXpXiXiXiXB hXhXhXwXV.(.hXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXm X > 2 f f 3 h f 3 > : > 2 2 2 3XyXuXyXuXuXiXpXpXpXpXpXiXiXiX7X> hXhXtXa.x.z.hXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhX>X#XX % 2 f f 2 f f 3 > : : 2 2 > B 2X9X9XyXyXyXuXuXiXiXuXuXuXyXB 3 dX;Xv.M.m.,.:.hXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXF.N.8 X $ 2 g 3 3 f f 3 2 : > 2 2 > > 7X8X8X9XyXyXyXuXuXuXyXyXuX3Xg .O X @ % x h f h x f 2 > > 2 > > > 3 6X8X8X9X9XyXyXuXuXyXyX7XB j #XN.[.W.E I hXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXL.Y @.D ; @ o f B z z x h f 2 2 2 > > > : 2X8XyXyXyXyXyXuXuXyXyX1Xl A.N.%X'.R I hXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXS.L =.*.s 8 f N x x N h f f 2 2 > > > % x 9X9XuXyXyX9XyXyX7Xz h %.c.}.W.R R hXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhX{ L 8.b.1.u z N V V z 2 2 2 2 2 > > : % 1X8XyX9X8X8X9X8Xz > M m.}.!.E K hXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhX4XI Y }.g.e.k C V V ,X1XB > > 2 > > : % 2 V 3X7X3XC V 2 o j &X7.D.I T hXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhX% r I E {.q.i.V ,X8X8X3XV 2 > : : : : : % > 2 f g : o @ rX-X^.C.T T hXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhX: : h U I @./.p.e.H.7X3Xx f 3 2 2 > > > : : : % $ @ o > 0X=X~.C.I [ hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhX2 > h h l ] T 2.].u.l.J.> : : : 2 2 2 2 > > > % $ @ % 3 5X*XC.O.K | hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhX: f h f f u ] ] #.6.r.0.9 7 + + @ $ $ $ @ o o o o @ N qX`.C.E d } hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhX% > 2 > > > : - F | #./.t.y.9.9 ' _ w b b t 4 6 ! eXhXhX_.2.X.K -.hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhX$ $ % % $ @ @ 3 S | R ..4.6.%Xk.a.f.hXhXhXhXhXhXhXhXhXhXK.Y [ A.hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhX% % % hXhXhXhXhX .X.G R +.$.U.$.*.hXhXhXhXhXhXhXhXhXhXhX;.G.hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX" +}; diff --git a/bibliotheque-graphique-iut-1.1/src/exemples/images/nouveau4.xpm b/bibliotheque-graphique-iut-1.1/src/exemples/images/nouveau4.xpm new file mode 100644 index 0000000..fbce4a7 --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/exemples/images/nouveau4.xpm @@ -0,0 +1,257 @@ +/* XPM */ +static char *nouveau4[] = { +/* columns rows colors chars-per-pixel */ +"64 80 171 2 ", +" c #030303", +". c #0B0B0B", +"X c #16130F", +"o c #1E170F", +"O c #141414", +"+ c #1F1911", +"@ c #1C1C1C", +"# c #261F08", +"$ c #281F0B", +"% c #221C14", +"& c #24210F", +"* c #2B2717", +"= c #352716", +"- c #3B2C1B", +"; c #3C3418", +": c #242424", +"> c #2B2B2B", +", c #322920", +"< c #322D28", +"1 c #3A3128", +"2 c #3D3B2C", +"3 c #333333", +"4 c #3B3B3B", +"5 c #473D17", +"6 c #4C341D", +"7 c #563B22", +"8 c #64551C", +"9 c #7F7706", +"0 c #7C6E1A", +"q c #564D24", +"w c #454232", +"e c #4E4033", +"r c #5E5435", +"t c #56513E", +"y c #664628", +"u c #6E4C29", +"i c #6F5E22", +"p c #685236", +"a c #6D553E", +"s c #434343", +"d c #4B4B4B", +"f c #514E47", +"g c #545454", +"h c #5E5C57", +"j c #5B5B5B", +"k c #685847", +"l c #795E44", +"z c #6C6749", +"x c #756E48", +"c c #636363", +"v c #6C6C6C", +"b c #737373", +"n c #7B7B7B", +"m c #835E3A", +"M c #816F22", +"N c #8F7926", +"B c #8F6337", +"V c #8F6338", +"C c #886645", +"Z c #8B7242", +"A c #A37040", +"S c #AB7643", +"D c #AF7A46", +"F c #B37B47", +"G c #B37D4A", +"H c #96841D", +"J c #B49B1B", +"K c #968524", +"L c #97822D", +"P c #9D852E", +"I c #9D8530", +"U c #9F8A36", +"Y c #A2872E", +"T c #A2882D", +"R c #A98F2E", +"E c #AE942D", +"W c #B1962D", +"Q c #B69A2D", +"! c #B99E2B", +"~ c #A28A32", +"^ c #AA8E3A", +"/ c #B38C30", +"( c #AD9332", +") c #B09532", +"_ c #B49931", +"` c #B99E32", +"' c #B5A028", +"] c #BDA12C", +"[ c #C2A62D", +"{ c #C1AB2B", +"} c #CBAE2A", +"| c #CDB02A", +" . c #D5BA22", +".. c #DCBF2B", +"X. c #C4A932", +"o. c #D5A63E", +"O. c #E2C81E", +"+. c #F6E017", +"@. c #FCE11E", +"#. c #DEC12B", +"$. c #E4C625", +"%. c #E6C826", +"&. c #EBCC27", +"*. c #E5C728", +"=. c #E7C82A", +"-. c #EDCF2E", +";. c #EFD027", +":. c #F3D426", +">. c #F7D826", +",. c #FBDB26", +"<. c #F3D429", +"1. c #FCD72B", +"2. c #FDDB2A", +"3. c #E6CA33", +"4. c #E8CC37", +"5. c #F5D831", +"6. c #FCDE34", +"7. c #FBDE3D", +"8. c #FDE036", +"9. c #FDE038", +"0. c #BF8649", +"q. c #BFA95A", +"w. c #BAB07B", +"e. c #C2864B", +"r. c #CA8E4C", +"t. c #CB9049", +"y. c #CD8E50", +"u. c #D29252", +"i. c #E09C58", +"p. c #D2B948", +"a. c #CDB553", +"s. c #F0BA45", +"d. c #F9BF47", +"f. c #F6B84B", +"g. c #FBBF49", +"h. c #EBAC50", +"j. c #F5AA5F", +"k. c #FBAF5E", +"l. c #FCB05B", +"z. c #FBAD61", +"x. c #FDC642", +"c. c #FDC049", +"v. c #EBD042", +"b. c #FDE142", +"n. c #FDE34B", +"m. c #DDCD6F", +"M. c #EAD664", +"N. c #EFDA68", +"B. c #F7DF60", +"V. c #858585", +"C. c #8B8B8B", +"Z. c #949494", +"A. c #999890", +"S. c #9C9C9C", +"D. c #A2A2A2", +"F. c #ACACAC", +"G. c #B4B4B4", +"H. c #BDBCB7", +"J. c #BCBCBC", +"K. c #D2C48F", +"L. c #DED18D", +"P. c #FEEC88", +"I. c #C4C4C4", +"U. c #CBCBCB", +"Y. c #D4D4D4", +"T. c #DCDCDC", +"R. c #E4E4E4", +"E. c #ECECEC", +"W. c #F4F4F4", +"Q. c #FDFDFD", +"!. c None", +/* pixels */ +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.. . !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.. O @ @ : > : @ O !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!. @ > 4 s d d g d s 4 3 @ . !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.. @ 3 d g g d d s 4 4 4 4 4 > O !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!. O : s j j j g s 4 > 3 3 > 3 4 > X !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!. O > 3 g j j g s 4 3 4 4 4 4 3 > 3 @ . !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.. 3 > d j j g d d 4 4 4 4 4 v V.j 3 : . !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!. O 3 3 g g g g g d 4 4 3 4 Z.U.T.T.v > O !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.. > > s d g g g g d 4 4 > j U.R.Y.G.Z.3 O . !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.. 3 : s d g j g g d s 4 : b E.W.c 3 g 4 @ . !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.O 3 : d g j g g g d s 4 > n W.T.3 @ > 4 @ . !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.: 3 > d g j j g d d 4 3 4 S.W.I.3 @ < e = # $ !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.> > 3 s g c j g d s 4 3 d S.G.G.g , m o.;.%. .J 9 !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!. @ > s d g j j g d s 4 4 4 g j g k F s.1.,.,.1.,.@.+.O./ u = !.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!. . : d d g j g d s 4 3 3 4 4 4 < C i.h.f.d.k.z.k.l.g.x.g.j.S !.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!. : s d d j g d 4 4 3 4 4 4 4 > l G D e.t.r.y.u.u.u.e.S B 7 !.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.. O s d s d d s 4 4 3 4 4 4 3 : : a G S D G A V y 6 !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.. O 3 s 4 s s s 4 4 3 3 4 4 4 3 > @ > 1 - - !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.O : > 3 3 3 3 4 4 4 4 3 3 3 3 3 > : O @ : !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!. O : > > 3 3 > > > 3 > > : : : : : : > 3 !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.. @ : > 3 > > > > > > > > : : @ @ @ @ > 4 !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.. : : s d 4 4 4 3 > : : : > : : : : > 3 v !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.. : : 4 g g g s s d s s 3 3 > > > > : 4 > C.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.@ : 4 j c v v j g d d d 4 3 : : : > : 3 > d !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.@ @ 3 j b b b b c c j g d s 3 > : @ > : > > @ !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.O : d c n n n v c j j g g d 4 : : @ : @ 3 4 O !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.@ O 3 g v b b v c j g g d s s 3 > @ : : @ > s > !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.. @ : 4 j v b b c j d d s s 4 3 3 : : @ : @ 3 j n 3 !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.@ : d s c b b v j g d s 4 4 3 3 > : @ : : : 4 G.G.g !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.. : > j n c b v c g d s 4 4 4 3 > : @ : : : s C.W.R.C.> !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.@ > 4 j b c b v c g s 4 4 4 3 > : : : : > > F.E.Q.Q.U.v @ !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.. : 4 s g d 3 v c j d s s s 3 > > : : : : @ n Q.Q.Q.Q.W.U.j !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.O : s d s s O d c j c 4 4 s > > : : : @ @ > Q.Q.Q.Q.Q.Q.E.H. !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.O > d d s 4 3 d j d j d 4 g 4 > > : : @ : H.Q.Q.Q.Q.Q.Q.Q.T.d !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.O O 3 g d d 4 > > g 4 s c c v 4 > > : : @ S.W.Q.Q.Q.Q.Q.Q.Q.R.I. !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.O O 4 g d d s > @ 3 4 4 g n b j > > > O v E.Q.Q.Q.Q.Q.Q.Q.Q.W.R.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.O O 4 j g d d 3 @ @ @ s d v C.b > 3 : > U.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.W.S.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.. O s j j g s s > @ @ > d j n C.4 > : b T.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.W.Y.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.. O d j j c s s 3 : : > c b c Z.c > : J.W.Q.Q.Q.Q.Q.Q.Q.Q.Q.W.Q.T.j !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!. O d j g c g s > > : 3 > s j Z.V.> 4 T.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.W.Q.R.D. !.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!. O d g g c j g > : > > : 3 4 v S.4 c E.W.W.W.Q.Q.Q.Q.Q.Q.Q.Q.W.R.J.@ !.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!. O d g g c j g 4 : : : > > 3 3 C.c b E.W.W.Q.Q.Q.Q.Q.Q.Q.Q.W.W.R.I.s !.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!. O d g g c g d s : : : > > > > 4 j c T.E.W.W.Q.Q.Q.Q.Q.Q.Q.W.E.R.I.j !.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!. . s g g c g d s > 3 > : : > : > g s D.R.E.Q.Q.Q.Q.Q.Q.Q.W.W.R.R.I.j !.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!. . 4 g j c j d s 3 3 4 > : : > 3 > j v G.E.Q.Q.Q.Q.Q.Q.Q.W.W.R.T.H.d !.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!. . 3 d g c c d s 3 > 3 4 4 > : @ > 3 j Z.E.W.Q.W.W.W.W.W.W.E.R.T.J.4 !.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!. : d g c c g s 4 > 3 3 4 s 4 > @ d c R.R.W.W.E.W.E.W.E.E.R.T.T.J.@ !.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!. : 4 d c c g s 4 3 3 3 3 3 4 3 > Z.S.R.R.R.R.E.R.R.R.R.R.R.T.Y.D.O !.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!. : 4 s j c g s w 3 3 3 3 3 3 3 3 U.I.Y.T.T.R.R.R.R.T.T.T.Y.Y.Y.c !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.: O : > s g c j d s 4 4 3 > 3 > 3 > J.I.I.U.U.Y.T.T.T.T.T.Y.Y.Y.G.> !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.P.w O : : s d g g d s 4 3 3 3 > 3 3 > S.J.G.I.I.I.U.Y.Y.Y.U.U.U.U.v O !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.b.9.<.K 2 > 4 d d g d s d d 3 3 3 3 > > c F.F.J.J.I.I.U.U.U.I.I.U.S.4 !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.#.v.2.:. .z d c d d c j c n j > 3 > > > 4 D.G.J.J.J.I.I.U.I.I.U.F.n !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.p.E #.,.,.$.x S.n g n Z.C.Z.b 3 3 > > > : S.G.I.J.I.I.I.I.U.U.I.n !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.a.Q [ %.>.:.w.S.Z.n C.S.b 4 3 3 > > > @ j J.J.U.I.I.J.I.I.F.d @ !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.q.T ! #.:.,.M.A.F.I.G.j 4 3 3 3 3 : : : V.J.I.J.G.G.J.J.d O !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.F.q I W | &.,.B.L.H.I.D.4 > > > > > : @ 3 b S.F.S.n b > . !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.@ > f ~ E ] %.,.,.7.N.m.{ { E K q 2 > @ @ > 4 g g : . . !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.: : d g h ~ I Y E ! X.%.%.&.;.;.;.>.' : > : @ @ > 3 . . !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.s > d g d g d t r L I I I I T W W ! ] P > > : @ @ > > 4 !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.> s d s s 4 3 3 3 > @ @ % 5 8 i N M ; * O X X & 0 K 3.6.6.6.b.n.b.7.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.3 > 3 > > > @ @ @ O X . X % % + + - p Z ^ ] *.&.:.<.:.<.=.-.-.3.4.5.2.9.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.3 @ @ @ @ > d O !.!.!.!.!.!.!.!.K.a.` E W R E _ W Q Q Q E ( ( _ ) ) _ X.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!." +}; diff --git a/bibliotheque-graphique-iut-1.1/src/exemples/images/nouveau5.xpm b/bibliotheque-graphique-iut-1.1/src/exemples/images/nouveau5.xpm new file mode 100644 index 0000000..0ad3852 --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/exemples/images/nouveau5.xpm @@ -0,0 +1,276 @@ +/* XPM */ +static char *nouveau5[] = { +/* columns rows colors chars-per-pixel */ +"64 80 190 2 ", +" c #030303", +". c #0B0B0B", +"X c #131313", +"o c #1B1B1B", +"O c #261F08", +"+ c #281F0B", +"@ c #352716", +"# c #3C2C1C", +"$ c #232323", +"% c #2C2C2C", +"& c #332A21", +"* c #322D28", +"= c #33312C", +"- c #3C3929", +"; c #333333", +": c #393734", +"> c #3B3935", +", c #3B3B3B", +"< c #4C341D", +"1 c #453F2C", +"2 c #563B22", +"3 c #413F39", +"4 c #63591E", +"5 c #7F7706", +"6 c #4F4820", +"7 c #4E4033", +"8 c #43413F", +"9 c #664628", +"0 c #6E4C29", +"q c #635922", +"w c #6D553E", +"e c #75692C", +"r c #6C6135", +"t c #7C6A3B", +"y c #434343", +"u c #4C4B4B", +"i c #545454", +"p c #5A5751", +"a c #5E5954", +"s c #5B5B5B", +"d c #685847", +"f c #795E44", +"g c #676050", +"h c #746752", +"j c #636363", +"k c #6E6C65", +"l c #6B6B6B", +"z c #747474", +"x c #7B7B7B", +"c c #87741D", +"v c #8C7A1D", +"b c #835E3A", +"n c #887523", +"m c #857128", +"M c #8C7729", +"N c #937E2C", +"B c #8F6337", +"V c #8F6338", +"C c #836B38", +"Z c #8E7732", +"A c #937B31", +"S c #987F33", +"D c #886645", +"F c #80704D", +"G c #89774C", +"H c #8B7A53", +"J c #A37040", +"K c #AB7643", +"L c #AF7A46", +"P c #B37B47", +"I c #B37D4A", +"U c #96821D", +"Y c #99861A", +"T c #B49B1B", +"R c #9A8427", +"E c #9F8A25", +"W c #9C852C", +"Q c #9A8230", +"! c #A48D25", +"~ c #A48A2C", +"^ c #A79223", +"/ c #AB9523", +"( c #AF9822", +") c #AB912A", +"_ c #B09923", +"` c #A28A30", +"' c #B38C30", +"] c #AB9031", +"[ c #B49931", +"{ c #BC9E33", +"} c #C8AE24", +"| c #C8A92F", +" . c #D5B921", +".. c #DCBF26", +"X. c #D8B72E", +"o. c #C3A333", +"O. c #C9AC31", +"+. c #C3A23E", +"@. c #D5A63E", +"#. c #D5B233", +"$. c #E1BC34", +"%. c #F0BE3F", +"&. c #E2C81E", +"*. c #F6E017", +"=. c #FCE11E", +"-. c #DCC03A", +";. c #E4C625", +":. c #EECD27", +">. c #E1C12D", +",. c #EECA2D", +"<. c #FDDC26", +"1. c #FCD72B", +"2. c #FDDA2A", +"3. c #EBC13A", +"4. c #F4CF32", +"5. c #F4CC3C", +"6. c #F5D237", +"7. c #FADB36", +"8. c #F6D43C", +"9. c #948252", +"0. c #9A8A51", +"q. c #93825B", +"w. c #BF8649", +"e. c #B9A958", +"r. c #978D6D", +"t. c #B39862", +"y. c #C2864B", +"u. c #CA8E4C", +"i. c #CB9049", +"p. c #CD8E50", +"a. c #D29252", +"s. c #E09C58", +"d. c #CFA643", +"f. c #C4AF44", +"g. c #D6A847", +"h. c #DCB047", +"j. c #D4BE42", +"k. c #D8B24B", +"l. c #D4BF4C", +"z. c #E1B142", +"x. c #E9BC45", +"c. c #E3B24A", +"v. c #E9B94C", +"b. c #F4BD46", +"n. c #F9BF47", +"m. c #F7BB4A", +"M. c #FABF4A", +"N. c #EBAC50", +"B. c #F5AA5F", +"V. c #FBAF5E", +"C. c #E1B45E", +"Z. c #FCB05B", +"A. c #C5A560", +"S. c #D9B667", +"D. c #DDB668", +"F. c #DCBA68", +"G. c #C8B274", +"H. c #C3B47F", +"J. c #FBAD61", +"K. c #EEC448", +"L. c #F6C342", +"P. c #FDC642", +"I. c #FDC049", +"U. c #F5C15D", +"Y. c #F3CD5A", +"T. c #D2C062", +"R. c #E6C260", +"E. c #F1CA6D", +"W. c #E8CF7D", +"Q. c #FCE367", +"!. c #848484", +"~. c #8D8D8D", +"^. c #949494", +"/. c #9D9D9D", +"(. c #B3B09F", +"). c #A4A4A4", +"_. c #ACACAC", +"`. c #B4B4B4", +"'. c #BCBCBC", +"]. c #FEEF9A", +"[. c #C4C4C4", +"{. c #CBCBCB", +"}. c #D4D4D4", +"|. c #DCDCDC", +" X c #E4E4E4", +".X c #EDEDED", +"XX c #FFFAE0", +"oX c #F4F4F4", +"OX c #FDFDFD", +"+X c None", +/* pixels */ +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X. . +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+XX X o o $ % $ o X . +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X. o % , y u u i u y , % o . +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X. o = y i i u u y , , , , , % X +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X o $ y s s s i y , % ; ; ; ; , % . +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X X % ; i s s i y ; ; , , , , ; ; ; o . +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X. ; $ u s s i u u , ; , , , l !.i ; $ . +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X X ; ; i i i i i u , , , ; /.{.|.|.l % X +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X % = y u u s i i u , , % s {. X}.'.^.; X . +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+XX ; $ y u s i i i u y ; % z .XoXj ; u , o . +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+XX ; $ u u s s s i u y ; $ x oX|.; o % , $ . +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+XX ; % u i s s s u u y , , ).oX{.; $ * 1 @ O + +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+XX % ; u i s s i u y , ; u ^.`.`.i & b g.:.;. .T c +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X . % y y i s s u u y , , , i s i d L x.1.<.2.2.2.=.*.&.' 0 @ +X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X . $ u u i s s u y , ; ; , , , * D s.N.m.I.V.V.V.Z.I.P.M.B.K +X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X $ y u u s i u , , > ; , , , % f I P y.i.u.p.a.a.a.y.K B 2 +X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X. o y u y u u u , ; ; , , , , $ $ w I K L P J V 9 < +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X. o ; y , y y y , , ; ; , , ; ; % o $ & # # +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X. o % ; ; ; = ; , , ; ; ; ; ; ; % $ X o $ +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X X $ ; % ; ; % % % ; ; % $ $ $ $ $ $ % % +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X o $ % % % % % % % % % % $ $ $ o o o % % +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+XX $ $ y u , , , ; % % % $ $ $ $ $ $ % ; +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+XX $ $ , i s i y y u y , ; ; = % % % $ , % +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+Xo $ , s l l j s i u u y , ; % $ $ % $ ; % +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+XX o , s z z z l l s s i u y ; % $ $ $ $ ; % +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+XX $ u j z x x l j j s i i y ; % $ o $ o ; ; +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+Xo X ; i l x x l j s i u u y y , $ $ $ $ o $ , % +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X. o $ , i j z z j i u u y y y , ; $ o $ $ X ; s x % +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+Xo $ ; , y y u i s i y y y , ; % % $ $ $ % $ , `._.i +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X. $ = , u y y y s u u y , , ; % % $ $ o $ $ y !.oX X~.$ +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+Xo % , y y , , y , y y y , , ; % % $ $ $ % % _..XoXOX}.z o +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X. $ y y u , ; y % , y y y ; ; ; % $ $ $ $ o x OXOXOXOXoX{.s +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+XX $ y u u ; % % , ; , , ; ; ; % $ $ $ X o X OXOXOXOXOXOX.X'. +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+XX % i i u ; $ % ; , , ; ; , % % % $ o X . ~.OXOXOXOXOXOXoX|.u +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+XX X ; i s u $ $ % % ; , ; ; y u % % $ X . y XOXOXOXOXOXOXOX.X[. +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+Xo X , i j u o o % % , y , , u % % % $ X o ~.OXOXOXOXOXOXOXOXoX X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+XX X , s s , X X $ , ; u ; i % % % ; $ . , '.OXOXOXOXOXOXOXOXoXoX/.+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X. o y s s % . X $ , u y i , ; % % % X X ; OXOXOXOXOXOXOXOXOXoXoX}.+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X. X y s i $ . X , u l s i % ; % % % X o s OXOXOXOXOXOXOXOXOXoXOX|.s +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X. X u s i X . . y i j l y ; ; ; % % o X z oXOXOXOXOXOXOXOXOXoXOX X). +X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X. X u s i $ . X y u j !.; ; ; % % $ X X x oXOXOXOXOXOXOXOXOXoXoX.X'.o +X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X. X u s i $ X y i ^.s ; ; ; % % $ X . z oXoXOXOXOXOXOXOXOXoXoX X[.y +X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X . X y i i % X u u !.i ; % ; % ; $ X x oXoXOXOXOXOXOXOXoXoX.X X[.s +X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X . . y i i , . . u z !., ; ; ; % ; $ $ , oXoXOXOXOXOXOXOXoXoX.X|.[.i +X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+XX . , i i u . . y x ~.; ; ; ; ; % $ o X .XoXOXOXOXoXOXOXoXoX.X|.'.u +X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X. . ; u i u o . u j j ; ; ; ; ; % % ; o .XoXoXOXoXoXoXoX.X.X X|.'., +X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X . % y i l % $ s z s ; ; ; ; ; ; % , X . ^..XoXoXoX.X.X.X.X.X|.}.'.o +X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X . $ , i j u , z ^.u ; ; ; ; ; ; ; ; X X ; X.X.X.X X X X X|.|.|./.X +X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X . $ ; y s j y l j , ; ; ; ; = = o o X y ; |. X X X X X X|.}.}.}.l +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X X $ % y i j i y y , ; ; ; ; ; ; o X . ; $ {.}.}.|.|.|.}.}.}.}._.% +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X X $ % y u i i u y , ; ; ; % ; % $ . . X [.{.{.}.}.}.{.{.{.{.j X +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X o o ; u u i i y y , ; ; ; ; % $ . . , /.'.[.{.{.{.[.{.[./., +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X X X $ u y y u y y , ; ; ; % % o . X $ ^.'.[.[.{.{.[.[._.u +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X X X X , i y y y y , , ; ; ; % X X X o . ~.[.[.[.[.{.[.[.^.+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+XX o o $ u u y ; ; , ; ; ; , ; o $ u ; . x [.[.'.[.[.`.x s +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+Xo o % % o % y y ; ; % ; ; u j , j !.).!.. u '.`.`.'.`.l % +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+XX % , u ; % ; , y , ; % , i z x !.'. X{., ; _./.x z y % +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+Xo = u s i u , ; = ; , y ; y u s !.!._.|. X~.a h g e 4 6 +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X$ $ u i s s i y , % % 3 r t t r r.H.G.F.R.E.F.C.U.b.3.4.7.+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X% % u u i i u y , = - ^ #.o.X.{ { d.d.g.$.b.L.M.m.b.I.L.L.5.7.+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X% y u y y , ; ; ; % q ,.~ Z S S S Z Z Q Q ` ~ ` ` ] [ o.| O.-.+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+Xo % ; % % % $ o X X o % e Y U v c c n m M N R W Z N A A N C +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+XX o o o o % y z u 3 y 8 : : > : : ; = = 3 p k (.XX+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+Xo o +X+X+X+X+XT.j.l.0.9.G h H 9.q.H H 9.t.A.S.Y.8.8.].+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+Xe.E } ;...>.3.3.$.x.x.h.c.v.c.c.v.K.5.6.Q.+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+Xf.E ^ ! ^ / / _ _ _ _ ! ) ) ~ ! ~ ^ +.k.W.+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X" +}; diff --git a/bibliotheque-graphique-iut-1.1/src/exemples/images/nouveauinverse0.xpm b/bibliotheque-graphique-iut-1.1/src/exemples/images/nouveauinverse0.xpm new file mode 100644 index 0000000..affb619 --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/exemples/images/nouveauinverse0.xpm @@ -0,0 +1,278 @@ +/* XPM */ +static char *nouveauinverse0[] = { +/* columns rows colors chars-per-pixel */ +"64 80 192 2 ", +" c #030303", +". c #0B0B0B", +"X c #100F0F", +"o c #141414", +"O c #181614", +"+ c #1B1916", +"@ c #1B1B1B", +"# c #261F08", +"$ c #281F0B", +"% c #2D2411", +"& c #352716", +"* c #342B15", +"= c #372F18", +"- c #3B2C1C", +"; c #232323", +": c #2C2C2C", +"> c #352C23", +", c #322E2B", +"< c #333333", +"1 c #3B3B3B", +"2 c #483D15", +"3 c #4C341D", +"4 c #433923", +"5 c #4F3B27", +"6 c #563B22", +"7 c #513D29", +"8 c #7F7706", +"9 c #4E4033", +"0 c #664628", +"q c #6E4C29", +"w c #644E36", +"e c #6D553E", +"r c #6E673E", +"t c #74683C", +"y c #444444", +"u c #494643", +"i c #4B4B4B", +"p c #534B43", +"a c #545454", +"s c #5B5B5B", +"d c #6A5440", +"f c #685847", +"g c #745D47", +"h c #795E44", +"j c #655A50", +"k c #7A6146", +"l c #676455", +"z c #746353", +"x c #716C52", +"c c #646464", +"v c #6B6B6B", +"b c #767367", +"n c #737373", +"m c #7B7B7B", +"M c #835E3A", +"N c #826E23", +"B c #8F6337", +"V c #8F6338", +"C c #8E7437", +"Z c #8C7F38", +"A c #907635", +"S c #957B34", +"D c #9A7E33", +"F c #93743B", +"G c #A17E3A", +"H c #886645", +"J c #917A47", +"K c #836D54", +"L c #887455", +"P c #A37040", +"I c #AB7643", +"U c #AF7A46", +"Y c #B37B47", +"T c #B37D4A", +"R c #B49B1B", +"E c #9E8331", +"W c #AB8F2F", +"Q c #A28532", +"! c #A48933", +"~ c #AA8D31", +"^ c #AD8739", +"/ c #A68B3D", +"( c #AB8F39", +") c #B48E34", +"_ c #B78F3B", +"` c #B19637", +"' c #B0963E", +"] c #BA9238", +"[ c #B79D3E", +"{ c #BC9E3B", +"} c #C4A72E", +"| c #CBAE2C", +" . c #D5B921", +".. c #CCAF33", +"X. c #C2A83F", +"o. c #D5A63E", +"O. c #D0AA3A", +"+. c #DEB63A", +"@. c #E2B53A", +"#. c #E4BB3C", +"$. c #E9BE3A", +"%. c #E2C81E", +"&. c #F6E017", +"*. c #FCE11E", +"=. c #E7C625", +"-. c #EECD27", +";. c #FDDC26", +":. c #F3D62D", +">. c #FCD72B", +",. c #FDDA2A", +"<. c #E6C833", +"1. c #E0C73D", +"2. c #E3C93B", +"3. c #EED036", +"4. c #FDDE31", +"5. c #F3D13D", +"6. c #F9DA3B", +"7. c #FDE036", +"8. c #FDE03A", +"9. c #8F854F", +"0. c #9E8643", +"q. c #9E8750", +"w. c #978D53", +"e. c #B38B40", +"r. c #BF8649", +"t. c #AC9440", +"y. c #B49A4A", +"u. c #878472", +"i. c #C2864B", +"p. c #CA8E4C", +"a. c #CB9049", +"s. c #CD8E50", +"d. c #D29252", +"f. c #E09C58", +"g. c #DEAE43", +"h. c #DDAE4A", +"j. c #CAB045", +"k. c #D4BA46", +"l. c #DAB04B", +"z. c #E1B340", +"x. c #E1B841", +"c. c #E8BF42", +"v. c #E4BA48", +"b. c #F0BA45", +"n. c #F9BF47", +"m. c #F6B84B", +"M. c #FBBF49", +"N. c #EBAC50", +"B. c #F5AA5F", +"V. c #FBAF5E", +"C. c #FCB05B", +"Z. c #FBAD61", +"A. c #DBC148", +"S. c #E0C647", +"D. c #ECC544", +"F. c #E6CE42", +"G. c #EDC845", +"H. c #E8C14B", +"J. c #FDC642", +"K. c #FDC049", +"L. c #EAD043", +"P. c #EAD14E", +"I. c #F2D749", +"U. c #F4DC59", +"Y. c #FCE14C", +"T. c #FBE251", +"R. c #FCE35B", +"E. c #F6DE6D", +"W. c #F6E062", +"Q. c #838383", +"!. c #8A8A8A", +"~. c #939393", +"^. c #9D9D9D", +"/. c #A29E83", +"(. c #B2AE97", +"). c #A4A4A4", +"_. c #ABABAB", +"`. c #B4B4B4", +"'. c #BDBDBD", +"]. c #C0AF95", +"[. c #DCD08E", +"{. c #FCEB86", +"}. c #FEED8A", +"|. c #C3C3C3", +" X c #CBCBCB", +".X c #D4D4D4", +"XX c #DCDCDC", +"oX c #E3E3E3", +"OX c #EDEDED", +"+X c #F4F4F4", +"@X c #FEFEFE", +"#X c None", +/* pixels */ +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X . . #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X o @ ; : ; @ @ + X #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X. @ < 1 y i a a y y 1 : + #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#Xo : 1 1 1 1 1 y y a a a i < @ #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#XX : 1 < < < < : 1 y a s s a u ; @ #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X. @ < : < < 1 1 < < 1 y a s s a < : O #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#XX ; < s Q.n y < 1 1 1 y i a s s i ; < . #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#XO : v XXXX X~.1 1 1 y i a s a a a < < @ #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X. + < ~.`..XoX Xs : < 1 u a a a a i y : : . #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X. @ 1 a < c +XOXn ; 1 y i a a a a i y ; < X #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X. @ 1 : + < XX+Xm : < y i a a s s a i ; < O #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X$ $ & 7 > ; < |.+X^.1 1 y u i a s s a i : < o #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X8 R .=.-.o.h > a `.'.~.i < 1 y i a s s a i < : o #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X& q ) %.&.*.;.,.,.;.>.b.T f a s a 1 1 1 y y a s s a i y : . #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#XI B.M.J.K.C.Z.Z.V.n.m.N.f.H : 1 1 1 1 < 1 y i s s a i i ; . #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X6 B I i.s.d.d.s.p.a.r.Y T k : 1 1 1 1 < 1 y y a a i i y ; #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X3 0 V P Y U I T e ; ; 1 1 1 < < 1 1 i i a y y y @ . #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X- - , : @ : < 1 1 1 1 < 1 1 y y 1 1 y < o X #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X; @ O ; : : < : < < < < 1 < < < 1 < : @ X #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X< : ; ; ; ; ; ; : < < < : : < < : < ; O #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X: : @ @ ; ; ; ; : ; : : : : : : : : ; ; #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X< : @ ; : ; ; ; ; : : < 1 1 1 i 1 : ; o #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X: 1 ; : : : : < 1 y y y y y a s a 1 ; ; X #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X : < ; : ; ; : < 1 y a i a s c v c s 1 ; @ #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X : : ; ; ; ; : < y i a s c v v n m n s < O @ #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X 1 < ; ; @ ; : < i a a s s c n n m m c i ; o #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X; 1 ; @ ; ; @ : < y y i i a s c v m n v a < o @ #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X, m s < @ ; @ ; ; < < y y y i i a c n n v s 1 ; @ . #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#Xa `.`.1 ; ; ; ; ; : : < 1 y y y a s v n s i < : ; @ #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X: !.oX+X!.y ; ; ; ; ; : : < 1 1 y i a c v s 1 : ; : ; . #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X@ v X@X+X+X`.; ; ; ; : ; : < 1 1 1 y a s c s a < @ 1 : @ #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#Xs X+X@X@X@X@Xm @ ; ; @ ; : < < 1 1 y i a c s y 1 < < 1 ; . #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X '.OX@X@X@X@X@XOXX o @ ; ; ; : < < s i i a a s 1 < 1 @ y : o #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#Xi XX+X@X@X@X@X@X@Xi . ; ; : : : < c a 1 i s a y : < @ y : o #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X |.OX+X@X@X@X@X@X@X).@ + : : : < < c c s y a s i < : @ 1 < o O #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#XXX+X@X@X@X@X@X@X@XXX@ . . : < : : < < 1 v a v c i y < ; ; : o O #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X).+X+X@X@X@X@X@X@X@X@X: . o ; : : : < < < i ~.m n s i ; @ ; ; o o #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X X@X+X@X@X@X@X@X@X@X@X1 . : @ < : : < < < < n ~.n c i ; o @ ; @ . #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#Xs XX@X+X@X@X@X@X@X@X@X@X< X O @ : : : < : < < < !.Q.m c < @ o ; o . #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X ).oX@X+X@X@X@X@X@X@X@X@X< o X 1 X : : < : : < < < ).Q.c i ; @ ; O #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X@ '.OX+X+X@X@X@X@X@X@X@X+X< X @ ; : : < < < < < : v ^.c a : o @ O #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#Xu '.oX+X+X@X@X@X@X@X@X@X+X@ X @ . . : : < < < < : : i _.Q.a < . @ o #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#Xc |.oXOX+X+X@X@X@X@X@X@X|.; . X @ < : < < < < : : y Q.~.a y @ < o #X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#Xa |.oXOX+X+X@X@X@X@X@X@XQ.@ . . @ . ; : < < < < < : 1 v ~.c a < 1 . #X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#Xi '.XXoX+X+X@X+X@X+X@X@Xa @ . X < < < < < < : < y c !.v c i y . #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X1 '.XXoXOX+X+X+X+X+XOX~.. o < < < < : < : < y c m ~.v s < . #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X@ '.XXXXoXOXOXOXOX!. < < < < < < < : 1 y a m ~.Q.y : #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#Xy ^..XXXoXoXoX_.o . . o o i . < < < < < < < 1 u a c v a 1 ; #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X:.| Y.}.#Xn v .X.X.XXX|. @ : @ @ . ; ; . : < < < < < < 1 i a c s i < : #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#Xk.| | } 4.R.#X`.i `..X X|. o X o . @ . . < : < < < < 1 y i s s a 1 : ; #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#XG ] 3.H.R.{.u.c X^. @ o . . o . . ; < : < < < < 1 y i a a a y : ; #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#Xy.F ] x.I.7.L.w.u X s ).!.< : O . . o : < < < < < 1 1 y i a i i 1 @ @ #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X' F ^ z.5.T.Z b o @ oXoX!.i : ; + O @ < : : : < < 1 1 y u i i i i @ o o #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X/ F _ h.D.U.[.!.|.oX'.).y a 1 : . . 1 ; : : < : < < 1 y y y y a 1 o o . #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X( F ) g.c.I./.'.|.m c s y ; @ @ y 1 ; ; : : < < 1 1 < < 1 i y ; @ @ X #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#XX.E ~ @.$.P.(.!.v n s v y @ ; @ @ ; : : < < < < : : 1 y y < + ; : o o #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X! E +.#.2.x c i i v y < o . @ ; : : < : : : < 1 y y < : 1 y y : @ #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X~ E @.@.E.r o ; 1 < @ @ o @ ; : ; ; : < 1 1 1 < : < 1 a a s i : @ #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#XS E l.x.W.l : : @ o o + @ ; : : < < 1 1 < : : : 1 y i s s a i : ; #X#X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#XS ! G.v.1.9.< # X @ ; : : < < < : : ; ; ; @ : < 1 y i a a i i ; < #X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X~ W c.O.L.k t = . X X o + + + O o o X X O @ : : < < 1 y y i y : #X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X/ Q @.O.{ t.(.L 7 7 w k k w - % 2 * 4 u 1 < : ; @ ; : : : < ; ; #X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X! F e.F q.#X#X#X#X#XY.R.R.R.Y.:.4.<...` 0.L z z p , @ @ @ @ 1 #X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#Xj.k.S.A.[ C A S A S S A S J K g d d j : ; #X#X#X#X#X#X#X#X#X#X#X#X#X", +"#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X" +}; diff --git a/bibliotheque-graphique-iut-1.1/src/exemples/images/nouveauinverse1.xpm b/bibliotheque-graphique-iut-1.1/src/exemples/images/nouveauinverse1.xpm new file mode 100644 index 0000000..6f6cc67 --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/exemples/images/nouveauinverse1.xpm @@ -0,0 +1,222 @@ +/* XPM */ +static char *nouveauinverse1[] = { +/* columns rows colors chars-per-pixel */ +"64 80 136 2 ", +" c #030303", +". c #0E0A07", +"X c #0C0C0C", +"o c #100F0F", +"O c #1A120A", +"+ c #141414", +"@ c #1E1C12", +"# c #1C1C1C", +"$ c #261F08", +"% c #281F0B", +"& c #352716", +"* c #362E19", +"= c #3C2C1C", +"- c #373114", +"; c #3C331C", +": c #242424", +"> c #2C2C2C", +", c #332A21", +"< c #322D28", +"1 c #333333", +"2 c #3B3B3B", +"3 c #4C341D", +"4 c #443A1C", +"5 c #563B22", +"6 c #4A4019", +"7 c #574B14", +"8 c #7F7706", +"9 c #514620", +"0 c #4E4033", +"q c #664628", +"w c #6E4C29", +"e c #6D553E", +"r c #434343", +"t c #4B4B4B", +"y c #545454", +"u c #5B5B5B", +"i c #685847", +"p c #795E44", +"a c #636363", +"s c #6C6C6C", +"d c #747474", +"f c #7A7A7A", +"g c #835E3A", +"h c #8F6337", +"j c #8F6338", +"k c #886645", +"l c #A37040", +"z c #AB7643", +"x c #AF7A46", +"c c #B37B47", +"v c #B37D4A", +"b c #97841D", +"n c #98851E", +"m c #B49B1B", +"M c #9D8724", +"N c #9E852A", +"B c #A38B25", +"V c #A68C2B", +"C c #AA8E2C", +"Z c #AB9225", +"A c #AF9B25", +"S c #AD922E", +"D c #B19B20", +"F c #B4992B", +"G c #BA9E2C", +"H c #A08D35", +"J c #B38C30", +"K c #AD9130", +"L c #B59C3C", +"P c #BDA12A", +"I c #BBA030", +"U c #C4A82C", +"Y c #CEB12A", +"T c #D5B921", +"R c #D6B92A", +"E c #C6AA31", +"W c #C4AC3A", +"Q c #D5A63E", +"! c #E2C81E", +"~ c #F6E017", +"^ c #FCE11E", +"/ c #DEC12C", +"( c #E7C625", +") c #EECD27", +"_ c #E1C42E", +"` c #EDCE28", +"' c #FDDC26", +"] c #F2D329", +"[ c #FCD72B", +"{ c #FDDA2A", +"} c #E4C731", +"| c #E0C63D", +" . c #FADD34", +".. c #FBDF3F", +"X. c #BF8649", +"o. c #BAB074", +"O. c #C2864B", +"+. c #CA8E4C", +"@. c #CB9049", +"#. c #CD8E50", +"$. c #D29252", +"%. c #E09C58", +"&. c #F0BA45", +"*. c #F9BF47", +"=. c #F6B84B", +"-. c #FBBF49", +";. c #EBAC50", +":. c #F5AA5F", +">. c #FBAF5E", +",. c #FCB05B", +"<. c #FBAD61", +"1. c #FDC642", +"2. c #FDC049", +"3. c #FCE147", +"4. c #FCE148", +"5. c #FDE352", +"6. c #FBE465", +"7. c #858585", +"8. c #8E8E8E", +"9. c #939393", +"0. c #9B9B9B", +"q. c #A4A4A4", +"w. c #ABABAB", +"e. c #B1B0A4", +"r. c #B4B4B4", +"t. c #BBBBBB", +"y. c #C4C4C4", +"u. c #CDCCC7", +"i. c #CBCBCB", +"p. c #D4D4D4", +"a. c #DCDCDC", +"s. c #E4E4E4", +"d. c #ECECEC", +"f. c #F4F4F4", +"g. c #FDFDFD", +"h. c None", +/* pixels */ +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h. X X h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h. + # : : : # # # X h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.X # 1 2 r t y y t r 2 > # h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.+ > 2 2 2 2 2 r r t y y r 1 # X h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.X > 2 1 1 1 1 1 1 r y u u y r > + h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.X # 1 1 1 2 2 2 1 1 2 r y y u u 1 > + h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.X : 1 y 7.s r 2 2 2 2 t t y u u t : 1 X h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.+ > s a.a.i.9.1 1 2 2 t y y y y y 1 1 + h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.X # 1 9.t.p.s.i.u > 2 2 t y y u t t 2 1 > X h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.X # 1 t 1 a f.d.d > 1 r t y u u y t t : 1 X h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.X : 2 : # 1 a.f.f > 2 r t y y u y t t : 1 + h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.% $ & 0 < : 1 y.f.0.2 1 r t t y u u y t > 1 + h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.8 m T ( ) Q g , y t.t.9.t 1 2 r t y u a y r 1 1 + h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.& w J ! ~ ^ ' { { ' [ &.v i y u y 2 2 2 2 t t u u y t r > X h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.z :.-.1.2.,.<.<.>.*.=.;.%.k < 2 2 2 2 1 2 r t y u y t t : X h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.5 h z O.#.$.$.#.+.@.X.x v p : 2 2 2 1 2 2 r r y u t t r : h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.3 q j l c x z v e > : 2 2 2 2 1 2 2 r t t r t r # h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.= = , : # > 1 1 2 2 2 1 1 2 r r r 2 r 1 + X h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.: # X : > > 1 1 > 1 1 2 2 2 1 1 1 1 > # + h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.1 > : : : : : : > 1 1 > > > 1 1 > > : + h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.> 1 # # : : : > : > > > : > > > 1 > : # h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.1 > # : : : : : : > > 1 2 2 2 t r : : + h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.> 1 : > > > > 1 2 2 t t r r y u y 2 : : X h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h. > 1 : > : : > 1 2 t t t y a a a s u 2 : # h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h. > 1 : > # : : 1 r t y u u s s f f d u 1 # + h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h. 1 1 # : : : > 2 t t y y u a s d f d a t : + h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.: r : # : # : : 1 r t t t y u a s d f s y 1 + # h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.1 f y 1 + : : : > 1 1 2 r t t t u a d d s y t 1 # X h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.y r.r.2 : > : # : : > 1 2 r r r y u s d s t t y # : h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.> 8.s.f.7.r # : : : > > 1 1 2 2 r t y a s u 2 r : : : : h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.: s i.g.g.d.r.: : : : : : > 1 2 2 r r y a a r 1 # > 1 > # h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.u i.f.g.g.g.g.f : : : : : > 1 1 1 2 r t y y t + r > > 2 : X h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h. t.d.g.g.g.g.g.g.> # # : : : > 1 1 2 2 t a s : # 2 : > r > + h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.t a.f.g.g.g.g.g.g.t.# # : : > > > 2 1 s a a y 2 1 2 # 1 t > X h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h. y.d.g.g.g.g.g.g.g.f.1 # > > > 1 1 1 d d t y 1 > > # > t 1 + + h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.a.f.g.g.g.g.g.g.g.g.d.+ + > > > > 1 1 y d y r 2 > : 1 : 1 1 + + h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.q.f.f.g.g.g.g.g.g.g.g.g.2 + > > > > > 1 r f a y 2 : 1 : : : 2 + # h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.p.f.f.g.g.g.g.g.g.g.g.g.t # # > > > 1 1 2 f s y 1 : : > # : 2 + # h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.u a.g.f.g.g.g.g.g.g.g.g.g.a # : > > > 1 > 1 s 7.y 2 : > : # : r + + h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h. q.s.g.f.g.g.g.g.g.g.g.g.f.d : 1 # > > 1 1 1 s 9.u 1 > # > # 1 r + X h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.# t.s.f.f.g.g.g.g.g.g.g.g.f.7.+ 1 + > > 1 1 1 a w.y > 1 : : # 1 r + X h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.r y.s.f.f.g.g.g.g.g.g.g.f.f.a : > + > > 1 1 > t w.t : > > r # 2 t + X h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.u y.s.d.f.g.g.g.g.g.g.g.f.s.a : : o 1 > 1 1 1 r 0.t : 1 r 1 : y r + X h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.y y.a.d.f.f.g.g.g.g.g.g.f.i.a # X X > 1 1 1 1 t 9.r r 1 t > r y r X X h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.t t.a.d.d.f.g.g.f.g.g.g.f.y.> + X 1 1 1 1 1 1 d r a 2 1 u u y 2 X h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.2 t.a.s.d.f.f.f.f.f.f.g.f.> : # > 1 1 1 1 > t a y t y s y t 1 X h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.# t.p.a.s.d.f.d.d.d.d.f.w.: X X # 1 1 1 1 1 1 t s r y a a y t > h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.# 0.p.a.s.d.s.s.s.d.d.i.> + o > 1 1 1 1 1 1 1 2 r y a a t 2 # h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.s i.p.p.a.s.s.s.s.t.1 > X : 1 1 1 1 1 1 1 1 2 r u a u r 1 > h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.> r.p.p.p.p.a.a.8.# u # X u > 1 > 1 1 1 1 2 r t y u y r > : h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.+ a i.i.i.i.p.p.t y > t + u > 1 1 > 1 1 1 2 r t y y y r > # h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.1 0.i.y.y.i.i.: > > # X r > > 1 1 1 1 2 r r t y t t 1 + h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.t w.y.y.y.8.1 + : X # > > > 1 1 1 2 2 r t t t t t : + h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.y.i.t.r : + X + X 2 : > > > > 1 2 2 2 r r r t 2 + o h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.f f r.r.> + X > # X # : # > > > 1 1 1 2 1 1 r t r : # # X h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.t s w.: X + r # X # # # > 1 1 1 1 1 > > 2 r r 1 # : > # + h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.t > r + 1 0.8.2 2 # : > > 1 > > > 1 2 r r 1 > 2 r r > + h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.> o X 9.r.0.9.d 1 : : : : > 1 2 2 2 1 > 1 2 t y u t 1 # h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.s.> 2 t.r.q.r.0.2 > > > 1 1 2 2 1 > > > 2 r t u u y t : : h.h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.5. . ...4.6.o.e.u.r.q.8.a > > 1 1 1 < > : : : # : 1 2 r t y t t t > > h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.3. .] ] ` R U Y Y _ | W H 6 * 4 ; ; 4 4 @ - o + + : > 1 1 1 2 r r t r : h.h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.} / E I K K N K F G G P F S C B B Z M n n 7 O O . X X X + # # > > > 1 > # h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.L K V C C S K S S C C C B N B B B Z Z D A h.h.h.h.h.h.h.h. X X # # # # + h.h.h.h.h.h.h.h.h.h.h.h.", +"h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h." +}; diff --git a/bibliotheque-graphique-iut-1.1/src/exemples/images/nouveauinverse2.xpm b/bibliotheque-graphique-iut-1.1/src/exemples/images/nouveauinverse2.xpm new file mode 100644 index 0000000..6e12ec9 --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/exemples/images/nouveauinverse2.xpm @@ -0,0 +1,259 @@ +/* XPM */ +static char *nouveauinverse2[] = { +/* columns rows colors chars-per-pixel */ +"64 80 173 2 ", +" c #030303", +". c #0C0C0C", +"X c #110F0E", +"o c #1F180F", +"O c #141313", +"+ c #1C1C1B", +"@ c #261F08", +"# c #281F0B", +"$ c #221C12", +"% c #25221A", +"& c #352716", +"* c #32281D", +"= c #3D2D1D", +"- c #242424", +"; c #2B2B2B", +": c #332A21", +"> c #322D28", +", c #3E342A", +"< c #333333", +"1 c #3B3B3B", +"2 c #4C341D", +"3 c #563B22", +"4 c #4D3F31", +"5 c #7F7706", +"6 c #4E4033", +"7 c #4A4339", +"8 c #5D543A", +"9 c #664628", +"0 c #6E4C29", +"q c #6D553E", +"w c #7C6C39", +"e c #434343", +"r c #4B4B4B", +"t c #545454", +"y c #5B5B5B", +"u c #685847", +"i c #795E44", +"p c #69624F", +"a c #646464", +"s c #6B6B6B", +"d c #7C786A", +"f c #737373", +"g c #7C7C7C", +"h c #835E3A", +"j c #8F6337", +"k c #8F6338", +"l c #886645", +"z c #897E52", +"x c #A37040", +"c c #AB7643", +"v c #AF7A46", +"b c #B37B47", +"n c #B37D4A", +"m c #B49B1B", +"M c #9E822D", +"N c #9D8235", +"B c #A68A2D", +"V c #AB8E2C", +"C c #AF912D", +"Z c #B3942E", +"A c #BB9C2F", +"S c #A78C33", +"D c #A98D33", +"F c #A68C3D", +"G c #A88E38", +"H c #B38C30", +"J c #AE9132", +"K c #B19534", +"L c #BA9C33", +"P c #B0963A", +"I c #B79E3F", +"U c #B89B3E", +"Y c #BEA22B", +"T c #C6A92D", +"R c #CCAF2B", +"E c #D5B921", +"W c #DABD2A", +"Q c #C7A431", +"! c #C8A533", +"~ c #CEAC3C", +"^ c #D4AE34", +"/ c #D5A63E", +"( c #D9B336", +") c #D9BD33", +"_ c #DABF3B", +"` c #E8BE32", +"' c #E4BE38", +"] c #E2C81E", +"[ c #F6E017", +"{ c #FCE11E", +"} c #DEC02B", +"| c #DDC23B", +" . c #E7C625", +".. c #EBCB27", +"X. c #E1C329", +"o. c #EDCE28", +"O. c #FDDC26", +"+. c #F3D52F", +"@. c #FCD72B", +"#. c #FBD92A", +"$. c #EEC536", +"%. c #E6CA39", +"&. c #F8CC36", +"*. c #F8CE3C", +"=. c #BF8649", +"-. c #AA934B", +";. c #B09B41", +":. c #AE9752", +">. c #A59B5E", +",. c #AF9A5B", +"<. c #B09B5C", +"1. c #BEA44D", +"2. c #BFA654", +"3. c #BCAA51", +"4. c #8F806F", +"5. c #958C61", +"6. c #988E6C", +"7. c #A1997E", +"8. c #C2864B", +"9. c #CA8E4C", +"0. c #CB9049", +"q. c #CD8E50", +"w. c #D29252", +"e. c #E09C58", +"r. c #D8B64A", +"t. c #C2A851", +"y. c #C7B554", +"u. c #C9B056", +"i. c #F0BA45", +"p. c #F9BF47", +"a. c #F6B84B", +"s. c #FBBF49", +"d. c #EBAC50", +"f. c #F5AA5F", +"g. c #FBAF5E", +"h. c #FCB05B", +"j. c #FBAD61", +"k. c #D6C048", +"l. c #DFC15B", +"z. c #E4CB47", +"x. c #FDC642", +"c. c #F8CF40", +"v. c #FDC049", +"b. c #EFCB51", +"n. c #F9D351", +"m. c #DDC87F", +"M. c #F2D77B", +"N. c #838383", +"B. c #8B8B8B", +"V. c #939393", +"C. c #9D9D9D", +"Z. c #A79684", +"A. c #B1AC99", +"S. c #A3A3A3", +"D. c #A8A7A7", +"F. c #ABABAB", +"G. c #B6B0A3", +"H. c #B4B4B4", +"J. c #BCBCBC", +"K. c #C0B6A5", +"L. c #C7BCAA", +"P. c #E8D698", +"I. c #EEDB9B", +"U. c #FBE084", +"Y. c #C4C4C4", +"T. c #CBCBCB", +"R. c #D4D4D4", +"E. c #DCDCDC", +"W. c #E4E4E4", +"Q. c #ECECEC", +"!. c #F4F4F4", +"~. c #FDFDFD", +"^. c None", +/* pixels */ +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^. . . ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^. O + - ; - - + + . ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.. + < 1 e r t r r e 1 ; + ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.O ; 1 1 1 1 1 e e r t t r < + ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.X ; 1 < < < < ; 1 r t y y t e - + ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.. + < < < < < 1 < < 1 e t t a t < ; O ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.. - < t N.f e 1 1 1 1 e r t t y r ; < ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.O ; s W.R.T.C.< 1 1 1 r t y t t t < < O ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.. O < V.H.R.W.T.y ; < e e t t t t r e < ; . ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.. + 1 r < a !.Q.f - 1 e r t t y t r e - < . ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^. - 1 ; + < E.!.g ; < e r t t y t t r - < O ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.# @ & 6 > - < Y.!.C.1 1 e r r y y y t r ; < O ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.5 m E .../ h : t H.H.C.r < 1 e r t y a t e < ; O ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.& 0 H ] [ { O.#.#.#.@.i.v u t y t 1 1 1 1 r r y y t r e ; . ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.c f.v.x.v.h.j.j.g.p.a.d.e.l > 1 1 1 < 1 1 e r y y t r r - . ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.3 j c 8.q.w.w.q.9.0.8.b =.i ; 1 1 1 < 1 1 e e r y r r e - . ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.2 9 k x b v c n q - - 1 1 1 1 < < 1 r r r e r e + ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.= = : - + ; < 1 1 1 1 < 1 1 e e e 1 e < + . ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.- + X - ; < ; < ; < < 1 < 1 < < < < ; + O ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.< ; - - - - - ; ; ; < < ; ; < < ; ; - O ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.; ; + + + - - - - ; ; ; ; ; ; ; ; ; - + ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.< ; + - - - - - - ; ; < 1 1 1 e e - - O ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.; 1 - ; ; ; < < < e e r e e y y t 1 - - . ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^. < < - ; - - - < 1 r r r t y a s a y 1 - + ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^. - < - ; + - ; < e r r y a s f f g f y < O + ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^. < < + - - - ; 1 r t t y y a f f g f a r - O ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.- e + + - - + ; < 1 e r r t y a s f g s t 1 O + ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.< g y < + - + + - < 1 1 e r r r y a f f s y 1 - + . ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.r H.H.1 + - - - - ; < < 1 e e e r a s f s a e ; + - ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.; B.W.!.g O - - - + - ; ; 1 1 1 e r t a f f s r 1 < + X ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.+ s T.~.~.^.^.+ - - - ; ; ; < < 1 1 e t y s s s y r 1 ; + ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.y Y.~.~.~.~.^.O + - - - - ; ; ; ; 1 e r y s f s a r 1 1 - ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.; J.Q.~.~.~.~.~.^.O + + + - - ; - ; 1 1 r t a s s y e 1 e ; O ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.r E.~.~.~.~.~.~.~.H.+ + - - ; ; - < < < 1 r y a y y r 1 < ; X ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^. Y.Q.~.~.~.~.~.~.~.!.V.+ - - ; ; - < < < 1 1 r r y y t 1 1 < X O ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.E.!.~.~.~.~.~.~.~.~.Q.r + ; < - O < < < 1 e 1 r r t t < < < O O ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.C.!.~.~.~.~.~.~.~.~.~.~.Y.+ - ; - - < t s r O 1 r r t e < ; < + O ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.R.~.!.~.~.~.~.~.~.~.~.~.W.t + ; ; - < g g e ; ; e r r 1 - ; 1 O O ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.y E.~.!.~.~.~.~.~.~.~.~.~.!.H.- ; ; ; < J.D.t ; - < e e ; - e r O ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.. S.W.~.!.~.~.~.~.~.~.~.~.!.~.E.- - ; ; < J.V.a 1 ; < 1 < - - 1 r O ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.+ J.W.!.~.~.~.~.~.~.~.~.~.!.!.Q.t - ; ; 1 S.N.y < ; ; < - O + 1 r O ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.e J.W.!.!.~.~.~.~.~.~.~.~.!.!.W.g - ; ; y C.g t < - - ; + O - r r O ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.y Y.W.Q.!.~.~.~.~.~.~.~.!.!.Q.E.N.- < < N.B.f y 1 + - O X - t t r O ^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.y Y.W.Q.Q.!.~.~.~.~.~.~.!.!.Q.W.N.- ; e H.B.f s r ; O . O 1 y t e . ^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.r J.E.Q.!.!.~.~.~.~.~.~.!.Q.W.R.B.- ; N.S.N.a y 1 - . O + a t t 1 . ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.< J.E.W.Q.!.!.!.!.!.!.~.!.Q.Q.R.V.; r V.N.s t r < O . O ; s t r < ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.+ J.R.E.Q.Q.Q.!.Q.Q.!.!.!.W.W.Y.V.; f f a y r < + . O - y a t r ; . ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.+ C.R.E.E.W.W.W.W.Q.Q.W.W.W.W.Y.g < y a y r 1 ; . O < t a a t 1 - . ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.s R.R.R.E.E.W.W.W.W.W.E.R.R.J.^.< s a r 1 < O O < r t y y e < - . ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.; H.R.R.R.R.E.E.E.E.R.R.T.Y.Y.^.< r y r < ; ; 1 e r y a t e ; - . ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.O a T.T.T.T.R.R.R.T.Y.Y.Y.H.J.t ; ; < < < < < 1 e r t t r e ; - . ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.1 C.T.Y.T.T.T.T.Y.Y.J.J.F.D.a ; ; < < < < < 1 r r t r r < O - . ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.+ r F.Y.Y.Y.T.Y.Y.J.J.J.H.S.1 ; ; < < < 1 1 e e r r e e - O O . ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.J.T.T.Y.Y.Y.Y.J.Y.H.B.- ; ; ; < < 1 1 1 e e e 1 < O O O r ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.*.n.U.^.^.e y F.Y.Y.J.Y.Y.T.J.J.y - - ; ; < < < 1 1 < 1 1 ; O O + + ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.r.&.&.&.&.U.^.y a H.J.H.H.J.J.J.g - - ; < < < < < ; < < ; - . . ; - O e ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.~ Q ` *.&.*.M.6.; e f g C.H.C.f < + - t r ; ; ; ; < 1 e ; . + r e ; + ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.V B Z ( $.*.U.^.< + < t t 1 ; + - - a s s < < 1 1 1 ; X O . + t y r < + ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.Z B M A ^ ' b.I.a ; 1 ; + + - - y F.C.B.1 1 1 < - O O O O + t y r r - ; ^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.L V C Z ! l.P.d r ; + + - > r B.N.V.s ; % - + O + + O O 1 t t r r - t ^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.t.Z V V L t.p % O O X - s C.T.T.D.+ O X . X O + O . - 1 e e r e ; ^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.m.u.K C Z S w 8 , * 6 4.Z.L.G.G.7 $ o $ + O O . . O - ; ; ; < ; e ^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.U 2.;.;.y.k.z.%.W } | _ ) W _ 3.z 5.7.A.>.y e ; + + + + 1 ^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.+.o. .X.} W } .X.X.X.X.W R L K P S 1.^.^.^.^.^.t 1 e ^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.#.} T Y Y A A L K D J J S K G N M B V P ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.%.T Z S S F -.:.,.<.<.<.<.<.,.:.G V V C ^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.", +"^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^." +}; diff --git a/bibliotheque-graphique-iut-1.1/src/exemples/images/nouveauinverse3.xpm b/bibliotheque-graphique-iut-1.1/src/exemples/images/nouveauinverse3.xpm new file mode 100644 index 0000000..e2f52c2 --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/exemples/images/nouveauinverse3.xpm @@ -0,0 +1,314 @@ +/* XPM */ +static char *nouveauinverse3[] = { +/* columns rows colors chars-per-pixel */ +"64 80 228 2 ", +" c #030303", +". c #080701", +"X c #0C0B04", +"o c #0C0C0C", +"O c #191406", +"+ c #17150F", +"@ c #141414", +"# c #1A1715", +"$ c #1A1816", +"% c #1C1C1C", +"& c #261F08", +"* c #281F0B", +"= c #352716", +"- c #352F1D", +"; c #3D3210", +": c #242423", +"> c #2B2B2B", +", c #342B22", +"< c #322D28", +"1 c #3E3021", +"2 c #333333", +"3 c #3B3B3B", +"4 c #4E3A26", +"5 c #533A22", +"6 c #503C28", +"7 c #504C0A", +"8 c #6B5B1C", +"9 c #7A7306", +"0 c #4E4033", +"q c #534334", +"w c #5D4833", +"e c #704F2C", +"r c #695B2D", +"t c #624A32", +"y c #6C4D30", +"u c #695E34", +"i c #6D553E", +"p c #755A3E", +"a c #6B622F", +"s c #7A6726", +"d c #7F6635", +"f c #434343", +"g c #4A4A46", +"h c #4B4B4B", +"j c #535044", +"k c #585648", +"l c #5D5949", +"z c #545454", +"x c #5B5B5B", +"c c #685847", +"v c #615E4D", +"b c #765D43", +"n c #795E44", +"m c #65604B", +"M c #6D6648", +"N c #636363", +"B c #6B6B6B", +"V c #737373", +"C c #7B7B7B", +"Z c #817A08", +"A c #835E3A", +"S c #836E28", +"D c #947627", +"F c #917A27", +"G c #94792D", +"H c #8F6337", +"J c #866C36", +"K c #886E36", +"L c #826839", +"P c #91653B", +"I c #8D7234", +"U c #8D7937", +"Y c #8E723C", +"T c #917633", +"R c #9A7B34", +"E c #9B7D39", +"W c #A07F34", +"Q c #886645", +"! c #826B54", +"~ c #A37040", +"^ c #AB7644", +"/ c #AE7946", +"( c #B37B47", +") c #B37D4A", +"_ c #9C9109", +"` c #B49B1B", +"' c #A9A003", +"] c #9D822D", +"[ c #9D8332", +"{ c #9E843C", +"} c #A38829", +"| c #AC912D", +" . c #B19A2E", +".. c #A28334", +"X. c #A48A33", +"o. c #AC8D34", +"O. c #A5863C", +"+. c #AA8539", +"@. c #AE8C38", +"#. c #B38F36", +"$. c #B38B3A", +"%. c #A0913D", +"&. c #AA923F", +"*. c #B59236", +"=. c #BB9730", +"-. c #B49931", +";. c #B49A3D", +":. c #BEAA26", +">. c #C39D34", +",. c #C7AF21", +"<. c #D5B921", +"1. c #D7BA28", +"2. c #CBA23B", +"3. c #D5A63E", +"4. c #D3A83B", +"5. c #E0BF31", +"6. c #E2B539", +"7. c #E7BA3E", +"8. c #E8BB3A", +"9. c #D8CF01", +"0. c #DBCD17", +"q. c #EED61D", +"w. c #EEDA19", +"e. c #F1DD15", +"r. c #F1D51F", +"t. c #FADD1F", +"y. c #F4E30D", +"u. c #FBEB0B", +"i. c #F2E014", +"p. c #FBE217", +"a. c #FDE913", +"s. c #F6E018", +"d. c #FCE11E", +"f. c #FEF11D", +"g. c #E7C625", +"h. c #E2C820", +"j. c #EECD27", +"k. c #F0CF28", +"l. c #E2D22C", +"z. c #F7D526", +"x. c #FCDC24", +"c. c #FCD62C", +"v. c #FCD92B", +"b. c #EBC036", +"n. c #F1C535", +"m. c #FACF34", +"M. c #FBCB38", +"N. c #F3D035", +"B. c #F8D333", +"V. c #F9E63D", +"C. c #B58D44", +"Z. c #BF8649", +"A. c #AC9741", +"S. c #AE964A", +"D. c #B9944B", +"F. c #B49C4A", +"G. c #BAA350", +"H. c #888770", +"J. c #8B8A74", +"K. c #A9926C", +"L. c #BFAD79", +"P. c #C2864B", +"I. c #CA8E4C", +"U. c #C09143", +"Y. c #CB9049", +"T. c #CD8E50", +"R. c #D29252", +"E. c #E09C58", +"W. c #CEA243", +"Q. c #CEA940", +"!. c #C4A048", +"~. c #CFA348", +"^. c #D3A646", +"/. c #DBAB45", +"(. c #DEBE40", +"). c #D8BE49", +"_. c #C3A655", +"`. c #D4B156", +"'. c #E2AF46", +"]. c #E5B341", +"[. c #E9B346", +"{. c #E9B847", +"}. c #F1BC43", +"|. c #F9BF47", +" X c #F6B84B", +".X c #FBBF4A", +"XX c #EBAC50", +"oX c #F5AA5F", +"OX c #FBAF5E", +"+X c #FCB05B", +"@X c #FBAD61", +"#X c #DCC54E", +"$X c #FDC642", +"%X c #FDC049", +"&X c #E3C352", +"*X c #E2C76C", +"=X c #EDD06F", +"-X c #F2D066", +";X c #F4DF6B", +":X c #F8E36A", +">X c #F5E074", +",X c #858585", +" : % % $ @ hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXo $ 2 3 f h z z f f 3 > $ hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX@ > 3 3 3 3 3 f f z z z h 2 $ o hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXo > 3 2 2 2 2 > 3 f z x x z f : $ hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXo % 2 2 2 2 3 3 3 2 3 f h x x x 2 > @ hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXo : 2 z ,XV 3 3 3 2 f f h z x x h : 2 o hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX@ > B pXpXuX2X3 2 3 3 h z x z z x 2 2 @ hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXo $ 2 2X9XiXaXuXx > 3 3 g z z x h h 3 2 > o hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXo % 3 z 2 N fXsXV : 3 f h z z x z h f > 2 o hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXo % 3 > $ 2 pXfXC > 2 f h z z z x h h : 2 @ hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX* & = 0 < % 2 yXfX3X3 3 f g h z x x z h > 2 @ hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXZ ` <.g.k.3.A , z 8X8X3Xg 2 3 f h z x x z h 2 > @ hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhX= e *.h.s.t.x.v.v.x.v.}.) c z x z 3 3 3 f f z x x z f f > o hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhX/ oX.X$X.X+X@X@XOX|. XXXE.Q < 3 3 3 2 3 3 f h z x z h h : o hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhX5 H ^ P.T.R.R.T.I.Y.P./ ) n > 3 3 3 2 3 2 f h z x h h f : o hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhX5 y P ~ ( / / ) i : : 3 3 3 3 2 3 3 f h h f h f % hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXq 1 < : % > 2 3 3 3 3 2 3 3 f f f 3 f 2 $ o hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX: % @ % > > 2 2 2 2 2 2 2 3 2 2 2 2 > % @ hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX2 > : : : : : : > 2 2 2 > > 2 2 : 2 % @ hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX> > $ % % % : : > : > > > > > > 2 2 : % o hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX2 2 : : : : : : : > > 2 3 3 3 h 3 : : @ hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX2 2 : > > > 2 2 3 f f h 3 h z x z 3 : : o hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX > 2 % > : : > 2 3 f h h z x N B B x 3 : % hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX > 2 : > : : > 2 f h z x N N V V C V x 2 $ $ hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX 3 2 % : % : > 3 h z z x x N V V C V h 2 : @ hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX: 3 : % : % : > 2 f f h h z x N V V C N 2 2 2 % hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX2 C x 2 $ : : : : > 3 3 3 h h h z N V V V z > 2 % o hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXh 7X8X3 % : : % : > > 2 3 f 3 h z x N V V N 3 2 : % hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX> 1XaXfXC % : : : : : : 2 3 3 3 f h z N V V N x h 2 % o hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX% B iXgXfXsXC $ : : : > : > 2 2 3 3 h z x V V x z z 2 2 % hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXx uXfXgXgXgXfXf : : : % : > > 2 3 3 3 h x B z : 2 z 3 3 % o hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX 9XsXgXgXgXgXgXgX@ % % : : : > > 2 h 3 h z z 3 : 2 > 2 f > @ hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXg pXgXgXgXgXgXgXgX8X: % : : > > 2 z x 3 3 h z 2 > f > 2 f > @ hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX yXsXfXgXgXgXgXgXgXfX1X% % > > > 2 x C 2 2 3 f 3 f 3 > 3 h 2 @ @ hXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXaXfXgXgXgXgXgXgXgXgXsXh % > > > 2 B 1X2 2 2 3 2 2 > 2 3 z 2 @ @ hXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX6XfXfXgXgXgXgXgXgXgXgXfXyX: : 2 > 3 C V h 2 : > 3 3 2 2 f z 3 @ @ hXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXiXfXfXgXgXgXgXgXgXgXgXgXaX3X2 > > N 3Xz 3 > : : h 2 2 3 z x 3 @ @ hXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXx pXgXfXgXgXgXgXgXgXgXgXgXfXiXC C C 2XB 2 : : % f f > 3 z x x h @ o hXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhX 6XaXgXfXgXgXgXgXgXgXgXgXgXfXsX,XV z h 2 : % : 2 f % 2 z N z x h @ hXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhX: 9XsXfXfXgXgXgXgXgXgXgXfXfXaXB g h z 3 @ @ > f : @ : h x x z x h @ hXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXf 9XaXfXfXgXgXgXgXgXgXgXgXfXV 3 3 3 % % % : 2 : @ % 3 z z N z z h @ hXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXx yXaXsXfXfXgXgXgXgXgXgXfXpXh f > 3 % @ % % > > > f h z x z x f @ o hXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXx yXpXsXfXfXgXgXgXgXgXgXfXpX,Xx x N 3 @ @ > > 2 2 > f h z N z z f o @ hXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXg 9XpXsXfXfXgXgXfXgXgXgXfXfXiXpXaXsX9X2 2 2 2 2 > 2 3 f z N x z 3 > hXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhX3 9XpXaXsXfXfXfXfXfXfXfXfXsXsXpXaXuXyX2 2 2 2 > : 3 3 g z N z h 2 : hXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhX% 9XpXpXaXsXfXsXsXsXfXfXsXsXaXuXyXuX1X2 2 2 > 2 2 3 f h x N z g : hXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhX$ 3XiXpXpXaXaXsXaXaXsXsXsXaXpXuXyX9XV 2 2 2 % > > 3 g z N N z 3 % hXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhX(.V.wXhXhXhXB iXiXpXpXpXaXaXaXaXaXpXiXiXpXuX7X2 2 2 2 % > 2 f g z x z f 2 @ 2XhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXz.x.a.tXhXhX> 8XiXiXiXiXpXpXpXiXiXuXuXyXiXyX3X2 2 2 > > > 3 f h 3 f f 3 > X v hXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhX,.,.m.M.c.;XdX3 N uXuXuXuXiXpXiXuXuXyXyX9X9X2XN > 2 > : % > 3 f f 2 3 f 2 % . ).>XhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXK O.6.n.B.:X > 2 2 > : 2 3 h f 3 f f 2 @ . 8 B.F.hXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXI E W.[.B.#Xj N 7XyXyXuXuXyXyX9X9X8X8X6X3 > > 2 > > > 2 f x z f h x % @ X O >.] E hXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXI R '..Xm.A.l 1X9XyXuXuXyXyXyX9XyX8X2X: > > 2 2 2 3 f h x z h B f o @ ; G o.K L.hXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXT E Q.}.B.%.g x 7XyXyX9XyXyXuXyX9Xx % > > > 2 2 f 3 h N x x N f 8 s =.=.L S.hXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXK E !.%XB.M > z 8X9X8X8X9XyX9X1X: : > > 2 2 2 2 2 z V V N z a 1.8.8.d { hXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXT I S.7.&Xj o 2 V C 3X7X3XV > % : > > 2 > > B ,X,XC V C z w.5.$XK I 4XhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXT T C.^.-XrX@ @ : f f 2 > % % : > > : > 2 V 3X8X8X,XV i.r.[.E I r % hXhXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX[ I C.W.=X0X> o @ $ % % : > : > > > 2 3 f z 2X7XH.w.p./.o.I U z > : hXhXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX| J O.C.*X5X3 $ @ $ : : > 2 2 2 2 > > : : : H.l.u.7.>.I [ k h g : 2 hXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX] d E C.`.qXN @ o o o @ @ @ $ $ $ + + 7 _ 0.z.6.*.] ] u f f g f > hXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX-.J X.2._.hXhXeX! 6 4 t p n w _ ' 9 9.y.x./.o.| F - : : > 2 2 > % hXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXA.[ Y K.hXhXhXhXhXhXhXhXhXhXf.a.j.}.6.4...] | S 3 $ @ $ % % % $ hXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXG.;.hXhXhXhXhXhXhXhXhXhXhX*.$.U.@.+.W G X. .hXhXhXhXhX% % % hXhXhXhXhXhXhXhXhXhXhXhXhX", +"hXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhXhX" +}; diff --git a/bibliotheque-graphique-iut-1.1/src/exemples/images/nouveauinverse4.xpm b/bibliotheque-graphique-iut-1.1/src/exemples/images/nouveauinverse4.xpm new file mode 100644 index 0000000..5bd893c --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/exemples/images/nouveauinverse4.xpm @@ -0,0 +1,257 @@ +/* XPM */ +static char *nouveauinverse4[] = { +/* columns rows colors chars-per-pixel */ +"64 80 171 2 ", +" c #030303", +". c #0B0B0B", +"X c #16130F", +"o c #1E170F", +"O c #141414", +"+ c #1F1911", +"@ c #1C1C1C", +"# c #261F08", +"$ c #281F0B", +"% c #221C14", +"& c #24210F", +"* c #2B2717", +"= c #352716", +"- c #3B2C1B", +"; c #3C3418", +": c #242424", +"> c #2B2B2B", +", c #322920", +"< c #322D28", +"1 c #3A3128", +"2 c #3D3B2C", +"3 c #333333", +"4 c #3B3B3B", +"5 c #473D17", +"6 c #4C341D", +"7 c #563B22", +"8 c #64551C", +"9 c #7F7706", +"0 c #7C6E1A", +"q c #564D24", +"w c #454232", +"e c #4E4033", +"r c #5E5435", +"t c #56513E", +"y c #664628", +"u c #6E4C29", +"i c #6F5E22", +"p c #685236", +"a c #6D553E", +"s c #434343", +"d c #4B4B4B", +"f c #514E47", +"g c #545454", +"h c #5E5C57", +"j c #5B5B5B", +"k c #685847", +"l c #795E44", +"z c #6C6749", +"x c #756E48", +"c c #636363", +"v c #6C6C6C", +"b c #737373", +"n c #7B7B7B", +"m c #835E3A", +"M c #816F22", +"N c #8F7926", +"B c #8F6337", +"V c #8F6338", +"C c #886645", +"Z c #8B7242", +"A c #A37040", +"S c #AB7643", +"D c #AF7A46", +"F c #B37B47", +"G c #B37D4A", +"H c #96841D", +"J c #B49B1B", +"K c #968524", +"L c #97822D", +"P c #9D852E", +"I c #9D8530", +"U c #9F8A36", +"Y c #A2872E", +"T c #A2882D", +"R c #A98F2E", +"E c #AE942D", +"W c #B1962D", +"Q c #B69A2D", +"! c #B99E2B", +"~ c #A28A32", +"^ c #AA8E3A", +"/ c #B38C30", +"( c #AD9332", +") c #B09532", +"_ c #B49931", +"` c #B99E32", +"' c #B5A028", +"] c #BDA12C", +"[ c #C2A62D", +"{ c #C1AB2B", +"} c #CBAE2A", +"| c #CDB02A", +" . c #D5BA22", +".. c #DCBF2B", +"X. c #C4A932", +"o. c #D5A63E", +"O. c #E2C81E", +"+. c #F6E017", +"@. c #FCE11E", +"#. c #DEC12B", +"$. c #E4C625", +"%. c #E6C826", +"&. c #EBCC27", +"*. c #E5C728", +"=. c #E7C82A", +"-. c #EDCF2E", +";. c #EFD027", +":. c #F3D426", +">. c #F7D826", +",. c #FBDB26", +"<. c #F3D429", +"1. c #FCD72B", +"2. c #FDDB2A", +"3. c #E6CA33", +"4. c #E8CC37", +"5. c #F5D831", +"6. c #FCDE34", +"7. c #FBDE3D", +"8. c #FDE036", +"9. c #FDE038", +"0. c #BF8649", +"q. c #BFA95A", +"w. c #BAB07B", +"e. c #C2864B", +"r. c #CA8E4C", +"t. c #CB9049", +"y. c #CD8E50", +"u. c #D29252", +"i. c #E09C58", +"p. c #D2B948", +"a. c #CDB553", +"s. c #F0BA45", +"d. c #F9BF47", +"f. c #F6B84B", +"g. c #FBBF49", +"h. c #EBAC50", +"j. c #F5AA5F", +"k. c #FBAF5E", +"l. c #FCB05B", +"z. c #FBAD61", +"x. c #FDC642", +"c. c #FDC049", +"v. c #EBD042", +"b. c #FDE142", +"n. c #FDE34B", +"m. c #DDCD6F", +"M. c #EAD664", +"N. c #EFDA68", +"B. c #F7DF60", +"V. c #858585", +"C. c #8B8B8B", +"Z. c #949494", +"A. c #999890", +"S. c #9C9C9C", +"D. c #A2A2A2", +"F. c #ACACAC", +"G. c #B4B4B4", +"H. c #BDBCB7", +"J. c #BCBCBC", +"K. c #D2C48F", +"L. c #DED18D", +"P. c #FEEC88", +"I. c #C4C4C4", +"U. c #CBCBCB", +"Y. c #D4D4D4", +"T. c #DCDCDC", +"R. c #E4E4E4", +"E. c #ECECEC", +"W. c #F4F4F4", +"Q. c #FDFDFD", +"!. c None", +/* pixels */ +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!. . . !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!. O @ : : : @ @ @ . !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.. O 3 4 s d g g d s 4 > @ !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.O > 4 s 4 4 4 s s d g g s 3 @ . !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.. > 4 4 3 3 3 > 4 s g j j g s > O !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.. @ 3 3 3 3 3 4 4 3 4 s g g j j 3 > O !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.O : 3 g V.b 4 4 4 3 s s d g j j d : 3 . !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.O > v T.T.U.Z.4 3 4 4 d g g g g g 3 3 O !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.. @ 3 Z.G.Y.R.U.j > 4 s s g g j d d s > > . !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.. @ 4 d 3 c W.E.b : 4 s d g j j g d d : 3 . !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.. @ 4 : @ 3 T.W.n > 3 s d g g j g g s : 3 @ !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.# # = e < : 3 I.W.D.4 3 s d d g j j g d > 3 : !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.9 J .$.&.o.m , g G.G.S.d 3 4 s d g j j g d 3 > > !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.= u / O.+.@.,.2.2.,.1.s.G k g j g 4 4 4 s d g j c g s s > O !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.S j.g.x.c.l.z.z.k.g.f.h.i.C < 4 4 4 4 3 4 s d g j g d d : . !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.7 B S e.y.u.u.y.r.t.e.F F l > 4 4 4 3 4 3 s s g j d d s : . !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.6 y V A F D S G a : : 4 4 4 3 4 3 4 s d d s d s @ !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.- - 1 > : > 3 4 4 4 4 3 4 4 s s s 4 s 3 O . !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.: @ O : > 3 3 > 3 3 3 3 4 3 3 3 3 3 > @ O !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.3 > @ : : : : : > 3 3 3 > > 3 3 > > : O !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.4 > @ @ @ : : : > > > > : > > > 3 > : @ !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.v 3 3 @ : : : : : : > > 3 4 4 s s s : : O !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.C.> 3 : > > > 3 3 4 s s d s s g j g 4 : : . !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.d > 3 : > : : : 3 4 s d d g c c c v j 4 : @ !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.@ > 3 : > @ : > 3 s d g j c c b b n b j 3 @ @ !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.O 4 3 @ : @ : > 4 d g g j j c v b n b c d : O !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.> s : @ : @ : : 4 4 s d d g j c v b n v g 3 O @ !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.3 n j 3 O : : : : 3 4 4 s s d g j c b b v j 4 : @ . !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.g G.G.4 : : : @ : > > 3 4 s s d d c v b v c s d : @ !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.> C.R.W.C.s : : : @ : > 3 3 4 4 s d g c v v v n j 3 @ . !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.: v U.Q.Q.E.G.: > : : > : > 3 4 4 4 s g j v b c b j 4 > O !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.j U.W.Q.Q.Q.Q.n @ : : @ : > 3 3 4 s s d j v v 4 s g d 4 : . !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!. J.E.Q.Q.Q.Q.Q.Q.> @ @ : : > > 3 s 4 4 c j c d @ s d d s : O !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.d T.Q.Q.Q.Q.Q.Q.Q.J.: @ : : : > 3 g 4 d j d j d > 4 s s d 3 O !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!. I.R.Q.Q.Q.Q.Q.Q.Q.Q.S.@ @ > > > 4 v c c s 4 g > > 3 d d g 4 . O !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.T.W.Q.Q.Q.Q.Q.Q.Q.Q.R.v @ > > > j b n g 4 3 3 @ > s d g g 3 O O !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.S.W.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.U.: : 3 > b C.v d 4 : @ @ 4 s d g j 4 O O !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.Y.W.W.Q.Q.Q.Q.Q.Q.Q.Q.Q.R.b @ > 4 C.n j d > @ @ > s d j j j s O O !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.j T.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.W.J.: > c Z.c b c > : : 3 s s c j j d O !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!. D.R.Q.W.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.T.4 > V.C.c s > 4 : > > s g j g j d O !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.@ J.R.W.Q.Q.Q.Q.Q.Q.Q.Q.Q.W.W.E.c 4 D.v 4 3 : : : : > d j c g g d O !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.s I.R.W.W.Q.Q.Q.Q.Q.Q.Q.W.W.W.E.b c V.3 3 > > > : : 4 g j c g g s O !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.j I.R.E.E.Q.Q.Q.Q.Q.Q.Q.Q.E.E.T.c j 4 > 3 > > : : > s d g c g g d O !.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.g I.T.E.W.Q.Q.Q.Q.Q.Q.Q.W.E.E.D.s g > : > : : : 3 3 s d j c j g s . !.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.d J.T.E.E.W.Q.Q.W.Q.Q.Q.W.W.F.b j > 3 : : : > 4 > 3 s d j c g g 4 . !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.4 J.T.R.E.W.W.W.W.W.Q.W.W.E.Z.j 3 > @ : 3 4 s 3 > 3 s d j v g g 3 !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.@ J.T.T.E.E.E.E.E.W.E.W.E.E.R.c s @ > 4 s 3 3 3 > 4 s g c c g d > !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.@ S.Y.T.T.R.R.E.R.E.E.E.R.R.T.D.Z.> 3 4 3 3 3 3 3 4 s g c c d 4 @ !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.c Y.Y.Y.T.R.R.R.R.R.T.T.T.Y.J.U.3 3 3 3 3 3 3 3 s s g c j s 3 > !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.> G.Y.Y.Y.Y.T.T.T.T.Y.U.U.I.I.J.3 3 > 3 3 3 3 4 s d j j g s > : O : !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.O v U.U.U.U.Y.Y.Y.U.I.I.I.G.J.S.> 3 3 > 3 3 > 4 s d g g g s > : O w P.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.4 S.U.I.I.U.U.U.I.I.J.J.F.F.c > > 3 3 3 3 d d s d g d d 4 > 2 H <.9.b.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.b G.I.I.U.U.I.I.J.J.J.G.D.s > > > 3 > j n v j c d d c d z .:.2.v.#.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.n J.I.U.U.I.I.I.J.I.G.Z.: : > 3 3 3 b Z.V.Z.n g V.Z.x O.>.,.#.E p.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.@ g F.I.I.J.I.I.U.J.J.j : > > > 3 3 4 b D.V.n Z.S.w.<.>.%.[ W a.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.O d J.J.G.G.J.I.G.C.: @ > > 3 3 4 4 j F.I.F.A.M.,.:.#.Q T q.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.. 3 b n S.F.S.b 3 @ : > > 3 > > 4 D.I.J.L.B.,.&.} W P q F.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.. . : g g 4 > @ @ : 2 q K E ] { m.N.9.,.>.&.] E ~ f > @ !.!.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.. . 3 > @ @ : : > ' >.;.;.;.&.&.%.| ! E Y P U h g d : : !.!.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.3 > > @ @ > > > P ] Q W W T P L P P L r t d g g d d > s !.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.7.b.n.b.6.6.6.3.K 0 & X . O * ; M N i 8 5 % % @ > 3 3 3 4 s s s s > !.!.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.8.2.5.4.3.-.-.=.:.:.<.;.;.%.] ^ Z p - o % % % X . O O O @ : > > 3 3 > 3 !.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.X.) ) ) _ ( R W Q ` ` Q W ) R W ) ` a.K.!.!.!.!.!.!.!.!.@ s > @ @ @ @ 3 !.!.!.!.!.!.!.!.!.!.!.!.", +"!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!." +}; diff --git a/bibliotheque-graphique-iut-1.1/src/exemples/images/nouveauinverse5.xpm b/bibliotheque-graphique-iut-1.1/src/exemples/images/nouveauinverse5.xpm new file mode 100644 index 0000000..5e03ab1 --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/exemples/images/nouveauinverse5.xpm @@ -0,0 +1,276 @@ +/* XPM */ +static char *nouveauinverse5[] = { +/* columns rows colors chars-per-pixel */ +"64 80 190 2 ", +" c #030303", +". c #0B0B0B", +"X c #131313", +"o c #1B1B1B", +"O c #261F08", +"+ c #281F0B", +"@ c #352716", +"# c #3C2C1C", +"$ c #232323", +"% c #2C2C2C", +"& c #332A21", +"* c #322D28", +"= c #33312C", +"- c #3C3929", +"; c #333333", +": c #393734", +"> c #3B3935", +", c #3B3B3B", +"< c #4C341D", +"1 c #453F2C", +"2 c #563B22", +"3 c #413F39", +"4 c #63591E", +"5 c #7F7706", +"6 c #4F4820", +"7 c #4E4033", +"8 c #43413F", +"9 c #664628", +"0 c #6E4C29", +"q c #635922", +"w c #6D553E", +"e c #75692C", +"r c #6C6135", +"t c #7C6A3B", +"y c #434343", +"u c #4C4B4B", +"i c #545454", +"p c #5A5751", +"a c #5E5954", +"s c #5B5B5B", +"d c #685847", +"f c #795E44", +"g c #676050", +"h c #746752", +"j c #636363", +"k c #6E6C65", +"l c #6B6B6B", +"z c #747474", +"x c #7B7B7B", +"c c #87741D", +"v c #8C7A1D", +"b c #835E3A", +"n c #887523", +"m c #857128", +"M c #8C7729", +"N c #937E2C", +"B c #8F6337", +"V c #8F6338", +"C c #836B38", +"Z c #8E7732", +"A c #937B31", +"S c #987F33", +"D c #886645", +"F c #80704D", +"G c #89774C", +"H c #8B7A53", +"J c #A37040", +"K c #AB7643", +"L c #AF7A46", +"P c #B37B47", +"I c #B37D4A", +"U c #96821D", +"Y c #99861A", +"T c #B49B1B", +"R c #9A8427", +"E c #9F8A25", +"W c #9C852C", +"Q c #9A8230", +"! c #A48D25", +"~ c #A48A2C", +"^ c #A79223", +"/ c #AB9523", +"( c #AF9822", +") c #AB912A", +"_ c #B09923", +"` c #A28A30", +"' c #B38C30", +"] c #AB9031", +"[ c #B49931", +"{ c #BC9E33", +"} c #C8AE24", +"| c #C8A92F", +" . c #D5B921", +".. c #DCBF26", +"X. c #D8B72E", +"o. c #C3A333", +"O. c #C9AC31", +"+. c #C3A23E", +"@. c #D5A63E", +"#. c #D5B233", +"$. c #E1BC34", +"%. c #F0BE3F", +"&. c #E2C81E", +"*. c #F6E017", +"=. c #FCE11E", +"-. c #DCC03A", +";. c #E4C625", +":. c #EECD27", +">. c #E1C12D", +",. c #EECA2D", +"<. c #FDDC26", +"1. c #FCD72B", +"2. c #FDDA2A", +"3. c #EBC13A", +"4. c #F4CF32", +"5. c #F4CC3C", +"6. c #F5D237", +"7. c #FADB36", +"8. c #F6D43C", +"9. c #948252", +"0. c #9A8A51", +"q. c #93825B", +"w. c #BF8649", +"e. c #B9A958", +"r. c #978D6D", +"t. c #B39862", +"y. c #C2864B", +"u. c #CA8E4C", +"i. c #CB9049", +"p. c #CD8E50", +"a. c #D29252", +"s. c #E09C58", +"d. c #CFA643", +"f. c #C4AF44", +"g. c #D6A847", +"h. c #DCB047", +"j. c #D4BE42", +"k. c #D8B24B", +"l. c #D4BF4C", +"z. c #E1B142", +"x. c #E9BC45", +"c. c #E3B24A", +"v. c #E9B94C", +"b. c #F4BD46", +"n. c #F9BF47", +"m. c #F7BB4A", +"M. c #FABF4A", +"N. c #EBAC50", +"B. c #F5AA5F", +"V. c #FBAF5E", +"C. c #E1B45E", +"Z. c #FCB05B", +"A. c #C5A560", +"S. c #D9B667", +"D. c #DDB668", +"F. c #DCBA68", +"G. c #C8B274", +"H. c #C3B47F", +"J. c #FBAD61", +"K. c #EEC448", +"L. c #F6C342", +"P. c #FDC642", +"I. c #FDC049", +"U. c #F5C15D", +"Y. c #F3CD5A", +"T. c #D2C062", +"R. c #E6C260", +"E. c #F1CA6D", +"W. c #E8CF7D", +"Q. c #FCE367", +"!. c #848484", +"~. c #8D8D8D", +"^. c #949494", +"/. c #9D9D9D", +"(. c #B3B09F", +"). c #A4A4A4", +"_. c #ACACAC", +"`. c #B4B4B4", +"'. c #BCBCBC", +"]. c #FEEF9A", +"[. c #C4C4C4", +"{. c #CBCBCB", +"}. c #D4D4D4", +"|. c #DCDCDC", +" X c #E4E4E4", +".X c #EDEDED", +"XX c #FFFAE0", +"oX c #F4F4F4", +"OX c #FDFDFD", +"+X c None", +/* pixels */ +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X . . +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X . X o $ $ $ o o o . +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X o % y y u i i u y , % o +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+XX % , , , , , y u u i i y ; o . +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X. % , ; ; ; ; % , y i s s s y $ X +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X. o ; ; ; ; , , , ; , y i i s s ; % X +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X. $ ; i !.z , , , ; , u u i s s u $ ; . +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+XX % l |.}.{.^., , , , u i s i i s ; ; X +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X. o ; ^.'.}. X{.s % ; y y i i s u u , % % +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X. o : u ; j oX.Xz $ , y u i i i i u u $ ; X +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X $ , % o ; |.oXx % ; y u i i s s u u $ ; X +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+ O @ 1 * $ ; [.oX).8 , 8 u u i s s i u % ; X +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X5 T .;.:.@.b & i `.'.^.y , , y u i s j i y ; % X +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X@ 0 ' &.*.=.<.2.2.2.1.x.L d i s i , ; , 8 u i s s i u y % . +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+XK B.I.P.I.Z.J.J.J.M.m.N.s.D * , , , , ; , y u i s i u u $ . +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X2 B K y.p.a.a.p.u.i.y.L w.f $ , , , : , , , u i s u u y $ . +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X< 9 V J P L K I w $ $ , , , , ; ; , y u u y u y o +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X# # & $ o % : , , , , ; , , y y 8 , 8 ; o . +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X$ o X $ % ; ; % % ; ; , , , ; ; : ; % o X +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X; % $ $ $ $ $ % % % ; % % % ; ; % % $ X +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X% % o o o $ $ $ $ % % % % % % % % % $ $ +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X; % o $ $ $ $ $ $ % % ; , , y y y $ $ X +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X% : $ % % % ; : : y y u y y i s i , $ $ . +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X % ; $ % $ $ % ; , y u u i s j l j s , $ o +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X % ; $ % $ $ % ; y u i s j l z z x z s : X o +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X ; ; o $ o $ % ; u i i s s j z z x z j u $ X +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X$ y $ o $ o $ % ; , u u u i s j l z x l i ; o o +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X; !.s % o $ $ $ $ ; , , y y u u s j z l j s , $ o . +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+Xi _.`., $ $ $ o $ % % ; , y y y u s i u y y y % $ o +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X$ ~. XoX!.y $ $ $ o $ % ; ; , y y u u s y , y u , % $ . +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X$ l {.OXoX.X`.$ % $ $ % $ % ; , , , y y y y y , y y , % o +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+Xs {.OXOXOXOXOXx o $ $ $ $ % % , , , y y , % y ; , u y y $ . +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X '..XOXOXOXOXOXOXX o X o $ $ % ; ; , , , , ; % % ; u u y $ X +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+Xu |.oXOXOXOXOXOXOX~.. X o $ % % ; , ; ; , , ; % $ % i i u ; X +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X [..XOXOXOXOXOXOXOX Xy . X % % % y , ; ; , , $ % $ $ u s i , . X +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X|.oXOXOXOXOXOXOXOXOX~.o . % % % % u , ; u , % % o o u s s : X X +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X/.oXOXOXOXOXOXOXOXOXOX'., . $ % % % ; i ; u ; , $ o . , s s , X X +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X}.OXoXOXOXOXOXOXOXOXOXOX; X o % % $ ; , i y u , $ o . ; s s , o . +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+Xs |.OXoXOXOXOXOXOXOXOXOXOXs o X % % % % ; i s j u , . . $ s s u X . +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X ). XOXoXOXOXOXOXOXOXOXOXoXz X o $ % % ; ; u l l i y . . o i s u X . +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+Xo '. XoXOXOXOXOXOXOXOXOXOXoXx X X $ % % ; ; : !.j u 8 X $ i s u X . +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+Xy '. XoXoXOXOXOXOXOXOXOXOXoXz . X $ % % ; ; % s ^.i y X $ s i u X . +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+Xs [. X.XoXOXOXOXOXOXOXOXoXoXx X $ % % ; ; ; u !.u u X % i i y X . +X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+Xs [.|..X.XoXOXOXOXOXOXOXOX.Xy $ $ ; % ; ; ; y !.l u . . ; s i y . . +X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+Xu '.|..XoXoXOXOXoXOXOXOXoX.XX o $ ; ; ; ; ; ; ~.x y . . u i i , . X +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X; '.|. X.XoXoXoXoXoXoXOXoX.Xo % % % ; ; ; ; ; j j u . o i i u ; . . +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+Xo '.}.|..X.X.X.X.XoX.XoX.X^.X . y % ; ; ; ; ; ; s z s % % j i u % . +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+Xo /.}.|. X X X X X.X.X.X X; o X ; % % ; ; ; ; ; y ^.z , u j i , $ . +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+Xl }.}.}.|. X X X X X X|.; y X o $ ; ; ; ; ; ; , j l y j s y ; $ . +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X% `.}.}.}.}.|.|.|.|.}.{.$ ; . o ; % , % ; , , y y i j i y % $ X +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+XX j {.{.{.{.{.}.}.{.{.[.. . X $ ; ; % ; ; % y y u i i u y % $ . +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X; ).[.{.[.{.{.{.[.[.^., . . $ ; % ; ; ; ; y y u i u u , o o +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+Xu _.[.[.[.{.[.[.'.^.$ . X . o % ; ; ; ; , , u u u u u o X X +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X/.[.{.{.{.[.[.[.~.. $ X X X % % ; ; , 8 8 y y y u , X X X +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+Xs z _.[.[.'.[.[.x . = u $ X , , ; ; , ; ; ; , u u $ o o o +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X% l `.'.`.'.'.y X !.).!.j 8 j u ; ; % % , y u ; o $ % X o +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X% y z x /._.; , [. X[.!.x z u , % ; , 3 , ; % , y y % o +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X6 4 e g h p ~. X X).!.!.s u y , , , ; ; ; , u i s u ; $ +X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X7.4.3.K.Z.C.S.E.R.F.G.H.r.r t t r 7 % % , y u s s u u $ $ +X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X7.5.5.L.L.n.b.M.L.%.z.g.d.+.{ { X.o.#.) - = , y u i i u u $ ; +X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X$.O.| o.[ ] ` ` ] ` W W A A A A S A ~ ,.q % ; ; ; , y y u y % +X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+XC A A A A Z R R N M m c c c v U Y e $ $ o X o $ $ % % ; $ o +X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+XXX(.k p , = = : ; : > : : 8 y , u z y % $ o o o X +X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X].8.6.Y.D.A.t.9.H H q.q.H F G 9.0.l.j.T.+X+X+X+X+Xo o +X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+XQ.6.5.K.v.c.c.c.c.h.v.x.3.3.$.>...;.} E e.+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+XW.k.+.) ~ ! ) ) ) ^ / ( ( ( / ^ ^ ! ^ E f.+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X", +"+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X" +}; diff --git a/bibliotheque-graphique-iut-1.1/src/exemples/images/walk-0.png b/bibliotheque-graphique-iut-1.1/src/exemples/images/walk-0.png new file mode 100644 index 0000000000000000000000000000000000000000..7e3b61dba62499962e2df3850b2ae6d14dde1609 GIT binary patch literal 5010 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 literal 0 HcmV?d00001 diff --git a/bibliotheque-graphique-iut-1.1/src/exemples/images/walk-1.png b/bibliotheque-graphique-iut-1.1/src/exemples/images/walk-1.png new file mode 100644 index 0000000000000000000000000000000000000000..8e7db2008a7f05c7b526f9706b4ca617de323717 GIT binary patch literal 4640 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 literal 0 HcmV?d00001 diff --git a/bibliotheque-graphique-iut-1.1/src/exemples/images/walk-2.png b/bibliotheque-graphique-iut-1.1/src/exemples/images/walk-2.png new file mode 100644 index 0000000000000000000000000000000000000000..d67bbcead8a4777a6cd508dfbde3effc61f71e16 GIT binary patch literal 4979 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 literal 0 HcmV?d00001 diff --git a/bibliotheque-graphique-iut-1.1/src/exemples/images/walk-4.png b/bibliotheque-graphique-iut-1.1/src/exemples/images/walk-4.png new file mode 100644 index 0000000000000000000000000000000000000000..f03ce2e3e1553b734288826c9a1afa12ba549ec7 GIT binary patch literal 5069 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 literal 0 HcmV?d00001 diff --git a/bibliotheque-graphique-iut-1.1/src/exemples/images/walks-0.png b/bibliotheque-graphique-iut-1.1/src/exemples/images/walks-0.png new file mode 100644 index 0000000000000000000000000000000000000000..ad078104d576b5697982d920f3b22ae8f044dac3 GIT binary patch literal 5277 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 literal 0 HcmV?d00001 diff --git a/bibliotheque-graphique-iut-1.1/src/exemples/images/walks-3.png b/bibliotheque-graphique-iut-1.1/src/exemples/images/walks-3.png new file mode 100644 index 0000000000000000000000000000000000000000..adc76261bdf273ca963294fb004d0cb8861e75b7 GIT binary patch literal 5633 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 BRQvz{ literal 0 HcmV?d00001 diff --git a/bibliotheque-graphique-iut-1.1/src/exemples/images/walks-4.png b/bibliotheque-graphique-iut-1.1/src/exemples/images/walks-4.png new file mode 100644 index 0000000000000000000000000000000000000000..284fce97e8a36869172d8a95433e8b0efa6f723c GIT binary patch literal 5288 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 sDWhdCp=FfO=t7>)9{&2; \ + exit 1;; \ + esac; \ + has_opt=no; \ + sane_makeflags=$$MAKEFLAGS; \ + if $(am__is_gnu_make); then \ + sane_makeflags=$$MFLAGS; \ + else \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + bs=\\; \ + sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ + | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ + esac; \ + fi; \ + skip_next=no; \ + strip_trailopt () \ + { \ + flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ + }; \ + for flg in $$sane_makeflags; do \ + test $$skip_next = yes && { skip_next=no; continue; }; \ + case $$flg in \ + *=*|--*) continue;; \ + -*I) strip_trailopt 'I'; skip_next=yes;; \ + -*I?*) strip_trailopt 'I';; \ + -*O) strip_trailopt 'O'; skip_next=yes;; \ + -*O?*) strip_trailopt 'O';; \ + -*l) strip_trailopt 'l'; skip_next=yes;; \ + -*l?*) strip_trailopt 'l';; \ + -[dEDm]) skip_next=yes;; \ + -[JT]) skip_next=yes;; \ + esac; \ + case $$flg in \ + *$$target_option*) has_opt=yes; break;; \ + esac; \ + done; \ + test $$has_opt = yes +am__make_dryrun = (target_option=n; $(am__make_running_with_option)) +am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +pkgdatadir = $(datadir)/bibliotheque-graphique-iut +pkgincludedir = $(includedir)/bibliotheque-graphique-iut +pkglibdir = $(libdir)/bibliotheque-graphique-iut +pkglibexecdir = $(libexecdir)/bibliotheque-graphique-iut +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = x86_64-unknown-linux-gnu +host_triplet = x86_64-unknown-linux-gnu +subdir = src/include +DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \ + $(dist_installed_mainheader_DATA) +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +AM_V_P = $(am__v_P_$(V)) +am__v_P_ = $(am__v_P_$(AM_DEFAULT_VERBOSITY)) +am__v_P_0 = false +am__v_P_1 = : +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +am__v_GEN_1 = +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ +am__v_at_1 = +SOURCES = +DIST_SOURCES = +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__uninstall_files_from_dir = { \ + test -z "$$files" \ + || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ + || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ + $(am__cd) "$$dir" && rm -f $$files; }; \ + } +am__installdirs = "$(DESTDIR)$(installed_mainheaderdir)" +DATA = $(dist_installed_mainheader_DATA) +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = aclocal-1.14 +AMTAR = $${TAR-tar} +AM_DEFAULT_VERBOSITY = 1 +AR = ar +AUTOCONF = autoconf +AUTOHEADER = autoheader +AUTOMAKE = automake-1.14 +AWK = gawk +CC = gcc +CCDEPMODE = depmode=gcc3 +CFLAGS = -g -O2 +CPP = gcc -E +CPPFLAGS = +CYGPATH_W = echo +DEFS = -DHAVE_CONFIG_H +DEPDIR = .deps +DLLTOOL = false +DSYMUTIL = +DUMPBIN = +ECHO_C = +ECHO_N = -n +ECHO_T = +EGREP = /usr/bin/grep -E +EXEEXT = +EXEMPLES_IMAGES_DIR = ${datarootdir}/libgraph/images/ +FGREP = /usr/bin/grep -F +GREP = /usr/bin/grep +INSTALL = /usr/bin/install -c +INSTALL_DATA = ${INSTALL} -m 644 +INSTALL_PROGRAM = ${INSTALL} +INSTALL_SCRIPT = ${INSTALL} +INSTALL_STRIP_PROGRAM = $(install_sh) -c -s +LD = /usr/bin/ld -m elf_x86_64 +LDFLAGS = +LIBOBJS = +LIBS = -lXpm +LIBTOOL = $(SHELL) $(top_builddir)/libtool +LIPO = +LN_S = ln -s +LTLIBOBJS = +MAKEINFO = makeinfo +MANIFEST_TOOL = : +MKDIR_P = /usr/bin/mkdir -p +NM = /usr/bin/nm -B +NMEDIT = +OBJDUMP = objdump +OBJEXT = o +OTOOL = +OTOOL64 = +PACKAGE = bibliotheque-graphique-iut +PACKAGE_BUGREPORT = monnerat@u-pec.fr +PACKAGE_NAME = bibliotheque graphique iut +PACKAGE_STRING = bibliotheque graphique iut 1.1 +PACKAGE_TARNAME = bibliotheque-graphique-iut +PACKAGE_URL = +PACKAGE_VERSION = 1.1 +PATH_SEPARATOR = : +PREFIX = /export/home/an22/pietrois/SAE11_2022 +RANLIB = ranlib +SED = /usr/bin/sed +SET_MAKE = +SHELL = /bin/sh +STRIP = strip +VERSION = 1.1 +abs_builddir = /export/home/an22/pietrois/SAE11_2022/bibliotheque-graphique-iut-1.1/src/include +abs_srcdir = /export/home/an22/pietrois/SAE11_2022/bibliotheque-graphique-iut-1.1/src/include +abs_top_builddir = /export/home/an22/pietrois/SAE11_2022/bibliotheque-graphique-iut-1.1 +abs_top_srcdir = /export/home/an22/pietrois/SAE11_2022/bibliotheque-graphique-iut-1.1 +ac_ct_AR = ar +ac_ct_CC = gcc +ac_ct_DUMPBIN = +am__include = include +am__leading_dot = . +am__quote = +am__tar = $${TAR-tar} chof - "$$tardir" +am__untar = $${TAR-tar} xf - +bindir = ${exec_prefix}/bin +build = x86_64-unknown-linux-gnu +build_alias = +build_cpu = x86_64 +build_os = linux-gnu +build_vendor = unknown +builddir = . +datadir = ${datarootdir} +datarootdir = ${prefix}/share +docdir = ${datarootdir}/doc/${PACKAGE_TARNAME} +dvidir = ${docdir} +exec_prefix = /export/home/an22/pietrois/SAE11_2022 +host = x86_64-unknown-linux-gnu +host_alias = +host_cpu = x86_64 +host_os = linux-gnu +host_vendor = unknown +htmldir = ${docdir} +includedir = ${prefix}/include +infodir = ${datarootdir}/info +install_sh = ${SHELL} /export/home/an22/pietrois/SAE11_2022/bibliotheque-graphique-iut-1.1/install-sh +libdir = ${exec_prefix}/lib +libexecdir = ${exec_prefix}/libexec +localedir = ${datarootdir}/locale +localstatedir = ${prefix}/var +mandir = ${datarootdir}/man +mkdir_p = $(MKDIR_P) +oldincludedir = /usr/include +pdfdir = ${docdir} +prefix = /export/home/an22/pietrois/SAE11_2022 +program_transform_name = s,x,x, +psdir = ${docdir} +sbindir = ${exec_prefix}/sbin +sharedstatedir = ${prefix}/com +srcdir = . +sysconfdir = ${prefix}/etc +target_alias = +top_build_prefix = ../../ +top_builddir = ../.. +top_srcdir = ../.. +installed_mainheaderdir = $(includedir)/ +dist_installed_mainheader_DATA = graph.h +all: all-am + +.SUFFIXES: +$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/include/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign src/include/Makefile +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs +install-dist_installed_mainheaderDATA: $(dist_installed_mainheader_DATA) + @$(NORMAL_INSTALL) + @list='$(dist_installed_mainheader_DATA)'; test -n "$(installed_mainheaderdir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(installed_mainheaderdir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(installed_mainheaderdir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(installed_mainheaderdir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(installed_mainheaderdir)" || exit $$?; \ + done + +uninstall-dist_installed_mainheaderDATA: + @$(NORMAL_UNINSTALL) + @list='$(dist_installed_mainheader_DATA)'; test -n "$(installed_mainheaderdir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(installed_mainheaderdir)'; $(am__uninstall_files_from_dir) +tags TAGS: + +ctags CTAGS: + +cscope cscopelist: + + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-am +all-am: Makefile $(DATA) +installdirs: + for dir in "$(DESTDIR)$(installed_mainheaderdir)"; do \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ + done +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-generic clean-libtool mostlyclean-am + +distclean: distclean-am + -rm -f Makefile +distclean-am: clean-am distclean-generic + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: install-dist_installed_mainheaderDATA + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: + +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-generic mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: uninstall-dist_installed_mainheaderDATA + +.MAKE: install-am install-strip + +.PHONY: all all-am check check-am clean clean-generic clean-libtool \ + cscopelist-am ctags-am distclean distclean-generic \ + distclean-libtool distdir dvi dvi-am html html-am info info-am \ + install install-am install-data install-data-am \ + install-dist_installed_mainheaderDATA install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-ps install-ps-am \ + install-strip installcheck installcheck-am installdirs \ + maintainer-clean maintainer-clean-generic mostlyclean \ + mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ + tags-am uninstall uninstall-am \ + uninstall-dist_installed_mainheaderDATA + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/bibliotheque-graphique-iut-1.1/src/include/Makefile.am b/bibliotheque-graphique-iut-1.1/src/include/Makefile.am new file mode 100644 index 0000000..6d1e180 --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/include/Makefile.am @@ -0,0 +1,3 @@ +installed_mainheaderdir = $(includedir)/ +dist_installed_mainheader_DATA = graph.h + diff --git a/bibliotheque-graphique-iut-1.1/src/include/Makefile.in b/bibliotheque-graphique-iut-1.1/src/include/Makefile.in new file mode 100644 index 0000000..25acdfc --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/include/Makefile.in @@ -0,0 +1,479 @@ +# Makefile.in generated by automake 1.14 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994-2013 Free Software Foundation, Inc. + +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ + +VPATH = @srcdir@ +am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)' +am__make_running_with_option = \ + case $${target_option-} in \ + ?) ;; \ + *) echo "am__make_running_with_option: internal error: invalid" \ + "target option '$${target_option-}' specified" >&2; \ + exit 1;; \ + esac; \ + has_opt=no; \ + sane_makeflags=$$MAKEFLAGS; \ + if $(am__is_gnu_make); then \ + sane_makeflags=$$MFLAGS; \ + else \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + bs=\\; \ + sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ + | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ + esac; \ + fi; \ + skip_next=no; \ + strip_trailopt () \ + { \ + flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ + }; \ + for flg in $$sane_makeflags; do \ + test $$skip_next = yes && { skip_next=no; continue; }; \ + case $$flg in \ + *=*|--*) continue;; \ + -*I) strip_trailopt 'I'; skip_next=yes;; \ + -*I?*) strip_trailopt 'I';; \ + -*O) strip_trailopt 'O'; skip_next=yes;; \ + -*O?*) strip_trailopt 'O';; \ + -*l) strip_trailopt 'l'; skip_next=yes;; \ + -*l?*) strip_trailopt 'l';; \ + -[dEDm]) skip_next=yes;; \ + -[JT]) skip_next=yes;; \ + esac; \ + case $$flg in \ + *$$target_option*) has_opt=yes; break;; \ + esac; \ + done; \ + test $$has_opt = yes +am__make_dryrun = (target_option=n; $(am__make_running_with_option)) +am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +subdir = src/include +DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \ + $(dist_installed_mainheader_DATA) +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +AM_V_P = $(am__v_P_@AM_V@) +am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) +am__v_P_0 = false +am__v_P_1 = : +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) +am__v_GEN_0 = @echo " GEN " $@; +am__v_GEN_1 = +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) +am__v_at_0 = @ +am__v_at_1 = +SOURCES = +DIST_SOURCES = +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__uninstall_files_from_dir = { \ + test -z "$$files" \ + || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ + || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ + $(am__cd) "$$dir" && rm -f $$files; }; \ + } +am__installdirs = "$(DESTDIR)$(installed_mainheaderdir)" +DATA = $(dist_installed_mainheader_DATA) +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DLLTOOL = @DLLTOOL@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +EXEMPLES_IMAGES_DIR = @EXEMPLES_IMAGES_DIR@ +FGREP = @FGREP@ +GREP = @GREP@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ +MKDIR_P = @MKDIR_P@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PREFIX = @PREFIX@ +RANLIB = @RANLIB@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +VERSION = @VERSION@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +installed_mainheaderdir = $(includedir)/ +dist_installed_mainheader_DATA = graph.h +all: all-am + +.SUFFIXES: +$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/include/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign src/include/Makefile +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs +install-dist_installed_mainheaderDATA: $(dist_installed_mainheader_DATA) + @$(NORMAL_INSTALL) + @list='$(dist_installed_mainheader_DATA)'; test -n "$(installed_mainheaderdir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(installed_mainheaderdir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(installed_mainheaderdir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(installed_mainheaderdir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(installed_mainheaderdir)" || exit $$?; \ + done + +uninstall-dist_installed_mainheaderDATA: + @$(NORMAL_UNINSTALL) + @list='$(dist_installed_mainheader_DATA)'; test -n "$(installed_mainheaderdir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(installed_mainheaderdir)'; $(am__uninstall_files_from_dir) +tags TAGS: + +ctags CTAGS: + +cscope cscopelist: + + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-am +all-am: Makefile $(DATA) +installdirs: + for dir in "$(DESTDIR)$(installed_mainheaderdir)"; do \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ + done +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-generic clean-libtool mostlyclean-am + +distclean: distclean-am + -rm -f Makefile +distclean-am: clean-am distclean-generic + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: install-dist_installed_mainheaderDATA + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: + +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-generic mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: uninstall-dist_installed_mainheaderDATA + +.MAKE: install-am install-strip + +.PHONY: all all-am check check-am clean clean-generic clean-libtool \ + cscopelist-am ctags-am distclean distclean-generic \ + distclean-libtool distdir dvi dvi-am html html-am info info-am \ + install install-am install-data install-data-am \ + install-dist_installed_mainheaderDATA install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-ps install-ps-am \ + install-strip installcheck installcheck-am installdirs \ + maintainer-clean maintainer-clean-generic mostlyclean \ + mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ + tags-am uninstall uninstall-am \ + uninstall-dist_installed_mainheaderDATA + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/bibliotheque-graphique-iut-1.1/src/include/graph.h b/bibliotheque-graphique-iut-1.1/src/include/graph.h new file mode 100644 index 0000000..8244e09 --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/include/graph.h @@ -0,0 +1,149 @@ +#ifndef _GRAPH_H +#define _GRAPH_H + +#include +#include +#include + +extern int _X; +extern int _Y; + +#define NB_PIXMAP 10 + +typedef unsigned long couleur; +typedef XPoint Point; + +int InitialiserGraphique(); +/* initialise le mode graphique : renvoie 1 en cas de succes, 0 sinon */ + +int CreerFenetre(int posx,int posy,int X,int Y); +/* creer la fenetre graphique de largeur X et longueur Y, et la positionne + sur l'ecran au point (posx,posy). Une seule fenetre autorisée */ + +void ChoisirTitreFenetre(char *s); +/* change le titre de la fenetre */ + +void ChoisirCurseur(unsigned int forme); +/* change le curseur de la fenetre */ + +void CacherFenetre(void); +/* cache la fenetre */ + +void AfficherFenetre(void); +/* affiche la fenetre */ + +void ChoisirEcran(int n); +/* fixe l'ecran ou le dessin est effectue : cette ecran est soit 0 (la fenetre + visible, ecran par defaut au demarrage), soit le numero de l'écran virtuel correspondant */ + +void ChoisirCouleurDessin(couleur c); +/* fixe la couleur qui sert au dessin */ + +couleur CouleurParNom(char * nom); +/* fait la traduction d'une couleur a partir de son nom : le fichier rgb.txt + contient la liste des couleurs accessibles via leur nom */ + +couleur CouleurParComposante(unsigned char r, unsigned char v,unsigned char b); +/* renvoie la couleur définie par ses trois composantes */ + +int Maxx(); +/* renvoie la largeur de l'ecran : il faut que le mode graphique ait été + initialise !!! */ + +int Maxy(); +/* renvoie la hauteur de l'ecran : il faut que le mode graphique ait été + initialise !!! */ + +void DessinerPixel(int x,int y); +/* allume un pixel avec la couleur de dessin */ + +void DessinerSegment(int x,int y,int xx,int yy); +/* idem precedent, mais avec la couleur de dessin */ + +void DessinerSegments(Point * sommets,int nb_sommets); +/* trace pour chaque paire sommet[i],sommet[i+1] le segment correspondant. Si le deux extrémités correspondent, le polygone est fermé */ + +void DessinerRectangle(int x,int y,int l,int h); +/* idem, mais utilise la couleur de dessin */ + +void RemplirRectangle(int x,int y,int l,int h); +/* trace un rectangle plein, rempli avec c */ + +void DessinerArc(int x,int y,int l,int h,int angle1,int angle2); +/* idem, mais utilise la couleur de dessin */ + +void RemplirArc(int x,int y,int l,int h,int angle1,int angle2); +/* trace un arc plein avec c */ + +void RemplirTriangle(int x,int y,int xx,int yy,int xxx,int yyy); +/* trace un triangle plein */ + +void RemplirPolygone(Point * sommets,int nb_sommet); +/* Trace un polygone plein défini par son tableau de sommets. Si les extremités ne coincident pas, le polygone est fermé automatiquement. +*/ + +int ToucheEnAttente(); +/* renvoie 1 si une touche a été enfoncée, 0 sinon */ + +KeySym Touche(); +/* renvoie la premiere touche du tampon : cette fonction est bloquante => + utiliser ToucheEnAttente pour la rendre non bloquante */ + +void EcrireTexte(int x,int y,char *texte,int taille); +/* ecrit la chaine texte au point (x,y) : taille indique la taille (0<->petit,1<->moyen,2<->grand) */ +#ifdef HAVE_XPM +void SauverImage(char * file,int x,int y,int l,int h); +/* sauvegarde d'une partie de la fenetre (x,y,x+l,y+h) au format xpm */ +#endif + +int ChargerImage(char *file,int x,int y,int xx,int yy,int l,int h); +/* charge une partie (xx,yy,xx+l,yy+h) d'image au format xpm dans +la fenetre a la position (x,y) */ + +void ChargerImageFond(char *file); +/* charge une image qui remplit le fond de la fen\^etre, en la r\'ep\'etant si necessaire */ + +void EffacerEcran(couleur c); +/* efface l'ecran avec la couleur c*/ + +void ChoisirModeDessin(int m); +/* fixe le mode d'affichage : 0<->ecrasement 1<->xor */ + +int TailleChaineEcran(char *t,int taile); +/* renvoie, en pixel, la taille horizontale occupee par la chaine à l'écran :taille est la taille de la police (0,1,2) */ + +int TailleSupPolice(int taille); +/* renvoie la taiile maximale de la police, en pixel, au dessus de la ligne d'écriture */ + +int TailleInfPolice(int taille); +/* renvoie la taille maximale de la police, en pixel, en dessous de la ligne d'écriture */ + +void CopierZone(int src,int dst,int ox,int oy,int L,int H,int dx,int dy); +/* copie une zone de l'écran vers l'écran dst. La zone copiée est le rectangle delimite par le coin superieure hauche (ox,oy) et sa largeur l et hauteur h. Cette zone est copié au point (dx,dy) de l'ecran dst */ + +void FermerGraphique(); +/* fermeture du mode graphique */ + +unsigned long Microsecondes(); +/* renvoie le nombre de microsecondes ecoulées depuis le +lancement du programme */ + +void SourisPosition(); +/* recupere les coordonnees de la souris dans la fenetre et les place dans _X et _Y*/ + +int SourisCliquee(); +/* indique un clic de souris (1 si oui, 0 sinon), et recupere si c'est le cas la position au moment du clic dans _X et _Y */ + + +/* fonctions a réécrire proprement */ + +int ChargerSprite(char *file); +/* charge un srpite en mémoire, et renvoie son numéro + * -1 en cas d'echec */ +void AfficherSprite(int n,int x,int y); +/* affiche le sprite correspondant à son numéro */ +void LibererSprite(int n); +/* libere les ressources associées au sprite + * n */ + +#endif diff --git a/bibliotheque-graphique-iut-1.1/src/lib/.deps/graph.Plo b/bibliotheque-graphique-iut-1.1/src/lib/.deps/graph.Plo new file mode 100644 index 0000000..863cfdb --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/lib/.deps/graph.Plo @@ -0,0 +1,117 @@ +graph.lo: graph.c /usr/include/stdc-predef.h /usr/include/X11/Xlib.h \ + /usr/include/sys/types.h /usr/include/features.h \ + /usr/include/features-time64.h /usr/include/bits/wordsize.h \ + /usr/include/bits/timesize.h /usr/include/sys/cdefs.h \ + /usr/include/bits/long-double.h /usr/include/gnu/stubs.h \ + /usr/include/gnu/stubs-64.h /usr/include/bits/types.h \ + /usr/include/bits/typesizes.h /usr/include/bits/time64.h \ + /usr/include/bits/types/clock_t.h /usr/include/bits/types/clockid_t.h \ + /usr/include/bits/types/time_t.h /usr/include/bits/types/timer_t.h \ + /usr/lib/gcc/x86_64-pc-linux-gnu/12.2.0/include/stddef.h \ + /usr/include/bits/stdint-intn.h /usr/include/endian.h \ + /usr/include/bits/endian.h /usr/include/bits/endianness.h \ + /usr/include/bits/byteswap.h /usr/include/bits/uintn-identity.h \ + /usr/include/sys/select.h /usr/include/bits/select.h \ + /usr/include/bits/types/sigset_t.h /usr/include/bits/types/__sigset_t.h \ + /usr/include/bits/types/struct_timeval.h \ + /usr/include/bits/types/struct_timespec.h \ + /usr/include/bits/pthreadtypes.h /usr/include/bits/thread-shared-types.h \ + /usr/include/bits/pthreadtypes-arch.h \ + /usr/include/bits/atomic_wide_counter.h /usr/include/bits/struct_mutex.h \ + /usr/include/bits/struct_rwlock.h /usr/include/X11/X.h \ + /usr/include/X11/Xfuncproto.h /usr/include/X11/Xosdefs.h \ + /usr/include/X11/cursorfont.h /usr/include/X11/Xatom.h \ + /usr/include/X11/Xutil.h /usr/include/X11/keysym.h \ + /usr/include/X11/keysymdef.h /usr/include/stdio.h \ + /usr/include/bits/libc-header-start.h \ + /usr/lib/gcc/x86_64-pc-linux-gnu/12.2.0/include/stdarg.h \ + /usr/include/bits/types/__fpos_t.h /usr/include/bits/types/__mbstate_t.h \ + /usr/include/bits/types/__fpos64_t.h /usr/include/bits/types/__FILE.h \ + /usr/include/bits/types/FILE.h /usr/include/bits/types/struct_FILE.h \ + /usr/include/bits/stdio_lim.h /usr/include/bits/floatn.h \ + /usr/include/bits/floatn-common.h /usr/include/bits/stdio.h \ + /usr/include/stdlib.h /usr/include/bits/waitflags.h \ + /usr/include/bits/waitstatus.h /usr/include/alloca.h \ + /usr/include/bits/stdlib-bsearch.h /usr/include/bits/stdlib-float.h \ + /usr/include/string.h /usr/include/bits/types/locale_t.h \ + /usr/include/bits/types/__locale_t.h /usr/include/strings.h \ + /usr/include/time.h /usr/include/bits/time.h \ + /usr/include/bits/types/struct_tm.h \ + /usr/include/bits/types/struct_itimerspec.h ../../config.h \ + /usr/include/X11/xpm.h ../../src/include/graph.h image.h +/usr/include/stdc-predef.h: +/usr/include/X11/Xlib.h: +/usr/include/sys/types.h: +/usr/include/features.h: +/usr/include/features-time64.h: +/usr/include/bits/wordsize.h: +/usr/include/bits/timesize.h: +/usr/include/sys/cdefs.h: +/usr/include/bits/long-double.h: +/usr/include/gnu/stubs.h: +/usr/include/gnu/stubs-64.h: +/usr/include/bits/types.h: +/usr/include/bits/typesizes.h: +/usr/include/bits/time64.h: +/usr/include/bits/types/clock_t.h: +/usr/include/bits/types/clockid_t.h: +/usr/include/bits/types/time_t.h: +/usr/include/bits/types/timer_t.h: +/usr/lib/gcc/x86_64-pc-linux-gnu/12.2.0/include/stddef.h: +/usr/include/bits/stdint-intn.h: +/usr/include/endian.h: +/usr/include/bits/endian.h: +/usr/include/bits/endianness.h: +/usr/include/bits/byteswap.h: +/usr/include/bits/uintn-identity.h: +/usr/include/sys/select.h: +/usr/include/bits/select.h: +/usr/include/bits/types/sigset_t.h: +/usr/include/bits/types/__sigset_t.h: +/usr/include/bits/types/struct_timeval.h: +/usr/include/bits/types/struct_timespec.h: +/usr/include/bits/pthreadtypes.h: +/usr/include/bits/thread-shared-types.h: +/usr/include/bits/pthreadtypes-arch.h: +/usr/include/bits/atomic_wide_counter.h: +/usr/include/bits/struct_mutex.h: +/usr/include/bits/struct_rwlock.h: +/usr/include/X11/X.h: +/usr/include/X11/Xfuncproto.h: +/usr/include/X11/Xosdefs.h: +/usr/include/X11/cursorfont.h: +/usr/include/X11/Xatom.h: +/usr/include/X11/Xutil.h: +/usr/include/X11/keysym.h: +/usr/include/X11/keysymdef.h: +/usr/include/stdio.h: +/usr/include/bits/libc-header-start.h: +/usr/lib/gcc/x86_64-pc-linux-gnu/12.2.0/include/stdarg.h: +/usr/include/bits/types/__fpos_t.h: +/usr/include/bits/types/__mbstate_t.h: +/usr/include/bits/types/__fpos64_t.h: +/usr/include/bits/types/__FILE.h: +/usr/include/bits/types/FILE.h: +/usr/include/bits/types/struct_FILE.h: +/usr/include/bits/stdio_lim.h: +/usr/include/bits/floatn.h: +/usr/include/bits/floatn-common.h: +/usr/include/bits/stdio.h: +/usr/include/stdlib.h: +/usr/include/bits/waitflags.h: +/usr/include/bits/waitstatus.h: +/usr/include/alloca.h: +/usr/include/bits/stdlib-bsearch.h: +/usr/include/bits/stdlib-float.h: +/usr/include/string.h: +/usr/include/bits/types/locale_t.h: +/usr/include/bits/types/__locale_t.h: +/usr/include/strings.h: +/usr/include/time.h: +/usr/include/bits/time.h: +/usr/include/bits/types/struct_tm.h: +/usr/include/bits/types/struct_itimerspec.h: +../../config.h: +/usr/include/X11/xpm.h: +../../src/include/graph.h: +image.h: diff --git a/bibliotheque-graphique-iut-1.1/src/lib/.deps/image.Plo b/bibliotheque-graphique-iut-1.1/src/lib/.deps/image.Plo new file mode 100644 index 0000000..bdeb826 --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/lib/.deps/image.Plo @@ -0,0 +1,122 @@ +image.lo: image.c /usr/include/stdc-predef.h /usr/include/stdio.h \ + /usr/include/bits/libc-header-start.h /usr/include/features.h \ + /usr/include/features-time64.h /usr/include/bits/wordsize.h \ + /usr/include/bits/timesize.h /usr/include/sys/cdefs.h \ + /usr/include/bits/long-double.h /usr/include/gnu/stubs.h \ + /usr/include/gnu/stubs-64.h \ + /usr/lib/gcc/x86_64-pc-linux-gnu/12.2.0/include/stddef.h \ + /usr/lib/gcc/x86_64-pc-linux-gnu/12.2.0/include/stdarg.h \ + /usr/include/bits/types.h /usr/include/bits/typesizes.h \ + /usr/include/bits/time64.h /usr/include/bits/types/__fpos_t.h \ + /usr/include/bits/types/__mbstate_t.h \ + /usr/include/bits/types/__fpos64_t.h /usr/include/bits/types/__FILE.h \ + /usr/include/bits/types/FILE.h /usr/include/bits/types/struct_FILE.h \ + /usr/include/bits/stdio_lim.h /usr/include/bits/floatn.h \ + /usr/include/bits/floatn-common.h /usr/include/bits/stdio.h \ + /usr/include/X11/Xlib.h /usr/include/sys/types.h \ + /usr/include/bits/types/clock_t.h /usr/include/bits/types/clockid_t.h \ + /usr/include/bits/types/time_t.h /usr/include/bits/types/timer_t.h \ + /usr/include/bits/stdint-intn.h /usr/include/endian.h \ + /usr/include/bits/endian.h /usr/include/bits/endianness.h \ + /usr/include/bits/byteswap.h /usr/include/bits/uintn-identity.h \ + /usr/include/sys/select.h /usr/include/bits/select.h \ + /usr/include/bits/types/sigset_t.h /usr/include/bits/types/__sigset_t.h \ + /usr/include/bits/types/struct_timeval.h \ + /usr/include/bits/types/struct_timespec.h \ + /usr/include/bits/pthreadtypes.h /usr/include/bits/thread-shared-types.h \ + /usr/include/bits/pthreadtypes-arch.h \ + /usr/include/bits/atomic_wide_counter.h /usr/include/bits/struct_mutex.h \ + /usr/include/bits/struct_rwlock.h /usr/include/X11/X.h \ + /usr/include/X11/Xfuncproto.h /usr/include/X11/Xosdefs.h ../../config.h \ + /usr/include/X11/xpm.h /usr/include/X11/Xutil.h \ + /usr/include/X11/keysym.h /usr/include/X11/keysymdef.h \ + /usr/include/math.h /usr/include/bits/math-vector.h \ + /usr/include/bits/libm-simd-decl-stubs.h \ + /usr/include/bits/flt-eval-method.h /usr/include/bits/fp-logb.h \ + /usr/include/bits/fp-fast.h \ + /usr/include/bits/mathcalls-helper-functions.h \ + /usr/include/bits/mathcalls.h /usr/include/string.h \ + /usr/include/bits/types/locale_t.h /usr/include/bits/types/__locale_t.h \ + /usr/include/strings.h /usr/include/stdlib.h \ + /usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \ + /usr/include/alloca.h /usr/include/bits/stdlib-bsearch.h \ + /usr/include/bits/stdlib-float.h /usr/include/memory.h \ + /usr/include/assert.h +/usr/include/stdc-predef.h: +/usr/include/stdio.h: +/usr/include/bits/libc-header-start.h: +/usr/include/features.h: +/usr/include/features-time64.h: +/usr/include/bits/wordsize.h: +/usr/include/bits/timesize.h: +/usr/include/sys/cdefs.h: +/usr/include/bits/long-double.h: +/usr/include/gnu/stubs.h: +/usr/include/gnu/stubs-64.h: +/usr/lib/gcc/x86_64-pc-linux-gnu/12.2.0/include/stddef.h: +/usr/lib/gcc/x86_64-pc-linux-gnu/12.2.0/include/stdarg.h: +/usr/include/bits/types.h: +/usr/include/bits/typesizes.h: +/usr/include/bits/time64.h: +/usr/include/bits/types/__fpos_t.h: +/usr/include/bits/types/__mbstate_t.h: +/usr/include/bits/types/__fpos64_t.h: +/usr/include/bits/types/__FILE.h: +/usr/include/bits/types/FILE.h: +/usr/include/bits/types/struct_FILE.h: +/usr/include/bits/stdio_lim.h: +/usr/include/bits/floatn.h: +/usr/include/bits/floatn-common.h: +/usr/include/bits/stdio.h: +/usr/include/X11/Xlib.h: +/usr/include/sys/types.h: +/usr/include/bits/types/clock_t.h: +/usr/include/bits/types/clockid_t.h: +/usr/include/bits/types/time_t.h: +/usr/include/bits/types/timer_t.h: +/usr/include/bits/stdint-intn.h: +/usr/include/endian.h: +/usr/include/bits/endian.h: +/usr/include/bits/endianness.h: +/usr/include/bits/byteswap.h: +/usr/include/bits/uintn-identity.h: +/usr/include/sys/select.h: +/usr/include/bits/select.h: +/usr/include/bits/types/sigset_t.h: +/usr/include/bits/types/__sigset_t.h: +/usr/include/bits/types/struct_timeval.h: +/usr/include/bits/types/struct_timespec.h: +/usr/include/bits/pthreadtypes.h: +/usr/include/bits/thread-shared-types.h: +/usr/include/bits/pthreadtypes-arch.h: +/usr/include/bits/atomic_wide_counter.h: +/usr/include/bits/struct_mutex.h: +/usr/include/bits/struct_rwlock.h: +/usr/include/X11/X.h: +/usr/include/X11/Xfuncproto.h: +/usr/include/X11/Xosdefs.h: +../../config.h: +/usr/include/X11/xpm.h: +/usr/include/X11/Xutil.h: +/usr/include/X11/keysym.h: +/usr/include/X11/keysymdef.h: +/usr/include/math.h: +/usr/include/bits/math-vector.h: +/usr/include/bits/libm-simd-decl-stubs.h: +/usr/include/bits/flt-eval-method.h: +/usr/include/bits/fp-logb.h: +/usr/include/bits/fp-fast.h: +/usr/include/bits/mathcalls-helper-functions.h: +/usr/include/bits/mathcalls.h: +/usr/include/string.h: +/usr/include/bits/types/locale_t.h: +/usr/include/bits/types/__locale_t.h: +/usr/include/strings.h: +/usr/include/stdlib.h: +/usr/include/bits/waitflags.h: +/usr/include/bits/waitstatus.h: +/usr/include/alloca.h: +/usr/include/bits/stdlib-bsearch.h: +/usr/include/bits/stdlib-float.h: +/usr/include/memory.h: +/usr/include/assert.h: diff --git a/bibliotheque-graphique-iut-1.1/src/lib/.libs/graph.o b/bibliotheque-graphique-iut-1.1/src/lib/.libs/graph.o new file mode 100644 index 0000000000000000000000000000000000000000..9cdb634b6fef36633ec4783365e1bc149530bfab GIT binary patch literal 77968 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 A!~g&Q literal 0 HcmV?d00001 diff --git a/bibliotheque-graphique-iut-1.1/src/lib/.libs/image.o b/bibliotheque-graphique-iut-1.1/src/lib/.libs/image.o new file mode 100644 index 0000000000000000000000000000000000000000..97d94c7524e9c2cc0bc2a0f0d32920e2e49f0141 GIT binary patch literal 309240 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 F_aBxgB literal 0 HcmV?d00001 diff --git a/bibliotheque-graphique-iut-1.1/src/lib/.libs/libgraph.a b/bibliotheque-graphique-iut-1.1/src/lib/.libs/libgraph.a new file mode 100644 index 0000000000000000000000000000000000000000..a75da54ea91f22b292cf89ef5aa4119eade25a62 GIT binary patch literal 399074 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

$`6y3H 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 XGfwQ!pZJ~((jWg`;(yjCn5y$1S;WG* literal 0 HcmV?d00001 diff --git a/bibliotheque-graphique-iut-1.1/src/lib/.libs/libgraph.la b/bibliotheque-graphique-iut-1.1/src/lib/.libs/libgraph.la new file mode 120000 index 0000000..c1d7051 --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/lib/.libs/libgraph.la @@ -0,0 +1 @@ +../libgraph.la \ No newline at end of file diff --git a/bibliotheque-graphique-iut-1.1/src/lib/.libs/libgraph.lai b/bibliotheque-graphique-iut-1.1/src/lib/.libs/libgraph.lai new file mode 100644 index 0000000..7429a51 --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/lib/.libs/libgraph.lai @@ -0,0 +1,41 @@ +# libgraph.la - a libtool library file +# Generated by libtool (GNU libtool) 2.4.2 +# +# Please DO NOT delete this file! +# It is necessary for linking the library. + +# The name that we can dlopen(3). +dlname='libgraph.so.0' + +# Names of this library. +library_names='libgraph.so.0.0.0 libgraph.so.0 libgraph.so' + +# The name of the static archive. +old_library='libgraph.a' + +# Linker flags that can not go in dependency_libs. +inherited_linker_flags='' + +# Libraries that this one depends upon. +dependency_libs=' -lX11 -lm -lXpm' + +# Names of additional weak libraries provided by this library +weak_library_names='' + +# Version information for libgraph. +current=0 +age=0 +revision=0 + +# Is this an already installed library? +installed=yes + +# Should we warn about portability when linking against -modules? +shouldnotlink=no + +# Files to dlopen/dlpreopen +dlopen='' +dlpreopen='' + +# Directory that this library needs to be installed in: +libdir='/usr/lib' diff --git a/bibliotheque-graphique-iut-1.1/src/lib/.libs/libgraph.so b/bibliotheque-graphique-iut-1.1/src/lib/.libs/libgraph.so new file mode 120000 index 0000000..a2b22bb --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/lib/.libs/libgraph.so @@ -0,0 +1 @@ +libgraph.so.0.0.0 \ No newline at end of file diff --git a/bibliotheque-graphique-iut-1.1/src/lib/.libs/libgraph.so.0 b/bibliotheque-graphique-iut-1.1/src/lib/.libs/libgraph.so.0 new file mode 120000 index 0000000..a2b22bb --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/lib/.libs/libgraph.so.0 @@ -0,0 +1 @@ +libgraph.so.0.0.0 \ No newline at end of file diff --git a/bibliotheque-graphique-iut-1.1/src/lib/.libs/libgraph.so.0.0.0 b/bibliotheque-graphique-iut-1.1/src/lib/.libs/libgraph.so.0.0.0 new file mode 100755 index 0000000000000000000000000000000000000000..21c38c1d60cfc06428bf956669fcb2f787820c18 GIT binary patch literal 349336 zcmeEvdwdi{_HTDGfdPU&V33HY5l1&s(8L8L0-8={pa&-!B}l|a5{Cq$A&JS1fFcAZ zS*9HZvg-?7UD4Iw`d9^BjmY|#AwU8mhQtTxssR+b36J0d0tj=zr@A}oM6!GD{oMcV zHlIoNIaPJ))TvXaPMxZ57CYUOV|bo3u2}9mt{dXG3_T(5hBzY&aO1f__*Ze7%Nci$GSH>pts2A;kMw(4$M?Rc>iLX&?{Yiza=q_% zy_|8UI_R4AgLl^dO?^3fxr&LJJbK?p>lGMxqrRI_P8XTRz<>CwcRP2BUSD7RP#vog zGVXdWGg&4fiF9Vljnkobe3*C{fFE5kI&99L06dYS{D1lKUi)X^gDaa6kK5 zKk+wFxkCJI$B+0Mh~K5*gcsKjuvA;PHm;g=A*0CiqqtkFeDd0c>botMUS#9OFI&m^ z`&(93=ZsjA#MeEp43IL1UXOMam`M$D+>`1lNt zv)Z_fB-E4~^KiU1&c+QLY$fI4FG}L7V;C<;!b6S%L`pP$10Y5bnmVY)qs-zxlGz>lsMwHx;m?tjDYW&Hk* z-y8VRwFbYp@cRb=y{>n3xE}Yl_^re5ef&Pa&$uG`Lj&%c@N3lJ&A5Mz-zPe}4fjv+ zYsPQmd-hx>6n|Rw%a!Y`M=n_T<*I_0wuSr0T(dU0>F4J@czpkP)5pA& z^yZ4GFTVZ2KNdfj8`%4}>iu>^-22!3dBwdIC$`@8;o1KT40`;b%-63Uy1roN`G2`< z{kd-Idj^y-moGag^~ku!DUu0I}KJ|bqs_2*9<^HT2W zD`$;);Ju%JUz|90=&$pag|EG9M&a{sb?)XyUN2sHs9Jc&dSd1FQTGqK)-&w#P3Qh$ zY}K>No~j>Iw=+BLtE9g>zbUwN(2?l5*WCEZH-CF(#vO~#DtKjI?&n!^&-!TK6>r~~ za`6jeCLgI@nq8Mwym|YI!}D(Aj=vMb%|2(;M_>F<)0p{7VBze3FLT9r1qM0syz}|n z#(uly1F?MXOyTdh%(&o_&-S;D`|{0<(aW!~Exuys?*+>#;T+!a(ZBA$jXOQ_=x0BT z8UN;}N&d!f054CwuVu*_!Siy5sGWoAW4J$0`DEy?t1eo5$@K8cZ(jOH{931*d-sdr zx0%lb2K9IT>9ZZ9qE~H3yIy)=u`?0*ub5eA%e!ghXHPY5TTwG@Z`FAT$rm|J<)3%r z*UttFvu0%8@XNdlGS6}Rx^w<*+}L-dr-bL9edk|zj+^>p`cE_WjoP^2#zSL@9m|>; z?{r;s?iJ_i-Tj+eRvgC-{S6l50>l4I__WwFujPRN0+}20ErG4OE@1wopKHBT=L!M9dK_{<| z_I`wk_e}i9_kj=e!O!tNP;N*^Z1=f&Z&LS$?8LY#6IMFWgmQA*+;wn z&_}(e`;gmxeaN}8k9JM%gU;Xj;PcWx@_*dNc)6yJ{Db@8^V~l2=l8+S-}{i;;6CI} ze!!XfH`)h3=l4>&02mibJsCPymawzO0KP`LCq*tHx z!RJqX$nD`i_`JA}dh1yK#&bCrf&pBHe|r{sn)5XLG97;s?H$4;a^WfspQPi*F};fCD(=z{7wh3p_84wOGfm-9_Jegm=*{rP&mIy>A( zJW&4B=^CAE?Zyq(>8$c-h(;a1Ntat&zJ{Q6EnSb{NAxp#_17CZp9O7{i{l1sH?BaZ z)2!>~`8xh3UH&<`{u_FJOs7*ZNNdn#kQZHl()-2Mt6v`1_132Av!S;gdcA83wenH18^7Zfm%yF$Bh7wYoKxJ5%4Rd zFU23|8m!BqL$?El9R8@|b9DXB)UtE^^?FyGrPaGc$2;_Pt&uduNF6^Lcc!1c?Cl}& zL-^`>8l3{rr7K70b5$?<_OM=W&e>Z2A}u@T(e-RV7bmwL)e%2)dg()h=0`K0EaOa_aaQdV4GM_7>{+H9GxOz37kE`zy(&$;X&y zNi58c>Ept%VdjoE`Nj1dyr1}fG!6#hh5ovy*7Ou8G6-d(C;;V z!@8bu`gn2Zbf)X_%;_c17M)I;-rgiVKZ%9-QF_r|0YxQzTeT(!kY!haF8_*N{p-`~ zwdv#Z8a@9~ozG@npC{?~CA$3A^pej6ozGRh_!+C$o7$`2+w^{~E6@lJ)7a%U8GN>B z_y+BUxUAN$g}wCfIMS)T)xGf7>+P!3?XzK5_vracd*%O^J}#;$2#rhB`B|p(Q>XK9 z@bfKe?{IFs-Y>|;u1UJy7U<*M@Dn(lPR=)4zH~i*9OO)XNNO)SFX{ZOxlPNsLFb3e zCbf5dFaF;^zcW48=XZmj7m=UvNiK~J#f9lwrt59^Y>lwNXBOiJ^3=ygnB~Tw{QTK- z%ggesyoHtC{CqCom7ASEtEjSQc1e}Ds4_P@tF*kVD7WzL(jqPG%qjVv`Gxt#C1r)B zB@YyFS#!!us!A%e%V!liimIwg%DCAcZdOTEMQPyzE^k_qce1a{<1HyKGje8?`$~&^ zm3n5627!&LDlL0CYOO5ymCfSvCYSoE<{0Iip31^9uFN+#zlc4#%1XQ?;GwFha!O@k z#hjA+d_|n6ysWIq<1OOyZmK9MbLebTc`A#F$_%dZ=atOz&gp{Y6qU@L3s zFPV>apn5`;S8{n-l|_Z#qRHiDUIXJOf-sHr{Mkj`{3%&RK6-)-wFY{sobxNnt9+G3 zRp?6eqUYXx&zyVniwjFiInXVtG&m}|yBO`gySx(Z$)9Hsn^rQnqO@p6N!hG&;HDLo zLQ<}>3ZIuN^m;2x?#4r2)||q!*?JyP$D%su$J`38N*6+&yS#AL&Ay__1=J3`+vq`S zTu#aSxrG&6UOq7~Ex)j|v>aV?8w2x1K%N=d5~Nwh&6}G)hdpTMtkS}&DoWuz^wcA5 z8k9{dRD~x!sjPf1QDwbQR!kj%UYhNOI_H+>7R~qORF+p1ReBe2l(7WLQN)#%Fn(ub z>uDuu9f{b5RMv%g*@YE`jHu(dyeUOqgW<}eiteiv0j7)7P%MMq`fyqt1sTaT13Xj;+ixuB-!bVDP0Cvp17$tkS7v3xF6-B-%x z0jMgvrxmF?*=GEksv?Z8S?Fs5-`zlMS za>}b<$T2_UF^j^+NKqx1pU36j#^qy1n(ZS~ns>9isBAXuwpI#FhrKW2rokk6i`*r5 z!w%~*&`{ho&frf+AQR@gN*$V9R5{l?bL351PzJS~URDa*rkOPw{mc}Xq5;NS!mLRC zTW6WfvV;-`y-b!ydK}aUk4tt*u0#y(Z!!c#ZM{Pwq3`04q5(wBhR8U^I z;J5f2MfZe+>EXeSK3nK3=&o9MocH!K)g}=d8p@2??G9fP& zG37O3O?e+EEx8*rzX!epBuWy>M`u^Ti-2RnYW{7GzVO{8^XH%+iYkjs3uki`nCTcH z>eXUYf-W<`zmb`ijiGzVz?9N0Oor?x_}f093>vm)q26VBRc3DX-M->tjECQdqpVzO zr!KjFlfg^@x|#1QtEeoR>nrt^RFp2rheJqQYUMFZVaL4rB^7fp_?dR1Gb?A`ttFR~ z6_=ZuQ|v7&)fJUedgtk(j9n$Wo0>nrVy?HS3e#!D+*{CRWF~XVyNo1s-dm)ZR4Rkv zlb7T38a9@tW|nwij>xn+3cZCK)G045?TV`ME3T&Jxm{1FfS$(^*3*TZO>QGWsoWH| zD>Ezqsw=Ka?|!^uT-S5j*sjO1+^kkCCezB1{}kT^Th0f4OVD6vG|FT8`qasrbo%d;%-hIPSbb8qPPO z1S_am?oz;XQ7^{oX#_vU^7rGe(s2nTB?xg^xJfl z-dH;mr)y1kBW6YTunGSOA@r-sg#Xw;;@)h+|ILKoVZtvn;oD63coSYR;fJY@ zCj5J*{7oi2?Hw9dvkCvafy8}>3BS^WZ!_VaG~u}lO>YrKf-UR5tR_4{UR{^Xgh$Az z>q<1?5rXTwl1%tdyRbNYX~HAq)pezs@MKerYrF|hyc$=A2_H0&xJxFyVM8f7$AsT( z%AaS#H=6JTCOiy(*EPq4$8^zkRhaNF`CZq16CM*n*Hvx8pVfth-kR`644;zgOn923 zjBBL{Kg2-dzRH9jYQn#4!f!R<*O>5UoA7H*_yiL^Y{ExO_$Cux53RD)W)psxDgO== z{u~p&&4eFr!Yd}c5v!-<4io-dQ~pj9euN3n-Pf)E#@-VpTTS@$P5Esm`~@a_q6vSY z37=%bCzz*SF$Ws?CI-Y0CfK$Nx&;zY_Sb1pX_5|4QJ$68NtK{wsn1O5lG-0zU~C zoRItntWq#;`xQJV)rP$>(PqiN!P>xzN5^fslINnAY{g&U!VEkSJcrWMwkWPk))P#N zHMN<+>jBFTLi}vyoSNA5=F>Y6XKI zA(%pHY5{{ECYVBFY7T=RAecg8Y6gQV38qk(n#$mN2&NFcn#AC{38s*kYGd$Bf+-ZH zatywOUu}v@GS&W zs7LMimGwWt6yj0a7@SEkg?7|t2471sg>=*~gRdf(LOJRh246-ng=*AQ3?4-=g<{k? z29F?^LNIDIgNG7Kp%=A+!2=1Vkc(Qt;244_)S~7v_{12%6k<^`82lr_6k1VJ8N8oh z3aO|`4BkyJg;G=-gTEq}LMST7;1+@@bfR{gWc^QY2ElC%UQaNEO4McsuOpa3Bx;z! zZxNhD@EQicN-%{))Kv_AfnW-SsC5i}nqUfnsMQSq6TuYvP%9Yx2*DKcPzxCRFu@e+ zP;(gk0KpXEP%{`@Nic;r)KmuFLokIj)FcMqO>j2BHU`fmm_isT$KYECrqG4jaf0Hwz{C2k&4hIOz)Dqr);_!x`V0U;zIVs`J=pdxIY@>9kq_;IZ19* zFTv1Ze66FIj4)?23`g&EGB{R)LFJX-@!T{?J|P9q--bs?9uK60k)D8hlys<}6r6B7 zvlss8z;c@nr? z<_;na68;TI>*A_Of}7l-S$3NwJ2_=FYdnc>oCEokPk&(@_8}>c@+SuPSZUU0Pk}W_ zwkhW_K@Yx#z@U#?mx0`p@2JKe!CCokqXhkU{l@w&C&nQN)vo$2gU+tj@T8 zjQdpO5M<_n_B(pQykCgo3tCWWGnjF0$dRT(!%eNL;92Sn({AjfDt(id1!`%X_whlyd zl#wPagN{m}Ve%d*(GN#STbS}GPvO}WoM=~UKheWOoYJ2?T&F~T?9TNl5(7r>j&W_81n9& zAGTQjMa&iDUyYgh{NpHsX|NJx*y!_dN--2h!XymXDJ!Vs6y@>IDtrRVHnzzj?^0GX zeToY(0vNZXe>NqB6($pE)f7Noib2)wp9}znX`D_ zCUFL}Dn)D6TXg#B$$pI*?qlRI6_ymRJPPFeCJc#mkjNhSD ziRU^bb`oXA&`>Ej_B1NFS&k@g9bx*GH}iIN2B_-tV*bMQR6ss49lhknBl!(?;I8=% zn2zL~%8Mw{4S%J4#yTOEST(zhb^l3z2k-(Vswtux$rM9=w-IAK;W=nv@Mm!yA3nOEbGKbhu`8zMjSi|pwKo)TeBU%@Mm zm@`IEm2h+3jD37N9KtMM-rcc9+V80oE zl9eNxTu116$weWuq@4AKHIv^g>pwZ9L=tEeWi6jIiA7^ta*^ax25)<4r^aQ~Hc@cXYuMU84y6hq9vzZFVEo7O9 z#)vK&dEGR=!DkiVzTd+s7qd>=kZ2xFXs__@X5rly;oYO4kU^OvyKKU{Q5vGp6F7i| z{%{a1cE}l4aV?wgkq4kOP<#*W6Y?A}q<{oz02E?^B$Fq$lqh)8@U)TfG4{wk80-<{ zNwf%=$W)A`#&x^fbyRWFxp0>!@ZNOrw2T!TT!h;?Ow4FZDzN<+cD!;H8ik2{;O$-W zb7L&!VskqoIW|jRfpvZrh?<;rhuxYM4#r}Zngnyf=*hd_(yX(hc-m1(KCIl=9*s6q zdr>LYF&GBcE;qrKrm1QJm{CC)G}hy0V$nlbS%vVGz`pD2Am@q6%wRg&Cax zc+CBSO!K!mL-K5wd%kt!TMG6w!?7;P`Sp!}`4likh1t|AGZ-t1Eal@yy)OPF3TS_}4f+ zhwxDICx{PN7@C+#?Y9AjxR2z}ynGROrF@!1$*)weAfCFlANor38|<@F-bBv9C;Gxu zTL+#mFml5R&H+_ZPS8O!`kzR(LhE|=;>Vo@pT#`4UJcH%^5>ul$s5TF&>4tmoiB#%;T8)lYLL?fR zcfIx`S|Gr*V%>n=okg;$Jt)-rX*`8W?KYS+2S+5JZLk-r=C4nLL@=Ti!~bJx`#+@p z17!^ah_nMV59oN>M^IMkcqyp0w|iZm0!N-?*X{AZCR78Vl|Q6>165Jy!X;H&!61{r zllf;5{^y!L)56~hqk^%z0$($LidfNlOoUb`lxrU;h1~WehwMNvguHglpM!eHzY}#a z`TsQmB7;+(#A?SwGCg4UiP5XwAuLdoLhv&4HZ<^Z39Aw+*kx{nS}fXVRYHuI8dF?H zW+|B|=LCh@M+yc#o#2pFhrC-^K|?7R$AN7aC=oYT@GO!XdOw)Eks}uXGRpzc9Qcly zrAJdYCR6uiD3LC5tQ%XDReOmXdRD4E>bswwlIdv?1sGDh|Cg^hn!~~^DRW4_ZVM0?@e6I`m zwtNz-hZ>nkPxn$Id1mWs?8JPxiqC{r5Q8innL&JRCO%<6(^@bB(>A9a)lC0oK$ErK zk4o}pw!fo|KO($?5!R~mK2DfTz_bUIkDvi2VbZvRJU!nMb^pnjd6!A@Ddp84i0NVf z9D-WqLsD?!S5OzLy#Dq()qIpU^a41xmII$Al645{&N~lGFQnog5VCXzGxGXg{~7t+ z=KNS981~{f>&0BTS@IkOX^iMCqzugv7VO*aNlL-<-v=EGSZ(ny$&cBaSZ5EjBiRvr zh7Ch0I1rQQ&oEWLLO9|y120Y^e{#E+Bg$drQPy`X@P=r(k_#OsdG)q$cR(b)#skcw zHXfSy^cW9>XX9b5jwky@>~(j3JUXA+Lnfg?v7t`56mfYZo8bAoY;+@)Q|{N8yIuVN zon;a~)_cgGtmS{RJO4SXPqAtZ_0FFm)E^bO~@|W$b^!K1A@xS zHX5(V-BKpb#y2Q$LWp(9BWrc2&$ki0WNRKRCVQcCr#_ATzPGM{GL|nF3 zR+$bS;Co&OR3=d1AcLxno2vm1*~W|?O$2(6YZ~gaqQ|Mi24xi3A^Sfpauyu9aJ!(z zW&B}Y@^@b4Ju4XhFg(h`G&C^J>f@r0OukDGo}h_c3~SwlX~_!W%n~w_sFb4D{GCyu zW-FmRicB8wQq(BPd*LQI=?S7`bD;&1UpMm)>IcJnYIMBLkp+j*L77(M)J$WNG7qfN zOy|9?SSTacdf4lXj$VL=V&Myi&H9tD z2;2(iAWkL>ao7?=S-gapG-JP~W}QcxrOlcRj4R5+1k(Pw@--T08WH}(yg!;IEd3r? zOtF8@cbbmH<)UT&i7R=b_EqG7Yx@%rQpj>U+y(h(Vi*p>KHyxz-2Rv-TZG!@S;jH9 zP{v?f6-zq{OF#0DLL+Zyt|M(*?6DyE86>;;ldwq5Qm`tKCg`mAoM4tUM@fUevCL3a zhkUVouca{y!vGG@zFlnM*AuO`r?tQyXn{+${afbOKm>X;i-j}0?4{ukp)cQzC$6t1 zD#|-3r9W$~gabB6orD?IBrCFS9e)H;YJc)K{C`Lyq|nrx$Om(X*1ro$!+>@I;SPDQdi*`xbn-V?m1iIrclsV* zJKENPbXVvOyVd32kk?gTciw7L$nvIr-NnEBoxg!sp7<9=)yb=TN6?&gj6H2n>kz0j z4reZd1UMYUhGO?w!e$MIKxHj2ba8!#dm1J%R>VtL~@cP@LFIR^EGw} zNu-4idxj+6VNb$hVysKvK%U8Xkc8b3h5CM?@XOtqx>X1EKbGKO&P-KCb#BBhL%Ja^c~O4xl#CbmO0_6*k8 zJ7~iTCat*62~%KoB5R^E7;hKhP{n73EH)A7kz%mao=_5g1tw2~?`v_Egztmy@IN|B zTCT?lCP&FHUnL=p4?9YZ$H6mnmXz8@Hp0}4{Ce6{usI+wtE1%TWjLS0A1XN-{UREj z92#jAQzBwyPdoxs@eX;1L;l#2((FiSm=byn2bFl996z}^l#n9Ey6qz&`1sJsm?@ze z@XqrkUpM1)Q_1E(BRW;m(tzEWlJH-kko>p&&d}(A{ErU)RA^)>-$ZS3hDKhN8H!JK z@IQf{R55aLhy!@*l1)U)DSv~5Uv%Fo9{b$E|0qUIT_`R&8HKo=!jwK7l#1N<4 z>Iewr$s9uv?Id!XU^zkwiOBV_o&|}Hz)k%rn<)>ar|b|TouINF>8L9r9&14vkm=Mb z+Jc0Bj!^tLV&pjTZE?y?U3re{dDf?V5jj1?5tsr+=@5@KgXD!vPE(>NOzFr7%!><+ zwIT;nWg#1340y5i74hwmowE!bwz;RKzAs*$(|l3e2!bd?R5JnF{S;J1N=_ z=$h(<+JBJ#EZIO~#=OqzI=_JNFxlo1Rzub6C#T|}8R~SlrbJL1(jRBZ*Q7ln`cw>! zj-`xA$k-%?ECU=Vo1H@ajn+t8Jaj{p8<4OqMS*Jyov>2Y@nXtX4(uVt3#-=yzBO4y z9Vjz7(NUt1?x93uW@zF-hg@n;b(HKU70nEd4+JwSgZRJ3bU7tRtln zxgyblPI;tV#289K1BQwzEujP|o)U?iK&kibVd{N6M~(x;lGF+Rd==p!p8~QY)d19; z*nn0NzSjJ0c%nVl7cTjD?dC<7A-aTT%G?ne>k4^O(JV_wz&j%v8k-Svr&%M%ErIwMl7BtyS*veLC?_UzBF4$LNOEVk zrzJCxJ3NY+8TMDGj|8?B%l(l61lAMs3AD#S?TNZW@n<<}!;7xX_Uy>!TUma|^QkLj z8R+JBYW7>GKZlwY$caknO_*MmnvC zC=Y1X_^*w69ckeuu-Ev1a;%ZVwzcHK0mk3^`}xB_S^ZIg9xai>7JoFB9%CYhW71l1 z?niihJx`Rn{MYHiyN3{uJ4x=C@X_0=$zLt5Jvu*5!N`jSAI*{Qp5vnu{t6-TAB6gv z*M5gQ!Jr$sNL!4wQi}B_hYwOa%HX=+6bv+U8eznNiu^8SBpgN@i4KmKUWgwVM|s zNJ>r_>sNk@P%p(uo)#%~nl&&G03Vpj3-#8()EJ>YBQ}s3t2IHrk({tDdn5(>2Q#ct zf?GAeKJDN%DfC=3&O1u}37i*eiU+OAm!D(0G(y=A+9Y(!U}Zf+W-*W26|~s>8!-qP zr1Uw~#T%GU!P?VfEI|L%8+P>Y0p+7i@zvbV^zlbaF~khf5cwE$t(0@WMD1uPYbUuT z*m`oN9farj0jw+?%{tlL9%pdY8^1bhzh9K-@@zy5OFrb}e~?1&$Ko3;oN`?&ks?M< z4e@=J?K#L+Nog%99oTuxay@t;IgTu1F{zo5<`Zg-hAox=()JZ^3afHq`x{ zL%jFNM?{QQIh?XxUgmdGl4qMxzibc@f-PtW-N<90F*#tQhAN}Q^4m9@27RF(_70gO zd7I>q@Q(CG@3#*5J2}$2Fa67hf;f$LU_DJBk{mYyaX;~nv@p5j4N~YqNN1X z(^@3|zD~DiQ=?x(<%AOdNhhtPl;h|w1~cip-sAOaNrddD)adU77nC8Q#^M+VLPUbP z1SRVwYo-x_*1fH5lBY?iU+)rDMGKYx6uS)NfLJO?KI~e7+MGnQvN5F(D zz1b(<&U!>&el*B%b<%z{pYQ8hQz3LjN9z*Pe-vsy0_UMjtTSVUrT0M+@~1HH7Obb_ zk1_joI^~VR>J!QzTd*duJUKLL_ffP{Sbfq-p)VLn zJU2MyJ#KlAL&k=Gi^MB#I6?lC=gynq4qZ|WZ`$P<`;4348{Mn>@9+byD1uWSPX4$P zQ)>EQ-+J;xu_06k2B64^Zn?wk8!-KF$*0@*P`=P$xe4)rQfwUIRK?LS-6m~`KzYUO z(P-#C+RB5SK;vMwR>ITO&J79gT1Ec>nuaWpa%{0Y^%QKt>A+N+5cxIgYXd{fMP*Eh z>8FI6d(ivlX0`tv#6d3}3g(c%Mg=bUW7M&j)d&CI;y|jEW-~SqT7~-gd|Hc9tIHpW zDTzLTp15~&Hh&z6r|*rP&mWH*w+6O6QV}f{<(p44UN+ESCkhr@Asi`9bCC0* z^|(;G72ct0)i~?!FCp+f@YHAMM4CBZ3ABFOlo<=v2*;xDEacYXD&->BC%W%5Ryy?QRndM!teS#^O3SZm}d>P>!L2DAYFvGNXZwG$5Jwe=B$PsEjGrw{St7Smntr zH0=0xSQ+TnYg)%ctIbM(AM&cN;}7^LuA}y@06QJ*G4)D>lQouazF?_C$`uRnuGk48~{Y4Ry2`jC$!WbX%$NNWe_ z{`wdiW9b_fs6B+F^?z@A?~n=qWGhT~C~o#YVV32%=MYI!FGEIH?N&_K>u%Dlb_OMf zCKZHXwSyn`@OOe!QW3W-g!95Cu;Ah(cd!T%qUp)5lwYNk6Apf_+?@X7LxXj_;=}13 z3r|R%9g_U5^4zDW3dMh)?ST-SNiKea#P4v+ARs%F+03bXUZ_6q<8_S56A1gHh2c8H zy{REohG_p>vlECA5-aewurq_L7r0;khiq8-)`EN7-dT&AcM!rOu9Tm}^nWdMB9eLm zT#xjos-fhT$<5ki2KNl}k|ckn1c*)kSt_V)R*{=3H?v6{xvGKZvONbJDVSOJD>IQ> z{t8j6buo{BG!A& z;@{EQ>MZ|>7~c?tZ0#2K>(`5o7CY6g%cz>3{UPzNJx#?q``?~Li48P>^v(jwHJr;}%G zQU?R-vj5nB(-uEca4D1Pgr#9rTREI5rjPb9Xi3qPUkc^GWqXpc3iYfP*n$K4RX#pA z1EI6U$=J1vPP1WCDoYCbiCAM+D*hr17LD?wRCH5D6sq(Zt1#pQLBB@OX;AF0ZzZNy zq=!+ey|uW`?TJtX5&o)BLy`|AWCZ#nn!!6kJ>-a?g=Jt0j?{L>EP4>JB{m4)M+x-_ z{X*_ru=dIA7v;BLbsR{TLIAG;xl?HV$Lcxa`wS77q0&lsNTPWnx8LchA$LD4v~LmW zhlFy^p_O$Y0d?}30gGU)qlNnBz$O62@^Eck@*ajhw-&xJ*Z!VKKZ8>ef;ZW^=Rwdi2aj6s>E=`zWtvX8zRYD%uAVSc(dqA^4VwI;P$T!*i#}gN|VtI|>7#cj|LyV*$ zRubvB@9XI{$^JfU%ax5iYzz5inpwdM5h&?jY!ig#81!7wmmqgs5{1t%ylcstM5|}- zC0MD%)<6SOvTls$UqZJEIN(YjQ&Mn9YJy)vPGQ+YAhwQP)-?PVN&XUc zluxgDbR;q?>X1+Pqc(5Rd$fE?Io{eSdA11ezJCKprQcn4!z|oWI{7APrBQqO79Y+x zrc6IG4|U2v;XJ4lH5GPn+0-Utn7>YBtg!qkljk>#o*h6n=-v=v&;BL7RHW zNW2w;ChWr5Jb$AV2X^F$3*kT<{?p#jr~~yL5pL2sM1E2z!mX{k8f)y;K+;9%9Qsp0 ze=4NLDV<;jOXZ~<&<6IXEpo8zLc{g7R?DLEAQjs3`-^gOYnzyEk%blI$f&uo$8A1^={***7;!&{Y+WqAPkkT;$1ag` zYdN_A4)|jk#0DPT&!CPVC&P<)>LDy*Tlb3TUkJb&n`NQ=Npo z#3c3wZN4|e#_9qfP#lY&_OzqU+OHSoca2|I!T773wVSDX`tvoK44KM+_Fr0}a@;x#&7bNb>e$fW$1t4Mwf09!Xxwd-Av9?zZpw=d2qJ#k zQ`d-&I0LcjTd@ia(|(F5e}(~y17ZFH^WDKKX;&pl4BlylcalJ7fO2VxH4+bF(|39Y zg|hhcCZX1eB|Wxp-a10TRV!pG)LsQiArd_jE>|uVxOhy!O<4^l=*&lwBu~ah8P>VG zFd%@)MaGeG2bQzwM#O)`bRQ?wyo^M6Kf=RrQ7({k1ZUaDQZbUZ+jG)&>|bsVSi^eQ z6`I1kBYR=H@0KLbaB@O~a*r|wYcFev9Yn&09- z*>B!(mnY#3_{!1UUG>3c2Zn3Iq7hDbn0KeEzLpz8qbE*9OgjAz2&#r&&Dg|8-Pi&_ zJtR~i64Zc;#r}D7`D{;(vh+S z_IJw1L4}o$@a6*iOKB+Tcu&IE5Q`Ia07RY7vipm371Olv?2oxQc zOK{2UXn(dR?Ba3W3i|OoGyMdT;zTQdV*3d(CSgz@!Dy;)kKVeInx16yO|*7Y{}Au{QoRg?y4%||euSEl|L6SD=s7dL8)!LC<_%{|l%*f`wv*(&!Gz&l zJ~o76uxvH_8#j+22-$??AOM>%`fc4NSYQ)6qiyKF+|Yc4T{=ksCCDUWsdnht4(t=~ zk>WbU(9*(g{y2Jdgl<0)Vqq{6`UMi02kK7m^zCQ0V3co{I}JU&0Hk!{8tuVE`zs7s zY*in?IKbG$h%B||VH(3cQs54aK1brW({P;AEl+kH(=Cs-ry<6LRUVcI;0C)s!g84g zFgAU)bz9J4hn_7QMmzQ+6KM1z_K($&D4(REYs2;|HXzd-@-|0GSl*a&3YP6VK{_RG zbfj#=fn{hghUP{YOY}}rxKVMWG*NK;7y_zNlOz3;hXx`6L1a!bEP-> z4rKG4pvd~Lo%emxO?9SDwOc_XV9W|)){n$4{phJ32Mp~n@k_7%6TjWe9>SiiyaW8} zs;7^Cm%KHtMbp1gL?7Zf2R_>91njYH?-XM!wt%IpCw8-zK;hAhP2J6S6r{T?SF4*A{$mih`(o$>)B zijf19!6AE)5-Tj9N9E+*e#IjCzZcRDM)o7%dpL|NB2K;tDK&NuE|xnq=|i+to|b?m zi~s~(?N@5^T5uX_jYSE0yMK3otW@M15?~49ucYm=z+>@5KukZdXgC(yi?KKNoiYmN z1cF(%_KlkTpdzxP7dN5*E9h){sIWD^gg zi~T&9A{)dpRjx?$dgRf{_+hrxx>GAaYX4Kx^a-4m4Gcm+JOtzSf~<_ z|3wPTx8n6g86&!K1qLLO0HP3=L)bFXkQG4T7pa7lOe9TV0 zYFek{f=#SbsPj!aP3^?{B*OCk#9|g$jK!HgaEZptoBVjSBD9P(A3J2&8<5cm?2Y?n zaP=|<1MQANxV1Y0i?EAd!k@tVDZH@!CWBrKH5rs*BZp!_QY_jFBIqTpy&-3m*5O*~ z$;2Lwfb2pdi!}y0!6N?&`^r(b{UhlohvGC z3J>1_Y2i8Ts3;%tZ?fJfTZHs&l|K^O^p&HY^qcUa6VX?ZvWe$jj)5KpvAz zyi-0Zh5ng{OjASNah$SKOMg5p)Q8n8k%{_=+MTNN^*qDXP>UHp5qL+?lYr5n`Y=ly z`8kHam*KN?ywZ*ZDP>FmLf)jwtr44?L`)qA%GkW@hj#p`E(QRTwf{AktPpF$xP32D zOD2`R1e0~uJ6Lhvi5Q3}+JyZFoZpMm`!p<|;Xm-3Gr9=y*S?D7BbIcHQz$}!FO3Mx zPeDPobrk|u@RCJ&hD~nRuK4%h5dkSU^a!X5%SXe~K%w@>K%pp)D9=lPdSOk41hPdn z``80!^8I+Io;34k)BszYi@Q)W3@a~JD1Yp_Bjw*4GD$FrEwYB(iPz+QP#o&}g*Mup_g8v6b zQ{r9nO^J>`a(k2E-%Uao1B`9J-%wqYB<^Vmx*zA9!O@S=DAgN%5Vs>gGSy>@*SA_b@2CmQ{imvR6F< z?(5i*3F7oo_M(7LGXp(Ka!^kp8Tx^_COsmozy~Necxb^H3Fu$#uy|{m`~`fl)3s(9j0=N6ZlQ)2~?$zPltR6+~5$lUEy_(Hi86`Q83=F z9z|AHus^*Ng5!d&^cgS~`xwiM6M?x9nB=PA)S&fvJAqW?53G29R}dNGukd{mCGlO* z;4gIX`3Nk;J<^6AvDLPC6Il0C7fhmHm9SzUdI5fn6;x_ZqYktl`GghpQ3R?X2d~l) zPCdp3Yc)EFI-PhQ$C9Slh~Sz;#*jOHm|^Fz>I?G`)k+cTA48M* zW8aGMO$njgACZ$aqjm+F1V_O;+7+BCkAC4=8Y;BdGze6#%H63pN@%+f5>+=}L4suQ0l)s1@*(I`a4 z-Usi@ZcsyQaLTYdrO*ghZ$v|pJypx@)3S$<9mvrdvOq)52eMcwkK-|va34GXcWG^Z z{X$*I$S19}>X(ob*S`a`ro`E_+qv3plymkEJ zl9G*p_=MVas1zNTMpvuTHG!UbjtO)ch~X`aG7@AXMv5535QH+ezfD^O)T21*;(rR| zrO*TD$m@mr7&#)PAFG-PLlA@Ra?vhACC}r0Yf1RK2M>QRsm7LRop*zOcaj(9rVNg({-y&v<`1eSQuhx9l_46H7d0v$`F9D`nBZ$(*If8Le_@UJ zgO>U{rmqJvSFNJ}BPM}lN)1gqh?`RN2BxpSyxC*=LfoaN|9vA~b0Pn`L2+nLn%Avd ztw9dHUEUbkV^b~#9Qgr5WP_F87_wa6<$xpp>JB|%p;KdDfHZyjgWg{Gpc-Z35)-^$6qf(-?>8Z5` zy{lbt%*WGl^|6d~I6%Zbw(GpJC`6&SWUYtv*k$jItAOz~2O(8X0F8(%LqwAsE{2Oa&5x$iXQrjUa6cx`Kaa#MK9B zuBi(?N$nSNLpMf6GA`V7u@!sWr>4n2rT@6lg>7LZ;{;r2T;~5kL|@5|Q~uU4hJvRd zX!(P@>7u4%UtF|JeupwT(%Y&AW90{%yR&t7$YJA2Gq5n@6hB5^kQHu!)#O2$_s=w5 z{3o!9b_$#X8A-V#q726>I+pnw-YaPzi=Fq|F07z$2ej@@*`ighu?GJ-mbO4htFUz{ zABm{83Bl3W#u6U>2vpY&!XLB$+eo%~!ZJVpgFUXQ1A!%f6w4WmI;_8%g%#}Ky(EAX z5g#@Y!%LKZ!j6U`CDN+6JWb-omPcZ1f^-~_?Q`I)A!9J*xY*h*2IJRZKQ4=%qP}Qn z`f=YK4msjTS>L)>V^?Fn7t#NT&tZ$vBa&Oht+_ zw20649F^B+VeTA9yIBbiD!wQ}-QGJI&(;T_xM3s>Id0~D+>onBxTDLzpt=?E88)%c z{YW^Ym8pp<{vs*|A z>}>RdHkgz{-g8L!(P=c%T^P*5G$+(N(Jd$`T|2|!e;7Ei`qzQp#m>O2F$i;V+=X$N|$zFJmCGiZavx?-Hr)!;(zFtziKMvup2src&Xjaz9xNgt}w{u}0q{HQxKg99fMN)VG%cdGEl; z>D0&gUa6kX-{$*k_57G5-?Ipr#cCf-rO#K;j&`DQ?0=9OE=Qs$_p81($%l_zWa12y zc0LR&(lob)|v?(&z=WyF}N%M@@z0!T%_QOiud#(L%* z)-$Vn^h^cyOoejiOIptWblCH#Z<1Kwbj9x(Kfmpte8^bqAM*UFAE5rZ0Z(phsbOu= zqmwEeI42+}KfVZu0o(izc^|&ngg&Fsz@XP^;Q_N_v`Oq^P=a%lu==>z=wzKq-GY-0 z^d$$pG^Bj{0DgPQT$=@H71gP_(dhr9=y+HUHN-8*QlaSSO5$`@VFR%HvG(T)V@Ga~*Q z{HJk#kG2bOwos^DgNK)^h1${J1BJ!N_g3X86c7h&aHRhr)c%Zg2}_4$PN>-(!z70^G_N`XA7YR~6Q9Is zZ5-z0ztigrSe|6(xxQHZ3%1Dc+DUb^T5xpWoijdNUATn$JJE%s#V-G^h!szS3Xq&( zQt^2NY(^%aK?RUhhC4KI33Yd}8w-&fw|t5|aXOyjh;UizB-yYph~L4!;8UwufLW9) z@Rp&QKS(bqPI2+yfhW9YfWuB(+ehklJa{W}f_yiMf&O@R z*y2k6&U<+;>3_wfPl;L&z{?Q>Q{du!=ldL|sMt9OYJ!7T)$73%?6)gahSk`uSd1;A zgOg(PRxHJQ=^z|NcZrRYO^YPftJ)gr4eDTRiN^Y$4xXxalk~MU94p=aZE;<8Xi*n^ zHq*$bsSX-Ls7L(w^<)P>)aE{lL9%)<^<4>_QvU|~ui0!VYnvL*9rq95GsG zUns0rh1CiUPHm)pAjxwOV~>3$!!4hNR+9n8=^E1Qbb6_a^v~tlfJCfmp@8F|+e?&h zk;INzFeB3bv?%Xrhg!l2K)dkX&kvxaPspe;?I2#Uv@Z0IBWiwt) zqoV`kN$GIh<#fPdUre7zs%90FBG&&!V*y{e4Xd|Ow@_B)IfkYTkJD2q?wm&vdGihxCViNvg|asly>U<-t`wLL^=1ca^Ka*2Jg}u_3dEUwH*{)qGP>+i2{V zVS#b{8}cip;G^UU=>E9A8ihZ@&i5Mb`^2bs&BPtP2IgC|Z-u@}p?eMg3F^xHaPP%T z>2xQElv4M#Nh#ak*XQ|v=lbeLf!iApkEZxXkex54gUP|AVPZ0UedRg9a>Or$+P?zU zTsoMH4Dd4*)vX{k73wd;8@E;GOChnF1O9djTyB&VeVxyw;r+0e8%W2Mh1yjh@_*_J zVm)E8_pGBDWWd*N&qLq-Z;2b{p*2BCp=>lFsI_Y@r;dUWvG$t$O|^<4wfbn>8-D2e zZu|Ei<@skY+owD!h6a(2=q1wsO?j>)IsChRcL#stTWj((DjAC(`?j>-$QD&azLpFDz_9QWu~G|CKD47yr_WXfPZ zKkx6H;@e7V8ecQ5XGkBLT`aFQ4)~LE!Z)tnCMo^jsaSdaTA{D;my<68VU<_NMYruA+6*VyZ3R!|E0 z?8I-Rb+>YbR~mQ<1Jsd*3DSu8Asjsp)-)9%i(?N%{Ke9`@Pv zeySG6T5@15h|tl=BsW$_ITQfK_o6WItfTtaLZk=dF9VAsV<=!#mOp_LNc8QbBmn)o`?G*47{<4NjoOs^8<8f8VraQZ+V!D}g$`=q`0;G%rt z-Kl(WBw{U=@hafJfP{A>rp5;FR{JU5oB1AT0rd|}(%4Rjk#JbwAHl~5QfYG`1OM;1 zP=6I}C{-DYdn_`751d7Uf1Td67%xS9r#$fqsrP81=5bK-cTVu0?eDzEdmhx*5+Gs3 z6@5vKRG+}CXRHgqQwmUO(s8Q4#z{*Y5XuG$efJt$_G1d8aY+9|$v?t)kmMs$%69Cp zu2=**7|9q8JYE=Lxs;)-s1GMRzEk??{M1&kk?+umSJR$_{2iuX#iu>u>0Sf5K`Fo^ ze1)8>koOW!UZ1{ASn)W-6LQ3H6VP5^#Zo}{GEHX4!g>HM3qGu|3h(%b@okA0(T~FF z?SMW-C321Z86W_CBmdpL3XlALd2H zMi``rb?R&MjYoWMluSvDeLhvc1Fx*HbMiuc2iW)$(KNjL9)Vt^w(iCg6hjC`P2y}&s1^Od z1zuBn>@kwO3t#l4Av9UeeK8kb{dn z|BJnM0gtM>8oy^IGhrZcCfJBkQAdp$6f`JmBA_#50u!8QRK%z#fe<7bNDLE1MF`FW zG93nJ#TMUEOIvGcwZ*ndsYM$u0$K}*mtxf#uRUX=;tlWu^ZnM|XC{*n^?l#x|NWou zdA^2cSm*4suWPTp_S$Q&y>`+~ZcBx3D{FTpeyq5%p9XfzgRCb@1iuk+&TpdKhkr9u zo7X%F-JvKB#U3gAv@>xX(UwcM^3LgjX@#TAZdIMG`dJycr1zEZZmh>D>n2XM^xxXG zez_o`ZM=|B+_5oCeWH%i7Zk6!h3uK1Sqx|w4OAP<`Z%J3xnklqkgesz%Tn^HvXGT? z$pJC)VyWOod{u(CR0z5V!W)C`wqH@*Z=A^jF(sGv6pEq=Rb^!&0ly5!@5(GUAmw^l zD^R4A=9RL96x%o~^3A0MV}BMdCkHM}xtc}TrHN+ML&D`?$fjQS79nS?hXP%}dlb3` zpvZ-_j#LOyOw_quxUtzIamji;Uhs3#%5KmLl=cIjLS4$?* zaK}1S-p>YxZ1R=<-M#F2UMp*NVx4XxU#5?3Th+9?^kMStfxm&hW}*cr_MU~7sH6*? zNi_CZr>@m>+=frw!0Ik{;d=Kj+iREH)$m4F1{m66;Of3meV}9FOGl0G4EQf8++3r*uT%Bv_GfULm}n?n@D# zXb+ak1}i%}KWYQ*9hsgL%&#sJ* z8q~$nDlg(s8G1&}W3-e@SC+L$MzxP1W5k`vYVc3DG7s0ulp(W1YA0=b#ym~Gc4e$L z)BBt1xRyd5G)Mv8yzd1kQw4NyoyyMX48`gF6b#-{`;lG$=*DLl8dt6iLCLZMLPrcS z5eD7R(I6NyBY)UD(nlS){S{l3B#dH&I~=d$R7#xJVLTIu0|MbY*$kW;i2c4pa*2IcwE&ggke#Im7t~9gHwL0Av@1X% z8}CvTF`lK6x#ULBpLNhn5>%&y*6E;45_FYW<}a{A^+gxGb0G#B^rj^-QsU|YyM8!? zneq3k?AVJS~CyKSAS{z&5{^&a|k z)E;ertxP~)p+NV#KS&~P>tW=v5;)>kWo!eQyb4X$IVIieC^=-pqUnYni5`|*PCg>t z?K^_8vxDsLz5N&2{@}pdR$~v3J}d!!azOL&0Qa)b;O*e*4|gi`{puMtO^hQ$(bqVh zzC#6nUk4Wxj5oe_X%RNY(|zt)TSVuchYUMBiL1%a>7g#I@_D5r@fW&1v z8NjX)RkS%i$13qz#5N>XsRh_o68XW2MtNH~POJDmyYXLHR@|}8+UYy+DV~frcH(St?LjHI zlVY9=Z*#K|h4+=RxZjoZ9oR2lWW{Fi^=YX94jRgL871waAf_A&9n3{_ABa#AxsP5# z^l>w)1L4kngugSKgXiU+mUg+9T}iJgc}FWB!ac0+lpKq3Rn=2U!^;6JFT_34@T&LF zr!32Kzb8gA;B>#ICfg)kB?e*IT?svW6G^*8@H|p;rAnrgBw(Hl$;>% z2JhgMLOx1741anm2{9#p&yx&{XZgyx3$zY#$CJ0KB7V756;VzR5~KZnVGiYXc&tSF zxsG&?jwHt$BvP%8WHBQx(~)k}k-h|V66q$&@`Tfe z6?v`aI^@M^x|DDc8%S4;3LM|fqnkc zUCkJ2KKvlH^(pgp4y z5#M^_qbp7moOiLy=lH5cmGWDiOORX$Jgfun*MS%5z_)c^L%fCl7kX7@aB4G1l$Pk+#;nZrKjdQ`Gw4LLS?C$^cmw{ zZBo}(!c6-;wK%|2bcw_Yp>%=XYD9iR#?R2n2KX-3-k`1w@d+6%UNwL;@rVl9HV&Nz zQP6d6^TXtw98?=Y8u=5+K4AQYb&oLD#|c5tQCPrN0$ZO4*P`BS7v852HCpu;`HNW2;mZWRuF<$equ-(n|VY* z=Al65$ha4tfVaV;sIY(JY$vv#Jh6SkRB>Up-}-K;f&3;jK-}@2kksDM%yLHL&3QCq z(IY9oExUbQ%4cqF6(D*iK~uU*+->`EC75XRjbJ!qjWm6^;#JU%jNd9&iO|6+_qxXv z4z#rJ`|NI{EIj;*6xC*fl?vKG#)GQac$E+-4o}xZ3;k~YcFsNB39VfkR?5p z#MB2f`_N^&I>KfN{oD+_AfT=*Q|-rAhowTG^jWT8P)>hT+|o@%AAofh*OJ~Vz+Jvc z)@M0zC-J#f(Se+kETbVC=5E*sU;wEI$St zv9f~LWgaeheI5y6wzKrmyzD^qV-#K$sHvrgX?JoLSIGKAaeLTKhe}#V3@7Xu>TfOv z8-WV+!aol(Bs@Y?(;X`GJ7MI6PmLuOyVsNwcGcxdn7dSa!c8f!p2wrFKV1!@M zO=y{s5(W?4TAszAf1&+GTl+t!N3XG9N8%gVulb+Mn7)x$*xlg|$%9PQvBI=|qoQ_e zC6idZp^Xvf7nCsm9}~>KA*23pJkmVGo2AEr`Cv3Le0SH;l&hv7j$hz?bO`L+Kk}zC z+qM`u(TNlYf3JNOlcRXW4Xdt!-tt5&m<>hM@*odKv^T6L6|T4!xtfV zu{H_fZc=SlNPPlSf-Y-|&~kY%(e*QmfmBjH)$@t*BFyqB#`Xdj=U|@YkH?i1B7bci zyi}PlZvWO4uO!rIh6Z@fGgHFuN_b=qfU@mJl;EcbSptcFRG}epsT0FFw+ebjkn{{8 zB61G}sStv2OLYCL2A9gQQsEfIkmzN#D;}4Y;$*dg>viJ!tc`PDk{ZTV<;sKREATl37Z+P*R$pssiM+zTg9Fco4&Tbzug7FQC2Z@2zTjZtqQ;=i@T?5no z?Ss#YXb2@j)hbKONj|KoT~a7&?uyzKg^vO;J>lcfK>ahKw!vLHZ+U_G-SXzQezx)5 zEGs_hpk`TN0t?WX8pY4+$*F+#mk+#bAtQtg28jxQjSO%L9^yZlb^RGxst-y($HjD4r2pwMEe66WT6)#l7U;q>*9k zl^YKHrH?7ZyO*sXSmJ~859vDTOio|0TO?1Y?w9_PPL)jjBe`3F4Bbn{sU)fc5kWWc zWrgZ;_YyHM?J={oJtX>6bKdN_z+8Wt<_sz8;3kO!%|JHA_}fs7(8m_uD&zV6g3+t<5<3W7uEyR)P`6@v?#MYxO!UI{ zV0!rjxBAPi$@U3Icftl?cmGPUyL$$T{Hvsm0xU5_uBaj#p`q&70J&Zh&3$aVT|doG zlgt7R@WrljMmfgJljeu?Z>!XrSz<0s*S+)+s)d=8DX*{3FT)_!bujoP$BH4`=>l;;-NL9&>4Z$Imzd>bL$~ZVr&^C^$Cy#l|o4@YJ8T z@t_C^966lR&%EJ5-z71}abP!BLMRI2dDq5+CyR3@fBQ9-_G_%1a}e$i$FD5i>~0gK zRl-3v;nPy($mbA_)ENGrnlHpFjW|02WgjG7;d@H{LT8lHOD5iD)k233yG3>A@7B|y z!Tlp={9!-#XrO-7(oC`r5kaAB^-D<7Nq7~RCO69;sO z#ATm>d^j89a@i`fOuS7WPM7z7^okDhNYKLs(au2aV}*q!#Ej?f$5$3g z#;jN*KNqeZTalj!hzI(GH}%{2dDg}+vI4cABN`o|TOm}Km#~8KnY6IPUn)iwFjx;9 z8P58c;;h1Z^8)clw1^kq@SI}K(SyTZ#dUUtd6*y~*+GY!F(I0S57yp^?SAvCU)0CQ6pJ8v`3VDkIo`d0FJc2 z;#l@YBrkvITR4c5Y%V98R9olYmTu?7;?^%{==aDSrXV82pUC^`M26ixM26?TO=Qq> zOX8P|C{D7fDcC5W{%YDv%#}tco)r0sqU4jN2?;tTJ`N>+#PS8GJekWeDHOa58{D&1`_n*pvTG*ajM zUBg)>+z&=b5VaQ?T|8nT53)v0p{%+`TUwT<~JMEh77-lK^&L3}D5jNXMKmqSQ}Z^ALS$AW`z z5bHvgldOO8g)Dqe@gi@9@&+7i!UBPeH;+F$+sQc2W$os7SK|6_BqQdqu>>1JxJ)km zK7d>N$oE)-N&as4GCAM?Cx}d>J`2B4ei4?9=ece7{A(pAy}?%dY-PM~Sz4Zw)~xxJ z!WO2_He*%#*=j838S80jN=R|T1q6t6TUq*5%T}pH%wC8}%W(O*!bTc=-^TF9EEKcm z{xo~IvR&(r+(V;!ZMDw7?Z_S8u6p!?j-8sOZ0xiT-y2{o3puc!wx2FbM|a!rXcJ3m zO-bp)LYQ($AGe*)$dN|XzNASY%eaoG#5oeo+>qKA7o4FZi_<~!=ybPT3>Cz(!TbqQvhFD<)Pq717t#nFU!drtvrYRk{7NMx^QM2!|yIIp_MKuLYu;yULf# zzESOAe|$c@_{ZFPIi$a0DtBiGM_c0ax$c9xf3yhb_LieCZXdJNKib0OJ@X--EjDqK z#Qi~9?MyYSO?GE-US z;=ph##~QKKzTGZLb}qgtw3Z%pM;?%Ipqqa+LmOrl#Sy|vCixiR6L(x;rG7CVy7!Cd zpR!sRE{>_cW6a-RV!Le}qvUC&Rk6AkMf&Lh)kvuH#my$1Y{F|zcm>cOHNu@A%BXCc zPxnGbC8#b@#vl$m<74;n5q2mmuJ=U|xt6TeU<)7ixFc1>lRLFHOVK<6* zHPlcvsKJ(ah#7J@6dN|q2-J!M!mKs%nrp5JY<%A{WK&`apD7)Fa1FUq?I+ROSd51s z*L1`*Yy2erJlME5{ak1)PCw@xckwLqIn8e35xr!~C%WS}hI}7GG=hThfQJ3Msd81KN)A()U~b7|Sgb_J*G83}5Ni&?#sl?9|GmPLb?4Ui*=t z`)MW49+s&*M+Dts+2$>YI;H2ciI;d%a+$(cVh3cY>s=954$w)0 zyDii>xG5j9!(@Epg?)_ zKz;$b2!18hw{Tuzq3lYy+wOn_cpGft)!lZheuL{Lc@xzL--K)tHz)B%E_tvOODu<{ zAP=m$g(-33f`DoXfSzQ1ek#onHdTZZ;SS+JlW@i<_tWK8ME~7AegzSrt}T~bdFJra z-UI(6)=-fhM?*uTtU`T*3V3j#KiVZ`U)+(Pn>&W`)Dv&!;cc6x+=f#i6I0_zS8}d@I3q(e{@tK z%L3?NX!LJg1I=|6hltP!mYzNT#>(0cg}KfCX)<|5eA+oSUg)?&dA3$sKQpf9gBfOA z&NE2Mv-vP}DUUa1trv8L&QgeMc^GH49MrdyF}Oab^y~#cN1moF+(JI8FtL^z9s)# z<>oZQZryddn?Jt3FTQ&Kd0e~aUU$$~hn*L>F?IE$KGnuU`aRzt_kM2N&kOCzlXgK$ zDoQZ%E*ue@{OSgUlgEDrPJX*z1;upG&m`za1jTaV_KI{{6ZewvNYN~z)DbLZV)ZJM zX*!b|C6kGgFQ1z9rz`cRG4g37pTdXOeb_>ONMBB3%?zX!94_8wRHk1Ci{-*4vZ5Aj zmL6#7&-CDqEFm3SpY{1r(c@6c0A0!_*Q7uLQbGb zG3CTrP>k@N0?|YNDjh6`{CH6eSWn8lDaH*{EE}kpb)uSu8`rDvmg@2wEG?p8NP!!>C)B365TFjqt>A`+Q~2v1ICRv)6&B_PiD_j0ZI=XPt>KmScEu&7tfiw`@# z+G0`t+dY3{C*M5V?3AOd`{);%_}{CM%nw>)n%Ot^Wc1B-=`J)Y zpO|3ID@XLhI$a;aL7nt^MLeI2!#e}0wWZk!J1M){tNZI1!i?bzk>%GgZd{Blv1N4{ zOQ+HMh>|C<*kaGwIA=QVYUlScBFiC3IV!h#_};Eh%z2FQ!`%_l1L+R`#N9~OI6+3f zT3<>%gv>cq9rNayosDpl>S;wT%BzCz@xR`f+2i7%!rj*If7jh-!w*z<3;lj;KR-t$ z|8Mv6mH!9(IY;_=x$fT+rGKxiqkr8++_#hG_$gC4_wH=`#68e);))D@XntRq@%?i| zvoyby1n=m8RuDuc10B0E-nlZQ_I)wZcRh@gV~d2#(f<~;Uu_IU-3Nhk_84*z1CLxWoh}e_ z^{7~8tYFoU!BbmKq)VkP+DHKZI`C4DF^F2=^KF+g41&*?4X{UuKL3Qp%dnYUBNK?l zH!)cIG0ufp-1Tha0UDY2HI2MziXKMuG8)M3CaDJE1M=&dSBZ*_=9T_;n|Bh;lUk%~ zAlQVH_FYH?Xx~l)B}mWq`K}dD$eBJ-<0rN<{y7lrq(uSNNWs|2vJ^$d#b)>GJvy<3 z&oIet;|k~ydSsll>r~Bu{IMIA-R`R`GcV3+!AtUH%&=c`M^+Ip5Ytyyjcn`SZML?< z)=O$^buZ2eJs^o@+dVtrGlx(qM}+JjL$5IUBeW4Hyq{P z+?FMB;}3~s8dR$ywe7X4gtEO(Tqk2it)I5~3(sc_C?~K2(JpAMh$>pNt2N#{@&;7x zCGL4>q>#V6`KicY)sHGJ8K^akN*+gF<>yL@$n{jhy?7`~+0hexegdYTbQ$fxyu1Rf zHlec3pC<~iHUk}uNWbajk=J8{BrsVU*r1nR5GEbkrga#?IR`=Sk z)NW6#2)jf6xIWZ4le$SQu#VXseWVcnLsx^;Ks-|TC@*S9NJ3^v$UgJ)TzT1LzBI{8 z9(*7eT~*jlU}f~nN<7Ars0JEL+slhOwIZAx?2hDt)e6)?(il5CTVi6y0M0O8(P&Icf->{(?nnWXf;4}0{(T+e2 zOP8^+5h_j1*jTD(n1B;# zq$}wESwL;6n+YzKT-5!Ou%*Z z#v#UoMD<|#BRfn^^zLNN=qRD!AbJCzbq7xYF2Uj0rMr#!0n*hq6`WKFI+URj#|P%g zk+w;)w?M4~kxpa74O+*jZJ8v6M{dpa#l2YNtlc<7k16z}0qY9Y2?_C+*G<2p%O?b@ z+>w`{fzelAepSfb_Fp_IHu0KpHECubJlBbKOAOfWM!rgi9$v)Pyy9kV(FM8E=B-d)i$iqD9PHTIfzVPmU+NRt- z`Q7E6(su9g-5U?t!tYuS>>m>ko(^}4UgkXT5t|G51f^CC6WlEQmZWMOtmXB) zqLkl54yuq)e?3xguBO!RI+5L znt#W%`=7KJXLr9?jgxp`6X?mTqDKbn51XG&)TZi#x|a=tZjw93${47$0ob6c6rBpl|D zj=NV?{+-0XQ9vT;oH|}|ay0)CN*{=J!^F$}mhbqUvgE;*OF#3w%RZx5X7^uSZr#sA z^Fe=fzx0do$o10JZEBXEFSwRYl%5Gh=Q=aaKgbZyN(87CB@U*<#7{)4Bt2XieFIA> znS_HeJ(nUk6fjrSL>O;HS{!KmlJDeO#MO1z`oeeR+U8eP#Mmggq9A5-uN`BLU6sqt zqVC9C=_0J++kV1B>=^%jvO$VPEpK?Wi;wso;_M(Ui*&EMlJiL$?d?~7)$ThSDE+AA zeNCbZsMApQx=DrSG31atobJj!B7Wcn9o`gcL{V4-3!Q<*>e@rbYwYh}VWHZ8s}%hu zb(jjS(MgLH-rmq@3ZLxY9b*v>XDee7yO0bP;48$F7dEObZ;9UP=!vquesckGQl8=9 zCFTD=v4(!Ch+X81T}CCw6~qR)*G{y@Z#x`*4U5T^hLvKlwwI$&#nQLo#d#g9g()BtW)h|Ft z?MD;Fvsa$q=NaiV@dr4f*h)sOpchU4;pdV0WoV*I9`qc~)nPKt)6sg0*Ax3ed9j55Qa`Jv{zyOHDB;U^ zmj0U~BbREW>Ao35!a~HbT-Nv4^41_yu-pKyY(C9&2GYvU-|AE7d4J+mj zyX1Wr@9jRTKia_?S4;7V%;#_SsnO$YzvHW5=`$_APl)4u$zJXN4`A2LF?jC!qY#OQ zBa+(=wO>i)H?|}aD~Mv0F>uhA1}j)R)X0v1{DNQk1dKkJ${U|@0*lY1<#V3?{9XO| zU*&v$Nqu%Kkf5mJkKd=c6F-&|js}7fWjyQo$9HWx8^kyb;wWelnaQg8t7|IaGo7Ll z6fsy?V~e#4s|se59_!0Jd>6wsFJk_`jGA^>ZAm$z&O?NAXpIZ)_O`q$2dB0ZAQ~i* zYtv_=!b#3gl+j15<>1)z4M%!L|Bp1LuIoqPq?Pa><6{j_%zFjOpWG$MlFQMb$EMuj zT!-FB3`F-wa58d73j6mf@I$ExhnK>;=|A}(^36C~DzohM~)Q6_c6$)jT#Hbtr0 zrfO+?cd-Z_W89IC;3O4{TWL$`2$wXwUPTxOhk?KKPEG_cJKxWj_)NR;I$JrTudW(X z(mS4>(j>d%$xc~EmRm|Ux!XR@CMl?tbI+YmPM~acMlI$4R!%*r6W_JOW3xSUgfI2k zugUIosyVVB|2j4Dn>CUW*DUH$VyjuAbY5qwo=>81O7|S{zocs-o!Z}*m$JtgHfr0< zV_d|uKEWq~XXuDie7ee!%a}YR{|?F8bUg14UqGlxR?Nx=(2XG07jZg;Kyqi*4|g?w zxLTEE?EHg<+kouTdcZ{yBFV;gu`J>8N6w>N0nJC>R|aMxi(s+=J#RDiR|;2TIUsAB zlCDwR@=5Rd%)YzzON7q%MVk?RI!jU9y;KHE2|W6~Krq#kedl8F>|xx<$sz(|Yv(Hc z7~O238IVA>0FBW+;<1{Wd2knE9&%jLuMX)G}%CKlr_OVRGEUGx6LbEdri0(R;fhM?;l;XN_;TD4!Hz+HN zv50im;esb)k3O&!pMfBXCvWGpg z`ST=uom1~?61|qvHe>0JO?KjLOF9)P8n51?O6Ty`^E`2)%lfpO z!fq>q&uW5`3dsNyGnyr8@CBmcKP3Ex!@X1;)(UrIr|KyUnL+pJRZ^aN@rGPo&UYx9 zkC1nN^9h17MiW)7((W;%4OIbbfEKyT`mIXw26v>EunKcGOXx*v)$J6k@Mzw|WGzK1 zQkPX3$zL7#P063->k-Ls%t*fM8D)_>g`HrJlutuZ$l49} zLbyd40z_BK2eKAY^8mAE%U_WrIsQQ&z60B!Dy(HL`3_|;sO8?|Pe$XXT8d zzlkC#Q}s#T7&51vHW!P1LfdM-r!oMQsU$|n0zEL-1J@jG87%bl2+yY)kh`-q{ zjMf(2&(iNgqm;CqM}Kr~Zl%~nZDC!K*r=uDS4OJF-rY`Pe@l?ys)oHBfz>8#ny=pj z=DXK~B|uq>uV?un@r%rNSxU)!3F)Gn;@*Sd&I2hthjPR37lhwJg8MG9Qtgu11BeZT z0TmmE?@m2?jgR%Sd)=<+(@3X9#+&Jn)y7Nd=NjXg^mD*?GW}d-{LXydZ2VF`89y=M z4^6ntgo`y~0r#$^bqx#JvoH68E}SPZv8Q3Q^F$+Mz)yKF;29V94K5qb$3{ z2?=#`Z)#UX?Kty~DxH!=g*Utt9n;neYNMS2bDd4*0 zJzDD#+LzU&4<0}*i|7I6VM(2|Mnf^vPa#$9!NMB4tU4IoTN!;R#ebkovClB3-6et@ z3%J)?J`mYT*$`Gn-xuS+n(!fvBnQC=+{-?t3gJU^*y+M&P(w&Nq`gV<&*N8sxf*(d zVXP$<)bfn7%g-}Uww8eWB#s%inM+%~u zIl61D+O-Ig59I6>%*opPDKeBrZV7x2oOu(!AwZQMKICz?okB2*hC=BZY5U7SoKe#v z-Jd+?$@AZJcyU5b8ix<%aRNf}F|n1(K_Lvx3DOc%eEi?yzyn z5F=CUMvIftS5l0|h&(`Ks$3+(Gn-KOhNUw8DDE57)ahR9#LYjH>cq0#$Sz~F$#WYt z2|ja?cKlJ4e#vkr(}*?vhB7FuppV6ukR1Cg#uyRhFkbu+0Wd`LMgJcCf&xvyH(+n+ zV}f=ez{=Wfa5N8dGqwOH9v70#8w$DcV|Sj4 zQ0*w@&3*2!+mCji>+taW1YMSNFS?JajcLz6TO^Q5ZopYBcCiI?y~iK@h`N-NZk#{P zZ#^h@Es}aNS_3P^lHpY*5{j`e`ovxB*v*Uk-0io2huk;u>|3w1zsM#n2T9y?ovmCX zT6g+O8`!(j2aV*DEQN}U+%e2iXNvym%j`7G{&V5SDgt_=R_y9dA{h1I&(?t-O921@~; zj0+wxvB8@{IybbhXf9S1wh~$AeArKUl9$R!<(^oJ=wa5OnmSY&i8<0VwGB4`$Mh(o z4)%i#ec{dpY77n`fgcUBaKXyx%i_Gy)6yiJ1_{sQ4BYT{NHjz|3T+dXUyjKvCmAYg z4|4l?p!OLKm)p1<3TQuxQ7;NxFM|wg_hMnNfg%4uO_o2vkMhmiK4L%s8R$(P=Qje@ zFN4-+xF5T`^xXw0=;p!p-H}^G4MnqO7(PsL6O(vN4QRy%zm6{?-qC`|#Nl*I)bY*& zy5krUf8uu!?MVFPkm|Kn=cICsWpTbLrm4toI|)T4k%8r z*_4Bb|4yUh5^6{n%@FG?VVgTeH-%jRw{+3NhG(|orfmkhMauugr4k=|V1aSR_s&x- z`^S8mkwY{59Gj$~1+uoNUXv$A)N0U_xbN#wDg+2K+>sSc&2dYg`jC0O_GKFA2}D1y zh#o=>ewC<6eh)qZ@yFCepl%%zbM2LII(2>>!Jn;MEQrMYLY0(OT!G^)_quD7t=zF2 z5wF7Bb0${~c!JS`YL)YPD-ulPHS&$@4$Y(T&(Mu>&x%KC#-#+R}FDT&L*Oq#aSxbvN)80_A29pBf~qMkc@n7e-HKJ zCiN`y+STW|>V%tDjR4!wL2e4!1Kn|?F5(~Z8J)E33^=+fjDA-nAjq5{qLiGH$qJy) z3vdivgrRj+ieTD08N3QPP!{+BHJm3EW0?}jCm4N~oa7|0NJ>oSbQMkEggjHBP~eQ{ z>-3HB_HBa61?+Wi4jsoH5jeb7PT7FI+d&_@y3dooLSN8OQMyK;-xscM@iM8?_mu9eOJUst(d-i`0l4#$-~#SKQsV8w`^iD zg$CBaUhl3jBUG(#h3yE}3}J(5CC z#7SH|m=qE@YQ0t_Gd=&M=cwYuKf0hm{9@7P3k=ntZtQQ+OLQQS2)31 z6P8?ZIwn*Z-4T5nOAU?n%6Q#Zf0hQdz20(S1%?^Ve_2`jZp%klWYO6eAe{s)RYaeb zt5d*rZ%khcrV#_NJ!Q}>?jWBurmrSU`e|engP8LYU0kl}2n~_3;yCtBMtR_ajFEZ| zqbWUXFXUy&_CAMq(bs?4u@~OW5=+p%779awk`+YH62QNhOrbLT6`O+pRAQGx+$xSZ zR>tkFFa|HyARc^xO8?xJr6%1E6S4QD-%PQfIMKqZ4CApsrcqpR7^h=2%OkfY;lLPw zgL*Jl8T~5p3ZK8GArDAx;X|oLV}oMtIC7RrIgEc&hIHmEgL+9Rw7C{NZeJv0C&2Bn zjFe)0b)Lk5cF%&5viB;i6BU!%6)8?%4Yaf6L$Lr1(C}jZ|I*&_4As_(=fwR~4Vks; zJE?u1xwFtZ3X!z*^Ox>j@IeemeTec5p!flsSslRO7*XrTvX2{iev?GvgK>0iEEi+8Hv~=9^j50lqE_RZd{Hz zk*UpV`w8@!_<6#loIo_83W2S47b3KyMG;7($f&spVu?GxI9(C>dACF4wWK#@lzuH4 zTtF?4V1)@ElSd7Mp?I=<= z28#zzPGgBO9fa#GJtfce@DSp@XA1;ox}rZ$3FqPMktj@qvp>O z>M26_(QB2Yth0VKU6vEqAN30$vcPghV0v{Gh!4)wdOPtKGLl3csWsJEo3PV%e0GjX z+hGi)Z}n=*Twm!`*g#BOM1w0Q$2U;)D1WJOH|DHT9^=aq@_77xO+NS1*Zh!c2d|&A{cU!U0nER=_ zWkbta9zpSvgou>r*rN}1k4x{QT#5H6A#vq0_J>S|HI>m%)7Pqev!C9+oz-xN4f}2E z;g$9>eDUYm{kk(js6*5Vy?HAI5xZ}HLs-d=xg|MiZAbG~zKWVS%OxWOdD0c8A!*gUoC6UVNmTc2 zq0-LssKI>6g?GlWeYWdt+9fqi5g}(1yi8J35y_~+ieUMeLQL0hjcJgrZf~Zse)J_( zU7Gue*<3k~6qqF2mod9}K1J_m%Gn>sC47-vX=pMGmsX})t%)P%7FM^Cvoz6HdsgTxny~B`1@EA&ogpNjbBgcr+*(A!K4pp<)1_b&*vFGe!VZmozfd|-TGML zRyGT|o-_RCrSSFb^ijkC!oKO_B))tjeH?`V+C3VKORiV+am%;S2k4=N#<}0?tJOi{ zm#_8J>XE%${q^JHC+Yn*;|9!eyMAws7@opMU-a{pN9d>ZoUf;!Eu=T;=YAf0(N7&5 zQPEF)){*q1&WruO#*bpK?Cu^={D^y}znLGI=zo+6=t!cgG>TsB3;m;xM8BVDqEG(x zKsWwh{T2BCo$=VYCjON_bagYYIecMON~p@9Kx7P#PJOgSh$%EoI|Y_Gx+KF0<1|*l zGG()RPBBb5AH%UbmT7s)gRU%r^NcV4sOV{s6GsIBnbKgjNp?k@1C7M|w`E*2u`ni|ht}B!hYJ7jm zA!65ADS4?!S+i@f-E=xzt^@74qM<8fMJ;y-g_xD!Fd8|w1w_8gHEPq(PUBkrY+M1< zrar1tp`Ug83H+tHe5eKa#>B6(zShiM_my!QW;ZMJzE62SwEJcJnax?mG zWuv6e#kiGk%AeF|^^h{}*>2XhiFlMJ{anYRbg>lw3`!NTplDld##>K-><9NlidPC! zq29#PES7bB4HQ)>!E#CPP4&fq<%hby*%|d+qtau$Qe_r+?VYM(QX%6q{VbJiRq@!H zD>CCXssM~v6&Yb(j>% z(8{g2`Gx9ys`XhV8+M;lr9mkB1@t&Q?qPy=6o>0r|)x=Y2YswFU|P+bEZ2{j;fVxE6r7BO)F|&#LUfUxVE5q>wA}kjC#n3_lf<_vq-KO#|=g@fIDuw8y)?-)V

t)`K+m5Fq{_P~I8Yh1?L>N`TzAtfXod6CYh6hjbbpuK)%8tS3?u zuwFWK!cDtH6=PtPbVbX|Z4B;RpFKRasTmmi?>>yg#DkJ|)lOB67E#4fIauzT}ib5bcJ0Q*iWO-q(Es9Rl zWBzGlKDi*2D6av&NxmCpZBbER%7(Xr_^vlI))uNhrjdB<*7V|;m9yPkIqP=GUT_+f zrVk5lFgGhNbklnUZQQqC(DL;w=hGozWmmwuMz)wZqY}} z0j$wPEK(GqE_B!Zy>D=4e=E_n`rA93!zy&P2wcX_&-!YGtdpg4b|O0`g70nR997c&SE3gb*?avY@^{+sz9et z3d9=<-GS)FCp4?2j1SepedA6c3&ueBVE>lk#yrZSyW$fHvsJy=__37)9hR085CTvQ z6X^qGLerJ2z8jb61j2;Ur@veJK}1D3o-pnv^9+jN{=;i4qC0&PEA=AyGtqE7mm0Fw zGIcW+mJ39OQIJ+qvX3YlF8(XdXmf;PpE9P6Yfn*3ake;F?F4U?vTXib&VgZkqc*)1 ziPbpyhVRvW65^x9B)Z%B+eyR41%&Err+qj2ZtA`_Q!uAW z0b`Sd(9uRzvq;|}cvsuHpb&Sq_u9Ebqq&7*l(LXv9OF@JQpV-EBNLES(Y)5! z*>0ousPNH+;<)Zw8MkC!J$x^k&`UJ^apYGV+$K>8%3dFK5m`32v$Cuk-^}a(JbT{U zh|+%}(=FR-P5!I~%p0(UTCiO_gZoQEg_9Qi22>a`scotkq?V%kXBZ2)3*u34+EDn? zXlxm5B@j)u@q}<6(U-I9t!K4pF&6Wzb+)k`PP$kz3Bau&k!~eRK}}5+h~gu+pBiTh zvcVDcr+PKgHc_Nv#wID{F;6y3EI7(L9%;jDKRV#l2N6*qyjC4&KLVLl4ZKEQj*oFM ztJ%X_*}UJXkS^wP+vvDa7z7F4`>U?@GhGWAiKtF5h(9q4W#R^a)N-vvU^tGAUmK1E z&*5nId?t$P$0?Rw=iz(NWaD&mZ=m+o=!n7!Bxf|+!RXtZn(n&TT%Y)(Vq0PLwjLTb zha3910a|e9RM*|U@Rl5|SiI203`Ajuu0HfPbSqDdc70bt+9X))2SO3UE{NFG# zN#}}5*G3g~*zDhlO}_9~&X)VoI@_(opV7V*y5gEnVj~La*AiM1jD87rN74V*jY0tP z`wPwzXG5RVS>4J|iOL9~s6Od`OccLhM5lW^MHn)8qKX)L6TlhfATbF*_T1Pqcr`RU zMT=rOBg9DEAq}LIBiO+CC(D4%QrI*eI+0H7Nkxgr=~&}8#4-y>>_pB*9eWb{;U73< z*4#`#{^##M82Aqc{)2)4VBkL(_zwpDgMt5G;6E7n|1$>anw#rdnmreLX4QF`>RLjc zrYW;Mv+F#yjk9Le)rRVtJsLapv+6_jQyS`L*WKxvcIK3+jm^_M4RxNGjnnEpH#bjd zno)mSOC5d=TF7U1T??P4*Ubtw*LfOed8T-#)rUN%@Mp0Mn=-9&YTd9Ibq#asLiM#% zhMhI6ncrE%PM@ZLJgR?|DJ^8wJV$DG`s@Lg>GgB#rdh6TX{u|s%xs)Bxt4)X%D$+E6#8MO9dqlk#J=qyDB&nMRw4+E6#^=Fp7Umin1fZmv70*3#G# zYMef^Zl*jm(f+9|)2GwwhWeTHAmsjUi9ntj3m`XLy>ZbOUA0ngi;ld8XGlfKiIRdGf5Yhf9_eI(e3* z)^o{dPqF8WGd#7PQJ&$YW|lLXn(JoIu5X;B-tTOvpX!-WH)R?*%xd(=x4ICRtqobG z47+4j%go7B>qE08(_)K?Tie*&+|m@XG?PZUHPtqi+YFjHbIL4*6BRJ6es)MbP{}&W zX_sDwk3HYzW#yK!S6o%;n=tzP^M;ZC_4qVxN@$9wVagpeRBCi9-y@A_?hPs=lG^jUE{VY#24Fy9jvu>T$c)QuYy17k4 z%hO2Ld@CQDnj3FcsGU>ixuvP@W>ppcRTV-U`uWNUp3oglb=@zjBGS|Tz=VumxcUm+ z4xmchIIH0fPl;ekYOQ+iiKJNgM>8WpNL0P1hGbQc%gyL21w&U|ezj-Hbm4jxe%}O(dY@Vc zdDrO(f)f=eNL3HF*N0|!rZhCon4&p}(7WWP(yP%em^#lhZ=N3O@;1UUd)Oty1k&F} zSgvl}KSFgw)zyB>?ahrKXHH$S8vOdLcE%Jqve3EEOXlbk{7tKCg0jq*YUr3_vZ|tN zf<~Vnqtb$=DGha@kPKlxMija4QP zo^VMrxps6iIhNn9lAgaWN9p%lfyt3Qze(J7!klLK>Wh#3o=sQ~d(;n!yJnpJIRnXL z0Y8DMu&>4^ldJf>SdmN)1wO*JTzhVp8-SyO$z&(t+j*A8+-WlU z$-3bd8C5Nzy2+_v!3Nft>A$>zM_Ziz`ezStUVb`3g&|n>KlBLu2i&sThpf1~oC60aIr-O>StM!d8|3V-|ziiC{GP6FsCmk)*%VectM-mmT7k99ZZrpGGFg%FJc+~3US7Z5a|B`FGrza_ ziL2Efe^zH+e_Pgofd!u9j?S?=a=&x@DMiIYPCX(2sO)~OV+Nmg*6@39l3_IiGGtaqT)aVP(z37rld;RsuI`tw&X7Q7Lm3BzIFXgv@Us8TVND?7Q zgd`D?L`V`LNd!HLiKPDaT`GCC>KD~7(iifV>J!1G4)c16NiGY@2m`Ad~8&#AD~IFNVwrQQX~yY+;uk>VUO!t%S>n@r}>fYrbfU?(sLEG{5EumiXp zn0H(<`6zHT@HJq~@yVozf$TXUnG69tfE_?DyBCEJcizd#LyhgsW zIX{9yRg5*kG#Ok))L-B*<_=&U@KazF(CMN+z`;N-_N&FfmRjw@&{u6$ZCnpz3m1>6N}x|aIGI9jXu4zygCOwI!~ zT~B?1t8W1B`NY4G_5i(;Ne}F(pHVH5Pt^c0z2yI2cYFv=n}ZPA(VqhoG4=nykGC5b?S2NcG zJwHt*_W(P7#=OsD&519t)U0gL~@J;%orz7x6u z7VqXAM%n?a20r=%;{&+*Md$#S_Y(EP#$p$+2H5#B?FLr;o$tV!J@ng&gul-C1vdRN znOp+&z5#s#cL86M@4$V)eLy=lI+iz+$tqwIa0zf9a1F5YE$|Io{Wjz6Wa9A$`qiKH z&Z{iexp~$Ta{D>O{-BUhs$i+XM~0U%Y;om{brp zKsMem3)IV)!zvIZ|Apyu(u?{=gM1T^SKJb zS$>!2ssXNoGFP6@<@D#+ZcD#hmZS3OAbPMLc$9Sf74dtKUo~OlBw&myZ;377Dp-_N z=JJH?jjjT6FIRPuxE9(vkGMaOXH{;Qlsn$_sMXd=VFXdKFGuP;l(_qdTMX}$e3#kA zxC)kLjd6M6_A#!aB@Umfcu}^`RTAzu&eiF(1zm=-!L`p><~ryc?`rK|M_|?@8=;Ma z`UnjWS|w2*7~m=)wa-;VZsbbtV_eP(-NpwgcMUxG45=f3f^)G!*^&_^IDC$l}G*^w!HKW|sRPCyo&^I!r{0-#0k9=>Gd=)Nd zy9$CX5B)-~T&^fr;=Mz>BKJ4P6Pn7k(;nhoB>C|twBaFa31MR-!0##uxjYquc*%DZ z-#Yjfk#E(~m(8w%n_Zq@MqkRfoJPE&Jd;1Ddd?Xj#2q9f>1&Zms`=)av z%@~3fFP|SJ?grv+khqF2sFX<;EjluUF+Qi-RdlPXcyfx^)AUkBvQNpQWFS_zlE+mt zjulO-aokPQWqKTY=eq(^T~)Po!)6BPRz~P^4AH+afObHHJ846JY~-Gg2g&pMW}ZtK z{RQ!?Dwk)8-R~+|u$z# zZ+cPn%j7ewZMOSeYv4qW@>|cZ!*-pEz(}7QC4d-XY2YXFTRw7|oO8`6qZbZLUe;l= zRlBy^%3Qk`h1=oG9k!``W?z=GfbV077jW$XcEWBtY%)e?Fo%SY2YpgrcOQ>)by#gv zUE8e{u3c6N*ls0rt8jVZzF2peexAuB*7HR$2ih2` z@=-kV1JW!fO(q|;Ab&oR5hnTN6SkeOeUi7Lu?nFv_-NQZ&b7}v-*wOmKc{`|P|kAO z6@=NE2Pm$p3C))yV`mciG!057Pm_H35VqYYU985{T)sv6_$K3U1>aWkjVWFINnUFR zdyuel31M{K#R&4znKFL1@NEy@)cAo5*SP{$yQ;>zs>ix&rn$T~no$)F_7Qg!@^xzN zRs5eyl@K;x@@D3;$}~&vQWp>3R`Kl|`Np5%X9QvE2|LE5oj922HP2Mp>Rr_puA0kS z)jn61ZPtL)Km?tPPhUcLr;fui!fwW33neH^dyOzJVM{W?_7S#$Fg0hGY3;0yoUDm1 z%ZOJ%n4hrA%`j>6P{LXX%TAAB##cCNoXcZ-I%C8td{z^8+9}E86iFYH`CIX6C4MMAx;Q_zw~vwxs@~O{)l7O<1lOmJfWCuvLU9dC%|4yOt3ZBz(J>{&SNimkLjh zXMy7-BKs_Ij1~TC`-dh(#xrRZA==(1Xl#bi<;w|>pR5xnoR&;J4$shi)|afO=4?L% z{s(%DQQ1p=8<%4dxojGFZRfm1jAu)Q;6l-s;wQGNQ@HShiz|iP7G*85DfxL7={#pq z2T8}kF~=D+xd=XlJU7l&+(_*~YFeHfn^Ucuh#0HKS|BIXGm09+2gy4^-e;QlGG$~% z@3*AMJ&;qAelE|kO-jEYnL=CgqjMV0P9}fLb5A~eLz*PU=ZFkXk82q|n0{e2Nk2!( zV-I<#cJeO$yppiUP?LV(FA`61`6%J95w3U-SuPS{QZxuhG|L#5W9xn?%Tet$NVjDe z`5`L`E|=OWg+7oxP5NL?4QI=Al(o(}K=mZJNK4}MB>l**n05OH=b{g09BI0s{H0kC zkhum>@~}x4k6ID;p$urR7iCmUyurVeSxVUEje=KQ7-M3ao|C(&@eigl*@Z`d%I<&UTYrM za@Kj$s3WuU@#VGS-yW zCQySThoYYb4JG+L@(TKsNmrWg)mYSgevc+0#TSSx@jXnGL(7xN7M^8ow8S=E_&hw1 zc_EOFFWIYpt0Mk9;?I=)d(fxt$~1xca%{g(zxZ=%h}urN$Hpd;as!8MV|TwPnUAr) zC|l9hIG5M9jYb|xRpm0!`k*Ps*(kF8fHGRgA^*r2pe;*f-Zpt8Wh|1l96WNZW*}+W zA0us(^g|hhP3)1}V%9M;z2dP-#YHTx^`(rr|^xX)?( zQJ;+oDE_>jyk0~v^-@o|?52rK8F^QKVf=m4WfAqVquZKsRWiAQ=bk*wHYVLoCLbv# zZtm6WSD9_dloO_<$)P+4`M3ZSLrQ2ZCZ=DM{OzZhx#W{SA(_17Tk@$RX?bQo`i0sc zgYfH+`dowlqK`gN>kieYGD~E#vkEmHMW@#^F`2xNe1zuAIU1f4wjgUHiUg&Dzcp^<;1%lRxz^^HY6!1dl;4 zbJN%KrQ{|0$l$bOa#)%!y2nv>Ugp}aCToze=Og)5c}_8TiB7ZlmSpl*JZt=PuLH)r zR?iZ#wi`X=If9!i(mX<%N${DBw)CwdT7FyB)V}$z>R-ukHTi9ri@qAZ{w?{z&--VM zmj)fl{$#13<$v;9)rQ`gcll!&S?o->D+x=l9UY5ta(W?W7YS+|mAXnQhQ%CjDO=<1Z-uNKPJ>o}>r z)aeo8dWrj!bpGSgGP=rtOV9kJZJnffB#Qo7^5;*&J|%2@uQ2B^$OnYUv@U-VZ!lpU z8DTQsL{Gheu+0)l&0+8`Q^&@53p*-Z9Uj{fJ>JsO*ci2zY9MXZcaur!O8N8hYb7j5 zSSr6vxwU)zs!SIhDVAtibqjgyA&=|RGzXpbt(UyY)tY1bX`eJdCT9ip$wQz1!AkV! z=%+Qkby`U3Q?&{Ww1a!Sxty!=1J+1;dwyHjh84HaGjpVU!@WDD*FxdR0?TrRED& z{vAh_f0@c-1c;jPC)Q==ILwp-dbNRdkqEe%b5FTygY3VIc;bK8hR39Q(sq~swf*qB zBg-GFh^n9PHF z2z!UH6pk|IR5f1II5yV-t8KQ8eKt_{RUvy>Yc`o{v0gmyGIL*{0cy)!hYHUY+|-cv zHPYTCwN>MZNfZ4~39s|`=H1Mmlzdb9qT|oxrQ>8M{iGK!)$_)B(tb+XKS)|7XPfhe zSN2jwVo}>RmL+_Chq&!qlF6OvHBqC(ZX%x%)}6TWA{{U*%zo8_DE3=>{x!m%ctXu|0xoMXa8Cj5a3A2Q)O6K*x( z%O-r!g!@gHU2c|d!ZS>Gp$W&DaH0vPn{bW^7n$$}CVa?*>rA-SgfE-$JrnLXVYWHH z3^L&vCcMyuV@){Ggu1rq*JfMQqumU6T>1L3SpH(dYW_U6GccuAw&lv8T1RcY^l#7Q zdRakTdd?HZCF9D-SWc+F)O_@Hd{x-H zO<6(e7{%s%dQoa~&detTbo|{{r)GerY5GfJM=C~7sOy)6d+7WJdG&XP8O+Dx1z?yxg`sVl^nU&ZboDkrfV?VQN?qVX?RvtH*JaQ{2#diM*>iI%M zRNLy~)$`-j&i1pD<+;@9{IM!7TYTYPEYG>u^Iz7>$I6g8?Y3+dV|J(WbzbcGOt*Gd zuG*lq52LYm_rUM+!6`MnL{-r75tYc7Y`)|-Nb)$@GPIhb9*!|8$K3bmbH{l7+@JZ{ z5!BBEDalc(pASQaj+&z+i`)}wqhpGG{x9Sk$29%?Og_)k^>csf;<#BqcQMC1X6Wa0 zkuMy#sOMwz?4wDYD;~A8tK2Ke`m_SXAy4*-ycg**do9SyzAw9)4;K53B3^!wFCU!t zE2%;D51s!HW$ytdMX`kqS9SNy^n~3ByDSSVu)qR~5*8M43F;~+E25HA6az_E5ReNf zpd>TuRaq0LtD-1k#*7)2i|93A#*BiB3AxvtuK)XCh&~(V+ET5zg9>jHpw9a{%lu8qhI?C) zAKfItXzv1&Jy$pgxG~-bh@9{a)ylH;Og(g8-g4 zn!t|xv$|mxm4?R@Q$Vpjy5*v4^YO{#hsAh>vaG;9p4)gGP(<1 z8;odSU8=hvMkBg_4lmOiskX@}*L-3d)rHKd&|OjGF_TlNy8-aQ4Xms5J(`4;uw7wv@SHjIQ;~KrVY1xeLslP zIztVn>xWPc8Ivk+7KeKTUegHFl1s@@M? zsnA7(P|DYrqW|bBdDYv#t>iM3=^vy>9sP_KlgO-Y!N=tpMtEHBmHx^bk@}d zsMI%rb#DVy>A{GZK2EGHs~Jxi^kK}ksf8Rz8fU_7<`@Hg|OPkkuH3g9sq@F zoHVO$xPAw0`x#)g?hDuSH+qdxK37>1_d~4#j(ZKPOOD&$82}0~tTt@e0b#=q3>!8m zY}nwiVF!f`J2-6EkS4?GnhdK88+J(8utUOz4Gj!?A5G-Yuwlaj!xA&l(;eox*dGs@ zMmTBsLu?uuwrNz@rqN-Wjttv$RM@7Y!#0fx+jLBmO~*FbbZpqBv0460 zrrS_8Gfd8K{W4nEOamC3=2)Bb?P%b04RD+U?Wx8O<5c1jWS!=? ztzc!c>U3uY+LP4a8HSP4Y;Fs~)-DQLyEts^lE7N3wbU@E6t&JWKvxVtXbQ_5Hx4<; zx{DpYk0bIf3Cp`QEN^*OUPD;kWr4h35QdjKv9Hh$D^;QuCMH)n?gEOay$TyEtcVq1 z5i7$Yt`3X1CM@DwD*|0ZqcsR!L!+sgt}^et&fu$L-gliN^S<8tq%KNbZ*po>;%g{) zgX6w0R^RAk(B+HOH-%MN9aib)uu8WCDpjMQt#Ok3ptmZAO1CztbZc0pwPBUkhE=-F zs-*dn!tDkas2@h3bcX?IRf2oA?sVK!IM=MY+gTbYdyka8E2#2<$*Glz<=>6K!7A|}#+w%%_gnGD%g%R!vaf`d-4a&z)v&U! z1>E~Dl{gdLdDC$l!8%#R&@yFJ%hw&ya!t%C<Y%1uip*h8pPM{CcXwr;QV3OqT%*I-}*1dJrL!RW0ZR~ z;!~{Fu1uXx!*yJlxSFYx>xQOIo@=L0R4L-xsS~3-Y5+!g%XTq9i!Othvjt$%c}^>>lnymY;+3bQF!MjLo1sMtqfOD z7lSud)FoU+dzlF*X{(jsmf5SBMEEN|bi zy!`@sbld)6d9`7A2ju0wja!)mUH2Z!s~zkv59A#bmUnPi-jJ}oxYo!u}@MGK+fxKhG^2Ubc9T%2&d?4=}^oS<}^7zE~#K5@} zKF$cQ(nn#kG2Q?*x(>EZFhH&NWTH{4P9fGAFFb+^{C6 zhBY}Y(1g)2FVKYRNAq1-y{jyodD1+!(3COJu-LHftrEYYQ(xk`-5_*eW%L5qc^y|3 z6V!#SFIRKaMQ(gMansdbUH>~=nRR~RWSzfA6^{UtIReL3F&DR7JOUBeLsxXBI~SmY z*;!$$&JJ63PS~n*!&aRaSalDaeSYBI_HfuT!>vl!S15I{8@U}?AjU@^>k`+c4#}G3 z?mq(I4PoJzg@s=p7Jfxo_?3ZhF2!7B7*y(8VB$&xbd}lo)m9UgI0Q;wJyt2_9 zk9Q)(^6LWOTti177um^3QZpq3A+?K7Z z6%V<^W1x}ggCBN_2jSX`_UlcKStxnLZDtlqZb3VH)Z~=wM=(Y|W`GKnI2T>j<8JI( zil}+gT@i?QDlB3{Sj5v|5zmB0JR26V(TdOy!HB=P#auzDln~kEHoFP{`h31K^PKB; zg3x^*LnGJ_eaTH9)f#JRTn>8Kj9FnGmH(WeC->VJ!ynu5Wi;5~HRuexcjvJ|XA zQ+v%#b9JI%F*09wv%IS>xDE7gxW&BZEohFZ>6>nvH;V=LqbqpJZO*&2fCEoA#BSOAB8D_LOb!57j$+(g(ra5i_P=)_MCkn!3>KFHUWa;zJ0srcnOw{|CA}Zj(n3v$7 ztMo8@`<{88pc1{oHtxA^l6+j!`v9{xSp-jcX?bQEVp>*ijT&Z^NFGoV^wYJaR;daBv**ogRd$oKdhA~rI~kwb__ z$vuTn;!$!Rkn%Y1jg2->cRW4?i;b51fMV}C6p9@wIi=p82&>qUVs4rD5;~mNQIb>c zwMEd!j*^@TZ$2V1cC`4b()$Qu7CX9`xX8PSWyX4cKwOnK6P}EX%@C;Zis7%=al))m;2_Or_72bH-zeLJZdS@aKVoS{v5S5CP z-B~UVU20YyTOHp_RW{Syn~Qm^yjJx5EfT`M$1ydwMjW2;9!Eor-74{nXWrdGoVptQ zQf#ezAxbvO#GZ)%feWvkjo?YCaOEY?CB~i-z*niwbkYX*9guan3LekIKF{=Qhcet@ z7u#9L=jqC8hS-UHAyQFh1#9L@Hx9B64$h zr*4M`FxMMNZbOrkVZwaxWR^KB*9X8-uR8+BKRi7Yz*%05IY;=PgWK8O8RRx1{S$y? zo{Mk)n1b0LTkbuHZ+~oa-2oF5?=$$#Kdwa*z$$MLs@p$a)LHAj3GezR#IFMNI`2wE zo_}KEHUR6rwPZa`blc#)L`5ga9B`vbJpy*|Sc`p8CHoDg0uA%ex=c zN;+g9x8S<$G3xX?ueMX6DAbXv?3TgR{;$G;sfI#c`!|EKTPIwlcHk;8N?r(QR+^X; zp8=%Del~GZlC^EZH!)cN-{V71+~8M%Dx*?cP>+dvpZ{o!!qein=L?@~3wMRdiRn3Z zw7%Dkz>L(-Xx%7$ErrbV7qDTtY{$dM102d`@TglT9!ihNopznk&iMaxl zdeh+W#Hj+5d%FmnCP1Z1ji7b&{D&aJCx2fQp_-}v(LE(DPWK_UKfdH4*73NIr&P`q zNO0%?M{uk_<@333sw=8Aabx%}F zr#A$hPU6M_d3V9%eMI6Wc@CYC_ZI3Y4c?bj=Z)rFV8UjvEnW3y z^9ca9c&DS^NxYS0rEXO|+e&IUdA{Rci~Q~<;_)DBz59vBDB+cAfzrvs44>vVtI{pw z@y@97zoEa;WiqrV?*##{#D|PlbLT7FS~C1ra~I&+aPiJUT9#WZlzMGo zsxB9x+>4`w)9uW-q*6yCEOZBbEo!xxQad6^Z_!hgj#3@{W`N`F(s}R#K5~~)*F=)O z6^eI?@Fl6ZyXrJUl;*9}UJ2f5#NA~9lC$!?Bh(-40_0jCyISPJ067Q+yUMU1cjpJl z`w{=$Ealt)ITrSI6Q9K0Spo71bO+rn<@5k~J!-y(Mb=wn>Aa~kRh7@TdE)N4fO1(3 zuXRWhj=RGHWCB&)E6tV|cWVRW@!(nQbG{3UPBpfdPMN6sczjm}x?5bj12pO@v>x zXzt@*W1kax39M7Q!x00PPuQ#R*>(dj`&o&NX?J%ws4x9Pu4;P_Z0ZL$p36g%8gc zW_$~QrQ-i5M<*DnQ}(2im%3^%MlW38N>#39{z~u;nISm&VyEHc*<*$Ut74Cm{SaR~ z^Kza&6?6zHX@jxZ98qet2>Dl@N^Bt)N4}V${J)?|Vo~T6z04QWhI9pi$mU~KN51k} z7)v=NaO6t_8~2=rRuP>U7aj}u@!BvXjAB{|JOqA zGIZ9((o|@5zL3l(Ih9ngt+b?TQV5>klR$#WQ2mIpC3?Dvnr#6U?&VRx(PTpG_&q>N z!&0%0RJYjVmG%f+Bn>roc_H%dHG$SUpU1%lF-B2iP2TW)9`#qT=I9ZkRmKJ9=JWoW z+w&EmV#SEW=pa*Q-T$eOiVeWTD|)Z#VP4IX=G&Nxy-MY(qDi8D$`gnJY#|PDxLrnW z%%fw!HDXJv0{b}0%b{T#Z3~rY>gj&PSl& zVq<2k6PwPy(KG{Tab6Lrfu@$qD;3+DF1Xs*b3>j~YSV;THJvd#(u~8=V|fBo18osC zsmWR#wUv1*!BYHy!EPQDjrK6j;a~ZJ;tdG{;&7|Zj%hmeecF&#^a6{fj?cux6)B`EK5Htofat$Rvb5}vCiJBYr#DRm7FS!# zRqO_~{acJpeFC%@j76!~-)Zz6hTy0@322kboP*H#&Dl1AfKvCGAEg`b0&#REvPwyZ z?uYm9Dt_WbL%|LzJ}(Sh8Uj@2F?5x$JL|?9YB?GYm%4FwZ(;ko(}HXdMCywaoe$!+ z#4JRbP0RvdIudgi(rTn$v+yd6+yX_8u-dv9H9LW!tH`CrU}t zVkI!|BfWuCG^?k2&?xFQtY6ZiB&Pru%2cMIw&l!I@e-BX?(vNI-&tTDFmgBOHmqAx zR1Zk*kKBd_mb4tN);k%_eOiLL6e+%O9LnHB`H>dm4Zs=P5FlKEhlNGEX512zm z;3TJ^R>g0zMJ^wOqHW(O;!9*=;<#~!7iv~My75AAY&likZS>_X;rEl23yqSmU#Dt>~^H3}V%Sxckg zy~XlIEyzbVmLOPiA6fK5^lYkn1mgE{r`F;w&6BW+jStEzUcC<#pR3MvvJV1>()pVM zA2}UWq|owuA5uF4#X4^ojyh*(_X!JXy#Sr&3?pcZ6@)sGk8XSlWuy2jC8rl_d^Boy zI8yX9U$mc_q)q@D$@$zlbuyojSfKZqZ@yM8u3RhnuBZZSqrcUtIP>#KjWNP|52_-4a!|;(Y$ZU zUA{-T0}!M~I!liiF>1H@fxN~2VC0L6L-pd zprjircDONss0BcEB~>-RZbS_Orka?MfQAuM2TVU=<^Y<3)P520 zmCe2jJ;W%<9`wvNG_hnsde+=@r9Bp=;)H_G< zj71-*T8~HQ)fxKo|DgXcps&l*J7{!+Y`Z_s@Ex4zKe|7BIv4q^R|3aFwJ$-+QsN+| z1Ks!>;HQuxpV`8^wc8KH*g9ZpCvBDB?KJzx)lgDpE<^X%#aTMmNIC#j&W~=qet_-V zyBLw*g7xP}MdRnrReL+lIU8{swk>Wk302oM=wRTW=rsbs)^Gz>g# z0TUnhV1Af3^|$UAFlf4$`@x+O{o{ zK{{s!X}4kLqM~_IRgtMT_;^uKJwZD}zrQHb<5Om3RF`$5<);b?MdDbP#{peTIM}BAV^!J&9 zXZI*x|Jr!nS%Tsz8`rPHd3OleXb&|UH63QC(L{P%O4h;)hG9?(>~@FSY}Uf(hEY?W zTp!Bx;4}{GQVT4(+GesA%1kDExAwLs z*NbjPI&*-RTU2o3g5CRqA1QOxG2-K6NRyKQ0F4>)tI>RS=`BYAfzOlX2l{_pEBf!! z&8h8pXfPHD`tQ;*Y%c|LI+EzWOLwIHHvqnxI1U!ObPtw%9PoOi=tN)+90bf8fVeLw zULLlny9Ic|bzv>5VuZ5@7WEBTdXwOdr4uclmTnR};|p;l_KKzP`5~UUODtf_-ju-m zMml57eq5Q4Zan`0QT0RJj;j6yHNQcM>~9IV@Yn?;>~}b-#gDKV?DBJCEkF_RSr(u{ zk+l}!lG}7C-_+|r86wQR7-FH?UWQ@tRV}NLOEHA<(=_Yucp#3kdb=|k{F`Qva<7T% zEwfh?bK19coQs&4twx@*MY%His|e>XEt6Q-p=;PQIjQ9s6!EPBT-|9738df%C!wFV znG*VKpT%r(qgha{vLX&MN+N#hQMTO#i)Pyl7&Sc%!knP62+^TejW)&3$(Qa9@1yms z*DV=C9WeuFhlJ=`ujL8z06_Z?GoM7ANW^KvVM0VI8N;RkoM@;>CVkil5qZ_XTi|pm7 zh5L0IUf%&3w;*LNLrmST_oD0<0B=NUcd;!_*^q1IBAknkrcBg^e`zOp>=Mx4r8Aaz zpS&zR*vh&~x23EvK(`%9WZk9rrYs+Qm4no2h%G+tf62;Zu$Hk#uN!6fADJpv6epYL7yss`&oW^~CiT zTn*{g1AYK0qO7`HAAb-E{D*tsr4cGuV989S#8D|X=;8li!MO*C1vi+Ec?O%n!A&wT@pyiHaJmBMzBCD(# zT(O@A1^$NxcUdxH!T6L?EA;Y_a0Nb1%SERjEEcRVUGqHfpMwMoR+z5&5#D>3!JbfIrw0JI57ELdT>>W=`wM;t9!q5G4LPh9_j)P5o`MVM9g$xB+L#4bPzH1z(|ly1H^w;h%C13*&Rp0_nq6qZ=R)x3CT?hUp$VVc0IeowIxrGGn*qtA#d=_5 zl>Z!$ity7odX9*2Ar4m*+KGR0pZ^ktHK`3`3qqf@Wu%u;>J+ zoS5mrNLU;MXn$hrfsyfh5+J@ohVlDsy*~rsOhAi}BIjFyti}Bxiczpyk5Q3_Z3c~) zAQ{0dWRZlxVuZj;p~AWC77$0b=914sElW1aW}wl_M>l>>n`WLe0~9i6x*D2XPHnnc zQa&ttEw2sk=SFhY({7;6<^w1wN}Q@bumCFtdeub3{5kW3Dn0!WS&TcyjHVmG{yvI$ z#1it!PdAWo2<@rjZ&)-R7RA*h!-ccPNJ|TFHTXm+fXT}e74K#7d?FPeU;#eFQkfS@ zl$xT~4L4j+Mm|`M8w$JUBTGiaLz1`~M?zgrF(YCE#MbRW?H~+XaVDN#^Nr|>-L4wZJcSFo4|jAhy}3>0iOcm>qOLT zoR-Gvp>O+_5G?>o+CT@OS|epoYECf{Yy7W>fk=@dRw!fbcG1_y+Psh3tY+tln~ju?06`^3jcB4i$GFt7S=k3{)721a}{++pu4p2k0+U%(LwH zRBtE>?deDiN_&X=sR)epa4T*>UL5~O1+_a;w;=PYz<9Y4H&V+|Jx{^92T6Q0Qukmx zd=2o+NRiVmJNjmms6gM0P>~yL26fwEbj$lj#UBn8%RO%a@k*Z-Nvy4*C8K+=_)d9M z`xGPdV9DHlxWP7MW^Rk}JeYDDw^!v$eKiaQ@`a)vx*6Ly|6F4SQWP%)_0VmY?VvIK z3e*6@ z0(?w%FiN0b;B-0H+zN7mSDCpG)K0Inv}HyFI-9FeB02|I3`k@~0m5k9%uaK$8-8P$5@Vv=({PrsToW-*WBA;1+t9QQ{=8j(reVX1T zQ;|O`5udBJJ%W1M$2>BB86m3^J{l80d^o$0(2PdIQjtLx&$46xN7=(eW#@#-UKA?3 z;(wIADpdBKrn2!*EMC?Iy23;JaOLG)AsQj7kCds`B%3<~x$(Ic7(n1`3-AedWQ_$1 z0rWx_1~0_j;KeQ(_Yjj!?}Vwy)1d;#1qFh)zJdbcyyC-*etc4Ykx+&hp)x=u_oC*u zC$hIC=R^P71M++LfQ+B`J~o?AGvc)t;5!BJL&Cs_FmSvD_<};@91HMo63gg+SF z1`d3aV?Dc>V?Dc>gFL%Aa**dpbC72@bC73e9^~n+Y{B_VXCCC~UX49ac<=Q(VI#+N zcIWj_*&5^Z^s6vnva@-o@*{v}-ZjJHm)|ec( z#&~vXOpaS)Ji9d}_XPpFH73WcF`nHTljGJH&u)#$@y5opTVrzE8spimF*$CH@dlS1 z0_t%&ZjJE{Ezm z-r;FZ^v}x0m~(_b3O{G(xHZNbk)8-(S&my{ykiRf3bN%nF2#CdoAZI@${e@Gc*nKi zi=?Y^+#2H@FY2t#y$RQQC&XD{>vG&0Z3l;v*|-uy{QI0C zEK((`+QCG0ey}wrHdmFf5hLb!<|^WaXRaQ~Gge~0=9*`z#>N$_V`-kH z8XIq}d46havbp{Wmc;7ix|=yCwKLC2_02h{L*<-Q|BB3EFek??r~Z|A@QzQ8=cM{q z6*I%n@tjnDg+CrZCdYG9{cDncLTsrjNdoH1BFroxxhffn@6J3Y)xXwd{-Hw#DgQ%f z5iU#4!dFc@eD$mGxASROjwfXLJ5sz>xu5Xmf0}$8%>7&;;?n;@6w2f-WX@NzSGqLE zQ$GE#TGHF)xqDG3{#Ts{ROWcfr~kE-smk$`PyZVMdaIJjkkFZ@eEPfG^Ql3`|BjD# zay)L*|K1wTLq7c<1n_b^PPcDM^DIWCcuunqeDIWF-sE|-a zil=@0IPQ~BWlE0w#Cf0dAfYPtI1RvopUkUC@xV_XCw@}v+7wUx^l{|pY$#us;*p;| z&iwoux(rY8%ugSOe$sVgQatq2$Elx$#-(`br;lSl$+JFnKPBMYPeRjEJonSb!JmX? zrFihCkCQ(M%}w#-Paj8rvP+w zr*WUu2hRT_LqD~%Grn;ED4|s9OXA85lu?x~`1m*i^a4s)h_AX)@NbnrU#AX0Sfuy@ zy}v*gFM@3*s5I4{(D}OfS3sx<+<*AX zv|j{ED^(r;qkfrRuQLOYYbtcAj#EECtk9{(QC{l$E`X+)JU_*)m;T8HN~L(7fj?a* zc^{KW@q|i$hRG{U@rX))rh&>*JeJZw#X#k$*K>eo8K@#9zWR%SDpNBkeYSzR8qdu! zP*v(e$iYsAB35rrN?OpV2C7X-6FSX6b*bk{K{-zsvWXAxFj@H*XzxS#c8u!Eztv?b zU}zUG!V2oZPvX~n(Hw)@GeecILQ3c|=`UCZ1!RRjfjFwgnh;zQKUH!SbLm{x%)jLp zu#_s{y0@st>iTyQQG;Kqgy*UXD^{eTW0LzVOSZiZI8oKdk*ah{CdDIFeVnOE zs5r$lRec<)N~ko&Lsfm8s!FIVHHytRI94^qV^w{etI83iGIcZ|9IQ&HD#e3UeVnXH zs3ygeRec<-N-ni29#FZRhf5Os)GK( z0jq?@rB24Tj}um_!LvTa6IOj3vC6zzDIT%vy!oW|fr7QaonW$2qI4x#cMy?&0I0RYEIMJZRO&Nvn+URVkjd>f@+YLTghzYSqVC ztAy62c-E?q!&V8cPiTZ$*H`Z#ix(2f+3T=jA0>O1(|nc|tNJ`P=_n!8gxbk)bHtAu_o%i9oHZ*=T$QxNWeGd!8lJscQbQ8*pp}+{lgUb+z3Sue)rq9P9(7yN zz%TM2JcGESaMgJSzT%@~{?e~BK50ENa@_eFw>y7x+_)aMJAZR*dhsdAg`mo)&fNJM zulJYX2W6*ypD$}S{^q#xH$FYbs_}E&_#2;*qG*)m#^3l%pS!yHRmEo=jm#Y18;;w3 zzd7#vjoW>{Iqv(7+kL+|g(!;KeZM*G`;FUuzd7#vjR*UFJCC4gc)kR#CFEa11v_)g zZ~WpkProQxj4$!sjkqY_8gv22;R5M01$P8^s1kNNow?;Ver5VT7JN7;`0kzs1!QFu zn1XavzisjB?kR+MTo{aBFWtS$amR1`M(MEq9C!T2Zz`nhj7)ywtHo)hIZjUEHw#df z<4_h~BS3j>2XuR!pI%W=nV-0t|zamR1`e#se=14Z@VHZFHR%RD4G^*QeNjX#{8 zh@4qD?)Z({9lts5_>J2gzd7#sjoTf+Iqvw4KOqd3=eXlH{&a%QyCTOOzwu`zXJw8% ze&f#y(3sG$m30K>>K0V4 z_ZGce$Lmo8sagopm+539SYb}rTA&;uFV&XN<=STvKULLApfsUWhpDG1eWfm;s+p9g zd#=)nBal^@I;$<9m8Mu#YD9ZLR~x8zs+{h=Mkgq{CUqIAP&ex2d_e0{X{yqwO9^dA zoyT(5nY_)aB~4|9+!QWRC1U#fm}Kbd@h8~GY<&!x+h*O88pYk^_8*Q~e+Pg4q>Jf6 zY!K$#%=on4RF2&%PT?_voy50Qh+PSGk2xI;c3gmc82#qs0qt=CwhbKpxYNeajV+^)Rd=Ns)mx#3qXsRH>J4rKGE>~Iqn~k;1XS5hI(nm48Yy+M4oSWrAMqadR20gmjO>PG`ENUD@K7G1_`cJJ|@;!HQ z63_i<2*@f7la~}g|J;&Bked)>RZCX*cL9vsghABjc^rZUTyGo)?|M(?aQ4X5Nebr@ zCP}S2;KjWU&9&D7i}xS8G70rN%>9efADN6)hkBIQW`InG`tbzh{;W9Fw-O>gHd&<| z@b2Jtb6wT}Zw+oY%*s2=>qS5UvZ6!106B`Ul-mKl!!2aQRHY8=0B)bU(%foNs}U#q zGm}@V2JP;v|L*cExDMEszr{`PQl&1Wjjy_?F9G>wbLsNe3{=;$>`AuO*WJXg$XwRD zYzLdMZ8xCgUeTxQ6@pt$?#e!8s|_f* zjeW{KrWT*OQFffG`jov!xnHEGJ>}BE#p7U0?hC%nm78ERZ{0~P414qWv$5hTUTm+XJ1va2ySf25TL~p z7OsgSDrR8$-e0xEOhA!oKt(T9HNlnT^!{$wWyrLoA%_K-8P&Q126pq(oIu9iaRW@V zl%_u?pgLT&eip&8*ejeURLW9Sj-<|?duizyPR6aGUKGu(22BZ1RP4$~;0a&_ya;_! zKZ#A%yGj?t;)5}DNqxfN=~&5CD481QsKLh2+2T_Zl$;PDWOFNtRv*QfhtoYXsPSVB%msF6`_b< zK;3$m?PPF8{N{v8eO1}Wl2PA{Ks5>GM{yxGwo$F$L<2d@Pw_N%ylL0p1Y7HSpybE^ zt1MQ^{uq>Pt6G1G4&g{&{-g66L#{^gvV6QF5G{i5Yd*g2TnTA$^x(-}K z8*n@x4%p&%r~wL3DlFAe-?92Y!QR8aOV*QdtgU*d}W+`PE$=Pu%)K0j__dn{vne!R%U_9>^%CDevcsXBVr z%qdDQz>_BMkb!PtJlY)@_ zj9Bfd)~!+W%y=Q$#NE$ptRJ62dpJ0eGDh#TMz^j7(;)$NN8k!qk1dQpi1H~JCXX*n zaTcdi;)>%7vxIc&T^e?LVF@8eRnDZYCltC%QLe5HdPYw-OJ{x~mya1jCF#Va=$cgO zU50G)bb_6VlbTKUmKw-am5;zy-6HKigK}f;2Fo#Zx>Y)JB-X_`%)`+yY3UYZENq>Y zc=bAnPurvmNaV|^hHh)Fg|K`en<=r$bumyRxqAPSmBYFbY)F zl^wuds={c{yRK|4t?y`ZYwF4tQEDdx4y-FX*MM27R9jcp6JF4rP43{jvV9CF#?;l7 z?J7rZrO6#uSN6RDC3kpTnH)IU#pI5zQ&LURLa4RG%AfL$QHPauCa|XKN~_ABXzyNW z*N4A)IH(1Ga5TNm!5bQ&GWUgV04m@NuxTkx_1KPVe|%D+?2kQ3xw=~*INH{u-IHVlM9KGyh7XbYsOa2vE z>X=!l%u}hq>OQ#sg;-w5m+C(N<8A6B$tp%rnJfxc{a?i(khoWP^=8&dbp34Hd6|K> z|6k#Tf*Zv1qnR&NBVXc*{%@eOC}@=YQ})PL{l_wEZ*kzI%%Ud?rjfrC?Xd_QN}{*% z@Ev&q$vbu`EGQgQ@FLMoBBhQ9svf^1q7z+A;q9c7a{c-5%?104Oqb$CrbLG1_ZWs^ z$<<~jX%`ZVpi;~;Uk!9+j|r&X@6kbUdyFxHNAW;3kfY!gs9kC(5;=f<+7;jP}jJc4R`ZUTMdH2Cf2sfjsRTf^qLMeXVV zNmq((af@0XkJ^}+lkODnT`h`DoiRn7l*{ob_x&KJ5-B!SO*ZB42XqTD(||ENa=0G^ zrnDctG}-VO4cvZ6v5B*RlF9dr05=F~3Q#4pq1XYK`}RSKO`HIf+()kmc(1wJmsXyiseUU0Q!GNdG`L!FbX5_ML#q>vXjjdnyAzEG_((=x!me*UfybP_e z#T2v{_oiCv-%zV>vnNG~Il%vJ@n^k@9;H0MYwkGTya)_g72rrNV5zH=cThVG!%V+c zWlJmszma&KjuendvQsP>d&(g~#ur%+defq(*pf?75^u6Cq3(;J&v!PTvA)F8P|r^7 zjZ_EhR^+9^E{o?N@LV1bZeGKxMbW%30<{jBYw6$1%U9m#7DrWM@DF^GZMYLV#Ts@m zyuxeamsj}ZouDT5f3SnmV=qGoovHsKe2<6-x$=Db=cqK{Kubmw23R~zIM(790zb{- zX~Knh{QoxLR7-!orCkCZcUjye;PK?1JbqpnRo}Ja*yHkaPTK&AJ`LfET-zGx4D;H7i^eBY5?^(y zM*sh1Ryx;lZH)XKc|Tl@)?7Fd`TOwd4j8~c7tMT&iPx9e+9N=>1@H?<=y1Qx9?I_Z zCqUm4vjCV;#PD$o|A8RG-tWuoSmKTbd<0UvIqK_doVVz1!|p|q%!hc3*Q(*DYoO;h zS#KOVv;y!UE_m`$de`5ePoBX#FnBjSADhFHs4}ha%dEZ_HH-47&Wbl9c&@OE$wB zXti%=+p-b%hs0h;F#hdqXPPw~&;()@0Mmn*wSZP3iSch|_aSa8;4MgaiQ%2BjJlkh zDAUt#brb|#YnTLE{ivMnq|m{eF&&PN~3v&gp^jKoFLEs4ZN zrxzgWB@-62Y{qzF48no}GY5jzOW9VODtCrG9gq+hFJ<>)l@9^5FEI;%=|#-hfX+aY zz<4R!pSb%0-+>gHtX|0`8Dbv;dJn0z9AUX7D^GJYRN;&$axCijDXWZD3t6q%;&Y&j zGYvTj^FG&x;#Q}NVQHVV>nRKQCdkBaRV(AkBjKjro1daqS4;OO? z9137LE-plhT=hPB!r-JN{M|Gr(aBf`YI!4a9stRGNGf`;r8#iAsTybjuX9?+vkdTw z+)}GlqowlH-r)3T)_;_oUPsO|;PNDr^E`mJalw^4=P3Z6;^Jch4+8id7e6CKZ?>Gy z7#39Df2m{@xwJRlk+Gy&^@q^Mv;JjW!R-m;G(+8|k(~Ph?1PJ*1a1Rx3@%0yxB=z+4Mx1yX|U*^uWST*Z|6jL-T!B0^lX4&-+use@VO1zRSdJSywY0%dbL zRYgugmvUosEljjJ8d67Py~oMv9OOI+E{`HPrvrE!7q26=xdgyu>USwFb^-Gx5<=%; zE9rHh-vEoCpIK@76aRGxzt!T)ovJgJWldLShcL?9y;=4VI31kRg z8NyEr;cGbU!iV%ccEHMw4hrFecB&$EsDxMZeqRW?pUnEH?r_R!$ceQIazNq=~z>@faXRdsi`M%@hFni)RUCRntBtMSCQcCx2(L8@W5iQ2s~eB`H$U* zNnZ%REQG&1gumM2$!Ajte@h7eVFu_5a}jwbHx zM9yxQ!UcNgLjdw$54hiS-T*KZ7Y7n}0l++5oPv~OdG~u@)&Ocma`|5Q2e{yks+$7f zm801MXi*A4nnobrSAU}TU$frZtav)S8niu-#NmhIVknY0yjgqe@RNWUj|5)pQKD;! z=C#tQ0u;-${-5Nv89Aqy<6$(CkvTh0R}H$WvfiORtjuMgIR{B(-iV9qkVNKzfz0*5 zJb;9KUKKE64Dgr0V=X$;B5D!KH})yWyCs|CmO9bm6%_kBi$<;k-Ojugr-5!&w#Cz= zy9+rxK=TPw^czdUb{*83l>OdjIO?w`dt}glvLyc(yK;@ji z`txxm>%9H~Tvh#uXl=%Yhx4;Fyv}yP*9GRrE_)vCS1-uQnrZf;N?x~{O%WFYe_=LD z&gI!OGOo@x8w3FDicjl!DeEV3RYJJ<&Q@6UG}>@t25su|+SKQ@sSjyWZ?!oY1Hd$+ zjVe9^yoMPz^at1s%d;7lXEQ9sW|(0Uub*?eI^42p-wSik3d3gIwN#qN0+?UjIIpiv z_A3nIX{fFVNSN$b7y*|7x{#O!z=-!A1#};hO!g~`zz+exi`1Gc5S_Ada^;TJ)+?~e z(K#zm!d>iIEseu@l}522K>sb0%t7{Rv%6q53Ow92pC53^fj zGf-s}40k)qi&zeP2=kugVhOEzFKeh*8p{68WOJRx>t^v}nuXSTGQB92+v7iSAF;W` zWe9Z1#ftLUdAt?quRPfS2)&s*)#P%8mU%^8uQTRK@XFSoWuP#R0bNym17fmmHvI~4 zOsM#_*$y_E+h+G>+#;IWW~=kj+%`KvuFryh+hz}9)T$D`&(;2B5UM0Qeuo zZ3W#!8F~I(jI~%Fsg$wua3)E=9R_#^QjBY0>kYpJfTxh|BrJ43lF1zfT{i)KlDN$g z;#v^*CE%S%ShIc9lq^AL|C5+$z{q7k!i*nbFuB) z>uf2OZbXpOn7}m)^|Jn=d#mVymc&PFBd&7`@m@EV`A<{rdsQ@SJ1yFtU9gZx8g`zB zedB7#C|hQdk*{tHWdD#U`q|2sY1TqZsMRA-@s~{7NuZQrxgBh1jTAlKk_02jV(|1< zg_ODwMW7f?q&p3dF@lw&g(!NvrQ%w?P;5Odid#w!KL5DRs1~ytZqBrP7JQm>$T73W zOKvn-TAcvZa@p=r^|z|^g<4feX{r>ExkC1fQ{-$1b|kX-5Ogn+Y_Xi0uEtrZ+niD% zpAOP`a+F15OYW%o5d5hVlSQ*7$UXxpNu;d2T?Xh9Bw2a;JTD`-LR8BKD{r?`bFRFt z2KkLhcBOfHU?RMBnkAQN$*eMvR%b(+pDlfCfVKTzl)eK=Y!Ap>Aq#AO3E9sfiS4yF z1)Qqv)l4fWu>Et8ZYM|D9+120atID={}tIkA|;6w+Y1oKaU`+*2+J9h1$z~;eGN6I z?R-7849VI)Bv4Eu#^@xrAG|8icr~OYv#ov#Y~Kr|J0V36wIq9l?bV z`i2cb4tfyf{XLZPZjeK6MUk70U(A5ZH>cQ{1@GbTjVNkq;emW^ab>1_o+;B=n_u0? z0Lk2na7HEvm_ra!{g5*JOUElSJ^3Qk3cwc;$HDN*%s_VdZvoznl)M(KVv~ESm6-w# z&Kayn6(U8ix1#u7iq_+kH}~<4%-#Frcfj%rJm|_4uEcfiH70{6UGt+GkEjKc(~&RB zwdG(}iX_j1mSpx~nL5C=NHPwdX-2a-fKMWBqB<)RzYbJS0=gS1!gzSpiqXnNQ@SLR zdku<6hZn_~l|qtkr1n|>^5IscpkF9QHkZy!zhFrm{I6D1zfg_r9!NSIp`Cgq$=zejt2RWNVZ=XZVPcFS!l>*(cyG!i=+01u=6shU&(+=ALCK@ zL?k72nV`I?1Kow0T>Dx}Hv=?NN#`ADdC^DxkWqFW5nj7%%e#Zk#e%CU&NSB$*42&g@IvXMnd6$M7GW8N%?7W3i2Y3KTn4 z9hH%{^|}FSi_~t4IyzIpSKu%Q*tIx99h}>ZW?HR4t2!p*R}*<9zRp95*+|X>0Gf5j zjsOBn06Yd@1(I_rfD3!zaA>3?%ey@A<|{y-A{~DR0F`hLMSHkCkP=)`Q+|F)$A%pU zR)wJIj%AmwNNy>B{cur3pgn*SaB&<`o2~#pq@ZrNm<~)m5`=K7@={(%aD|RXK1XDV zmr@8PEoY*@5*F(CE!6uSyxtxJe!Bsz0{RLhSq_ZdVajU04y=Y`GM|wH7Xsb`$=gV> z5b#f2>_U=-fbO7_g#iA+N(9OB8nG_mH5e2JW{P@2r0^;SQ5jcQxaz(SE~=4)*QkKk z;lK<##^V5HK>6`V?j``YCn34_0w~!B zt40K#0B}Em>yX^%0qj+SF#*Ya6TqdoSVZ7s0KennMyli7S zQwBAKS9=h(K@wj5aM6c|OCV)Vz-u@#!;q{kALsQ7t^!-0OSc_PzO>~e6qv|DVt=dq zSR7d@xC+YrJzaH9Q08>d&u1BLg!LDXvRi{}M)9fm9*uMD5`X^LQh66xEm#RpT8cTS zoQ)xT5c@KiSKcKWD6KAlVfUnqZWsc6c(ZdQL|%*}gZUHp1Y{3@EEvq6ME0X3;UqsG zan-XR2`2e(BKuXOB#|?lIvB$ALE6cklnqREbd$gUv??FdL*RRog2j#0=y0x3zP*f9;z zWF)a;O5Tp(DrCnfb^x?v3CI^A1(T9M89h4Euw~ccsPVChjY`|=;Vpi96~sm+(|i>< zGM+91w+oO=nJODkS_M}@neLh9ZvVpDzeaY@L!TVNdxtdPPYvPA zLinX2eD4tc7mH^!4h!K=vRy^>aI9$N@tm8ThFC4JvAWk&lssDZ#tlKVVe_uVT!fHz zGa+wha2443bGrBAU?{$M5H{W~cIIw3c1}7B6}pE!u8Qz*e7sJ=mo|G@!WYZXLktze z6Q`+OSQz2ji1Hq_`824t$(JeK(2$`)^HN?gTWN{a@}n)aEW^kxnVT3>r-}jt%u@BS zmFTt7X>LUM7YbljxI0}bi+fXW)rUA)px&L92~{&rq;{vxL~5$~r`cGL9oiXBUd+~q zy*X`&&&S~dMYpAKwE$Noay1WEE##^mS7mZ_ii&57DO{Duxh~ei$ASzTzz7KGboqzo0Gm99Pu9DW468!0wR%{KmNJ`i0E67H{N8^d{TNKas11Twn&(CPfpuO_tI|{%LB{hR;E_LRnXe%)3LoEULH&xjMDsv z4&@E8^wjJqBx46!vey8XXm9q-J-kj_bc>~x@Nd5fhSnKFXWeQnyejW$b`~(SF5RAn zj)AD*Nbr4Kx(9uK381A&Vpd&RUeNmp@TTP#!#Q9aH_b7msAENk=YZaO zmIsj|Q6v~;c82iNLiis-__IRzY>4?aA$(Vh=O}hx2)|DV|3V0VV2IBrA^c$>{I4PW zm=HdPAhh~NwT)c{W$wQ zsgT>-_D%O??*4!WAZ1=g-?Ojj;Ex16g1C1DH-@o%GT*yo7s z0(4U3#lkA)H+<7wDNsN~`d#f3Z&qN*SMUP~ZYCl!Z}K8xBj2#`6}&saU4WD@wSu1r zbsV4-e3Y}xBFte~75p+utyJ){5I+-e6?}+KOjQN9`R$s?@14ZfJ-dl*di1@s=C-@){k-U15u=yDgpVy-a?g6BPsd+sOY9OF_eIk=rk7ea`1hriA zdJf|9xfYk#4L&hhWoxR*hHP;`b?*M!(cu=fnMkzD_giKiZ0$G2B?vXQLN8mP=J~p1 zmgKf~OD`q&snhwo*;Rakno8&E))xC@>3rSN;wEZ3U$?S!#+A;Raiwj8G{p%r6t|Hb zV$H-eDN6ddo+7SK(i+!#EA&a)9zPg2l>j|%o)|X`RL_}fY@eic_|o~^CuzNDS||sH zKTGQkO(tERr}efdQ@hX8dc%>a-REihgkAB}x@<1mD8D{Yvo|HJJHRDP=#r+S8%;1w zB%3rAytU$T>S0RSPAVm$De2y_6R0O3rrD_U1jMwoo`4{-X=!`@LC!)>rTXa9%6Rdo`)ze>`}oi&!*NMl~|E3lk*XU;~VgVOS(v6Y&I1=a{ zyTp!sg!i^|sYF8FZ?n;r7Y=X2wqv@EY}prXi3(m{?t#h_PBfmhHmuynjQYlOV=+{& zD$l0thzeFWr}gP~QD>5{75#J4Z3o~dd8YcDbZzyMr1YG0OG#-$KDu~Ly1P74QCM~W z^F3E2?8m0{^&F=7&ql42;Ge!reJE_CP(9n#bq1N4|IFFik zOj@UaH(5i+q;0hxW%^igQ!KY9yIG+(tx&gg4Vf$@CQh0_NaMlzn$yF*!u?F6+uG#S zJV}$+Htm~1+q7>6ZPQiFpslMTvhZk|)`f>Dma|7I^0bEkY0a$2^9O8JfTHm{~gC#RTIPIe@iT29Jy>DT4yMsu@oNG#L-eR+kl<|$83W&n<)YmUQ9 zLXI;v(;7nGb0F1Wai02LzV<>vF1A@@yMC#S#1tQl&;l#e#R@IR(?a55NnAA7y67Ss zG&j$CdTyTg^xV8EPtVP(TH?*kbDpk_nbo=K=~{y{8LM->r&s5CPp{6c^7QK5Do?M@ zwVpOuxiQyzw+ye}L42d!`z_Udb03Cbx^LJ8dB9kxq5D>@OS)hYOX$|Qn+7n zeTi$~z#7809WevyX;#D(KTVZ7&Q{FfHm2ipef>TzR~MqhbX=}3KsBc0a&_UUUBGd< zJ*2^!j?ZCcVM^<_d09C4HP8NsR=qV!r_BpfTH}{?V?!NarMobtHNT=en=$|^-GwP_ z0f$1h19VBaFr_Wwc<8>ulP+vwN?XL)(DE_0xbzN-Q`$S+0zFrFV<(s;slua3#rVT{ z2my%mB=(Y&zI3_%5loVS_}HPaYKqi5kQF$_6AwP6zwCY<#4EvPh-ynu**3=ovs<&KNFF9VEOjpx*}COrf^_Hi{lMJg!5C z01hxMrWtKI1NrIZ^OUyfvFsNd3DlQ20Ka$|L6gldDQ%&hj^&I65TD!zmiF)?Acp{v z-rLlmktODXXvuPHCMEMo7T@vgN@2|_Rv}~_OSAWxsunxltrRZC-i1KyRwt6Zmep0& z-7X+x7kGX)5*_q~6T&mhEuX{autAN->C-OI4c^c*~ z7r^dKnl*YV{-Ws0osaeC-3sX4icKI-0eZJ0iW~LL$96bx1MbepQLp>_x0X3UZca6d zL2Z44&_{sU3iYLfgiu>uy{$61#Q^hsxs&S4R8?}STaLk_wl+B^} zB7K0^hfd^gRZVoi%IK~@w^44*2E?Pfr=T}bbbtIW-9KDF$UJ~<)d+L zp`^SaAvYkh8VG7Y$X5XG5TXF$36O_@l&FN;z}W+}3kY|CkWVB24B=vE`<9QP2Kj4~ zTW^Gqp)rCD0ga&@NE;y}hQ1)ZfRw0c3{#*c0vf|okOhE?VNNE7CWs%DTki!Q!=ng2 z0%#1+fjldO#PBxAHXtP`8pEGZzXBSAe08%Bp!tcH&dQXp$GS@x*TK0pTH|l^ST__7 z12nciAjb$Hv7H7o5YUJwfs7MEoV5t#62L@0cvB7P!*a)9l4clLvP}+L9qD414Lf^N z_n|ketlYI@%ON+uPSPM<+hf>z5YX;u56CV+yQ3GSu;lTv-{JfWI9p%6Wo?CwyhXP| zZq7H}R>=Tt1NNpah%E2a*0JI=vDFVwZva2_A~%stH|4Qz);M2LYuP;{g_+>89@q7(Vu)%!ECG@fATt|q}h+QlvW%Pl{;8)#hujGavbjGdhc% z4mUm==5^Mks@FTq<>xx&ug&QEkSTqSd7V#FB`0~E`;fm!bRu2dG*`O9a|!kX+i_X^ zOS1Sw9bXWkrSs7&{()Ki z&5keW>6yiUFN=Rh6~E|&S8SQeo!7`rSCK^d!YZN2C0YDcS^T}O5{XkD$l`}yvqpu# zHH)9j;(wgQFU;cqp2e@8#V;ONmHCP+e)BB;<}CgZS^U?s_@`#^Kg{A!%Hn^X#lJj@ z|3emkZ5H3WUX|a+v-k(Q?p5xn?{<89+E(v>^Wq-uJBnT16?grXrCu+KU&IXF*U>gv z{AOAF@mc)Cv-s1p_@`v?=VtLIX7Ml0;$K$9FUot*W>an&#+o}qUV=u#lHs-ohcuYm zU&-(d<6t`xomLDwKrN7&YWnH*uUcI*#eOaj}H(^?eL~%LuxtaDYdNML3 zCPV3quu58Jh%Sms4xoWyU`lT|P5BrH?F`YGR;xACvflto|CCh=Vfu zY3ozk0?#*3mCDA^H&&>5s+rp+X>Luk1JT?X)*XoEsl#OlM0X&Xr}{{lk?NK{)g6ho z#2SYmA+)M= zs+R7IoN{qY!;=XI3ij3$9o?_5IgnfT!jp}Q89BOd|0TT7fZAJ0?5vy|v7(y@HI=R| zTbYG}Xc$0Q)Iu&x0NTR7@HMtF*DI-8rS~v`X%w=ja&=d4zYPsO>5fp1zBD z0$V$S0QMv1#pht@X*z@DIl6&RHk7&ql!cY2n^=cHHxr)R09l@+OTC%U(}dTE zdb>QQQYyxB=*2*!@-rwdd9grUBJh1-`z(I@EPfxym+`%C7XS1t{)jC8ye$6gEdJ6g z{)#Go?8Yp{#WRvyvG;N$-V2&u_epXJ?dgr?N&)b-N6EM+}rc()bTl?&kA@^0z z0Y8jG?n*+wLFRKHxD=vt7`-nL%!D`|q^A($A=ZLiCBz7b??Ju-QerH81DrDEv;{!; zPKe_`4j1BKh(|&00~&0Cn1cMZ#N6ar2wKGCCfgL*Ho3_MitL}<8XG@srLCLd=Ai3o;gH|188q&VHdw$vq?^yqSPKNbCko``e)&b^hw* z6D(qP6YvcpUjyL{5FuuIzp2hOP_@3c!ZZfGWLq-4ngEVQnYw_9o$5p~Q;x}P=~1}; z@04S3j!roiyB$wtqFtx4DeBT6GOKXI&p9RYCbGSB79qg|ep(YvGawiQaXd&LA^Jhg z0+|Y=L@zuG&RVEzfbe{XT_EoZu^ggsB%2^YTo17b;u0WyJH(?P4*>0-gJ}Gvrrng- zKl8g}_;~_8K;mt{G2T}5{}Tme~0=W2s58DjhX$_2f}3#JwZAPQ6J)JkVQbuXDd_Sr~PMv z7uW({Q&r%R+OB!FoyUTd9u#^&1kAt2dXL`0C6AcFgc0Yj9edCxgdk#3B9h!DXe`Sekw!i zC9?VgP`wf&veN0uK$k$o4KA^pviOc?_Z$0tYE6dBJ6L}%r~W`OEc=b`VDv5V;rVq=658k%bpF{mhJJipZoYz_$4ou z_qn(68!Eqe8_YmV6i^$Dk<@*k5;%nbVY2^O@P)TE1&If9DjG1&(7ZH7s4);Lb0UAs zi|CeTbmc9#59L%0@w)BMJ6LoZ{FiQvjP5FQAI_<`&g*tZudC>``4`>DL(YFvSP!D& z3MMkq`DD(s^syN}^-ea#V;4D7@)DU$Q9dz?`m)PrpRVHNQQk{X;%4F*)Cz*RAJ|FE*t zJxzTq!AFaT97ysafq4-Te;{c%!Q4$VDPih?q#00Cfv6~LbY9|2DB+x-{B{c2k^@&u z5LqOO5@1gvnYtA&8MIfqndGjb&aRKMkBiC-Tc*!#TN2Kvob_$)(gt<$7}%Gn%8;mZ zv1xTl1zyZ~4NhV@NQF%IlRR2y=eFGEKGDv<3uAS-Gm(>)Ss2Tb0XceCQtzVeLYXiB zxGtudjC9FKW>8Lno?K`q17vcDIWwn7XhMctj3W(`%tVKq8f!_gSki>0O-o5q=Y2I8 zY;t1#+>06GF4Lh^MRcU?UTq+uO(wwQtIwS$lrs^}iFN%y!ZO6Q`vu`%8R6pVn4VYI z)sJ-KEPE^LTBk(TE)_XVWty6hQ|A>q?Ing1S;JK1=;0^aQZLIb^)ha$Z{1SZzbTz~ zjvkyZoY6?|8e*@R3~-L^0)LiYb+qo>V41xmm^3ADhW=W+YID3(wVrmJ(<2&c+<|OX^X9I!q;T z%Z_BFreVU6Dd74&mlBzg??`r#x}XW#k<{0Cl=P(pb|m{r;tGGPM|s*0Tu@&=O4{=s zL($xA@$$m+@ywUWltffmQlGxm;qo%BuN;0=U8Y7B$Lsr(dRsO*8cc5w(-Z7Z>YFw= z1GYbD&raBHj>uG4^AIspjQA4Ay-+K z4xGdkOQhrrVk<1~Glre*fHqZI2R8Z}-usv*K7~Kx!_J#v)+Y54iNooND}b^YRE2ex z7pG(TRCuxkz1fz*T6mWOQE}h+@C}31~l&4G}G#U#(gMA2O%WxBS5+X3|GA`kw5O+G0|bT zN`@!3#+_XMciR0@Qm5VC@9ym&`!7~;<9oI1lWljAbo+LYNNZw~OJ=2MaH1$(vUWCa zLI08`kLoP>Sbp7FDl+hbD&dA!Se8t&G5<{C$aepg#+Cm}WAWFOte0$~kx`hw;Nqm7 zdrJ%j)4hqrFtGZr>d&_oE;()p5ASJnPmUXE7I<`+xy+)b_?YUEY53%Evh||he+1CxMC~=BQ*+zRbjng3pK^auKUe7jekc!NxJkL=o`@ zQwVtvh3!BvCW|ON1ETbJeu7^7d`|ctAQo|>+odq65@MeEChv1C>g0lSCeW}cT~)he zTynJ2y?<;IxLl!C-R6>Rc>z|t@I%n1AV0Mq)s$T_7%Aq&{F|? z*24SD)rl)z#3Az`ZLL)@(TI4}L(5TE3aE!}09g(EqfXodYdsLV#hJ-?#@30})QJyV zkj?Y-+B6(nC&uk0X@9i8p;KWS#}pikr)wrp zR6jsB5uVhOn#qw;PX<6AE4+qHgf~g#E{2{3;D_4Y4;!WK)UkEvKEmz-wC-%(i3V55 zOgMn;xn$yKQm3AI9+Ay}dgcv~*MyL|vlHZhKvmuO3hE0WwtJ^qGZ_zUl)9tS=*Vp@ zOe)V%VxjWLb4o=`cUc{+I|n(!`f)G0s%HH-*lFikVcJ%V@ksqxE!j-`n4nLO0P4qT zNu5kqLe~M*XVsG3#AjWgI{;nAI+J2ZYO?*v0)M=vKeIyTrSsJF{4z3U6S8=RO+i(G zO0S~{i6z@gLPlWxG(Zy)OX|6w8=$WRv_NA?J@@k*w9Jw;ak1oSlDK`)djJYA@wdWD z+QO@j$4US#ynQYyA#*B)mzPY$NQo9+OGKIjT6h^k3a=yFLx8Hn>jiZr5Q{i}{Jrpa zT+c+FbumfV)xnCC9jPoj+No&S9q$M&yW%^^&F=}F;a-RaquTF@8iJKv(?CMBy_ZPe z|9hf^)Z4`HspG)yB0%c%?+NW6O*QG?D+i$Up|#h_bs+b}P~!@%Y72*{<%fyd62lmB za|WQT;=_cFn>RpT4V1}zc}GHr&G(?66`p)dZAU_1n1h3vzBWwNG5(*#s`$Yaz z^Qi+bLDzYUpJT=N+aNz;_#>dfPKc3k`y&_L1<`E|V+#=83o!_!pAbJmtOL0cP?z;v zX!PRQGqgt~8qUAOx$HAUJ_0mbk-10#DUs4_l|U5%vCIA~TWWiL#`YCxjZHN8*xPQ7 zq6|oC`zVkjfRsq7?SW7y0kOOP&9-iLzrI+LO-Jalv}Krc5^c+Hf^KG>jgirSi7dOq z2H(5XnDzwQ!lknd&t6$zVz0WS#t6;?X+Nm3J&}pcV?MUQiCP!?*k%*cOpUEsR%~mt zW8)r!iFN+B$fVtx=%p0=n=aFVS&2hFOXQ!wfb3jN$Tb*W45TEW$xU#=OCFdVz8mB@ z*iQoC#~?lj*)7EL5Iq<>I{?wMsMB3tMgnsmCLT=GKKxQ_PbTDYL>2&cuXtf5!yfY) zek9Rois+2~fE5Sw%SA_v`+n+{T!DE4+qWm;Z-|_Mt668@JB~n`4uR^^H z#C~xW{?_`m0Cu>LknxyL&xS;sxcEoX^D#y~0(d;c`B2KU0l`&eN&!R~yHL5M(^*50 z(}MXBX}K~>m(BmVbh$5~OP8)y8_3aPq&%Djo;D`W4Y0*r*CiutwugDP zJW>8H@=Oaq6G-6#| znzhZ70HL|kOrx$(X5~O2at3Gv^E+wS=SW>-V2OCrTJ(GxM>GH=7-L*4ZQQwGLILxFzG?I;*|MYOhN)6YWCz=F}~T9C=t$ zpM$#9suZ4$#;sN(IR;EOZFGC$2T55tQ`dBhN_e{1D>E%6g31~-xu0s)H`33_H7sKP zL#r;L{V?E8Ni>!u#F;_;g|llv-k5vni9!iYh6`L>u6+s>Y`Xo1E$gT;wNsV65Gavz zB~pCr==|E<>N9&!SOMF-W zXt&pj4n(ey*@)nhMEXV2rSYypWF?^S-V1UkkP<14_c^GIKx{E}T&};xtF}ASgUS_{ zx6ryKk#0yj)b=MRegvrP-#~r>QX-|c(@Z6DfY?fxy8ml?r?VYmU!Dm;B0bOBZir$f zptd`Lv(`1sG5G0l!l$?Wx^A+qm52Bvkb2u=J3P^V>l#HRL>Qw_NTfTCB23A zPY2kWEjL5!-IwS1eD_+CDJ@zBN=!=$EIy|W9}Be|m<-$Wx2Gf;N_SPxHq7a^<;mlo zXD0M26I`mG~)He2b<#Ksp@gWtHJIb9B)x~%zePtey zJ_k?{lF>2}kyW53{|~0_cl@vQHT%4om2+`)cT`fz~qS&7rI6 zk*KkX*zDG2tdOl@x!j>1nR1xQC3M>ri86_}727#-mDo;>r0$@?(`{EIT1rwkVfsOU z#8)IbN?4qd{tZrisHta@bp)Ia0Nd#GY!`eR)N0|3furlYx1e4Fv}64qGknV1b*woT zTt&)VIzkyNZWCq>OeC&EKDZ94Pq6SY5G;fE2IOlXc8Sy70#oYUBs7bnY?sI-ols2n zf#k~c0CoPe2WV$|0G~KE7vxLoT6-kfT6^+M%a6f}Z)%926BS2cS)$=CQE8%;cr9@b zn66S8RjViT5kcNA(-=P{jCIgqN6vmI>KuKq|Z5T zEWFNAFXlo|1Q=*vu%D}c3u=RK#=y}hru)$s_W;V|l}0aGsX5S-f!c%0g_oAt!%H^K zs@=Q3(6x6L3O#4G=G)$_Z0zz~{~hY!H&<#s`Y5gg>_b?(2S|NH5M$xTacz1#V7(6< zD|<9@b=6-@+h=i|!+cBdS3py#TwW}c!AON(pT$eGV&&0PQ-D^iS|Bxm*b&aWuUHeU zl6H_&T^KLzc9`!V-;XzGK&0A1HpEPQz(m$NDXD_P38tbZ!!7@_8om+NxxV*}DZ1C` z+ulx!NOIz5#*=hjYUY09X}O6Q1H{`Im=B1+v+Ts>ZeRgQL5ZR z(jKx#?iq~~*D>~wY9t@wpuc)3uJ?G4Cr|AqUzJx=saM*%xBm$%eOpGUJ{z{Ym}zBP zUop{v4!aG&t*4c7eI|J@)XBn`21lPvUJNxK(C2bj#`T+U8=)ToDn^@Y;>lLUcyr0l zC9|Vqz5GcVS;#z_;+R=HRSjm)pP#SL_zVb+f+%4Ao&yA3AX=5j7o~Vp{RK!%Jev%xDPwQCxkqO@MA#m0mNG%uK_8Ms{SpU z=sME~G~Q^aM?bOFu4)vDXw$jJO&_ISted zkw!qQjuXi~LDN+t%|)YaG+ipuq=ZoOUC}ud(1RwGPM2@?65c6l51O1w@aZBVCcQ{l zMf^dNc?8b@^c7xnGKuuq>CWB$(8=|PULzLe{D>C{Olu1Bh zhfW^J#L4eFphCf~H9^wK6Qa`$F{;&NMjsXunMRrvuu`&yOGRV+FGe=sSfchuF`LA1gi9SI|2FTK-Jm z@;B1*CC2w%Izr~X6w~u~>QR_M>=q7FGY#%6Q{i9XJOlEO5MMzQGUtl|!AB5-K~4~2 zJA`Z`-2|k>Soi>})L6=(3xsPybObpBh+a$e|I@`BnEeRXjVBx6%HR${PDP{#kdlD# zgK$2E`kyFD?XCHgc%OQ2n&fg8A(kk;4n?WUv1PDC zAhz>gVna4MZ9Ut=nH+Z@V`s+lFIi1uFD2x1RA&Jx2?#HP^EK2iAbcIf1x#_y2cmKU zZJe_rFPLBn8qIrF{5FP=XAyY@NJ&8WJUFjIy#hq0Iwf(!UC6t&Q*2%q-|_IW%$_&8 z5LVR=D{y(<6RrQVL@7H{pJIFuU>e*?I;Rou)7KOCZ4ePAFTWBLegL8aL>nNy5#n@^ z0f5HymvdNPJXYl5*%$3Q7-JgGMTlPjSe*l2v?77=m@mVxqJ5WpookR^DLRpB_NWZ+~ktP4$R`0W%0*X@nhv#e4h#1!a8kKLo}2{6wKsUs^$%(LR#1k zQt%Ftk^rsm)tJ!~0NTQg%RcH3%W7eXH5ic=b}-^?fLOu_Ww$ULpzg=IZ&fKFG^!rx zbOCgLs+sZhGlcu*G=<>tA|fWeNW_SUAE2%#c$pVDFq7aNi1Q|1aAdW!qh?OQ>fj5zM8FP#;(U|TbIfJ6^J)wfchQrUjg@Ow!@r~tmS7oaruk> zdLO-*E3JSdKFob%`DfmQl^n_>&5SArL|=yRVi8k;*a^|dXo+k)A>9x;3@{B&hH6FV z(i=(oK!^dbj|IZRAT9%$EyP%e*Fm-lF$LlmkZ**T3(V^88Z5%jUCU~*aI_>*hj`nE|=K1;7WN3;ms0zgQpmC=MnlfLE()MkHUTk(5Yvh zvmKZv$c%~AeGjoxY1y$77nI$iV_RK}+000h>&0XWoxfHy7+vznqS^9*4~KtZtv1?Z zZe8y)F9~aWi!p16bS#sNa1)3fBg!pU<}yn82yrDgyrS57a}QRUI8(MVe(wS)Oi4Eu0;MI$VagLCu|e> z^J)3B?miJ4xVBiIZ?UbSPQ8$SBQR?b;%t7($yTRC{mDh3|8`sU*W>NzQ>=&;kfrZo1JI?L~ znPyTT97{eu?q6a)&7AFU?C6Pbi9q*5II4d{2}5EPT}|jtWp$YQ#|EE`0@o1x$MRe1 zcX~8I<+7l!!9?W%fSogAozNBPP@w2ir>aL`uFoP&tN+#K@L}vDEF~mM@5LI(VP_so zelONux#NZn1@Gzb3E%?-FBy)f-ir+tx0iHlD)?9}f>Gv!nBEpFFFdx4`WMp;HQckq zVI#oox$U7~`KmN*g4yYUiEfug*#e!J&!YLF20RE9)9TT0w9Wi!86RAF8$OVfzZ7dG zDL<9`o(vRJl#5n-;hhUTMtHxH*_UEHg(vHQxj=dfoZ}@CYoXQvhmD*FYml%)C*#al zY<4yh^bo*#>{nvC4H;j91Yjzs*JB}PQ@9cD%XPW^qm&N29h;KE`(uqI=Fo|nw)`=T*5SkCE~R!ZORf;z%)e( zQgWqD35{x{O+n!maXQVIJ{BU+HLUdoS$Qi};WF!?InG0ENrPORkYYg7GQ2F-NK#{N zV4}B%QM{sDv}?)D|H;cxh$rQz6j}jKzwsqY=HQt31kBR-z>B#>ju>k zFqLU)(>$A!aV{kh_;Q6-$tqjRYMyNep%XO?^J1;D(l9U9&8Fe7DOl>G6{Ww_nt8Dk zlsMTG*K9~tjOos}4A*SCof@kztu#5-oNkj;&T|W+V)}M33L~#BGtH+q#=`Mf|1_#^sYs4DpII(tvz$Ke8f$XSeOel(OVs{{ zR>^FhTM5@hDEJr<5`Ht&Uc2Z;AJt8AR(Z{$fOp#GgX91*&Upz&sXRCnlO zH(?gw)ajj;(-^8!IFrm>mNNjVpKwOO(Zo)NnhfZ4F7c2}nK6%J{=R67iNv4_wc8L` z2k2_biv=p?S5q4aejL#4zE&Aa9vkOO`<2x@h`u2fWo6}s0`n3P`<2yK1b+dfgsCg5 z=vrzspew81nK(Sg*r*pPt5YTAva*t!KV^VhSsm__m|OCNL;oEZodq2Iu+o5|vIa;&RJ!DwE#IOgE9e@`792OV$ z8itrJ%jnG%3t+cyok(CNAmYoi7QtmeN|;)f2SFVOXjxvFvFov{vXrm#XjvYGcn`pp zLTxMncUV`rgQo_`%%XaItfMz}4RS9f3EGz5vB;`_#KSca}z-2w= zME|84kIPhJkNGOODcbZLu_x8|b8LMIn4+$(&q85V;F+!C}aB z1oSEB0U-SWeS-OODL#1$dOVy_0M4uC{3W}pMT?wYl=#4N8cYYc!jbhEHKKVU&dlT#7e2)dcGyTW#0^H} z=%1I-KhF)2W8m4z>QpctNtoB47uA=~tM$p&x=eh|kLtM25Z}hkapUK-HfF9x#UnMw z@FV*!I`coww3XIAo^s|;=TTh;vmHi5W+D7Z@NITWEkLrtaOs5-I zKkbc-J5%gZNh0TUV?sJ zcy%g-chYQl|AT%Hpo85P(P8~-sC__%yrXmq1S|qf z&ut@YK39b7e~OAEQ{O)$I`v(LkbHI~KB={5eFM2iS#3P))7$8@f%v3@JS%-WD_20? zGw5s`0@+Mi8O2Ua(wYPDaT&#~Oodtj@o@)x#ZMu3D66e!^}ds}KMhXcjD)4d?yYlh;j#(EeZl|5P2NnSPwEl+ycZW zwehTL>0jiVgW>=um86OPCM+D_SQo;Y0LY6L9cwUkw;v!5aI89%RSqByaIBjkS17Bk zXGLiJzY7ZoIH^gn&H}^%jx~zXJVi>B7UWnb(*^Vc!~u@A3{tv@=yLMD@GM&qVx~7p z?P&TSLV~q~Yyo)=uyVIMIUY@cRVSK0#ml`3vMnR`T1M_{l-t9J2uLHDKS{P|8-NGlpdq8^RnZuClC>k|4us;N(M-CBQFX0^m-9mUn;q;f5 zFb--oP*#K9bg}KdE`z=lh+}MVM2CngA(shj44eW{TnBZXa3+~0R_z6-O+ft#^s-+| z&;+wOqKm0LP&j9C=S4jTZ`-FH8E#?P$?%SRmz1fAH zN~jHSWB7I#!0l0orL7&aG*V3r>$u+mq#a-)K~^-~Gsc*J@F>}F+)i3)wX@@?_FW;% zp`i`wmLqzwXa905be@YTv`P|9VGWD4kfG>!s9wT32hPFbw|P+00p{MrBYFt!R;U|= zGsc`{Ia{H&07a)=Y3<651XFnpV_7R3?>HAQHd9GnLWFo*MRaBSIoj_7>5*_+OVPI= zyaFhbk0G?N@r;H(9pDt#LADGxK;0>vF>rLOh&;|(8jcK2{)qTx&P@cb z22#S*x&A{?_W|~`C>gsa5zaC-NtShf|2!g_MNtCmB;V9M*@;uHpl=-I^Y!`h9U0evD+|2k6flZa0=`L>iUhb>3GQV$bEsTA5$*$!(P zKm$6!a>hJGdjxQh92xk*Whi8p!iq$i)J0m`{<8=@BZ9I1PDZ}8p+x3e3 z)#JccSU+vC3H1`00?rRNc(tAO+w;Q*N?T?tcz(E@V7lu*Kdi?znIbQ+PGNI>fprG+ z-UZePx}|>*5ZsCh}aU|>F0E|3nfZ<6Raj-a=3wh%xEeh zJ_(bvk}x@wgsGV%OwA-=YE}}ag;QeLR5mH61U(Vpz)`R8K)IFhG1QyFnFeQwa1O?H zLx4(jj7{w0P-hEgG#sr&y*5#(K-qbWoxQ{QYR)0g@>C#@bzF6h?~z_J>~4w$`P$RT z;cAlR_mRB_D3h;24Ya)N&oMg$qLRUtZb2U6I|);It2`0CkV?ODCA+^D(C4P7DQF+Xaa5Ka#yRoZeMBUu|H zX_3CJj>yf)IRrBV7uvgJ4{#Sf^Tv&BPE2mAth8d%{X~2u!oR1AAKUDbk;zB-e~u7+ z|Cx{C@nx(V!nzWamm$+39TC=@Nj`jgM7W+fl6P_(5pJq3t(@D4K`N~8h#7YYVO%mR zmMgTX1+|Uiu?K}~%fY$V$@5l#Z#=XO>x)*uf!Yg1MR1B!r*Z`>M#K3p5Pi^@km@hc zVu6$dgnPni4%HZl%yUXIn%s}POk!rxCtaS!cRa=kiDrol2}~QTwF?($6rC~FQKAs0 zM$rrENQvUAEK}7m;G?)Xi=T;t&jHaeTG+lp-yb&-O20%#e{`U2nx?WP@WI^vKvxPECdpZbXFhei*{$cjRgLKvBOM%M^C9Qu2npSphmQj^{3Und#h*kM1Xeh2Q#ZQs> zy@AfHrNpteH_-RhnBt;3I*pPxER!dKb_V)Z9MdXPAv2*g9Xj0C13lT!ko#t!a}(3~ z;D!wRL1NAh$pHmp|0s!$sI;qWDxvjd2o4P~oxdSP zkm%=x>4@~=b{WD2V)-d6d?#MM4KSVe*W?lHAkpgosJtR7V*g32@+{&TMWx{$@^^Qj z8*7U{v@xuv8pst|RY&U1ChFVW!I4+jXPXz5cYuPgar)iCaea{rUZQ;9RZKMZ1<9EO z)UG9SW?F72uT8GlUjKcof+GF!TY?b&?aCR*+kIp%j;@6ObxE698LEW%q{&cL!8+dBYi&dpghXZ;84g*w&1oIn}h5=73Vh6PU( z@)ruf0Kvl$4PHhY$d}sYbt0Zd)3 z?*?3TTj|sLkLuRfwNzW(YB1oewAHPj3pm7;L1PbO&D&)%GAbAbXk68Z}h@WMy z338+g9`Gsy9Z*(Yi!*q(Pj3g^5{L|S2B%;lA5&GOl?F3}>+! zjz0u#8RBJ#Yj|`+<{p8*4z1sNHl2Mlt)n4H(~){X(0qLZjvSGQ(*S*I(1M`D1QgDP zo&wNjuE=UL-KfuVoI&1%N+-N9h`d5-N{12>43O%M))FA-4Y3;JI>1ExcI7r}M)OlN z7X_&@QWBg&$UVrc2T~HCb?+sp7l3@}>bzpaNI11HkWTMCg5UN^O%}q*2@i7qTCM%y zZ-jm)Mr0uNMsiFft77)qCN~?L$bOeVrny-ab27mbL_{j47YR(4tctme;6*@6m|8LK zfm#n}#f-RCPhmT(+}Mi-EKgi%#oUbeCcsrp<3w$%b@FWGtaf}`F+ZxyI2I&iAzWTy zi}*_?8(Q@fd8Z$o5!91P_%^m*2UyY02y_$Vd#EpkGYyV@45R*QypSBwM`&gQ`hkfP zpnD5X9-)~L94YnVLg*O)^<$Q=ANyxUrB6M@B_lBM@!Z)#KEtOvAD-4605 zpna;>iKve6Q-31(8LCcW$Fdqz-G5T#5KH!1bw1o#;RMRQ;xn8^KNFMJJT^CWA1Bq&Y9yKU0cP zU;V)%l2xpB#3#!HwJ5jHmYXfm*Gb0&Tc8ClV7N1pj;Q*4s%*-&C7S z+MX=4uchAVkGDALtp|xua`J!c^-gKZ-iLKvt9Zp*T0LdL!)KsEp-63TMYUnr`R z7SF<&a-Rlo^4Fg}fxnZf;QS3VMHNm-9d$+?jtUL1o(c`cF{}~?1a)M^$xXNcK|{$D zo4EsQFQA*b18n=(Bh&)|eWRV8WH>pn-v?@F%6YOcD3Be-jYT0+$|S}9u_jwi(zU(x z3A#&rc^CQ(;mMk;PjIZXmp`F@2Jn8LV4x(S!8^2H0Ppt+h6v|0s6K#tzfUkqcpIQ^ z6P|d#PcTuuU$UJ}1;G1#z4sYWq`my+630oqa&8g_k+&#cZ7-ux7y@W}xdvpp5HjoD z2=X|f?d8B?o2|gSjsZVHd`R%SKuVa}UVer85zzM1)+wRC!Lw^fUV~)zIG16Wic8Lp2y>fQ>gUAGGTh$!3 zHGXRWXgfU`qz7QMa6ZXs_C)jOAXSfCY2l1SX0Rwp;amw^A%qmpGr*%lNa0B6r$R{K zM3@i#DgS$&St*=7q{SCb_yAiorEsJLSpI((PFp8$3#XH#Y~hTgaJtyS>FNTin)5sy z#Z<6M&{U>^^+{JbKrwU)+K7X@LmeudX>bk|&U7d_Bd5jCCFm}^x1paCo)kluptlr5 zn-3Wx0g9n(Rx!v_@O+nyz?_LQy9JR=Qfp;-eIW|70G$fn4stV~Q$ep2Q5`=Oe1YIi zA}>=x*{<0ugf#Rrpcv4GerG1axkTt2dRu~911Vu@L+=lDET9ejA*aONj>8bsi-vx^ zq*xmI2*ig2ZYp@66aD|13TlOVJCmgAG21;zO`;^ULe0Y3BtR?FLm=ygkP7t`$j3rR zg(}}crvPY$>IiZW5ZUF-N`;a}RHJxE?c4c zxq#u$Goe+|lj&6S;Gm(tdzMrU1E^952l~E=OQ2>7XBr%R>%=Cg#{jKT2M79u&v(#! zg(p?&;GnNmsd_uPH4ZQpZD*&V$3Yzf=v1`59l*vzj|FrpdXr0F$lO`ZQ)xj_f6}K@ z(Tfqe5HOK(PDZApQwhdrjJ2{YlD*Kr+(}7ycB_@riMxNFl!XXk9zd_ZTo**ADdk1&r3U1AT9Sj@Gs9^hHPO+QG5nhVtadGbfnFL0WHf zn$AB^9z{W{E5#~T)c(=)%01(Pjv87^#^vjFvU3S^Ins&By(*VmI3X)x&k!=?rbP z+*d<(UUC+!M$+4u$_ME?HrXh*ovo&_QeQ?>)>*}-kf#3OoowO)UEXq{M`x$L(~t&i zFNb!zuv}}6q)AIuGf#%l6}PL3&= zyu`HfUZUDylfB=mkbS*Et7K-P@ofmzmiT_#$&GtJPc>}_HKAde8oTJ6fPx>Zi=~64 zRNF%z1jM-guU9ye3YlMrS`#}-IWAFNKT+P$P76<@EN);5cxR{+vEunVLwesJF%0Yw z;g!g=?9NbkNr|a;loVbY;#?a#*D9D|DRcc_?aLoM`yFZuS#+R!1ADAQfGNcv3` zl&uo`hf_PzGIhWBL{i)f(5;k}PL6InRJDP33BebLi0qSik-*%Gh~L1whTyA!lrXg? zz7y&;KzrglGj=_OYxJTgZY)WWp7=?`9|zo&>o%t(ecWU#-Cdr_GSe*ap#38=U3W6U z?@JIfqf_|Xijn7lU=1 zU&uTj(nqh<>~w-B18Qj*$RZ&mj`bk73L!~(8ssq{BzgY>c@Id5A&vD1sC__niFMfZ z{K)qzX1<1!jOoYh! z7!e>xZrjawwnG_=eoU{k(&=U5DR~UMBjSeu_LUABGCCfkt?4x)eZc#oBM*KbiTvR} z>}e-1%}d7U8Hnaff4#*81g0XwP@OK#?jxER|Rr@yUn}09+&9;FPi&u_m&P;|Jz? zB5TFD0m;YNC=LZwq^A?10cGW5Ex~Ilc!j^SbJ{}|ZVIU<;&ByCduK=2l!RvfJ zJeHM@2gRk*8GVZQ9>C?}WTzzgkfN5WyWG-mb+aY9WJ+>5T6$kU^aFS>6rOru1R`eu>Vf??TiawMUR9Ed3BFuJblcjAP}>mkC3y?MHvuVO zst2BgdK6F(L~rqSJ(lHxhb1ZEfj1C;4R9U^Ii-J=OYTlwFd&^)d%!mgvg?1+Nv&U6nl`TL@0yN$|P&)w4V!y|%VqiR$aPgAGL&b<>G5k4QB2aX) z6R*nRV8(2>11Sm6JobS)2GBhIyun6;a~zhH$2wv}@;DIjlYk=gs1>iuW5RL#0Q9#!jzs57 zK=bG&L&jr1Dxb&Mh|ZK~3bLc|c^v1MAybX4oES@&eBtuA5S;};N&+;G>!5A`G>>yL ziXQV3Q;q>rn#V^$9s!Cj&5m5(eAFDXK3^#zG>(@M-VErQj}|*6Mry)+hW;e@XAu#9 zd67Ux{Ik09;mjIwKPbO49kvbmH{5UYuGE)YHkqQlqpz(9_Sb;Df(gA7)~<>B{evK|T0VecfwPXu(>8xArA zh>Uf*Qfg^LWzK{LVpFsDj%S~HyfottkEJt_9e9#NCYxB(u{{;AI+wY295NpBI)6l4 zUgmWcA%8_i=bns?$Gpy;(Y8-{owdl{n9+GFqvJ8J^H;R(cV1@$@(*Wp>O5hS&sW48 z=5<1`ibh|${Jetv){IVUW68Z9s&Zdlx$Gpw~v7XJSfSR`U z$hXbtY|rR;%Sc|JpZCF`E{nLf#5^=$gg39aS} zN(_bD!g&npHb5VUANjrd0PlFrSH7}Ti%ya|>EsXija?hSM5Jqwt2>4U6O5}R(F~`d zR&w`xwsZj2V@BFi(SzB*uwn0W7^EdC2w{Ohv# z?`82H%;N9O;=f$QkNuU!|GSs=XS{STsXZj$HtBCk>{ozz>Ccn+r4q{(GOr+2FG#G# zV30nUJ;>h?0a6kWE`w9;PlAAGJqWKDHXjncG%t6SC>}(}8;G0_#EP74d2qs~O?#U` zKWLmLY`#NxS)NVWbP_QY;A&lb0>-MboDUMCf8-8pedv@h!Y#q(BXuFrdKMdRWpI=E zxkrfDLgm=aT7l+T_PITC{5pVvJKIfK0#RN{rrSq;O7RcT?fS4Iq~d%RJTkf zWE|C~8uRjW{7Pa0bz|A5>OSAxh(vUFmNy zOTUqyPvz%Be!3n)fCv`kr%KNgp;7X4y8Ik3KfU-#i9mQR*dokd3WTqKxC>;x5Gx=y zgKQAu28db#=?C;>oMCzvxkBbS% z&pvxUBJwR@^xZwbWU|*6xl7X355}C%BvSE^NdmDyoygx>fb0&1T^y{w(4C*IKF;fw zqE{li2`BP@bkmviosaIN>FVpfZawrWM7QYQbY+709EB!VU>2Y|FJ1Vi=*qZ!AbKqT z6Z`I85?!Y|Ub-5U@Zlh5BG(S?2ZS$$_!i^~pw2Rgfry2dgS1cavIU^Y8VLF3pw2IPWqjr_Kfky;-Ex)8SR^04 z(K{NjWi(t$OY?g!#_vkk+AeakWitesGl1AwC*u7qvj(jPlQO!q(7iid!;l57=3~(t zBXP9;ngm`!=)>viT?s8cU;sZc`T3QQlmvzAK%S5E6d>Fb;wq5EqHbc(xH#k{igfF< z`SqvwW=g{KzIj8czFdJ>g~3(n(gl(d$?e0Kc~DF>7)gA05V~3XJQiX*>=%L9+fMu6 z;+TllI(H%csHF66kP#e5IT5Jy7{ngoJ`VCKoF{ z^!t!IK#nH3E1(WK7?Ic0)rTPUPX|emI_Oq}*8=LGO(0JI%mr4{ish2TUxWd1Qq^0P z?RONvNLU$J0NQX@g3X+A$Q({QPp3;|(xD~zG1fnl7@}hMeyR6dA=4kZ?ddwpe@9O4 zQGJihS3s%Uz0&(xWt=iB22vubx2{@4H3Rh4)kz?I0ljtgZpN<1$~7Ljm6SeK;*cfW za>SPcb{8?SOceU2{$)gz1l zOBVn1EdD^(6Un4!au$Dxwsi2(&Z^f*d@maAzmrgKdNe+4vng+xH($q6k{sB z7gXxk5GqYYP)2(H$bm(b6~&bbu%YDG{P2L=%vDK$l_8 z>~NU4*d3FJEct9E@1s60!g+T7`~N@Y-UQ69qRjul_tve`x0l=7?KOKRAt5B`EP#RJ zb_k$AI$?2C(hZ2p(qR`!cVv--bhD@vHo8A0pz2&jmLw}wDkrSS=GIcTi znUR@(9w?KkT?1vO-s99zhJeEj__qrDnKIWAxRfXJ8v>Ph%KbrsT?F1u;4+@NiIhpI zuC}U|)K+KSpqg-a`Waa=D+%01;9qz$M-Vsw$D9V9%%KGC;o}ws<`S5T!l9L?T77hH zA!eA+bv*7u0?+XAc?B*fa5BGP*3ILtCGY`0Zctz|f!%!kN`dziD74TRkNZ~wbNHC7 zz$XY?$;Y`0e2%~#KEAKOR|s6#%7uwMrZm0q56MI(U#%em+Lh~Jeoblm8M1$h$CRdD z=Hqdm>_A*r%kpTl#)~4_SQa10rR?Ij8%m9R9thl%&)%&Dbn)BwsqZ^HcJbRE`Pj{4 z7r#9vSn1-od>bqX4>PV~z|DV*`e@)AD|xK0_wsQQkJUAWoYt>x#C((|uIuJfUGvHDWIp?j zq^>WM=?gqo*U$O*F^|=CbW&H2L&RAgu;};9R4?)06T`ZjfDRZ>`_s%$@n#qmwchlK=ctnGGcZn|vi@KAEq5TT*6_{8yLCY>vyMQ^{9SW?R1YzNF0i z$p4;FnL|sAMDmrCc|2eH!=%hs^50u3Gcn#}GO6S%Df6v-Z9&|*VDK3EA5|Gcw=Oup z@b@+V{)>FYo0Lze`(5%p!(-E$oj^7oo7NkWX`M(+t5Q-2e2baX{d;rhw|kDjVZ?Xx z7z3V#anxTr^>On2BR}zzYDLW5d1N_7MKcx`3eNmPpe zep&uY%Hn@k7XQw&_&sIy+*uZ%jTe~e|7=-&LJ-uSZA>V^Mrek>XpEXs&q4{J=PQoso zm`*L`u`F#d5x{OtmP8G4CdqG77O5eUESc0=vLtGVD@b0?Q>{o-Lu@8=1COa87M1Ev zzB)o*WOTfQ&YK$IBV@muCssquj|-KlAz~H6W${QdsjF!2iu#}kdWfPA^6=;9or0Jg z=gOvZWo0LaRaoAcA}LRj>nl9fN^r*z^E{y+@c7r26^v4!CjIuB+K;N>nWX%dEWcDi zCAbTTshLC)kFCSS4QxyWb=ML|s&-cOP`*0z zD6!co>C}tL{|N%;5jcY<^HBm@_;{ZJTL?VE$JZ2i4}pfMOb$=A`skh{W-XyN^0;RS ze36gs3jBn?)M?NT9`{=UJ$xLez+VY$=i@;IDtfV|bfizr+q4c_PP9X zOZfK`QJ+(uqX`@`J)N4#<4z>7nU8A~IF-Qjd_1kdTBXb&g~zQU@C+Y26xc{$@=V~u zciKjg7Rnn2m7 z76Y8SYMN7M4s4O0IR~kQCpu;vyt1;##|fF#k(B*VO-nH;`&PvTB3)0pYk8`bV7`~{A+(t%`_{7B zo*;j`TB9q=;^R1QTg?o{Dg1B{wf$?&gk#WySTkFx@Ln~e1Z!qHp--uq>&vQJNdBam zo6F)yn~_HF_EIySq_%r%CJw3@F*Dz!!hh$9wv1EQx_Eb~?30xJXie*nk}iIqa^K^r zRzmx+3@0mlo&H20o-FIy$I9YMU8@oVk`&y;<2?1DiqyR|t;e7pF=+gPW`4#KTKQ~Q zZHvf~0N}B*_@osZLz2LWbh>(9P1Cld;y+O79*sc>24;6qI`t1?vQL!N_P(-Ko+*n@ zS_!lHqc|m#`USOZt!b7n$NJw!r7b+wO0Z^T5t`1E{b^Zse=lq1_hs>;&1g3LUju|P zsR(7kwwlQ&sTs}YGAcZrC;G=Yg>60MN@XWe_WqjIcPC|!rQB;&HXmmxr}4&k|FBec zF=cnvWS>)6G2U;W+-rG^@qRlWm+=_meH=MWHhUj2H}b%E{|EwcI`PLN{=1(Nc#`-h zc&vv%N!fP6|9qU?$J8BeOLF2nl^<^IfL zm*LgUO{Z#j>@vIwe6;bTtcG`&26hiMtjf>GOUa=c=8|WQ3h6q%Blzf2;BSv%zT)Gx zJgFuB4xCPohd3|p$^}&5o*|)+ENAeTTyaL63l#?K{H2dWBsQMR4xPx-H^R%Z-CDyWW$7!fjTDA*Ap6uowAV_vv+?q;15K`uCeumQP zQd4GBBwxv!`WDV-e`_fmJS(YtMO=d}RNEP9uv-h_TOT~CGk&5kds3WDUHDC$Z3CLs zWRQy2dYAT`#o`!aZVJGWI!dQWPiC+u@c4JUiX9`?2V_(8$a7$(=|1sBkCQS)mQ6gF zPZ8M6#|;W>C2$WPcPnrgfyemxoC3EJc#e;qJki#;+GmIiv@b=Dh>LQ*4K0=^p3bq$?eC|F1Uncf(p6Hf;7$^}p zG@3IaCgLNxLxHWXE?rBJx2wpf34EXI-{A?&s@N3$@jw1b5b)h@{)18_3ITVM|92{r z{qEmGJ3^snNEQNaOxd)T5b*Ue5wO`0d87*F*CdiQ;`tA;RCrdR^?ZH>!~raz+E=2D zEwsg*wxgU!=`MwfcEhsp8*6;#5wclQ{M8p1!9vXFno;B62TVgt?u^vOJ$pruFY+Nkr~b zNnWEY61kHsE~VdXN<{8UNxq1uT9GDlzmw3lJSK9>oD=?%FIKYsA#(51cx3q>A^ROX zvB>?qq%&p5MS?)}m3SnaV5hl6AS z8zr9HW+IY;PZwVgdf`+Drtw`8wMHn7DrQ`r~eT%u-+Ef*B+9UDc_ zvS-KGBpR|h)R5i$!HrOt%`sF;)J3sq3uU*zG)}7!BJua;Om(X$8-I1$WWE;HnoSKd zv{NDM+F*{S%PV#(6X0EWPCS)?zE;bOj-`AmovW#4)<5?d{G4a7XbwUyA>k07^wsHx zRDJ6kT3zkL+5>6}UU7LmI+k`s%lzThD+`BFG~-h%3(U{TRHjXa`K;xrURIrC@W-XE zN^dNr$rO21HA_3vp>(G8(?_+kO?Re`Xs6O@#m;VDStzzEZ?29bRykE&d0a{ru*I~L zH_jGQNLN>f&U93&OpRrT+s5cJrnC6Q6Q=pH&et7cHKs#vk7&;@fcm&U*3FJ+c6&p* zv0_Er71pZ;M!@*Tj-XK;989;Xj|FNh8zS{JrPC{I^v%{?>zz8=(gENW0KwLoTvxfg z+Obu(C8Z5|p+D_O9}VQ{;e;ethzVevXoD+*`=kP0Ei##t%Lil-E+5g9F+e(uNuD|; z|H?vn?rF_wO_BQF5#|;D!?CkU2WJ%0u9m4OjdkW2$iqjFDK$$K#9*7}My#Xi2o`aIc%OmHGj)3T~GdK?%$%UQ?x#ll1^z95FRfjujRu+zE7vL5g zk~+4a$)*y)ec@=e9fSVxj!c59i{b>Ka7TVNh1K81W2OnM<7jcRMde^UBpDhBfLDzj znm|Oj*5OB|0m`nVV*5qh@Vm65ZdnJgT+)zcg;u+%6Q`=)de+rpF6Mdpgp+evLseN>)mR^?5JqkxMW* zhE(O4Oi;a2rGijdwbj+>H!#mNwt#K^0!7XTid;LU-nip+rOHY@gyM~2A4EOQ*C)&gujrG<)%(BCZ>rZ4%0f)f@|}bTA_C(g5D}f24a_#D>VzXQ`&@tXiiM1 z7X!RN;TjYNTv$lunFRZI>vxg*{1K+-*Uv8VT7s-m@@@r4d;MRxjtu= zFXVj)Dn7Kfn;D>>VR0~?-8qIi^x~k>Oq5M4iVd7)X=2_eot;0rJ#>Zzyr6{4R64q2 zLY|U&5D|)}VUgM?O}6S5U8-GKIK+0lgAXL2^>|3UJ5i-F9h$71SB;rQ!4G%9MYbs@ z-(krvb9iZY3w!a>QYXidg=M3iEQ8$JjbIi>(=>qcdFk2<{Lv)>8HV!eut&T`?P$!$>{W&0j;&6sQhgp*+Wlf!LVQA#E84<9 zyGuEMjf$)qyD6=Xv9Pq(j?bo-cT`k&WLMgL6xVw~XcMMxlwu_t!b$sX2(Jyhz(0-d z3$GhRRnATb<0g~^_IT2)v)L^ZH@->B6h>^wceSpU@gAyhQ4rh--Rr|m`yzrUC`cy8}snm4(udtWA=(Q9Ud`!*onL_4BW%#bk z%vXy2OI2o4D+uxDj!3UwJI9Zm&Q7r%BUfCDF3pD>)#6fJ5F&Y>fgx9M zd}g_?UFS1VS2Pk0k=W%kQ+b`HJf1ugQkiTz>hUw|O_|NnBBiCH1|O~Ue#EC;Yqxii zJAb>cqd;xHB3<-G9}yzHvY*z|zN+6>U&b#&61Bh=h-lc!=fl3yay=a9ezxGNBDaoq zTwRaPM(%=KXKqh!o3AEYI&u%CbDg1iI^DIShd9RmjpM@Do0Fbp7Wgz7R_%;>eU6fu zEgn`j6RjfDKtZ1#@R|8O&1m@_{eUdF*|d3ir_X&t?|w4p7Bsb}^v)tbY3XzB@@^j$ zi9gy;Rh1)Aj(Vc+=0-Xr_vnUQQ99S?qyO|i*H0ItcN+LI(SI?DW}m;rXOH*JP3ZSo z*SDkS^WW;uOmFnnJw9`#&%4XF`|3eTz4lFi3>|*L=hpcOHMiw7-=_8keA{OU4xCmf z_&OlFevhwIzqbO$RR+FH3-)2RQ3t!Gug@(Yd)n9Vx!%|0<`J{HH@5|Zq6R=zrxkI6Z*W%t z)+>C&ZNmFiS}AE?*UfjAA#h=p%GVvMh^E}a+&PbI-aHiA+wL>;FAZkc5YtUQr*Lk$ z&uosn_JmCe%x072bVp|vrG2w~(~7;1@tKc!*F?Vy-YxUBz5I`!NQM!0gD{(|)0MlD zTFx4NsXES%dco@2Awgl>;%DyMx45fhmByXee+8`Hl{=&U=oIUaiyn=?-Q`-MH>LX{ zcOdXC*!=r`fUwpE(w1Xgof19pGD)H$nLWA2?x;62yO8T;J$11Rv?f0v*0M-cZ?0I3 z_9!h7r|Uve!;Vtfg-O{?mYz!IX2f|Y&MIZ514ZcSFXs9o3TYlAbgsap26C1V4a?rK zD;nBk_>}I7atUF1nHHOrJHPInNsxK?A-kC_P)D^ML6L7S7@e-6`z?^$PL*T zjNY;F2~xQi?Eioo>&oq-$5jTv4MhAgx{i7)a<};O)4t*a(B}2N;xt}|Q6=p{D4Klb zrM`BU@MZ`0^yBvEn_-TsVzBl!d;dF zjg&g%BkLB!)Vn91W?{0c+`-z8(&~gd6)|U(>wK$q%J7LjC&8PWeD*rQVnKmi?dyED z*SG%zTi z^D1A{?b{&~o1+te`f8unKE0x7dO7sZnNn6U7T+SJKg?wl%xxrkL?y z_>K+~c>Ac&3(IT;uNQjI!y}?JTLF8LS`RqfRA{m$grmw^yO|6$yFe9h~8RqkM4^A@76A*R{ai2HazsqBx@IU1!tUW5&4_Kk=0Ii$U& zkn3ki?&6{`E{?jJBXsY)}cSaSGjt4)(n8Hg0pq2 zeAPNF!VJqdR}?j(wd##lUi`P}3GV^zpllFpgpClKvpvgS~F$l;A@Upb4i4wu@4c`Lmm`|~ER9-KPjGp%GdV~1JUcn-#-LK!C+hs#Fk_zDk z38vfDI~{=3q%A8frg554e+Yt%ROFZ-i;h{=-2HJbsJ)U`S#vI0ljN#^5fW0kXlsly zogvH&#Pu1o%gB3k3r2auz=8%GOg}NrB+1;puSAlR6e(#^lH@SLo}|f9N%9>M|LmWH z$h5@C%&63;U{*4vmrUs;MEX1V7nu-wFJBoGB0r_LQAzURv#69m_shyOLQS7Y*uyNu zW?!F1as$DH*13!Pw5ZM3xGTDS+v)m0v&S#&@sm#XGne@KPCuzfF$Wg)zbeWdY13W> z3LV3YE+6!-8uXome%7F$(&Jltd|gk!?*N7n{ zM{eS{IspBF-&ODP74GuE?x>S9IT37B z)vJlPY%uDx41Illk+MfUQBk>FWv6dFfgJ1DW(h~GidB8QMJTn$-LbK+=w3kFu683E z8RX%leJ@4fc7xUgcgx1K&o)!Eu*UR?r>{POK9H@|{aQ74`Wk4LHF;xcFs#=aOD@$?R4xCqu~=TqTu4i+`)#PD zihdNS%>Bk1*QjqO>)2dB-+d=F!a)CZV^7f^NB}|3wRHQrkvot1rK?kz1h(w9ow=Qm z9Hyfu*O(q29*O$w+$5b=-#lDE6`{e1{F+3RcTb7>g z?oKAQ$nJWYuX=sd3B$VBHxI4yZA*P;zn`$0?p#rfR`}+$p9U(@hq=&?2@w)v^N{a6 zmQIMPs(|g=>gn`T_3rWc@DiVe93Q%{ zAdpqchwuwYSeg3c8qOHot%lQStS@ZfNBYVoz7G6}PO*&*oO5qQL{NpMm*Ti(bggx7 zxq%=;$x?_`MZ1mPb8N-dJ8~F(US@lCiGVK)u>fcdgENp^E08cx$Akzl>t{>?qm@kB zyui=v^v#`qUY|BZsjOfVEw1S2!N%+-y2tyzeRDh8e;a&yVdUO15lD?kY>}`ClZXSsL-JukqUE78sE5-&{~!jtBg7Av(St)ZKUvtC-qG8?e2Uw z>czhO7-`@t;2fp1sbE&Zd%*agnm|v9LWEh)Fx+1+LL?QmLFg7rzSDhoKvm&~d zmeSGM%}^Fqww`rChu~g%eFtB{CpM$Y2W@h+8CguS{TMN-8t&}ui`-`icGHZOj~ICA zjk&c+e`3b6g{TuPsiKoB*h4gN4c)#0^~5s%QxeYi)7fDPG^xYssLt0QTrC?0(Z6Q2 zqR``8dwpThw-)10eL3uuTIt#mvk0vyVT-={L~)=z$O&^ zr070VUrySpNk7H7{CvNkPG@V}U#1n>;es<+FdObk#w7WH%_H*3% z2(GTVQ^RwYOoQImKkKveeIq*6=uR3!$U4KhdkxX?a;!kBV~J`+=6b%+NOLChU~RRbb}ask@Av(f*V{<^fBEsKR#r->HA% zw{9!~VKK>$$)0F$kX!Gf{&k1AL4SA%SxVHefKbI<(5Lc@y5fa#JI4m>s&~LSQF~}* zx5?Gcox+r=nh+Zh%(nP3o#jjx2LnqrxogA~K zqudVl$EGqeDE4U9E@cV7lEFU}^`wz#1I`Tk1*(g3h9y>8iCoML5Vpn>K=)bGzdZTZ#o>}P<(`;O1`Q}$(uRCH%tADWUe!z%h^s&TKS z5S9y4$9ThJgahM_a4*7b*wnPYc0;QM!2PsiBc-wRue7n=@nKdB!`ROdZE_)$pvl{M zUIva4pdMnszV|BDgzeYtXwQNnwT`>Vf<`lX9sN#6qJ~_h!aw^8K{hT~X$NAa=r@&= zkyIm|5#4k)I?p!H=`;P*?o}&ox0H#s4rT5#LfDJhh_)GPS%~KQ>}uaYau(ZP;5vKR zGz-2_c~@!w>?(a(j5hyt@3d)sa2KCkhnm5Cp+*cxb*K1^vY5zybwK9`{8y!t_dbu?3Ms58Mc&F^STR z=(oaKtU>cMR+xL+Akn?0WEmDF4HKmtZEytc0x56)-sGEqyKPvtTYdT{WF6tHuV}?!bfID8 zLh@ob$O2knMLs%Kscj&}ly$@m_ybiLIAfB4%Xbs#k84EEXck=DrCSSkc-f+LlK;2|e z$wt5T6{ynN#HX`RWAI5*v;M$$AMINZvKA!FrW`TaK|eFdRWwr@;^=DFUbSHIpr(Yl zM{I;zc61TAX{7;Xz-ojT zVPcfqL%&^OEUE|xp7Bjs>r&>G~8KX)kT^Um)RBBY0J=mvTd&^YRo(uPtjcr7ly6A4%=ca_EFS*Nrt6GI~1RVutZ z1m^{@4ker-7lhD!eJ4WRkOEAiUL_@LBIz+_)eumDh&7}k-~}NXCh;ne4|Q!mI|{_0 z+aHPcW|)L7qli`Ux~rmd0!CGIA@eFgA!6h1BT$uu%4%0HX_$;|eP%vX(yb{WkB6;7 z4C{cuL7zwttPIF+ZP9u$dS@FT>giDnLcngsOqL`Y*N6I5K@c>9Y&pk$7t4>}1*TqR z+f>-Qwlm{Xx0@pF3s=RcaiZh~!=kStqE~a}$vTKgUQeYVtYoK+6zm1tCEs9o=mI#r#lq!g4gt z1$3?MLa_QVy2-j_C!63-=;mv&=(IZ?{*~f0ppdIYfoe}C7TdNuB880TZ$K&|5$m~kACrrQy8Y0yN z70|+!Oe?_(lI$)LMPws{Hhf4NUq|HLvO_YCKd{gL6K!;CLVPAP=#L_lceDEX@mpj4 z38S;S{bIeyFh}oUQ$=PYE%dDLG#hoJ22Ky6!0+FTIa`WL@N0F9UzD?$M1=#@kKEE- zz8Z64uOZWAIn+6s#f{NUhCeAn559szmUQ2e3v7cgcvBR9z93mNh##7U4$r z10VzX?}t^xr8}vhHZu=_riUq*!~;h96TAH)L!K3eKi~|ARO^l|`W3DVRaoSX90z~! z*bt5wE@2iaAKhyv83*?R6`Zy}#zoQ72HJrU^n!?jfL6j!c5p04@2?V7u{e6hs#rGy zA;`OYSsgEd+d=#R#a|M)t&a<%XRU#YM_8D7S6?>&W6m%7!?(Hb*NNl# z{6^@Ddpy-?*2}b8u@y3CE{enOd^ZG+A4ouh78-$%U`fQGK(USwyRNpSjD)F-eT86P zTQ0sn-ka`V_l)^wun5Ohs8Bj;l{Z0sudH`w(2>ki)8Om7gi*5EVq+zvmq zT1pm1C%ZfQZ#!eaBC^$$*!c6$dQFEvaVHkpbM&bp1^Uk?_3SH zb*b?WH6B1a=q7hHZmt$0}FjehB9j zcqS^4u>Tr&eO~B2u@gjPM~BpPQ2+irQ|124rs#V55WWlUI=&;A#47h!I-@W|#qt%L z@+EzZ+@CoOi_$^D4~^k3*g@v~HwNB?DV^y4K&w?C7$7XKkh}4*Jq?OfR(0ai5bAD^ zXm=OUz8PVip5Xkq+?;}oV1XL~pP2ACDfc|SCQLm-UYL1V#D?PUe&zqK4Y@|EY&W4g zQt+Ewy?vi=A4xT!)^f+hTNdrCL1H^`X6!TYDZMlZ^`AY6ss#wrSNPm)5#JZ-8~hME5p9?h+(b>`_+vv#J@U zNSm7fObhR&dcbyrBr`|xcxk7vd=eT!|L|UIJsb}i{=wkho5pDCRwSIumzJe z7?QTa`8u`$Gzfmq4qr2bR^$`F`~Dbj4QHgHKn9fm<2+4`5v0k-`NDvoVKhnew!kKh zYG$}6Q$T-m^dR-z`@gSey8HJOlzrhNY>P-IZ5B#l1pEiJmZ0$93l~H&7_cOg7vRA12o;dCyEaJdabE>P z#^A6x;&!c==vtOc9i)e~f!UVN5q*}gBgvEQNied;eJ+5)mIi)0(JfSgWo=Kaf0Jlh z?^{+A*X3L5=rMNF<#gaVpTCAQw{t_!cJ=x`YHM@fvISwIHaAWw6d4YJTfyB+j(oI? z36~#*=K89ENZ!W-P<@L z!_Z!-}6#!qm7gjo*DJ+-Em*11OO-IU~6* z+H}0d`rhWgI0{H4-3r0XmRPs1E{YR(+tZwyXmgK+e42c5xPmrw3U0Kxf7^hFtesuK zYJxZxQ}A=N126h-6s#a1!W)ZIY{@n5ljHZd+OcfYy*Wek6Yzc#DZ`JUgEdg&J~e(J zT00jkRn`Xh_Zs)me)GK+c})}>87^}7_XGI-@M0|`UW~CCFNOiS1-@%sTb{M8q|sgOXdKd>2f3 z?~a4AUB4OE1<_jb-*eZVYZJ(rW71tULRH6GRk#pPLEh~~&w`z-1AW7A$Sz!}9<+V$ z*Cf`sTi04Oil63w+9sCx_O%+L%=y#Y3z)Bf)2GgdhZKMvs*nRnncnA{P!uooO(-TY zibHfJ;PmVI;YSLxpquMOdVB2P;vT<>Iz?Tep?Z;_LT?$`KbWlIHe7r5Ru2mW8Gwd) zQmp7Tr3s#WQl!^zhb5~3m>~eBMD7s`9NMPBNi}U#+Wm&0Sz63%C1vv7!vA#JG%fFY zu3~7h;&~G_Y>pMr4;z-(OYxkR*P*)(YdF|aDgDuzei9@LCi`sP+Ce8xgUX?#ibVvD zH&^tjL%w0Xk2VsqO4@eV6Y#>}qSx*&g#>Dq3>CP8)P@(NMpXalhcX3hG<^6r?;ulhfoJg+GMaN2dxi?uP`I8GF5%_vAE-#S?gF5;G;r* z9BNfACsze9FSzx*Hx{~HMH?_CXvX2tY967%;HQ+5N3KO z{!I1`!5kGJF?{vl<5-C~d-eqP$v{imTzDJrBnQos7AlCJc_Qsi(*9r8hw0%JThNS-4q&u` z`Ryzk2huQJK=^R?#B$10b+-@#TWsBm;7o{G4*0PP|KKdun(iCyhOFU-7rEOeid}o* zEJH$)u**tRfax6FtsWqv#oaU!=U-ywp(~U!BL(mGQvT^sUMSV*E~Tui?T)9s(%m<4 zD`fTCXW<>hY$EA}&ZyQ&?!B}>m3k))g52_>lSgL8{YVw+tH~BJ8!odMIyM5PsMidq zO0G%z;yhVY=*E7*lsxqBx{n-jS$ z>8%KqyM5goeflaoq0?V*4>ZDA6f{QTZdZlfGXBTj_ah;W7N`&>l!@vegG39FxA`?0s+NS$`Snv&-HVW07F7wa%OK-KyWhqGm6MJpmO zS7M1~Zy-T)Qw>p-XL1)8X4?*y+2tDr%y#R$H;D-Uh?pF>ik*?skS~m0<@U92Z zrGop!84{Hroh)$uAT^ws+sKLY2hm^HrfgmZK3{^4h(6HC3p(udF?1OG%Y&!-4qtVu zud%Z})o-Buso@0lwA20U<00^Gqe;0ckg_l+9;Th@XJd|aSBQIBZWgQA_|6_iXvlVH zaVQJu5xaHa7T^AQ5>B&y7}GuC4TNw>vt4yf7E;cW3U1+)a~YcKcN* zMJ#5Vn@Mj+W-ZY74jIwJg5!*jE4h87{XzC#X5&bFwfwYIMb-#?fwgaoj)U99a!2tT zo)_k6kLe6^LR{O8Ar1!6>RJ<`p-HZ1w-Gulug!9QbaSPhyNo0CS@*3oITWM?JL2cL z`|0LET)I})MYciJ=3dZn^aUU+Lcj=NvDtD76PxY&W5A%;Ks7SSJ$+`_66d)Gtn!sq z4q~8Jj@;MJ#0oYZeS5(u$lmmA=%u|hAZ`OaCEB)7#>mEQ+Zpl3DQiWfH<1tXu*~J# z*h@B{eZ&on#7zt{8}6fwNfTlop6TevehDx@PbCcGINpp+aE` zi|}NQWLf9iyfMEcez}4p=BpVG+?Fh?;yIlq*A zvITt=FAok1y|^AqA_mjF3u&d`{e&0 z4~C4u^@|^Eb5G__bWxoox4ip?O#iLgjOAtHw%U159O;?o?_e7XoSLcVpJTqnO*wut z$dGe7M}b(^mm>;~vq2jZR}v!)aS|~SUw3BX0+^SVW}lD)xj^9?7?F_!+prytDnFZ-mCT+8zwG3829rOpa6B4pa1P zQ-eK6WBtU&p!08wF5dqr8O_)=^ir&<94MYlLBx_)fZ+ohcf4fnFU#b#Un~Fzx3}7@ z-Rd(OM!ZbRnN11B0PxEx<1hh3P!uZe3kK8`l2g85FkLYYNFR$q`uVXSCEC=^jO7s- z72xy6!u4_B+QiuaDQ?}P|4)E=L{HoTop_k;?H4JTuK()*{dF5$8VkD3y(esu0Q6^V zGEh{y+feZsZrbA9%F;yKVriaj=sdbKYu%F*Brvu}N;DParnOszxMBOKuyUrUKpYjx z8MLhvc27qC%%IUB4xky)6o+~$gyN&2JG7!0x09w#@D=~2<5etWC2($+&+36-a5P;8 zOs0&F;Y@Q~DI_kW0p2R4iM6Qf4c|(^BQ!6rvdb_aCi>xks?<Dx&*Mo{*p?xng$oR!a}}>D0gz1{u8(b3jcn2Pm7G({$RIG43R= zl2@rDdOfy!oNRFm0iO_NVkrnTf~bF0gr&wkknE)D5!()%32cHcmm<$wcE~6I9uE4M z=s35UQ`$_9Xn>G;_sOsKCx1Z?S4!`(Bf54@_Z7ylK%VpUXXYw5+zVf%oe zgbO4%mH!Wm9`dh2Uc$E`_XGoW-#Qy^#%<$>7!a$H-1TF#2}s^*VqJf~Pm?at*jVoZ z!zH}sACYX*xX9-@0EQ4V7eELXFvw}eb50#*Es$#A>ng|#8sufZZH=GA-Ba`YWUV;t zAd{G@1K_vGoqcVnTD~%M?63263_CA}ckYtnt^q=ELFcJasT=3xMV8U)Iyq5g=0z?s2-1t(Y&bAmP17?jyU&UEacm#FWu(E}{$ zLa@7k@NB5=K@6*njsjoRa1h!}d17}(97lYJCKQSPd^7$IQuBqYt#~)lF7z$>xT!rG zqNnUFV`u2dBQ{r?y-qvJk5Z^vkH9>S_9oou5qs*vQk!(Kl%#?Oi=PvUDHd2IN*pV+ z$_|1e#Bvu-dmlW;LicypYGXIxX3HH*_i9y3l>F4=dnH zG_Y34AP`S}fM(xN z#*{H7+VC|cg(&w^(-q7>^kfo1SGHtHD6rxOa?=WUJm1>xb^Uk?+UI~H5j{To8K~VX zTNr$8F_`531wSRXy2ot7|3NqRyCQ6<@$;K*dtV9nDy7Y?aFhD?p}uO%sP7ID+|Pkh zMsP*FG5xsDjMgze_13OYqTVXr=>DxQQ14P@I-u!3-#5JfKAURrib3eRnuch1IMk>TP zc6G}CM!u4CLV8%(4veLOC!Adx$vYoC%N7tsUkqkZdck~714#_#+uovclXFs1xes3v z+`=l5rrO<)yl@|Ne!Xuu423^(5INamr28cGaG~+$yulDsAXjl6A%Y7ZZ5`Cm^V3{ooon{SQG%7`YN_reKmy+I;+vXz9NlIJGH9sH(TG)-nrkDT7j8Ux3_{^+WV>;{y8uy zeWH!;zJeM2KaxjA=_9O{d)^1Z_B~f5nryhPHsrtY+6V?+;CI6-r;#Q$5A2G0=&iuo z{hpB;Q^XsEvCGdsCuo`yT@+QG@|~NX7T)JQ#pG zJSc!#1q*770<6Y!M_9Q3vG2mYlZ9J_q-HA>CHpkI{}3CH zxfX08h78C8vuW)jKcd#kOamJeL#W-9$z(7%~Mr2>ed zp*}e6yXgDs2saFY{C()VbQlJJOAvw?7vo&(c8w{j{V+YYEUV^rm5t=KmE}q#fcC+l zb`r0SbSq`xhp#YduBuyLs)H;oMgymoCb%F@pgzZR=@yOy>0ON*EWw>B*e_rk(dhwX z`QnVP@Y66}*AL|vXS(1T-*AwhdzWut;~O^W2-#Zf6RgzWAz+_#{DKqILG#sH(Bm73 z_=R7t>tQ)4w%k=BBDuE-t3F{k2)A+wRSPf&;$3}|EZNID{UP#=I1$L?ebt-&fyZ|F zneK8pn%DA%hAz{=#V)@b?LMRE^hb4f`DKUrrQ(Dy>-NXr>N|?mby?9b@A5~XGt(6i zxi_02R@LjL-e?U9mK9j$R`Q6H(8g!VD4JHTxsGRojQarG5=t5t z1R8kWv#|oyxJ{+ikPxx39GK#d;}<9`1}Fa}!cwbDC+`|}b*T(s8C^jX`NaN;{A2uq zQsg0ugmX@MZ9KZ?aiZjFv4r)0%4%Y+R)*|}Mj|;niiWD{ zML$u?M%SC9eFxWQ1{IC84~au>1#TWf2O+uqzuI~b*6~oWs26OS+KOYMRM&wJ6Ff&p z^LDr^bhW}#+b{5EWi%WJ3dHdm+rl|9JhvYa%um)v!wjCqsbx0>o7FrDF2^|^SCBhk z-9XH9V2bXiIO^@iQ~S|TO}WlvDi>WbB!8GA5`u zqMt1hbqnLCG9X>&9-~|n0r;c}3rsc-Y3|eOia_$R&SoZ-;8pKC= zHl)_|YVKFFZV`YGdoYS~jtfS6{*knqIiR-1r2me5FsS4HOq>5vU-p%Ki+ zT?{vPOV(-Ag5@M4{+Q}6Lg#ikCjuFdy9CBp8$~M$i6vy?MCgQFz$e@(TZnE()!`;F zs=PZ3*|Zh)g3cJYv(x5p-+=o)jE16c{bjjl4h36hQ_%!2y^!!A8a8j4&Nj^ZfS-U& zkvq*#I82N~o@)p}hV7mc&9D+25YcYmIy}PtcXnZB6Z}nnjjmD_&P?LifjF#5x+HJN zoHORm_X}{V>s_h)>(IIuqO}E6&CHDsmqvyYkCD6|;4BV|wn&_F@4Ko98CHFD99R%* z64Z!N&QA^(B0@DAx1t>6o-0V(!?r0@Fm-`t3A7s)hwHF9jKt1CjGae?+LcA`=irwS z!lrYA*1NaabufWe58Glk1I|!2B*3CHh(+~ z9Cp7yWS;)xDl&1CqU8c#>uWwQ>NtUpNIB)EW7c5NF!&Y|-tfrK@t+q#)y+n{TCVj? zhXacvfR%cTlnfS3)km6e?z2>IO`z$k{W)7b%D9fJyL>M`A?y6X+&Z($ zAAG6c-vTfXreq8Irsln!GY>5|Z?B{qw0*F!_mbE8V+Q>tMSsk8zY^sf(M;vXcaAKsWpEP zNVs=jjvfXw@}dgq9_^qM4b#$!{u$!TT_7;JZEgq@gopt<2$L4fsQ;ay>UO{ji3+o4 ze*Q|McP6Zm60@HW;Co0|i1VEhn4cT-w3p3aQ&V;cNLw_9>r=A}*||l;6D{fgz(_sH z_i+v9_}&H}LNKcDVp7~D+N*K5kEN+NMIZz1gs3(}m_n8k8iAW z4AwFDWQE@B7w$5n9lP?99*7tyCAAaF@Quj8qUEzjw%8<^K@4GzE>u7VwYVCXM)7-X zMeak8(>MJ%Ys43cT4-Y7pEy(^qZ!;6RO#K^aSkE>1LwpFQB$vPeS@z)g_AMRoHKmu ziN5+RB%7^gal}ES%CiV^5{%k7)}l}GrSThmnpseiD0Qa;T!LIHFGiWs2-#qQ*IfrR zf*c`&&az~2Uf1j=mlJTJD{dsbSBV4EDwKb8xZVu5d^4Ea!X~?r`j(P^Zl_;b3;^Wv zVcUTi=&#o&dg$%K|3?uYYur!pNd#>*s=yV`cegWjG_dn3aoRWRHM!D6{k%e6jqV%T z#i6 z(@e4d?I_(6Y@t)G_tmeV@*@osrgaajg8>O-I`GcSAi&BE_%}rlcjNYUm^(KOT|nSw z`(Y1})o+_E;5Y5|M-KXvIPcDqf&l9d$Lsugq7Z{}RywcKb4>lbZhyp}ZuZ~^_LDJr z;l!QBTOWPL=wv~EB)3S5IMJOWa$iQ7lO95Z?gQ$KVz#Tw_31Nm{{RCf zK(CU?9Q2c&XjirSm&)7u@nyR^ zb_elkR0Xr$axQL-c1g{Cufq&44aS#Cn3n65qt4avh3>}OFl?&m6~A?2e_?lvy;+CD zbtsZ_HxIGf85hJW=u22r;sYgIvHzeJOv7hXMBmfw#hY_*g|64$cVwtJTr{HPh-K7D z>Nr*_VN8Rq(uM@5OH&wF)liolf&dg9FAc8SaffMo9^BZcn|B%pK?j=72A3s$MY=O4 zdzsy>mZe^Ky=9>SdU5beFT5r6QrGRR&KSYggsX4Zh9D7~$DQE*nUx+^C^t8llK(}n zNS)x`Rf@-B&Eo%H@$W3f>!JrZp+9olqX1{u#G{m|qRGrqIQ^90`{I)KK}eV|_F^pU zMSaW}VLorTNVInkj2iU%T^Hd?7Ph)=hB~8mdVsfIO<$2DcN2FsacTDj$(R_pWbsAr z77!Y9RB%&!YJ=Q6wU^rcsbeOS9rNcGjcAU!LRMsr8U?Z%maUj{bC!Xnn!zw-+0=D} zuqL`=MKqLCG1a;RkQ*sDQ@2bBSagF&EXopbb}fw3rp49ZD=NP~O{3h1vv#e@@(_1i zoC~|GWziKd*^}eQb3*>8L6NYwRya;WKVSvW@A2kh?owZ8E6nZNdg&|-{g#7l20lCB z5jVZ(Hyg}#o_HeiPyGV6SFPX1a8?@?`W6VVo){kA}K8Q$-``+I3JM~y zS2?_ClV9wn!!zC{{9n0Uf)@_fCfhEdUsYTZCa+GaU*YRsk4uPjEQH7V@+cjH`!y3y z`wZH3+3IndY+fO76{m_se3G$N;pZn$%LnLFt8ZE27r)WB%&|LmAa{+BI=QO~FKw>F z1>#JzkuQUrP)z!CUd%frMlELCo(owr`eNZ(QmBDn3$oz8E;AC;&FH!dosj!ItE7Nl zCvsmwOyE|Ijh%M>^NWN;J_~T@;_POyS@ii?-_ftLArCHK7z_%eI@I3C<=RFJ2+^~4 zs>z|Y5qdjwK|`$6cULgrB==^ni~*%2_>==tqT24mT82&2I)B0@87+aGNx7N6iz`a^ z%0HbG#569ie!X?etx^TBYNWY=6De#nu6UZv|Nzm<`@S5ys zqH(j`?=Gb0ZkW9t4FdS|Yr-WKUQ23}u4xA{U>zG14jX% z=R(`?t3X@1pKu#~GMDk=4hQ)K?9O(cmqV@ei793+y%XEU+#O z&bkL+e`_qG`x^Dxh9p>KjgB>i{N~b~4F>?T(K$*Ec>*be!LS=xsNTBF`)Pa|fL`&ZZ$PKi$peqW4AJmezxAXFbc(39$h?iR$32%KpTUY*n4(z)kf zw(fhZZfY!2Uy(OVoz*NCvqdyd3tug3K^p4y`!*1qBKPh5a`#a+uo87DdMT=0PL%=B z&)OzxFupY0u#-U~)OM@mIJzwdvK@lL(+nJByt*+fh1LDVSGKyV2K-DZhR6EE*#f@< zlw@@yi67w3l8OT+^vu3&vxrB)JGw1?bizpvR*eDGC-rA*nr(iF}ASm zI<$ZcaWQx-OOCD?&19nhJi$#eU_+W2`v84i9>mUj1X>rSU>S^^(HLpm%gxq^Y5d z%QEzWHx> zlZygP!+L=;C3~HCQKIl>7u?W+8x7>Z?Tai35tr~X7UT{{QcdA8(ep2jiDX1I~w93Il`3K zz0kmgt~vJ;99q;hd@a;9dC*wUx~7me8|Q9s60++jP%wONOp9+r@BO`$en0CQwuM!@ z%SLvv(Q@O9n>Og))VFDqd)*F?uDNBNM`U4OJ5#$E*857sN~WdR{gjcXxriz-L`=?g z7zESq!xv;`&>y?rG;(b^Wdk;a%S*o-A4vZr_fN1fx{(c7HPY_K;FJQ>LV%k#-A^a# zpw8`Q@iR-9Z8+MOckc~I4W`_W`J&D}jTS@#qSTQ{cAyw&ByNDqO2xOr!Tgkp`RO7Y zzM(ZWasn|SzZS+uX9Iq7mL&uhCN~|5NU;WY<3uyn+(jz#_>-y3Eb@;YsS$0${Y$w4 z;;|(!o=wCgr?tv%PZ%}cA_+LTy0fPVKxyIPb%3xdp z;hPKXXx60>0ma(8i<}YM8~ED<{L{FSLARWM?fk%PhflB5RoDWe21a=iTJF*{;{?C( zil0$VCf{syu+e4KQ2nqVQ04w{mF8?yW)%JZ608R{S0`w$n2$zxX9lQNx$i0Q6--v( z*Z((@rE8kUte3qf>q}v>4*dVyWN~5YUJFHNl|GGmy}-{GXO{LwJSq?G_OIraM;6>T zkvA!F2{~6N%TQT}Ir~zLOp2`w_4AaiU**3|8kRn-@MMA1K8sv1fd9||xMoY-T`8?7 z7aJ-DQCs|Q$dc~uF8182nTNuWhZ5SP8 z!#Kl+F-7CjFisJD*zYi={*Q+tfphYhakytPx^d3uU&S)PH>oOzIeH1r=bn(RlE!t% zZ+;Uot3>)^=P)xcWZjFGirAtjsd6{u5gj1NXzZnM;ubY`-8yw2e8;}X+YATEA>!Jt zA|n5ir)HA^Il(h7(Lt$Q{Un%-_2+E znKJzfRJ>uMS!EsuGfNwp6BrCR`mZk2MWjt64uyQU$hf{q}Zr;$kp=+)l%B{VW z3}|STKJ{8({W?GOdfilw$WOdhP@SK1t)JJ86|PIf9LH%bDzePOIwN!lw-(f40E46E z{Jp?{AriwvJsoa&y|2H^w;bc^SJ-#v(5AtwS*UwZzd+GhkZb&*7#EiLL$PCgmNHNH zBdCIuDQD{^WRKvdBs)E)A~B%Vb7}(_qn&M+Us=_9@nH9GX3rR9#yv6KsizvHI(EsW%jMxJmGSPcdbW^kw zAx#qq`)SU*?ql+VQOqbmIY~kHH9QF{t9$5TV5zvkFvFF8jr*P~m&848@^am>!rX6$ ziVF9ei@7Ar-BhRkta85$t~Rsv>#`LMogjt!GOEMT(l8wkYGWF~7V^*a;$1x=mpVp- z98)Badxqw|d@&hc`UHy(E9(~>9L(r`xqnPUnCR*-zQrIceVB3;!EHK1k=BNwDt)U( z$(1Wa!M=k>%BJvUvGbVLDU(E~UMY2S`N|>oR>t5oKU#3#FbY@I$^wmRwn^l=Bh`VC zLoaE@jHjS)2SwFYG73U0>iHrPEf@JqA+8jXg@?nW_#S2E9zuV!9x@P5i*AATEuFeqPN! zCq?)|Yen~B-LwAkJK6ST?dv^gf~aFB3X96p(3I#03ve2F7l%9@NcZViYZw8qW_kh%;ge1=X<8#Z4e ztzpG7&HO%!JT1|N-pVDkWq@F72&WHenH!-fF=x;(6?uD(+-mMvDdDPuJ%*iPz9^gB zaN9?v?e2Dbv4XzhRcN@`W^3JFt{Rq+4xJ&;W)E@i%*aSv#4e1Y=4iaPw)gi?n6bV` z){`9YY5{}U;c8CwwZ~|{__MK3He7QxU#o4$l$uQa$!qW<)Sz)amzHXutAL}q1kcy< zz>_&vysQjb?^uP2GrQqqvHbdu9z~h9Zm+NH`%4I!)%Qo4*hv7a3dTcQdd*s$VXA^n zonCK!j5%m`KT{$KEoS;~d-wYlA*}z_vKS=y$qn1L2x4HPeikMle%M6>OlwSU{fbZh zN}7<^+1xKkHN#;7EJaM`mmWkLuv95|nA_^OZ=VyvgfItTw8NHFaO+3tvCKPKEqYt; zfigemK^qDsz^)Agk&V{4zo$0zMEzW54C-;MM%1rG3n*Hp40$#XX1W^F35c)!0JlcE z^ok;x>2ff=8I7zEkXuLJZeNUux^?-`b%8ym21%ZOt`YzI0b|u9#kj9vbj!Ot*;#@I zEF$jHsAU@6{i0W7_+FzxjL*c+$}zIl$M#Rpnz8zu*pQ z7qoql+E7TszA~-uFZ|4T@6fdnAk3&7Y$I-)Z~r}Iy0{~mL)989za?COg)8g!oWqY{ z(2l!}YN3!F!Yvl)X41~z5ppS}BDxcZptcugh97w=P*{rZ8+4s8Yj%SBo!tf@(!iF9 z409uOa)H-qtjr?B4^v`-`%Nic3VEV$B3cBXg6l2Y+z&#sV6pdkmL2$l;J;{V{NMX* z?nI7)j-87B+HOBlq?m;UX}O#V;(BYvwZa%kqL%(t2$SZZx-_}foLrYv&;xzi+`ril zy<#?>2Ip+Pgy7~BU~;kwV>=vTl~lODvFzvYlQ4}IX2E|Ev~6$?HqnUbG^q6l=i^Qy zUFKa)edhc5CG#`;DHX&EG>o9yEuc#}kMsBT%tCsLGbv|5P#cpJ|G`O4EtlJGRGWyV_*PQer%bn<)$G}-hYnD>U=`wSux6@_n;?w=@}0UxP21X9ps!PPFU0Yo zJGM^qW&X;y*qpPwefm7$VO)+8S=t^fYf`WZ#&$bJ^f+y5D3p8Xe^TyCqvbyKKPmSl z?vyy}3;Yy*-G3UBv)x?U}OLPvi<+yF>3=fxro59qvAyl?(3M z=OW~CECFYzdm(cZ#VgM@e|23yXZKye_G?12+(e;wEh3Sax7bGvclA-9i1h-gt`Yn> z7RiDxLY7}sE1+kugY<^~Dm~r(34Di@{{pvu?WO2mh(DEfrf^7dZ+pZ34~v<>pma5y zO!n@6u(L#$O;Rn9WehH8j260|oQ1~0y>r8MQ`O%xnU%DU;`f6ZxdB7hi{{-A&S3m@ zy$&F}1L3q0Z5z8Sm5)qjd2ovBOl_L~8P4rAVt{n8*Ne z@gBb(n|Kq6&@ASpXlsDIEbl(2`bT%pM-6A(V~XV-7uz{cP!HnO@+=cz)CD5>2^bDB zWx-S+OGUY@hLgmy)#w6_+`Ru=^Q5*A8)&?AL70w@xW^caaI@-HKo#c{aeyMr6ZC1Q zJZu}pbzZRj&gi}o=w+?DyA`-FVouZspRKT!6BYjgh`<{@lk;)-+BCZ-koYUyr?~_9 zz)ruQSnOjyp8$CD@M)vpPY1T6!QCMu*UYSZyEH5Ib0hcKJU&y3G#j3~&tktd8cVld zB}TWqkDJ};C}v>so7V@@FS3&SB9Q4Mu@2)>hg&aM{{;WVMGgDSS#T>U?UsZ~k^W3> zJPyWb`TyhXOu(!tuEpPdyJkcpA_9tNWKqas06|1i)F@(N5|e>JGAelAFx;8BVK(o* zGYp7=C*`<`-a2?cT_Y+QKNziZipbe8a1e>Ao~BEQ`L7F(7gQL``&y|U480Q z)v2@9sp{&!oJOa$d!cN<;Id3>vWd;4tNOQ7yOIgbxou%uSh!0ICuIr`NWU=*ic(DM z-%3B76@076mt-NkkL+uRPi!VccYtWgv3?7VvK%>75{ zcO2ggCA!&Xc3#J!-2Yly;Tj(K5-zmQ>+pKs0cYj)o=3qV-Rn5{cX^#y^*L`GTwl?k zGle`XZWYY8^s*1QxA{!?t&BLeZ&OX5@rFmV6xhR|j{0996DD2AHsNvi`!8T9#2N&^K zDw!B~mxrIaI3RMQe9q}jdBScz#7~1;ISke|cz3i+4)RKi+~XNrwm6?pE7ZFkI=)6J zPfFYTSq=dOhszU*B`i2N1jnx^247LRT`-M`JOTZ3G$L%L!Pa3MFa^x3IH0i6&e=0L zVHRA$dxa9L%6nw{$nQ)3GMLRGoc(ZKjKB`{J*u{)(q|WTw%gs1*M+AC`7Le=uH(n1 zWH@c|=ee!eb$qa~9WT1eR zm-%C9v0W2*K^OZ5FyCy~?H|?;9fai|%JUQY$4>1x1Hr3V4nH(Y*N?XiQm}P?*}bI`@3L6?f#tCrR)V0YG1!te6xl+WPhYL{)de;M-X+UB=g5rB&&aRgaIg++ z>R!fgEq4rdW>p0!bap44I+XV}y4!Ey$iV}Yixd^$;b-s;hfT!Mh%DQT)9;-`x*dQr z9tGlyD4}eL%SRG;Hu3XQ@(vfRwcp9&DzoX)x-WN>1a`7V$ZE+1t@YIeKYuBm?;kuu zSO_(jA0!x9^ksS7&IYijeaNX6)(Z~@!l)}tvlt~2Mc3f7Lzn$VA-9 zIgr{R=)u5#$L1}YO&x;X*to7cALYqFt6-LO%wQQ@Wc_J=x(aNac0o zIg-5J)s0O-zOpXQPG!<=xiMc(8ZlOhxU!?HHo>Ru8Ecn-AE=enWW`K znsYJvkIAPyT6~Eb@w?+J$Ynj(vZzI=IN{Bu%jL0PesG=Y=Le-(UFfD9jCvY=>=!Ie zbBcCFBKvCr5?hNB^=4PQC%#m6=g;a%z|SwivR^5DT#o{z9~kLWpTozW?Z2FT@Zcso z>A*2-_UU+25x*)s^zw3+d=?up)C=7Q6>XG{9R$R|L2H&i>%b6Sb?4#^1@$+Y) z;C@HvhXx%7FyXWaPLKfQE{dJ^BO!3)6!RttRDJfRgOJYwp7PTAEvcNJL*mmB_*Get2Y07UCgWUQgR4Ia7X5|aW98TF ze#9^!`bVq=2Hn9{$zu{e;r2yITBP{m;=yumlVP#TwSPXRQ#y-Wj@>98VNp?OUN4+8 zn@Cut7{rgX&lol{hBnCJXTe-v{A&|@$O^{3JTQyb0dYh>>fCsHtc$im3q68G{D?Z1 zO24b}{O0=y=>YC{KAnu0-1><UuMY*_B(ksf)zjY+3GF{TxH)mwcR zQzz|r$Um1?VS{N*`^O+D5#9Ffq7A`E|5hfq(}RRX1VQ=)Z}lR!138Vfo~fa`ym`1? zA1*+Ecs23TJ%Z^06mg97BAwM%aPxz5mnbOM)*f4HabQu=BsSm~mAosS<(hnc<%^9n z>~O!}dXC`3&v4J3=Zx(0A$5YwgM(`ilLM2ROG?=W+0BbWK0l@@&I{FAa2Regef&+= z(PAMlic0C~W{-`K7W|SfucqSO?Ap%;vUuKi>B}5KcfVFrbPKg8@-zJo1^!5M^l@=L z{0@tJ=}Hy~_M;0&ZOr=_zkkh3Jp9aC?wtEQa^}ssV*gAODt_Kj|vXQbR_(`zrr@xZ{ z1W!@kd?Ss9Y``y^%ic&!Lg|lwB3|RO+LSxBB_BxEANFJCkFzZD!@u+7M|$ZlUQ0d?(_)hR6pMT;hUXw0J!};$vrS9DaOnT|yy%ad za@NfTc|xp2wKz#Wgd>p!4@XlBEc@*2a!8!T1Ib|j2BnVSFEG39?ZlH2z(l6Sn)y^Q2m840gDhUa~8*>d2w z3lgvge#zL?o#BDIeKDFJJ>(1&{Mj%6FrDwMdr$Gh$v(gTE89^#f<%$NWRj=(!OOY( zIp3PrbMiMJUbzvb-QdeHErP*$JjG3^b|*Kk&>hQfq!RSTtiV>U5*H zOL;c|O2iv=McFsX+2dbfx*|!GeJEdVVV)45$S=k7JBKR0IlfBoBf4%Ge5TTC$dcYw z(&PWN^tM6F!NGaqXa?kUB?#E~J7L(7Zaiq_e4c&hY9`TX#;A3m%ya)E;hv#1FtMeA zm?;hnz8=}Y^A&#ST~8oD%dY(-?!6N) zf~MlXFclsW@+3rl7=bTZs0zEs`xp~%3G;Sy@YR2Tkog6%$pquR%wY!x+y6_PcCfxv zirV4NAB$D-tu|`6=Y(YNmaPpLH_}mid>C^Zg||pEQu`F4={G_WK?}cLAdgpU^xFK> z`!adD4O8mL7-1X_itK@4Wg^pRQE<~wg>mvQ{oU-wbXmz3S$ZM$SD`exj&|@X_B$v< z(4C25rKg)AW^=m!5BwTH7D+rZ)|P^&Ml$iC>-TZHPyP-<6PbVO07xo3XZ2Yza=mw>xO3W3V~{72ur;T$KjO3MjY>-~rmWJUxFd zO+3?m?%f@{y1B8#k23FbpR`=KM1_5{tD+!hxG%y{x{73`vZ#6{2H@oMR%Q3!V z&8O*qq&m8>QTv}`#V`Ed``6jCtcgmvEsgf`+=&g*Az5AJIT^M@D>=0(yvSo&DeUR^ zJNco+R(KzF4>=?yr^fOyD*RrU6|~kw_$b~0CQ8P(1hr!U&c3$<80>E-PgeXWQ^V!| z-Z}0E&&v+j2UYU(=)q7T6p18on1#H?8ywB_EN2rW>Z5oF#rp?6MK^zsnFa;C*$WbD z)nG93@p-&S++Awh3F8lBm`LP_jFG9@4n!25;2~qs9VfW=on^hZ#L zJiXeu^dwFq?ZYNZUJL5}mg19Lu|2871DK!lPznv>kX?-8-@D=}y>@W#&+rvHz8Bnz zAaq{_)2gTb40?d&*{{2xe~dH8moJzE`ZfWflR^sfTF6z-PzQgI5;n1D|u@}iemK2J;rrbt`dLz@F&&ZWwLc2tnZ zY4YZU1h9czYx4(0j%<66jwxWa5)K7AR{4dhmchs(;wPTYA*09mMgolF>v?=;U>K0! zYqPReMVUl40T1^i253(Sp99*Im;Yz^p`iR8+9X2dS<)o(@|glc6Dqdl5g|Vf&N}4a zp87%h#XQ}?ZWleaoL{kl`NS*|b7P%Kb!qyGH8OlU?P4!_m(uU$@V%cp`+=Yc)%5in z{fI<_uJZCv7QJo3UUuH-ycRR^T9pGU&&Rx59F>d-h6> zO^%AyBzx5#-!Iy)Z?BR>D&Diu>ou}AUNNdySw(zgNv~w0#N|qowcc<3cy{Mg3p@Ae zc}#z==&a(JA+ZZ;W69K@x>!}pE2^m+SY1(_@RIRyv1rPRmsD3pD~pq(y_$G^WpPck zv^r5)obqZaimPI_pn6PIEa4?$qwHWO2#pcvV?c zWsIOo%8P}JlG=o{Ra;r*6&1!(11sV+XNh9em#DzU#Npc*Z)kNbT=$BG#_CfAiRzkI z0uB{Mh2OPwR$Cd3l_ZL3Vqkf!Wc1LnHL+24l}=!=?lSP^>;GwaVheXiTH7 zxS}?uHdKj97nfmI4BIO@y9yE74jEK&GWlDPSygpqRIDy$>p7$PO)T~2v!p!fjf#~P z*H)yWNlT=q^$cs4N@aCz)u^Ob^!wP@bo*Aus>Q`sWfiEQUix@$Fk-0~hnWAVsZ=69 zvNjbz3GAQZQRwd(QRk2Z>MM7TDsbcyWen-Vf60u~oBA!fnh0qaC7E~wWYGg&HRyi`t zoTCZ7(h$s0dFcHiK9c&0LbOcGX=K!T0IviC$yhN~jc%xR)|XUQkB-MsspROWGS`Y4 z$)<|q6<(rjWVE!ZxH9Hh-HXPnN)Zxg!}% z{3cOcQyypX^M=Gwr+6YG(<~?9;VGQ%omQJlRaaReRikwRsbz8z?epSQHMJ?Pcw{vW zm@$g&C)M2-Cu`6a#*Slk0*}?H4;WdUz~4KV7_XfLm1^~HS=LxIs2)Z;fx@3?9gT)F zm78kaKu%4Rcrhm0QR3RF?3A7KQgzWhfcOD7`SlyWFD<}eVF?QRpDTc`jOA zF)CVJTAG9bGGqw`YHMu7lbM#S4KVXpON>^=3|pP5hUI@@Sak?hgk9-o&Z0k7XKSv^ zOU};GcgRY5gGx(_OJWI(j=CFD*)5nce%sfwu>nBYPtTU8GOtR&`(?+~g(fxGYAMz`P1OhSV*lh0+l^Fe4uS{Yn1Wbr%XH_CboGrdFniM}o z9Fb(s5yeEE6XKj@5uq`8mCWMl*&|x13kL$DQWwmJF_7An3-9`P^;Oj|^^r_ugX&YK zOSo5GW`lE`7}Vl*UQUOaXT&hbtf|1oHD}SI9lI=bnD{E){7;1RXHgdvC3Z%ly0So* zMP8}+lCfz|Ricw3ixp<7B#IS{>FP>+O<62)W+g$Oha6&+Oc2!)X`no%r6|fk2}Z)G zQr95JI9@}rW0hg3nr_kHKg6oaWZ{s#^cZNv3XNK=qSfOoL^@+^v>dHVN%hdY)r>|} z*Qzr}s*e}DEkPjGsn)3Qbe*Den-yj~3>5#9g!~$B6yXArQ>H39VQmE-);d>aUn0|3 z8LJYpuCy8DSPrvVy+^`Ist~KPQLdQwNE^w9!Y(UO4HTJY;%uw>FqUZFI*@2lsQ8ZE zE;2)MvZhl%nv|I)%bBD@MDZ$kwRpXEjwl-p9ymEY(!T*1O0I#q1)1RCVbnW)GS6!_|v;6{aB0Rh0+}CJWVku=wm8^?&vKDKs zVO8nXh`Y*2P*&SAX%bsnqt6OaG`hSz^fUs)>@m*Iu1UZodp z>BWVWXFaYRwm23+eCTIObusSMr&TvZAplDxWXXU((e*NlC9YOQ=jK8QEH(Jjkk(4D zUtf4qWj7a+HYR5gR9i`Wue&A#dmq=icb}epdLG@mM`fzEDt3}{F5DI;O3F`S52i=I zzMXrNb?)(}KAn4%7MwZI(@hH}H5_6B=1B|h8 zJnMXXBf4qlD6gisTB5`O)?MILV6$^oc9zzaNU4ht>fN$!tlcqi4%Hi2OaztjMyJP0 zF)|lvhCvvXfp2x+m%_-S!#D~&SrX(?HYUMhS=Ng!dQ`q`vk{? znZ9A>*f7&C%p4zP`e(LFbf3!k9Ch*dz)@N1St1)3UXl70mLIG_Xhh>C4F|)x$+|06 zmBa?R{pP$k%f?W^;jD~AV--Z&%;IBDMaFK<%~+sBMauPXyhn$0_wJp}^-1T_Bk!Fa zdhhhud#4BA`?z$CG#`5R*Nq~X-r_pF;aix4UErTtHR$e*l>t+eELnAybGrE#wyoUc zBbzPGLe(>5^dKFHi$N5-V7O2tp+B&OA6lKW_Z0d~kJScyZ7!%5#cAf5*krVO1K~zX zQQ=r7i6|Rmv8rlWfNKb!jK=C^r-10NWVGl$yI!b&b!`m}({5wvZdVDn2%L>VT!W2Z zG$Qis{$`wYN_ABg>#CS_5q8RTzJZl;J$o>$Ha%-mITIASMJxovSx!PRmTzu%C?-xEVi&(2o0qy3ofV7_o8&~icBllYFz_t9QD?{Dww64*$KaI{sYQ!RyuyK} z{t+d>Psy%k4Srj>&iJVu!s% z_cvsJ1+-|rrekICkg|b4VROPOA0_)pRS1l^S=x-&uvsfwN=P;`9v#P?Kigo^E_$H* z+^k}fEYyfCL?-o`vOHo}jQ9jMQ;S}(^*xqW>RB>NdlY)(Y*1=9o>A09B|2Nl@+KCg zw)8c!vW6(Av^ot>v4l(NtW?5eA{+lYKD4Mn3g2AsUE3Y zv${L%mIAgRFD?aa%~i5;Ew((fW7biYvl|3QWN!)0kf#JfR9T!@jKDW@S21o3UPagV zEPE2zN32pt$0L%ch_jM)CsUp5&MYP874>CyU{N^Q>Zbfg-7sqF5F4B{p5c&ycm zQ5ZcVs`kqJRItEA@X@#mk7InVoZS_=-O&UMf!mkcQp7+Cw#}s_i(Pj>xuxEES^GdrPCXU!FW< z7^y@OR-h^)*@@9cg=IP(y%X(JZh;jQtrp?9jqpt9#t>zLp*R&K2+lO`I4_;YRl!ll zqJr9#6@<3$G(Q@zDQD5D@?z&fcCfTqs%rP4qB`+17zU{96w|8m&WIM*mDxJjiEB;v zyS$M+bQu+^_loOe!(n8yJYFghK8tjuZFeD}(Sjj^h7LU^ddAs*960pMKm9QpwVLXU z3;VOm0<;9%RgJOCN{+J362}q!OHB;k>2#^3%0?N2^BKxOnSQ)dozpG7%Hry11)MG` zuBLBfOiUT`E64m4S4qg$xb)V5=+`)984b%ivl)KI*(72z z1KPD|R9BZ6vt7y-kHYt(s|k;dmt!tf|(0vMwDUuv>p#NkOzIt zytP%MEg7P3_yF0(rL|G&Uz9#EER{Vfhc_**fVE|a+A@YM78s_(Rq|Pc(30#S#xz0_ zT=rSgs|!@Lq{g{9!n6`RsCt$JPa5$#+USqDTIWVorOtrhSgIWNibGUyi@B+T#_v>& z9PMSvoR$+MV(=nP(N%G0S%YNs)*H#Jz&w~JmPfNOf)kxl#xeNgX*5<`#kQR&m^N+~ zAeK$2pthiQS<0jiOZRAHV~O6AsZsIjsQ5Qo!zJBp6Kc5C>MY8^M=XSfmRZi|W&I-y zS#43qV*R%+V6DQG7LSfaWfVM+C6JZrFMQfdV=OxAQAU{ri>ug(sfb~YJo=J#qq-h3 zpQ!jG$5J&a=SkFf?b9D3MYUw1=V@|1krx6G{WgBS#^YN(}hFgl+~od$*wdNtB@xcj!<5(g9Y61BL;l-8PUJsoGJ8Etgj7@aNElQCQB&~&`n zMj_KAn@l``uGe&|m#~}^^&l{JE=O!QJ7(cL01u|bn-Lx|n$WDIWA(LCfxRb<-J>t6mHAdUFNKvQwb60{ zS6Me{Up4q3OP=@{u|T~GamS=HbVQLa$>S(>b*_0|FEq=R7 z9Jfw9qDs^RDB)&CU`ms$TP+)$8`1C?8uhtJ)-bXsXK{&Y66MTUJejv{UHNRSLul8L zj1?hxsp?VHB2IRd9TRMq%pc0@3SyiZt!|Z-h<_Xrk|K>t8x9*{qGQ_bs8|IX>T;Vt zn^IUe(6z>x!qCaa@Eesh|v z9Arz5SU`ONj;$2Gh9SwK$P$nzjxe4!WF|4IP--8U6$Uhl zttLmuYj}Rbm?TO@5v$~Z39esNB&XZ(af3ubc7$PktiIj0CzFOZmgTiX$G!Wpaw}yY ziztuyGs-%JfV5Q3^whFG372{rl=c?Ijn((rD`t*I&Y2Buh?%g$vigOfV64c?PWuX# zC&NIp)lOF0EMgNePG_(ZVE?hCT$G>a-A%%_amzE7&TOoV)rn)270S4uVsqtcb4sH;24u}DE9E5HBhC?>rn`n`uzWgQp88m) z4X2pDN2+Gpx-wUY^Uv%_d$KkxNlGLs(Uy&+>?9w~VCm39W_>qTq`Z2yGURtmALPec zhd4H=K1a7c^)!iPwM6>rkn~o%XO!~1*_qj%hT!!73?7t?)Uk-l>!W(-gf-O94$agu z+(c&E)0KdBE6i|D0hC;C6vJR^Tw-6QPMKN5Ws7cQC?rj*I16Hkdd>^5BWJ0Q7)rJP z?YS#Eu@WBv@U{4shLnE#SEH`jK!6Q0fh27$8yuLloo~E+L32_OS`w@ zm9icYS7e3cW@(-&GZV=&%UXANF^^hhGr%?@My^xlSk^K%x*%b4V-d{(A0FzdA!zR+ zd>43T7*$qXJ<993x09z;KYsFbk2<&zds>yLh(}Gm%Bw45y^5>)^y$S@X*@|h*{kr> zLA`rN`y35yWPD^rygF4br#ySuZA!_-Yg0XX_w22wTqV5HlAa}Aui9jy7e}WmYDdMW zi!3MR zJ+0MKR?(yIDVh=c*Qan8E`TEW4`p(x2ujXD|uf=5>jm!Xj zHr69vb+RjK#s&@x3l+8}PRNvtRFhP+yBlPXh)D5gt?kieJ#Oq0bMJ8vALpNK9zJg7 z@qVG1dHlTN^KbUg?tNI3nRonpK-tKinRx7_$AW$7v1{eB_So&mQfd3KtNMkNR`r`A z%}qJ(#^ZA8Qj;n}sq$h!f4F(E->QD*W`AgtS=DdSalj`@h2dG9QQ?(i{lVsyW0&{y zhneNJ!eFWJuYSP))sG6p(iP0QKC_OY<5|bN*O&I+>$|Qm?VsIb*7f}ofZ#+xtEjKo@egu^LU@g(M{%YuGD(G z&$E4aNw>+o*ylCwwQsYq*8{!i_kmtd^wJJP=wEv=s=r$3&?Y*UKd|rShmpM&-*;>> zcV}wu1E~Vbpxx3dKV{Kw>6LB@w4rG<+Pb}0{sk84b~^G0+dfwO>ZTr0bW@LIJ+mlU z@vEjDP}F3hP-OqiieJs>0Xt{(SlWXjF15vjvx?{S@Q0XrQhaV$JS405ksf}Ld4%Gi z@w1CUgrY2j2YUGDmomeSA%ak079REBQBeHgQU5p!QUBwp6-PnoilbH@WktC1 zsErgmfF7E#5&j397v$;|az}%ld^>YAE{ahPL%Y|W1>~>!_By(T4JG=WM z%$>Fg3}A8hXMgUG2+4S;8{&BgGJ?kC7lpu`-4M!71^&YVrGys$)(v6&t=m1_{iwOe zws?+fG3qLJy{{_+yRYl+BZJ0uVT)bA>dI)oQsBqgEq1-5D>UBGb={G)xbDdHM=~mC zTz}+l0NSD?W@6XBb%oBqbzO5LV_9SIhB&+t*?8Y~h4k;cu07H}->kKGMGo(LXCAb- zy6fB{#4_g|as3fU==vi*JOa&Gf8^IkrhS50*ZJlyjO6An+q%HuZC$o^fwr?l#iMvZ z7sj-p%a$%w-C~Q={HM673nOdlvbhUNw%HatyP)v)E)3^(3(c6r!cJQ{(dCv-D?8KX z%Fb&$=XANS)5cD8xv|shouTM;Tb$`~VW*Ee(d9>-R&=Jz6}C9+a$%=WJJIE*owUvD zE`b*TU)34TuCkTV_NUBW_tRZJg{oaYz3On9zv}S24_B(p-G@IVfTs?>u2Y6g^I6Bs z4+Z=3L%%pQ2l`D%NdKmzLLJTE?&wGhJ1jIL^|OwjcZAf>E!2?;?k)Ueqq)Vl>nH^J zz@g$FEHv#F%)*YVJ3__kj%%c;H61_bm>~xFFYNfVkn^+@7lp+cPOdv-rqrIh@sRm^!QRZb&@3i( zc%}n{KGWgT4iNfjhus}=2wm9W?hX)ow-lcn7H0@u*x`i^5c+}?pBENq2wm9WqYe=I z5ye8NYds`%VTY$WK<+bwR7*cRL3wAM&r5rx{N zlMv>-qAfoZe75oy{ql)c9tTYhb6HSGEteC)_-$NO&TzpXzMZR`JG{~$S` z$$Z%VffLdJt(n;NMxpn{wokN0d{4A}p=}NaC$^p577k9A;-auP!@-GdZ;)Z$AjRi| z#TgDxZ2M?iIQS^VB0kr8MttkqTy-FwUv=Qt0}BN@Hq?E+&3kQfC|cO&*)~x0tP~f8#Tkkg9>DkBseQoAHjHOxn`@fYKH%>MQ2Xx( z%x=SYX4_&{+blfbg##GP3kPT=Hw^PxaGRmU+su@_Y(h}9&w@J*jooR!HwgKA!|U-H zgBl%GF2%q(Z;Y+oZg{~C{)>gRJRtCFP7TQ**%O@g+m>2Veu3N@v z$i;8a^ZKo^R){H@hxU15pU4SK=81ha?Sq~9(MT3z7tytxS1W!Z#BI&5hO3kYPWQ`X&)g`K*SCC|ah6-N z@TxgZI%+=orko1;s9gxiOZv{yD>BPNgi*yq0gljlx zoO+R=-RpNoFaT1TQyACVcMFVk!^A*gTIM@uHZ*TDGnS&T)$`M>&ev8KGM4iVskRD?>#dCCd_$^Z0p`Xc zZ(Qr2F3N2-B>SAOgW(w|u%LlkvtameLrTkt1|XS*bTQnJHhd2YAGyeIr59W7x*Hy@ zGVGk=`esaDsJunztdJ##l<$H;1%_05EOhLVGK4MSDHQR%sU4I4^E-i%UirO{LV5+_ zDh$V(-fm&6(!aT7XXO5!5owOg-{9IXL%NX+>xi9^O*S4er8#nW{7688iYWhVTAd@wmib* zwEVd8g7l5uksvv~$#C65b^_VS-$iCYYt)dw^PPop75bw>!Bi*+S!2aw9^V;xerMz- z9ANOe&h~Xfh5I)kV2B}wH#n6RosVqMxqC8=LG#yq7ipFBCU{-@9_Fe6xsQ&97}95( zm#P$G?@0cn)0I1=KAj%nyZS)hrrQETO1EvZx=rKI@f~5)$AldNSwhDJhBV!ASn9fD zFG{=pN4ndH>lVlwx*cptn|B-H(CyN&+dg5pK;f9ndlzB#3nVsZX7OqB`;PRbX7AcmC z9*|;EQsyixDm{vFo-cO17CVZDb`-^XJMx8rIi`!9N+UG)t<72SgMYQbk#0ot|0uWn|V4nGHy1eP#W<)L^S|N8~|D3JmF&WD12IiC~}I z5qW8clECF1MIl|gBO-f?QkOsT+2@g6pG&)>cYPtvkiPL{rUQrcEMHpIYx)#XF8qe7Yo7LSeHG#*%okP6b!3{oZ-2kBDEh8R*o8k|AOEC)cEM_G{}6(nM}kR~GZ zNJQYz0WT0n=-pl1ooz?~Gln$$K?c&;aB-6%BQ>(NTtE9Xa_47Ki}baB$rMJq=3jQ; zhRnADv}|&`vNedcKa2d8LX;@1fsm>3l>$kr$^@KdjquslWfSGI$eW;zFr-ug4TU8` zm8^*^#2+H~Z&P%>A+`7@tiw--5uQ-;0B8kd)mY(#J2=mBik*64Vfgybz zjA3DO!_>V<`7FSN;fU1AJqI>ypoU}BygXV63$yEFfm;R*6?TdXYi2>R>+jjPTET}( z(4K`N74zw5kzG0(2FpmTqJN&LVMRA_d*lWb_-sSEetV8`Yb%t`Q3WS`g3K^O`l=!# zS~71bkkr=B7OiWW)$jJmKR_F9NNrt2ONJ_G?nAM|A0qg#P&C4jT6{$7@HNJPX{Kp= zK)hScK24TnEMG&3T1(?1ZDD?f-Vl1vVm(9?p4=YWTWU{&vQBZVPY)jMKV?!9dX zZr-*7=e8{*Qm~3qoNY*<73V`JYw6NFLNIeInFSg*7zXkHV;N#dAJ#z`Pk@pio`b^b z*n)@UfO%49!Hk3lf^_iI2az|WC3C~($O~H}^YFIF_HD|r9E{;1#_$jW-sNBn3o(X; z7_c!1qcFrM3^ABBkMLtA_JPtTS_1~8GvVO z0m^CN&JUY^Y>uqrmkkFC_+y$J9MZD>gUD_j@he**A8eHoU-wbuAv75kvD7+@;l^PM z4>8gsb{NA#jA0>0dc+Q+FvKVfF=WJM{?^DHbgjeum!-!IbN!Y`!`4WoUz5WpXNPGE z7^b7vaqinKk;$|)Situ(h{2w*(YkLK<&&Fad|S3gt`Lcu>$gQTo0xsvq4Lkr0*3z0iNY zt0*8l0Ld|eD;dH0u4+~_OH&SZ*t#!mZrDf+KVyRVdSm3LCGfT|E z4UwS5@FquuWV4HqhvR{h$BYe;IU7VCfG@LZ=bNP)B5we6BA&ESM|gaCILA8?+X9+& za&k>xzcF$fgbo()ecGf3(hP-vV9(p6e3I5>P?y28LZTW&W?Gmh(-`I%tmuVOqe3$8 zY>G_BRz?`qWWFj09$=Cvh`}&csHTWlRRKBV;UV&HN}Eqck^1{!yBBaEm^SJpQ4m8>z51Dp1cX z{V?*Xf=L0hi#0(DDEe?yA{2IG9-MK09edcb(hmr53nzxT9()%EkEg7n*Y|Zvf z5h__-aDo-Rpk>&4g%i37gWDe&A6u3 zJbZ!W&MVccs&i<$U`hg-rzDmp>0@c~sidX(sU*K}k%^v#9{XpOUGV7zQ2*%#mn5P7 z5?ez8o#c*M06S_|jn~NDtQx;@Jb;bkCrz+`NfY?KeAF~dm}3E9lbM#GWiYf{l4PH* zE^J$ZqU5%eg0`i!bwI1euOF|V_2ad<^a3ioRfwg@A=)HX?TD4ANr)X05(_|y9T5@> zK#3g@5}RImiCCn~BHFyPHfY>hXD+R6tVO{aYv)XmdnbY%GA1SNOo%w{WN3)vspR%r zF57Ew9~(5z9%CLFyNa=pkwFRGdSM;=gBMMrN#IJ1)k7zHOF1bdi8 zvT>&QXHr_6I)<_anwXmVw7}d|yQ5b6*`XA?RR;wtz$dd}{HpP^YKcz_k0~O?(=mo*5!})YP>ESrKdru3D|k~XPz0eZ43h2Hs-2&l<%tgdG$ex=Xvw$7u1^x6DJ6P z=G`$3^{x)KnYD4Op+wjeS7wY4>OQFx4on;K%or48+n8_0s5X5=CO_d_;B{>>-;BAu zzQqMzLbm;y%!2x*^ZmZv2-!kdJv;4#Q@Dy@){Uu{trZV@JjGZ)gKUdyY zF&-K_X&enadEx2{xvai$F)T#O7mt5hW&ZW}c^5Ilc^6%OQE(9<@!E?v$o;(+KYuX~ zQnIMe&e~`rOP-(9p*Nq@%|x*p#+Yly-aeN5hsH`@+%Fc67oz3YUxWtVf6+s7dFZ0G z7X^*a*3sj7x!-Wn#}|R59W&79FaGReZbL;7ucw|*Hvis7kirb%CPKTV{*L-!JiNN2 ze&*N~jmzt18{ypI@ry;yi^tzTUP{ySo5^+4L_?-gTL}>IG-K88*=)5kjdgPbd5$70 z-vpV=hKs&}elpLaGm;VdRQf7bq3@e9m)7H1F0H@3KDYpiL=?bvAZEtJ=-=7s-@J>} z+;`&` z$-Ngoc%iDR`ATsp(yphCxo!-NEELV;5ej;e>G}uCXmrJebHOtUgxBZWErS&oUX}&Y zuHU?HGkt<}D^@PFystR6_nqh4m{r5_0{Jrw!N;`^|D<7+3&J6!79t4kmu@bX<5j+^FNN$%iO(3Wrjuy51 zaP*{#pbmYzqGD+UgIZd#q*CvfR6btG{mYdPR_XnNRgYB#7h@WtU)g^&wN;ziN|W^W z;piQsVeO95-;K_@$gA_Z(lkF2Kiqs;vAmMY%a!j}x`M^DshcXQR3B1<;k{VFugw>N zwm2Lc`Pt;n4OI$Koqf4-Y8FW7G3zQnlJVY9b!(MXoQ;Yj5z!SDH_@gF2r_m_`wJ_V zz|8bO%(5%|kFN0HGU@FzeK1Jxn`xib8Zwt(2T<_^cLTUX4JlyLc<(0{r%OJgWUwLC zl1E$#^iivEx{qHaT})<}Ar+*X{qP`zLn#szt-hSC-iB^Rzi{4ucf< z4RieG=DGaK^Q12er<3omb@?d^{6`mr@CE)WVSd#DA;h)6z@I3L)A3oSvKMmFTw=h= zrI0S+n2c5E(!8Tf^NudfJGwOQ=(2E2m*yQ^nukR~m*g|nEc_RSg@1BysSTNiS3?-v z8u$#iAw?XfaUtx2#8=U!^9`x;P=L^SpYTu-<_SMRfap2%B}01Wd{;_l1~NR~kSeRC z3PW0_KvLzo02$le3j~u?nXi~SNPr>d1!zZz^Hg837pB8&l;7$W8Ovodmc?W&f5}+p zlChi>i0!e^^$5guXKfE7STWy!eZIe6jo0WMcEmRgzQiQ}-kk66p9PaC8PNJP^h?16 ziX6;}>Hag&C?in6@&0sw*K}2IE|W2hzC5^{;m-$W2$C|C3qIRSa<@Tou#4F<{D%Ou z)8m`>W{6F-4BqNv<(vrsMCNAJmHx|Df@)s5(tlesaOE)sTVUR@aw{+|T;so__69Sq zL=>`vMAdm$`Y+_v$N?*RMMIopx&KQ4F|c{$JJWvw@DPi=zIi7(;6mwJRKhj#?L7Z7 zREbl5*ZA)M7AEj#N9LOySNc1ZBGMgbEKkL(5^|Q?>e~pBER`v80(B4TeKYYY|FWxO z+@w#D85UNyL4CTD=~wwzD<0_;c&6bY-te%K;bA9atk$^wWZx{f%D-JJlddGgS#wLF zyhtG4&=35;tZWoJgA@#lf8r1^lUr2=*aiOtgfZ|>eO?w5gidp5L&joh%o^km8EUp! zW*c6%y=9r1WrSmS*xTiBn*+=ZKD}WYwktB$A&{}1kg+|GvCWgQZD&nbj@2?K{>;<{ ze;&=ljRt=KnIVSsPBJ{`YVa2|_(2T;JJ+c*{e2skeRA<^U*4sG26&qVuq0#w;3?XW z1%NhGJPQDgNH7avY0UsUy97`|ElV`(?nM-rH~NisCgbu5+=&{}e^?MS?wTba(yM2y zRJkB>K(Ow?xsoBhex8II;Gw>e&#<^z_eh-Kl0twHxjRa*ZOB+VTa4V&K*lNJh)@wn zgo-#KWDh6#br#Qh$|+1zQHF`05E7<6rhSuY-_P2<5vm+NpDCgw^VDqrZOwddMS7kP zaTl^Z&pbTGU#b~o`x-(%&yXTr)3}1BLIz3R$@e_tqtqTH>C4c}wt%IX2QWIN1F=+*u`(lr!0wmnz>wmJ zbnWSQsJpQtVc9&i9JEFe?EAfHkMNCC{WJX?&~UD^1u`)34Tw3{I0l|8#M}el&J~*w zzMY%q+gn+Dlf2{Gxgp=q4f%F%$hUJdvJDALix*ajadBA*Z5rb|3?=6aNxL=UNMemT z$G;a!&KHuzIKwc9jAK+7xd3t83E!%5YnC7Ac9^i_ZKld$=6#K^$T(>X3#BnE>||It zzF}b}ZrTb}*mi=|V(7SPQbvahwPQ4m*TFRU!}r*{?aAgtg%lh+C<_lQR^WDM3U_iB zt$J{l-+sJ16L!Q@)91)WuWQTeev5mi1Z8VqGr=Ah%Ppi~{O;as+9x5*aOpXR2_l?5 zLha{j)>!At8xymA)S0~%C$u7Aqu5_js3t|BniPd>EDF`6NP?(oIuExDo=yi*x>9pW zmgQKp!Odniv+ElFG92^Zuw@su-FU74s`~5qoa0u#G!9&70Au@M1hn*8e;Ic}1pJ9) zWDRJ2L(AZn40*mA2tRb328L?xCLpF>JMECMa|{`0uAb^aU;9T#k=J>beg0*+R z3v$8Q`?@*)cgU1C)8_fNLY?;hmBSS-*+{EpaAAfaz6;Pe?~x6(k$ua+?`>I@iJ8s1 zR=ZnaKD%4p-x_-FZ@r{7D=KzfmbBgsKnURvtS?$&TVJ%|%=j=)dv6x3>@yiR?7w9H z19WrKotJEp&z9$s){nK`6Z%-|CtJ5mu4wRQ8#Y6;@t4|1&n~r;+(k$5 zWJ&9{S}R8s>Y0Vp{MFOM50K7cRbOaG=UpMoLk2_UK>=E184&odfzK-{)BL#<4L76~ zpG_i%pLJ>i{6*joHl(w`A7)4`KHEVKKlD)2`h8%tHn3z37P6oKYGkp>QsWALaV|j< zr}%%JA_E{@Mur926o2^?HvlqoX)rSYH*8mnw}hwoPg84{A+@y_2AQ=0d1HEtKWD0x zlHNvUs3DaGLyAMj7}wxnY4C5<9d1Z%gN&2R8vq9zQfZJ$bgJJ(hL;>|gBh0PQaD5! z{5y3=7*g9H`vQ)_At8l?GgJLLXmE%j6$)iJV`g6N&$(PIK;t|wr1I>rKK4A--$6BJ zXxy!nJF_VSs~-crG8ZgFnmecZO8^%L_CF;fzC z7M49xh5(-^+fq)~TgpEzx7zn<`EzWRNmuBd;0y)lxzQO5ve3aHG<*d`afgIZ6h~uo zv0yUhaaxi&{fV;q<@?ron4>-xm|uQf`A_VveNJ#=`HJlF73J%5%Z0j3eHynef_7gn zV;DD~53tbgpYW(k6AjP^Sen*_HCy&0; zb$z4axUM1Pi?T*xz|-aL$mPDjOqPw$`$nrsEe-z$NxQl4FB6;9qp5!hA6!$4^}=7? z5I)>D`UywO%ZejqF0_(t?w@H`>A$*CJO}A3t3>Nbzg^`#2bnFa1xUL3EwMk+74Hg! zv}uh%NO!&G@X0*1R)C~)*9jWwH=A53nfV_Hko5YG9FWXX0V-V~IYWgUz`QRKz7=HY z9Got2j}gNfL(&BexiyN?1)tUBj{OJk%qOq=x4$7aP5Kl};cSr||1h)cUH|#_1VZ{6 znF2#9W9Br)TK`cp1%^}xKTHPy;syzVNna&H47)+t0c81R|H`cbd0?ymo@Pilk|{8x zv$jdm+HL+fnz`Xa|CtX3GWjEa2Fxljq{7N!V$5M6vzPIhmsa|Jf87^LXBThh&!6 zPz}j~1=-LnIV)#!|BEDVwIp--SV<;Tl0U99KS1&mmSiqZE6Jon^7;Q~B!6K^=JK_Y zOsXV*@q;8kXG!Mrrjkqw$-MYLjsH(R{~NWy#xrU$@m&=km&>qw_53fhbPr_%tA?{0Lz-9d#{!b?8Cj5#PvIo!o zrZ@an8IWwj1NkHk{0Ddf#OGiArZ&Sxyg#22dDrKkw2b?Ii(&Dhn>GHYYZSy~=Nf(CI>q7g-3KxS;0Tv&lnm+0jatU#VSFP;S2y{OZ}RoE zGOq6kY>$EF4&1!ES|%zX%u>x_))E~wuHhhw606yUH9BqalKvY1HA^>_Tkzy;wJ5!c zw*7r^;nE%#h(_@(=|Lm!tv+hqIUi5ZQ7Fug13ZQS$wA|{b#m@Emrf_S+{?dFdYts` zx0Dnv6WxhW=OGA37}Q+gkCgn1)yP~Z_Y5d;JyK&Zwqyw_dBg|#*`)|Lm z!$9}{vDx1z>CHC1k8I+Uu>T6w@yunjzjCv0YNQ&ORarO>ZuOtr>gOfAV-9aJb~a?J zxop%s^T})e&exmTM`R~&&B9E?ty!cEi!=*^;D~0q-mbGSDKo6X?64)fmmZ1V zCcf_DCw{^y!Olk>eU!cl$UVL9&-=@>O$KTSX%2;^op0q<=N^eRM+9{9JGqG5Gl=Gh zc0A3YNSqNhhuXn4gQmxcWUX*9u(c{&Qhb3PxUwOjW^Lf7*^Ho(ApelX(<(kPKPEaD z`Id5x+1Q0!=S#RHQRew#n-Wu?M#Vcez3J<@HLiC_HqvCcKK7I)}_qLwchWQkU!V3L{mmfpdry)(TnHEmMP;M5N4v9~(bnv?AoBoGnIDld)!$H02?-GbpTfqP%U2qWs28VqOMxA9=e1z~`PisH*hW~7s zf9VZ>h32IlbM-3!9t2k)+`B^rr>zTEwDR5Ub zl*`if5?zvBPE2{OA$^I=IfitLLP*!J?jCMPw~#s4kbb5RQVBrMbpa?i1a9vF8DU79 z2s)#NbP1UehV(^+kiJTWhlMsU9l_CmUC|F0aU&6-?8g-+3<|U4E1F`L2AQfD;N7}j zQDz8nA3$7zxowmG92DSW?_4tq^cT!8A zA^LK+K=DWg%*Ly(S@66xPpR<8Aw>;HcYrj++-0#j#NwO3ulK(K2pR6~c|{==u!}zx zZ6){T@gAT5rcm^8ND+5}d7gM(-*C4<@kj-nMG-wwDik>+-r!&Fe+JSJv)y7VMGYVL zPr)r^jLWCb%5cAcvhxh-O&>tU7a+S6~-8w4;rs?8(!Q`rR;3euu+lR!6fb$0xmG5QumyUIH*CX^y-kJf^<7b zh{IyLGew?xZms``?rsr?FW)Ndkuq)kgm7s#vHoEvAJ!z|N@ErpFhK~n_TE|Re;`wv zfZqgcCrj|r!X+D+C+3e4WBLrm^ zO)*Gc)jFgrxA?pubb*wU#nmHMChE=G{4ZppE=W(*BC<99OqQDAd+p}kHU0-{e7<&3 zFV)GihK94GtVkVLhR-6~0(j)b2Ac17^I8V^>DB=fVSVxzU3Sa{GQnNG8Q}ieKpfQq z2`zf0fl$oSXR!dgW&??zXMF@P_u-#uXmz7J_`9*yS}qV|BNV_lv=Vi?q1A1zBEN1j zx3zks72{de>OBExiR8z!X2m!DO*=)AN&iVEYDk-Qxea47bH5cJ>Al|}!-iVJb@OHJ zrD!rQP2nvrz+AtXB46$xy>^;~alLDrLnZUdl@`qPqXq{iGkvB7b6q*pfyu0$Wx-sh z&vsxkf1Pc?TyL1`z+~>4t6&*xdRG6Tfro=0Due!FC&QXr%Xe(tuz4KEuy5RL!CdWV z0h7^@ft?;1;BaJs(<1{cBWr{xz+B&L6j}k3(E$rM95CQ;z<|>O1{@9;aC*Ri!vRmN z)iH(x8Y}}+PAsb3!#d4um9VIc6|3Zs>+_Q#^8Q-$?PM!UvR0N-jxe7PsR4ZE%E^vY{H14JAP~%5M8!mdlndGR>(11WljM zkXL_q&Jc>oSbE4saF*u3%tvd0+_M@9w+qy33Yidd>Q9(7&~3(T$KUP6aycCWm&<{!SuD$9%p_q+Uus zP={vUc)5IpffU^kWk(F?A|TQgGZe(-egrbykYWIW#YJQ^Tx4`dqhv7YEy^py<#Pp* zV%>s{0No9k+*yoE+svMskX`hX;|$PMc33l3L^dN_SoY9VOa~y>ty3dRH>7G=z%2W; z7zREFVSElr6wEEsU~-)TPYMjFIzwRaiLq-j*Qa3yds)g1g@vXFW@w5FYxfxJ z4-M;DnWXN(Z6kChsRBdFxD=K%KJ{=QhK}ftTKTrr5B|CSkbvbP8FcQg-Lhvv`l$FM zT(?s{K3{GpNj83Uk^~E;i8d9w>4FSq_pF;Y>|6oNc>xM_0tDieLf>ltLGu2S0`tJP z{-WJ}{;*l5V3sjtAOFtJa>NxeYcx(t7mgtBgLNEeYs6t2kHxVy2|?QXE}jWg4g$YSWOh}=h+BC@;FMdU7< zm99m0+N`h^xvMfoWap-f$X%Z)B8$=VwM%BT*cX{NWIKBe$K6i?lHPaG< zWE$1BNq3MLrZcqq8S4e9i+|gRqhsq|9UVBR9r3}B$^w!b*@6J10?qKocC=RoW193_*Z@BFUQ*#8Pd>? z;h^t_PTqNKjJ#mIkMt(9rf;Z#W@AjqeY+YV=wJaM*m`ufd`v+9Y{ab6&XbBVB3Z=p$5C8EptMQ*BxU#-30VecHf)qYM-T4Wib5qE=#`m_nF|?hnM7+%k6l3OMcU&NS>7Pv~yBq!DW$s8t2#L%Pk$PzA}o_ z7K_#8C6N`AXq0Iy#A4cF{fJvyJA=ZSN=4g(pA8AgS4$M+*TSg7?lN98v6U{Z+ z7K5}+k)fqK>6+hA(I)qw;N{OYBuALphNpwJd0B&_A4LA>D!L}zp%)Bx? z0=?;vmzvjRM=s~S$dJ-YB*AkA?JSZQFZh48O%ImuAc=nOyejg+)nfdFB=~j7%#B=w z2V#=V#^BA=F@$G!@n-Xir|?`h1A z#CF-z-5Js*|lC{X%M=BbyA67igHb29=k& zrOvz%yX9regqN-eYZuRqv`kD$L%3ZAMZD)bGxBUsk=U-KCVQX8@|u_5WMc!N+a)|1 z3>WOs{UQtq0BbQ=Lk#J&4Ux!&`w9Mbro$nE|G8>8=@oOOOzYTMv~3#iLHFDaf#z)w z3Qs!->0$<53^kj385*GMxr2$-!nvxcd-7|s`pNh zJQ(Jmm>zjX^Y*bEU$E9KvaDb~jOXRET+Z!@hV7I+HQ^|ihj;pXLO6Kqc&j5E)dBMO zPG5e`APtlwK+kIH&2U*(ytAu$1Gd*(OoZu_kUk$^BX5{A_qoYaD3JpdEui-Z5yGme_7Y zG~xf|9q;WvEy}$WW?;~~>==w}*)do2g)`6h{X{OG^u765{kX%;$F4pWH@EuOcaCi_ z-kV^*CiBj*AKB86j=iqm{z>i z77ciMK=WEp57;pPZ?$8<4JS1(y5XcXBCRziZ9NIrY(;3$JN0B_Cm+O^dh#nLw`tsX zv7Xf7Yu#?(Z=HPQDPUiD%5$gerF8Qtx1S1IZa?+$Q}2#h`bc+Hl%lN*hjF zc^VGIRRIi0%SoIY`o4o#Gi zp^7Rt=gFEupAG``Q6qNNmliFjYGLO7%r;D1DHQ($sjP6SbZ0a zL0bng`mNG*Cce$?!ZtpH#>KKWrY(z?I<)yADkLp&mPLuRERdaL3G$!~gOK?KwXBWy z(;V6TNZ$5UWx@k(D?Div^@1>+0hf;Sb)?%$JPFrZ+(O{xA%FzFD4=txTwIm6V~O1Os+!c26C^t zcUgX4YyD7Z4%|H7@6~=N#H;-#AIC5!A2;u~pq_QgyyGzPBD49phmS|54(yEhehhpkQ<}qxV4qrKW$I0C7IC=NUTDn_on!_Zge0~ZO!RM!Z z{c9b}*T4Sm*ZSK0cfX!`Dg_Um`oXER{lTdpovK}aB<4KSOg*jPG#YI%4-R#ZY>^n634z03pvI{m#vu^_5@0_}I-?take3|cizW?+5Uz)0O zPn~n>)TvX;ty{NlYqO8$OzOGk20l*~1D_x9ykW1fUKM(Eg=X<=M zyggo^Ikz@rXwIb0d*PTg?qe_Hy`a2#FVLJ@1)fqcGS_i68P3=JaLP}3CO`WpDX2O&6pA`K3Cl@}2GcSB< z=~IzEF+vRg>4cvOe!@=|iLWpE>9U_Heah3_o)&z!r^h`F{kW&Io>uy^PhU~|m8X0C z4EkO_>-#gMU-7f8KNI?`Kie(%-9OuJ@##OG@N<>_^F==w`9ELwbEV(?%>HKtzyFyt z&rly{o;m-Fe*W_W{ww&4|D5+M^m)&odsgWe|6=Vg1i$tdd&G_R{Nlhbls@&j!OsbP z@N-k113%@t8P6&H+H+qj{>$e+dLH~o&-Z&?@w=bj|Geh={N?A7fBE_A&#V0PFKm86 z@S9)Q_X70$Uij<cszd7fzZ z^BrFxTK~f563Ku|{@R`juU*C{AAn59F3YEAb!x@iluzz`imR}w^$ubWi(qizzonOqB9_i*U7ClF_=((lOL9UuFeQuwirigwmOve|xyx>y0 zyfDU14(_s1Li9s9I{enQCuxm=ul|&)4Np^rtuZj&YHO=YYn13A9iPl&h^9P0SGqQt znGmT(T3d_QGZ{?Ylii zpB(WNzBuBk?59feCGfafyk(G~^yOpeg9II4m8aAngBRr+vi~F-`yBX3_AH+dmwVf%s%f1nlBaj;u zOwL*VzT!w_yhXE!0(B0+M4lop22ro_H`P3lEbn;ODfXIU0J)XoqOIOqF3 z%ObKY?zK|L!Qt{@ihU=!(>Z@2EG*v1l*4c-WPFuG@q7)SowJQ7W%5t^oz6%);TixA zyF25rKSTDpY@9sfA3dYl6U{ywQx?aY2}=t@I0Dt%7{ZZC#x?{1SYqa#l9$jo75ZT$ z@o3V~Gg%Gj-4xi2KI1Qdx``oN3Gjv?M2`~hrO45q+?sDW;~zskEvmcVP|PsJB*Z-% zm;q8)DJCI29B2}n!5qr-dz_Xu!c>4a4B_e1F{KrfOj0PRONp&HQU{RQ)DVt1ZEKEr z-f1-*krn1@4svkRT$o~OZv1I~J}kBb!G)_vE`^7gi4qm5#*}N`@N2SDhj0r3XNFz# zwqN6ML{2+HeBqiWUPQF&y4}7bHOSAvxd4V1hH%n#xrryVL}3{n5g(Gf=FNbpts%5T zL8)S8H50NakZ~5vbuU{ps2My@D1)**zRQ+a~gH~Ck+FRw}p;jODNmT@U9 zqA5{xz;z8S`IwrrH;WR*n1hTnuXuB>h zO|G@niFeP$ZHWqOOFWS%35l~?>GkYZ>sxWXzSUKGeYMr9*SKEw+JM%Y{zdC^7TDV6 zOdG)znq8UMP3AQz@m|~y*mpax$&n`5>{#N}M55WPmbW6h+A8hWM5|s~_Zm^h);(IY z)MX+(r#$t_@FsFon%}Z#qF6OVViLiLAtIDyI3?VGFDl73=B5@Q6hv4Aw z=&+!&8ij_81x%`86R7=V}swFJVO_x@%u#hAyvR9nj zI!khY+I;);;>kK`^DIOa2zl`-BB9t6%~@A6fbipUiD|FOZAjXyX|Kk=7x&k=sxL6P zN_#auxO$$e<*%-O6&K2V^_WD*Ud?+|?`(FwcJ4J9xsjqt?NHaGqf$a-XJ{6=O~nK| zq+O~BII}-QIjdj^vkscF_1>47OTK@gk-GEL5DAf^QEAR>VIOotdZfN>rb<_o-DYEf z4roT}#k5zmxb+vUsr9~X(%Nv9)@F7aIon7i>3<_+6#bto>)VElTc2pnoo;X?OwqJ7 z@`v4@%G$K0PDC=dS zGcQkng%L!$3^Talkr(4T#Jy6vc1NE>!e8G1a(HD4vKt;0ntgA7%WIEtifsZxVydB`$eAfM1Q{K8NC*W z!VG?i+MoQ=PKhqQG_nycF|yILMl`q6jjlHWncjFqW1^#t2mg|^!M~jNORlni+5J~U zslS>e(WGCk`xR*eU(R@$t1~ZmdWERdEB#&p+3%HUT-kmpr}5Fo($^1sIqPNV>*e{f z5hTSBTyUpGhqbx!uExO#w5#zU$^Q^!@@U+)lPxcudCC6?%MHKG{v~k~i6p^UNxs?h z(y^Ds^OCX1F?gi^luS=IN^dL%z4FV{Ux`6OB>aMlYVu{HKB9@3v`^y^qREKH>5U`r zp$U3+Z8*4L38`WnTI3FHnBCC-5l^+KY~m;qxq=hd^Gya+99tc7Wj8$DP)?c^7a+D= zf`m(O!X?$^n}rQmH7wDdW|(1CHT<+86P`~Yi?naA{laWqF(LANk=B4>hiYA@MSHkV zYh`U5eP!)6wQYM?Q+rQs@Ox_KftNh=2YKh(xIkx1$32hI@zGT1>?9>199?^MZEP~T zc1~^oFEvO%#HE#St5$Yx6jae}jox&vohkI0wO7=paGDmb$ykwi#G^YOMW>yQ_IwOo zdp_3dF{^8@$ND@DqR-=fAGe6Uj}Lqt!hw(P03UD%dZ~;S$msDH`Sh?dC`YfydOr@L zx0L~+uP_%>!5n+^_M<3y`_YugD*ibx;f`0??&PgkhkO5legd0%Gfc{3ogb_G7y9J8 zr1yGk@M8%1{IO1t6U}>kI}ufgmuSCYEuPt_WAh(lN;3TM zsgHxVrX2EEuE-kx_)HN(htTV>A&>F)g9CL`bOtbo9zP>yIrI49`m8f7uD_(dHP@2* zIfBTkzrrFMLlDE4`vjGq`^2dFtlW;OpIx7;?D|M~%}K#vD&;jNC7iN5VMsamee^%~ z{rPoSq?uoLL_O+kM7@>uP=cG`mG!#R2hl~uwnnV#!kj)BcEmPp6Co5!In9oI|J?Vb z3qJS#tKVm$r7ImnpBVatOf`o-G5rbbIQ@xPPw2|%-Y16E#a2V>j;yQW@wB@0>k9Au zx_#ghYlsz?hI=~o}}e)TCd=i$}oNI(19kj>r<{(kNg!oK&39(6J5P^1xc z5%QLhFR4$WRnu1M-Y5FjrTBg8rq)GXYTcoA?|F|oBTxJW8hyh@B{a1XT>os=)E!)} z&a6yI1` zZ;un@F7b7?7IdjUxPI|Hg|m4yHaTTim!+_)%dRa;K5NTbx_IDfX@yb?{C6LaS*q(avVx)z4;qd9WRN!VM-XdD2r6j%vRag+vW zJxQWNbM&-^fIixJiF_z=Xu=-Q(|I|1ZfOJhZ~~JZLwyD|dbT;7ILl5|10ap>qlvXX=`N~9f1;}MiK3-&=T7y_)#&0dIg2F~%ukh}A1Fqz5IlHr<` zd^#EJPA8w0k0Ej7;o0P~DWWDMdq7eVvf~``J;~ClHCgT;Lu|>+_NRqHQ-X`Q(qNQp zLvl2|Q;O#<`lNVdF#p)f*0 zWYdulY%aM=s%8mojuhLhRK;MDZbn4REQnU>(J9_!(0o)V#oH!;&_+2uvmtp`azfk*}bH%d>$ISKo_u>pu+D7Zy24LJqNha+5abb6dxf{$a456^3 zt?!rYSXww1K}uHoGq4~Zj}LN5%Z;)$4Ou`s4xH4oGz(dFM_G92Wfe;UDJ)eejU?jKNHUhXpDTe@hl-Qx z2(;F!apDSBlZumSDl9H^2o)y|;lv5-#1(cF6(^1oD^9c&4R6h%N6C?X21vYzefo2~ zFQoJfkO@Fu0foy<5?p2iTT=u?RJUeGLSPBgeSx=qfxL}QcwrHeQ((Hi(d)NK-%RI5 zPhr1(yt`8pP3?cx+4R*0WOX~}bVHqU^8-CUU+QgL8^G5$*ajo2q0KCDIDzMH^vKA< zWIbwA0FT+^WjlE8ChtgYfWMPlq$Hc?dONgHo}TMC~{lZ31yGLTAS|W>vNX=x| zdt`~`+FUO*6Q)_bJSftFwNWz_G7ZXprD-D|zF#!zaxmIjeB&qIbYdY^e-8dt2*ShVi@%$+BuO^EFMf!dstTY{h1 zz3(!w|1#kqoV{EIcUvd`TND6W0A?zd-washjbG-;OqVDJZe|Q>iEw@^nn5)LfqcSO z(*O`SmAmxRcPP&<$|$Arj*Sfnj|LS$u#WTD5_OG4y!h;-F1Jq^BY zU1alo@1TQwtnm=+o>Efs*JL8#G*K_IeN3e9r4W*N(Ws?q;1edx&TS;z5OQceOsT8AbeLWJSn25EU6bVL%?7%Q{l}9e_nLWf;DRomrC@Sbf{Yfjm0g%Y#-Aq~O9bf5{ct7q3 zbz~l4&TjKI1wFWE=x%29rqbNn`%sN#JUk}j1 z!7Op+$R@APX1OaNM0IA10Y!Lt2boAhQ$wh3mMTM!Dr2{scU6_Oh2o#)+-mR3)ePy3 zQ1-jfX8&prBrXm6IF!>_IyFlf0`u`1T*mJ0i{vhbaQ7m6f+I2GIk>}%y}?VgphO3j zc;)yYC7*^$c`xhx@pZGlUnMIp!+`!`iFbdI6d5E)=(E(N<^Cb$lC)3Pdi~ZFE0JN4 z{!T2eKRbi8q4qvz!cuSAQdNs+?ovu-2)8V?-_ardL~+B`dE?e88PS4uLPoe`9c1Lc zWrMeGgQgN4-yo@k=Qda&#B>DKWL6ES_>qgfZHtwM2$N8MgngFc;ytLH9ZNk%WstUP z7P)$zx0SqIy&`46VsH9l$&V0v-uHnQ7Mb=c%p{D=6;`JUDyjTmf^FXMb*rVt)k=ta zl7}W#8+BFwFTqzRVv?lQoX+*=0AgP;2@B&!fViNRscu&mna5#cv0`Fa7C~Bzg2bTw z@x-E@EX44(oEkVGxR&a*mJTtj*JF4Lk?>x!^3?WigEAv*M!%M+Cv~D7gc)UFX)X?y zZ9ERvyWD_ARze+KHUv31(T);OODy;WnK8>%D91rMn~~;lBTl<3tyIb?4bS zwNp~i80@SKUU^NZS2Z??eB@_NulMdCqopD2gYef3VH$P!x40VWzUsE-!g}u}Wb7_i z`hR*q%ql*m>V4Due^@Ox^I9F)#;*z>bp%q`Lbbt5N9rE~sd47=dT$~r9Cy9Jn@q}k zk`ml6Q?OIy#)Ek+*tgop=H^OuuVRBzp@pptii8u;Y-<&1&+#?tu+cuozk=2sP{y?G zqLj8hd;^)*tYX>GOT5iXy!+JUKa8vQU4(v5pLc=XvcxO@ejVNWUmywmE#Z;2P$0qP zUo^ok7SIjhnB3>kb4s^B+p`xk^Wr8bV_PlIXfNbEwSeGDtXGW@%ZsbL~)>{4$Ie`Jj*%t_DMT zvy3=UnHhp-rE5l6nC!ZcO=P2_Wnzzzcmmx#-e-;?Q1Z`5K&e0LX9GB_q3qbQY;q%m zs?u0zl$}vFOq)@5c1&7OBg!sfQp*l0%Xz`<&(lR?(ZUsnTFXtioq+bY6E>A$VSH1W z{gg!|kg_KM{r4n*vitS~5Bl>2I?T@#mY1RNEHAUE45edTPFd|XXJ|f4K-y=pk{B*4 zm`h|POIx=Srip2$m6=&aw!GRd^L9e_GBkniWhRyhkF6rV3kjDJ%Kh2Cv-bm9oi=JZ zu#h|ra+6kO3CvdU)P#`<)X~UZIW>+75CLMjkqHYD z&}c!zk^~um!v0se!@#7D^p1~|E`_lBD4BH;_8Ju|E&+@N+0qaW86&BL!vWaOHOBjR zoL~q)2WV*sdyE$h;TQl;XBzKqodBlT%w5(kBx{?aJm4ASjVH$zhLF4{8c2Y2GHqc9 z$<87H^2oP^AtXnO1eie9Y?;-p6&V(`IKWIB>HD##^8`!nxzX9qM2fj`P-`Y7;|<+KSsd-bM6#~^^%ERjWc<+(`>TYhaV87Bgv*1IFnDFx9Y+Bjb|~q#zzhkIz3oRx z4VYPln7LjVqJ)kqzUm;&vS+4uC9^V&@~4@ zasW-ZE{aC>{!Bq1)=U7bXSp8Jro3cfoH)Al)HC2~Dz6Prn<7>vWLI|SM)h_9=Q zgSAp)=a@$RVcnjza z1<@*Pbfz~IbQ7UIBY@scK}xHTk1q9n$ii1%Umlhei3Es@uArpkAb*lQZqx=U&s<6 zTM^It&WiY5@$AvsB}6)@vo^GK@@2^(QYS-7-6-{Fat)_yhkI4`YRQK}TXv{xQMD2# z#Zx&qs6F~seW@lTzMIr!xA+zD6^gN!(yWL-DKsZh;=^KSinG9o^Zy5|ug3H|HK!fW z%&C&S#2R+mSQ4=tLVVm;FQA612sM_FGDc(@whLjH%d*4r~jFB7b^#zwq0np zYbM25xoESLwidMs&1!8twpbg#F}{9rS{9XAi_(#|H179Udx1KOh? zvQz1j?=$`(rc>!2r5hCENoD?cq*~ENRt%x`GqqG!kJ4ETHztd&`wzuX{+%L=7NnTc zR{dEWR(Fiuh(Y_vF14`~U!G}i`juW*8s}JsE~U91Xp|~g)5$Ki6sl|O&G^!5OEWsH zh044yV&Y1akp4F4pb^+7k`|%UNsFwH`0cBj^^sIVADwE_P3iVk*02&?Fp5t@fPFBp0>H&|5~Y+Ot8gmQw4Glfh`e4H2l@{#_@63(2Kc z`?tVy5r}YC?f)zyggOu*gZ@7zA}+3ENp}w+qgk5R;MZycMyvIabfd;gHz!KaO`f3C zKh^R{VWf>pfwW}OE#9@T*dKaZ zclwl)bLt{DBFv_4L^hXX1m9e=K2R>z}?$;3{@08UA6yr&+S z9l>*Et9uzTKM`Sib|SK+B$nPn=7mb;Y+>EVT@~^HeGOK#)ty_RGux5G%=dW*u!%YA zPmg@7eML+iFV3U0h3TjxZ;V&fnwcHhD#~q*9E>D{4$O%}k*k8f8W~pdyCGT>3NMOv z>+cqD;P9f5?qaW-rN1Gq6i7PmwITvAE zJExk*I_cMG9$VF4r};Oc4fNG0Y-(n>zeEO?3K&C zS{>Ao_8U?id4kTPP~R%h`PioQtpdG?HE$uDXkjN>0A_k*dxU1aoowR8F8WB~VC1ME zk7_0$ZS$7#Si7um6=;7h6LC-1rentK^^sE%n${^~RlJMgt<;KlF}0O{*HnAI6}4(w zWPGHgyh%)FGd^-LQdt~6;h)P^E8zURPEGnnI=9-zr?UAqUpq7U4jj8Pdd9)VOA}b?o+12UX%E(Yt zSqdv7aKS?BOl&Bnsa<@!6j%x__ECsitxSGfo z`WsR+r3vnB(<1XDI_{^NB_(L$OG@l4Stc0w1G!(8jzuuNvS$d>1y6!C^FvB^y#x*E zy0T_+M;F$EutpJ_D+cW}!@Ka(@0dkqo4CR@^Qn3K>s^7v0#)uWzAN)(bJ$#jS)h(3 z2A7bVL-s$GSX6>LKya%{?4mS+J6z(bK$>C4lKo4fX#bLfN;Xox?$U~?hIr|ntGdaE z0^t-TstwtMKa>Af+S|o-rgo9?f%;#e3zOuUG}~9cG^3^ zYIWv2lN~tuow@JmI+@m?(7>4a&Ui_eH|w&F;TZA&cL#Z`hcH!Vt6NA;0bQwwUaC+s&_I zhRv_%zHUvK`}%DVOo>d!>ziH|YjWtVKz1SA%xjnNI+dzqL8JS)UC$Vldhf^WuD2^h zb+X<0cBqv5`fe*LR)jN?$-HmgeP}iBzCPvAs!#d!@>Z+#@*N)l(eZ)44_HLs2Zn)g zd>UKk7BG)0Pg5IZnW@?I@_ilv(Z@1_Q0BHW+F?vuQZTty0rE&;-hD^z(+{T}x$ne% zINFu+cghR?4lxs$JLS9FuP6ERy#Mh1T&p-)E=FKDV-S_p6e3KRJC^HLPCA5s<;Ir7 z4r9wrET_9(CYGC4F7jVIJDF9kcX<+eqc`JYdilBK6+O57XXPXRO?vwMH}4lgk{z+V zw~zC}9AnhqaUUJkj{6SZhrA>Abu7nKN3s#_S>^U=yszBla(Hffc`MBJTiUCrqEPlL zH>4b;8&Ym$IjUqV{9Mf{HysnGy(KVd_fNQ=OeWmF{(jEJ;{=!5DG9ntlwo$F{pJ3c;>Wy$#{1kEW*Wk46vTfJS0J;hP)T-QPbCU`EmgD^7nMrL zTjf@Z^7ZbLaj^-KS8)l_7k4c`sC+`?WL<0b=)~4q!(=|N?g5Ox?txPe;(wu+YAZ~(~^f3&q)D@r`-p_8JSf$&)=+Y5UO%>R9;#OcV22G^5BGD z(5$2KS|RVygEWRiR$1O{Py5dZhp3-&{$fv7qmW`A_V-D#&#!K ztz27Lm%?Oh;e$IK#I#c?%&35&XH=M7fvedSmdn-h3ZGPnw5O$iQsGOv?pJYKMN-FA zoLiBrxfKsq)YO9&dsO1OZ>9bc^{+Iq5=5&j?Ura-<=o0d`zjx;Oxn@PpUc(fm9NUx z)yg+3tALx87gXVTQ{uJXA(6I1s8nPr{~ETUHIaW!2VKgL!?m{nb?1{%W18bKSFg zABp-@pHdy7?CQ%UT3&ra^@R4woMUBfsJ^9o8NJ~AIgy!CV?Yh)@@sUiNt9dj5Ro-_ zV0683l`XM@qf{0biw8D&c$f5vL!?rqRSmB|lu==yMEfdyRw44A?5q8(0@c8~LlrMp zR4=|*acCv3hgKR>Nz=!O>3K)6($LD9KD6?j%3RN>yu7leFRwhL3fDubjHsg5BgEh> zG5F}JNn>tbcB581Z?Df+ORdgzYV{%2Ro;;5JLGyt z^*#1_Pj&3YnJzWf*HHfTVz`#3bImz5^?FXt8*+W4=Ixrwf4k-gdJ(myHJCXft&ZnJ z57JoLYFi^3QEN;skYl8aV7E%qpR=xuEk(gA!9_6^iV01o)I<}qOs_zcAJ2NiJ5IR#ix<&aN7gNc|xAp~(+9)MTk5K3q<7i2r~cm%6Ynje*9Y zSL~%U7amHjmhb_4D@m2>)M|sP-6Pj5h6Jd=)uvUG+@ywEn_JboRVN2sL+D2Bf|??2 zgo9mZBb+oGWF#$w7845IQaz9BXhwO}&sV=kuA>>9ubxo@IT zHHrGw%&4j8jG8%ey|(7(5`A7X&!Y2crb^Whu7#u6X`t4l)TIDnmC98?jIHbtuT{;J zi-kIb%~+{?88~`ZAnIKqy+YZ)1s|A_byn*R>`$+7qe96JGS^@_F7CkT^p*Nna;UzQ z)>i_xzEWN#286sy-6}`^L@VxAd17U*r&XRQQLgliP0j2o^Qt($dD1LFRh?HgL{(i| z71Y|Qc~wPJ)ou@2Q4dXgNJKp}L!uet3r(Fb)UTs@1-_tHa>)LLhX#l*gx72^ChMEqwfhq@;SMyxW$RF|9b2SIZ zh&{O0uv(5}n0NuFt4HX;c2$Xg&$rXPD8eg@u+LCgsqoC$S~F`E-TQ1(8l*L#OG<07 zp#kH=h6bA(=yXSYi^;&~2ICvBv-wGV1ZBoInA#xzeRnmp!P*AFjezOy#EeFaGMga{ zMl`^6M>GJH$Z(9Td12y=26H8GuAuBmWpcxql$IpAByCJWmyJnVlA^kp?k;gWi9rrY zBa$SCq%le8K@Q`S7KMqkk`_whLO~Utp_%;JH*1sA&D!(o$Yie0;yRj>SzKqoAokZe z93T$Y$@~t8%~BG&bm6tT4#Bf${ntASrC`&C{MU+Rk+}pREJuf zRA+7-CRcMU4->V+b2!!x*CVp*wkr z@ExvX$lP`*D5d4m601^@;gaGK)joGi6jqaZ$s2h|On}T=0tj;8rBIxepMBO#J16x@ z_}TfO@@>7EeKBbp&)GCH=DfEymQJW7Q7b7()Jh80dcRhP&;>#gBB}4%VJ#!bCkCU7 z$9K(5?a}94@v2BsP5*P=7)r{->b$q`d|;2^Q4Vp59p^p%3b_QO+j-6tmmoTKu27Ad z{`p>Beqkh-i}^)eqW5`^+>3V!gr9MCMCRxDflVz>j7yNXy|_d*!QB$o1X=msoP03> zG6y*mOpS^YB07@u-gy#R8p2^03ibyV&U+oTuORFV(A*5VAVheVtvL9h>3%`&Mf8zU z6AE==K#eVftn$2drzI=G8E0d%;w(|`RGxM`c|nSH9vnLAEfWsu|1E4SL*XNal)a|| zv)wxFjYp!oB1ypfNzJOi-HkH7bZIS!h~iHwoe1p;)|uIM#@ltKX#M7$@h+VyL>ret zSKSk38L3}V`ka+Y0XgtY z$RR}Ry4dB9-tA*_!jXIY*#6$8-q|IGxDsB5thph)wOh#O$^l@BSq~IxYoKpx2(LiT zBA%mXpbO}uBeKiAndE*A`Zk8p%4d-wptmD_thTL${s#0(hS1Wpsu0lIL(uYz*O;s7SyLeT!>|=KO z(O>4cjTkBg_Wi%2rWH!3g}~64fK+GE6Ke(^lc2GrN>SIeN3wf z=zlHrJ)!3iQAhvlklwW#Y=PQEi@9TG(CU#tQOgpYz`+pO%+k@&LOM5rgGv&$p#_QB z(A4#3>?}S}D`)0Te<=lKsM5Tx>(7mHXca1D_I7{icBvS`e1Il~Fm;FTr?oOfGj|lM zP{?zjVx?`ne^L1eEm2sZ2BKA@H8q6DfI5^EovcH&79uvJS)!&ldt%V`X0cdFmEm3GGE9)atSsVDwAA3k#pKyxG z!u0`QiE(|YGx>=Q*U*7a6dd$BLy~9+y8|>egyR%LXeH4o0M;pzaJ!NbitK1JQNe+1 z(U|k;K2zCkoa|;Idjd>t455`x0}5ofF@fx6CXgL%QiWyz+R09GviVBlAwLV*NruqM zrm+RGlbmc;y{+Cc%@5NRHTCh&g63x>=m4x$i}7Fx>&?>9{6ad{{GgIVZGJ&wwD~Q+ zOQICitoY2|f&uyXhPArRB-TVZ0zH(LETsMl+M$PH0&{AScL}B#zJhfldmOji zYiS5??DZq8$Q$C#`(j#-5P_rJgekGjh17MVHZ_FP_lZ)3^Hc!M1pr|Mnv0XyOytcV zG0_lO4w?nPYLHD0p|Hlb2FJ>0p!WJRNo->XEh}Chur_n7vCi&T`3BTpe>SX1hS0L& z)B$TN$7(B9$`sn?inWie0TMPcHBnClAdRJMsT=tjF3E-dk8ptI6)S(8V2TiHnS_|9 zXx0Q;4k3V(cZvfs3Gmr1N}hpD$?VA|gQ&+B!zgF0>TZDNOD@f5m=r z3BvscV*Ef$MrsDB?BLk%k2@gp38yLh5gwAoFf1F&K8p1A+aLDBWzXw25 zLpWYBgjN!M1F%k!gxi&jP-MrtLsYhC+)OkU*=?NcW+Ho{VhF8lJS>n+tF*G|9IfnF ze<>)tm6Od8$5!uFB6||DlMJDijSB{{=^U+WdI~GsRk-+~WFgg4(1bk|6Kkzqf+>ctV6_Tg!5S34XiJIaSJ2gjkA5}AtAsCTG-xR4^s5Ja zLAyp{g`IL00w84ct5yvCs-+K_(4hnV9nv{T;()*AV4)_2EYfd~PKSEHAH$R((Gbp7 zLK+dk5=9bP?%3`&kj-9_1O9Z#+89F1OS1uhCH4j;pl>Gh*(4sO2i`WPKi2%)oVv%6PJ2=+rpg%#=2_;=`U?5p_u*eOJ z$<6b&vqFL~^Sm8-1=ddPJtl`U9J}|pJ(WS*rpdqereJU0`(+UbYW%~O1}!{Nxi}8;7A*Txxz)AEpwKFf#-hn=o(ws7d@dZap2p3x*l|9^6Lr@-l7}Hp z-XrH8(LE$WC+b6z`^ar9pr$jq-DmzhZXpJH|$YS8dq-#mM zjMYJ2M!uHxWfG6afMvB`1P3Xy>M*G7d?^IR*wFT4fq2V$ciU5K6C&RV-<%GM7yu?e z#T(R7nl#~10M0Y$=#A_cth@uPR3zaRhXk0=Nhk?tb_yr~=5+??&Tp>43K- zpp6~1$n&d9hvL>h0^M!t%&v}Jrsf->RUOa+3!=4@Cp&sqDICiRoxMR$o&10{Fjq7( zIi0=ZP;nqhXYZsIn(%bzKoNjJUBp0yqq+o0fGdh5yzP(xx4YU3F}FK=9U+J@eV7XZ zNkt&^+lAho>KZaqN1(SAL~B_==M+S1S<||DBSCW(QdjS?0AS6au9h}h$T)*KUtNxC zt{f5Z|P3{Em%mgt#;rvNr z3&Om~9OsaoY>2x|2@DQ!bf%;e4xDAviBHZF9N{gCE0lxCKaczthHwe;6AhsiO5YL) zO$>zMcpw9*iGfr_Y6oE#7EQN_-i(QIE`~m(1za~#GWdL=_oV_8r+Blb2NJ~| zP;H**9gs4J8OKp#X{si5iZ>8gbpzjTiqfl8@R?JrRAS*!D$p60N=K5Esore#6!wfVN(gp{r6K5cRyRvB_Qjg)ZLiHFA=?z>ewOMFnn5_m!T? zH+0dkxzn(@2{deO0u8kfKtt&_q9%(%7|~p|=1Vex8ch1FrP$kTEyYu(>E7*Z`FPy) znQAh=B4jRY!JVx&Q<766$tl4s#Z?xN>6fL|)z;D^SEHKB4^BPwX?QbAjr3R;h20F|Ff$@WH&Q4_KG8ft-_ zBU)&o2<#GL23y@a$Ia4`GW*mfA}Cw)0@gWfP+Qdv1fql#h;~g# zf#TDqve8!NhPHGVIYKKbA@WKrGDll#LgckrVLx+PaP1l1GWMv%Fz zhc1_O8^U=2?F`|Xc+Tee&NhA;s;DvcU54zbu3cz~@oBeBwAso9!FoaoK0+|4-6iK)pfN$Jx@%I2E z8Nxip5MELm!Y?IBe9O)Z@8V_7FCN`%KoSVoR|Zc{B$O14E4+Y*5Wz*&`=*p>*iD-l8{nJp1$S0d11i9k~#>P&@% zbqCt1p8w5MZx*V4Ek<=#EUApHqB>||t2$_>I_OY!&`x#Gq3WQW>Yzi_K|9q!hpK~i zs$VOj`d9kZS5}cGx_W9Qg`GE29GZ|`i5J2X$0Mhwd;ea7NXqj%TP`vB}lxHtYiep(Jv#e0T%2_PpI*vx> ztx)$G;@|UOTx9o?GT+k!Lc#PM;(t39Dbp`hKu$qg6c!mNk`bB(GzpQv1bcmDWiY~d z<*F~bSarGOM%&<>G($-cjUhsZ!VNx|Aeftz{7#bvNSo}h5uhlawn@vWpygH2aw};0 z1uRYieTkC*=p+C-34l%lJxLMWwSRRI=*FD{KqmpvNuV1oA_3C`rEe2(g9%FC#+BaI zpk3|z`>ZB4Uw}`I;xwk?aT)_UjRBp;SgjZdf2Y-ok$_R04&TITNRVGlNtO?hhn4Ki z0a%L9FHJZLmS^gF1#H#)c;%>t@Oc@=z68$ zo6i&}jXn52Lo7Lo1<2z#p;lS#0#qQ6_pcFjZm8d5n2^(5XVFWGbkHfo1T96&94&Y{ z7+JgL%Me3-(kwkmLNDl>nf~oeDH~zO(SGDT`RptI0zuGQInZn8QcBtWM+1{Ote9yv z;|zb~ziWa|Z3EDaP$dAnC(FnJ&~MH^I#ce;pwdPLm2Wa-wu1=t|JSC>|JyU=*a`CD zA`|3Po#!%Wee=1n9a#$2yUYb>Kr)8Wvr{VqQ8QGFK-d<;YN`&z0@<-wAUog+WM}mP zp(*otf$Yc%q|R$yuVCi?=+*!4b$7i{`+vvlA|=Gfv>&kDTkdfG_;B@*brbz<6Q!eL zG+_p_Y?!}en9gi^{3x6Sf!Q-mXF(y7SrDEh6y}Rz{w?hhI}P_Uhf6;|SA$sBHF7mw zuFUL-0a_pGfF4s2Ev{%TPw+c}W{{ZZFBL$L*8^IsWA<==-Eh_MP*g`Sn}(~7AyRbI zKG>EP4QydmF;#v1NPiNu{wC)1DF5szv4SDmn$EBzeK#f&D+TYCh_l4#WNnO`v&lIany`$SJW_9mcr`n?9pdhU`-}r} zUk&IAGgR2|0_!PSBw_trZlIVnIS!dhE%kFmPe7+9pwko3=?Uoc1ax{b?Ye756vt&` z4WbzVx{Lr_Mu09OK$j7q%Sa5Oel6vQsa!32!D>`GS8^8@sn)MT1bN_?+yWR zkL@~L6T>|7uK%8x|( zc7{;z>tloj0`AuW*-s1oKt6vJ{~p^ATS7`ZDRY4bhq@3I2U))rz zW}rK7MzfS+%1Hu^H?U3tdDd}@w+`#VECd&urj=#~kD#im6)Hwy549CntxyFOrm_|C zbyU{SUq@xl{xy23PsRiucb4)C&-aR^nH4$yr#Z4u^Kg!T9Dohk`n&)P&j>cHlx9MB z1Av2GR{H&UM$pDw=1kbt0uYYnVF8a#)rY|Fq(B}J(1Wh^*DFA{YpoyokZo$jpMy&> zgr~s02acGV22Bp05pYkq!5^j%3kd0%=saw{gjQ7US?#lf^?bSEmDVOYWuQu;sIpW6 zYb=@WNP)HVX5VVjTv{Vh|24iGFU;XUoQ=oD;5B|ia4mkx<=i!XS;hPi8gL>g&U9I= zk4RJ*87^d_Mlfc^ZhxaEK`Dq?9fJTMLt&Lc_E%T?x+Ra8%XU%!BbBp&$Cvlr@z;B-HkYEZEvfr!5ZzW6q@LrE1mu(cD@o9T))aG7pd7wFT=2 zX}KNvqMkk~N)$KHaS0sl_5_wrG(oi&-S$ttEMDPnAfML^;h_}_XfXD(Ik8uAtv`pH z+8RP}xU}sZ%q^Q!lQ1W66)YNJ-KwauCq z8PL!ORHKkebb@H}TAu@lK4h5U>=-U`!|M{R@rUW6FXDQxlO{vqMy>P5D~!`~!*O~s zP9J@c4U$`ro=ZSR_nZc$oSE?z4@g8b1gt{px^v7GYsfKItOrNM-Ti5BTxm5<@xj+V zS+Q#@*xD|!0N524fZ`r`gpWDGM;kPe{u`yT2x*Y|IKwWv*vB32aYnIf28%uR{zzAQ z6tuc1Xtl8f!IKy6gsd8hwTdW+DyjhlRs+Ra1qA$R6zGrP=QV| zaELa}A$YQ`OKy^+Spx)K&?d+hjLj6lW(g3~dz-j2#e1e={~vPC;?xW)29I(T1L!IS z&{d2O{KM|~l`7yyP6a@x0-#et2>xOB{7MyYBc}qOQvuMaAO!!gdwzuqxYhr-d&bOL zQuT>5qr82_3$VoQ4M}uvo#@=UxCwxGwAnw#KRrfPZG*Ts4A_E^?c(8X3E}d4IlNIz^VOQ}8k9qCazcjNfUjun}rC$+B2bO@OXS09_{w z=&A(JRSBT05YmDDli$o}BUaBK&Gir>VJI42a%u7-Bk|W=e0qu?;H)F^7dsPfg z3l`*2F=NGyPQQSnjR`1pxWv{@^qO)078MQSJkU-w#+ohyzxSdw`KDVsId5Q~~ zBd;28;@NorW01Ppfmgb7KzJ`lnLzo5XlsnK5B*_$A(DQ zami2Rrf*9u5?5Tf4&>l^wigYWn#ZTEeYyxtf!j>xcBY9Tq&FzT-S9y3eq6PBb(A)w z)cFDg&Ll@S_<3Rp5wH|=U=oiX-}l_;e}Z?mla6KtjlZ2C97p4qchQJHQ5>OkCC$V- zbQ+n!;<0A^CVvaCJpJa%b{niN&}on&B=W?&N0vV#%a`tn=Z^FB(W9-+;6B%!oapl> z1Vm8F_Lt~6bS5v$?>wn65=`$&`cx*QlpC@!ljK=+Ap!QebU~!HA5kO7lQu*?ce2nr z5CY&HXsfz{zCKCPL$sC}^cMxuDt754e*Z1+)AUS-9<&p)W@#0ahck zm7I!fIAgmkE5G)(hV|bWx|xz4TkM$S_R!*Ex01!~4`Z>AfkJ7b)krRG_n_s|8y3r^ zpykqg7pJ1A=5|XuCZ>Ll3D7a=-DI>pZqq1CZjYy9V&3MM!kf;pYT_hEdJihj8UTRO zhZ~2j8F*A<%|NPEOXzij9DtRM_4QdrRJ6*rhF%}Dv+sY(&@MMA!8bN^EYmkObS%?1 zHnd}M_V}MPw3A7@J21sRJSA*efE#D{rR_71JA7)z)>aI{)>;h0)?O45mCdKyrub)~ z!U1=Q@JxDneM`>?4-rmyh;YIkA{1_JO!04PYbRVXjj1#bDBIc2QuKZTe632T%3O$WgvL${HwN?&Eqw zw*M_2iVQSStQA@qYmHDCYqKhZ4b4GCPM+#dce%>kmRz~MJcC@bZLR^<V)?2}^Xs5}h#a3B#Kxk!Pk%6F+ogn)Su|SQVyi)TqpJn!1l@8?ja@CV|2* zt`w7C%Tr8(EnhJSw!B3X3fR}|o9>@u)Z-ZW>HeV^GXEzObHChjLPXn^idaG(k8)pQ^%N>AMdk=m<4M0L^*eNys6aS+mLKWBOljsU z9f(juM`98&(GcEXX>0Z^@{cX@6WA@zLxh3y9nxSpvJ2?U3^r%`C$m)_qN~|{>A%GN zHLhy>_NqJ_T{Y6F^c5APQW_+!VEQvi)++26!wu668ye+F^ia zK+m1&-&ZsNEPutZ*pzz_Ci0@9EdE;-FG-pK*p)N=D7N&S46+3^V0N+6LC>6BoI+sd z7S95D>1S67VCbd9 z$PTHF7gyY--k9#eHWYaeWR`z}hR%Uwv;0mB*76A{V!RWaH6}pcMPfTmw7s8n9>sMd zvKhQ+8!eKtKBu5-p-WK^EhKY!)5T^k8%D{!KbZ=WSUMU$CZg4$xUW_uc9}goL2-&8 zJ+MF%X`*B=1tOAi^W8=5-~<&|fG-@X2BMZ#K@tNEzy+oN3VKv_xt7rBHPb(P3k1My z&B6dz6y_xirc2Ccz{}5co9g${ahwpeY|D}RDnO{ai8Em_Pxik4n2(0zvAkHL>`$}RVMuqmOXA?%gom;5u|>R_}0?3?44 zZlB`~G=fm8E%X^gxM7x>HWwH8SJ{2k(hyz)(7RDaoi7lL2Cs!1$E?5&_ECqHv*iQko3 zK}+%68Jh(loVhu)H{jgOvG(Q`{^U~s%2ICO^TS(sD-3Zf=J;EAEv$(lq#5aLgMI5u zL3T{AQ(ZTE^1)P=cA&TK59!rnu9_J_K{uBdazb>|04>i43na7%6Z91xC)745rx$W~ zPi-pi;I=b_UFJzXgqHw#+CR_VJ6|xT=8Mu`tjb`l!l-B^oSGwVv3wZ3=z&Py_B6bL zS<(QI=)dQ3l>ENh05RQC&$;r}gY+pxN6|9L5Tcf@L#&&x>Lms0>4F5=*wuL$D2K2T zeMWJT4B=5&Kcp)U3d9qJn4huPQPr0Dobfv&Y%sR}yJVFjLw=(j~2i%?#62)1Udp6BnQ&~Lbs zzM)x}G4uUJROB13BHxgeC)m=r;I>}D1=CPDld{#HvsIb^;m}-}DiiknB-q>vaQG8J z5}pNUX$a4`RDj9b#cAEoNox^E!|9Ww@_2z4d2k5YvBWtZ*5OqHj1a@qG|H1&l&6{S ze3Xm8p~;5W>dh;wE}x-M9+#oZkE7ML`qQ?F^AK82mev4HP|zepC?#$cEitK-xDzGj zt?uno5WBj@-Gi)Dh9yy3p2VolMcRI~ABEgf(l|bGQvEM^3Bn3h% z1v-FGiVpR*G1v+eS(FF*LLW9jgNdIMMuN%y#4qxJ6Dz);fMD$~5N?%8FQ|-IR#aOk z1vJY(4N9svRiLv9qLn)3Q~x8-JVg7{Un78s=<=zhRci(|LZCH~Y&xU;3pb=#FRZ%D z9|tR;7&xq){z2uKAu$zYXKBLhdMRZ9Nu|Se7AmX$E$0VVAkPm$Us!NMPTe1(zB%QG! zKinmM~YhiRr}6iS~*mX!3_Y_VdU_yhnxxO|nFLbNvyd z@Sx^nKLctWCM!`OhfxkOYS0DRMQAQ&*EavCTANT4v(&PgH2EfmQ2VZ|WIGnqu#0pM z1yY&?U5DCO$Mt}vX_$b8V-s4033!bpU^RH|-UY`!1W5^bCzfBSxMwwvd$81@I@WCQ zaoM$_1g1#~^Xnw@?jOt$FBfyA`h803cg*>s{762l-p8aGGsuiE`hoR0Gsny~d|!Q& z(XXq=nO)|9(NCr`g*Ug1eltDJd|Bdl3DdD;AS#XzwDvA<`tp_5IJ3O`n(}5FpW!t< z`Npg{%y)S8BfPOGgA1kHdElc5P1=L&9yBQxc304kNt&}2&QvsaDh{f|*E;)EHlz6z zo!MP^U={r|q?uf0XjL=0YQKlf=!b4TWcpM)SYRdbuK+VLIp+B<8TL$yDz&6BD+gX@@~eDTYitTXgGc;k03 ze%GY@)2@Fa7fw7iDUbAhM8Lfcob<@FN9@U<3pk52&h&k>@1v$a2XDrioVtDLnf3L0 z)Q>Y8qhOyOPWg#B^ppKRH>uC0{EJ!oFZ=(6Z___{{7IAdV-*7XF8sw02tij-h z=HQD*UNnbZKJzkG<#n>_@Y_=@*%FX8?I_-)-+t-&}?qFt)V&6@OVR${qlNJ zt~E@1(F}TV)sAL^5W?iO^=rbzhp9A8rR6=H_H8$8TxYe%jV3>(_e`* z3tn3MlF4bjx3M|Y_-JENG7-1srO#h7U%YhYC6oEftY31LWurTdOsB?O8=D@D`!qI# z8V_x3Ml?=uY_fit{Y#VbtJGhaOhoc<;FVLan2WCrXE#jC{FWxaWolxa8Qx?zD}jl} z0CzOm&xx|FR=vhEyr!4<3Pj>I4$*A2ua!B{D!-K=vzwaiyQbtf&1r59HFu1b=TP%r zA}Aa2LtCum>#WFRy4PYkC-x>zZDm%ycI!3MvGst~W^0=>JiT1~YVNBh_tj&svc2@R z9X5$~Fj}8zZThyE+QwwJ*$CB))(cvj#jRJiHmh5&ZEe=J-rU-xwHZQ6_oVJgrccty zB$JUep2`LKV#LBlS<=EO1t!SW@5Wd zuj?1YdDhPt$pi4?cBxVDdONV^UpLqJqB%Q9`Tn^X^;Y&7I=+yTD;P-2xF93e=Zvi&{_nqD~8{a+kt~v8= z{<|jk-v|DO$^4J(|KKI|cXt$b-O;6YdbiiRrq{b;-o?e+_*?(Kne@NS`kR^ex17J3Lx0QpfCBz)&<7^_0|8V2I`Xe3^RFxa zYH~i9-X4Q|ko$qj{ovLICbPXD{3> zD?J^CbTH#Ou%clylNrm$Cy!4ylalu&oBZUnDfH8^*bRd1l)}tD#nZ%qdO8EftmGo8 z0qS;gNDtpk*w?3c$B9k{QaGuWKXWO?yGe9g&#g6?dUC8;(8)XB$urkFd8wR~nx%)w zQWtl_egUl`;t<#s9X*rV(HjpIDF`u0A)VpGVq-4*#H4bFDt~5mXKxeHRz0}Y)h(QWM;tVI93O45QK+I)I zH;+Fvu$wo7D7Tw;kZ5QR?@A9?i8uCOnIO3A|B;v18=Lj^PNsQgL4R+^ATk}~tsMgA z5O2aTv>)c(8Sa^GBfNzpxEkSYCE78N?Z5`$vLMq~>jDTiHA8!dX%lmj6LQ=YkKHgX^$M^9T#b6H)@uCtq zr+$cc1~tzO@w$X^nL75-qL5=uQD6&-LiUFIr9|Xkq(ms)&%4>rGo4etkFiKp%mT7P zOg32+tIGu+!obYQr5emELT817Bua>j5kCk8t@&6^=ro#vsML8*Qyv|zB8 z87&{$pbSkX7OR(A2D2_c*y|M1#+k7Lz4=I>Sf`234)m@O-5TgoMnmZ)!GUP3M~747 zatB2G9~eWlew24UgT|NX4H<)e6TATvU`$FHNg;C3R?Z_jI?+lK4g5z-AR-FgC^( zW_17~g8&(05W6r2%L`^FLI@DM*s%>}{!?|Tb-SfI-+XgFLEZZ6oKvT^Q+01woh#o) zu=I7g8UbkbR3qzZSvd zwTIfK`4}h*C7klYI%^-Y4m`}(Ek{g$$*vjMza;xNW%rBZLlVA3*-s=piDVCv>>d&;=4EosGB^)hCQl=%s+DtU zq3y|9S-BGEN;#?lXoDR6G0;o3@_Mawo?9*_EQbQiWzz~xa~7l*-j};Kqw+tHlRl8n zoDbyJ2qtcm&9vBGxLj@p#~O`dR2fdNytft|YP0493(|?DZW~xCSIEhbK6Qnhj^OcibydZQy$s$09_SqrV?vT!g9rDl)MC&(7{5fYgN)${upKX-5b-++d z#0cji`$ZqgB@}I2p{uYE3? zcB3Nq$*TR*nY>@VfuQQ3TyYR~v{gtu=SZ-`x&CR$E}0=jR>}UCbtoa zd)zv>|CFMmcFOS(KXIqcWx?m|=&KrqO1tEiU8u8NvH?15+by>v_;@#Ig!S+~IWDaW z_A2d@E&HT%bf3JAz-R~w`z3UC=I@tt4oIi=uv~E%tciJ+5Poq4 z%d4Yud@EY7Rid=c!Q=9aroGz56UwXXqq&-{h)02po^MhO%nt) z$#)U#Zj#5EQQ3!OT?+(dCSGWg*FbZlNiI2r#QH;W{UMCkL-GnmZyb`(fOT}Ud=Wua zvs~K@^y_A=_1+_-wQ!z2EXSY_;||NY2rRn0Meb`s=WCI*DB8*+@;wBNMV>P;47L23r7>JI!7!z`XN$n^qupv4xjAZc3!@90q7-J za|uL;^yj%9d@W$1h`jeOX>baQ(7;=?VmHxhg-nit%(+?n1Ets=RO&X!V!!^q119{z^7|g_4g_ zm80>i>4GoiGN2p3l+7IzvuF|BWLQs+g5yD!0HK$O^_tua6ha%ODrfst^~Y%t&xw1l z;kyOOseVz_yr`VUajJEka@LPmC##e*c9PmR3BhFb@nq#3oTA3Qq?{!$SuwA(n2X2* z96QEC>iO&PtLvCszt&O#ogc591(VcP$N}e?mq4@ThEBB6DHGKG3Cckdt9NQDh`yYl znkT079y?9x+^Q$5*-&NvWVK~7h@P#|da`EV105DH&#S}FE9cnrs_l71Cyi3mQ2bX% zso4nL9i!^U07Z0`CyJysrjDkMR!;301v&?WjYNyY+V;fFjDirg=G2T+s5PfV-)PwdNd{td1j?HbuQXMLDacC}@i29;+6NRnEe(s%9*rxW}!7`{fAg#;W%T z#XW8v+^oDBLz` zCypK#LP{LDICAtQ2i2e)!gCt_7{au@Mt$o?7S&0A6eGIcl7Gl)j9+p zysl7D&cC?)4D;OL;&{#3*ibCCvkAFg?uP@^MJH{uYpv%Sz)1= zC0|qcBiAVKYC9?Xc{pFE zdkMS^u%iX-LjZ0BsPDkFfN++rQ+1#el+WB&T!`~i${I39*cfx9*MqnwAH zuFsD1kyJj8N=KHkgNF~!@v%8Nn+1Erht=uq9)8t#aL5Q{!%AD9S>uCgFw$?Tg>Ncn zu|AoWM$LINE7qJegI@ZKSvG3UlJQA0G{|f^Lza%3b76ccj5NcUFuZEkr@^vOa~zY8 z>gnTN4Re)aPK9CEY*h^?l{t1r#lcakG`drtrAnjb#3r4c!idyIqh8*o_yiRuiEXM5 z(KXxD1_Yb+p(wmFov&cY=-5%!0t`HTILc{TK{+O=KTkNg$1R=NXhv{EZ`s3Qe4)ZE9kw`w;Nn7sJ$u-awNT-f_V0~d1WTd! z>rpOyS1YG^wZfJwe42BSLIQ2yn~h+e-md4ox%F6{BDnsJdT}XGv!BkHgHv2!t*uk_ z#EQL^*bGM-;;;`6OQTf^yWX5jtJE{^A&P26t@75lbo()SR&QcUqv(7X2@Zw=MgnaJ z!$vIYdmI*LHVw}XH0x@CZtaw|VL9!ra@zFnF#O27LTyM3#3E*g!k_cZ4)p?pF+0=* z1a&*qK?H~N<`$<48$v!&&el&;eUg^LiCMIW z&iWMVuun~9;PdDOr8?+^6~_(*y=i|0e)o5vBYx`lqS#D9DE2>jf?NqJ!*!x#I)y~gR(p_r)E)Y%nT)l$mlFu{H z`dw<%F38=bb|W~sOKskb2cSLb@4{fPnBflJWM2KAnt*5&iLEr){6Qx(|;t z=IgdK2UO#M_Qcor(}$5A{#dR}G#`|8K#0%DVy4v}M|JRFS9|~!5B2(s@$~I;e6`!D zX;O_%KxgT1r#t*PbBmf!emkJpMMU+7)YN9Iy_(gcW)uDJ5LWV;C@8!{xCgxhhLyy# zwpr~$bZ@gdgrNGUYCML4b6lN2j>LD4s-~kb*Bo7ORK1Vr+M{Zx2L(I09k8E6aJgAs zM*t~pt;%`rq*`$jf{@alhz@W}Re4g69#f~0>)B)Kc@GK(2y-CqofdTC7PaOGx_qk| za~w^5TtP=?^ht#rw0I`1K5S|5t_KD8M3)^_b%?G$tUfyoo@ZLLTq6m;C%32x$fl}A z%|l>Op|pcaX(YuFopqu;dgZwK8bp;R)HDy;bW$A#&xw=jEQ04xsTWQuXWS`Og<#4l zRgGZoDYfzxG`ZISsV_jM{JptKc*0BLqjzs8$50&Zss77tW~b z2%b5sUOEfX>NYjE4RcbPT8^NuO-(t6C!=%f$~h!5dLk43=)C&;JUYpF^{4Y7dijD{ zdOO}U5}@S>``1c8^-N0)%EzNj_=-J6MCzoOP$#j^04YPhB{H}%|} zC-n8_f6>aDdT8U-e|bryI^x`oY@#jzl;|Rc^v+DVnenPD{CkWyX5se(m*P%QnWUWP z-dy?m{#)XOh(!$kTLhGEw>~Cr|9=uUQrs#kv*@P+?@a%hKKNYVBtKq^8(i1S)+teg zdyR)R%sZ-tSj%`N<3BgaqLJ}>#>X+<%yQO3KL8{iAX=^A&d zX~(>03}CjA3DM8e#|+)_n@sp?;8NTyD)|c?w-{Lb2h%rJ7+@^p!x3#!rHL$>2Y2A(mzcWBkneZah-B@3$WBOr?w{f{{XM8-%$sK2arQE)Fw+21$ z6yj-958aslEylZ9+$0OEV0F1Fe_?>%Gd{5Wa)Imq^G}AbC(CI- zRNIrO1}JAa_c47F>uC?7^|$#>GxYz+^uJyc>PL)|CIIbivCXZ-}b)2S)90w@#-}Oe}X17 zTse%3?I!+{Z<_Fa;MBfxZZ96DqQAy(6IDDPVI=6QNaJ^iVxI31)mN19AzAoH#-GT- zpJTi*3!ea-%9VG>$o&=TKU34+EbJGNtbJaf@jFFJrKxyC^|hMu)+~IN#_te$oUgSr zts1{sRB=66d;T@!)r?#EZ=-!k&+4-#zYqV$gg<7y@vn?N72J*#>uetX1=6MHD!M*l z=#3Qfe`oX$Yk9Yb_&;aT|61q!O<{LCTRA~3|8~(D%cLKs@jFBr*Mp^hmho;`c$LQg zN-W4)pS%KG(MNjntOOI@kNNag*w31j$=CLuH$eZbOi~?NsBx@Y{$vtuKV0WS|EUkY zhvjs=)#U4PUM;{$pUNigj1T#)sfR8m5dR-I)z9#(a*b#D zDsGnzEN6+vIpPU^qwD7mk<0zZj?+~vr;^)cHS;w3$Y};n`jlnq)5`e&;(lf2U-XgV zU;^sq(a+xA2E4O=_(LDOyAR$|<6T5#Q(1lu z%eVb)F5}fau|I9H7ppD(;|AEsdTwRBzK_A1nf{>0IpPVf_~73_Ls0*(;{I>@=bemq z#nD>2=y{2*|HF8^Nk@h4SO3m<0X+!dT4s_(K;s zZ7_^f&$*8pLc8Ak0psz%HS|H2^HYs`GUVGHOyBk24PeLP0LE(u8Jx|Bc%1R3fWfVI zm{QuleDGVKe`j{-uYq?~KR?s-c+R@bw7a$E z{e0vU0l!t;As)!G&#uPr6!nbTykb6bo??1YVe*Z0eU9>>pUCvp+)o;qemdiMS^Z}& z@b5E?H>mfK|B(-V&<8)MaoDQ^Mmjw|({Q&TQ@=`O%|}1f^oG{^ z{{t+iiN_;9Hj4p_SBDJs7H0Yl<27st?D})4kNhOl4;f+vAARt3KKKscly4-f-gf!Ww`jbJXk@#@k1^sL<26B3(C=}3!4zuwaqfrK{@ld) z3t9c@X5eH$YaTXo?0cc_GhVRQ-~(CyFBq@hXYeJA7g#*Yz74T*czyL3hE4oI;~en> zlbODf?fFDbd&SD(aqTiboADukXB25+e6^4KEk5`Gmecrz5n$)Lv%smn=CB>G_V&Dw zoUd6<+W;fS+SNb9z@d6B;Q7?9e{N?ym)Dc_xqzNW$u8ZUmG93rJr~jw{HqWCm=7NI z!IM6CrN*Iu);u`QhklBs&nnkjKJ>Ld_$roDHN+IwzL#qNPVG{_{kbdG#daS#tt=;x z`!km1`nt+^BhQ2Xm+_nMoK5Xj$@*h@(${x2&Jj=WBOm-hAH25@{-_Tg)Hv(_k5e{_ zA`YDDp=*{M8^QE#+~4}Lu49>gc-H!1D%009VJ=tDn~YcUdi6P$vsB}r3gFv%AN*4v ze7_Ig>VtpbgLlCMLG6{7WoLfOc;&B+g7hAou7B3Jx%dA6ufVB3tFr3zQO19tWw%2t zKkr*cuw8EqW4wUt?IF%&G|LfL@+UK1oi*O4YTT=#xnE%A4>WOp%`H}Hyd(V7jUZ2N}iAEnf^yi-?f{O^AQ`?X8pW; zr)cE*vG(v@P2aIxeSGj=``{J8NuQ=lldrYsqb$z#-;J}H>?3Ec557#}cyIF!BmW=% z%m~`xL%+)hKk9>DV);${9JGP;y!}>F|BXEV{w?D_X1tB@UW`A;c(<;Z?KnW=OymhB zV%$-^b>nv7$9pk^Zbi1j{Tv8_52gwh1`pJ3MP$BtnT)GF4Ghk`ofeZo(}MCsS@BkSY&^BC)8O z6oEi-EKnMW6$K-K;#4e=3|1C@&uY7Edey%2WnvX(AXegF@l*V5v)CaVQliio`-gMZ!%6DeFKYHY{*YX7tHG z_e`Ly15)Zn-9$Jfio&Uc`=pyly7$~C%EF~(0U#ooDhdZ;6{$dJxFisY6}uu7af8u{ zc;L5jw-m|6;aI?pmGE71XgJQd2{%}bN{K>bDo_$jlm}BNWWgi71`mEb(EHH=`Gflo z91sZPJRscR@nE!Al)9;?C@W4N8_h((16kUmI3?jogjAz;=qT+zF|rIzS00Q8ie0U5 zXH>ajWKl&pQXF8~PDR~|j^GAUZXg~l4d{9gB!a_`eF*@bF=N{7jXWb*H zFZ7EFNU>^>Qb`eUqot`b=r}T5Ix<+A)4g*sA|6D81V%=}Md*tq!HP&KP>lW|4L{JbzK*RdZfSpy#&yCU|9u5Vl`JN0$L@D*EB2+1cKt(heEOF6Z zDK}aSijW(A(iKJJ!Q{}+)xQ@yQhB+j+R~a{MLo(CFBFT!5~*MjYKz(*HJ6GFb)$xi zkZ`mlrjsHubSm8^srv;|ZZbtW-*X>Wb=WSt3J$KDtR2~oLo6aiqev`c!C81y>QWOjgO^UMakw9s%ygV2P>-!{< zT--;xml<5&X_PwvbwPADSI|u|T$*#w&x~l)Z8%;AvlJ+a1Zg~CxK>2t3AY?wB^-~8 z2*jdBzi<@I87>Zl$||BmbMEQ9!#&t}JLVd}R8CY>IGTfYOTo_R>~zHv3f|t2^yuF! z&}%@?Kmf5m10D_ZdYHk7dp;tx2^4`o{RTeNqhDZP@7{xY4Gs+M@ld~BL_WBGewwv7 z84HxbDxk=Lo{tac(Z6rL&{k0t_QWV0luCr7T-*pcND9={bEr~9VZI)>y<^c-enlb~ zONheW3D<2e1FRK>HaeKbnTEPupijPdJWzs^M_icHaN-d+gt1l%Eee0xPY+p9?v^Lr zR9>HceILpXbkFIY^K(&>awCxpq+hrQGe=@jJP}TTHy<`L@mM%o92+L`WAU(?_!XMW zQ+*|gSh;Cn4AFQ5GensS6U_FPhCiD#RDT3kKTukMPMZvmgz!O_g4_X^N!kmDxdif{ zX$-SWq!V9 zpnSpfKtc_QL9vQNIEf}jJGf#P3`TwsViUcw0>Rot6b?j*dz$_)0(}SfN1wOLFW3fJ zd=1uw*=n{+9xzTNahs%dt_G0bO(c; ziC6`eRa%h8jy)Ph&*qjg?Fb_P+nJ@gPU_gXMWHs2Nf@?hswAVL(w!n>MD}(Q<=*kf z{myg_ZGT~Njh%$iq+Y;Pp)Fb*D-hj^)BxO|p0dQtA0q=xW41Re9*M2xVwq;q3_mmK^jagUsy+R!f4XhimOd0tp}nbgdInQLF&HK{ z;=)X#K1~}03PoWb8cSx(U>FTgo4RyW=bOx_pFmBTam`d)6iZ-?28Nm8s3*9Gu*9)l z4?VFjN~)U@BQRK;(P3Cav_D!bf=22a#YB_NoH~DD??^?mtV8BzX;etI^RaMostf`~ zL_=sRZT)RKV!U9SU=9ln#j0m$pu{`f+-roIbv;>!biU|CZiFk_l$VOlSr$~J%H0MDyjG(GlVAo_37&70nYKiC zv?LZrov$gq(=Cb#W1~x~O)eJG+Q4DOg87?=Q(%~GE-kj*Ug}}Oh2r|d90R+?6%%+I z&4GTF$WYf-mu@fgAzidV;9}#iXFTtq*Vcw@gc%2Yqb0~MjAyB|M!cSAA5w;LP(_?6 z6K)(2D*`=AcQ)ODM9DC+LmBF!yLW5{vta6n2eQF2>b*RFjWGF>6`++h7A<;$z$#5o zjF{pQvCP8r*x}N6wATyql1|JsSw&h-4NQbfG4;k{!`jt-(B$tm_vv+nS(;$kY8M~* zc%Y3XgR~ClABM3^;t?;3NvT5}>Sl#$48_}5TKCv-rzag=5){OeSgB#q3=()&iDGSw zVWG=JLl#peJ&h)5P@%&`OL?7v#fY9Nkuy&!{qd-2dW9&(kB2$Q5#@NQL>3N0>j=rs`1V#Q>SbKEjam-HG4My5SxILsR$!(s1G$A!e)miMg@i!~C9@_;1I* zZ2qypsEAzcLgXPrSDyY~Q2+8?Ru7Af!i|@|Tb@a=VP0CW!SNbiUpAbCn3vz4qp{&1 z4l)A=md~OuXYt#8t2V^Xlo?mH{xg|hS*l#p1{a5M{4VXix_KkGpNoIQVfpQTS{wc( zE5od)-k0X(ug)|1+c1^Y0Jix^O>g5i+zMX$&A<*@d(P;E z|0e%V@KR2e-|q9SVt(6CL87nh_G<=8UBvR+eZdQu-&QP*AG)mGR?bOa-uxFtO}Q8R z#)Mp*n%B#3<+Nq-+x^Y00mDz{7QC0`v*8z6{N3#DU?Ic*u$LM4R&NX6zzxZ=*;F!r z8S^(#<9e=co_o5bb5WF2ZWeC&v-f}*tqc#b(D^Bgc|}xm{!LyG_u2Y?*N1;dv61?H zd!U2mWao9a5C1cCumuge=BJZTSC~KQk90?p$y9KfTvd8j8%A5LCU{7*U?QY%I;?A7o0-rlq*G zU0%x8@0byHH~%0?VoLDO_Io?7X?ii5db!b09x(h3`2Em(W#>=Ho$>GPYxwOxXe%R| G|33jGVKVjr literal 0 HcmV?d00001 diff --git a/bibliotheque-graphique-iut-1.1/src/lib/Makefile b/bibliotheque-graphique-iut-1.1/src/lib/Makefile new file mode 100644 index 0000000..a6e346b --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/lib/Makefile @@ -0,0 +1,634 @@ +# Makefile.in generated by automake 1.14 from Makefile.am. +# src/lib/Makefile. Generated from Makefile.in by configure. + +# Copyright (C) 1994-2013 Free Software Foundation, Inc. + +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + + + + +am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)' +am__make_running_with_option = \ + case $${target_option-} in \ + ?) ;; \ + *) echo "am__make_running_with_option: internal error: invalid" \ + "target option '$${target_option-}' specified" >&2; \ + exit 1;; \ + esac; \ + has_opt=no; \ + sane_makeflags=$$MAKEFLAGS; \ + if $(am__is_gnu_make); then \ + sane_makeflags=$$MFLAGS; \ + else \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + bs=\\; \ + sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ + | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ + esac; \ + fi; \ + skip_next=no; \ + strip_trailopt () \ + { \ + flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ + }; \ + for flg in $$sane_makeflags; do \ + test $$skip_next = yes && { skip_next=no; continue; }; \ + case $$flg in \ + *=*|--*) continue;; \ + -*I) strip_trailopt 'I'; skip_next=yes;; \ + -*I?*) strip_trailopt 'I';; \ + -*O) strip_trailopt 'O'; skip_next=yes;; \ + -*O?*) strip_trailopt 'O';; \ + -*l) strip_trailopt 'l'; skip_next=yes;; \ + -*l?*) strip_trailopt 'l';; \ + -[dEDm]) skip_next=yes;; \ + -[JT]) skip_next=yes;; \ + esac; \ + case $$flg in \ + *$$target_option*) has_opt=yes; break;; \ + esac; \ + done; \ + test $$has_opt = yes +am__make_dryrun = (target_option=n; $(am__make_running_with_option)) +am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +pkgdatadir = $(datadir)/bibliotheque-graphique-iut +pkgincludedir = $(includedir)/bibliotheque-graphique-iut +pkglibdir = $(libdir)/bibliotheque-graphique-iut +pkglibexecdir = $(libexecdir)/bibliotheque-graphique-iut +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = x86_64-unknown-linux-gnu +host_triplet = x86_64-unknown-linux-gnu +subdir = src/lib +DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \ + $(top_srcdir)/depcomp +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__uninstall_files_from_dir = { \ + test -z "$$files" \ + || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ + || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ + $(am__cd) "$$dir" && rm -f $$files; }; \ + } +am__installdirs = "$(DESTDIR)$(libdir)" +LTLIBRARIES = $(lib_LTLIBRARIES) +libgraph_la_LIBADD = +am_libgraph_la_OBJECTS = graph.lo image.lo +libgraph_la_OBJECTS = $(am_libgraph_la_OBJECTS) +AM_V_lt = $(am__v_lt_$(V)) +am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) +am__v_lt_0 = --silent +am__v_lt_1 = +libgraph_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ + $(libgraph_la_LDFLAGS) $(LDFLAGS) -o $@ +AM_V_P = $(am__v_P_$(V)) +am__v_P_ = $(am__v_P_$(AM_DEFAULT_VERBOSITY)) +am__v_P_0 = false +am__v_P_1 = : +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +am__v_GEN_1 = +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ +am__v_at_1 = +DEFAULT_INCLUDES = -I. -I$(top_builddir) +depcomp = $(SHELL) $(top_srcdir)/depcomp +am__depfiles_maybe = depfiles +am__mv = mv -f +COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ + $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ + $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ + $(AM_CFLAGS) $(CFLAGS) +AM_V_CC = $(am__v_CC_$(V)) +am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY)) +am__v_CC_0 = @echo " CC " $@; +am__v_CC_1 = +CCLD = $(CC) +LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ + $(AM_LDFLAGS) $(LDFLAGS) -o $@ +AM_V_CCLD = $(am__v_CCLD_$(V)) +am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY)) +am__v_CCLD_0 = @echo " CCLD " $@; +am__v_CCLD_1 = +SOURCES = $(libgraph_la_SOURCES) +DIST_SOURCES = $(libgraph_la_SOURCES) +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +# Read a list of newline-separated strings from the standard input, +# and print each of them once, without duplicates. Input order is +# *not* preserved. +am__uniquify_input = $(AWK) '\ + BEGIN { nonempty = 0; } \ + { items[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in items) print i; }; } \ +' +# Make sure the list of sources is unique. This is necessary because, +# e.g., the same source file might be shared among _SOURCES variables +# for different programs/libraries. +am__define_uniq_tagged_files = \ + list='$(am__tagged_files)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | $(am__uniquify_input)` +ETAGS = etags +CTAGS = ctags +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = aclocal-1.14 +AMTAR = $${TAR-tar} +AM_DEFAULT_VERBOSITY = 1 +AR = ar +AUTOCONF = autoconf +AUTOHEADER = autoheader +AUTOMAKE = automake-1.14 +AWK = gawk +CC = gcc +CCDEPMODE = depmode=gcc3 +CFLAGS = -g -O2 +CPP = gcc -E +CPPFLAGS = +CYGPATH_W = echo +DEFS = -DHAVE_CONFIG_H +DEPDIR = .deps +DLLTOOL = false +DSYMUTIL = +DUMPBIN = +ECHO_C = +ECHO_N = -n +ECHO_T = +EGREP = /usr/bin/grep -E +EXEEXT = +EXEMPLES_IMAGES_DIR = ${datarootdir}/libgraph/images/ +FGREP = /usr/bin/grep -F +GREP = /usr/bin/grep +INSTALL = /usr/bin/install -c +INSTALL_DATA = ${INSTALL} -m 644 +INSTALL_PROGRAM = ${INSTALL} +INSTALL_SCRIPT = ${INSTALL} +INSTALL_STRIP_PROGRAM = $(install_sh) -c -s +LD = /usr/bin/ld -m elf_x86_64 +LDFLAGS = +LIBOBJS = +LIBS = -lXpm +LIBTOOL = $(SHELL) $(top_builddir)/libtool +LIPO = +LN_S = ln -s +LTLIBOBJS = +MAKEINFO = makeinfo +MANIFEST_TOOL = : +MKDIR_P = /usr/bin/mkdir -p +NM = /usr/bin/nm -B +NMEDIT = +OBJDUMP = objdump +OBJEXT = o +OTOOL = +OTOOL64 = +PACKAGE = bibliotheque-graphique-iut +PACKAGE_BUGREPORT = monnerat@u-pec.fr +PACKAGE_NAME = bibliotheque graphique iut +PACKAGE_STRING = bibliotheque graphique iut 1.1 +PACKAGE_TARNAME = bibliotheque-graphique-iut +PACKAGE_URL = +PACKAGE_VERSION = 1.1 +PATH_SEPARATOR = : +PREFIX = /export/home/an22/pietrois/SAE11_2022 +RANLIB = ranlib +SED = /usr/bin/sed +SET_MAKE = +SHELL = /bin/sh +STRIP = strip +VERSION = 1.1 +abs_builddir = /export/home/an22/pietrois/SAE11_2022/bibliotheque-graphique-iut-1.1/src/lib +abs_srcdir = /export/home/an22/pietrois/SAE11_2022/bibliotheque-graphique-iut-1.1/src/lib +abs_top_builddir = /export/home/an22/pietrois/SAE11_2022/bibliotheque-graphique-iut-1.1 +abs_top_srcdir = /export/home/an22/pietrois/SAE11_2022/bibliotheque-graphique-iut-1.1 +ac_ct_AR = ar +ac_ct_CC = gcc +ac_ct_DUMPBIN = +am__include = include +am__leading_dot = . +am__quote = +am__tar = $${TAR-tar} chof - "$$tardir" +am__untar = $${TAR-tar} xf - +bindir = ${exec_prefix}/bin +build = x86_64-unknown-linux-gnu +build_alias = +build_cpu = x86_64 +build_os = linux-gnu +build_vendor = unknown +builddir = . +datadir = ${datarootdir} +datarootdir = ${prefix}/share +docdir = ${datarootdir}/doc/${PACKAGE_TARNAME} +dvidir = ${docdir} +exec_prefix = /export/home/an22/pietrois/SAE11_2022 +host = x86_64-unknown-linux-gnu +host_alias = +host_cpu = x86_64 +host_os = linux-gnu +host_vendor = unknown +htmldir = ${docdir} +includedir = ${prefix}/include +infodir = ${datarootdir}/info +install_sh = ${SHELL} /export/home/an22/pietrois/SAE11_2022/bibliotheque-graphique-iut-1.1/install-sh +libdir = ${exec_prefix}/lib +libexecdir = ${exec_prefix}/libexec +localedir = ${datarootdir}/locale +localstatedir = ${prefix}/var +mandir = ${datarootdir}/man +mkdir_p = $(MKDIR_P) +oldincludedir = /usr/include +pdfdir = ${docdir} +prefix = /export/home/an22/pietrois/SAE11_2022 +program_transform_name = s,x,x, +psdir = ${docdir} +sbindir = ${exec_prefix}/sbin +sharedstatedir = ${prefix}/com +srcdir = . +sysconfdir = ${prefix}/etc +target_alias = +top_build_prefix = ../../ +top_builddir = ../.. +top_srcdir = ../.. +AM_CPPFLAGS = \ + -I$(top_srcdir)/src/include \ + -I$(top_builddir)/src/include + +lib_LTLIBRARIES = libgraph.la +#libgraph_la_SOURCES = graph.h graph.c +libgraph_la_SOURCES = graph.c image.c image.h +libgraph_la_LDFLAGS = -lX11 -lm +all: all-am + +.SUFFIXES: +.SUFFIXES: .c .lo .o .obj +$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/lib/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign src/lib/Makefile +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): + +install-libLTLIBRARIES: $(lib_LTLIBRARIES) + @$(NORMAL_INSTALL) + @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \ + list2=; for p in $$list; do \ + if test -f $$p; then \ + list2="$$list2 $$p"; \ + else :; fi; \ + done; \ + test -z "$$list2" || { \ + echo " $(MKDIR_P) '$(DESTDIR)$(libdir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(libdir)" || exit 1; \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(libdir)'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(libdir)"; \ + } + +uninstall-libLTLIBRARIES: + @$(NORMAL_UNINSTALL) + @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \ + for p in $$list; do \ + $(am__strip_dir) \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$f'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$f"; \ + done + +clean-libLTLIBRARIES: + -test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES) + @list='$(lib_LTLIBRARIES)'; \ + locs=`for p in $$list; do echo $$p; done | \ + sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \ + sort -u`; \ + test -z "$$locs" || { \ + echo rm -f $${locs}; \ + rm -f $${locs}; \ + } + +libgraph.la: $(libgraph_la_OBJECTS) $(libgraph_la_DEPENDENCIES) $(EXTRA_libgraph_la_DEPENDENCIES) + $(AM_V_CCLD)$(libgraph_la_LINK) -rpath $(libdir) $(libgraph_la_OBJECTS) $(libgraph_la_LIBADD) $(LIBS) + +mostlyclean-compile: + -rm -f *.$(OBJEXT) + +distclean-compile: + -rm -f *.tab.c + +include ./$(DEPDIR)/graph.Plo +include ./$(DEPDIR)/image.Plo + +.c.o: + $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< + $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +# $(AM_V_CC)source='$<' object='$@' libtool=no \ +# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \ +# $(AM_V_CC_no)$(COMPILE) -c -o $@ $< + +.c.obj: + $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` + $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +# $(AM_V_CC)source='$<' object='$@' libtool=no \ +# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \ +# $(AM_V_CC_no)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` + +.c.lo: + $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< + $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +# $(AM_V_CC)source='$<' object='$@' libtool=yes \ +# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \ +# $(AM_V_CC_no)$(LTCOMPILE) -c -o $@ $< + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +ID: $(am__tagged_files) + $(am__define_uniq_tagged_files); mkid -fID $$unique +tags: tags-am +TAGS: tags + +tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + set x; \ + here=`pwd`; \ + $(am__define_uniq_tagged_files); \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: ctags-am + +CTAGS: ctags +ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + $(am__define_uniq_tagged_files); \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" +cscopelist: cscopelist-am + +cscopelist-am: $(am__tagged_files) + list='$(am__tagged_files)'; \ + case "$(srcdir)" in \ + [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ + *) sdir=$(subdir)/$(srcdir) ;; \ + esac; \ + for i in $$list; do \ + if test -f "$$i"; then \ + echo "$(subdir)/$$i"; \ + else \ + echo "$$sdir/$$i"; \ + fi; \ + done >> $(top_builddir)/cscope.files + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-am +all-am: Makefile $(LTLIBRARIES) +installdirs: + for dir in "$(DESTDIR)$(libdir)"; do \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ + done +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \ + mostlyclean-am + +distclean: distclean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +distclean-am: clean-am distclean-compile distclean-generic \ + distclean-tags + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: install-libLTLIBRARIES + +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: uninstall-libLTLIBRARIES + +.MAKE: install-am install-strip + +.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \ + clean-libLTLIBRARIES clean-libtool cscopelist-am ctags \ + ctags-am distclean distclean-compile distclean-generic \ + distclean-libtool distclean-tags distdir dvi dvi-am html \ + html-am info info-am install install-am install-data \ + install-data-am install-dvi install-dvi-am install-exec \ + install-exec-am install-html install-html-am install-info \ + install-info-am install-libLTLIBRARIES install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + installcheck installcheck-am installdirs maintainer-clean \ + maintainer-clean-generic mostlyclean mostlyclean-compile \ + mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ + tags tags-am uninstall uninstall-am uninstall-libLTLIBRARIES + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/bibliotheque-graphique-iut-1.1/src/lib/Makefile.am b/bibliotheque-graphique-iut-1.1/src/lib/Makefile.am new file mode 100644 index 0000000..9cf3a41 --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/lib/Makefile.am @@ -0,0 +1,8 @@ +AM_CPPFLAGS = \ + -I$(top_srcdir)/src/include \ + -I$(top_builddir)/src/include + +lib_LTLIBRARIES = libgraph.la +#libgraph_la_SOURCES = graph.h graph.c +libgraph_la_SOURCES = graph.c image.c image.h +libgraph_la_LDFLAGS = -lX11 -lm diff --git a/bibliotheque-graphique-iut-1.1/src/lib/Makefile.in b/bibliotheque-graphique-iut-1.1/src/lib/Makefile.in new file mode 100644 index 0000000..69b96ad --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/lib/Makefile.in @@ -0,0 +1,634 @@ +# Makefile.in generated by automake 1.14 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994-2013 Free Software Foundation, Inc. + +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ + +VPATH = @srcdir@ +am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)' +am__make_running_with_option = \ + case $${target_option-} in \ + ?) ;; \ + *) echo "am__make_running_with_option: internal error: invalid" \ + "target option '$${target_option-}' specified" >&2; \ + exit 1;; \ + esac; \ + has_opt=no; \ + sane_makeflags=$$MAKEFLAGS; \ + if $(am__is_gnu_make); then \ + sane_makeflags=$$MFLAGS; \ + else \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + bs=\\; \ + sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ + | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ + esac; \ + fi; \ + skip_next=no; \ + strip_trailopt () \ + { \ + flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ + }; \ + for flg in $$sane_makeflags; do \ + test $$skip_next = yes && { skip_next=no; continue; }; \ + case $$flg in \ + *=*|--*) continue;; \ + -*I) strip_trailopt 'I'; skip_next=yes;; \ + -*I?*) strip_trailopt 'I';; \ + -*O) strip_trailopt 'O'; skip_next=yes;; \ + -*O?*) strip_trailopt 'O';; \ + -*l) strip_trailopt 'l'; skip_next=yes;; \ + -*l?*) strip_trailopt 'l';; \ + -[dEDm]) skip_next=yes;; \ + -[JT]) skip_next=yes;; \ + esac; \ + case $$flg in \ + *$$target_option*) has_opt=yes; break;; \ + esac; \ + done; \ + test $$has_opt = yes +am__make_dryrun = (target_option=n; $(am__make_running_with_option)) +am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +subdir = src/lib +DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \ + $(top_srcdir)/depcomp +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__uninstall_files_from_dir = { \ + test -z "$$files" \ + || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ + || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ + $(am__cd) "$$dir" && rm -f $$files; }; \ + } +am__installdirs = "$(DESTDIR)$(libdir)" +LTLIBRARIES = $(lib_LTLIBRARIES) +libgraph_la_LIBADD = +am_libgraph_la_OBJECTS = graph.lo image.lo +libgraph_la_OBJECTS = $(am_libgraph_la_OBJECTS) +AM_V_lt = $(am__v_lt_@AM_V@) +am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) +am__v_lt_0 = --silent +am__v_lt_1 = +libgraph_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ + $(libgraph_la_LDFLAGS) $(LDFLAGS) -o $@ +AM_V_P = $(am__v_P_@AM_V@) +am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) +am__v_P_0 = false +am__v_P_1 = : +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) +am__v_GEN_0 = @echo " GEN " $@; +am__v_GEN_1 = +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) +am__v_at_0 = @ +am__v_at_1 = +DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) +depcomp = $(SHELL) $(top_srcdir)/depcomp +am__depfiles_maybe = depfiles +am__mv = mv -f +COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ + $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ + $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ + $(AM_CFLAGS) $(CFLAGS) +AM_V_CC = $(am__v_CC_@AM_V@) +am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) +am__v_CC_0 = @echo " CC " $@; +am__v_CC_1 = +CCLD = $(CC) +LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ + $(AM_LDFLAGS) $(LDFLAGS) -o $@ +AM_V_CCLD = $(am__v_CCLD_@AM_V@) +am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) +am__v_CCLD_0 = @echo " CCLD " $@; +am__v_CCLD_1 = +SOURCES = $(libgraph_la_SOURCES) +DIST_SOURCES = $(libgraph_la_SOURCES) +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +# Read a list of newline-separated strings from the standard input, +# and print each of them once, without duplicates. Input order is +# *not* preserved. +am__uniquify_input = $(AWK) '\ + BEGIN { nonempty = 0; } \ + { items[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in items) print i; }; } \ +' +# Make sure the list of sources is unique. This is necessary because, +# e.g., the same source file might be shared among _SOURCES variables +# for different programs/libraries. +am__define_uniq_tagged_files = \ + list='$(am__tagged_files)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | $(am__uniquify_input)` +ETAGS = etags +CTAGS = ctags +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DLLTOOL = @DLLTOOL@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +EXEMPLES_IMAGES_DIR = @EXEMPLES_IMAGES_DIR@ +FGREP = @FGREP@ +GREP = @GREP@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ +MKDIR_P = @MKDIR_P@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PREFIX = @PREFIX@ +RANLIB = @RANLIB@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +VERSION = @VERSION@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +AM_CPPFLAGS = \ + -I$(top_srcdir)/src/include \ + -I$(top_builddir)/src/include + +lib_LTLIBRARIES = libgraph.la +#libgraph_la_SOURCES = graph.h graph.c +libgraph_la_SOURCES = graph.c image.c image.h +libgraph_la_LDFLAGS = -lX11 -lm +all: all-am + +.SUFFIXES: +.SUFFIXES: .c .lo .o .obj +$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/lib/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign src/lib/Makefile +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): + +install-libLTLIBRARIES: $(lib_LTLIBRARIES) + @$(NORMAL_INSTALL) + @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \ + list2=; for p in $$list; do \ + if test -f $$p; then \ + list2="$$list2 $$p"; \ + else :; fi; \ + done; \ + test -z "$$list2" || { \ + echo " $(MKDIR_P) '$(DESTDIR)$(libdir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(libdir)" || exit 1; \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(libdir)'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(libdir)"; \ + } + +uninstall-libLTLIBRARIES: + @$(NORMAL_UNINSTALL) + @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \ + for p in $$list; do \ + $(am__strip_dir) \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$f'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$f"; \ + done + +clean-libLTLIBRARIES: + -test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES) + @list='$(lib_LTLIBRARIES)'; \ + locs=`for p in $$list; do echo $$p; done | \ + sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \ + sort -u`; \ + test -z "$$locs" || { \ + echo rm -f $${locs}; \ + rm -f $${locs}; \ + } + +libgraph.la: $(libgraph_la_OBJECTS) $(libgraph_la_DEPENDENCIES) $(EXTRA_libgraph_la_DEPENDENCIES) + $(AM_V_CCLD)$(libgraph_la_LINK) -rpath $(libdir) $(libgraph_la_OBJECTS) $(libgraph_la_LIBADD) $(LIBS) + +mostlyclean-compile: + -rm -f *.$(OBJEXT) + +distclean-compile: + -rm -f *.tab.c + +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/graph.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/image.Plo@am__quote@ + +.c.o: +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $< + +.c.obj: +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` + +.c.lo: +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $< + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +ID: $(am__tagged_files) + $(am__define_uniq_tagged_files); mkid -fID $$unique +tags: tags-am +TAGS: tags + +tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + set x; \ + here=`pwd`; \ + $(am__define_uniq_tagged_files); \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: ctags-am + +CTAGS: ctags +ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + $(am__define_uniq_tagged_files); \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" +cscopelist: cscopelist-am + +cscopelist-am: $(am__tagged_files) + list='$(am__tagged_files)'; \ + case "$(srcdir)" in \ + [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ + *) sdir=$(subdir)/$(srcdir) ;; \ + esac; \ + for i in $$list; do \ + if test -f "$$i"; then \ + echo "$(subdir)/$$i"; \ + else \ + echo "$$sdir/$$i"; \ + fi; \ + done >> $(top_builddir)/cscope.files + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-am +all-am: Makefile $(LTLIBRARIES) +installdirs: + for dir in "$(DESTDIR)$(libdir)"; do \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ + done +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \ + mostlyclean-am + +distclean: distclean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +distclean-am: clean-am distclean-compile distclean-generic \ + distclean-tags + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: install-libLTLIBRARIES + +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: uninstall-libLTLIBRARIES + +.MAKE: install-am install-strip + +.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \ + clean-libLTLIBRARIES clean-libtool cscopelist-am ctags \ + ctags-am distclean distclean-compile distclean-generic \ + distclean-libtool distclean-tags distdir dvi dvi-am html \ + html-am info info-am install install-am install-data \ + install-data-am install-dvi install-dvi-am install-exec \ + install-exec-am install-html install-html-am install-info \ + install-info-am install-libLTLIBRARIES install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + installcheck installcheck-am installdirs maintainer-clean \ + maintainer-clean-generic mostlyclean mostlyclean-compile \ + mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ + tags tags-am uninstall uninstall-am uninstall-libLTLIBRARIES + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/bibliotheque-graphique-iut-1.1/src/lib/graph.c b/bibliotheque-graphique-iut-1.1/src/lib/graph.c new file mode 100644 index 0000000..deda835 --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/lib/graph.c @@ -0,0 +1,773 @@ +#include +#include +#include +#include +#include + +#include +#include +#include +#include + +#include "config.h" + +#ifdef HAVE_XPM +#include +#endif + + +#include "graph.h" +#include "image.h" +#define N 50 + + +void _get_GC(Window win, GC *gc); + +typedef struct +{ + int posx,posy; + int tx,ty; + int etat; + Pixmap s; + Pixmap smask; + Pixmap sauvegarde; +} +sprite; + +sprite S[N]; /* tableau de sprite */ +int S_alloue[N]; /* tableau d'allocation */ + +/******************** variables globales beurk ****************************/ + +Display *display; +int screen; +int display_width=0,display_height=0; +int X_fen,Y_fen; +int connecte=0; +int nbfen=0; +Window win; +XColor coul; +unsigned long couleur_dess; +XEvent report; /* structure des evenements */ + +GC gc; /* ID du contexte graphique */ +unsigned int border_w=4; +Cursor croix; +XSetWindowAttributes attribut; +Colormap pal; /* palette */ +Font f[3]; /* polices d'ecriture */ +XFontStruct *s[3]; +XFontStruct *stemp; +Pixmap icone=NULL,icone_mask=NULL; +XPoint sommet[3]; +int num_ecran=0; +Window ecran[NB_PIXMAP+1]; +int app=0; +XWMHints * wm_hints; +XClassHint * class_hints; +XSizeHints * size_hints; + +XTextProperty nom_fenetre,nom_icone; +char *nf="IUT de Fontainebleau"; // changer si vous voulez :-) +char *ni="mon_icone"; + +int _X=0,_Y=0; + +//#include "image.c" + +void ChoisirModeDessin(int m) +{ + switch(m) + { + case 0 : XSetFunction(display,gc,GXcopy); + break; + case 1 : XSetFunction(display,gc,GXxor); + break; + case 2 : XSetFunction(display,gc,GXinvert); + break; + default : XSetFunction(display,gc,GXcopy); + } +} +void ChoisirCouleurDessin(unsigned long couleur) +{ + couleur_dess=couleur; + XSetForeground(display,gc,couleur); + XFlush(display); +} + +void ChoisirEcran(int n) +{ + if (0<=n&&n<=NB_PIXMAP) num_ecran=n; +} + +int InitialiserGraphique() +{ + if (!connecte) + { + if((display=XOpenDisplay(NULL))==NULL) { + fprintf(stderr,"erreur : ne peut pas se connecter "); + fprintf(stderr,"au serveur %s\n",XDisplayName(NULL)); + return 0; + } + if (connecte) //return 0; + return 1; + + /* Recuperer les informations concernant l'ecran (root window) sur + lequel on va afficher notre application. Le numero de l'ecran + par defaut s'obtient a l'aide de la macro DefaultScreen(), la + taille a l'aide des macros DisplayWidth() et + DisplayHeight().*/ + + screen = DefaultScreen(display); + display_width = DisplayWidth(display,screen); + display_height = DisplayHeight(display,screen); + pal=DefaultColormap(display,screen); + connecte=1; + return 1; + } +} + +int CreerFenetre(int posx,int posy,int X,int Y) +{ + int i; + Visual *v; + char buf[1024]; + int trouve; + + if (!connecte) + { + perror("initialisez d'abord le mode graphique\n"); + //return (1); + return 0; + } + + if (nbfen==1) + { + printf("une seule fentre on a dit !!!!\n"); + //return(1); + return 0; + } + + ecran[0] = XCreateSimpleWindow(display, RootWindow(display, screen), + posx, posy,X, Y, border_w, + BlackPixel(display,screen), + WhitePixel(display,screen)); + + /* sensibilisation de la fenêtre */ + + XSelectInput(display, ecran[0], + ExposureMask | KeyPressMask |ButtonPressMask ); + + + /* creation d'un contexte graphique pour cette fenetre, + indispensable pour dessiner ou afficher du texte */ + + _get_GC(ecran[0], &gc); + + /* creation d'une fonte curseur */ + + croix=XCreateFontCursor(display,XC_crosshair); + XDefineCursor(display,ecran[0],croix); + + /* le contenu de la fenetre est persistant : le serveur le supporte-t-il ? */ + + attribut.backing_store=Always; + XChangeWindowAttributes(display,ecran[0],CWBackingStore,&attribut); + + /* chargement d'une font par defaut pour l'ecriture de texte */ + + trouve=0; + i=10; + while(!trouve&&i<=15) + { + sprintf(buf,"-adobe-helvetica-*-r-*-*-%d-*-*-*-*-*-*-*",i); + stemp=XLoadQueryFont(display,buf); + if (stemp==NULL) i++; + else + trouve=1; + } + + if (!trouve) + { + sprintf(buf,"6x13"); + if ((stemp=XLoadQueryFont(display,buf))==NULL) + stemp=XLoadQueryFont(display,"fixed"); + } + f[0]=stemp->fid; + s[0]=stemp; + + + trouve=0; + i=20; + while(!trouve&&i<=25) + { + sprintf(buf,"-adobe-helvetica-*-r-*-*-%d-*-*-*-*-*-*-*",i); + stemp=XLoadQueryFont(display,buf); + if (stemp==NULL) i++; + else + trouve=1; + } + if (!trouve) + { + sprintf(buf,"8x16"); + if ((stemp=XLoadQueryFont(display,buf))==NULL) + stemp=XLoadQueryFont(display,"fixed"); + } + f[1]=stemp->fid; + s[1]=stemp; + + + trouve=0; + i=30; + while(!trouve&&i<=35) + { + sprintf(buf,"-adobe-helvetica-*-r-*-*-%d-*-*-*-*-*-*-*",i); + stemp=XLoadQueryFont(display,buf); + if (stemp==NULL) i++; + else + trouve=1; + } + if (!trouve) + { + sprintf(buf,"12x24"); + if ((stemp=XLoadQueryFont(display,buf))==NULL) + stemp=XLoadQueryFont(display,"fixed"); + } + + f[2]=stemp->fid; + s[2]=stemp; + + + XSetFont(display,gc,f[1]); + + + + /* creation des pixmaps pour la sauvegarde d'images */ + + for(i=1;i<=NB_PIXMAP;i++) + { + ecran[i]=XCreatePixmap( display , DefaultRootWindow(display), X , Y , DefaultDepth(display,screen) ); + } + /* variables globales pour la taille de la fenetre */ + + X_fen=X; + Y_fen=Y; + + bzero(S_alloue,N*sizeof(int)); + wm_hints=XAllocWMHints(); + class_hints=XAllocClassHint(); + size_hints=XAllocSizeHints(); + + XStringListToTextProperty(&nf,1,&nom_fenetre); + XStringListToTextProperty(&ni,1,&nom_icone); + wm_hints->initial_state=NormalState; + wm_hints->input=True; + wm_hints->flags=StateHint|InputHint; + size_hints->x=posx; + size_hints->y=posy; + size_hints->flags=USPosition; + //class_hints->res_name="Graphique"; + XSetWMProperties(display,ecran[0],&nom_fenetre,&nom_icone,NULL,0,size_hints,wm_hints,NULL); + //XSetWMNormalHints(display,ecran[0],size_hints); + XSetIconName(display,ecran[0],"Super"); + // XStoreName(display,ecran[0],"D.M Entertainment"); + XMapWindow(display,ecran[0]); + + XFree(wm_hints); + XFree(size_hints); + XFree(class_hints); + wm_hints=XGetWMHints(display,ecran[0]); + do + { + XWindowEvent(display,ecran[0],ExposureMask,&report); + } + while(report.xexpose.count); + nbfen=1; + return 1; +} + +void ChoisirTitreFenetre(char *s) +{ + XStoreName(display,ecran[0],s ); +} +void ChoisirCurseur(unsigned int forme) +{ + XFreeCursor(display,croix); + croix=XCreateFontCursor(display,forme); + XDefineCursor(display,ecran[0],croix); +} + + +/*----------------------*/ + +void _get_GC(Window win, GC *gc) + +{ + unsigned long valuemask = 0; /* Ignore XGCvalues et prend les + valeurs par defaut */ + XGCValues values; + + /* creation d'un contexte graphique par defaut */ + + *gc = XCreateGC(display, ecran[0], valuemask, &values); + + + /* specification d'un background noir, puisque par defaut on fait du + blanc sur du blanc */ + //XSetBackground(display,*gc,154); + + XSetForeground(display, *gc, BlackPixel(display, screen)); + XSetGraphicsExposures(display,*gc,False); + + /* inutile d'enfler la file d'evenements avec les evenements + Noexpose et GraphicsExpose */ +} + +int Maxx() +{ + if (!connecte) return -1; + else return display_width; +} + +int Maxy() +{ + if (!connecte) return -1; + else return display_height; +} + +void DessinerPixelC(int x,int y,unsigned long couleur) +{ + XSetForeground(display,gc,couleur); + XDrawPoint(display,ecran[num_ecran],gc,x,y); + XSetForeground(display,gc,couleur_dess); + XFlush(display); +} + +void DessinerPixel(int x,int y) +{ + XDrawPoint(display,ecran[num_ecran],gc,x,y); + XFlush(display); +} + +void DessinerSegmentC(int x,int y,int xx,int yy,unsigned long couleur) +{ + XSetForeground(display,gc,couleur); + XDrawLine(display,ecran[num_ecran],gc,x,y,xx,yy); + XSetForeground(display,gc,couleur_dess); + XFlush(display); +} +void DessinerSegment(int x,int y,int xx,int yy) +{ + XDrawLine(display,ecran[num_ecran],gc,x,y,xx,yy); + XFlush(display); +} + +void FermerGraphique() +{ + int i; + XSync(display,True); + for (i=0;i<3;i++) XUnloadFont(display,f[i]); + for (i=1;i<=NB_PIXMAP;i++) + XFreePixmap(display,ecran[i]); + for(i=0;i2) return; + XSetFont(display,gc,f[mode]); + XSetForeground(display,gc,c); + XDrawString(display,ecran[num_ecran],gc,x,y,texte,strlen(texte)); + XSetForeground(display,gc,couleur_dess); + XFlush(display); +} + +void EcrireTexte(int x,int y,char *texte,int mode) +{ + if (mode<0||mode>2) return; + XSetFont(display,gc,f[mode]); + XDrawString(display,ecran[num_ecran],gc,x,y,texte,strlen(texte)); + XFlush(display); + +} +#ifdef HAVE_XPM +void SauverImage(char * file,int x,int y,int l,int h) +{ + XEvent report; + Pixmap p1=0; + p1=XCreatePixmap( display , DefaultRootWindow(display), X_fen , Y_fen , DefaultDepth(display,screen) ); + XCopyArea(display,ecran[num_ecran],p1,gc,x,y,l,h,0,0); + XpmWriteFileFromPixmap(display,file,p1,0,NULL); + if (p1) XFreePixmap(display,p1); + while(XCheckWindowEvent(display,ecran[0],ExposureMask,&report)); + while(XCheckTypedEvent(display,GraphicsExpose,&report)); + while(XCheckTypedEvent(display,NoExpose,&report)); +} +#endif + +int ChargerImage(char *file,int x,int y,int xx,int yy,int l,int h) +{ + XEvent report; + Pixmap p1=0,p1mask=0; + int wi,hi; + if (!_chargerimage(file, &wi,&hi,&p1 , &p1mask,display,gc,screen)) return 0; + + //XpmReadFileToPixmap(display,ecran[num_ecran],file,&p1,&p1mask,NULL); + + XSetClipMask(display,gc,p1mask); + XSetClipOrigin(display,gc,x,y); + XCopyArea(display,p1,ecran[num_ecran],gc,xx,yy,l,h,x,y); + + XSetClipMask(display,gc,None); + if (p1) XFreePixmap(display,p1); + if (p1mask) XFreePixmap(display,p1mask); + + //XFlush(display); + + while(XCheckWindowEvent(display,ecran[0],ExposureMask,&report)); + while(XCheckTypedEvent(display,GraphicsExpose,&report)); + while(XCheckTypedEvent(display,NoExpose,&report)); + return 1; + +} + +void ChargerImageFond(char *file) +{ + XSetWindowAttributes att; + Pixmap pbackground=0,pmask=0; + int i=num_ecran; + int x,y; + if (i<0 || i>NB_PIXMAP) return ; + + switch(i) + { + case 0 : + //XpmReadFileToPixmap(display,ecran[i],file,&pbackground,&pmask,NULL); + _chargerimage(file, &x,&y,&pbackground , &pmask,display,gc,screen); + att.background_pixmap=pbackground; + XChangeWindowAttributes(display,ecran[i],CWBackPixmap,&att); + XClearWindow(display,ecran[i]); + + if (pbackground) XFreePixmap(display,pbackground); + if (pmask) XFreePixmap(display,pmask); + XFlush(display); + break; + default: + ChargerImage(file,0,0,0,0,X_fen,Y_fen); + } +} + +int TailleChaineEcran(char *t,int mode) +{ + if (mode<0||mode>2) return -1; + else return XTextWidth(s[mode],t,strlen(t)); +} +int TailleSupPolice(int mode) +{ + if (mode<0||mode>2) return -1; + return s[mode]->ascent; +} + +int TailleInfPolice(int mode) +{ + if (mode<0||mode>2) return -1; + return s[mode]->descent; +} + + +void CopierZone(int src,int dst,int ox,int oy,int L,int H,int dx,int dy) +{ + XEvent report; + XCopyArea(display,ecran[src],ecran[dst],gc,ox,oy,L,H,dx,dy); + XFlush(display); + while(XCheckWindowEvent(display,ecran[0],ExposureMask,&report)); + while(XCheckTypedEvent(display,GraphicsExpose,&report)); + while(XCheckTypedEvent(display,NoExpose,&report)); +} + + +void CacherFenetre() +{ + XUnmapWindow(display,ecran[0]); + XFlush(display); +}; + +void AfficherFenetre(void) +{ + XMapWindow(display,ecran[0]); + XFlush(display); +} + + +unsigned long CouleurParComposante(unsigned char r, unsigned char v,unsigned char b) +{ + /* on suppose qu'on est en True Color */ + /* C'est a ameliorer !!! */ + /* XColor c; + c.red=r; + c.red<<=8; + c.green=v; + c.green<<=8; + c.blue=b; + c.blue<<=8; + XAllocColor(display,DefaultColormap(display,screen),&c); + return c.pixel;*/ + unsigned long cr=r,cg=v,cb=b; + return (cr<<16)|(cg<<8)|cb; +} + + +unsigned long Microsecondes() +{ + struct timeval t; + gettimeofday(&t, NULL); + return t.tv_usec+t.tv_sec*1000000; +} + + +/* + int souris(int *X,int *Y) + { + XEvent r; + if (XCheckWindowEvent(display,ecran[0],PointerMotionMask,&r)) + {*X=r.xmotion.x;*Y=r.xmotion.y;return 1;} + return 0; + } + */ + + + +void SourisPosition() +{ + int x,y,rx,ry; + unsigned int etat; + Window a,b; + XQueryPointer(display, ecran[0], &a, &b, &rx, &ry, &x, &y, &etat); + _X=x;_Y=y; +} + +int _longueur() +{ + return XQLength(display); +} + +int SourisCliquee() +{ + XEvent r; + if (XCheckWindowEvent(display,ecran[0],ButtonPressMask,&r)) + { + _X=r.xbutton.x; + _Y=r.xbutton.y; + return 1; + } + return 0; +} +int SpriteLibre() +{ + int i; + for(i=0;i=N) return; + if (S_alloue[n]!=1) return; + /* if ((S[n].etat)==0) + { + p=XCreatePixmap( display , DefaultRootWindow(display), S[n].tx ,S[n].ty , DefaultDepth(display,screen) ); + XCopyArea(display,ecran[num_ecran],p,gc,x,y,S[n].tx,S[n].ty,0,0); + S[n].sauvegarde=p; + + + }*/ + + /* restitue la zone */ + + //XSetClipMask(display,gc,None); + //if (S[n].etat!=0) XCopyArea(display,S[n].sauvegarde,ecran[num_ecran],gc,0,0,S[n].tx,S[n].ty,S[n].posx,S[n].posy); + + //XCopyArea(display,ecran[num_ecran],S[n].sauvegarde,gc,x,y,S[n].tx,S[n].ty,0,0); + if (S[n].smask!=0) { + XSetClipMask(display,gc,S[n].smask); + XSetClipOrigin(display,gc,x,y); + } + XCopyArea(display,S[n].s,ecran[num_ecran],gc,0,0,S[n].tx,S[n].ty,x,y); + S[n].posx=x; + S[n].posy=y; + S[n].etat=1; + XFlush(display); + XSetClipMask(display,gc,None); +} + +/*void EffacerSprite(int n) +{ + n--; + if (S[n].etat!=0) XCopyArea(display,S[n].sauvegarde,ecran[num_ecran],gc,0,0,S[n].tx,S[n].ty,S[n].posx,S[n].posy); + S[n].etat=0; +}*/ + +void LibererSprite(int n) +{ + n--; + if (n<0||n>=N) return; + if (S_alloue[n]!=1) return; + if (S[n].s>0) XFreePixmap(display,S[n].s); + if (S[n].smask>0) XFreePixmap(display,S[n].smask); + if (S[n].sauvegarde>0) XFreePixmap(display,S[n].sauvegarde); + S_alloue[n]=0; +} + diff --git a/bibliotheque-graphique-iut-1.1/src/lib/graph.lo b/bibliotheque-graphique-iut-1.1/src/lib/graph.lo new file mode 100644 index 0000000..ec16fde --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/lib/graph.lo @@ -0,0 +1,12 @@ +# graph.lo - a libtool object file +# Generated by libtool (GNU libtool) 2.4.2 +# +# Please DO NOT delete this file! +# It is necessary for linking the library. + +# Name of the PIC object. +pic_object='.libs/graph.o' + +# Name of the non-PIC object +non_pic_object='graph.o' + diff --git a/bibliotheque-graphique-iut-1.1/src/lib/graph.o b/bibliotheque-graphique-iut-1.1/src/lib/graph.o new file mode 100644 index 0000000000000000000000000000000000000000..01b9e2f5921d3cfb253578beeb22372d5f0d277e GIT binary patch literal 81136 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

9}D*^1BDxB&YN`cI>-B%_gVU+?;%OT<@H+qd(1! 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 +#include +#include "config.h" +#ifdef HAVE_XPM +#include +#endif + +/* stbi-1.33 - public domain JPEG/PNG reader - http://nothings.org/stb_image.c + when you control the images you're loading + no warranty implied; use at your own risk + + QUICK NOTES: + Primarily of interest to game developers and other people who can + avoid problematic images and only need the trivial interface + + JPEG baseline (no JPEG progressive) + PNG 8-bit-per-channel only + + TGA (not sure what subset, if a subset) + BMP non-1bpp, non-RLE + PSD (composited view only, no extra channels) + + GIF (*comp always reports as 4-channel) + HDR (radiance rgbE format) + PIC (Softimage PIC) + + - decode from memory or through FILE (define STBI_NO_STDIO to remove code) + - decode from arbitrary I/O callbacks + - overridable dequantizing-IDCT, YCbCr-to-RGB conversion (define STBI_SIMD) + + Latest revisions: + 1.33 (2011-07-14) minor fixes suggested by Dave Moore + 1.32 (2011-07-13) info support for all filetypes (SpartanJ) + 1.31 (2011-06-19) a few more leak fixes, bug in PNG handling (SpartanJ) + 1.30 (2011-06-11) added ability to load files via io callbacks (Ben Wenger) + 1.29 (2010-08-16) various warning fixes from Aurelien Pocheville + 1.28 (2010-08-01) fix bug in GIF palette transparency (SpartanJ) + 1.27 (2010-08-01) cast-to-uint8 to fix warnings (Laurent Gomila) + allow trailing 0s at end of image data (Laurent Gomila) + 1.26 (2010-07-24) fix bug in file buffering for PNG reported by SpartanJ + + See end of file for full revision history. + + TODO: + stbi_info support for BMP,PSD,HDR,PIC + + + ============================ Contributors ========================= + + Image formats Optimizations & bugfixes + Sean Barrett (jpeg, png, bmp) Fabian "ryg" Giesen + Nicolas Schulz (hdr, psd) + Jonathan Dummer (tga) Bug fixes & warning fixes + Jean-Marc Lienher (gif) Marc LeBlanc + Tom Seddon (pic) Christpher Lloyd + Thatcher Ulrich (psd) Dave Moore + Won Chun + the Horde3D community + Extensions, features Janez Zemva + Jetro Lauha (stbi_info) Jonathan Blow + James "moose2000" Brown (iPhone PNG) Laurent Gomila + Ben "Disch" Wenger (io callbacks) Aruelien Pocheville + Martin "SpartanJ" Golini Ryamond Barbiero + David Woo + + + If your name should be here but isn't, let Sean know. + +*/ + +#ifndef STBI_INCLUDE_STB_IMAGE_H +#define STBI_INCLUDE_STB_IMAGE_H + +// To get a header file for this, either cut and paste the header, +// or create stb_image.h, #define STBI_HEADER_FILE_ONLY, and +// then include stb_image.c from it. + +//// begin header file //////////////////////////////////////////////////// +// +// Limitations: +// - no jpeg progressive support +// - non-HDR formats support 8-bit samples only (jpeg, png) +// - no delayed line count (jpeg) -- IJG doesn't support either +// - no 1-bit BMP +// - GIF always returns *comp=4 +// +// Basic usage (see HDR discussion below): +// int x,y,n; +// unsigned char *data = stbi_load(filename, &x, &y, &n, 0); +// // ... process data if not NULL ... +// // ... x = width, y = height, n = # 8-bit components per pixel ... +// // ... replace '0' with '1'..'4' to force that many components per pixel +// // ... but 'n' will always be the number that it would have been if you said 0 +// stbi_image_free(data) +// +// Standard parameters: +// int *x -- outputs image width in pixels +// int *y -- outputs image height in pixels +// int *comp -- outputs # of image components in image file +// int req_comp -- if non-zero, # of image components requested in result +// +// The return value from an image loader is an 'unsigned char *' which points +// to the pixel data. The pixel data consists of *y scanlines of *x pixels, +// with each pixel consisting of N interleaved 8-bit components; the first +// pixel pointed to is top-left-most in the image. There is no padding between +// image scanlines or between pixels, regardless of format. The number of +// components N is 'req_comp' if req_comp is non-zero, or *comp otherwise. +// If req_comp is non-zero, *comp has the number of components that _would_ +// have been output otherwise. E.g. if you set req_comp to 4, you will always +// get RGBA output, but you can check *comp to easily see if it's opaque. +// +// An output image with N components has the following components interleaved +// in this order in each pixel: +// +// N=#comp components +// 1 grey +// 2 grey, alpha +// 3 red, green, blue +// 4 red, green, blue, alpha +// +// If image loading fails for any reason, the return value will be NULL, +// and *x, *y, *comp will be unchanged. The function stbi_failure_reason() +// can be queried for an extremely brief, end-user unfriendly explanation +// of why the load failed. Define STBI_NO_FAILURE_STRINGS to avoid +// compiling these strings at all, and STBI_FAILURE_USERMSG to get slightly +// more user-friendly ones. +// +// Paletted PNG, BMP, GIF, and PIC images are automatically depalettized. +// +// =========================================================================== +// +// iPhone PNG support: +// +// By default we convert iphone-formatted PNGs back to RGB; nominally they +// would silently load as BGR, except the existing code should have just +// failed on such iPhone PNGs. But you can disable this conversion by +// by calling stbi_convert_iphone_png_to_rgb(0), in which case +// you will always just get the native iphone "format" through. +// +// Call stbi_set_unpremultiply_on_load(1) as well to force a divide per +// pixel to remove any premultiplied alpha *only* if the image file explicitly +// says there's premultiplied data (currently only happens in iPhone images, +// and only if iPhone convert-to-rgb processing is on). +// +// =========================================================================== +// +// HDR image support (disable by defining STBI_NO_HDR) +// +// stb_image now supports loading HDR images in general, and currently +// the Radiance .HDR file format, although the support is provided +// generically. You can still load any file through the existing interface; +// if you attempt to load an HDR file, it will be automatically remapped to +// LDR, assuming gamma 2.2 and an arbitrary scale factor defaulting to 1; +// both of these constants can be reconfigured through this interface: +// +// stbi_hdr_to_ldr_gamma(2.2f); +// stbi_hdr_to_ldr_scale(1.0f); +// +// (note, do not use _inverse_ constants; stbi_image will invert them +// appropriately). +// +// Additionally, there is a new, parallel interface for loading files as +// (linear) floats to preserve the full dynamic range: +// +// float *data = stbi_loadf(filename, &x, &y, &n, 0); +// +// If you load LDR images through this interface, those images will +// be promoted to floating point values, run through the inverse of +// constants corresponding to the above: +// +// stbi_ldr_to_hdr_scale(1.0f); +// stbi_ldr_to_hdr_gamma(2.2f); +// +// Finally, given a filename (or an open file or memory block--see header +// file for details) containing image data, you can query for the "most +// appropriate" interface to use (that is, whether the image is HDR or +// not), using: +// +// stbi_is_hdr(char *filename); +// +// =========================================================================== +// +// I/O callbacks +// +// I/O callbacks allow you to read from arbitrary sources, like packaged +// files or some other source. Data read from callbacks are processed +// through a small internal buffer (currently 128 bytes) to try to reduce +// overhead. +// +// The three functions you must define are "read" (reads some bytes of data), +// "skip" (skips some bytes of data), "eof" (reports if the stream is at the end). + + +#ifndef STBI_NO_STDIO + +#if defined(_MSC_VER) && _MSC_VER >= 0x1400 +#define _CRT_SECURE_NO_WARNINGS // suppress bogus warnings about fopen() +#endif + +#include +#endif + +#define STBI_VERSION 1 + +enum +{ + STBI_default = 0, // only used for req_comp + + STBI_grey = 1, + STBI_grey_alpha = 2, + STBI_rgb = 3, + STBI_rgb_alpha = 4 +}; + +typedef unsigned char stbi_uc; + +#ifdef __cplusplus +extern "C" { +#endif + +////////////////////////////////////////////////////////////////////////////// +// +// PRIMARY API - works on images of any type +// + +// +// load image by filename, open file, or memory buffer +// + +extern stbi_uc *stbi_load_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp); + +#ifndef STBI_NO_STDIO +extern stbi_uc *stbi_load (char const *filename, int *x, int *y, int *comp, int req_comp); +extern stbi_uc *stbi_load_from_file (FILE *f, int *x, int *y, int *comp, int req_comp); +// for stbi_load_from_file, file pointer is left pointing immediately after image +#endif + +typedef struct +{ + int (*read) (void *user,char *data,int size); // fill 'data' with 'size' bytes. return number of bytes actually read + void (*skip) (void *user,unsigned n); // skip the next 'n' bytes + int (*eof) (void *user); // returns nonzero if we are at end of file/data +} stbi_io_callbacks; + +extern stbi_uc *stbi_load_from_callbacks (stbi_io_callbacks const *clbk, void *user, int *x, int *y, int *comp, int req_comp); + +#ifndef STBI_NO_HDR + extern float *stbi_loadf_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp); + + #ifndef STBI_NO_STDIO + extern float *stbi_loadf (char const *filename, int *x, int *y, int *comp, int req_comp); + extern float *stbi_loadf_from_file (FILE *f, int *x, int *y, int *comp, int req_comp); + #endif + + extern float *stbi_loadf_from_callbacks (stbi_io_callbacks const *clbk, void *user, int *x, int *y, int *comp, int req_comp); + + extern void stbi_hdr_to_ldr_gamma(float gamma); + extern void stbi_hdr_to_ldr_scale(float scale); + + extern void stbi_ldr_to_hdr_gamma(float gamma); + extern void stbi_ldr_to_hdr_scale(float scale); +#endif // STBI_NO_HDR + +// stbi_is_hdr is always defined +extern int stbi_is_hdr_from_callbacks(stbi_io_callbacks const *clbk, void *user); +extern int stbi_is_hdr_from_memory(stbi_uc const *buffer, int len); +#ifndef STBI_NO_STDIO +extern int stbi_is_hdr (char const *filename); +extern int stbi_is_hdr_from_file(FILE *f); +#endif // STBI_NO_STDIO + + +// get a VERY brief reason for failure +// NOT THREADSAFE +extern const char *stbi_failure_reason (void); + +// free the loaded image -- this is just free() +extern void stbi_image_free (void *retval_from_stbi_load); + +// get image dimensions & components without fully decoding +extern int stbi_info_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp); +extern int stbi_info_from_callbacks(stbi_io_callbacks const *clbk, void *user, int *x, int *y, int *comp); + +#ifndef STBI_NO_STDIO +extern int stbi_info (char const *filename, int *x, int *y, int *comp); +extern int stbi_info_from_file (FILE *f, int *x, int *y, int *comp); + +#endif + + + +// for image formats that explicitly notate that they have premultiplied alpha, +// we just return the colors as stored in the file. set this flag to force +// unpremultiplication. results are undefined if the unpremultiply overflow. +extern void stbi_set_unpremultiply_on_load(int flag_true_if_should_unpremultiply); + +// indicate whether we should process iphone images back to canonical format, +// or just pass them through "as-is" +extern void stbi_convert_iphone_png_to_rgb(int flag_true_if_should_convert); + + +// ZLIB client - used by PNG, available for other purposes + +extern char *stbi_zlib_decode_malloc_guesssize(const char *buffer, int len, int initial_size, int *outlen); +extern char *stbi_zlib_decode_malloc(const char *buffer, int len, int *outlen); +extern int stbi_zlib_decode_buffer(char *obuffer, int olen, const char *ibuffer, int ilen); + +extern char *stbi_zlib_decode_noheader_malloc(const char *buffer, int len, int *outlen); +extern int stbi_zlib_decode_noheader_buffer(char *obuffer, int olen, const char *ibuffer, int ilen); + + +// define faster low-level operations (typically SIMD support) +#ifdef STBI_SIMD +typedef void (*stbi_idct_8x8)(stbi_uc *out, int out_stride, short data[64], unsigned short *dequantize); +// compute an integer IDCT on "input" +// input[x] = data[x] * dequantize[x] +// write results to 'out': 64 samples, each run of 8 spaced by 'out_stride' +// CLAMP results to 0..255 +typedef void (*stbi_YCbCr_to_RGB_run)(stbi_uc *output, stbi_uc const *y, stbi_uc const *cb, stbi_uc const *cr, int count, int step); +// compute a conversion from YCbCr to RGB +// 'count' pixels +// write pixels to 'output'; each pixel is 'step' bytes (either 3 or 4; if 4, write '255' as 4th), order R,G,B +// y: Y input channel +// cb: Cb input channel; scale/biased to be 0..255 +// cr: Cr input channel; scale/biased to be 0..255 + +extern void stbi_install_idct(stbi_idct_8x8 func); +extern void stbi_install_YCbCr_to_RGB(stbi_YCbCr_to_RGB_run func); +#endif // STBI_SIMD + + +#ifdef __cplusplus +} +#endif + +// +// +//// end header file ///////////////////////////////////////////////////// +#endif // STBI_INCLUDE_STB_IMAGE_H + +#ifndef STBI_HEADER_FILE_ONLY + +#ifndef STBI_NO_HDR +#include // ldexp +#include // strcmp, strtok +#endif + +#ifndef STBI_NO_STDIO +#include +#endif +#include +#include +#include +#include + +#ifndef _MSC_VER + #ifdef __cplusplus + #define stbi_inline inline + #else + #define stbi_inline + #endif +#else + #define stbi_inline __forceinline +#endif + + +// implementation: +typedef unsigned char uint8; +typedef unsigned short uint16; +typedef signed short int16; +typedef unsigned int uint32; +typedef signed int int32; +typedef unsigned int uint; + +// should produce compiler error if size is wrong +typedef unsigned char validate_uint32[sizeof(uint32)==4 ? 1 : -1]; + +#if defined(STBI_NO_STDIO) && !defined(STBI_NO_WRITE) +#define STBI_NO_WRITE +#endif + +#define STBI_NOTUSED(v) (void)sizeof(v) + +#ifdef _MSC_VER +#define STBI_HAS_LROTL +#endif + +#ifdef STBI_HAS_LROTL + #define stbi_lrot(x,y) _lrotl(x,y) +#else + #define stbi_lrot(x,y) (((x) << (y)) | ((x) >> (32 - (y)))) +#endif + +/////////////////////////////////////////////// +// +// stbi struct and start_xxx functions + +// stbi structure is our basic context used by all images, so it +// contains all the IO context, plus some basic image information +typedef struct +{ + uint32 img_x, img_y; + int img_n, img_out_n; + + stbi_io_callbacks io; + void *io_user_data; + + int read_from_callbacks; + int buflen; + uint8 buffer_start[128]; + + uint8 *img_buffer, *img_buffer_end; + uint8 *img_buffer_original; +} stbi; + + +static void refill_buffer(stbi *s); + +// initialize a memory-decode context +static void start_mem(stbi *s, uint8 const *buffer, int len) +{ + s->io.read = NULL; + s->read_from_callbacks = 0; + s->img_buffer = s->img_buffer_original = (uint8 *) buffer; + s->img_buffer_end = (uint8 *) buffer+len; +} + +// initialize a callback-based context +static void start_callbacks(stbi *s, stbi_io_callbacks *c, void *user) +{ + s->io = *c; + s->io_user_data = user; + s->buflen = sizeof(s->buffer_start); + s->read_from_callbacks = 1; + s->img_buffer_original = s->buffer_start; + refill_buffer(s); +} + +#ifndef STBI_NO_STDIO + +static int stdio_read(void *user, char *data, int size) +{ + return (int) fread(data,1,size,(FILE*) user); +} + +static void stdio_skip(void *user, unsigned n) +{ + fseek((FILE*) user, n, SEEK_CUR); +} + +static int stdio_eof(void *user) +{ + return feof((FILE*) user); +} + +static stbi_io_callbacks stbi_stdio_callbacks = +{ + stdio_read, + stdio_skip, + stdio_eof, +}; + +static void start_file(stbi *s, FILE *f) +{ + start_callbacks(s, &stbi_stdio_callbacks, (void *) f); +} + +//static void stop_file(stbi *s) { } + +#endif // !STBI_NO_STDIO + +static void stbi_rewind(stbi *s) +{ + // conceptually rewind SHOULD rewind to the beginning of the stream, + // but we just rewind to the beginning of the initial buffer, because + // we only use it after doing 'test', which only ever looks at at most 92 bytes + s->img_buffer = s->img_buffer_original; +} + +static int stbi_jpeg_test(stbi *s); +static stbi_uc *stbi_jpeg_load(stbi *s, int *x, int *y, int *comp, int req_comp); +static int stbi_jpeg_info(stbi *s, int *x, int *y, int *comp); +static int stbi_png_test(stbi *s); +static stbi_uc *stbi_png_load(stbi *s, int *x, int *y, int *comp, int req_comp); +static int stbi_png_info(stbi *s, int *x, int *y, int *comp); +static int stbi_bmp_test(stbi *s); +static stbi_uc *stbi_bmp_load(stbi *s, int *x, int *y, int *comp, int req_comp); +static int stbi_tga_test(stbi *s); +static stbi_uc *stbi_tga_load(stbi *s, int *x, int *y, int *comp, int req_comp); +static int stbi_tga_info(stbi *s, int *x, int *y, int *comp); +static int stbi_psd_test(stbi *s); +static stbi_uc *stbi_psd_load(stbi *s, int *x, int *y, int *comp, int req_comp); +static int stbi_hdr_test(stbi *s); +static float *stbi_hdr_load(stbi *s, int *x, int *y, int *comp, int req_comp); +static int stbi_pic_test(stbi *s); +static stbi_uc *stbi_pic_load(stbi *s, int *x, int *y, int *comp, int req_comp); +static int stbi_gif_test(stbi *s); +static stbi_uc *stbi_gif_load(stbi *s, int *x, int *y, int *comp, int req_comp); +static int stbi_gif_info(stbi *s, int *x, int *y, int *comp); + + +// this is not threadsafe +static const char *failure_reason; + +const char *stbi_failure_reason(void) +{ + return failure_reason; +} + +static int e(const char *str) +{ + failure_reason = str; + return 0; +} + +// e - error +// epf - error returning pointer to float +// epuc - error returning pointer to unsigned char + +#ifdef STBI_NO_FAILURE_STRINGS + #define e(x,y) 0 +#elif defined(STBI_FAILURE_USERMSG) + #define e(x,y) e(y) +#else + #define e(x,y) e(x) +#endif + +#define epf(x,y) ((float *) (e(x,y)?NULL:NULL)) +#define epuc(x,y) ((unsigned char *) (e(x,y)?NULL:NULL)) + +void stbi_image_free(void *retval_from_stbi_load) +{ + free(retval_from_stbi_load); +} + +#ifndef STBI_NO_HDR +static float *ldr_to_hdr(stbi_uc *data, int x, int y, int comp); +static stbi_uc *hdr_to_ldr(float *data, int x, int y, int comp); +#endif + +static unsigned char *stbi_load_main(stbi *s, int *x, int *y, int *comp, int req_comp) +{ + if (stbi_jpeg_test(s)) return stbi_jpeg_load(s,x,y,comp,req_comp); + if (stbi_png_test(s)) return stbi_png_load(s,x,y,comp,req_comp); + if (stbi_bmp_test(s)) return stbi_bmp_load(s,x,y,comp,req_comp); + if (stbi_gif_test(s)) return stbi_gif_load(s,x,y,comp,req_comp); + if (stbi_psd_test(s)) return stbi_psd_load(s,x,y,comp,req_comp); + if (stbi_pic_test(s)) return stbi_pic_load(s,x,y,comp,req_comp); + + #ifndef STBI_NO_HDR + if (stbi_hdr_test(s)) { + float *hdr = stbi_hdr_load(s, x,y,comp,req_comp); + return hdr_to_ldr(hdr, *x, *y, req_comp ? req_comp : *comp); + } + #endif + + // test tga last because it's a crappy test! + if (stbi_tga_test(s)) + return stbi_tga_load(s,x,y,comp,req_comp); + return epuc("unknown image type", "Image not of any known type, or corrupt"); +} + +#ifndef STBI_NO_STDIO +unsigned char *stbi_load(char const *filename, int *x, int *y, int *comp, int req_comp) +{ + FILE *f = fopen(filename, "rb"); + unsigned char *result; + if (!f) return epuc("can't fopen", "Unable to open file"); + result = stbi_load_from_file(f,x,y,comp,req_comp); + fclose(f); + return result; +} + +unsigned char *stbi_load_from_file(FILE *f, int *x, int *y, int *comp, int req_comp) +{ + stbi s; + start_file(&s,f); + return stbi_load_main(&s,x,y,comp,req_comp); +} +#endif //!STBI_NO_STDIO + +unsigned char *stbi_load_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp) +{ + stbi s; + start_mem(&s,buffer,len); + return stbi_load_main(&s,x,y,comp,req_comp); +} + +unsigned char *stbi_load_from_callbacks(stbi_io_callbacks const *clbk, void *user, int *x, int *y, int *comp, int req_comp) +{ + stbi s; + start_callbacks(&s, (stbi_io_callbacks *) clbk, user); + return stbi_load_main(&s,x,y,comp,req_comp); +} + +#ifndef STBI_NO_HDR + +float *stbi_loadf_main(stbi *s, int *x, int *y, int *comp, int req_comp) +{ + unsigned char *data; + #ifndef STBI_NO_HDR + if (stbi_hdr_test(s)) + return stbi_hdr_load(s,x,y,comp,req_comp); + #endif + data = stbi_load_main(s, x, y, comp, req_comp); + if (data) + return ldr_to_hdr(data, *x, *y, req_comp ? req_comp : *comp); + return epf("unknown image type", "Image not of any known type, or corrupt"); +} + +float *stbi_loadf_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp) +{ + stbi s; + start_mem(&s,buffer,len); + return stbi_loadf_main(&s,x,y,comp,req_comp); +} + +float *stbi_loadf_from_callbacks(stbi_io_callbacks const *clbk, void *user, int *x, int *y, int *comp, int req_comp) +{ + stbi s; + start_callbacks(&s, (stbi_io_callbacks *) clbk, user); + return stbi_loadf_main(&s,x,y,comp,req_comp); +} + +#ifndef STBI_NO_STDIO +float *stbi_loadf(char const *filename, int *x, int *y, int *comp, int req_comp) +{ + FILE *f = fopen(filename, "rb"); + float *result; + if (!f) return epf("can't fopen", "Unable to open file"); + result = stbi_loadf_from_file(f,x,y,comp,req_comp); + fclose(f); + return result; +} + +float *stbi_loadf_from_file(FILE *f, int *x, int *y, int *comp, int req_comp) +{ + stbi s; + start_file(&s,f); + return stbi_loadf_main(&s,x,y,comp,req_comp); +} +#endif // !STBI_NO_STDIO + +#endif // !STBI_NO_HDR + +// these is-hdr-or-not is defined independent of whether STBI_NO_HDR is +// defined, for API simplicity; if STBI_NO_HDR is defined, it always +// reports false! + +int stbi_is_hdr_from_memory(stbi_uc const *buffer, int len) +{ + #ifndef STBI_NO_HDR + stbi s; + start_mem(&s,buffer,len); + return stbi_hdr_test(&s); + #else + STBI_NOTUSED(buffer); + STBI_NOTUSED(len); + return 0; + #endif +} + +#ifndef STBI_NO_STDIO +extern int stbi_is_hdr (char const *filename) +{ + FILE *f = fopen(filename, "rb"); + int result=0; + if (f) { + result = stbi_is_hdr_from_file(f); + fclose(f); + } + return result; +} + +extern int stbi_is_hdr_from_file(FILE *f) +{ + #ifndef STBI_NO_HDR + stbi s; + start_file(&s,f); + return stbi_hdr_test(&s); + #else + return 0; + #endif +} +#endif // !STBI_NO_STDIO + +extern int stbi_is_hdr_from_callbacks(stbi_io_callbacks const *clbk, void *user) +{ + #ifndef STBI_NO_HDR + stbi s; + start_callbacks(&s, (stbi_io_callbacks *) clbk, user); + return stbi_hdr_test(&s); + #else + return 0; + #endif +} + +#ifndef STBI_NO_HDR +static float h2l_gamma_i=1.0f/2.2f, h2l_scale_i=1.0f; +static float l2h_gamma=2.2f, l2h_scale=1.0f; + +void stbi_hdr_to_ldr_gamma(float gamma) { h2l_gamma_i = 1/gamma; } +void stbi_hdr_to_ldr_scale(float scale) { h2l_scale_i = 1/scale; } + +void stbi_ldr_to_hdr_gamma(float gamma) { l2h_gamma = gamma; } +void stbi_ldr_to_hdr_scale(float scale) { l2h_scale = scale; } +#endif + + +////////////////////////////////////////////////////////////////////////////// +// +// Common code used by all image loaders +// + +enum +{ + SCAN_load=0, + SCAN_type, + SCAN_header +}; + +static void refill_buffer(stbi *s) +{ + int n = (s->io.read)(s->io_user_data,(char*)s->buffer_start,s->buflen); + if (n == 0) { + // at end of file, treat same as if from memory + s->read_from_callbacks = 0; + s->img_buffer = s->img_buffer_end-1; + *s->img_buffer = 0; + } else { + s->img_buffer = s->buffer_start; + s->img_buffer_end = s->buffer_start + n; + } +} + +stbi_inline static int get8(stbi *s) +{ + if (s->img_buffer < s->img_buffer_end) + return *s->img_buffer++; + if (s->read_from_callbacks) { + refill_buffer(s); + return *s->img_buffer++; + } + return 0; +} + +stbi_inline static int at_eof(stbi *s) +{ + if (s->io.read) { + if (!(s->io.eof)(s->io_user_data)) return 0; + // if feof() is true, check if buffer = end + // special case: we've only got the special 0 character at the end + if (s->read_from_callbacks == 0) return 1; + } + + return s->img_buffer >= s->img_buffer_end; +} + +stbi_inline static uint8 get8u(stbi *s) +{ + return (uint8) get8(s); +} + +static void skip(stbi *s, int n) +{ + if (s->io.read) { + int blen = s->img_buffer_end - s->img_buffer; + if (blen < n) { + s->img_buffer = s->img_buffer_end; + (s->io.skip)(s->io_user_data, n - blen); + return; + } + } + s->img_buffer += n; +} + +static int getn(stbi *s, stbi_uc *buffer, int n) +{ + if (s->io.read) { + int blen = s->img_buffer_end - s->img_buffer; + if (blen < n) { + int res, count; + + memcpy(buffer, s->img_buffer, blen); + + count = (s->io.read)(s->io_user_data, (char*) buffer + blen, n - blen); + res = (count == (n-blen)); + s->img_buffer = s->img_buffer_end; + return res; + } + } + + if (s->img_buffer+n <= s->img_buffer_end) { + memcpy(buffer, s->img_buffer, n); + s->img_buffer += n; + return 1; + } else + return 0; +} + +static int get16(stbi *s) +{ + int z = get8(s); + return (z << 8) + get8(s); +} + +static uint32 get32(stbi *s) +{ + uint32 z = get16(s); + return (z << 16) + get16(s); +} + +static int get16le(stbi *s) +{ + int z = get8(s); + return z + (get8(s) << 8); +} + +static uint32 get32le(stbi *s) +{ + uint32 z = get16le(s); + return z + (get16le(s) << 16); +} + +////////////////////////////////////////////////////////////////////////////// +// +// generic converter from built-in img_n to req_comp +// individual types do this automatically as much as possible (e.g. jpeg +// does all cases internally since it needs to colorspace convert anyway, +// and it never has alpha, so very few cases ). png can automatically +// interleave an alpha=255 channel, but falls back to this for other cases +// +// assume data buffer is malloced, so malloc a new one and free that one +// only failure mode is malloc failing + +static uint8 compute_y(int r, int g, int b) +{ + return (uint8) (((r*77) + (g*150) + (29*b)) >> 8); +} + +static unsigned char *convert_format(unsigned char *data, int img_n, int req_comp, uint x, uint y) +{ + int i,j; + unsigned char *good; + + if (req_comp == img_n) return data; + assert(req_comp >= 1 && req_comp <= 4); + + good = (unsigned char *) malloc(req_comp * x * y); + if (good == NULL) { + free(data); + return epuc("outofmem", "Out of memory"); + } + + for (j=0; j < (int) y; ++j) { + unsigned char *src = data + j * x * img_n ; + unsigned char *dest = good + j * x * req_comp; + + #define COMBO(a,b) ((a)*8+(b)) + #define CASE(a,b) case COMBO(a,b): for(i=x-1; i >= 0; --i, src += a, dest += b) + // convert source image with img_n components to one with req_comp components; + // avoid switch per pixel, so use switch per scanline and massive macros + switch (COMBO(img_n, req_comp)) { + CASE(1,2) dest[0]=src[0], dest[1]=255; break; + CASE(1,3) dest[0]=dest[1]=dest[2]=src[0]; break; + CASE(1,4) dest[0]=dest[1]=dest[2]=src[0], dest[3]=255; break; + CASE(2,1) dest[0]=src[0]; break; + CASE(2,3) dest[0]=dest[1]=dest[2]=src[0]; break; + CASE(2,4) dest[0]=dest[1]=dest[2]=src[0], dest[3]=src[1]; break; + CASE(3,4) dest[0]=src[0],dest[1]=src[1],dest[2]=src[2],dest[3]=255; break; + CASE(3,1) dest[0]=compute_y(src[0],src[1],src[2]); break; + CASE(3,2) dest[0]=compute_y(src[0],src[1],src[2]), dest[1] = 255; break; + CASE(4,1) dest[0]=compute_y(src[0],src[1],src[2]); break; + CASE(4,2) dest[0]=compute_y(src[0],src[1],src[2]), dest[1] = src[3]; break; + CASE(4,3) dest[0]=src[0],dest[1]=src[1],dest[2]=src[2]; break; + default: assert(0); + } + #undef CASE + } + + free(data); + return good; +} + +#ifndef STBI_NO_HDR +static float *ldr_to_hdr(stbi_uc *data, int x, int y, int comp) +{ + int i,k,n; + float *output = (float *) malloc(x * y * comp * sizeof(float)); + if (output == NULL) { free(data); return epf("outofmem", "Out of memory"); } + // compute number of non-alpha components + if (comp & 1) n = comp; else n = comp-1; + for (i=0; i < x*y; ++i) { + for (k=0; k < n; ++k) { + output[i*comp + k] = (float) pow(data[i*comp+k]/255.0f, l2h_gamma) * l2h_scale; + } + if (k < comp) output[i*comp + k] = data[i*comp+k]/255.0f; + } + free(data); + return output; +} + +#define float2int(x) ((int) (x)) +static stbi_uc *hdr_to_ldr(float *data, int x, int y, int comp) +{ + int i,k,n; + stbi_uc *output = (stbi_uc *) malloc(x * y * comp); + if (output == NULL) { free(data); return epuc("outofmem", "Out of memory"); } + // compute number of non-alpha components + if (comp & 1) n = comp; else n = comp-1; + for (i=0; i < x*y; ++i) { + for (k=0; k < n; ++k) { + float z = (float) pow(data[i*comp+k]*h2l_scale_i, h2l_gamma_i) * 255 + 0.5f; + if (z < 0) z = 0; + if (z > 255) z = 255; + output[i*comp + k] = (uint8) float2int(z); + } + if (k < comp) { + float z = data[i*comp+k] * 255 + 0.5f; + if (z < 0) z = 0; + if (z > 255) z = 255; + output[i*comp + k] = (uint8) float2int(z); + } + } + free(data); + return output; +} +#endif + +////////////////////////////////////////////////////////////////////////////// +// +// "baseline" JPEG/JFIF decoder (not actually fully baseline implementation) +// +// simple implementation +// - channel subsampling of at most 2 in each dimension +// - doesn't support delayed output of y-dimension +// - simple interface (only one output format: 8-bit interleaved RGB) +// - doesn't try to recover corrupt jpegs +// - doesn't allow partial loading, loading multiple at once +// - still fast on x86 (copying globals into locals doesn't help x86) +// - allocates lots of intermediate memory (full size of all components) +// - non-interleaved case requires this anyway +// - allows good upsampling (see next) +// high-quality +// - upsampled channels are bilinearly interpolated, even across blocks +// - quality integer IDCT derived from IJG's 'slow' +// performance +// - fast huffman; reasonable integer IDCT +// - uses a lot of intermediate memory, could cache poorly +// - load http://nothings.org/remote/anemones.jpg 3 times on 2.8Ghz P4 +// stb_jpeg: 1.34 seconds (MSVC6, default release build) +// stb_jpeg: 1.06 seconds (MSVC6, processor = Pentium Pro) +// IJL11.dll: 1.08 seconds (compiled by intel) +// IJG 1998: 0.98 seconds (MSVC6, makefile provided by IJG) +// IJG 1998: 0.95 seconds (MSVC6, makefile + proc=PPro) + +// huffman decoding acceleration +#define FAST_BITS 9 // larger handles more cases; smaller stomps less cache + +typedef struct +{ + uint8 fast[1 << FAST_BITS]; + // weirdly, repacking this into AoS is a 10% speed loss, instead of a win + uint16 code[256]; + uint8 values[256]; + uint8 size[257]; + unsigned int maxcode[18]; + int delta[17]; // old 'firstsymbol' - old 'firstcode' +} huffman; + +typedef struct +{ + #ifdef STBI_SIMD + unsigned short dequant2[4][64]; + #endif + stbi *s; + huffman huff_dc[4]; + huffman huff_ac[4]; + uint8 dequant[4][64]; + +// sizes for components, interleaved MCUs + int img_h_max, img_v_max; + int img_mcu_x, img_mcu_y; + int img_mcu_w, img_mcu_h; + +// definition of jpeg image component + struct + { + int id; + int h,v; + int tq; + int hd,ha; + int dc_pred; + + int x,y,w2,h2; + uint8 *data; + void *raw_data; + uint8 *linebuf; + } img_comp[4]; + + uint32 code_buffer; // jpeg entropy-coded buffer + int code_bits; // number of valid bits + unsigned char marker; // marker seen while filling entropy buffer + int nomore; // flag if we saw a marker so must stop + + int scan_n, order[4]; + int restart_interval, todo; +} jpeg; + +static int build_huffman(huffman *h, int *count) +{ + int i,j,k=0,code; + // build size list for each symbol (from JPEG spec) + for (i=0; i < 16; ++i) + for (j=0; j < count[i]; ++j) + h->size[k++] = (uint8) (i+1); + h->size[k] = 0; + + // compute actual symbols (from jpeg spec) + code = 0; + k = 0; + for(j=1; j <= 16; ++j) { + // compute delta to add to code to compute symbol id + h->delta[j] = k - code; + if (h->size[k] == j) { + while (h->size[k] == j) + h->code[k++] = (uint16) (code++); + if (code-1 >= (1 << j)) return e("bad code lengths","Corrupt JPEG"); + } + // compute largest code + 1 for this size, preshifted as needed later + h->maxcode[j] = code << (16-j); + code <<= 1; + } + h->maxcode[j] = 0xffffffff; + + // build non-spec acceleration table; 255 is flag for not-accelerated + memset(h->fast, 255, 1 << FAST_BITS); + for (i=0; i < k; ++i) { + int s = h->size[i]; + if (s <= FAST_BITS) { + int c = h->code[i] << (FAST_BITS-s); + int m = 1 << (FAST_BITS-s); + for (j=0; j < m; ++j) { + h->fast[c+j] = (uint8) i; + } + } + } + return 1; +} + +static void grow_buffer_unsafe(jpeg *j) +{ + do { + int b = j->nomore ? 0 : get8(j->s); + if (b == 0xff) { + int c = get8(j->s); + if (c != 0) { + j->marker = (unsigned char) c; + j->nomore = 1; + return; + } + } + j->code_buffer |= b << (24 - j->code_bits); + j->code_bits += 8; + } while (j->code_bits <= 24); +} + +// (1 << n) - 1 +static uint32 bmask[17]={0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535}; + +// decode a jpeg huffman value from the bitstream +stbi_inline static int decode(jpeg *j, huffman *h) +{ + unsigned int temp; + int c,k; + + if (j->code_bits < 16) grow_buffer_unsafe(j); + + // look at the top FAST_BITS and determine what symbol ID it is, + // if the code is <= FAST_BITS + c = (j->code_buffer >> (32 - FAST_BITS)) & ((1 << FAST_BITS)-1); + k = h->fast[c]; + if (k < 255) { + int s = h->size[k]; + if (s > j->code_bits) + return -1; + j->code_buffer <<= s; + j->code_bits -= s; + return h->values[k]; + } + + // naive test is to shift the code_buffer down so k bits are + // valid, then test against maxcode. To speed this up, we've + // preshifted maxcode left so that it has (16-k) 0s at the + // end; in other words, regardless of the number of bits, it + // wants to be compared against something shifted to have 16; + // that way we don't need to shift inside the loop. + temp = j->code_buffer >> 16; + for (k=FAST_BITS+1 ; ; ++k) + if (temp < h->maxcode[k]) + break; + if (k == 17) { + // error! code not found + j->code_bits -= 16; + return -1; + } + + if (k > j->code_bits) + return -1; + + // convert the huffman code to the symbol id + c = ((j->code_buffer >> (32 - k)) & bmask[k]) + h->delta[k]; + assert((((j->code_buffer) >> (32 - h->size[c])) & bmask[h->size[c]]) == h->code[c]); + + // convert the id to a symbol + j->code_bits -= k; + j->code_buffer <<= k; + return h->values[c]; +} + +// combined JPEG 'receive' and JPEG 'extend', since baseline +// always extends everything it receives. +stbi_inline static int extend_receive(jpeg *j, int n) +{ + unsigned int m = 1 << (n-1); + unsigned int k; + if (j->code_bits < n) grow_buffer_unsafe(j); + + #if 1 + k = stbi_lrot(j->code_buffer, n); + j->code_buffer = k & ~bmask[n]; + k &= bmask[n]; + j->code_bits -= n; + #else + k = (j->code_buffer >> (32 - n)) & bmask[n]; + j->code_bits -= n; + j->code_buffer <<= n; + #endif + // the following test is probably a random branch that won't + // predict well. I tried to table accelerate it but failed. + // maybe it's compiling as a conditional move? + if (k < m) + return (-1 << n) + k + 1; + else + return k; +} + +// given a value that's at position X in the zigzag stream, +// where does it appear in the 8x8 matrix coded as row-major? +static uint8 dezigzag[64+15] = +{ + 0, 1, 8, 16, 9, 2, 3, 10, + 17, 24, 32, 25, 18, 11, 4, 5, + 12, 19, 26, 33, 40, 48, 41, 34, + 27, 20, 13, 6, 7, 14, 21, 28, + 35, 42, 49, 56, 57, 50, 43, 36, + 29, 22, 15, 23, 30, 37, 44, 51, + 58, 59, 52, 45, 38, 31, 39, 46, + 53, 60, 61, 54, 47, 55, 62, 63, + // let corrupt input sample past end + 63, 63, 63, 63, 63, 63, 63, 63, + 63, 63, 63, 63, 63, 63, 63 +}; + +// decode one 64-entry block-- +static int decode_block(jpeg *j, short data[64], huffman *hdc, huffman *hac, int b) +{ + int diff,dc,k; + int t = decode(j, hdc); + if (t < 0) return e("bad huffman code","Corrupt JPEG"); + + // 0 all the ac values now so we can do it 32-bits at a time + memset(data,0,64*sizeof(data[0])); + + diff = t ? extend_receive(j, t) : 0; + dc = j->img_comp[b].dc_pred + diff; + j->img_comp[b].dc_pred = dc; + data[0] = (short) dc; + + // decode AC components, see JPEG spec + k = 1; + do { + int r,s; + int rs = decode(j, hac); + if (rs < 0) return e("bad huffman code","Corrupt JPEG"); + s = rs & 15; + r = rs >> 4; + if (s == 0) { + if (rs != 0xf0) break; // end block + k += 16; + } else { + k += r; + // decode into unzigzag'd location + data[dezigzag[k++]] = (short) extend_receive(j,s); + } + } while (k < 64); + return 1; +} + +// take a -128..127 value and clamp it and convert to 0..255 +stbi_inline static uint8 clamp(int x) +{ + // trick to use a single test to catch both cases + if ((unsigned int) x > 255) { + if (x < 0) return 0; + if (x > 255) return 255; + } + return (uint8) x; +} + +#define f2f(x) (int) (((x) * 4096 + 0.5)) +#define fsh(x) ((x) << 12) + +// derived from jidctint -- DCT_ISLOW +#define IDCT_1D(s0,s1,s2,s3,s4,s5,s6,s7) \ + int t0,t1,t2,t3,p1,p2,p3,p4,p5,x0,x1,x2,x3; \ + p2 = s2; \ + p3 = s6; \ + p1 = (p2+p3) * f2f(0.5411961f); \ + t2 = p1 + p3*f2f(-1.847759065f); \ + t3 = p1 + p2*f2f( 0.765366865f); \ + p2 = s0; \ + p3 = s4; \ + t0 = fsh(p2+p3); \ + t1 = fsh(p2-p3); \ + x0 = t0+t3; \ + x3 = t0-t3; \ + x1 = t1+t2; \ + x2 = t1-t2; \ + t0 = s7; \ + t1 = s5; \ + t2 = s3; \ + t3 = s1; \ + p3 = t0+t2; \ + p4 = t1+t3; \ + p1 = t0+t3; \ + p2 = t1+t2; \ + p5 = (p3+p4)*f2f( 1.175875602f); \ + t0 = t0*f2f( 0.298631336f); \ + t1 = t1*f2f( 2.053119869f); \ + t2 = t2*f2f( 3.072711026f); \ + t3 = t3*f2f( 1.501321110f); \ + p1 = p5 + p1*f2f(-0.899976223f); \ + p2 = p5 + p2*f2f(-2.562915447f); \ + p3 = p3*f2f(-1.961570560f); \ + p4 = p4*f2f(-0.390180644f); \ + t3 += p1+p4; \ + t2 += p2+p3; \ + t1 += p2+p4; \ + t0 += p1+p3; + +#ifdef STBI_SIMD +typedef unsigned short stbi_dequantize_t; +#else +typedef uint8 stbi_dequantize_t; +#endif + +// .344 seconds on 3*anemones.jpg +static void idct_block(uint8 *out, int out_stride, short data[64], stbi_dequantize_t *dequantize) +{ + int i,val[64],*v=val; + stbi_dequantize_t *dq = dequantize; + uint8 *o; + short *d = data; + + // columns + for (i=0; i < 8; ++i,++d,++dq, ++v) { + // if all zeroes, shortcut -- this avoids dequantizing 0s and IDCTing + if (d[ 8]==0 && d[16]==0 && d[24]==0 && d[32]==0 + && d[40]==0 && d[48]==0 && d[56]==0) { + // no shortcut 0 seconds + // (1|2|3|4|5|6|7)==0 0 seconds + // all separate -0.047 seconds + // 1 && 2|3 && 4|5 && 6|7: -0.047 seconds + int dcterm = d[0] * dq[0] << 2; + v[0] = v[8] = v[16] = v[24] = v[32] = v[40] = v[48] = v[56] = dcterm; + } else { + IDCT_1D(d[ 0]*dq[ 0],d[ 8]*dq[ 8],d[16]*dq[16],d[24]*dq[24], + d[32]*dq[32],d[40]*dq[40],d[48]*dq[48],d[56]*dq[56]) + // constants scaled things up by 1<<12; let's bring them back + // down, but keep 2 extra bits of precision + x0 += 512; x1 += 512; x2 += 512; x3 += 512; + v[ 0] = (x0+t3) >> 10; + v[56] = (x0-t3) >> 10; + v[ 8] = (x1+t2) >> 10; + v[48] = (x1-t2) >> 10; + v[16] = (x2+t1) >> 10; + v[40] = (x2-t1) >> 10; + v[24] = (x3+t0) >> 10; + v[32] = (x3-t0) >> 10; + } + } + + for (i=0, v=val, o=out; i < 8; ++i,v+=8,o+=out_stride) { + // no fast case since the first 1D IDCT spread components out + IDCT_1D(v[0],v[1],v[2],v[3],v[4],v[5],v[6],v[7]) + // constants scaled things up by 1<<12, plus we had 1<<2 from first + // loop, plus horizontal and vertical each scale by sqrt(8) so together + // we've got an extra 1<<3, so 1<<17 total we need to remove. + // so we want to round that, which means adding 0.5 * 1<<17, + // aka 65536. Also, we'll end up with -128 to 127 that we want + // to encode as 0..255 by adding 128, so we'll add that before the shift + x0 += 65536 + (128<<17); + x1 += 65536 + (128<<17); + x2 += 65536 + (128<<17); + x3 += 65536 + (128<<17); + // tried computing the shifts into temps, or'ing the temps to see + // if any were out of range, but that was slower + o[0] = clamp((x0+t3) >> 17); + o[7] = clamp((x0-t3) >> 17); + o[1] = clamp((x1+t2) >> 17); + o[6] = clamp((x1-t2) >> 17); + o[2] = clamp((x2+t1) >> 17); + o[5] = clamp((x2-t1) >> 17); + o[3] = clamp((x3+t0) >> 17); + o[4] = clamp((x3-t0) >> 17); + } +} + +#ifdef STBI_SIMD +static stbi_idct_8x8 stbi_idct_installed = idct_block; + +void stbi_install_idct(stbi_idct_8x8 func) +{ + stbi_idct_installed = func; +} +#endif + +#define MARKER_none 0xff +// if there's a pending marker from the entropy stream, return that +// otherwise, fetch from the stream and get a marker. if there's no +// marker, return 0xff, which is never a valid marker value +static uint8 get_marker(jpeg *j) +{ + uint8 x; + if (j->marker != MARKER_none) { x = j->marker; j->marker = MARKER_none; return x; } + x = get8u(j->s); + if (x != 0xff) return MARKER_none; + while (x == 0xff) + x = get8u(j->s); + return x; +} + +// in each scan, we'll have scan_n components, and the order +// of the components is specified by order[] +#define RESTART(x) ((x) >= 0xd0 && (x) <= 0xd7) + +// after a restart interval, reset the entropy decoder and +// the dc prediction +static void reset(jpeg *j) +{ + j->code_bits = 0; + j->code_buffer = 0; + j->nomore = 0; + j->img_comp[0].dc_pred = j->img_comp[1].dc_pred = j->img_comp[2].dc_pred = 0; + j->marker = MARKER_none; + j->todo = j->restart_interval ? j->restart_interval : 0x7fffffff; + // no more than 1<<31 MCUs if no restart_interal? that's plenty safe, + // since we don't even allow 1<<30 pixels +} + +static int parse_entropy_coded_data(jpeg *z) +{ + reset(z); + if (z->scan_n == 1) { + int i,j; + #ifdef STBI_SIMD + __declspec(align(16)) + #endif + short data[64]; + int n = z->order[0]; + // non-interleaved data, we just need to process one block at a time, + // in trivial scanline order + // number of blocks to do just depends on how many actual "pixels" this + // component has, independent of interleaved MCU blocking and such + int w = (z->img_comp[n].x+7) >> 3; + int h = (z->img_comp[n].y+7) >> 3; + for (j=0; j < h; ++j) { + for (i=0; i < w; ++i) { + if (!decode_block(z, data, z->huff_dc+z->img_comp[n].hd, z->huff_ac+z->img_comp[n].ha, n)) return 0; + #ifdef STBI_SIMD + stbi_idct_installed(z->img_comp[n].data+z->img_comp[n].w2*j*8+i*8, z->img_comp[n].w2, data, z->dequant2[z->img_comp[n].tq]); + #else + idct_block(z->img_comp[n].data+z->img_comp[n].w2*j*8+i*8, z->img_comp[n].w2, data, z->dequant[z->img_comp[n].tq]); + #endif + // every data block is an MCU, so countdown the restart interval + if (--z->todo <= 0) { + if (z->code_bits < 24) grow_buffer_unsafe(z); + // if it's NOT a restart, then just bail, so we get corrupt data + // rather than no data + if (!RESTART(z->marker)) return 1; + reset(z); + } + } + } + } else { // interleaved! + int i,j,k,x,y; + short data[64]; + for (j=0; j < z->img_mcu_y; ++j) { + for (i=0; i < z->img_mcu_x; ++i) { + // scan an interleaved mcu... process scan_n components in order + for (k=0; k < z->scan_n; ++k) { + int n = z->order[k]; + // scan out an mcu's worth of this component; that's just determined + // by the basic H and V specified for the component + for (y=0; y < z->img_comp[n].v; ++y) { + for (x=0; x < z->img_comp[n].h; ++x) { + int x2 = (i*z->img_comp[n].h + x)*8; + int y2 = (j*z->img_comp[n].v + y)*8; + if (!decode_block(z, data, z->huff_dc+z->img_comp[n].hd, z->huff_ac+z->img_comp[n].ha, n)) return 0; + #ifdef STBI_SIMD + stbi_idct_installed(z->img_comp[n].data+z->img_comp[n].w2*y2+x2, z->img_comp[n].w2, data, z->dequant2[z->img_comp[n].tq]); + #else + idct_block(z->img_comp[n].data+z->img_comp[n].w2*y2+x2, z->img_comp[n].w2, data, z->dequant[z->img_comp[n].tq]); + #endif + } + } + } + // after all interleaved components, that's an interleaved MCU, + // so now count down the restart interval + if (--z->todo <= 0) { + if (z->code_bits < 24) grow_buffer_unsafe(z); + // if it's NOT a restart, then just bail, so we get corrupt data + // rather than no data + if (!RESTART(z->marker)) return 1; + reset(z); + } + } + } + } + return 1; +} + +static int process_marker(jpeg *z, int m) +{ + int L; + switch (m) { + case MARKER_none: // no marker found + return e("expected marker","Corrupt JPEG"); + + case 0xC2: // SOF - progressive + return e("progressive jpeg","JPEG format not supported (progressive)"); + + case 0xDD: // DRI - specify restart interval + if (get16(z->s) != 4) return e("bad DRI len","Corrupt JPEG"); + z->restart_interval = get16(z->s); + return 1; + + case 0xDB: // DQT - define quantization table + L = get16(z->s)-2; + while (L > 0) { + int q = get8(z->s); + int p = q >> 4; + int t = q & 15,i; + if (p != 0) return e("bad DQT type","Corrupt JPEG"); + if (t > 3) return e("bad DQT table","Corrupt JPEG"); + for (i=0; i < 64; ++i) + z->dequant[t][dezigzag[i]] = get8u(z->s); + #ifdef STBI_SIMD + for (i=0; i < 64; ++i) + z->dequant2[t][i] = z->dequant[t][i]; + #endif + L -= 65; + } + return L==0; + + case 0xC4: // DHT - define huffman table + L = get16(z->s)-2; + while (L > 0) { + uint8 *v; + int sizes[16],i,m=0; + int q = get8(z->s); + int tc = q >> 4; + int th = q & 15; + if (tc > 1 || th > 3) return e("bad DHT header","Corrupt JPEG"); + for (i=0; i < 16; ++i) { + sizes[i] = get8(z->s); + m += sizes[i]; + } + L -= 17; + if (tc == 0) { + if (!build_huffman(z->huff_dc+th, sizes)) return 0; + v = z->huff_dc[th].values; + } else { + if (!build_huffman(z->huff_ac+th, sizes)) return 0; + v = z->huff_ac[th].values; + } + for (i=0; i < m; ++i) + v[i] = get8u(z->s); + L -= m; + } + return L==0; + } + // check for comment block or APP blocks + if ((m >= 0xE0 && m <= 0xEF) || m == 0xFE) { + skip(z->s, get16(z->s)-2); + return 1; + } + return 0; +} + +// after we see SOS +static int process_scan_header(jpeg *z) +{ + int i; + int Ls = get16(z->s); + z->scan_n = get8(z->s); + if (z->scan_n < 1 || z->scan_n > 4 || z->scan_n > (int) z->s->img_n) return e("bad SOS component count","Corrupt JPEG"); + if (Ls != 6+2*z->scan_n) return e("bad SOS len","Corrupt JPEG"); + for (i=0; i < z->scan_n; ++i) { + int id = get8(z->s), which; + int q = get8(z->s); + for (which = 0; which < z->s->img_n; ++which) + if (z->img_comp[which].id == id) + break; + if (which == z->s->img_n) return 0; + z->img_comp[which].hd = q >> 4; if (z->img_comp[which].hd > 3) return e("bad DC huff","Corrupt JPEG"); + z->img_comp[which].ha = q & 15; if (z->img_comp[which].ha > 3) return e("bad AC huff","Corrupt JPEG"); + z->order[i] = which; + } + if (get8(z->s) != 0) return e("bad SOS","Corrupt JPEG"); + get8(z->s); // should be 63, but might be 0 + if (get8(z->s) != 0) return e("bad SOS","Corrupt JPEG"); + + return 1; +} + +static int process_frame_header(jpeg *z, int scan) +{ + stbi *s = z->s; + int Lf,p,i,q, h_max=1,v_max=1,c; + Lf = get16(s); if (Lf < 11) return e("bad SOF len","Corrupt JPEG"); // JPEG + p = get8(s); if (p != 8) return e("only 8-bit","JPEG format not supported: 8-bit only"); // JPEG baseline + s->img_y = get16(s); if (s->img_y == 0) return e("no header height", "JPEG format not supported: delayed height"); // Legal, but we don't handle it--but neither does IJG + s->img_x = get16(s); if (s->img_x == 0) return e("0 width","Corrupt JPEG"); // JPEG requires + c = get8(s); + if (c != 3 && c != 1) return e("bad component count","Corrupt JPEG"); // JFIF requires + s->img_n = c; + for (i=0; i < c; ++i) { + z->img_comp[i].data = NULL; + z->img_comp[i].linebuf = NULL; + } + + if (Lf != 8+3*s->img_n) return e("bad SOF len","Corrupt JPEG"); + + for (i=0; i < s->img_n; ++i) { + z->img_comp[i].id = get8(s); + if (z->img_comp[i].id != i+1) // JFIF requires + if (z->img_comp[i].id != i) // some version of jpegtran outputs non-JFIF-compliant files! + return e("bad component ID","Corrupt JPEG"); + q = get8(s); + z->img_comp[i].h = (q >> 4); if (!z->img_comp[i].h || z->img_comp[i].h > 4) return e("bad H","Corrupt JPEG"); + z->img_comp[i].v = q & 15; if (!z->img_comp[i].v || z->img_comp[i].v > 4) return e("bad V","Corrupt JPEG"); + z->img_comp[i].tq = get8(s); if (z->img_comp[i].tq > 3) return e("bad TQ","Corrupt JPEG"); + } + + if (scan != SCAN_load) return 1; + + if ((1 << 30) / s->img_x / s->img_n < s->img_y) return e("too large", "Image too large to decode"); + + for (i=0; i < s->img_n; ++i) { + if (z->img_comp[i].h > h_max) h_max = z->img_comp[i].h; + if (z->img_comp[i].v > v_max) v_max = z->img_comp[i].v; + } + + // compute interleaved mcu info + z->img_h_max = h_max; + z->img_v_max = v_max; + z->img_mcu_w = h_max * 8; + z->img_mcu_h = v_max * 8; + z->img_mcu_x = (s->img_x + z->img_mcu_w-1) / z->img_mcu_w; + z->img_mcu_y = (s->img_y + z->img_mcu_h-1) / z->img_mcu_h; + + for (i=0; i < s->img_n; ++i) { + // number of effective pixels (e.g. for non-interleaved MCU) + z->img_comp[i].x = (s->img_x * z->img_comp[i].h + h_max-1) / h_max; + z->img_comp[i].y = (s->img_y * z->img_comp[i].v + v_max-1) / v_max; + // to simplify generation, we'll allocate enough memory to decode + // the bogus oversized data from using interleaved MCUs and their + // big blocks (e.g. a 16x16 iMCU on an image of width 33); we won't + // discard the extra data until colorspace conversion + z->img_comp[i].w2 = z->img_mcu_x * z->img_comp[i].h * 8; + z->img_comp[i].h2 = z->img_mcu_y * z->img_comp[i].v * 8; + z->img_comp[i].raw_data = malloc(z->img_comp[i].w2 * z->img_comp[i].h2+15); + if (z->img_comp[i].raw_data == NULL) { + for(--i; i >= 0; --i) { + free(z->img_comp[i].raw_data); + z->img_comp[i].data = NULL; + } + return e("outofmem", "Out of memory"); + } + // align blocks for installable-idct using mmx/sse + z->img_comp[i].data = (uint8*) (((size_t) z->img_comp[i].raw_data + 15) & ~15); + z->img_comp[i].linebuf = NULL; + } + + return 1; +} + +// use comparisons since in some cases we handle more than one case (e.g. SOF) +#define DNL(x) ((x) == 0xdc) +#define SOI(x) ((x) == 0xd8) +#define EOI(x) ((x) == 0xd9) +#define SOF(x) ((x) == 0xc0 || (x) == 0xc1) +#define SOS(x) ((x) == 0xda) + +static int decode_jpeg_header(jpeg *z, int scan) +{ + int m; + z->marker = MARKER_none; // initialize cached marker to empty + m = get_marker(z); + if (!SOI(m)) return e("no SOI","Corrupt JPEG"); + if (scan == SCAN_type) return 1; + m = get_marker(z); + while (!SOF(m)) { + if (!process_marker(z,m)) return 0; + m = get_marker(z); + while (m == MARKER_none) { + // some files have extra padding after their blocks, so ok, we'll scan + if (at_eof(z->s)) return e("no SOF", "Corrupt JPEG"); + m = get_marker(z); + } + } + if (!process_frame_header(z, scan)) return 0; + return 1; +} + +static int decode_jpeg_image(jpeg *j) +{ + int m; + j->restart_interval = 0; + if (!decode_jpeg_header(j, SCAN_load)) return 0; + m = get_marker(j); + while (!EOI(m)) { + if (SOS(m)) { + if (!process_scan_header(j)) return 0; + if (!parse_entropy_coded_data(j)) return 0; + if (j->marker == MARKER_none ) { + // handle 0s at the end of image data from IP Kamera 9060 + while (!at_eof(j->s)) { + int x = get8(j->s); + if (x == 255) { + j->marker = get8u(j->s); + break; + } else if (x != 0) { + return 0; + } + } + // if we reach eof without hitting a marker, get_marker() below will fail and we'll eventually return 0 + } + } else { + if (!process_marker(j, m)) return 0; + } + m = get_marker(j); + } + return 1; +} + +// static jfif-centered resampling (across block boundaries) + +typedef uint8 *(*resample_row_func)(uint8 *out, uint8 *in0, uint8 *in1, + int w, int hs); + +#define div4(x) ((uint8) ((x) >> 2)) + +static uint8 *resample_row_1(uint8 *out, uint8 *in_near, uint8 *in_far, int w, int hs) +{ + STBI_NOTUSED(out); + STBI_NOTUSED(in_far); + STBI_NOTUSED(w); + STBI_NOTUSED(hs); + return in_near; +} + +static uint8* resample_row_v_2(uint8 *out, uint8 *in_near, uint8 *in_far, int w, int hs) +{ + // need to generate two samples vertically for every one in input + int i; + STBI_NOTUSED(hs); + for (i=0; i < w; ++i) + out[i] = div4(3*in_near[i] + in_far[i] + 2); + return out; +} + +static uint8* resample_row_h_2(uint8 *out, uint8 *in_near, uint8 *in_far, int w, int hs) +{ + // need to generate two samples horizontally for every one in input + int i; + uint8 *input = in_near; + + if (w == 1) { + // if only one sample, can't do any interpolation + out[0] = out[1] = input[0]; + return out; + } + + out[0] = input[0]; + out[1] = div4(input[0]*3 + input[1] + 2); + for (i=1; i < w-1; ++i) { + int n = 3*input[i]+2; + out[i*2+0] = div4(n+input[i-1]); + out[i*2+1] = div4(n+input[i+1]); + } + out[i*2+0] = div4(input[w-2]*3 + input[w-1] + 2); + out[i*2+1] = input[w-1]; + + STBI_NOTUSED(in_far); + STBI_NOTUSED(hs); + + return out; +} + +#define div16(x) ((uint8) ((x) >> 4)) + +static uint8 *resample_row_hv_2(uint8 *out, uint8 *in_near, uint8 *in_far, int w, int hs) +{ + // need to generate 2x2 samples for every one in input + int i,t0,t1; + if (w == 1) { + out[0] = out[1] = div4(3*in_near[0] + in_far[0] + 2); + return out; + } + + t1 = 3*in_near[0] + in_far[0]; + out[0] = div4(t1+2); + for (i=1; i < w; ++i) { + t0 = t1; + t1 = 3*in_near[i]+in_far[i]; + out[i*2-1] = div16(3*t0 + t1 + 8); + out[i*2 ] = div16(3*t1 + t0 + 8); + } + out[w*2-1] = div4(t1+2); + + STBI_NOTUSED(hs); + + return out; +} + +static uint8 *resample_row_generic(uint8 *out, uint8 *in_near, uint8 *in_far, int w, int hs) +{ + // resample with nearest-neighbor + int i,j; + in_far = in_far; + for (i=0; i < w; ++i) + for (j=0; j < hs; ++j) + out[i*hs+j] = in_near[i]; + return out; +} + +#define float2fixed(x) ((int) ((x) * 65536 + 0.5)) + +// 0.38 seconds on 3*anemones.jpg (0.25 with processor = Pro) +// VC6 without processor=Pro is generating multiple LEAs per multiply! +static void YCbCr_to_RGB_row(uint8 *out, const uint8 *y, const uint8 *pcb, const uint8 *pcr, int count, int step) +{ + int i; + for (i=0; i < count; ++i) { + int y_fixed = (y[i] << 16) + 32768; // rounding + int r,g,b; + int cr = pcr[i] - 128; + int cb = pcb[i] - 128; + r = y_fixed + cr*float2fixed(1.40200f); + g = y_fixed - cr*float2fixed(0.71414f) - cb*float2fixed(0.34414f); + b = y_fixed + cb*float2fixed(1.77200f); + r >>= 16; + g >>= 16; + b >>= 16; + if ((unsigned) r > 255) { if (r < 0) r = 0; else r = 255; } + if ((unsigned) g > 255) { if (g < 0) g = 0; else g = 255; } + if ((unsigned) b > 255) { if (b < 0) b = 0; else b = 255; } + out[0] = (uint8)r; + out[1] = (uint8)g; + out[2] = (uint8)b; + out[3] = 255; + out += step; + } +} + +#ifdef STBI_SIMD +static stbi_YCbCr_to_RGB_run stbi_YCbCr_installed = YCbCr_to_RGB_row; + +void stbi_install_YCbCr_to_RGB(stbi_YCbCr_to_RGB_run func) +{ + stbi_YCbCr_installed = func; +} +#endif + + +// clean up the temporary component buffers +static void cleanup_jpeg(jpeg *j) +{ + int i; + for (i=0; i < j->s->img_n; ++i) { + if (j->img_comp[i].data) { + free(j->img_comp[i].raw_data); + j->img_comp[i].data = NULL; + } + if (j->img_comp[i].linebuf) { + free(j->img_comp[i].linebuf); + j->img_comp[i].linebuf = NULL; + } + } +} + +typedef struct +{ + resample_row_func resample; + uint8 *line0,*line1; + int hs,vs; // expansion factor in each axis + int w_lores; // horizontal pixels pre-expansion + int ystep; // how far through vertical expansion we are + int ypos; // which pre-expansion row we're on +} stbi_resample; + +static uint8 *load_jpeg_image(jpeg *z, int *out_x, int *out_y, int *comp, int req_comp) +{ + int n, decode_n; + // validate req_comp + if (req_comp < 0 || req_comp > 4) return epuc("bad req_comp", "Internal error"); + z->s->img_n = 0; + + // load a jpeg image from whichever source + if (!decode_jpeg_image(z)) { cleanup_jpeg(z); return NULL; } + + // determine actual number of components to generate + n = req_comp ? req_comp : z->s->img_n; + + if (z->s->img_n == 3 && n < 3) + decode_n = 1; + else + decode_n = z->s->img_n; + + // resample and color-convert + { + int k; + uint i,j; + uint8 *output; + uint8 *coutput[4]; + + stbi_resample res_comp[4]; + + for (k=0; k < decode_n; ++k) { + stbi_resample *r = &res_comp[k]; + + // allocate line buffer big enough for upsampling off the edges + // with upsample factor of 4 + z->img_comp[k].linebuf = (uint8 *) malloc(z->s->img_x + 3); + if (!z->img_comp[k].linebuf) { cleanup_jpeg(z); return epuc("outofmem", "Out of memory"); } + + r->hs = z->img_h_max / z->img_comp[k].h; + r->vs = z->img_v_max / z->img_comp[k].v; + r->ystep = r->vs >> 1; + r->w_lores = (z->s->img_x + r->hs-1) / r->hs; + r->ypos = 0; + r->line0 = r->line1 = z->img_comp[k].data; + + if (r->hs == 1 && r->vs == 1) r->resample = resample_row_1; + else if (r->hs == 1 && r->vs == 2) r->resample = resample_row_v_2; + else if (r->hs == 2 && r->vs == 1) r->resample = resample_row_h_2; + else if (r->hs == 2 && r->vs == 2) r->resample = resample_row_hv_2; + else r->resample = resample_row_generic; + } + + // can't error after this so, this is safe + output = (uint8 *) malloc(n * z->s->img_x * z->s->img_y + 1); + if (!output) { cleanup_jpeg(z); return epuc("outofmem", "Out of memory"); } + + // now go ahead and resample + for (j=0; j < z->s->img_y; ++j) { + uint8 *out = output + n * z->s->img_x * j; + for (k=0; k < decode_n; ++k) { + stbi_resample *r = &res_comp[k]; + int y_bot = r->ystep >= (r->vs >> 1); + coutput[k] = r->resample(z->img_comp[k].linebuf, + y_bot ? r->line1 : r->line0, + y_bot ? r->line0 : r->line1, + r->w_lores, r->hs); + if (++r->ystep >= r->vs) { + r->ystep = 0; + r->line0 = r->line1; + if (++r->ypos < z->img_comp[k].y) + r->line1 += z->img_comp[k].w2; + } + } + if (n >= 3) { + uint8 *y = coutput[0]; + if (z->s->img_n == 3) { + #ifdef STBI_SIMD + stbi_YCbCr_installed(out, y, coutput[1], coutput[2], z->s.img_x, n); + #else + YCbCr_to_RGB_row(out, y, coutput[1], coutput[2], z->s->img_x, n); + #endif + } else + for (i=0; i < z->s->img_x; ++i) { + out[0] = out[1] = out[2] = y[i]; + out[3] = 255; // not used if n==3 + out += n; + } + } else { + uint8 *y = coutput[0]; + if (n == 1) + for (i=0; i < z->s->img_x; ++i) out[i] = y[i]; + else + for (i=0; i < z->s->img_x; ++i) *out++ = y[i], *out++ = 255; + } + } + cleanup_jpeg(z); + *out_x = z->s->img_x; + *out_y = z->s->img_y; + if (comp) *comp = z->s->img_n; // report original components, not output + return output; + } +} + +static unsigned char *stbi_jpeg_load(stbi *s, int *x, int *y, int *comp, int req_comp) +{ + jpeg j; + j.s = s; + return load_jpeg_image(&j, x,y,comp,req_comp); +} + +static int stbi_jpeg_test(stbi *s) +{ + int r; + jpeg j; + j.s = s; + r = decode_jpeg_header(&j, SCAN_type); + stbi_rewind(s); + return r; +} + +static int stbi_jpeg_info_raw(jpeg *j, int *x, int *y, int *comp) +{ + if (!decode_jpeg_header(j, SCAN_header)) { + stbi_rewind( j->s ); + return 0; + } + if (x) *x = j->s->img_x; + if (y) *y = j->s->img_y; + if (comp) *comp = j->s->img_n; + return 1; +} + +static int stbi_jpeg_info(stbi *s, int *x, int *y, int *comp) +{ + jpeg j; + j.s = s; + return stbi_jpeg_info_raw(&j, x, y, comp); +} + +// public domain zlib decode v0.2 Sean Barrett 2006-11-18 +// simple implementation +// - all input must be provided in an upfront buffer +// - all output is written to a single output buffer (can malloc/realloc) +// performance +// - fast huffman + +// fast-way is faster to check than jpeg huffman, but slow way is slower +#define ZFAST_BITS 9 // accelerate all cases in default tables +#define ZFAST_MASK ((1 << ZFAST_BITS) - 1) + +// zlib-style huffman encoding +// (jpegs packs from left, zlib from right, so can't share code) +typedef struct +{ + uint16 fast[1 << ZFAST_BITS]; + uint16 firstcode[16]; + int maxcode[17]; + uint16 firstsymbol[16]; + uint8 size[288]; + uint16 value[288]; +} zhuffman; + +stbi_inline static int bitreverse16(int n) +{ + n = ((n & 0xAAAA) >> 1) | ((n & 0x5555) << 1); + n = ((n & 0xCCCC) >> 2) | ((n & 0x3333) << 2); + n = ((n & 0xF0F0) >> 4) | ((n & 0x0F0F) << 4); + n = ((n & 0xFF00) >> 8) | ((n & 0x00FF) << 8); + return n; +} + +stbi_inline static int bit_reverse(int v, int bits) +{ + assert(bits <= 16); + // to bit reverse n bits, reverse 16 and shift + // e.g. 11 bits, bit reverse and shift away 5 + return bitreverse16(v) >> (16-bits); +} + +static int zbuild_huffman(zhuffman *z, uint8 *sizelist, int num) +{ + int i,k=0; + int code, next_code[16], sizes[17]; + + // DEFLATE spec for generating codes + memset(sizes, 0, sizeof(sizes)); + memset(z->fast, 255, sizeof(z->fast)); + for (i=0; i < num; ++i) + ++sizes[sizelist[i]]; + sizes[0] = 0; + for (i=1; i < 16; ++i) + assert(sizes[i] <= (1 << i)); + code = 0; + for (i=1; i < 16; ++i) { + next_code[i] = code; + z->firstcode[i] = (uint16) code; + z->firstsymbol[i] = (uint16) k; + code = (code + sizes[i]); + if (sizes[i]) + if (code-1 >= (1 << i)) return e("bad codelengths","Corrupt JPEG"); + z->maxcode[i] = code << (16-i); // preshift for inner loop + code <<= 1; + k += sizes[i]; + } + z->maxcode[16] = 0x10000; // sentinel + for (i=0; i < num; ++i) { + int s = sizelist[i]; + if (s) { + int c = next_code[s] - z->firstcode[s] + z->firstsymbol[s]; + z->size[c] = (uint8)s; + z->value[c] = (uint16)i; + if (s <= ZFAST_BITS) { + int k = bit_reverse(next_code[s],s); + while (k < (1 << ZFAST_BITS)) { + z->fast[k] = (uint16) c; + k += (1 << s); + } + } + ++next_code[s]; + } + } + return 1; +} + +// zlib-from-memory implementation for PNG reading +// because PNG allows splitting the zlib stream arbitrarily, +// and it's annoying structurally to have PNG call ZLIB call PNG, +// we require PNG read all the IDATs and combine them into a single +// memory buffer + +typedef struct +{ + uint8 *zbuffer, *zbuffer_end; + int num_bits; + uint32 code_buffer; + + char *zout; + char *zout_start; + char *zout_end; + int z_expandable; + + zhuffman z_length, z_distance; +} zbuf; + +stbi_inline static int zget8(zbuf *z) +{ + if (z->zbuffer >= z->zbuffer_end) return 0; + return *z->zbuffer++; +} + +static void fill_bits(zbuf *z) +{ + do { + assert(z->code_buffer < (1U << z->num_bits)); + z->code_buffer |= zget8(z) << z->num_bits; + z->num_bits += 8; + } while (z->num_bits <= 24); +} + +stbi_inline static unsigned int zreceive(zbuf *z, int n) +{ + unsigned int k; + if (z->num_bits < n) fill_bits(z); + k = z->code_buffer & ((1 << n) - 1); + z->code_buffer >>= n; + z->num_bits -= n; + return k; +} + +stbi_inline static int zhuffman_decode(zbuf *a, zhuffman *z) +{ + int b,s,k; + if (a->num_bits < 16) fill_bits(a); + b = z->fast[a->code_buffer & ZFAST_MASK]; + if (b < 0xffff) { + s = z->size[b]; + a->code_buffer >>= s; + a->num_bits -= s; + return z->value[b]; + } + + // not resolved by fast table, so compute it the slow way + // use jpeg approach, which requires MSbits at top + k = bit_reverse(a->code_buffer, 16); + for (s=ZFAST_BITS+1; ; ++s) + if (k < z->maxcode[s]) + break; + if (s == 16) return -1; // invalid code! + // code size is s, so: + b = (k >> (16-s)) - z->firstcode[s] + z->firstsymbol[s]; + assert(z->size[b] == s); + a->code_buffer >>= s; + a->num_bits -= s; + return z->value[b]; +} + +static int expand(zbuf *z, int n) // need to make room for n bytes +{ + char *q; + int cur, limit; + if (!z->z_expandable) return e("output buffer limit","Corrupt PNG"); + cur = (int) (z->zout - z->zout_start); + limit = (int) (z->zout_end - z->zout_start); + while (cur + n > limit) + limit *= 2; + q = (char *) realloc(z->zout_start, limit); + if (q == NULL) return e("outofmem", "Out of memory"); + z->zout_start = q; + z->zout = q + cur; + z->zout_end = q + limit; + return 1; +} + +static int length_base[31] = { + 3,4,5,6,7,8,9,10,11,13, + 15,17,19,23,27,31,35,43,51,59, + 67,83,99,115,131,163,195,227,258,0,0 }; + +static int length_extra[31]= +{ 0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0 }; + +static int dist_base[32] = { 1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193, +257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0}; + +static int dist_extra[32] = +{ 0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13}; + +static int parse_huffman_block(zbuf *a) +{ + for(;;) { + int z = zhuffman_decode(a, &a->z_length); + if (z < 256) { + if (z < 0) return e("bad huffman code","Corrupt PNG"); // error in huffman codes + if (a->zout >= a->zout_end) if (!expand(a, 1)) return 0; + *a->zout++ = (char) z; + } else { + uint8 *p; + int len,dist; + if (z == 256) return 1; + z -= 257; + len = length_base[z]; + if (length_extra[z]) len += zreceive(a, length_extra[z]); + z = zhuffman_decode(a, &a->z_distance); + if (z < 0) return e("bad huffman code","Corrupt PNG"); + dist = dist_base[z]; + if (dist_extra[z]) dist += zreceive(a, dist_extra[z]); + if (a->zout - a->zout_start < dist) return e("bad dist","Corrupt PNG"); + if (a->zout + len > a->zout_end) if (!expand(a, len)) return 0; + p = (uint8 *) (a->zout - dist); + while (len--) + *a->zout++ = *p++; + } + } +} + +static int compute_huffman_codes(zbuf *a) +{ + static uint8 length_dezigzag[19] = { 16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15 }; + zhuffman z_codelength; + uint8 lencodes[286+32+137];//padding for maximum single op + uint8 codelength_sizes[19]; + int i,n; + + int hlit = zreceive(a,5) + 257; + int hdist = zreceive(a,5) + 1; + int hclen = zreceive(a,4) + 4; + + memset(codelength_sizes, 0, sizeof(codelength_sizes)); + for (i=0; i < hclen; ++i) { + int s = zreceive(a,3); + codelength_sizes[length_dezigzag[i]] = (uint8) s; + } + if (!zbuild_huffman(&z_codelength, codelength_sizes, 19)) return 0; + + n = 0; + while (n < hlit + hdist) { + int c = zhuffman_decode(a, &z_codelength); + assert(c >= 0 && c < 19); + if (c < 16) + lencodes[n++] = (uint8) c; + else if (c == 16) { + c = zreceive(a,2)+3; + memset(lencodes+n, lencodes[n-1], c); + n += c; + } else if (c == 17) { + c = zreceive(a,3)+3; + memset(lencodes+n, 0, c); + n += c; + } else { + assert(c == 18); + c = zreceive(a,7)+11; + memset(lencodes+n, 0, c); + n += c; + } + } + if (n != hlit+hdist) return e("bad codelengths","Corrupt PNG"); + if (!zbuild_huffman(&a->z_length, lencodes, hlit)) return 0; + if (!zbuild_huffman(&a->z_distance, lencodes+hlit, hdist)) return 0; + return 1; +} + +static int parse_uncompressed_block(zbuf *a) +{ + uint8 header[4]; + int len,nlen,k; + if (a->num_bits & 7) + zreceive(a, a->num_bits & 7); // discard + // drain the bit-packed data into header + k = 0; + while (a->num_bits > 0) { + header[k++] = (uint8) (a->code_buffer & 255); // wtf this warns? + a->code_buffer >>= 8; + a->num_bits -= 8; + } + assert(a->num_bits == 0); + // now fill header the normal way + while (k < 4) + header[k++] = (uint8) zget8(a); + len = header[1] * 256 + header[0]; + nlen = header[3] * 256 + header[2]; + if (nlen != (len ^ 0xffff)) return e("zlib corrupt","Corrupt PNG"); + if (a->zbuffer + len > a->zbuffer_end) return e("read past buffer","Corrupt PNG"); + if (a->zout + len > a->zout_end) + if (!expand(a, len)) return 0; + memcpy(a->zout, a->zbuffer, len); + a->zbuffer += len; + a->zout += len; + return 1; +} + +static int parse_zlib_header(zbuf *a) +{ + int cmf = zget8(a); + int cm = cmf & 15; + /* int cinfo = cmf >> 4; */ + int flg = zget8(a); + if ((cmf*256+flg) % 31 != 0) return e("bad zlib header","Corrupt PNG"); // zlib spec + if (flg & 32) return e("no preset dict","Corrupt PNG"); // preset dictionary not allowed in png + if (cm != 8) return e("bad compression","Corrupt PNG"); // DEFLATE required for png + // window = 1 << (8 + cinfo)... but who cares, we fully buffer output + return 1; +} + +// @TODO: should statically initialize these for optimal thread safety +static uint8 default_length[288], default_distance[32]; +static void init_defaults(void) +{ + int i; // use <= to match clearly with spec + for (i=0; i <= 143; ++i) default_length[i] = 8; + for ( ; i <= 255; ++i) default_length[i] = 9; + for ( ; i <= 279; ++i) default_length[i] = 7; + for ( ; i <= 287; ++i) default_length[i] = 8; + + for (i=0; i <= 31; ++i) default_distance[i] = 5; +} + +int stbi_png_partial; // a quick hack to only allow decoding some of a PNG... I should implement real streaming support instead +static int parse_zlib(zbuf *a, int parse_header) +{ + int final, type; + if (parse_header) + if (!parse_zlib_header(a)) return 0; + a->num_bits = 0; + a->code_buffer = 0; + do { + final = zreceive(a,1); + type = zreceive(a,2); + if (type == 0) { + if (!parse_uncompressed_block(a)) return 0; + } else if (type == 3) { + return 0; + } else { + if (type == 1) { + // use fixed code lengths + if (!default_distance[31]) init_defaults(); + if (!zbuild_huffman(&a->z_length , default_length , 288)) return 0; + if (!zbuild_huffman(&a->z_distance, default_distance, 32)) return 0; + } else { + if (!compute_huffman_codes(a)) return 0; + } + if (!parse_huffman_block(a)) return 0; + } + if (stbi_png_partial && a->zout - a->zout_start > 65536) + break; + } while (!final); + return 1; +} + +static int do_zlib(zbuf *a, char *obuf, int olen, int exp, int parse_header) +{ + a->zout_start = obuf; + a->zout = obuf; + a->zout_end = obuf + olen; + a->z_expandable = exp; + + return parse_zlib(a, parse_header); +} + +char *stbi_zlib_decode_malloc_guesssize(const char *buffer, int len, int initial_size, int *outlen) +{ + zbuf a; + char *p = (char *) malloc(initial_size); + if (p == NULL) return NULL; + a.zbuffer = (uint8 *) buffer; + a.zbuffer_end = (uint8 *) buffer + len; + if (do_zlib(&a, p, initial_size, 1, 1)) { + if (outlen) *outlen = (int) (a.zout - a.zout_start); + return a.zout_start; + } else { + free(a.zout_start); + return NULL; + } +} + +char *stbi_zlib_decode_malloc(char const *buffer, int len, int *outlen) +{ + return stbi_zlib_decode_malloc_guesssize(buffer, len, 16384, outlen); +} + +char *stbi_zlib_decode_malloc_guesssize_headerflag(const char *buffer, int len, int initial_size, int *outlen, int parse_header) +{ + zbuf a; + char *p = (char *) malloc(initial_size); + if (p == NULL) return NULL; + a.zbuffer = (uint8 *) buffer; + a.zbuffer_end = (uint8 *) buffer + len; + if (do_zlib(&a, p, initial_size, 1, parse_header)) { + if (outlen) *outlen = (int) (a.zout - a.zout_start); + return a.zout_start; + } else { + free(a.zout_start); + return NULL; + } +} + +int stbi_zlib_decode_buffer(char *obuffer, int olen, char const *ibuffer, int ilen) +{ + zbuf a; + a.zbuffer = (uint8 *) ibuffer; + a.zbuffer_end = (uint8 *) ibuffer + ilen; + if (do_zlib(&a, obuffer, olen, 0, 1)) + return (int) (a.zout - a.zout_start); + else + return -1; +} + +char *stbi_zlib_decode_noheader_malloc(char const *buffer, int len, int *outlen) +{ + zbuf a; + char *p = (char *) malloc(16384); + if (p == NULL) return NULL; + a.zbuffer = (uint8 *) buffer; + a.zbuffer_end = (uint8 *) buffer+len; + if (do_zlib(&a, p, 16384, 1, 0)) { + if (outlen) *outlen = (int) (a.zout - a.zout_start); + return a.zout_start; + } else { + free(a.zout_start); + return NULL; + } +} + +int stbi_zlib_decode_noheader_buffer(char *obuffer, int olen, const char *ibuffer, int ilen) +{ + zbuf a; + a.zbuffer = (uint8 *) ibuffer; + a.zbuffer_end = (uint8 *) ibuffer + ilen; + if (do_zlib(&a, obuffer, olen, 0, 0)) + return (int) (a.zout - a.zout_start); + else + return -1; +} + +// public domain "baseline" PNG decoder v0.10 Sean Barrett 2006-11-18 +// simple implementation +// - only 8-bit samples +// - no CRC checking +// - allocates lots of intermediate memory +// - avoids problem of streaming data between subsystems +// - avoids explicit window management +// performance +// - uses stb_zlib, a PD zlib implementation with fast huffman decoding + + +typedef struct +{ + uint32 length; + uint32 type; +} chunk; + +#define PNG_TYPE(a,b,c,d) (((a) << 24) + ((b) << 16) + ((c) << 8) + (d)) + +static chunk get_chunk_header(stbi *s) +{ + chunk c; + c.length = get32(s); + c.type = get32(s); + return c; +} + +static int check_png_header(stbi *s) +{ + static uint8 png_sig[8] = { 137,80,78,71,13,10,26,10 }; + int i; + for (i=0; i < 8; ++i) + if (get8u(s) != png_sig[i]) return e("bad png sig","Not a PNG"); + return 1; +} + +typedef struct +{ + stbi *s; + uint8 *idata, *expanded, *out; +} png; + + +enum { + F_none=0, F_sub=1, F_up=2, F_avg=3, F_paeth=4, + F_avg_first, F_paeth_first +}; + +static uint8 first_row_filter[5] = +{ + F_none, F_sub, F_none, F_avg_first, F_paeth_first +}; + +static int paeth(int a, int b, int c) +{ + int p = a + b - c; + int pa = abs(p-a); + int pb = abs(p-b); + int pc = abs(p-c); + if (pa <= pb && pa <= pc) return a; + if (pb <= pc) return b; + return c; +} + +// create the png data from post-deflated data +static int create_png_image_raw(png *a, uint8 *raw, uint32 raw_len, int out_n, uint32 x, uint32 y) +{ + stbi *s = a->s; + uint32 i,j,stride = x*out_n; + int k; + int img_n = s->img_n; // copy it into a local for later + assert(out_n == s->img_n || out_n == s->img_n+1); + if (stbi_png_partial) y = 1; + a->out = (uint8 *) malloc(x * y * out_n); + if (!a->out) return e("outofmem", "Out of memory"); + if (!stbi_png_partial) { + if (s->img_x == x && s->img_y == y) { + if (raw_len != (img_n * x + 1) * y) return e("not enough pixels","Corrupt PNG"); + } else { // interlaced: + if (raw_len < (img_n * x + 1) * y) return e("not enough pixels","Corrupt PNG"); + } + } + for (j=0; j < y; ++j) { + uint8 *cur = a->out + stride*j; + uint8 *prior = cur - stride; + int filter = *raw++; + if (filter > 4) return e("invalid filter","Corrupt PNG"); + // if first row, use special filter that doesn't sample previous row + if (j == 0) filter = first_row_filter[filter]; + // handle first pixel explicitly + for (k=0; k < img_n; ++k) { + switch (filter) { + case F_none : cur[k] = raw[k]; break; + case F_sub : cur[k] = raw[k]; break; + case F_up : cur[k] = raw[k] + prior[k]; break; + case F_avg : cur[k] = raw[k] + (prior[k]>>1); break; + case F_paeth : cur[k] = (uint8) (raw[k] + paeth(0,prior[k],0)); break; + case F_avg_first : cur[k] = raw[k]; break; + case F_paeth_first: cur[k] = raw[k]; break; + } + } + if (img_n != out_n) cur[img_n] = 255; + raw += img_n; + cur += out_n; + prior += out_n; + // this is a little gross, so that we don't switch per-pixel or per-component + if (img_n == out_n) { + #define CASE(f) \ + case f: \ + for (i=x-1; i >= 1; --i, raw+=img_n,cur+=img_n,prior+=img_n) \ + for (k=0; k < img_n; ++k) + switch (filter) { + CASE(F_none) cur[k] = raw[k]; break; + CASE(F_sub) cur[k] = raw[k] + cur[k-img_n]; break; + CASE(F_up) cur[k] = raw[k] + prior[k]; break; + CASE(F_avg) cur[k] = raw[k] + ((prior[k] + cur[k-img_n])>>1); break; + CASE(F_paeth) cur[k] = (uint8) (raw[k] + paeth(cur[k-img_n],prior[k],prior[k-img_n])); break; + CASE(F_avg_first) cur[k] = raw[k] + (cur[k-img_n] >> 1); break; + CASE(F_paeth_first) cur[k] = (uint8) (raw[k] + paeth(cur[k-img_n],0,0)); break; + } + #undef CASE + } else { + assert(img_n+1 == out_n); + #define CASE(f) \ + case f: \ + for (i=x-1; i >= 1; --i, cur[img_n]=255,raw+=img_n,cur+=out_n,prior+=out_n) \ + for (k=0; k < img_n; ++k) + switch (filter) { + CASE(F_none) cur[k] = raw[k]; break; + CASE(F_sub) cur[k] = raw[k] + cur[k-out_n]; break; + CASE(F_up) cur[k] = raw[k] + prior[k]; break; + CASE(F_avg) cur[k] = raw[k] + ((prior[k] + cur[k-out_n])>>1); break; + CASE(F_paeth) cur[k] = (uint8) (raw[k] + paeth(cur[k-out_n],prior[k],prior[k-out_n])); break; + CASE(F_avg_first) cur[k] = raw[k] + (cur[k-out_n] >> 1); break; + CASE(F_paeth_first) cur[k] = (uint8) (raw[k] + paeth(cur[k-out_n],0,0)); break; + } + #undef CASE + } + } + return 1; +} + +static int create_png_image(png *a, uint8 *raw, uint32 raw_len, int out_n, int interlaced) +{ + uint8 *final; + int p; + int save; + if (!interlaced) + return create_png_image_raw(a, raw, raw_len, out_n, a->s->img_x, a->s->img_y); + save = stbi_png_partial; + stbi_png_partial = 0; + + // de-interlacing + final = (uint8 *) malloc(a->s->img_x * a->s->img_y * out_n); + for (p=0; p < 7; ++p) { + int xorig[] = { 0,4,0,2,0,1,0 }; + int yorig[] = { 0,0,4,0,2,0,1 }; + int xspc[] = { 8,8,4,4,2,2,1 }; + int yspc[] = { 8,8,8,4,4,2,2 }; + int i,j,x,y; + // pass1_x[4] = 0, pass1_x[5] = 1, pass1_x[12] = 1 + x = (a->s->img_x - xorig[p] + xspc[p]-1) / xspc[p]; + y = (a->s->img_y - yorig[p] + yspc[p]-1) / yspc[p]; + if (x && y) { + if (!create_png_image_raw(a, raw, raw_len, out_n, x, y)) { + free(final); + return 0; + } + for (j=0; j < y; ++j) + for (i=0; i < x; ++i) + memcpy(final + (j*yspc[p]+yorig[p])*a->s->img_x*out_n + (i*xspc[p]+xorig[p])*out_n, + a->out + (j*x+i)*out_n, out_n); + free(a->out); + raw += (x*out_n+1)*y; + raw_len -= (x*out_n+1)*y; + } + } + a->out = final; + + stbi_png_partial = save; + return 1; +} + +static int compute_transparency(png *z, uint8 tc[3], int out_n) +{ + stbi *s = z->s; + uint32 i, pixel_count = s->img_x * s->img_y; + uint8 *p = z->out; + + // compute color-based transparency, assuming we've + // already got 255 as the alpha value in the output + assert(out_n == 2 || out_n == 4); + + if (out_n == 2) { + for (i=0; i < pixel_count; ++i) { + p[1] = (p[0] == tc[0] ? 0 : 255); + p += 2; + } + } else { + for (i=0; i < pixel_count; ++i) { + if (p[0] == tc[0] && p[1] == tc[1] && p[2] == tc[2]) + p[3] = 0; + p += 4; + } + } + return 1; +} + +static int expand_palette(png *a, uint8 *palette, int len, int pal_img_n) +{ + uint32 i, pixel_count = a->s->img_x * a->s->img_y; + uint8 *p, *temp_out, *orig = a->out; + + p = (uint8 *) malloc(pixel_count * pal_img_n); + if (p == NULL) return e("outofmem", "Out of memory"); + + // between here and free(out) below, exitting would leak + temp_out = p; + + if (pal_img_n == 3) { + for (i=0; i < pixel_count; ++i) { + int n = orig[i]*4; + p[0] = palette[n ]; + p[1] = palette[n+1]; + p[2] = palette[n+2]; + p += 3; + } + } else { + for (i=0; i < pixel_count; ++i) { + int n = orig[i]*4; + p[0] = palette[n ]; + p[1] = palette[n+1]; + p[2] = palette[n+2]; + p[3] = palette[n+3]; + p += 4; + } + } + free(a->out); + a->out = temp_out; + + STBI_NOTUSED(len); + + return 1; +} + +static int stbi_unpremultiply_on_load = 0; +static int stbi_de_iphone_flag = 0; + +void stbi_set_unpremultiply_on_load(int flag_true_if_should_unpremultiply) +{ + stbi_unpremultiply_on_load = flag_true_if_should_unpremultiply; +} +void stbi_convert_iphone_png_to_rgb(int flag_true_if_should_convert) +{ + stbi_de_iphone_flag = flag_true_if_should_convert; +} + +static void stbi_de_iphone(png *z) +{ + stbi *s = z->s; + uint32 i, pixel_count = s->img_x * s->img_y; + uint8 *p = z->out; + + if (s->img_out_n == 3) { // convert bgr to rgb + for (i=0; i < pixel_count; ++i) { + uint8 t = p[0]; + p[0] = p[2]; + p[2] = t; + p += 3; + } + } else { + assert(s->img_out_n == 4); + if (stbi_unpremultiply_on_load) { + // convert bgr to rgb and unpremultiply + for (i=0; i < pixel_count; ++i) { + uint8 a = p[3]; + uint8 t = p[0]; + if (a) { + p[0] = p[2] * 255 / a; + p[1] = p[1] * 255 / a; + p[2] = t * 255 / a; + } else { + p[0] = p[2]; + p[2] = t; + } + p += 4; + } + } else { + // convert bgr to rgb + for (i=0; i < pixel_count; ++i) { + uint8 t = p[0]; + p[0] = p[2]; + p[2] = t; + p += 4; + } + } + } +} + +static int parse_png_file(png *z, int scan, int req_comp) +{ + uint8 palette[1024], pal_img_n=0; + uint8 has_trans=0, tc[3]; + uint32 ioff=0, idata_limit=0, i, pal_len=0; + int first=1,k,interlace=0, iphone=0; + stbi *s = z->s; + + z->expanded = NULL; + z->idata = NULL; + z->out = NULL; + + if (!check_png_header(s)) return 0; + + if (scan == SCAN_type) return 1; + + for (;;) { + chunk c = get_chunk_header(s); + switch (c.type) { + case PNG_TYPE('C','g','B','I'): + iphone = stbi_de_iphone_flag; + skip(s, c.length); + break; + case PNG_TYPE('I','H','D','R'): { + int depth,color,comp,filter; + if (!first) return e("multiple IHDR","Corrupt PNG"); + first = 0; + if (c.length != 13) return e("bad IHDR len","Corrupt PNG"); + s->img_x = get32(s); if (s->img_x > (1 << 24)) return e("too large","Very large image (corrupt?)"); + s->img_y = get32(s); if (s->img_y > (1 << 24)) return e("too large","Very large image (corrupt?)"); + depth = get8(s); if (depth != 8) return e("8bit only","PNG not supported: 8-bit only"); + color = get8(s); if (color > 6) return e("bad ctype","Corrupt PNG"); + if (color == 3) pal_img_n = 3; else if (color & 1) return e("bad ctype","Corrupt PNG"); + comp = get8(s); if (comp) return e("bad comp method","Corrupt PNG"); + filter= get8(s); if (filter) return e("bad filter method","Corrupt PNG"); + interlace = get8(s); if (interlace>1) return e("bad interlace method","Corrupt PNG"); + if (!s->img_x || !s->img_y) return e("0-pixel image","Corrupt PNG"); + if (!pal_img_n) { + s->img_n = (color & 2 ? 3 : 1) + (color & 4 ? 1 : 0); + if ((1 << 30) / s->img_x / s->img_n < s->img_y) return e("too large", "Image too large to decode"); + if (scan == SCAN_header) return 1; + } else { + // if paletted, then pal_n is our final components, and + // img_n is # components to decompress/filter. + s->img_n = 1; + if ((1 << 30) / s->img_x / 4 < s->img_y) return e("too large","Corrupt PNG"); + // if SCAN_header, have to scan to see if we have a tRNS + } + break; + } + + case PNG_TYPE('P','L','T','E'): { + if (first) return e("first not IHDR", "Corrupt PNG"); + if (c.length > 256*3) return e("invalid PLTE","Corrupt PNG"); + pal_len = c.length / 3; + if (pal_len * 3 != c.length) return e("invalid PLTE","Corrupt PNG"); + for (i=0; i < pal_len; ++i) { + palette[i*4+0] = get8u(s); + palette[i*4+1] = get8u(s); + palette[i*4+2] = get8u(s); + palette[i*4+3] = 255; + } + break; + } + + case PNG_TYPE('t','R','N','S'): { + if (first) return e("first not IHDR", "Corrupt PNG"); + if (z->idata) return e("tRNS after IDAT","Corrupt PNG"); + if (pal_img_n) { + if (scan == SCAN_header) { s->img_n = 4; return 1; } + if (pal_len == 0) return e("tRNS before PLTE","Corrupt PNG"); + if (c.length > pal_len) return e("bad tRNS len","Corrupt PNG"); + pal_img_n = 4; + for (i=0; i < c.length; ++i) + palette[i*4+3] = get8u(s); + } else { + if (!(s->img_n & 1)) return e("tRNS with alpha","Corrupt PNG"); + if (c.length != (uint32) s->img_n*2) return e("bad tRNS len","Corrupt PNG"); + has_trans = 1; + for (k=0; k < s->img_n; ++k) + tc[k] = (uint8) get16(s); // non 8-bit images will be larger + } + break; + } + + case PNG_TYPE('I','D','A','T'): { + if (first) return e("first not IHDR", "Corrupt PNG"); + if (pal_img_n && !pal_len) return e("no PLTE","Corrupt PNG"); + if (scan == SCAN_header) { s->img_n = pal_img_n; return 1; } + if (ioff + c.length > idata_limit) { + uint8 *p; + if (idata_limit == 0) idata_limit = c.length > 4096 ? c.length : 4096; + while (ioff + c.length > idata_limit) + idata_limit *= 2; + p = (uint8 *) realloc(z->idata, idata_limit); if (p == NULL) return e("outofmem", "Out of memory"); + z->idata = p; + } + if (!getn(s, z->idata+ioff,c.length)) return e("outofdata","Corrupt PNG"); + ioff += c.length; + break; + } + + case PNG_TYPE('I','E','N','D'): { + uint32 raw_len; + if (first) return e("first not IHDR", "Corrupt PNG"); + if (scan != SCAN_load) return 1; + if (z->idata == NULL) return e("no IDAT","Corrupt PNG"); + z->expanded = (uint8 *) stbi_zlib_decode_malloc_guesssize_headerflag((char *) z->idata, ioff, 16384, (int *) &raw_len, !iphone); + if (z->expanded == NULL) return 0; // zlib should set error + free(z->idata); z->idata = NULL; + if ((req_comp == s->img_n+1 && req_comp != 3 && !pal_img_n) || has_trans) + s->img_out_n = s->img_n+1; + else + s->img_out_n = s->img_n; + if (!create_png_image(z, z->expanded, raw_len, s->img_out_n, interlace)) return 0; + if (has_trans) + if (!compute_transparency(z, tc, s->img_out_n)) return 0; + if (iphone && s->img_out_n > 2) + stbi_de_iphone(z); + if (pal_img_n) { + // pal_img_n == 3 or 4 + s->img_n = pal_img_n; // record the actual colors we had + s->img_out_n = pal_img_n; + if (req_comp >= 3) s->img_out_n = req_comp; + if (!expand_palette(z, palette, pal_len, s->img_out_n)) + return 0; + } + free(z->expanded); z->expanded = NULL; + return 1; + } + + default: + // if critical, fail + if (first) return e("first not IHDR", "Corrupt PNG"); + if ((c.type & (1 << 29)) == 0) { + #ifndef STBI_NO_FAILURE_STRINGS + // not threadsafe + static char invalid_chunk[] = "XXXX chunk not known"; + invalid_chunk[0] = (uint8) (c.type >> 24); + invalid_chunk[1] = (uint8) (c.type >> 16); + invalid_chunk[2] = (uint8) (c.type >> 8); + invalid_chunk[3] = (uint8) (c.type >> 0); + #endif + return e(invalid_chunk, "PNG not supported: unknown chunk type"); + } + skip(s, c.length); + break; + } + // end of chunk, read and skip CRC + get32(s); + } +} + +static unsigned char *do_png(png *p, int *x, int *y, int *n, int req_comp) +{ + unsigned char *result=NULL; + if (req_comp < 0 || req_comp > 4) return epuc("bad req_comp", "Internal error"); + if (parse_png_file(p, SCAN_load, req_comp)) { + result = p->out; + p->out = NULL; + if (req_comp && req_comp != p->s->img_out_n) { + result = convert_format(result, p->s->img_out_n, req_comp, p->s->img_x, p->s->img_y); + p->s->img_out_n = req_comp; + if (result == NULL) return result; + } + *x = p->s->img_x; + *y = p->s->img_y; + if (n) *n = p->s->img_n; + } + free(p->out); p->out = NULL; + free(p->expanded); p->expanded = NULL; + free(p->idata); p->idata = NULL; + + return result; +} + +static unsigned char *stbi_png_load(stbi *s, int *x, int *y, int *comp, int req_comp) +{ + png p; + p.s = s; + return do_png(&p, x,y,comp,req_comp); +} + +static int stbi_png_test(stbi *s) +{ + int r; + r = check_png_header(s); + stbi_rewind(s); + return r; +} + +static int stbi_png_info_raw(png *p, int *x, int *y, int *comp) +{ + if (!parse_png_file(p, SCAN_header, 0)) { + stbi_rewind( p->s ); + return 0; + } + if (x) *x = p->s->img_x; + if (y) *y = p->s->img_y; + if (comp) *comp = p->s->img_n; + return 1; +} + +static int stbi_png_info(stbi *s, int *x, int *y, int *comp) +{ + png p; + p.s = s; + return stbi_png_info_raw(&p, x, y, comp); +} + +// Microsoft/Windows BMP image + +static int bmp_test(stbi *s) +{ + int sz; + if (get8(s) != 'B') return 0; + if (get8(s) != 'M') return 0; + get32le(s); // discard filesize + get16le(s); // discard reserved + get16le(s); // discard reserved + get32le(s); // discard data offset + sz = get32le(s); + if (sz == 12 || sz == 40 || sz == 56 || sz == 108) return 1; + return 0; +} + +static int stbi_bmp_test(stbi *s) +{ + int r = bmp_test(s); + stbi_rewind(s); + return r; +} + + +// returns 0..31 for the highest set bit +static int high_bit(unsigned int z) +{ + int n=0; + if (z == 0) return -1; + if (z >= 0x10000) n += 16, z >>= 16; + if (z >= 0x00100) n += 8, z >>= 8; + if (z >= 0x00010) n += 4, z >>= 4; + if (z >= 0x00004) n += 2, z >>= 2; + if (z >= 0x00002) n += 1, z >>= 1; + return n; +} + +static int bitcount(unsigned int a) +{ + a = (a & 0x55555555) + ((a >> 1) & 0x55555555); // max 2 + a = (a & 0x33333333) + ((a >> 2) & 0x33333333); // max 4 + a = (a + (a >> 4)) & 0x0f0f0f0f; // max 8 per 4, now 8 bits + a = (a + (a >> 8)); // max 16 per 8 bits + a = (a + (a >> 16)); // max 32 per 8 bits + return a & 0xff; +} + +static int shiftsigned(int v, int shift, int bits) +{ + int result; + int z=0; + + if (shift < 0) v <<= -shift; + else v >>= shift; + result = v; + + z = bits; + while (z < 8) { + result += v >> z; + z += bits; + } + return result; +} + +static stbi_uc *bmp_load(stbi *s, int *x, int *y, int *comp, int req_comp) +{ + uint8 *out; + unsigned int mr=0,mg=0,mb=0,ma=0, fake_a=0; + stbi_uc pal[256][4]; + int psize=0,i,j,compress=0,width; + int bpp, flip_vertically, pad, target, offset, hsz; + if (get8(s) != 'B' || get8(s) != 'M') return epuc("not BMP", "Corrupt BMP"); + get32le(s); // discard filesize + get16le(s); // discard reserved + get16le(s); // discard reserved + offset = get32le(s); + hsz = get32le(s); + if (hsz != 12 && hsz != 40 && hsz != 56 && hsz != 108) return epuc("unknown BMP", "BMP type not supported: unknown"); + if (hsz == 12) { + s->img_x = get16le(s); + s->img_y = get16le(s); + } else { + s->img_x = get32le(s); + s->img_y = get32le(s); + } + if (get16le(s) != 1) return epuc("bad BMP", "bad BMP"); + bpp = get16le(s); + if (bpp == 1) return epuc("monochrome", "BMP type not supported: 1-bit"); + flip_vertically = ((int) s->img_y) > 0; + s->img_y = abs((int) s->img_y); + if (hsz == 12) { + if (bpp < 24) + psize = (offset - 14 - 24) / 3; + } else { + compress = get32le(s); + if (compress == 1 || compress == 2) return epuc("BMP RLE", "BMP type not supported: RLE"); + get32le(s); // discard sizeof + get32le(s); // discard hres + get32le(s); // discard vres + get32le(s); // discard colorsused + get32le(s); // discard max important + if (hsz == 40 || hsz == 56) { + if (hsz == 56) { + get32le(s); + get32le(s); + get32le(s); + get32le(s); + } + if (bpp == 16 || bpp == 32) { + mr = mg = mb = 0; + if (compress == 0) { + if (bpp == 32) { + mr = 0xffu << 16; + mg = 0xffu << 8; + mb = 0xffu << 0; + ma = 0xffu << 24; + fake_a = 1; // @TODO: check for cases like alpha value is all 0 and switch it to 255 + } else { + mr = 31u << 10; + mg = 31u << 5; + mb = 31u << 0; + } + } else if (compress == 3) { + mr = get32le(s); + mg = get32le(s); + mb = get32le(s); + // not documented, but generated by photoshop and handled by mspaint + if (mr == mg && mg == mb) { + // ?!?!? + return epuc("bad BMP", "bad BMP"); + } + } else + return epuc("bad BMP", "bad BMP"); + } + } else { + assert(hsz == 108); + mr = get32le(s); + mg = get32le(s); + mb = get32le(s); + ma = get32le(s); + get32le(s); // discard color space + for (i=0; i < 12; ++i) + get32le(s); // discard color space parameters + } + if (bpp < 16) + psize = (offset - 14 - hsz) >> 2; + } + s->img_n = ma ? 4 : 3; + if (req_comp && req_comp >= 3) // we can directly decode 3 or 4 + target = req_comp; + else + target = s->img_n; // if they want monochrome, we'll post-convert + out = (stbi_uc *) malloc(target * s->img_x * s->img_y); + if (!out) return epuc("outofmem", "Out of memory"); + if (bpp < 16) { + int z=0; + if (psize == 0 || psize > 256) { free(out); return epuc("invalid", "Corrupt BMP"); } + for (i=0; i < psize; ++i) { + pal[i][2] = get8u(s); + pal[i][1] = get8u(s); + pal[i][0] = get8u(s); + if (hsz != 12) get8(s); + pal[i][3] = 255; + } + skip(s, offset - 14 - hsz - psize * (hsz == 12 ? 3 : 4)); + if (bpp == 4) width = (s->img_x + 1) >> 1; + else if (bpp == 8) width = s->img_x; + else { free(out); return epuc("bad bpp", "Corrupt BMP"); } + pad = (-width)&3; + for (j=0; j < (int) s->img_y; ++j) { + for (i=0; i < (int) s->img_x; i += 2) { + int v=get8(s),v2=0; + if (bpp == 4) { + v2 = v & 15; + v >>= 4; + } + out[z++] = pal[v][0]; + out[z++] = pal[v][1]; + out[z++] = pal[v][2]; + if (target == 4) out[z++] = 255; + if (i+1 == (int) s->img_x) break; + v = (bpp == 8) ? get8(s) : v2; + out[z++] = pal[v][0]; + out[z++] = pal[v][1]; + out[z++] = pal[v][2]; + if (target == 4) out[z++] = 255; + } + skip(s, pad); + } + } else { + int rshift=0,gshift=0,bshift=0,ashift=0,rcount=0,gcount=0,bcount=0,acount=0; + int z = 0; + int easy=0; + skip(s, offset - 14 - hsz); + if (bpp == 24) width = 3 * s->img_x; + else if (bpp == 16) width = 2*s->img_x; + else /* bpp = 32 and pad = 0 */ width=0; + pad = (-width) & 3; + if (bpp == 24) { + easy = 1; + } else if (bpp == 32) { + if (mb == 0xff && mg == 0xff00 && mr == 0x00ff0000 && ma == 0xff000000) + easy = 2; + } + if (!easy) { + if (!mr || !mg || !mb) { free(out); return epuc("bad masks", "Corrupt BMP"); } + // right shift amt to put high bit in position #7 + rshift = high_bit(mr)-7; rcount = bitcount(mr); + gshift = high_bit(mg)-7; gcount = bitcount(mr); + bshift = high_bit(mb)-7; bcount = bitcount(mr); + ashift = high_bit(ma)-7; acount = bitcount(mr); + } + for (j=0; j < (int) s->img_y; ++j) { + if (easy) { + for (i=0; i < (int) s->img_x; ++i) { + int a; + out[z+2] = get8u(s); + out[z+1] = get8u(s); + out[z+0] = get8u(s); + z += 3; + a = (easy == 2 ? get8(s) : 255); + if (target == 4) out[z++] = (uint8) a; + } + } else { + for (i=0; i < (int) s->img_x; ++i) { + uint32 v = (bpp == 16 ? get16le(s) : get32le(s)); + int a; + out[z++] = (uint8) shiftsigned(v & mr, rshift, rcount); + out[z++] = (uint8) shiftsigned(v & mg, gshift, gcount); + out[z++] = (uint8) shiftsigned(v & mb, bshift, bcount); + a = (ma ? shiftsigned(v & ma, ashift, acount) : 255); + if (target == 4) out[z++] = (uint8) a; + } + } + skip(s, pad); + } + } + if (flip_vertically) { + stbi_uc t; + for (j=0; j < (int) s->img_y>>1; ++j) { + stbi_uc *p1 = out + j *s->img_x*target; + stbi_uc *p2 = out + (s->img_y-1-j)*s->img_x*target; + for (i=0; i < (int) s->img_x*target; ++i) { + t = p1[i], p1[i] = p2[i], p2[i] = t; + } + } + } + + if (req_comp && req_comp != target) { + out = convert_format(out, target, req_comp, s->img_x, s->img_y); + if (out == NULL) return out; // convert_format frees input on failure + } + + *x = s->img_x; + *y = s->img_y; + if (comp) *comp = s->img_n; + return out; +} + +static stbi_uc *stbi_bmp_load(stbi *s,int *x, int *y, int *comp, int req_comp) +{ + return bmp_load(s, x,y,comp,req_comp); +} + + +// Targa Truevision - TGA +// by Jonathan Dummer + +static int tga_info(stbi *s, int *x, int *y, int *comp) +{ + int tga_w, tga_h, tga_comp; + int sz; + get8u(s); // discard Offset + sz = get8u(s); // color type + if( sz > 1 ) { + stbi_rewind(s); + return 0; // only RGB or indexed allowed + } + sz = get8u(s); // image type + // only RGB or grey allowed, +/- RLE + if ((sz != 1) && (sz != 2) && (sz != 3) && (sz != 9) && (sz != 10) && (sz != 11)) return 0; + skip(s,9); + tga_w = get16le(s); + if( tga_w < 1 ) { + stbi_rewind(s); + return 0; // test width + } + tga_h = get16le(s); + if( tga_h < 1 ) { + stbi_rewind(s); + return 0; // test height + } + sz = get8(s); // bits per pixel + // only RGB or RGBA or grey allowed + if ((sz != 8) && (sz != 16) && (sz != 24) && (sz != 32)) { + stbi_rewind(s); + return 0; + } + tga_comp = sz; + if (x) *x = tga_w; + if (y) *y = tga_h; + if (comp) *comp = tga_comp / 8; + return 1; // seems to have passed everything +} + +int stbi_tga_info(stbi *s, int *x, int *y, int *comp) +{ + return tga_info(s, x, y, comp); +} + +static int tga_test(stbi *s) +{ + int sz; + get8u(s); // discard Offset + sz = get8u(s); // color type + if ( sz > 1 ) return 0; // only RGB or indexed allowed + sz = get8u(s); // image type + if ( (sz != 1) && (sz != 2) && (sz != 3) && (sz != 9) && (sz != 10) && (sz != 11) ) return 0; // only RGB or grey allowed, +/- RLE + get16(s); // discard palette start + get16(s); // discard palette length + get8(s); // discard bits per palette color entry + get16(s); // discard x origin + get16(s); // discard y origin + if ( get16(s) < 1 ) return 0; // test width + if ( get16(s) < 1 ) return 0; // test height + sz = get8(s); // bits per pixel + if ( (sz != 8) && (sz != 16) && (sz != 24) && (sz != 32) ) return 0; // only RGB or RGBA or grey allowed + return 1; // seems to have passed everything +} + +static int stbi_tga_test(stbi *s) +{ + int res = tga_test(s); + stbi_rewind(s); + return res; +} + +static stbi_uc *tga_load(stbi *s, int *x, int *y, int *comp, int req_comp) +{ + // read in the TGA header stuff + int tga_offset = get8u(s); + int tga_indexed = get8u(s); + int tga_image_type = get8u(s); + int tga_is_RLE = 0; + int tga_palette_start = get16le(s); + int tga_palette_len = get16le(s); + int tga_palette_bits = get8u(s); + int tga_x_origin = get16le(s); + int tga_y_origin = get16le(s); + int tga_width = get16le(s); + int tga_height = get16le(s); + int tga_bits_per_pixel = get8u(s); + int tga_inverted = get8u(s); + // image data + unsigned char *tga_data; + unsigned char *tga_palette = NULL; + int i, j; + unsigned char raw_data[4]; + unsigned char trans_data[4]; + int RLE_count = 0; + int RLE_repeating = 0; + int read_next_pixel = 1; + + // do a tiny bit of precessing + if ( tga_image_type >= 8 ) + { + tga_image_type -= 8; + tga_is_RLE = 1; + } + /* int tga_alpha_bits = tga_inverted & 15; */ + tga_inverted = 1 - ((tga_inverted >> 5) & 1); + + // error check + if ( //(tga_indexed) || + (tga_width < 1) || (tga_height < 1) || + (tga_image_type < 1) || (tga_image_type > 3) || + ((tga_bits_per_pixel != 8) && (tga_bits_per_pixel != 16) && + (tga_bits_per_pixel != 24) && (tga_bits_per_pixel != 32)) + ) + { + return NULL; // we don't report this as a bad TGA because we don't even know if it's TGA + } + + // If I'm paletted, then I'll use the number of bits from the palette + if ( tga_indexed ) + { + tga_bits_per_pixel = tga_palette_bits; + } + + // tga info + *x = tga_width; + *y = tga_height; + if ( (req_comp < 1) || (req_comp > 4) ) + { + // just use whatever the file was + req_comp = tga_bits_per_pixel / 8; + *comp = req_comp; + } else + { + // force a new number of components + *comp = tga_bits_per_pixel/8; + } + tga_data = (unsigned char*)malloc( tga_width * tga_height * req_comp ); + if (!tga_data) return epuc("outofmem", "Out of memory"); + + // skip to the data's starting position (offset usually = 0) + skip(s, tga_offset ); + // do I need to load a palette? + if ( tga_indexed ) + { + // any data to skip? (offset usually = 0) + skip(s, tga_palette_start ); + // load the palette + tga_palette = (unsigned char*)malloc( tga_palette_len * tga_palette_bits / 8 ); + if (!tga_palette) return epuc("outofmem", "Out of memory"); + if (!getn(s, tga_palette, tga_palette_len * tga_palette_bits / 8 )) { + free(tga_data); + free(tga_palette); + return epuc("bad palette", "Corrupt TGA"); + } + } + // load the data + trans_data[0] = trans_data[1] = trans_data[2] = trans_data[3] = 0; + for (i=0; i < tga_width * tga_height; ++i) + { + // if I'm in RLE mode, do I need to get a RLE chunk? + if ( tga_is_RLE ) + { + if ( RLE_count == 0 ) + { + // yep, get the next byte as a RLE command + int RLE_cmd = get8u(s); + RLE_count = 1 + (RLE_cmd & 127); + RLE_repeating = RLE_cmd >> 7; + read_next_pixel = 1; + } else if ( !RLE_repeating ) + { + read_next_pixel = 1; + } + } else + { + read_next_pixel = 1; + } + // OK, if I need to read a pixel, do it now + if ( read_next_pixel ) + { + // load however much data we did have + if ( tga_indexed ) + { + // read in 1 byte, then perform the lookup + int pal_idx = get8u(s); + if ( pal_idx >= tga_palette_len ) + { + // invalid index + pal_idx = 0; + } + pal_idx *= tga_bits_per_pixel / 8; + for (j = 0; j*8 < tga_bits_per_pixel; ++j) + { + raw_data[j] = tga_palette[pal_idx+j]; + } + } else + { + // read in the data raw + for (j = 0; j*8 < tga_bits_per_pixel; ++j) + { + raw_data[j] = get8u(s); + } + } + // convert raw to the intermediate format + switch (tga_bits_per_pixel) + { + case 8: + // Luminous => RGBA + trans_data[0] = raw_data[0]; + trans_data[1] = raw_data[0]; + trans_data[2] = raw_data[0]; + trans_data[3] = 255; + break; + case 16: + // Luminous,Alpha => RGBA + trans_data[0] = raw_data[0]; + trans_data[1] = raw_data[0]; + trans_data[2] = raw_data[0]; + trans_data[3] = raw_data[1]; + break; + case 24: + // BGR => RGBA + trans_data[0] = raw_data[2]; + trans_data[1] = raw_data[1]; + trans_data[2] = raw_data[0]; + trans_data[3] = 255; + break; + case 32: + // BGRA => RGBA + trans_data[0] = raw_data[2]; + trans_data[1] = raw_data[1]; + trans_data[2] = raw_data[0]; + trans_data[3] = raw_data[3]; + break; + } + // clear the reading flag for the next pixel + read_next_pixel = 0; + } // end of reading a pixel + // convert to final format + switch (req_comp) + { + case 1: + // RGBA => Luminance + tga_data[i*req_comp+0] = compute_y(trans_data[0],trans_data[1],trans_data[2]); + break; + case 2: + // RGBA => Luminance,Alpha + tga_data[i*req_comp+0] = compute_y(trans_data[0],trans_data[1],trans_data[2]); + tga_data[i*req_comp+1] = trans_data[3]; + break; + case 3: + // RGBA => RGB + tga_data[i*req_comp+0] = trans_data[0]; + tga_data[i*req_comp+1] = trans_data[1]; + tga_data[i*req_comp+2] = trans_data[2]; + break; + case 4: + // RGBA => RGBA + tga_data[i*req_comp+0] = trans_data[0]; + tga_data[i*req_comp+1] = trans_data[1]; + tga_data[i*req_comp+2] = trans_data[2]; + tga_data[i*req_comp+3] = trans_data[3]; + break; + } + // in case we're in RLE mode, keep counting down + --RLE_count; + } + // do I need to invert the image? + if ( tga_inverted ) + { + for (j = 0; j*2 < tga_height; ++j) + { + int index1 = j * tga_width * req_comp; + int index2 = (tga_height - 1 - j) * tga_width * req_comp; + for (i = tga_width * req_comp; i > 0; --i) + { + unsigned char temp = tga_data[index1]; + tga_data[index1] = tga_data[index2]; + tga_data[index2] = temp; + ++index1; + ++index2; + } + } + } + // clear my palette, if I had one + if ( tga_palette != NULL ) + { + free( tga_palette ); + } + // the things I do to get rid of an error message, and yet keep + // Microsoft's C compilers happy... [8^( + tga_palette_start = tga_palette_len = tga_palette_bits = + tga_x_origin = tga_y_origin = 0; + // OK, done + return tga_data; +} + +static stbi_uc *stbi_tga_load(stbi *s, int *x, int *y, int *comp, int req_comp) +{ + return tga_load(s,x,y,comp,req_comp); +} + + +// ************************************************************************************************* +// Photoshop PSD loader -- PD by Thatcher Ulrich, integration by Nicolas Schulz, tweaked by STB + +static int psd_test(stbi *s) +{ + if (get32(s) != 0x38425053) return 0; // "8BPS" + else return 1; +} + +static int stbi_psd_test(stbi *s) +{ + int r = psd_test(s); + stbi_rewind(s); + return r; +} + +static stbi_uc *psd_load(stbi *s, int *x, int *y, int *comp, int req_comp) +{ + int pixelCount; + int channelCount, compression; + int channel, i, count, len; + int w,h; + uint8 *out; + + // Check identifier + if (get32(s) != 0x38425053) // "8BPS" + return epuc("not PSD", "Corrupt PSD image"); + + // Check file type version. + if (get16(s) != 1) + return epuc("wrong version", "Unsupported version of PSD image"); + + // Skip 6 reserved bytes. + skip(s, 6 ); + + // Read the number of channels (R, G, B, A, etc). + channelCount = get16(s); + if (channelCount < 0 || channelCount > 16) + return epuc("wrong channel count", "Unsupported number of channels in PSD image"); + + // Read the rows and columns of the image. + h = get32(s); + w = get32(s); + + // Make sure the depth is 8 bits. + if (get16(s) != 8) + return epuc("unsupported bit depth", "PSD bit depth is not 8 bit"); + + // Make sure the color mode is RGB. + // Valid options are: + // 0: Bitmap + // 1: Grayscale + // 2: Indexed color + // 3: RGB color + // 4: CMYK color + // 7: Multichannel + // 8: Duotone + // 9: Lab color + if (get16(s) != 3) + return epuc("wrong color format", "PSD is not in RGB color format"); + + // Skip the Mode Data. (It's the palette for indexed color; other info for other modes.) + skip(s,get32(s) ); + + // Skip the image resources. (resolution, pen tool paths, etc) + skip(s, get32(s) ); + + // Skip the reserved data. + skip(s, get32(s) ); + + // Find out if the data is compressed. + // Known values: + // 0: no compression + // 1: RLE compressed + compression = get16(s); + if (compression > 1) + return epuc("bad compression", "PSD has an unknown compression format"); + + // Create the destination image. + out = (stbi_uc *) malloc(4 * w*h); + if (!out) return epuc("outofmem", "Out of memory"); + pixelCount = w*h; + + // Initialize the data to zero. + //memset( out, 0, pixelCount * 4 ); + + // Finally, the image data. + if (compression) { + // RLE as used by .PSD and .TIFF + // Loop until you get the number of unpacked bytes you are expecting: + // Read the next source byte into n. + // If n is between 0 and 127 inclusive, copy the next n+1 bytes literally. + // Else if n is between -127 and -1 inclusive, copy the next byte -n+1 times. + // Else if n is 128, noop. + // Endloop + + // The RLE-compressed data is preceeded by a 2-byte data count for each row in the data, + // which we're going to just skip. + skip(s, h * channelCount * 2 ); + + // Read the RLE data by channel. + for (channel = 0; channel < 4; channel++) { + uint8 *p; + + p = out+channel; + if (channel >= channelCount) { + // Fill this channel with default data. + for (i = 0; i < pixelCount; i++) *p = (channel == 3 ? 255 : 0), p += 4; + } else { + // Read the RLE data. + count = 0; + while (count < pixelCount) { + len = get8(s); + if (len == 128) { + // No-op. + } else if (len < 128) { + // Copy next len+1 bytes literally. + len++; + count += len; + while (len) { + *p = get8u(s); + p += 4; + len--; + } + } else if (len > 128) { + uint8 val; + // Next -len+1 bytes in the dest are replicated from next source byte. + // (Interpret len as a negative 8-bit int.) + len ^= 0x0FF; + len += 2; + val = get8u(s); + count += len; + while (len) { + *p = val; + p += 4; + len--; + } + } + } + } + } + + } else { + // We're at the raw image data. It's each channel in order (Red, Green, Blue, Alpha, ...) + // where each channel consists of an 8-bit value for each pixel in the image. + + // Read the data by channel. + for (channel = 0; channel < 4; channel++) { + uint8 *p; + + p = out + channel; + if (channel > channelCount) { + // Fill this channel with default data. + for (i = 0; i < pixelCount; i++) *p = channel == 3 ? 255 : 0, p += 4; + } else { + // Read the data. + for (i = 0; i < pixelCount; i++) + *p = get8u(s), p += 4; + } + } + } + + if (req_comp && req_comp != 4) { + out = convert_format(out, 4, req_comp, w, h); + if (out == NULL) return out; // convert_format frees input on failure + } + + if (comp) *comp = channelCount; + *y = h; + *x = w; + + return out; +} + +static stbi_uc *stbi_psd_load(stbi *s, int *x, int *y, int *comp, int req_comp) +{ + return psd_load(s,x,y,comp,req_comp); +} + +// ************************************************************************************************* +// Softimage PIC loader +// by Tom Seddon +// +// See http://softimage.wiki.softimage.com/index.php/INFO:_PIC_file_format +// See http://ozviz.wasp.uwa.edu.au/~pbourke/dataformats/softimagepic/ + +static int pic_is4(stbi *s,const char *str) +{ + int i; + for (i=0; i<4; ++i) + if (get8(s) != (stbi_uc)str[i]) + return 0; + + return 1; +} + +static int pic_test(stbi *s) +{ + int i; + + if (!pic_is4(s,"\x53\x80\xF6\x34")) + return 0; + + for(i=0;i<84;++i) + get8(s); + + if (!pic_is4(s,"PICT")) + return 0; + + return 1; +} + +typedef struct +{ + stbi_uc size,type,channel; +} pic_packet_t; + +static stbi_uc *pic_readval(stbi *s, int channel, stbi_uc *dest) +{ + int mask=0x80, i; + + for (i=0; i<4; ++i, mask>>=1) { + if (channel & mask) { + if (at_eof(s)) return epuc("bad file","PIC file too short"); + dest[i]=get8u(s); + } + } + + return dest; +} + +static void pic_copyval(int channel,stbi_uc *dest,const stbi_uc *src) +{ + int mask=0x80,i; + + for (i=0;i<4; ++i, mask>>=1) + if (channel&mask) + dest[i]=src[i]; +} + +static stbi_uc *pic_load2(stbi *s,int width,int height,int *comp, stbi_uc *result) +{ + int act_comp=0,num_packets=0,y,chained; + pic_packet_t packets[10]; + + // this will (should...) cater for even some bizarre stuff like having data + // for the same channel in multiple packets. + do { + pic_packet_t *packet; + + if (num_packets==sizeof(packets)/sizeof(packets[0])) + return epuc("bad format","too many packets"); + + packet = &packets[num_packets++]; + + chained = get8(s); + packet->size = get8u(s); + packet->type = get8u(s); + packet->channel = get8u(s); + + act_comp |= packet->channel; + + if (at_eof(s)) return epuc("bad file","file too short (reading packets)"); + if (packet->size != 8) return epuc("bad format","packet isn't 8bpp"); + } while (chained); + + *comp = (act_comp & 0x10 ? 4 : 3); // has alpha channel? + + for(y=0; ytype) { + default: + return epuc("bad format","packet has bad compression type"); + + case 0: {//uncompressed + int x; + + for(x=0;xchannel,dest)) + return 0; + break; + } + + case 1://Pure RLE + { + int left=width, i; + + while (left>0) { + stbi_uc count,value[4]; + + count=get8u(s); + if (at_eof(s)) return epuc("bad file","file too short (pure read count)"); + + if (count > left) + count = (uint8) left; + + if (!pic_readval(s,packet->channel,value)) return 0; + + for(i=0; ichannel,dest,value); + left -= count; + } + } + break; + + case 2: {//Mixed RLE + int left=width; + while (left>0) { + int count = get8(s), i; + if (at_eof(s)) return epuc("bad file","file too short (mixed read count)"); + + if (count >= 128) { // Repeated + stbi_uc value[4]; + int i; + + if (count==128) + count = get16(s); + else + count -= 127; + if (count > left) + return epuc("bad file","scanline overrun"); + + if (!pic_readval(s,packet->channel,value)) + return 0; + + for(i=0;ichannel,dest,value); + } else { // Raw + ++count; + if (count>left) return epuc("bad file","scanline overrun"); + + for(i=0;ichannel,dest)) + return 0; + } + left-=count; + } + break; + } + } + } + } + + return result; +} + +static stbi_uc *pic_load(stbi *s,int *px,int *py,int *comp,int req_comp) +{ + stbi_uc *result; + int i, x,y; + + for (i=0; i<92; ++i) + get8(s); + + x = get16(s); + y = get16(s); + if (at_eof(s)) return epuc("bad file","file too short (pic header)"); + if ((1 << 28) / x < y) return epuc("too large", "Image too large to decode"); + + get32(s); //skip `ratio' + get16(s); //skip `fields' + get16(s); //skip `pad' + + // intermediate buffer is RGBA + result = (stbi_uc *) malloc(x*y*4); + memset(result, 0xff, x*y*4); + + if (!pic_load2(s,x,y,comp, result)) { + free(result); + result=0; + } + *px = x; + *py = y; + if (req_comp == 0) req_comp = *comp; + result=convert_format(result,4,req_comp,x,y); + + return result; +} + +static int stbi_pic_test(stbi *s) +{ + int r = pic_test(s); + stbi_rewind(s); + return r; +} + +static stbi_uc *stbi_pic_load(stbi *s, int *x, int *y, int *comp, int req_comp) +{ + return pic_load(s,x,y,comp,req_comp); +} + +// ************************************************************************************************* +// GIF loader -- public domain by Jean-Marc Lienher -- simplified/shrunk by stb +typedef struct stbi_gif_lzw_struct { + int16 prefix; + uint8 first; + uint8 suffix; +} stbi_gif_lzw; + +typedef struct stbi_gif_struct +{ + int w,h; + stbi_uc *out; // output buffer (always 4 components) + int flags, bgindex, ratio, transparent, eflags; + uint8 pal[256][4]; + uint8 lpal[256][4]; + stbi_gif_lzw codes[4096]; + uint8 *color_table; + int parse, step; + int lflags; + int start_x, start_y; + int max_x, max_y; + int cur_x, cur_y; + int line_size; +} stbi_gif; + +static int gif_test(stbi *s) +{ + int sz; + if (get8(s) != 'G' || get8(s) != 'I' || get8(s) != 'F' || get8(s) != '8') return 0; + sz = get8(s); + if (sz != '9' && sz != '7') return 0; + if (get8(s) != 'a') return 0; + return 1; +} + +static int stbi_gif_test(stbi *s) +{ + int r = gif_test(s); + stbi_rewind(s); + return r; +} + +static void stbi_gif_parse_colortable(stbi *s, uint8 pal[256][4], int num_entries, int transp) +{ + int i; + for (i=0; i < num_entries; ++i) { + pal[i][2] = get8u(s); + pal[i][1] = get8u(s); + pal[i][0] = get8u(s); + pal[i][3] = transp ? 0 : 255; + } +} + +static int stbi_gif_header(stbi *s, stbi_gif *g, int *comp, int is_info) +{ + uint8 version; + if (get8(s) != 'G' || get8(s) != 'I' || get8(s) != 'F' || get8(s) != '8') + return e("not GIF", "Corrupt GIF"); + + version = get8u(s); + if (version != '7' && version != '9') return e("not GIF", "Corrupt GIF"); + if (get8(s) != 'a') return e("not GIF", "Corrupt GIF"); + + failure_reason = ""; + g->w = get16le(s); + g->h = get16le(s); + g->flags = get8(s); + g->bgindex = get8(s); + g->ratio = get8(s); + g->transparent = -1; + + if (comp != 0) *comp = 4; // can't actually tell whether it's 3 or 4 until we parse the comments + + if (is_info) return 1; + + if (g->flags & 0x80) + stbi_gif_parse_colortable(s,g->pal, 2 << (g->flags & 7), -1); + + return 1; +} + +static int stbi_gif_info_raw(stbi *s, int *x, int *y, int *comp) +{ + stbi_gif g; + if (!stbi_gif_header(s, &g, comp, 1)) { + stbi_rewind( s ); + return 0; + } + if (x) *x = g.w; + if (y) *y = g.h; + return 1; +} + +static void stbi_out_gif_code(stbi_gif *g, uint16 code) +{ + uint8 *p, *c; + + // recurse to decode the prefixes, since the linked-list is backwards, + // and working backwards through an interleaved image would be nasty + if (g->codes[code].prefix >= 0) + stbi_out_gif_code(g, g->codes[code].prefix); + + if (g->cur_y >= g->max_y) return; + + p = &g->out[g->cur_x + g->cur_y]; + c = &g->color_table[g->codes[code].suffix * 4]; + + if (c[3] >= 128) { + p[0] = c[2]; + p[1] = c[1]; + p[2] = c[0]; + p[3] = c[3]; + } + g->cur_x += 4; + + if (g->cur_x >= g->max_x) { + g->cur_x = g->start_x; + g->cur_y += g->step; + + while (g->cur_y >= g->max_y && g->parse > 0) { + g->step = (1 << g->parse) * g->line_size; + g->cur_y = g->start_y + (g->step >> 1); + --g->parse; + } + } +} + +static uint8 *stbi_process_gif_raster(stbi *s, stbi_gif *g) +{ + uint8 lzw_cs; + int32 len, code; + uint32 first; + int32 codesize, codemask, avail, oldcode, bits, valid_bits, clear; + stbi_gif_lzw *p; + + lzw_cs = get8u(s); + clear = 1 << lzw_cs; + first = 1; + codesize = lzw_cs + 1; + codemask = (1 << codesize) - 1; + bits = 0; + valid_bits = 0; + for (code = 0; code < clear; code++) { + g->codes[code].prefix = -1; + g->codes[code].first = (uint8) code; + g->codes[code].suffix = (uint8) code; + } + + // support no starting clear code + avail = clear+2; + oldcode = -1; + + len = 0; + for(;;) { + if (valid_bits < codesize) { + if (len == 0) { + len = get8(s); // start new block + if (len == 0) + return g->out; + } + --len; + bits |= (int32) get8(s) << valid_bits; + valid_bits += 8; + } else { + int32 code = bits & codemask; + bits >>= codesize; + valid_bits -= codesize; + // @OPTIMIZE: is there some way we can accelerate the non-clear path? + if (code == clear) { // clear code + codesize = lzw_cs + 1; + codemask = (1 << codesize) - 1; + avail = clear + 2; + oldcode = -1; + first = 0; + } else if (code == clear + 1) { // end of stream code + skip(s, len); + while ((len = get8(s)) > 0) + skip(s,len); + return g->out; + } else if (code <= avail) { + if (first) return epuc("no clear code", "Corrupt GIF"); + + if (oldcode >= 0) { + p = &g->codes[avail++]; + if (avail > 4096) return epuc("too many codes", "Corrupt GIF"); + p->prefix = (int16) oldcode; + p->first = g->codes[oldcode].first; + p->suffix = (code == avail) ? p->first : g->codes[code].first; + } else if (code == avail) + return epuc("illegal code in raster", "Corrupt GIF"); + + stbi_out_gif_code(g, (uint16) code); + + if ((avail & codemask) == 0 && avail <= 0x0FFF) { + codesize++; + codemask = (1 << codesize) - 1; + } + + oldcode = code; + } else { + return epuc("illegal code in raster", "Corrupt GIF"); + } + } + } +} + +static void stbi_fill_gif_background(stbi_gif *g) +{ + int i; + uint8 *c = g->pal[g->bgindex]; + // @OPTIMIZE: write a dword at a time + for (i = 0; i < g->w * g->h * 4; i += 4) { + uint8 *p = &g->out[i]; + p[0] = c[2]; + p[1] = c[1]; + p[2] = c[0]; + p[3] = c[3]; + } +} + +// this function is designed to support animated gifs, although stb_image doesn't support it +static uint8 *stbi_gif_load_next(stbi *s, stbi_gif *g, int *comp, int req_comp) +{ + int i; + uint8 *old_out = 0; + + if (g->out == 0) { + if (!stbi_gif_header(s, g, comp,0)) return 0; // failure_reason set by stbi_gif_header + g->out = (uint8 *) malloc(4 * g->w * g->h); + if (g->out == 0) return epuc("outofmem", "Out of memory"); + stbi_fill_gif_background(g); + } else { + // animated-gif-only path + if (((g->eflags & 0x1C) >> 2) == 3) { + old_out = g->out; + g->out = (uint8 *) malloc(4 * g->w * g->h); + if (g->out == 0) return epuc("outofmem", "Out of memory"); + memcpy(g->out, old_out, g->w*g->h*4); + } + } + + for (;;) { + switch (get8(s)) { + case 0x2C: /* Image Descriptor */ + { + int32 x, y, w, h; + uint8 *o; + + x = get16le(s); + y = get16le(s); + w = get16le(s); + h = get16le(s); + if (((x + w) > (g->w)) || ((y + h) > (g->h))) + return epuc("bad Image Descriptor", "Corrupt GIF"); + + g->line_size = g->w * 4; + g->start_x = x * 4; + g->start_y = y * g->line_size; + g->max_x = g->start_x + w * 4; + g->max_y = g->start_y + h * g->line_size; + g->cur_x = g->start_x; + g->cur_y = g->start_y; + + g->lflags = get8(s); + + if (g->lflags & 0x40) { + g->step = 8 * g->line_size; // first interlaced spacing + g->parse = 3; + } else { + g->step = g->line_size; + g->parse = 0; + } + + if (g->lflags & 0x80) { + stbi_gif_parse_colortable(s,g->lpal, 2 << (g->lflags & 7), g->eflags & 0x01 ? g->transparent : -1); + g->color_table = (uint8 *) g->lpal; + } else if (g->flags & 0x80) { + for (i=0; i < 256; ++i) // @OPTIMIZE: reset only the previous transparent + g->pal[i][3] = 255; + if (g->transparent >= 0 && (g->eflags & 0x01)) + g->pal[g->transparent][3] = 0; + g->color_table = (uint8 *) g->pal; + } else + return epuc("missing color table", "Corrupt GIF"); + + o = stbi_process_gif_raster(s, g); + if (o == NULL) return NULL; + + if (req_comp && req_comp != 4) + o = convert_format(o, 4, req_comp, g->w, g->h); + return o; + } + + case 0x21: // Comment Extension. + { + int len; + if (get8(s) == 0xF9) { // Graphic Control Extension. + len = get8(s); + if (len == 4) { + g->eflags = get8(s); + get16le(s); // delay + g->transparent = get8(s); + } else { + skip(s, len); + break; + } + } + while ((len = get8(s)) != 0) + skip(s, len); + break; + } + + case 0x3B: // gif stream termination code + return (uint8 *) 1; + + default: + return epuc("unknown code", "Corrupt GIF"); + } + } +} + +static stbi_uc *stbi_gif_load(stbi *s, int *x, int *y, int *comp, int req_comp) +{ + uint8 *u = 0; + stbi_gif g={0}; + + u = stbi_gif_load_next(s, &g, comp, req_comp); + if (u == (void *) 1) u = 0; // end of animated gif marker + if (u) { + *x = g.w; + *y = g.h; + } + + return u; +} + +static int stbi_gif_info(stbi *s, int *x, int *y, int *comp) +{ + return stbi_gif_info_raw(s,x,y,comp); +} + + +// ************************************************************************************************* +// Radiance RGBE HDR loader +// originally by Nicolas Schulz +#ifndef STBI_NO_HDR +static int hdr_test(stbi *s) +{ + const char *signature = "#?RADIANCE\n"; + int i; + for (i=0; signature[i]; ++i) + if (get8(s) != signature[i]) + return 0; + return 1; +} + +static int stbi_hdr_test(stbi* s) +{ + int r = hdr_test(s); + stbi_rewind(s); + return r; +} + +#define HDR_BUFLEN 1024 +static char *hdr_gettoken(stbi *z, char *buffer) +{ + int len=0; + char c = '\0'; + + c = (char) get8(z); + + while (!at_eof(z) && c != '\n') { + buffer[len++] = c; + if (len == HDR_BUFLEN-1) { + // flush to end of line + while (!at_eof(z) && get8(z) != '\n') + ; + break; + } + c = (char) get8(z); + } + + buffer[len] = 0; + return buffer; +} + +static void hdr_convert(float *output, stbi_uc *input, int req_comp) +{ + if ( input[3] != 0 ) { + float f1; + // Exponent + f1 = (float) ldexp(1.0f, input[3] - (int)(128 + 8)); + if (req_comp <= 2) + output[0] = (input[0] + input[1] + input[2]) * f1 / 3; + else { + output[0] = input[0] * f1; + output[1] = input[1] * f1; + output[2] = input[2] * f1; + } + if (req_comp == 2) output[1] = 1; + if (req_comp == 4) output[3] = 1; + } else { + switch (req_comp) { + case 4: output[3] = 1; /* fallthrough */ + case 3: output[0] = output[1] = output[2] = 0; + break; + case 2: output[1] = 1; /* fallthrough */ + case 1: output[0] = 0; + break; + } + } +} + +static float *hdr_load(stbi *s, int *x, int *y, int *comp, int req_comp) +{ + char buffer[HDR_BUFLEN]; + char *token; + int valid = 0; + int width, height; + stbi_uc *scanline; + float *hdr_data; + int len; + unsigned char count, value; + int i, j, k, c1,c2, z; + + + // Check identifier + if (strcmp(hdr_gettoken(s,buffer), "#?RADIANCE") != 0) + return epf("not HDR", "Corrupt HDR image"); + + // Parse header + for(;;) { + token = hdr_gettoken(s,buffer); + if (token[0] == 0) break; + if (strcmp(token, "FORMAT=32-bit_rle_rgbe") == 0) valid = 1; + } + + if (!valid) return epf("unsupported format", "Unsupported HDR format"); + + // Parse width and height + // can't use sscanf() if we're not using stdio! + token = hdr_gettoken(s,buffer); + if (strncmp(token, "-Y ", 3)) return epf("unsupported data layout", "Unsupported HDR format"); + token += 3; + height = strtol(token, &token, 10); + while (*token == ' ') ++token; + if (strncmp(token, "+X ", 3)) return epf("unsupported data layout", "Unsupported HDR format"); + token += 3; + width = strtol(token, NULL, 10); + + *x = width; + *y = height; + + *comp = 3; + if (req_comp == 0) req_comp = 3; + + // Read data + hdr_data = (float *) malloc(height * width * req_comp * sizeof(float)); + + // Load image data + // image data is stored as some number of sca + if ( width < 8 || width >= 32768) { + // Read flat data + for (j=0; j < height; ++j) { + for (i=0; i < width; ++i) { + stbi_uc rgbe[4]; + main_decode_loop: + getn(s, rgbe, 4); + hdr_convert(hdr_data + j * width * req_comp + i * req_comp, rgbe, req_comp); + } + } + } else { + // Read RLE-encoded data + scanline = NULL; + + for (j = 0; j < height; ++j) { + c1 = get8(s); + c2 = get8(s); + len = get8(s); + if (c1 != 2 || c2 != 2 || (len & 0x80)) { + // not run-length encoded, so we have to actually use THIS data as a decoded + // pixel (note this can't be a valid pixel--one of RGB must be >= 128) + uint8 rgbe[4]; + rgbe[0] = (uint8) c1; + rgbe[1] = (uint8) c2; + rgbe[2] = (uint8) len; + rgbe[3] = (uint8) get8u(s); + hdr_convert(hdr_data, rgbe, req_comp); + i = 1; + j = 0; + free(scanline); + goto main_decode_loop; // yes, this makes no sense + } + len <<= 8; + len |= get8(s); + if (len != width) { free(hdr_data); free(scanline); return epf("invalid decoded scanline length", "corrupt HDR"); } + if (scanline == NULL) scanline = (stbi_uc *) malloc(width * 4); + + for (k = 0; k < 4; ++k) { + i = 0; + while (i < width) { + count = get8u(s); + if (count > 128) { + // Run + value = get8u(s); + count -= 128; + for (z = 0; z < count; ++z) + scanline[i++ * 4 + k] = value; + } else { + // Dump + for (z = 0; z < count; ++z) + scanline[i++ * 4 + k] = get8u(s); + } + } + } + for (i=0; i < width; ++i) + hdr_convert(hdr_data+(j*width + i)*req_comp, scanline + i*4, req_comp); + } + free(scanline); + } + + return hdr_data; +} + +static float *stbi_hdr_load(stbi *s, int *x, int *y, int *comp, int req_comp) +{ + return hdr_load(s,x,y,comp,req_comp); +} + +static int stbi_hdr_info(stbi *s, int *x, int *y, int *comp) +{ + char buffer[HDR_BUFLEN]; + char *token; + int valid = 0; + + if (strcmp(hdr_gettoken(s,buffer), "#?RADIANCE") != 0) { + stbi_rewind( s ); + return 0; + } + + for(;;) { + token = hdr_gettoken(s,buffer); + if (token[0] == 0) break; + if (strcmp(token, "FORMAT=32-bit_rle_rgbe") == 0) valid = 1; + } + + if (!valid) { + stbi_rewind( s ); + return 0; + } + token = hdr_gettoken(s,buffer); + if (strncmp(token, "-Y ", 3)) { + stbi_rewind( s ); + return 0; + } + token += 3; + *y = strtol(token, &token, 10); + while (*token == ' ') ++token; + if (strncmp(token, "+X ", 3)) { + stbi_rewind( s ); + return 0; + } + token += 3; + *x = strtol(token, NULL, 10); + *comp = 3; + return 1; +} +#endif // STBI_NO_HDR + +static int stbi_bmp_info(stbi *s, int *x, int *y, int *comp) +{ + int hsz; + if (get8(s) != 'B' || get8(s) != 'M') { + stbi_rewind( s ); + return 0; + } + skip(s,12); + hsz = get32le(s); + if (hsz != 12 && hsz != 40 && hsz != 56 && hsz != 108) { + stbi_rewind( s ); + return 0; + } + if (hsz == 12) { + *x = get16le(s); + *y = get16le(s); + } else { + *x = get32le(s); + *y = get32le(s); + } + if (get16le(s) != 1) { + stbi_rewind( s ); + return 0; + } + *comp = get16le(s) / 8; + return 1; +} + +static int stbi_psd_info(stbi *s, int *x, int *y, int *comp) +{ + int channelCount; + if (get32(s) != 0x38425053) { + stbi_rewind( s ); + return 0; + } + if (get16(s) != 1) { + stbi_rewind( s ); + return 0; + } + skip(s, 6); + channelCount = get16(s); + if (channelCount < 0 || channelCount > 16) { + stbi_rewind( s ); + return 0; + } + *y = get32(s); + *x = get32(s); + if (get16(s) != 8) { + stbi_rewind( s ); + return 0; + } + if (get16(s) != 3) { + stbi_rewind( s ); + return 0; + } + *comp = 4; + return 1; +} + +static int stbi_pic_info(stbi *s, int *x, int *y, int *comp) +{ + int act_comp=0,num_packets=0,chained; + pic_packet_t packets[10]; + + skip(s, 92); + + *x = get16(s); + *y = get16(s); + if (at_eof(s)) return 0; + if ( (*x) != 0 && (1 << 28) / (*x) < (*y)) { + stbi_rewind( s ); + return 0; + } + + skip(s, 8); + + do { + pic_packet_t *packet; + + if (num_packets==sizeof(packets)/sizeof(packets[0])) + return 0; + + packet = &packets[num_packets++]; + chained = get8(s); + packet->size = get8u(s); + packet->type = get8u(s); + packet->channel = get8u(s); + act_comp |= packet->channel; + + if (at_eof(s)) { + stbi_rewind( s ); + return 0; + } + if (packet->size != 8) { + stbi_rewind( s ); + return 0; + } + } while (chained); + + *comp = (act_comp & 0x10 ? 4 : 3); + + return 1; +} + +static int stbi_info_main(stbi *s, int *x, int *y, int *comp) +{ + if (stbi_jpeg_info(s, x, y, comp)) + return 1; + if (stbi_png_info(s, x, y, comp)) + return 1; + if (stbi_gif_info(s, x, y, comp)) + return 1; + if (stbi_bmp_info(s, x, y, comp)) + return 1; + if (stbi_psd_info(s, x, y, comp)) + return 1; + if (stbi_pic_info(s, x, y, comp)) + return 1; + #ifndef STBI_NO_HDR + if (stbi_hdr_info(s, x, y, comp)) + return 1; + #endif + // test tga last because it's a crappy test! + if (stbi_tga_info(s, x, y, comp)) + return 1; + return e("unknown image type", "Image not of any known type, or corrupt"); +} + +#ifndef STBI_NO_STDIO +int stbi_info(char const *filename, int *x, int *y, int *comp) +{ + FILE *f = fopen(filename, "rb"); + int result; + if (!f) return e("can't fopen", "Unable to open file"); + result = stbi_info_from_file(f, x, y, comp); + fclose(f); + return result; +} + +int stbi_info_from_file(FILE *f, int *x, int *y, int *comp) +{ + int r; + stbi s; + long pos = ftell(f); + start_file(&s, f); + r = stbi_info_main(&s,x,y,comp); + fseek(f,pos,SEEK_SET); + return r; +} +#endif // !STBI_NO_STDIO + +int stbi_info_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp) +{ + stbi s; + start_mem(&s,buffer,len); + return stbi_info_main(&s,x,y,comp); +} + +int stbi_info_from_callbacks(stbi_io_callbacks const *c, void *user, int *x, int *y, int *comp) +{ + stbi s; + start_callbacks(&s, (stbi_io_callbacks *) c, user); + return stbi_info_main(&s,x,y,comp); +} + +#endif // STBI_HEADER_FILE_ONLY + +/* + revision history: + 1.33 (2011-07-14) + make stbi_is_hdr work in STBI_NO_HDR (as specified), minor compiler-friendly improvements + 1.32 (2011-07-13) + support for "info" function for all supported filetypes (SpartanJ) + 1.31 (2011-06-20) + a few more leak fixes, bug in PNG handling (SpartanJ) + 1.30 (2011-06-11) + added ability to load files via callbacks to accomidate custom input streams (Ben Wenger) + removed deprecated format-specific test/load functions + removed support for installable file formats (stbi_loader) -- would have been broken for IO callbacks anyway + error cases in bmp and tga give messages and don't leak (Raymond Barbiero, grisha) + fix inefficiency in decoding 32-bit BMP (David Woo) + 1.29 (2010-08-16) + various warning fixes from Aurelien Pocheville + 1.28 (2010-08-01) + fix bug in GIF palette transparency (SpartanJ) + 1.27 (2010-08-01) + cast-to-uint8 to fix warnings + 1.26 (2010-07-24) + fix bug in file buffering for PNG reported by SpartanJ + 1.25 (2010-07-17) + refix trans_data warning (Won Chun) + 1.24 (2010-07-12) + perf improvements reading from files on platforms with lock-heavy fgetc() + minor perf improvements for jpeg + deprecated type-specific functions so we'll get feedback if they're needed + attempt to fix trans_data warning (Won Chun) + 1.23 fixed bug in iPhone support + 1.22 (2010-07-10) + removed image *writing* support + stbi_info support from Jetro Lauha + GIF support from Jean-Marc Lienher + iPhone PNG-extensions from James Brown + warning-fixes from Nicolas Schulz and Janez Zemva (i.e. Janez (U+017D)emva) + 1.21 fix use of 'uint8' in header (reported by jon blow) + 1.20 added support for Softimage PIC, by Tom Seddon + 1.19 bug in interlaced PNG corruption check (found by ryg) + 1.18 2008-08-02 + fix a threading bug (local mutable static) + 1.17 support interlaced PNG + 1.16 major bugfix - convert_format converted one too many pixels + 1.15 initialize some fields for thread safety + 1.14 fix threadsafe conversion bug + header-file-only version (#define STBI_HEADER_FILE_ONLY before including) + 1.13 threadsafe + 1.12 const qualifiers in the API + 1.11 Support installable IDCT, colorspace conversion routines + 1.10 Fixes for 64-bit (don't use "unsigned long") + optimized upsampling by Fabian "ryg" Giesen + 1.09 Fix format-conversion for PSD code (bad global variables!) + 1.08 Thatcher Ulrich's PSD code integrated by Nicolas Schulz + 1.07 attempt to fix C++ warning/errors again + 1.06 attempt to fix C++ warning/errors again + 1.05 fix TGA loading to return correct *comp and use good luminance calc + 1.04 default float alpha is 1, not 255; use 'void *' for stbi_image_free + 1.03 bugfixes to STBI_NO_STDIO, STBI_NO_HDR + 1.02 support for (subset of) HDR files, float interface for preferred access to them + 1.01 fix bug: possible bug in handling right-side up bmps... not sure + fix bug: the stbi_bmp_load() and stbi_tga_load() functions didn't work at all + 1.00 interface to zlib that skips zlib header + 0.99 correct handling of alpha in palette + 0.98 TGA loader by lonesock; dynamically add loaders (untested) + 0.97 jpeg errors on too large a file; also catch another malloc failure + 0.96 fix detection of invalid v value - particleman@mollyrocket forum + 0.95 during header scan, seek to markers in case of padding + 0.94 STBI_NO_STDIO to disable stdio usage; rename all #defines the same + 0.93 handle jpegtran output; verbose errors + 0.92 read 4,8,16,24,32-bit BMP files of several formats + 0.91 output 24-bit Windows 3.0 BMP files + 0.90 fix a few more warnings; bump version number to approach 1.0 + 0.61 bugfixes due to Marc LeBlanc, Christopher Lloyd + 0.60 fix compiling as c++ + 0.59 fix warnings: merge Dave Moore's -Wall fixes + 0.58 fix bug: zlib uncompressed mode len/nlen was wrong endian + 0.57 fix bug: jpg last huffman symbol before marker was >9 bits but less than 16 available + 0.56 fix bug: zlib uncompressed mode len vs. nlen + 0.55 fix bug: restart_interval not initialized to 0 + 0.54 allow NULL for 'int *comp' + 0.53 fix bug in png 3->4; speedup png decoding + 0.52 png handles req_comp=3,4 directly; minor cleanup; jpeg comments + 0.51 obey req_comp requests, 1-component jpegs return as 1-component, + on 'test' only check type, not whether we support this variant + 0.50 first released version +*/ + + +#ifdef HAVE_XPM +int _xpmtest(char *f) +{ + char header[]={0x2f,0x2a,0x20,0x58,0x50,0x4d,0x20,0x2a,0x2f}; + /* test le nombre magic */ + char buf[9]; + FILE * fd; + int i; + if ((fd=fopen(f,"r"))==NULL) return 0; + + if (fread(buf,1,9,fd)!=9) { + fclose(fd); + return 0; + } + fclose(fd); + for(i=0;i<9;i++) + { + if (buf[i]!=header[i]) return 0; + } + return 1; +} +#endif +int _chargerimage(char *f, int *x,int *y,Pixmap * p , Pixmap * pmask,Display *display,GC gc,int screen) +{ + int w,h,comp; + + unsigned char * img=NULL; + int i,j,indpixel,cr,cg,cb,ca,xx,yy; + XImage *xi=NULL; + char *data = NULL; + int bpl; +#ifdef HAVE_XPM + if (_xpmtest(f)) + { + XpmAttributes a; + a.valuemask=XpmSize; + //if (XpmReadFileToPixmap(display,ecran[num_ecran],f,p,pmask,&a)==XpmSuccess) + if (XpmReadFileToPixmap(display, DefaultRootWindow(display),f,p,pmask,&a)==XpmSuccess) + { + *x=a.width; + *y=a.height; + return 1; + } + else return 0; + } +#endif + img=stbi_load(f,&w,&h,&comp,0); /* on charge les pixels rgb(a) */ + if (img == NULL) return 0; + xi = XCreateImage (display, DefaultVisual(display,screen), DefaultDepth(display,screen), ZPixmap, 0, + NULL, w, h, 32, 0); + if (xi == NULL) return 0; + xi->data = calloc (xi->bytes_per_line * h, 1); + if (xi->data == NULL) + { + XDestroyImage (xi); + return 0; + } + /* on remplit l'image + * avec les pixels */ + + if (comp!=4) + { + for(j=0,indpixel=0;j= 46) data[xx] |= 1 << yy; + } + } + free(img); + *p=XCreatePixmap( display , DefaultRootWindow(display), w , h , DefaultDepth(display,screen) ); + XPutImage(display,*p,gc,xi,0,0,0,0,w,h); + XDestroyImage (xi); + if (pmask!=NULL) *pmask = XCreateBitmapFromData (display, DefaultRootWindow(display), data, w, h); + free(data); + *x=w; + *y=h; + return 1; + } +} diff --git a/bibliotheque-graphique-iut-1.1/src/lib/image.h b/bibliotheque-graphique-iut-1.1/src/lib/image.h new file mode 100644 index 0000000..475c39b --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/lib/image.h @@ -0,0 +1,5 @@ +#ifndef _IMAGE_H +#define _IMAGE_H +int _chargerimage(char *f, int *x,int *y,Pixmap * p , Pixmap * pmask,Display *display,GC gc,int screen); +#endif + diff --git a/bibliotheque-graphique-iut-1.1/src/lib/image.lo b/bibliotheque-graphique-iut-1.1/src/lib/image.lo new file mode 100644 index 0000000..ec93d8e --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/lib/image.lo @@ -0,0 +1,12 @@ +# image.lo - a libtool object file +# Generated by libtool (GNU libtool) 2.4.2 +# +# Please DO NOT delete this file! +# It is necessary for linking the library. + +# Name of the PIC object. +pic_object='.libs/image.o' + +# Name of the non-PIC object +non_pic_object='image.o' + diff --git a/bibliotheque-graphique-iut-1.1/src/lib/image.o b/bibliotheque-graphique-iut-1.1/src/lib/image.o new file mode 100644 index 0000000000000000000000000000000000000000..eb4425f031eba857b28cf95f73421a5d40ebf846 GIT binary patch literal 315560 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 S@<#h-?C|67K|9dR(EkB%>nC&o literal 0 HcmV?d00001 diff --git a/bibliotheque-graphique-iut-1.1/src/lib/libgraph.la b/bibliotheque-graphique-iut-1.1/src/lib/libgraph.la new file mode 100644 index 0000000..56dfefe --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/src/lib/libgraph.la @@ -0,0 +1,41 @@ +# libgraph.la - a libtool library file +# Generated by libtool (GNU libtool) 2.4.2 +# +# Please DO NOT delete this file! +# It is necessary for linking the library. + +# The name that we can dlopen(3). +dlname='libgraph.so.0' + +# Names of this library. +library_names='libgraph.so.0.0.0 libgraph.so.0 libgraph.so' + +# The name of the static archive. +old_library='libgraph.a' + +# Linker flags that can not go in dependency_libs. +inherited_linker_flags='' + +# Libraries that this one depends upon. +dependency_libs=' -lX11 -lm -lXpm' + +# Names of additional weak libraries provided by this library +weak_library_names='' + +# Version information for libgraph. +current=0 +age=0 +revision=0 + +# Is this an already installed library? +installed=no + +# Should we warn about portability when linking against -modules? +shouldnotlink=no + +# Files to dlopen/dlpreopen +dlopen='' +dlpreopen='' + +# Directory that this library needs to be installed in: +libdir='/usr/lib' diff --git a/bibliotheque-graphique-iut-1.1/stamp-h1 b/bibliotheque-graphique-iut-1.1/stamp-h1 new file mode 100644 index 0000000..4547fe1 --- /dev/null +++ b/bibliotheque-graphique-iut-1.1/stamp-h1 @@ -0,0 +1 @@ +timestamp for config.h diff --git a/exemple b/exemple new file mode 100755 index 0000000000000000000000000000000000000000..44994bb68f2acb0b48e7be2b89779dd7b0111d0f GIT binary patch literal 20736 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 F{u`U$ICcO4 literal 0 HcmV?d00001 diff --git a/exemple.c b/exemple.c new file mode 100644 index 0000000..56d5876 --- /dev/null +++ b/exemple.c @@ -0,0 +1,12 @@ +#include +#include + +int main() +{ + InitialiserGraphique(); + CreerFenetre(10,10,500,500); + EcrireTexte(10,100,"Hello World !",2); + Touche(); + FermerGraphique(); + return EXIT_SUCCESS; +} diff --git a/include/graph.h b/include/graph.h new file mode 100644 index 0000000..8244e09 --- /dev/null +++ b/include/graph.h @@ -0,0 +1,149 @@ +#ifndef _GRAPH_H +#define _GRAPH_H + +#include +#include +#include + +extern int _X; +extern int _Y; + +#define NB_PIXMAP 10 + +typedef unsigned long couleur; +typedef XPoint Point; + +int InitialiserGraphique(); +/* initialise le mode graphique : renvoie 1 en cas de succes, 0 sinon */ + +int CreerFenetre(int posx,int posy,int X,int Y); +/* creer la fenetre graphique de largeur X et longueur Y, et la positionne + sur l'ecran au point (posx,posy). Une seule fenetre autorisée */ + +void ChoisirTitreFenetre(char *s); +/* change le titre de la fenetre */ + +void ChoisirCurseur(unsigned int forme); +/* change le curseur de la fenetre */ + +void CacherFenetre(void); +/* cache la fenetre */ + +void AfficherFenetre(void); +/* affiche la fenetre */ + +void ChoisirEcran(int n); +/* fixe l'ecran ou le dessin est effectue : cette ecran est soit 0 (la fenetre + visible, ecran par defaut au demarrage), soit le numero de l'écran virtuel correspondant */ + +void ChoisirCouleurDessin(couleur c); +/* fixe la couleur qui sert au dessin */ + +couleur CouleurParNom(char * nom); +/* fait la traduction d'une couleur a partir de son nom : le fichier rgb.txt + contient la liste des couleurs accessibles via leur nom */ + +couleur CouleurParComposante(unsigned char r, unsigned char v,unsigned char b); +/* renvoie la couleur définie par ses trois composantes */ + +int Maxx(); +/* renvoie la largeur de l'ecran : il faut que le mode graphique ait été + initialise !!! */ + +int Maxy(); +/* renvoie la hauteur de l'ecran : il faut que le mode graphique ait été + initialise !!! */ + +void DessinerPixel(int x,int y); +/* allume un pixel avec la couleur de dessin */ + +void DessinerSegment(int x,int y,int xx,int yy); +/* idem precedent, mais avec la couleur de dessin */ + +void DessinerSegments(Point * sommets,int nb_sommets); +/* trace pour chaque paire sommet[i],sommet[i+1] le segment correspondant. Si le deux extrémités correspondent, le polygone est fermé */ + +void DessinerRectangle(int x,int y,int l,int h); +/* idem, mais utilise la couleur de dessin */ + +void RemplirRectangle(int x,int y,int l,int h); +/* trace un rectangle plein, rempli avec c */ + +void DessinerArc(int x,int y,int l,int h,int angle1,int angle2); +/* idem, mais utilise la couleur de dessin */ + +void RemplirArc(int x,int y,int l,int h,int angle1,int angle2); +/* trace un arc plein avec c */ + +void RemplirTriangle(int x,int y,int xx,int yy,int xxx,int yyy); +/* trace un triangle plein */ + +void RemplirPolygone(Point * sommets,int nb_sommet); +/* Trace un polygone plein défini par son tableau de sommets. Si les extremités ne coincident pas, le polygone est fermé automatiquement. +*/ + +int ToucheEnAttente(); +/* renvoie 1 si une touche a été enfoncée, 0 sinon */ + +KeySym Touche(); +/* renvoie la premiere touche du tampon : cette fonction est bloquante => + utiliser ToucheEnAttente pour la rendre non bloquante */ + +void EcrireTexte(int x,int y,char *texte,int taille); +/* ecrit la chaine texte au point (x,y) : taille indique la taille (0<->petit,1<->moyen,2<->grand) */ +#ifdef HAVE_XPM +void SauverImage(char * file,int x,int y,int l,int h); +/* sauvegarde d'une partie de la fenetre (x,y,x+l,y+h) au format xpm */ +#endif + +int ChargerImage(char *file,int x,int y,int xx,int yy,int l,int h); +/* charge une partie (xx,yy,xx+l,yy+h) d'image au format xpm dans +la fenetre a la position (x,y) */ + +void ChargerImageFond(char *file); +/* charge une image qui remplit le fond de la fen\^etre, en la r\'ep\'etant si necessaire */ + +void EffacerEcran(couleur c); +/* efface l'ecran avec la couleur c*/ + +void ChoisirModeDessin(int m); +/* fixe le mode d'affichage : 0<->ecrasement 1<->xor */ + +int TailleChaineEcran(char *t,int taile); +/* renvoie, en pixel, la taille horizontale occupee par la chaine à l'écran :taille est la taille de la police (0,1,2) */ + +int TailleSupPolice(int taille); +/* renvoie la taiile maximale de la police, en pixel, au dessus de la ligne d'écriture */ + +int TailleInfPolice(int taille); +/* renvoie la taille maximale de la police, en pixel, en dessous de la ligne d'écriture */ + +void CopierZone(int src,int dst,int ox,int oy,int L,int H,int dx,int dy); +/* copie une zone de l'écran vers l'écran dst. La zone copiée est le rectangle delimite par le coin superieure hauche (ox,oy) et sa largeur l et hauteur h. Cette zone est copié au point (dx,dy) de l'ecran dst */ + +void FermerGraphique(); +/* fermeture du mode graphique */ + +unsigned long Microsecondes(); +/* renvoie le nombre de microsecondes ecoulées depuis le +lancement du programme */ + +void SourisPosition(); +/* recupere les coordonnees de la souris dans la fenetre et les place dans _X et _Y*/ + +int SourisCliquee(); +/* indique un clic de souris (1 si oui, 0 sinon), et recupere si c'est le cas la position au moment du clic dans _X et _Y */ + + +/* fonctions a réécrire proprement */ + +int ChargerSprite(char *file); +/* charge un srpite en mémoire, et renvoie son numéro + * -1 en cas d'echec */ +void AfficherSprite(int n,int x,int y); +/* affiche le sprite correspondant à son numéro */ +void LibererSprite(int n); +/* libere les ressources associées au sprite + * n */ + +#endif diff --git a/lib/libgraph.a b/lib/libgraph.a new file mode 100644 index 0000000000000000000000000000000000000000..a75da54ea91f22b292cf89ef5aa4119eade25a62 GIT binary patch literal 399074 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

$`6y3H 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 XGfwQ!pZJ~((jWg`;(yjCn5y$1S;WG* literal 0 HcmV?d00001 diff --git a/lib/libgraph.la b/lib/libgraph.la new file mode 100755 index 0000000..7429a51 --- /dev/null +++ b/lib/libgraph.la @@ -0,0 +1,41 @@ +# libgraph.la - a libtool library file +# Generated by libtool (GNU libtool) 2.4.2 +# +# Please DO NOT delete this file! +# It is necessary for linking the library. + +# The name that we can dlopen(3). +dlname='libgraph.so.0' + +# Names of this library. +library_names='libgraph.so.0.0.0 libgraph.so.0 libgraph.so' + +# The name of the static archive. +old_library='libgraph.a' + +# Linker flags that can not go in dependency_libs. +inherited_linker_flags='' + +# Libraries that this one depends upon. +dependency_libs=' -lX11 -lm -lXpm' + +# Names of additional weak libraries provided by this library +weak_library_names='' + +# Version information for libgraph. +current=0 +age=0 +revision=0 + +# Is this an already installed library? +installed=yes + +# Should we warn about portability when linking against -modules? +shouldnotlink=no + +# Files to dlopen/dlpreopen +dlopen='' +dlpreopen='' + +# Directory that this library needs to be installed in: +libdir='/usr/lib' diff --git a/lib/libgraph.so b/lib/libgraph.so new file mode 120000 index 0000000..a2b22bb --- /dev/null +++ b/lib/libgraph.so @@ -0,0 +1 @@ +libgraph.so.0.0.0 \ No newline at end of file diff --git a/lib/libgraph.so.0 b/lib/libgraph.so.0 new file mode 120000 index 0000000..a2b22bb --- /dev/null +++ b/lib/libgraph.so.0 @@ -0,0 +1 @@ +libgraph.so.0.0.0 \ No newline at end of file diff --git a/lib/libgraph.so.0.0.0 b/lib/libgraph.so.0.0.0 new file mode 100755 index 0000000000000000000000000000000000000000..21c38c1d60cfc06428bf956669fcb2f787820c18 GIT binary patch literal 349336 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 G|33jGVKVjr literal 0 HcmV?d00001

r+k?(zK*r>k9v)(r+hVQ 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