diff -Nru libextractor-1.2/AUTHORS libextractor-1.3/AUTHORS --- libextractor-1.2/AUTHORS 2012-12-06 09:01:22.000000000 +0000 +++ libextractor-1.3/AUTHORS 2013-12-21 00:04:52.000000000 +0000 @@ -5,6 +5,7 @@ Developers: Andreas Huggel Blake Matheny +Bruno Cabral Bruno Haible Christopher Adam Telfer Filip Pizlo @@ -56,6 +57,7 @@ ole2 - Christian Grothoff ogg - Christian Grothoff png - Christian Grothoff +previewopus - Bruno Cabral ps - Christian Grothoff riff - Christian Grothoff rpm - Christian Grothoff diff -Nru libextractor-1.2/ChangeLog libextractor-1.3/ChangeLog --- libextractor-1.2/ChangeLog 2013-10-19 14:32:18.000000000 +0000 +++ libextractor-1.3/ChangeLog 2013-12-22 22:11:51.000000000 +0000 @@ -1,3 +1,14 @@ +Sun Dec 22 23:11:28 CET 2013 + Releasing GNU libextractor 1.3. -CG + +Sun Dec 22 17:47:38 CET 2013 + Fixing issue where one plugin blocked indefinitely could prevent + others from ever (successfully) seeking and thus extracting data. -CG + +Sat Dec 21 00:26:34 CET 2013 + Fix check for Gtk3. -CG + Added opus audio-preview plugin. -bratao + Sat Oct 19 16:30:37 CEST 2013 Increase select() timeout, handle timeout case better. Releasing GNU libextractor 1.2. -CG diff -Nru libextractor-1.2/INSTALL libextractor-1.3/INSTALL --- libextractor-1.2/INSTALL 2013-10-19 14:32:51.000000000 +0000 +++ libextractor-1.3/INSTALL 2013-12-22 22:23:30.000000000 +0000 @@ -1,7 +1,7 @@ Installation Instructions ************************* -Copyright (C) 1994-1996, 1999-2002, 2004-2013 Free Software Foundation, +Copyright (C) 1994-1996, 1999-2002, 2004-2011 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, @@ -309,10 +309,9 @@ overridden in the site shell script). Unfortunately, this technique does not work for `CONFIG_SHELL' due to -an Autoconf limitation. Until the limitation is lifted, you can use -this workaround: +an Autoconf bug. Until the bug is fixed you can use this workaround: - CONFIG_SHELL=/bin/bash ./configure CONFIG_SHELL=/bin/bash + CONFIG_SHELL=/bin/bash /bin/bash ./configure CONFIG_SHELL=/bin/bash `configure' Invocation ====================== @@ -368,3 +367,4 @@ `configure' also accepts some other, not widely useful, options. Run `configure --help' for more details. + diff -Nru libextractor-1.2/Makefile.in libextractor-1.3/Makefile.in --- libextractor-1.2/Makefile.in 2013-10-19 14:32:51.000000000 +0000 +++ libextractor-1.3/Makefile.in 2013-12-23 11:15:28.000000000 +0000 @@ -1,8 +1,9 @@ -# Makefile.in generated by automake 1.14 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2013 Free Software Foundation, Inc. - +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 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. @@ -15,51 +16,23 @@ @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 \ +am__make_dryrun = \ + { \ + am__dry=no; \ 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;; \ + echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \ + | grep '^AM OK$$' >/dev/null || am__dry=yes;; \ + *) \ + for am__flg in $$MAKEFLAGS; do \ + case $$am__flg in \ + *=*|--*) ;; \ + *n*) am__dry=yes; break;; \ + esac; \ + done;; \ 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)) + test $$am__dry = yes; \ + } pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ @@ -80,14 +53,14 @@ host_triplet = @host@ target_triplet = @target@ subdir = . -DIST_COMMON = INSTALL NEWS README AUTHORS ChangeLog \ - $(srcdir)/Makefile.in $(srcdir)/Makefile.am \ - $(top_srcdir)/configure $(am__configure_deps) \ - $(srcdir)/config.h.in \ +DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \ + $(srcdir)/Makefile.in $(srcdir)/config.h.in \ + $(top_srcdir)/configure \ $(top_srcdir)/contrib/macosx/Info.plist.in \ $(top_srcdir)/contrib/macosx/Pkg-Info.plist.in ABOUT-NLS \ - COPYING TODO compile config.guess config.rpath config.sub \ - depcomp install-sh missing ltmain.sh + AUTHORS COPYING ChangeLog INSTALL NEWS TODO compile \ + config.guess config.rpath config.sub depcomp install-sh \ + ltmain.sh missing ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/abi-gsf.m4 \ $(top_srcdir)/m4/ac_define_dir.m4 \ @@ -111,28 +84,21 @@ CONFIG_CLEAN_FILES = contrib/macosx/Info.plist \ contrib/macosx/Pkg-Info.plist 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_GEN_0 = @echo " GEN " $@; 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 +RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ + html-recursive info-recursive install-data-recursive \ + install-dvi-recursive install-exec-recursive \ + install-html-recursive install-info-recursive \ + install-pdf-recursive install-ps-recursive install-recursive \ + installcheck-recursive installdirs-recursive pdf-recursive \ + ps-recursive uninstall-recursive am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ @@ -169,33 +135,11 @@ DATA = $(pkgconfigdata_DATA) 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)` +AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \ + $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \ + distdir dist dist-all distcheck ETAGS = etags CTAGS = ctags -CSCOPE = cscope DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) distdir = $(PACKAGE)-$(VERSION) @@ -206,7 +150,6 @@ && 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,'; \ @@ -234,7 +177,6 @@ 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$$' @@ -467,8 +409,8 @@ $(am__aclocal_m4_deps): config.h: stamp-h1 - @test -f $@ || rm -f stamp-h1 - @test -f $@ || $(MAKE) $(AM_MAKEFLAGS) stamp-h1 + @if test ! -f $@; then rm -f stamp-h1; else :; fi + @if test ! -f $@; then $(MAKE) $(AM_MAKEFLAGS) stamp-h1; else :; fi stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status @rm -f stamp-h1 @@ -516,25 +458,22 @@ dir='$(DESTDIR)$(pkgconfigdatadir)'; $(am__uninstall_files_from_dir) # 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; \ +# into them and run `make' without going through this Makefile. +# To change the values of `make' variables: instead of editing Makefiles, +# (1) if the variable is set in `config.status', edit `config.status' +# (which will cause the Makefiles to be regenerated when you run `make'); +# (2) otherwise, pass the desired values on the `make' command line. +$(RECURSIVE_TARGETS): + @fail= failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ dot_seen=no; \ target=`echo $@ | sed s/-recursive//`; \ - case "$@" in \ - distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ - *) list='$(SUBDIRS)' ;; \ - esac; \ - for subdir in $$list; do \ + list='$(SUBDIRS)'; for subdir in $$list; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ dot_seen=yes; \ @@ -549,12 +488,57 @@ $(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 +$(RECURSIVE_CLEAN_TARGETS): + @fail= failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ + dot_seen=no; \ + case "$@" in \ + distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ + *) list='$(SUBDIRS)' ;; \ + esac; \ + rev=''; for subdir in $$list; do \ + if test "$$subdir" = "."; then :; else \ + rev="$$subdir $$rev"; \ + fi; \ + done; \ + rev="$$rev ."; \ + target=`echo $@ | sed s/-recursive//`; \ + for subdir in $$rev; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || eval $$failcom; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done +ctags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ + done + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + mkid -fID $$unique +tags: TAGS -tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) +TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) set x; \ here=`pwd`; \ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ @@ -570,7 +554,12 @@ set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ fi; \ done; \ - $(am__define_uniq_tagged_files); \ + list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ @@ -582,11 +571,15 @@ $$unique; \ fi; \ fi -ctags: ctags-recursive - -CTAGS: ctags -ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) - $(am__define_uniq_tagged_files); \ +ctags: CTAGS +CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique @@ -595,31 +588,9 @@ 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) @@ -687,42 +658,40 @@ || chmod -R a+r "$(distdir)" dist-gzip: distdir tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz - $(am__post_remove_distdir) + $(am__remove_distdir) dist-bzip2: distdir tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2 - $(am__post_remove_distdir) + $(am__remove_distdir) dist-lzip: distdir tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz - $(am__post_remove_distdir) + $(am__remove_distdir) + +dist-lzma: distdir + tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma + $(am__remove_distdir) dist-xz: distdir tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz - $(am__post_remove_distdir) + $(am__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) + $(am__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) + $(am__remove_distdir) dist-zip: distdir -rm -f $(distdir).zip zip -rq $(distdir).zip $(distdir) - $(am__post_remove_distdir) + $(am__remove_distdir) -dist dist-all: - $(MAKE) $(AM_MAKEFLAGS) $(DIST_TARGETS) am__post_remove_distdir='@:' - $(am__post_remove_distdir) +dist dist-all: distdir + tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz + $(am__remove_distdir) # This target untars the dist file and tries a VPATH configuration. Then # it guarantees that the distribution is self-contained by making another @@ -733,6 +702,8 @@ GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\ *.tar.bz2*) \ bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\ + *.tar.lzma*) \ + lzma -dc $(distdir).tar.lzma | $(am__untar) ;;\ *.tar.lz*) \ lzip -dc $(distdir).tar.lz | $(am__untar) ;;\ *.tar.xz*) \ @@ -744,9 +715,9 @@ *.zip*) \ unzip $(distdir).zip ;;\ esac - chmod -R a-w $(distdir) - chmod u+w $(distdir) - mkdir $(distdir)/_build $(distdir)/_inst + chmod -R a-w $(distdir); chmod u+w $(distdir) + mkdir $(distdir)/_build + mkdir $(distdir)/_inst chmod a-w $(distdir) test -d $(distdir)/_build || exit 0; \ dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \ @@ -778,7 +749,7 @@ && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \ && cd "$$am__cwd" \ || exit 1 - $(am__post_remove_distdir) + $(am__remove_distdir) @(echo "$(distdir) archives ready for distribution: "; \ list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \ sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x' @@ -916,25 +887,25 @@ uninstall-am: uninstall-pkgconfigdataDATA -.MAKE: $(am__recursive_targets) all install-am install-strip +.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) all \ + ctags-recursive install-am install-strip tags-recursive -.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-pkgconfigdataDATA 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 \ - uninstall-pkgconfigdataDATA +.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ + all all-am am--refresh check check-am clean clean-generic \ + clean-libtool ctags ctags-recursive dist dist-all dist-bzip2 \ + dist-gzip dist-lzip dist-lzma dist-shar dist-tarZ dist-xz \ + dist-zip distcheck distclean distclean-generic distclean-hdr \ + distclean-libtool distclean-tags distcleancheck distdir \ + distuninstallcheck dvi dvi-am html html-am info info-am \ + install install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-pkgconfigdataDATA \ + install-ps install-ps-am install-strip installcheck \ + installcheck-am installdirs installdirs-am maintainer-clean \ + maintainer-clean-generic mostlyclean mostlyclean-generic \ + mostlyclean-libtool pdf pdf-am ps ps-am tags tags-recursive \ + uninstall uninstall-am uninstall-pkgconfigdataDATA # Tell versions [3.59,3.63) of GNU make to not export all variables. diff -Nru libextractor-1.2/aclocal.m4 libextractor-1.3/aclocal.m4 --- libextractor-1.2/aclocal.m4 2013-10-19 14:32:48.000000000 +0000 +++ libextractor-1.3/aclocal.m4 2013-12-23 11:15:26.000000000 +0000 @@ -1,7 +1,8 @@ -# generated automatically by aclocal 1.14 -*- Autoconf -*- - -# Copyright (C) 1996-2013 Free Software Foundation, Inc. +# generated automatically by aclocal 1.11.6 -*- Autoconf -*- +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, +# 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, +# Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -11,31 +12,33 @@ # 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'.])]) +To do so, use the procedure documented by the package, typically `autoreconf'.])]) -# Copyright (C) 2002-2013 Free Software Foundation, Inc. +# Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008, 2011 Free Software +# Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. +# serial 1 + # 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' +[am__api_version='1.11' dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to dnl require some minimum version. Point them to the right macro. -m4_if([$1], [1.14], [], +m4_if([$1], [1.11.6], [], [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl ]) @@ -51,22 +54,24 @@ # 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 +[AM_AUTOMAKE_VERSION([1.11.6])dnl m4_ifndef([AC_AUTOCONF_VERSION], [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))]) # AM_AUX_DIR_EXPAND -*- Autoconf -*- -# Copyright (C) 2001-2013 Free Software Foundation, Inc. +# Copyright (C) 2001, 2003, 2005, 2011 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. +# serial 1 + # 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/../..'. +# $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 @@ -85,7 +90,7 @@ # # 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 +# 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, @@ -111,19 +116,22 @@ # AM_CONDITIONAL -*- Autoconf -*- -# Copyright (C) 1997-2013 Free Software Foundation, Inc. +# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006, 2008 +# Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. +# serial 9 + # AM_CONDITIONAL(NAME, SHELL-CONDITION) # ------------------------------------- # Define a conditional. AC_DEFUN([AM_CONDITIONAL], -[AC_PREREQ([2.52])dnl - m4_if([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])], - [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl +[AC_PREREQ(2.52)dnl + ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])], + [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl AC_SUBST([$1_TRUE])dnl AC_SUBST([$1_FALSE])dnl _AM_SUBST_NOTMAKE([$1_TRUE])dnl @@ -142,14 +150,16 @@ Usually this means the macro was only invoked conditionally.]]) fi])]) -# Copyright (C) 1999-2013 Free Software Foundation, Inc. +# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2009, +# 2010, 2011 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. +# serial 12 -# There are a few dirty hacks below to avoid letting 'AC_PROG_CC' be +# 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 @@ -159,7 +169,7 @@ # _AM_DEPENDENCIES(NAME) # ---------------------- # See how the compiler implements dependency checking. -# NAME is "CC", "CXX", "OBJC", "OBJCXX", "UPC", or "GJC". +# NAME is "CC", "CXX", "GCJ", or "OBJC". # We try a few techniques and use that to set a single cache variable. # # We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was @@ -172,13 +182,12 @@ 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=]) +ifelse([$1], CC, [depcc="$CC" am_compiler_list=], + [$1], CXX, [depcc="$CXX" am_compiler_list=], + [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'], + [$1], UPC, [depcc="$UPC" am_compiler_list=], + [$1], GCJ, [depcc="$GCJ" am_compiler_list='gcc3 gcc'], + [depcc="$$1" am_compiler_list=]) AC_CACHE_CHECK([dependency style of $depcc], [am_cv_$1_dependencies_compiler_type], @@ -186,8 +195,8 @@ # 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". + # 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 @@ -227,16 +236,16 @@ : > 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 + # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with + # Solaris 8's {/usr,}/bin/sh. + touch sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf - # We check with '-c' and '-o' for the sake of the "dashmstdout" + # 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. + # 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 @@ -245,8 +254,8 @@ test "$am__universal" = false || continue ;; nosideeffect) - # After this tag, mechanisms are not by side-effect, so they'll - # only be used when explicitly requested. + # 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 @@ -254,7 +263,7 @@ fi ;; msvc7 | msvc7msys | msvisualcpp | msvcmsys) - # This compiler won't grok '-c -o', but also, the minuso test has + # 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} @@ -302,7 +311,7 @@ # AM_SET_DEPDIR # ------------- # Choose a directory name for dependency files. -# This macro is AC_REQUIREd in _AM_DEPENDENCIES. +# 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 @@ -312,13 +321,9 @@ # 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])]) +[AC_ARG_ENABLE(dependency-tracking, +[ --disable-dependency-tracking speeds up one-time build + --enable-dependency-tracking do not reject slow dependency extractors]) if test "x$enable_dependency_tracking" != xno; then am_depcomp="$ac_aux_dir/depcomp" AMDEPBACKSLASH='\' @@ -333,18 +338,20 @@ # Generate code to set up dependency tracking. -*- Autoconf -*- -# Copyright (C) 1999-2013 Free Software Foundation, Inc. +# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2008 +# Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. +#serial 5 # _AM_OUTPUT_DEPENDENCY_COMMANDS # ------------------------------ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], [{ - # Older Autoconf quotes --file arguments for eval, but not when files + # Autoconf 2.62 quotes --file arguments for eval, but not when files # are listed without --file. Let's play safe and only enable the eval # if we detect the quoting. case $CONFIG_FILES in @@ -357,7 +364,7 @@ # 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 + # 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. @@ -369,19 +376,21 @@ continue fi # Extract the definition of DEPDIR, am__include, and am__quote - # from the Makefile without running 'make'. + # 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 + test -z "am__include" && continue am__quote=`sed -n 's/^am__quote = //p' < "$mf"` + # When using ansi2knr, U may be empty or an underscore; expand it + U=`sed -n 's/^U = //p' < "$mf"` # Find all dependency output files, they are included files with # $(DEPDIR) in their names. We invoke sed twice because it is the # simplest approach to changing $(DEPDIR) to its actual value in the # expansion. for file in `sed -n " s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ - sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do + sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do # Make sure the directory exists. test -f "$dirpart/$file" && continue fdir=`AS_DIRNAME(["$file"])` @@ -399,7 +408,7 @@ # 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 +# 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], @@ -409,21 +418,18 @@ # Do all the work for Automake. -*- Autoconf -*- -# Copyright (C) 1996-2013 Free Software Foundation, Inc. +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, +# 2005, 2006, 2008, 2009 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. +# serial 16 + # This macro actually does too much. Some checks are only needed if # your package does certain things. But this isn't really a big deal. -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]) # ----------------------------------------------- @@ -436,7 +442,7 @@ # 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 +[AC_PREREQ([2.62])dnl dnl Autoconf wants to disallow AM_ names. We explicitly allow dnl the ones we care about. m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl @@ -465,40 +471,31 @@ # 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 +[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_if(m4_ifdef([AC_PACKAGE_NAME], 1)m4_ifdef([AC_PACKAGE_VERSION], 1), 11,, [m4_fatal([AC_INIT should be called with package and version arguments])])dnl AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl _AM_IF_OPTION([no-define],, -[AC_DEFINE_UNQUOTED([PACKAGE], ["$PACKAGE"], [Name of package]) - AC_DEFINE_UNQUOTED([VERSION], ["$VERSION"], [Version number of package])])dnl +[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]) +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)']) +AC_REQUIRE([AM_PROG_MKDIR_P])dnl # We need awk for the "check" target. The system "awk" is bad on # some platforms. AC_REQUIRE([AC_PROG_AWK])dnl @@ -509,78 +506,34 @@ [_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 + [_AM_DEPENDENCIES(CC)], + [define([AC_PROG_CC], + 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 + [_AM_DEPENDENCIES(CXX)], + [define([AC_PROG_CXX], + 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 + [_AM_DEPENDENCIES(OBJC)], + [define([AC_PROG_OBJC], + defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])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. +_AM_IF_OPTION([silent-rules], [AC_REQUIRE([AM_SILENT_RULES])])dnl +dnl The `parallel-tests' driver may need to know about EXEEXT, so add the +dnl `am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This macro +dnl is hooked onto _AC_COMPILER_EXEEXT early, see below. AC_CONFIG_COMMANDS_PRE(dnl [m4_provide_if([_AM_COMPILER_EXEEXT], [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl +]) -# 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 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. @@ -602,12 +555,15 @@ done echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count]) -# Copyright (C) 2001-2013 Free Software Foundation, Inc. +# Copyright (C) 2001, 2003, 2005, 2008, 2011 Free Software Foundation, +# Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. +# serial 1 + # AM_PROG_INSTALL_SH # ------------------ # Define $install_sh. @@ -621,14 +577,16 @@ install_sh="\${SHELL} $am_aux_dir/install-sh" esac fi -AC_SUBST([install_sh])]) +AC_SUBST(install_sh)]) -# Copyright (C) 2003-2013 Free Software Foundation, Inc. +# Copyright (C) 2003, 2005 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. +# serial 2 + # Check whether the underlying file-system supports filenames # with a leading dot. For instance MS-DOS doesn't. AC_DEFUN([AM_SET_LEADING_DOT], @@ -644,12 +602,14 @@ # Check to see how 'make' treats includes. -*- Autoconf -*- -# Copyright (C) 2001-2013 Free Software Foundation, Inc. +# Copyright (C) 2001, 2002, 2003, 2005, 2009 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. +# serial 4 + # AM_MAKE_INCLUDE() # ----------------- # Check to see how make treats includes. @@ -667,7 +627,7 @@ _am_result=none # First try GNU make style include. echo "include confinc" > confmf -# Ignore all kinds of additional output from 'make'. +# 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 @@ -692,14 +652,52 @@ rm -f confinc confmf ]) +# Copyright (C) 1999, 2000, 2001, 2003, 2004, 2005, 2008 +# Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# serial 6 + +# AM_PROG_CC_C_O +# -------------- +# Like AC_PROG_CC_C_O, but changed for automake. +AC_DEFUN([AM_PROG_CC_C_O], +[AC_REQUIRE([AC_PROG_CC_C_O])dnl +AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl +AC_REQUIRE_AUX_FILE([compile])dnl +# FIXME: we rely on the cache variable name because +# there is no other way. +set dummy $CC +am_cc=`echo $[2] | sed ['s/[^a-zA-Z0-9_]/_/g;s/^[0-9]/_/']` +eval am_t=\$ac_cv_prog_cc_${am_cc}_c_o +if test "$am_t" != 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 +dnl Make sure AC_PROG_CC is never called again, or it will override our +dnl setting of CC. +m4_define([AC_PROG_CC], + [m4_fatal([AC_PROG_CC cannot be called after AM_PROG_CC_C_O])]) +]) + # Fake the existence of programs that GNU maintainers use. -*- Autoconf -*- -# Copyright (C) 1997-2013 Free Software Foundation, Inc. +# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2005, 2008 +# Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. +# serial 6 + # AM_MISSING_PROG(NAME, PROGRAM) # ------------------------------ AC_DEFUN([AM_MISSING_PROG], @@ -707,10 +705,11 @@ $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. +# Define MISSING if not defined so far and test if it supports --run. +# If it does, set am_missing_run to use it, otherwise, to nothing. AC_DEFUN([AM_MISSING_HAS_RUN], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl AC_REQUIRE_AUX_FILE([missing])dnl @@ -723,32 +722,29 @@ esac fi # Use eval to expand $SHELL -if eval "$MISSING --is-lightweight"; then - am_missing_run="$MISSING " +if eval "$MISSING --run true"; then + am_missing_run="$MISSING --run " else am_missing_run= - AC_MSG_WARN(['missing' script is too old or missing]) + AC_MSG_WARN([`missing' script is too old or missing]) fi ]) -# Copyright (C) 2003-2013 Free Software Foundation, Inc. +# Copyright (C) 2003, 2004, 2005, 2006, 2011 Free Software Foundation, +# Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. +# serial 1 + # AM_PROG_MKDIR_P # --------------- -# Check for 'mkdir -p'. +# Check for `mkdir -p'. AC_DEFUN([AM_PROG_MKDIR_P], [AC_PREREQ([2.60])dnl AC_REQUIRE([AC_PROG_MKDIR_P])dnl -dnl FIXME we are no longer going to remove this! adjust warning -dnl FIXME message accordingly. -AC_DIAGNOSE([obsolete], -[$0: this macro is deprecated, and will soon be removed. -You should use the Autoconf-provided 'AC][_PROG_MKDIR_P' macro instead, -and use '$(MKDIR_P)' instead of '$(mkdir_p)'in your Makefile.am files.]) dnl Automake 1.8 to 1.9.6 used to define mkdir_p. We now use MKDIR_P, dnl while keeping a definition of mkdir_p for backward compatibility. dnl @MKDIR_P@ is magic: AC_OUTPUT adjusts its value for each Makefile. @@ -765,12 +761,15 @@ # Helper functions for option handling. -*- Autoconf -*- -# Copyright (C) 2001-2013 Free Software Foundation, Inc. +# Copyright (C) 2001, 2002, 2003, 2005, 2008, 2010 Free Software +# Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. +# serial 5 + # _AM_MANGLE_OPTION(NAME) # ----------------------- AC_DEFUN([_AM_MANGLE_OPTION], @@ -780,7 +779,7 @@ # -------------------- # 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])]) +[m4_define(_AM_MANGLE_OPTION([$1]), 1)]) # _AM_SET_OPTIONS(OPTIONS) # ------------------------ @@ -794,82 +793,24 @@ 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. +# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005, 2008 +# Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. +# serial 5 + # AM_SANITY_CHECK # --------------- AC_DEFUN([AM_SANITY_CHECK], [AC_MSG_CHECKING([whether build environment is sane]) +# Just in case +sleep 1 +echo timestamp > conftest.file # Reject unsafe characters in $srcdir or the absolute working directory # name. Accept space and tab only in the latter. am_lf=' @@ -880,40 +821,32 @@ esac case $srcdir in *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*) - AC_MSG_ERROR([unsafe srcdir value: '$srcdir']);; + AC_MSG_ERROR([unsafe srcdir value: `$srcdir']);; esac -# Do 'set' in a subshell so we don't clobber the current shell's +# 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 + set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null` + if test "$[*]" = "X"; then + # -L didn't work. + set X `ls -t "$srcdir/configure" conftest.file` + fi + rm -f conftest.file + if test "$[*]" != "X $srcdir/configure conftest.file" \ + && test "$[*]" != "X conftest.file $srcdir/configure"; then + + # If neither matched, then we have a broken ls. This can happen + # if, for instance, CONFIG_SHELL is bash and it inherits a + # broken ls alias from the environment. This has actually + # happened. Such a system could not be considered "sane". + AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken +alias in your environment]) + fi + test "$[2]" = conftest.file ) then @@ -923,50 +856,31 @@ 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 -]) +AC_MSG_RESULT(yes)]) -# Copyright (C) 2009-2013 Free Software Foundation, Inc. +# Copyright (C) 2009, 2011 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. +# serial 2 + # AM_SILENT_RULES([DEFAULT]) # -------------------------- # Enable less verbose build rules; with the default set to DEFAULT -# ("yes" being less verbose, "no" or empty being verbose). +# (`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]);; +[AC_ARG_ENABLE([silent-rules], +[ --enable-silent-rules less verbose build output (undo: `make V=1') + --disable-silent-rules verbose build output (undo: `make V=0')]) +case $enable_silent_rules in +yes) AM_DEFAULT_VERBOSITY=0;; +no) AM_DEFAULT_VERBOSITY=1;; +*) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);; esac dnl -dnl A few 'make' implementations (e.g., NonStop OS and NextStep) +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} @@ -984,7 +898,7 @@ 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. + dnl Using `$V' instead of `$(V)' breaks IRIX make. AM_V='$(V)' AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' else @@ -1001,40 +915,44 @@ _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl ]) -# Copyright (C) 2001-2013 Free Software Foundation, Inc. +# Copyright (C) 2001, 2003, 2005, 2011 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. +# serial 1 + # AM_PROG_INSTALL_STRIP # --------------------- -# One issue with vendor 'install' (even GNU) is that you can't +# 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 +# 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 +# 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'. +# 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. +# Copyright (C) 2006, 2008, 2010 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. +# serial 3 + # _AM_SUBST_NOTMAKE(VARIABLE) # --------------------------- # Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in. @@ -1048,16 +966,18 @@ # Check how to create a tarball. -*- Autoconf -*- -# Copyright (C) 2004-2013 Free Software Foundation, Inc. +# Copyright (C) 2004, 2005, 2012 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. +# serial 2 + # _AM_PROG_TAR(FORMAT) # -------------------- # Check how to create a tarball in format FORMAT. -# FORMAT should be one of 'v7', 'ustar', or 'pax'. +# 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 @@ -1067,114 +987,76 @@ # 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 -'], + [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'], + [m4_case([$1], [ustar],, [pax],, + [m4_fatal([Unknown tar format])]) +AC_MSG_CHECKING([how to create a $1 tar archive]) +# Loop over all known methods to create a tar archive until one works. +_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none' +_am_tools=${am_cv_prog_tar_$1-$_am_tools} +# Do not fold the above two line into one, because Tru64 sh and +# Solaris sh will not grok spaces in the rhs of `-'. +for _am_tool in $_am_tools +do + case $_am_tool in + gnutar) + for _am_tar in tar gnutar gtar; + do + AM_RUN_LOG([$_am_tar --version]) && break + done + am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"' + am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"' + am__untar="$_am_tar -xf -" + ;; + plaintar) + # Must skip GNU tar: if it does not support --format= it doesn't create + # ustar tarball either. + (tar --version) >/dev/null 2>&1 && continue + am__tar='tar chf - "$$tardir"' + am__tar_='tar chf - "$tardir"' + am__untar='tar xf -' + ;; + pax) + am__tar='pax -L -x $1 -w "$$tardir"' + am__tar_='pax -L -x $1 -w "$tardir"' + am__untar='pax -r' + ;; + cpio) + am__tar='find "$$tardir" -print | cpio -o -H $1 -L' + am__tar_='find "$tardir" -print | cpio -o -H $1 -L' + am__untar='cpio -i -H $1 -d' + ;; + none) + am__tar=false + am__tar_=false + am__untar=false + ;; + esac - [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 - # 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 + # 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_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 -Nru libextractor-1.2/compile libextractor-1.3/compile --- libextractor-1.2/compile 2013-10-19 14:32:51.000000000 +0000 +++ libextractor-1.3/compile 2013-12-22 22:23:29.000000000 +0000 @@ -1,9 +1,10 @@ #! /bin/sh # Wrapper for compilers which do not understand '-c -o'. -scriptversion=2012-10-14.11; # UTC +scriptversion=2012-03-05.13; # UTC -# Copyright (C) 1999-2013 Free Software Foundation, Inc. +# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2009, 2010, 2012 Free +# Software Foundation, Inc. # Written by Tom Tromey . # # This program is free software; you can redistribute it and/or modify @@ -112,11 +113,6 @@ 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 diff -Nru libextractor-1.2/config.guess libextractor-1.3/config.guess --- libextractor-1.2/config.guess 2013-10-19 14:32:51.000000000 +0000 +++ libextractor-1.3/config.guess 2013-12-22 22:23:29.000000000 +0000 @@ -1,12 +1,14 @@ #! /bin/sh # Attempt to guess a canonical system name. -# Copyright 1992-2013 Free Software Foundation, Inc. +# 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='2013-06-10' +timestamp='2012-02-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 3 of the License, or +# 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 @@ -20,17 +22,19 @@ # 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 Exception is an additional permission under section 7 -# of the GNU General Public License, version 3 ("GPLv3"). +# 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. # -# Originally written by Per Bothner. +# 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 -# -# Please send patches with a ChangeLog entry to config-patches@gnu.org. - me=`echo "$0" | sed -e 's,.*/,,'` @@ -50,7 +54,9 @@ GNU config.guess ($timestamp) Originally written by Per Bothner. -Copyright 1992-2013 Free Software Foundation, Inc. +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." @@ -132,27 +138,6 @@ UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown -case "${UNAME_SYSTEM}" in -Linux|GNU|GNU/*) - # If the system lacks a compiler, then just pick glibc. - # We could probably try harder. - LIBC=gnu - - eval $set_cc_for_build - cat <<-EOF > $dummy.c - #include - #if defined(__UCLIBC__) - LIBC=uclibc - #elif defined(__dietlibc__) - LIBC=dietlibc - #else - LIBC=gnu - #endif - EOF - eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'` - ;; -esac - # Note: order is significant - the case branches are not exclusive. case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in @@ -215,10 +200,6 @@ # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. echo "${machine}-${os}${release}" exit ;; - *:Bitrig:*:*) - UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'` - echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE} - exit ;; *:OpenBSD:*:*) UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} @@ -321,7 +302,7 @@ arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) echo arm-acorn-riscix${UNAME_RELEASE} exit ;; - arm*:riscos:*:*|arm*:RISCOS:*:*) + arm:riscos:*:*|arm:RISCOS:*:*) echo arm-unknown-riscos exit ;; SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) @@ -820,9 +801,6 @@ i*:CYGWIN*:*) echo ${UNAME_MACHINE}-pc-cygwin exit ;; - *:MINGW64*:*) - echo ${UNAME_MACHINE}-pc-mingw64 - exit ;; *:MINGW*:*) echo ${UNAME_MACHINE}-pc-mingw32 exit ;; @@ -874,21 +852,21 @@ exit ;; *:GNU:*:*) # the GNU system - echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` + 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/[-(].*//'`-${LIBC} + 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-${LIBC} + echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; aarch64_be:Linux:*:*) UNAME_MACHINE=aarch64_be - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; alpha:Linux:*:*) case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in @@ -901,54 +879,59 @@ EV68*) UNAME_MACHINE=alphaev68 ;; esac objdump --private-headers /bin/sh | grep -q ld.so.1 - if test "$?" = 0 ; then LIBC="gnulibc1" ; fi - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; - arc:Linux:*:* | arceb:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + 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-${LIBC} + 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-${LIBC}eabi + echo ${UNAME_MACHINE}-unknown-linux-gnueabi else - echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf + echo ${UNAME_MACHINE}-unknown-linux-gnueabihf fi fi exit ;; avr32*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; cris:Linux:*:*) - echo ${UNAME_MACHINE}-axis-linux-${LIBC} + echo ${UNAME_MACHINE}-axis-linux-gnu exit ;; crisv32:Linux:*:*) - echo ${UNAME_MACHINE}-axis-linux-${LIBC} + echo ${UNAME_MACHINE}-axis-linux-gnu exit ;; frv:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; hexagon:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; i*86:Linux:*:*) - echo ${UNAME_MACHINE}-pc-linux-${LIBC} + 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-${LIBC} + echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; m32r*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; m68*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; mips:Linux:*:* | mips64:Linux:*:*) eval $set_cc_for_build @@ -967,63 +950,54 @@ #endif EOF eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` - test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; } + test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } ;; - or1k:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; or32:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; padre:Linux:*:*) - echo sparc-unknown-linux-${LIBC} + echo sparc-unknown-linux-gnu exit ;; parisc64:Linux:*:* | hppa64:Linux:*:*) - echo hppa64-unknown-linux-${LIBC} + 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-${LIBC} ;; - PA8*) echo hppa2.0-unknown-linux-${LIBC} ;; - *) echo hppa-unknown-linux-${LIBC} ;; + 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-${LIBC} + echo powerpc64-unknown-linux-gnu exit ;; ppc:Linux:*:*) - echo powerpc-unknown-linux-${LIBC} - exit ;; - ppc64le:Linux:*:*) - echo powerpc64le-unknown-linux-${LIBC} - exit ;; - ppcle:Linux:*:*) - echo powerpcle-unknown-linux-${LIBC} + echo powerpc-unknown-linux-gnu exit ;; s390:Linux:*:* | s390x:Linux:*:*) - echo ${UNAME_MACHINE}-ibm-linux-${LIBC} + echo ${UNAME_MACHINE}-ibm-linux exit ;; sh64*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; sh*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; sparc:Linux:*:* | sparc64:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; tile*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; vax:Linux:*:*) - echo ${UNAME_MACHINE}-dec-linux-${LIBC} + echo ${UNAME_MACHINE}-dec-linux-gnu exit ;; x86_64:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; xtensa*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; i*86:DYNIX/ptx:4*:*) # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. @@ -1227,9 +1201,6 @@ BePC:Haiku:*:*) # Haiku running on Intel PC compatible. echo i586-pc-haiku exit ;; - x86_64:Haiku:*:*) - echo x86_64-unknown-haiku - exit ;; SX-4:SUPER-UX:*:*) echo sx4-nec-superux${UNAME_RELEASE} exit ;; @@ -1256,21 +1227,19 @@ exit ;; *:Darwin:*:*) UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown - eval $set_cc_for_build - if test "$UNAME_PROCESSOR" = unknown ; then - UNAME_PROCESSOR=powerpc - fi - 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 - case $UNAME_PROCESSOR in - i386) UNAME_PROCESSOR=x86_64 ;; - powerpc) UNAME_PROCESSOR=powerpc64 ;; - esac - fi - fi + 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]*:*) @@ -1287,7 +1256,7 @@ NEO-?:NONSTOP_KERNEL:*:*) echo neo-tandem-nsk${UNAME_RELEASE} exit ;; - NSE-*:NONSTOP_KERNEL:*:*) + NSE-?:NONSTOP_KERNEL:*:*) echo nse-tandem-nsk${UNAME_RELEASE} exit ;; NSR-?:NONSTOP_KERNEL:*:*) @@ -1361,6 +1330,9 @@ 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 < header file, and it defines `DIR'. */ #undef HAVE_DIRENT_H @@ -133,9 +137,15 @@ /* Define to 1 if you have the header file. */ #undef HAVE_LIBAVFORMAT_AVFORMAT_H +/* Define to 1 if you have the header file. */ +#undef HAVE_LIBAVRESAMPLE_AVRESAMPLE_H + /* Define to 1 if you have the header file. */ #undef HAVE_LIBAVUTIL_AVUTIL_H +/* Define to 1 if you have the header file. */ +#undef HAVE_LIBAVUTIL_FRAME_H + /* Have libbz2 */ #undef HAVE_LIBBZ2 @@ -348,6 +358,9 @@ /* This is a MinGW system */ #undef MINGW +/* Define to 1 if your C compiler doesn't accept -c and -o together. */ +#undef NO_MINUS_C_MINUS_O + /* Some strange OS */ #undef OTHEROS diff -Nru libextractor-1.2/config.sub libextractor-1.3/config.sub --- libextractor-1.2/config.sub 2013-10-19 14:32:51.000000000 +0000 +++ libextractor-1.3/config.sub 2013-12-22 22:23:29.000000000 +0000 @@ -1,18 +1,24 @@ #! /bin/sh # Configuration validation subroutine script. -# Copyright 1992-2013 Free Software Foundation, Inc. - -timestamp='2013-08-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 3 of the License, or +# 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. +# 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 . @@ -20,12 +26,11 @@ # 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 Exception is an additional permission under section 7 -# of the GNU General Public License, version 3 ("GPLv3"). +# the same distribution terms that you use for the rest of that program. -# Please send patches with a ChangeLog entry to config-patches@gnu.org. +# 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. @@ -68,7 +73,9 @@ version="\ GNU config.sub ($timestamp) -Copyright 1992-2013 Free Software Foundation, Inc. +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." @@ -116,7 +123,7 @@ maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` case $maybe_os in nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ - linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ + linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ knetbsd*-gnu* | netbsd*-gnu* | \ kopensolaris*-gnu* | \ storm-chaos* | os2-emx* | rtmk-nova*) @@ -149,7 +156,7 @@ -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*) + -apple | -axis | -knuth | -cray | -microblaze) os= basic_machine=$1 ;; @@ -252,12 +259,10 @@ | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ | am33_2.0 \ - | arc | arceb \ - | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \ - | avr | avr32 \ - | be32 | be64 \ + | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ + | be32 | be64 \ | bfin \ - | c4x | c8051 | clipper \ + | c4x | clipper \ | d10v | d30v | dlx | dsp16xx \ | epiphany \ | fido | fr30 | frv \ @@ -268,7 +273,7 @@ | le32 | le64 \ | lm32 \ | m32c | m32r | m32rle | m68000 | m68k | m88k \ - | maxq | mb | microblaze | microblazeel | mcore | mep | metag \ + | maxq | mb | microblaze | mcore | mep | metag \ | mips | mipsbe | mipseb | mipsel | mipsle \ | mips16 \ | mips64 | mips64el \ @@ -286,17 +291,16 @@ | mipsisa64r2 | mipsisa64r2el \ | mipsisa64sb1 | mipsisa64sb1el \ | mipsisa64sr71k | mipsisa64sr71kel \ - | mipsr5900 | mipsr5900el \ | mipstx39 | mipstx39el \ | mn10200 | mn10300 \ | moxie \ | mt \ | msp430 \ | nds32 | nds32le | nds32be \ - | nios | nios2 | nios2eb | nios2el \ + | nios | nios2 \ | ns16k | ns32k \ | open8 \ - | or1k | or32 \ + | or32 \ | pdp10 | pdp11 | pj | pjl \ | powerpc | powerpc64 | powerpc64le | powerpcle \ | pyramid \ @@ -366,13 +370,13 @@ | aarch64-* | aarch64_be-* \ | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ - | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \ + | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ | avr-* | avr32-* \ | be32-* | be64-* \ | bfin-* | bs2000-* \ | c[123]* | c30-* | [cjt]90-* | c4x-* \ - | c8051-* | clipper-* | craynv-* | cydra-* \ + | clipper-* | craynv-* | cydra-* \ | d10v-* | d30v-* | dlx-* \ | elxsi-* \ | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ @@ -385,8 +389,7 @@ | lm32-* \ | m32c-* | m32r-* | m32rle-* \ | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ - | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ - | microblaze-* | microblazeel-* \ + | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \ | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ | mips16-* \ | mips64-* | mips64el-* \ @@ -404,13 +407,12 @@ | mipsisa64r2-* | mipsisa64r2el-* \ | mipsisa64sb1-* | mipsisa64sb1el-* \ | mipsisa64sr71k-* | mipsisa64sr71kel-* \ - | mipsr5900-* | mipsr5900el-* \ | mipstx39-* | mipstx39el-* \ | mmix-* \ | mt-* \ | msp430-* \ | nds32-* | nds32le-* | nds32be-* \ - | nios-* | nios2-* | nios2eb-* | nios2el-* \ + | nios-* | nios2-* \ | none-* | np1-* | ns16k-* | ns32k-* \ | open8-* \ | orion-* \ @@ -786,15 +788,11 @@ basic_machine=ns32k-utek os=-sysv ;; - microblaze*) + microblaze) basic_machine=microblaze-xilinx ;; - mingw64) - basic_machine=x86_64-pc - os=-mingw64 - ;; mingw32) - basic_machine=i686-pc + basic_machine=i386-pc os=-mingw32 ;; mingw32ce) @@ -830,7 +828,7 @@ basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` ;; msys) - basic_machine=i686-pc + basic_machine=i386-pc os=-msys ;; mvs) @@ -1021,11 +1019,7 @@ basic_machine=i586-unknown os=-pw32 ;; - rdos | rdos64) - basic_machine=x86_64-pc - os=-rdos - ;; - rdos32) + rdos) basic_machine=i386-pc os=-rdos ;; @@ -1352,21 +1346,21 @@ -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* | -plan9* \ + | -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* \ - | -bitrig* | -openbsd* | -solidbsd* \ + | -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* | -mingw64* | -linux-gnu* | -linux-android* \ - | -linux-newlib* | -linux-musl* | -linux-uclibc* \ + | -mingw32* | -linux-gnu* | -linux-android* \ + | -linux-newlib* | -linux-uclibc* \ | -uxpv* | -beos* | -mpeix* | -udk* \ | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ @@ -1498,6 +1492,9 @@ -aros*) os=-aros ;; + -kaos*) + os=-kaos + ;; -zvmoe) os=-zvmoe ;; @@ -1546,9 +1543,6 @@ c4x-* | tic4x-*) os=-coff ;; - c8051-*) - os=-elf - ;; hexagon-*) os=-elf ;; @@ -1592,9 +1586,6 @@ mips*-*) os=-elf ;; - or1k-*) - os=-elf - ;; or32-*) os=-coff ;; diff -Nru libextractor-1.2/configure libextractor-1.3/configure --- libextractor-1.2/configure 2013-10-19 14:32:49.000000000 +0000 +++ libextractor-1.3/configure 2013-12-23 11:15:28.000000000 +0000 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for libextractor 1.2. +# Generated by GNU Autoconf 2.69 for libextractor 1.3. # # Report bugs to . # @@ -590,8 +590,8 @@ # Identity of this package. PACKAGE_NAME='libextractor' PACKAGE_TARNAME='libextractor' -PACKAGE_VERSION='1.2' -PACKAGE_STRING='libextractor 1.2' +PACKAGE_VERSION='1.3' +PACKAGE_STRING='libextractor 1.3' PACKAGE_BUGREPORT='bug-libextractor@gnu.org' PACKAGE_URL='' @@ -652,6 +652,8 @@ LE_LIB_LDFLAGS WANT_FRAMEWORK_FALSE WANT_FRAMEWORK_TRUE +HAVE_FFMPEG_NEW_FALSE +HAVE_FFMPEG_NEW_TRUE HAVE_FFMPEG_FALSE HAVE_FFMPEG_TRUE HAVE_ZZUF_FALSE @@ -1489,7 +1491,7 @@ # 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 libextractor 1.2 to adapt to many kinds of systems. +\`configure' configures libextractor 1.3 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1560,7 +1562,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of libextractor 1.2:";; + short | recursive ) echo "Configuration of libextractor 1.3:";; esac cat <<\_ACEOF @@ -1568,12 +1570,10 @@ --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-silent-rules less verbose build output (undo: `make V=1') + --disable-silent-rules verbose build output (undo: `make V=0') + --disable-dependency-tracking speeds up one-time build + --enable-dependency-tracking do not reject slow dependency extractors --enable-shared[=PKGS] build shared libraries [default=yes] --enable-static[=PKGS] build static libraries [default=yes] --enable-fast-install[=PKGS] @@ -1719,7 +1719,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -libextractor configure 1.2 +libextractor configure 1.3 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2206,6 +2206,52 @@ } # ac_fn_cxx_try_link +# ac_fn_c_check_decl LINENO SYMBOL VAR INCLUDES +# --------------------------------------------- +# Tests whether SYMBOL is declared in INCLUDES, setting cache variable VAR +# accordingly. +ac_fn_c_check_decl () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + as_decl_name=`echo $2|sed 's/ *(.*//'` + as_decl_use=`echo $2|sed -e 's/(/((/' -e 's/)/) 0&/' -e 's/,/) 0& (/g'` + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $as_decl_name is declared" >&5 +$as_echo_n "checking whether $as_decl_name is declared... " >&6; } +if eval \${$3+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +int +main () +{ +#ifndef $as_decl_name +#ifdef __cplusplus + (void) $as_decl_use; +#else + (void) $as_decl_name; +#endif +#endif + + ; + return 0; +} +_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_decl + # ac_fn_c_check_type LINENO TYPE VAR INCLUDES # ------------------------------------------- # Tests whether TYPE exists after having included INCLUDES, setting cache @@ -2263,7 +2309,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by libextractor $as_me 1.2, which was +It was created by libextractor $as_me 1.3, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -2768,7 +2814,7 @@ -am__api_version='1.14' +am__api_version='1.11' # Find a good install program. We prefer a C program (faster), # so one script is as good as another. But avoid the broken or @@ -2865,6 +2911,9 @@ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5 $as_echo_n "checking whether build environment is sane... " >&6; } +# Just in case +sleep 1 +echo timestamp > conftest.file # Reject unsafe characters in $srcdir or the absolute working directory # name. Accept space and tab only in the latter. am_lf=' @@ -2875,40 +2924,32 @@ esac case $srcdir in *[\\\"\#\$\&\'\`$am_lf\ \ ]*) - as_fn_error $? "unsafe srcdir value: '$srcdir'" "$LINENO" 5;; + as_fn_error $? "unsafe srcdir value: \`$srcdir'" "$LINENO" 5;; esac -# Do 'set' in a subshell so we don't clobber the current shell's +# 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 + set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null` + if test "$*" = "X"; then + # -L didn't work. + set X `ls -t "$srcdir/configure" conftest.file` + fi + rm -f conftest.file + if test "$*" != "X $srcdir/configure conftest.file" \ + && test "$*" != "X conftest.file $srcdir/configure"; then + + # If neither matched, then we have a broken ls. This can happen + # if, for instance, CONFIG_SHELL is bash and it inherits a + # broken ls alias from the environment. This has actually + # happened. Such a system could not be considered "sane". + as_fn_error $? "ls -t appears to fail. Make sure there is not a broken +alias in your environment" "$LINENO" 5 + fi - # 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 @@ -2920,16 +2961,6 @@ 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. @@ -2952,12 +2983,12 @@ esac fi # Use eval to expand $SHELL -if eval "$MISSING --is-lightweight"; then - am_missing_run="$MISSING " +if eval "$MISSING --run true"; then + am_missing_run="$MISSING --run " else am_missing_run= - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: 'missing' script is too old or missing" >&5 -$as_echo "$as_me: WARNING: 'missing' script is too old or missing" >&2;} + { $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 @@ -2969,10 +3000,10 @@ esac fi -# Installed binaries are usually stripped using 'strip' when the user -# run "make install-strip". However 'strip' might not be the right +# 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. +# 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. @@ -3111,6 +3142,12 @@ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5 $as_echo "$MKDIR_P" >&6; } +mkdir_p="$MKDIR_P" +case $mkdir_p in + [\\/$]* | ?:[\\/]*) ;; + */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;; +esac + for ac_prog in gawk mawk nawk awk do # Extract the first word of "$ac_prog", so it can be a program name with args. @@ -3198,10 +3235,10 @@ enableval=$enable_silent_rules; fi -case $enable_silent_rules in # ((( - yes) AM_DEFAULT_VERBOSITY=0;; - no) AM_DEFAULT_VERBOSITY=1;; - *) AM_DEFAULT_VERBOSITY=1;; +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 @@ -3254,7 +3291,7 @@ # Define the identity of the package. PACKAGE='libextractor' - VERSION='1.2' + VERSION='1.3' cat >>confdefs.h <<_ACEOF @@ -3282,22 +3319,12 @@ 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 -' @@ -3305,48 +3332,6 @@ -# 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 - # Checks for programs. DEPDIR="${am__leading_dot}deps" @@ -3367,7 +3352,7 @@ _am_result=none # First try GNU make style include. echo "include confinc" > confmf -# Ignore all kinds of additional output from 'make'. +# 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 @@ -4200,65 +4185,6 @@ 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 - - depcc="$CC" am_compiler_list= { $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 @@ -4270,8 +4196,8 @@ # 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". + # 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 @@ -4306,16 +4232,16 @@ : > 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 + # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with + # Solaris 8's {/usr,}/bin/sh. + touch sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf - # We check with '-c' and '-o' for the sake of the "dashmstdout" + # 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. + # 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 @@ -4324,8 +4250,8 @@ test "$am__universal" = false || continue ;; nosideeffect) - # After this tag, mechanisms are not by side-effect, so they'll - # only be used when explicitly requested. + # 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 @@ -4333,7 +4259,7 @@ fi ;; msvc7 | msvc7msys | msvisualcpp | msvcmsys) - # This compiler won't grok '-c -o', but also, the minuso test has + # 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} @@ -5427,65 +5353,6 @@ 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 - - depcc="$CC" am_compiler_list= { $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 @@ -5497,8 +5364,8 @@ # 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". + # 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 @@ -5533,16 +5400,16 @@ : > 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 + # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with + # Solaris 8's {/usr,}/bin/sh. + touch sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf - # We check with '-c' and '-o' for the sake of the "dashmstdout" + # 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. + # 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 @@ -5551,8 +5418,8 @@ test "$am__universal" = false || continue ;; nosideeffect) - # After this tag, mechanisms are not by side-effect, so they'll - # only be used when explicitly requested. + # 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 @@ -5560,7 +5427,7 @@ fi ;; msvc7 | msvc7msys | msvisualcpp | msvcmsys) - # This compiler won't grok '-c -o', but also, the minuso test has + # 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} @@ -5614,6 +5481,131 @@ fi +if test "x$CC" != xcc; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC and cc understand -c and -o together" >&5 +$as_echo_n "checking whether $CC and cc understand -c and -o together... " >&6; } +else + { $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; } +fi +set dummy $CC; ac_cc=`$as_echo "$2" | + sed 's/[^a-zA-Z0-9_]/_/g;s/^[0-9]/_/'` +if eval \${ac_cv_prog_cc_${ac_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. +# We do the test twice because some compilers refuse to overwrite an +# existing .o file with -o, though they will create one. +ac_try='$CC -c conftest.$ac_ext -o conftest2.$ac_objext >&5' +rm -f conftest2.* +if { { 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; } && + test -f conftest2.$ac_objext && { { 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 + eval ac_cv_prog_cc_${ac_cc}_c_o=yes + if test "x$CC" != xcc; then + # Test first that cc exists at all. + if { ac_try='cc -c conftest.$ac_ext >&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_try") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; }; then + ac_try='cc -c conftest.$ac_ext -o conftest2.$ac_objext >&5' + rm -f conftest2.* + if { { 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; } && + test -f conftest2.$ac_objext && { { 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 + # cc works too. + : + else + # cc exists but doesn't like -o. + eval ac_cv_prog_cc_${ac_cc}_c_o=no + fi + fi + fi +else + eval ac_cv_prog_cc_${ac_cc}_c_o=no +fi +rm -f core conftest* + +fi +if eval test \$ac_cv_prog_cc_${ac_cc}_c_o = yes; 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" >&5 +$as_echo "no" >&6; } + +$as_echo "#define NO_MINUS_C_MINUS_O 1" >>confdefs.h + +fi + +# FIXME: we rely on the cache variable name because +# there is no other way. +set dummy $CC +am_cc=`echo $2 | sed 's/[^a-zA-Z0-9_]/_/g;s/^[0-9]/_/'` +eval am_t=\$ac_cv_prog_cc_${am_cc}_c_o +if test "$am_t" != 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' @@ -6020,8 +6012,8 @@ # 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". + # 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 @@ -6056,16 +6048,16 @@ : > 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 + # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with + # Solaris 8's {/usr,}/bin/sh. + touch sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf - # We check with '-c' and '-o' for the sake of the "dashmstdout" + # 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. + # 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 @@ -6074,8 +6066,8 @@ test "$am__universal" = false || continue ;; nosideeffect) - # After this tag, mechanisms are not by side-effect, so they'll - # only be used when explicitly requested. + # 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 @@ -6083,7 +6075,7 @@ fi ;; msvc7 | msvc7msys | msvisualcpp | msvcmsys) - # This compiler won't grok '-c -o', but also, the minuso test has + # 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} @@ -6892,8 +6884,7 @@ ;; *) lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null` - if test -n "$lt_cv_sys_max_cmd_len" && \ - test undefined != "$lt_cv_sys_max_cmd_len"; then + 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 @@ -8429,14 +8420,7 @@ LD="${LD-ld} -m elf_i386_fbsd" ;; x86_64-*linux*) - case `/usr/bin/file conftest.o` in - *x86-64*) - LD="${LD-ld} -m elf32_x86_64" - ;; - *) - LD="${LD-ld} -m elf_i386" - ;; - esac + LD="${LD-ld} -m elf_i386" ;; ppc64-*linux*|powerpc64-*linux*) LD="${LD-ld} -m elf32ppclinux" @@ -16536,6 +16520,18 @@ +ac_fn_c_check_decl "$LINENO" "_stati64" "ac_cv_have_decl__stati64" "$ac_includes_default" +if test "x$ac_cv_have_decl__stati64" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi + +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL__STATI64 $ac_have_decl +_ACEOF + + case "$target_os" in *linux-gnu) @@ -16916,7 +16912,7 @@ WINDOWS_FALSE= fi - CFLAGS="-no-cpp-precomp -fno-common $CFLAGS" + CFLAGS="-fno-common $CFLAGS" LIBEXT=.so ;; cygwin*) @@ -21078,13 +21074,6 @@ -mkdir_p="$MKDIR_P" -case $mkdir_p in - [\\/$]* | ?:[\\/]*) ;; - */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;; -esac - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether NLS is requested" >&5 $as_echo_n "checking whether NLS is requested... " >&6; } # Check whether --enable-nls was given. @@ -22968,7 +22957,7 @@ fi -if test "x$without_gtk" == "xfalse" -a "x$check_for_2" != "xfalse" +if test "x$without_gtk" == "xtrue" -a "x$check_for_2" != "xfalse" then # Check whether --enable-gtktest was given. if test "${enable_gtktest+set}" = set; then : @@ -24007,6 +23996,7 @@ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable the FFmpeg thumbnail extractor" >&5 $as_echo_n "checking whether to enable the FFmpeg thumbnail extractor... " >&6; } +new_ffmpeg=0 # Check whether --enable-ffmpeg was given. if test "${enable_ffmpeg+set}" = set; then : enableval=$enable_ffmpeg; case "$enableval" in @@ -24028,6 +24018,71 @@ if test x$ffmpeg_enabled = x1 then ffmpeg_enabled=0 + new_ffmpeg=0 + for ac_header in libavutil/avutil.h libavformat/avformat.h libavcodec/avcodec.h libavutil/frame.h +do : + as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` +ac_fn_c_check_header_mongrel "$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 + for ac_header in libavresample/avresample.h +do : + ac_fn_c_check_header_mongrel "$LINENO" "libavresample/avresample.h" "ac_cv_header_libavresample_avresample_h" "$ac_includes_default" +if test "x$ac_cv_header_libavresample_avresample_h" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_LIBAVRESAMPLE_AVRESAMPLE_H 1 +_ACEOF + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for av_audio_fifo_alloc in -lavutil" >&5 +$as_echo_n "checking for av_audio_fifo_alloc in -lavutil... " >&6; } +if ${ac_cv_lib_avutil_av_audio_fifo_alloc+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lavutil $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 av_audio_fifo_alloc (); +int +main () +{ +return av_audio_fifo_alloc (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_avutil_av_audio_fifo_alloc=yes +else + ac_cv_lib_avutil_av_audio_fifo_alloc=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_avutil_av_audio_fifo_alloc" >&5 +$as_echo "$ac_cv_lib_avutil_av_audio_fifo_alloc" >&6; } +if test "x$ac_cv_lib_avutil_av_audio_fifo_alloc" = xyes; then : + new_ffmpeg=1 +fi + +fi + +done + +fi + +done + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sws_getContext in -lswscale" >&5 $as_echo_n "checking for sws_getContext in -lswscale... " >&6; } if ${ac_cv_lib_swscale_sws_getContext+:} false; then : @@ -24129,6 +24184,14 @@ HAVE_FFMPEG_FALSE= fi + if test x$new_ffmpeg != x0; then + HAVE_FFMPEG_NEW_TRUE= + HAVE_FFMPEG_NEW_FALSE='#' +else + HAVE_FFMPEG_NEW_TRUE='#' + HAVE_FFMPEG_NEW_FALSE= +fi + LE_INTLINCL="" @@ -24543,14 +24606,6 @@ 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='#' @@ -24935,6 +24990,10 @@ as_fn_error $? "conditional \"HAVE_FFMPEG\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${HAVE_FFMPEG_NEW_TRUE}" && test -z "${HAVE_FFMPEG_NEW_FALSE}"; then + as_fn_error $? "conditional \"HAVE_FFMPEG_NEW\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${WANT_FRAMEWORK_TRUE}" && test -z "${WANT_FRAMEWORK_FALSE}"; then as_fn_error $? "conditional \"WANT_FRAMEWORK\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -25340,7 +25399,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by libextractor $as_me 1.2, which was +This file was extended by libextractor $as_me 1.3, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -25406,7 +25465,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -libextractor config.status 1.2 +libextractor config.status 1.3 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" @@ -26550,7 +26609,7 @@ case $ac_file$ac_mode in "depfiles":C) test x"$AMDEP_TRUE" != x"" || { - # Older Autoconf quotes --file arguments for eval, but not when files + # Autoconf 2.62 quotes --file arguments for eval, but not when files # are listed without --file. Let's play safe and only enable the eval # if we detect the quoting. case $CONFIG_FILES in @@ -26563,7 +26622,7 @@ # 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 + # 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. @@ -26597,19 +26656,21 @@ continue fi # Extract the definition of DEPDIR, am__include, and am__quote - # from the Makefile without running 'make'. + # 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 + test -z "am__include" && continue am__quote=`sed -n 's/^am__quote = //p' < "$mf"` + # When using ansi2knr, U may be empty or an underscore; expand it + U=`sed -n 's/^U = //p' < "$mf"` # Find all dependency output files, they are included files with # $(DEPDIR) in their names. We invoke sed twice because it is the # simplest approach to changing $(DEPDIR) to its actual value in the # expansion. for file in `sed -n " s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ - sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do + sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do # Make sure the directory exists. test -f "$dirpart/$file" && continue fdir=`$as_dirname -- "$file" || @@ -27758,6 +27819,12 @@ $as_echo "$as_me: NOTICE: FFmpeg thumbnailer plugin disabled" >&6;} fi +if test "x$new_ffmpeg" = "x0" +then + { $as_echo "$as_me:${as_lineno-$LINENO}: NOTICE: FFmpeg/opus audio preview plugin disabled, It needs libav >= 10, or a FFmpeg with --enable-libavresample" >&5 +$as_echo "$as_me: NOTICE: FFmpeg/opus audio preview plugin disabled, It needs libav >= 10, or a FFmpeg with --enable-libavresample" >&6;} +fi + if test "x$without_gtk" = "xtrue" then { $as_echo "$as_me:${as_lineno-$LINENO}: NOTICE: libgtk3+ not found, gtk thumbnail support disabled" >&5 diff -Nru libextractor-1.2/configure.ac libextractor-1.3/configure.ac --- libextractor-1.2/configure.ac 2013-10-19 14:32:03.000000000 +0000 +++ libextractor-1.3/configure.ac 2013-12-23 08:36:56.000000000 +0000 @@ -1,6 +1,6 @@ # Process this file with autoconf to produce a configure script. AC_PREREQ(2.61) -AC_INIT([libextractor], [1.2], [bug-libextractor@gnu.org]) +AC_INIT([libextractor], [1.3], [bug-libextractor@gnu.org]) AC_CONFIG_HEADERS([config.h]) AC_CONFIG_MACRO_DIR([m4]) AH_TOP([#define _GNU_SOURCE 1]) @@ -36,6 +36,8 @@ LT_INIT([disable-static dlopen win32-dll]) AC_SUBST(MKDIR_P) +AC_CHECK_DECLS([_stati64]) + case "$target_os" in *linux-gnu) AC_DEFINE(GNU_LINUX,1,[This is a GNU/Linux system]) @@ -88,7 +90,7 @@ AM_CONDITIONAL(HAVE_GNU_LD, false) AM_CONDITIONAL(SOMEBSD, false) AM_CONDITIONAL(WINDOWS, false) - CFLAGS="-no-cpp-precomp -fno-common $CFLAGS" + CFLAGS="-fno-common $CFLAGS" LIBEXT=.so ;; cygwin*) @@ -609,7 +611,7 @@ AM_PATH_GTK_3_0([$check_for_3],without_gtk=false,without_gtk=true) fi -if test "x$without_gtk" == "xfalse" -a "x$check_for_2" != "xfalse" +if test "x$without_gtk" == "xtrue" -a "x$check_for_2" != "xfalse" then AM_PATH_GTK_2_0([$check_for_2],without_gtk=false,without_gtk=true) fi @@ -654,6 +656,7 @@ AM_CONDITIONAL(HAVE_ZZUF, test 0 != $HAVE_ZZUF) AC_MSG_CHECKING([whether to enable the FFmpeg thumbnail extractor]) +new_ffmpeg=0 AC_ARG_ENABLE(ffmpeg, [AC_HELP_STRING([--enable-ffmpeg],[Enable FFmpeg support]) AC_HELP_STRING([--disable-ffmpeg],[Disable FFmpeg support])], @@ -670,12 +673,19 @@ if test x$ffmpeg_enabled = x1 then ffmpeg_enabled=0 + new_ffmpeg=0 + AC_CHECK_HEADERS([libavutil/avutil.h libavformat/avformat.h libavcodec/avcodec.h libavutil/frame.h], + AC_CHECK_HEADERS([libavresample/avresample.h], + AC_CHECK_LIB(avutil, av_audio_fifo_alloc, + new_ffmpeg=1))) + AC_CHECK_LIB(swscale, sws_getContext, AC_CHECK_LIB(avcodec, avcodec_alloc_context3, ffmpeg_enabled=1)) AC_CHECK_HEADERS([libavutil/avutil.h ffmpeg/avutil.h libavformat/avformat.h ffmpeg/avformat.h libavcodec/avcodec.h ffmpeg/avcodec.h libswscale/swscale.h ffmpeg/swscale.h]) fi AM_CONDITIONAL(HAVE_FFMPEG, test x$ffmpeg_enabled != x0) +AM_CONDITIONAL(HAVE_FFMPEG_NEW, test x$new_ffmpeg != x0) LE_INTLINCL="" @@ -799,6 +809,11 @@ AC_MSG_NOTICE([NOTICE: FFmpeg thumbnailer plugin disabled]) fi +if test "x$new_ffmpeg" = "x0" +then + AC_MSG_NOTICE([NOTICE: FFmpeg/opus audio preview plugin disabled, It needs libav >= 10, or a FFmpeg with --enable-libavresample]) +fi + if test "x$without_gtk" = "xtrue" then AC_MSG_NOTICE([NOTICE: libgtk3+ not found, gtk thumbnail support disabled]) diff -Nru libextractor-1.2/debian/changelog libextractor-1.3/debian/changelog --- libextractor-1.2/debian/changelog 2013-12-20 16:40:23.000000000 +0000 +++ libextractor-1.3/debian/changelog 2014-01-19 08:54:31.000000000 +0000 @@ -1,10 +1,16 @@ -libextractor (1:1.2-1ubuntu1) trusty; urgency=medium +libextractor (1:1.3-1) unstable; urgency=medium - * Merge from debian. Remaining changes: - - debian/control: - + Build against libtiff-dev instead of libtiff4-dev + * Make uscan check the archive signature: + + add the upstream key to debian/upstream-signing-key.pgp. + + add the binary key to debian/source/include-binaries. + + add pgpsigurlmangle to debian/watch. + * Imported Upstream version 1.3. + * Standards version 3.9.5: + + remove dependency on dpkg (>= 1.15.4) | install-info. + * Build-depend on libtiff-dev instead of libtiff4-dev (Closes: #736021). + * Add a missing build-dependency on texinfo. - -- Jackson Doak Thu, 19 Dec 2013 06:52:19 +1100 + -- Bertrand Marc Sun, 19 Jan 2014 09:54:16 +0100 libextractor (1:1.2-1) unstable; urgency=low @@ -12,14 +18,6 @@ -- Bertrand Marc Mon, 28 Oct 2013 11:53:20 +0100 -libextractor (1:1.1-1ubuntu1) saucy; urgency=low - - * Sync with Debian. - * debian/control: - - Build against libtiff-dev instead of libtiff4-dev - - -- Jeremy Bicha Tue, 30 Jul 2013 18:04:35 -0400 - libextractor (1:1.1-1) unstable; urgency=low * Imported Upstream version 1.1 (Closes: #690095). diff -Nru libextractor-1.2/debian/control libextractor-1.3/debian/control --- libextractor-1.2/debian/control 2013-12-20 16:40:09.000000000 +0000 +++ libextractor-1.3/debian/control 2014-01-09 18:58:53.000000000 +0000 @@ -1,16 +1,15 @@ Source: libextractor Section: libs Priority: optional -Maintainer: Ubuntu Developers -XSBC-Original-Maintainer: Bertrand Marc +Maintainer: Bertrand Marc Build-Depends: debhelper (>= 9), autopoint, dh-autoreconf, pkg-config, libarchive-dev, libavutil-dev, libavformat-dev, libavcodec-dev, libswscale-dev, libbz2-dev, libexiv2-dev, libflac-dev, libgif-dev, libgsf-1-dev, libglib2.0-dev, libgtk-3-dev, libgtk2.0-dev, libgstreamer-plugins-base1.0-dev, libjpeg8-dev, libmagick-dev, libmpeg2-4-dev, libmp4v2-dev, librpm-dev, libsmf-dev, - libtidy-dev, libtiff-dev, libvorbis-dev, libogg-dev, zlib1g-dev -Standards-Version: 3.9.4 + libtidy-dev, libtiff-dev, libvorbis-dev, libogg-dev, zlib1g-dev, texinfo +Standards-Version: 3.9.5 Vcs-Git: git://anonscm.debian.org/collab-maint/libextractor.git Vcs-browser: http://anonscm.debian.org/gitweb/?p=collab-maint/libextractor.git Homepage: http://www.gnu.org/software/libextractor/ @@ -22,7 +21,6 @@ Conflicts: libextractor1c2a Replaces: libextractor1c2a, libextractor-plugins (<< 1:1.0.1-1) Breaks: libextractor-plugins (<< 1:1.0.1-1) -Provides: libextractor-plugins Suggests: libextractor-java, python-extractor Description: extracts meta-data from files of arbitrary type (library) GNU libextractor provides developers of file-sharing networks, file managers, @@ -66,7 +64,7 @@ Section: utils Architecture: any Depends: - ${misc:Depends}, ${shlibs:Depends}, dpkg (>= 1.15.4) | install-info + ${misc:Depends}, ${shlibs:Depends} Description: displays meta-data from files of arbitrary type Similar to the well-known "file" command, extract can display meta-data from a file and print the results to stdout. diff -Nru libextractor-1.2/debian/source/include-binaries libextractor-1.3/debian/source/include-binaries --- libextractor-1.2/debian/source/include-binaries 1970-01-01 00:00:00.000000000 +0000 +++ libextractor-1.3/debian/source/include-binaries 2013-12-26 17:17:20.000000000 +0000 @@ -0,0 +1 @@ +debian/upstream-signing-key.pgp Binary files /tmp/bxY_VFQYc8/libextractor-1.2/debian/upstream-signing-key.pgp and /tmp/B9SpZIFhbr/libextractor-1.3/debian/upstream-signing-key.pgp differ diff -Nru libextractor-1.2/debian/watch libextractor-1.3/debian/watch --- libextractor-1.2/debian/watch 2013-12-20 16:40:09.000000000 +0000 +++ libextractor-1.3/debian/watch 2013-12-30 14:38:05.000000000 +0000 @@ -1,2 +1,2 @@ version=3 -ftp://ftp.gnu.org/gnu/libextractor/libextractor-(\d.+).tar.gz +opts=pgpsigurlmangle=s/$/.sig/ ftp://ftp.gnu.org/gnu/libextractor/libextractor-(\d.+).tar.gz diff -Nru libextractor-1.2/depcomp libextractor-1.3/depcomp --- libextractor-1.2/depcomp 2013-10-19 14:32:52.000000000 +0000 +++ libextractor-1.3/depcomp 2013-12-22 22:23:29.000000000 +0000 @@ -1,9 +1,10 @@ #! /bin/sh # depcomp - compile a program generating dependencies as side-effects -scriptversion=2013-05-30.07; # UTC +scriptversion=2012-03-27.16; # UTC -# Copyright (C) 1999-2013 Free Software Foundation, Inc. +# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009, 2010, +# 2011, 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 @@ -27,9 +28,9 @@ case $1 in '') - echo "$0: No command. Try '$0 --help' for more information." 1>&2 - exit 1; - ;; + echo "$0: No command. Try '$0 --help' for more information." 1>&2 + exit 1; + ;; -h | --h*) cat <<\EOF Usage: depcomp [--help] [--version] PROGRAM [ARGS] @@ -56,65 +57,11 @@ ;; esac -# Get the directory component of the given path, and save it in the -# global variables '$dir'. Note that this directory component will -# be either empty or ending with a '/' character. This is deliberate. -set_dir_from () -{ - case $1 in - */*) dir=`echo "$1" | sed -e 's|/[^/]*$|/|'`;; - *) dir=;; - esac -} - -# Get the suffix-stripped basename of the given path, and save it the -# global variable '$base'. -set_base_from () -{ - base=`echo "$1" | sed -e 's|^.*/||' -e 's/\.[^.]*$//'` -} - -# If no dependency file was actually created by the compiler invocation, -# we still have to create a dummy depfile, to avoid errors with the -# Makefile "include basename.Plo" scheme. -make_dummy_depfile () -{ - echo "#dummy" > "$depfile" -} - -# Factor out some common post-processing of the generated depfile. -# Requires the auxiliary global variable '$tmpdepfile' to be set. -aix_post_process_depfile () -{ - # If the compiler actually managed to produce a dependency file, - # post-process it. - if test -f "$tmpdepfile"; then - # Each line is of the form 'foo.o: dependency.h'. - # Do two passes, one to just change these to - # $object: dependency.h - # and one to simply output - # dependency.h: - # which is needed to avoid the deleted-header problem. - { sed -e "s,^.*\.[$lower]*:,$object:," < "$tmpdepfile" - sed -e "s,^.*\.[$lower]*:[$tab ]*,," -e 's,$,:,' < "$tmpdepfile" - } > "$depfile" - rm -f "$tmpdepfile" - else - make_dummy_depfile - fi -} - # A tabulation character. tab=' ' # A newline character. nl=' ' -# Character ranges might be problematic outside the C locale. -# These definitions help. -upper=ABCDEFGHIJKLMNOPQRSTUVWXYZ -lower=abcdefghijklmnopqrstuvwxyz -digits=0123456789 -alpha=${upper}${lower} if test -z "$depmode" || test -z "$source" || test -z "$object"; then echo "depcomp: Variables source, object and depmode must be set" 1>&2 @@ -128,9 +75,6 @@ rm -f "$tmpdepfile" -# Avoid interferences from the environment. -gccflag= dashmflag= - # 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 @@ -142,32 +86,32 @@ fi if test "$depmode" = dashXmstdout; then - # This is just like dashmstdout with a different argument. - dashmflag=-xM - depmode=dashmstdout + # 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 + # 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 + # 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 information. - gccflag=-qmakedep=gcc,-MF - depmode=gcc + # IBM C/C++ Compilers xlc/xlC can output gcc-like dependency informations. + gccflag=-qmakedep=gcc,-MF + depmode=gcc fi case "$depmode" in @@ -190,7 +134,8 @@ done "$@" stat=$? - if test $stat -ne 0; then + if test $stat -eq 0; then : + else rm -f "$tmpdepfile" exit $stat fi @@ -198,17 +143,13 @@ ;; gcc) -## Note that this doesn't just cater to obsosete pre-3.x GCC compilers. -## but also to in-use compilers like IMB xlc/xlC and the HP C compiler. -## (see the conditional assignment to $gccflag above). ## 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). Also, it might not be -## supported by the other compilers which use the 'gcc' depmode. +## -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 @@ -216,14 +157,15 @@ fi "$@" -Wp,"$gccflag$tmpdepfile" stat=$? - if test $stat -ne 0; then + if test $stat -eq 0; then : + else rm -f "$tmpdepfile" exit $stat fi rm -f "$depfile" echo "$object : \\" > "$depfile" - # The second -e expression handles DOS-style file names with drive - # letters. + 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. @@ -232,15 +174,15 @@ ## 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. - tr ' ' "$nl" < "$tmpdepfile" \ - | sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \ - | sed -e 's/$/ :/' >> "$depfile" + sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \ + | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; @@ -258,7 +200,8 @@ "$@" -MDupdate "$tmpdepfile" fi stat=$? - if test $stat -ne 0; then + if test $stat -eq 0; then : + else rm -f "$tmpdepfile" exit $stat fi @@ -266,6 +209,7 @@ 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 @@ -273,15 +217,19 @@ # 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" + | 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" + | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \ + >> "$depfile" else - make_dummy_depfile + # 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" ;; @@ -299,8 +247,9 @@ # 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. - set_dir_from "$object" - set_base_from "$object" + 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 @@ -313,7 +262,9 @@ "$@" -M fi stat=$? - if test $stat -ne 0; then + + if test $stat -eq 0; then : + else rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" exit $stat fi @@ -322,113 +273,65 @@ do test -f "$tmpdepfile" && break done - aix_post_process_depfile - ;; - -tcc) - # tcc (Tiny C Compiler) understand '-MD -MF file' since version 0.9.26 - # FIXME: That version still under development at the moment of writing. - # Make that this statement remains true also for stable, released - # versions. - # It will wrap lines (doesn't matter whether long or short) with a - # trailing '\', as in: - # - # foo.o : \ - # foo.c \ - # foo.h \ - # - # It will put a trailing '\' even on the last line, and will use leading - # spaces rather than leading tabs (at least since its commit 0394caf7 - # "Emit spaces for -MD"). - "$@" -MD -MF "$tmpdepfile" - stat=$? - if test $stat -ne 0; then - rm -f "$tmpdepfile" - exit $stat + 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 "$depfile" - # Each non-empty line is of the form 'foo.o : \' or ' dep.h \'. - # We have to change lines of the first kind to '$object: \'. - sed -e "s|.*:|$object :|" < "$tmpdepfile" > "$depfile" - # And for each line of the second kind, we have to emit a 'dep.h:' - # dummy dependency, to avoid the deleted-header problem. - sed -n -e 's|^ *\(.*\) *\\$|\1:|p' < "$tmpdepfile" >> "$depfile" rm -f "$tmpdepfile" ;; -## The order of this option in the case statement is important, since the -## shell code in configure will try each of these formats in the order -## listed in this file. A plain '-MD' option would be understood by many -## compilers, so we must ensure this comes after the gcc and icc options. -pgcc) - # Portland's C compiler understands '-MD'. - # Will always output deps to 'file.d' where file is the root name of the - # source file under compilation, even if file resides in a subdirectory. - # The object file name does not affect the name of the '.d' file. - # pgcc 10.2 will output +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 '\' : + # and will wrap long lines using '\': # foo.o: sub/foo.c ... \ # sub/foo.h ... \ # ... - set_dir_from "$object" - # Use the source, not the object, to determine the base name, since - # that's sadly what pgcc will do too. - set_base_from "$source" - tmpdepfile=$base.d - - # For projects that build the same source file twice into different object - # files, the pgcc approach of using the *source* file root name can cause - # problems in parallel builds. Use a locking strategy to avoid stomping on - # the same $tmpdepfile. - lockdir=$base.d-lock - trap " - echo '$0: caught signal, cleaning up...' >&2 - rmdir '$lockdir' - exit 1 - " 1 2 13 15 - numtries=100 - i=$numtries - while test $i -gt 0; do - # mkdir is a portable test-and-set. - if mkdir "$lockdir" 2>/dev/null; then - # This process acquired the lock. - "$@" -MD - stat=$? - # Release the lock. - rmdir "$lockdir" - break - else - # If the lock is being held by a different process, wait - # until the winning process is done or we timeout. - while test -d "$lockdir" && test $i -gt 0; do - sleep 1 - i=`expr $i - 1` - done - fi - i=`expr $i - 1` - done - trap - 1 2 13 15 - if test $i -le 0; then - echo "$0: failed to acquire lock after $numtries attempts" >&2 - echo "$0: check lockdir '$lockdir'" >&2 - exit 1 - fi - - if test $stat -ne 0; then + # 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 \'. + # Each line is of the form 'foo.o: dependent.h', + # or 'foo.o: dep1.h dep2.h \', or ' dep3.h dep4.h \'. # Do two passes, one to just change these to - # `$object: dependent.h' and one to simply `dependent.h:'. - sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile" - # Some versions of the HPUX 10.20 sed can't process this invocation - # correctly. Breaking it into two sed invocations is a workaround. - sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" \ - | sed -e 's/$/ :/' >> "$depfile" + # '$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" ;; @@ -439,8 +342,9 @@ # '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. - set_dir_from "$object" - set_base_from "$object" + 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 @@ -451,7 +355,8 @@ "$@" +Maked fi stat=$? - if test $stat -ne 0; then + if test $stat -eq 0; then : + else rm -f "$tmpdepfile1" "$tmpdepfile2" exit $stat fi @@ -461,61 +366,76 @@ test -f "$tmpdepfile" && break done if test -f "$tmpdepfile"; then - sed -e "s,^.*\.[$lower]*:,$object:," "$tmpdepfile" > "$depfile" + sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile" # Add 'dependent.h:' lines. sed -ne '2,${ - s/^ *// - s/ \\*$// - s/$/:/ - p - }' "$tmpdepfile" >> "$depfile" + s/^ *// + s/ \\*$// + s/$/:/ + p + }' "$tmpdepfile" >> "$depfile" else - make_dummy_depfile + 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. - set_dir_from "$object" - set_base_from "$object" - - if test "$libtool" = yes; then - # Libtool 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$base.o.d # libtool 1.5 - tmpdepfile2=$dir.libs/$base.o.d # Likewise. - tmpdepfile3=$dir.libs/$base.d # Compaq CCC V6.2-504 - "$@" -Wc,-MD - else - tmpdepfile1=$dir$base.d - tmpdepfile2=$dir$base.d - tmpdepfile3=$dir$base.d - "$@" -MD - fi - - stat=$? - if test $stat -ne 0; then - rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" - exit $stat - fi + # 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 - for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" - do - test -f "$tmpdepfile" && break - done - # Same post-processing that is required for AIX mode. - aix_post_process_depfile - ;; + 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 @@ -526,7 +446,8 @@ "$@" $showIncludes > "$tmpdepfile" stat=$? grep -v '^Note: including file: ' "$tmpdepfile" - if test $stat -ne 0; then + if test "$stat" = 0; then : + else rm -f "$tmpdepfile" exit $stat fi @@ -552,7 +473,6 @@ G p }' >> "$depfile" - echo >> "$depfile" # make sure the fragment doesn't end with a backslash rm -f "$tmpdepfile" ;; @@ -604,14 +524,13 @@ # 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" + sed 's:^['"$tab"' ]*[^:'"$tab"' ][^:][^:]*\:['"$tab"' ]*:'"$object"'\: :' > "$tmpdepfile" rm -f "$depfile" cat < "$tmpdepfile" > "$depfile" - # Some versions of the HPUX 10.20 sed can't process this sed invocation - # correctly. Breaking it into two sed invocations is a workaround. - tr ' ' "$nl" < "$tmpdepfile" \ - | sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \ - | sed -e 's/$/ :/' >> "$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" ;; @@ -664,12 +583,10 @@ # 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" - # Some versions of the HPUX 10.20 sed can't process the last invocation - # correctly. Breaking it into two sed invocations is a workaround. - sed '1,2d' "$tmpdepfile" \ - | tr ' ' "$nl" \ - | sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \ - | sed -e 's/$/ :/' >> "$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 ;; @@ -705,10 +622,10 @@ 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" + "$@" -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" @@ -740,15 +657,15 @@ shift ;; "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI") - set fnord "$@" - shift - shift - ;; + set fnord "$@" + shift + shift + ;; *) - set fnord "$@" "$arg" - shift - shift - ;; + set fnord "$@" "$arg" + shift + shift + ;; esac done "$@" -E 2>/dev/null | diff -Nru libextractor-1.2/doc/Makefile.in libextractor-1.3/doc/Makefile.in --- libextractor-1.2/doc/Makefile.in 2013-10-19 14:32:52.000000000 +0000 +++ libextractor-1.3/doc/Makefile.in 2013-12-23 11:15:27.000000000 +0000 @@ -1,8 +1,9 @@ -# Makefile.in generated by automake 1.14 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2013 Free Software Foundation, Inc. - +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 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. @@ -14,51 +15,23 @@ @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 \ +am__make_dryrun = \ + { \ + am__dry=no; \ 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;; \ + echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \ + | grep '^AM OK$$' >/dev/null || am__dry=yes;; \ + *) \ + for am__flg in $$MAKEFLAGS; do \ + case $$am__flg in \ + *=*|--*) ;; \ + *n*) am__dry=yes; break;; \ + esac; \ + done;; \ 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)) + test $$am__dry = yes; \ + } pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ @@ -79,9 +52,9 @@ host_triplet = @host@ target_triplet = @target@ subdir = doc -DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \ - $(libextractor_TEXINFOS) mdate-sh $(srcdir)/version.texi \ - $(srcdir)/stamp-vti texinfo.tex +DIST_COMMON = $(libextractor_TEXINFOS) $(srcdir)/Makefile.am \ + $(srcdir)/Makefile.in $(srcdir)/stamp-vti \ + $(srcdir)/version.texi mdate-sh texinfo.tex ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/abi-gsf.m4 \ $(top_srcdir)/m4/ac_define_dir.m4 \ @@ -102,48 +75,14 @@ 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_GEN_0 = @echo " GEN " $@; 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_V_DVIPS = $(am__v_DVIPS_@AM_V@) -am__v_DVIPS_ = $(am__v_DVIPS_@AM_DEFAULT_V@) -am__v_DVIPS_0 = @echo " DVIPS " $@; -am__v_DVIPS_1 = -AM_V_MAKEINFO = $(am__v_MAKEINFO_@AM_V@) -am__v_MAKEINFO_ = $(am__v_MAKEINFO_@AM_DEFAULT_V@) -am__v_MAKEINFO_0 = @echo " MAKEINFO" $@; -am__v_MAKEINFO_1 = -AM_V_INFOHTML = $(am__v_INFOHTML_@AM_V@) -am__v_INFOHTML_ = $(am__v_INFOHTML_@AM_DEFAULT_V@) -am__v_INFOHTML_0 = @echo " INFOHTML" $@; -am__v_INFOHTML_1 = -AM_V_TEXI2DVI = $(am__v_TEXI2DVI_@AM_V@) -am__v_TEXI2DVI_ = $(am__v_TEXI2DVI_@AM_DEFAULT_V@) -am__v_TEXI2DVI_0 = @echo " TEXI2DVI" $@; -am__v_TEXI2DVI_1 = -AM_V_TEXI2PDF = $(am__v_TEXI2PDF_@AM_V@) -am__v_TEXI2PDF_ = $(am__v_TEXI2PDF_@AM_DEFAULT_V@) -am__v_TEXI2PDF_0 = @echo " TEXI2PDF" $@; -am__v_TEXI2PDF_1 = -AM_V_texinfo = $(am__v_texinfo_@AM_V@) -am__v_texinfo_ = $(am__v_texinfo_@AM_DEFAULT_V@) -am__v_texinfo_0 = -q -am__v_texinfo_1 = -AM_V_texidevnull = $(am__v_texidevnull_@AM_V@) -am__v_texidevnull_ = $(am__v_texidevnull_@AM_DEFAULT_V@) -am__v_texidevnull_0 = > /dev/null -am__v_texidevnull_1 = INFO_DEPS = $(srcdir)/libextractor.info am__TEXINFO_TEX_DIR = $(srcdir) DVIS = libextractor.dvi @@ -194,7 +133,6 @@ man3dir = $(mandir)/man3 NROFF = nroff MANS = $(man_MANS) -am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AMTAR = @AMTAR@ @@ -424,7 +362,7 @@ -rm -rf .libs _libs .texi.info: - $(AM_V_MAKEINFO)restore=: && backupdir="$(am__leading_dot)am$$$$" && \ + restore=: && backupdir="$(am__leading_dot)am$$$$" && \ am__cwd=`pwd` && $(am__cd) $(srcdir) && \ rm -rf $$backupdir && mkdir $$backupdir && \ if ($(MAKEINFO) --version) >/dev/null 2>&1; then \ @@ -446,25 +384,27 @@ rm -rf $$backupdir; exit $$rc .texi.dvi: - $(AM_V_TEXI2DVI)TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \ + TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \ MAKEINFO='$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir)' \ - $(TEXI2DVI) $(AM_V_texinfo) --build-dir=$(@:.dvi=.t2d) -o $@ $(AM_V_texidevnull) \ - $< + $(TEXI2DVI) $< .texi.pdf: - $(AM_V_TEXI2PDF)TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \ + TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \ MAKEINFO='$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir)' \ - $(TEXI2PDF) $(AM_V_texinfo) --build-dir=$(@:.pdf=.t2p) -o $@ $(AM_V_texidevnull) \ - $< + $(TEXI2PDF) $< .texi.html: - $(AM_V_MAKEINFO)rm -rf $(@:.html=.htp) - $(AM_V_at)if $(MAKEINFOHTML) $(AM_MAKEINFOHTMLFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) \ + rm -rf $(@:.html=.htp) + if $(MAKEINFOHTML) $(AM_MAKEINFOHTMLFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) \ -o $(@:.html=.htp) $<; \ then \ - rm -rf $@ && mv $(@:.html=.htp) $@; \ + rm -rf $@; \ + if test ! -d $(@:.html=.htp) && test -d $(@:.html=); then \ + mv $(@:.html=) $@; else mv $(@:.html=.htp) $@; fi; \ else \ - rm -rf $(@:.html=.htp); exit 1; \ + if test ! -d $(@:.html=.htp) && test -d $(@:.html=); then \ + rm -rf $(@:.html=); else rm -Rf $(@:.html=.htp) $@; fi; \ + exit 1; \ fi $(srcdir)/libextractor.info: libextractor.texi $(srcdir)/version.texi $(libextractor_TEXINFOS) libextractor.dvi: libextractor.texi $(srcdir)/version.texi $(libextractor_TEXINFOS) @@ -490,8 +430,8 @@ maintainer-clean-vti: -rm -f $(srcdir)/stamp-vti $(srcdir)/version.texi .dvi.ps: - $(AM_V_DVIPS)TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \ - $(DVIPS) $(AM_V_texinfo) -o $@ $< + TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \ + $(DVIPS) -o $@ $< uninstall-dvi-am: @$(NORMAL_UNINSTALL) @@ -570,7 +510,10 @@ done mostlyclean-aminfo: - -rm -rf libextractor.t2d libextractor.t2p + -rm -rf libextractor.aux libextractor.cp libextractor.cps libextractor.fn \ + libextractor.ky libextractor.log libextractor.pg \ + libextractor.tmp libextractor.toc libextractor.tp \ + libextractor.vr clean-aminfo: -test -z "libextractor.dvi libextractor.pdf libextractor.ps libextractor.html" \ @@ -668,14 +611,27 @@ } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^3][0-9a-z]*$$,3,;x' \ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \ dir='$(DESTDIR)$(man3dir)'; $(am__uninstall_files_from_dir) -tags TAGS: +tags: TAGS +TAGS: -ctags CTAGS: - -cscope cscopelist: +ctags: CTAGS +CTAGS: distdir: $(DISTFILES) + @list='$(MANS)'; if test -n "$$list"; then \ + list=`for p in $$list; do \ + if test -f $$p; then d=; else d="$(srcdir)/"; fi; \ + if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \ + if test -n "$$list" && \ + grep 'ab help2man is required to generate this page' $$list >/dev/null; then \ + echo "error: found man pages containing the \`missing help2man' replacement text:" >&2; \ + grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/ /' >&2; \ + echo " to fix them, install help2man, remove and regenerate the man pages;" >&2; \ + echo " typically \`make maintainer-clean' will remove them" >&2; \ + exit 1; \ + else :; fi; \ + else :; fi @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -911,21 +867,20 @@ .MAKE: install-am install-strip .PHONY: all all-am check check-am clean clean-aminfo clean-generic \ - clean-libtool cscopelist-am ctags-am dist-info distclean \ - distclean-generic distclean-libtool 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-man1 install-man3 \ - install-pdf install-pdf-am install-ps install-ps-am \ - install-strip installcheck installcheck-am installdirs \ - maintainer-clean maintainer-clean-aminfo \ - maintainer-clean-generic maintainer-clean-vti mostlyclean \ - mostlyclean-aminfo mostlyclean-generic mostlyclean-libtool \ - mostlyclean-vti pdf pdf-am ps ps-am tags-am uninstall \ - uninstall-am uninstall-dvi-am uninstall-html-am \ - uninstall-info-am uninstall-man uninstall-man1 uninstall-man3 \ - uninstall-pdf-am uninstall-ps-am + clean-libtool dist-info distclean distclean-generic \ + distclean-libtool 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-man1 install-man3 install-pdf install-pdf-am \ + install-ps install-ps-am install-strip installcheck \ + installcheck-am installdirs maintainer-clean \ + maintainer-clean-aminfo maintainer-clean-generic \ + maintainer-clean-vti mostlyclean mostlyclean-aminfo \ + mostlyclean-generic mostlyclean-libtool mostlyclean-vti pdf \ + pdf-am ps ps-am uninstall uninstall-am uninstall-dvi-am \ + uninstall-html-am uninstall-info-am uninstall-man \ + uninstall-man1 uninstall-man3 uninstall-pdf-am uninstall-ps-am # Tell versions [3.59,3.63) of GNU make to not export all variables. diff -Nru libextractor-1.2/doc/libextractor.info libextractor-1.3/doc/libextractor.info --- libextractor-1.2/doc/libextractor.info 2013-10-19 14:33:53.000000000 +0000 +++ libextractor-1.3/doc/libextractor.info 2013-12-22 16:50:15.000000000 +0000 @@ -1,7 +1,7 @@ -This is libextractor.info, produced by makeinfo version 5.2 from +This is libextractor.info, produced by makeinfo version 4.13 from libextractor.texi. -This manual is for GNU libextractor (version 1.2, 10 October 2012), a +This manual is for GNU libextractor (version 1.2, 9 October 2012), a library for metadata extraction. Copyright (C) 2007, 2010, 2012 Christian Grothoff @@ -12,6 +12,7 @@ Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License". + INFO-DIR-SECTION Software libraries START-INFO-DIR-ENTRY * Libextractor: (libextractor). Metadata extraction library. @@ -23,7 +24,7 @@ The GNU libextractor Reference Manual ************************************* -This manual is for GNU libextractor (version 1.2, 10 October 2012), a +This manual is for GNU libextractor (version 1.2, 9 October 2012), a library for metadata extraction. Copyright (C) 2007, 2010, 2012 Christian Grothoff @@ -67,24 +68,24 @@ dimensions, color depth, recording frequency), content descriptions (such as document title or document description) and copyright information (such as license, author and contributors). Meta data -extraction is an inherently uncertain business -- a parse error can be a -corrupt file, an incompatibility in the file format version, an entirely -different file format or a bug in the parser. As a result of this -uncertainty, GNU libextractor deliberately avoids to ever report any -errors. Unexpected file contents simply result in less or possibly no -meta data being extracted. +extraction is an inherently uncertain business -- a parse error can be +a corrupt file, an incompatibility in the file format version, an +entirely different file format or a bug in the parser. As a result of +this uncertainty, GNU libextractor deliberately avoids to ever report +any errors. Unexpected file contents simply result in less or possibly +no meta data being extracted. GNU libextractor uses plugins to handle various file formats. Technically a plugin can support multiple file formats; however, most plugins only support one particular format. By default, GNU libextractor will use all plugins that are available and found in the -plugin installation directory. Applications can request the use of only -specific plugins or the exclusion of certain plugins. +plugin installation directory. Applications can request the use of +only specific plugins or the exclusion of certain plugins. - GNU libextractor is distributed with the 'extract' command(1) which -is a command-line tool for extracting meta data. 'extract' is given a + GNU libextractor is distributed with the `extract' command(1) which +is a command-line tool for extracting meta data. `extract' is given a list of filenames and prints the resulting meta data to the console. -The 'extract' source code also serves as an advanced example for how to +The `extract' source code also serves as an advanced example for how to use GNU libextractor. This manual focuses on providing documentation for writing software @@ -92,7 +93,7 @@ chapter on compiling and installing GNU libextractor (*Note Preparation::.). Also, the chapter on existing plugins maybe of interest (*Note Existing Plugins::.). Additional documentation for -end-users can be find in the man page on 'extract' (using man extract). +end-users can be find in the man page on `extract' (using man extract). GNU libextractor is licensed under the GNU General Public License, specifically, since version 0.7, GNU libextractor is licensed under @@ -100,7 +101,7 @@ ---------- Footnotes ---------- - (1) Some distributions ship 'extract' in a seperate package. + (1) Some distributions ship `extract' in a seperate package.  File: libextractor.info, Node: Preparation, Next: Generalities, Prev: Introduction, Up: Top @@ -114,8 +115,8 @@ afterwards. Compiling GNU libextractor follows the standard GNU autotools build -process using 'configure' and 'make'. For details on the GNU autotools -build process, read the 'INSTALL' file and query ./configure --help for +process using `configure' and `make'. For details on the GNU autotools +build process, read the `INSTALL' file and query ./configure --help for additional options. GNU libextractor has various dependencies, most of which are @@ -126,31 +127,51 @@ You absolutely need: * libtool + * gcc + * make + * g++ + * libltdl7-dev Recommended dependencies are: * zlib1g-dev + * libbz2-dev + * libgif-dev + * libvorbis-dev + * libflac-dev + * libmpeg2-4-dev + * librpm-dev + * libgtk2.0-dev or libgtk3.0-dev + * libgsf-1-dev + * libqt4-dev + * libpoppler-dev + * libexiv2-dev + * libavformat-dev + * libswscale-dev + * libgstreamer1.0-dev For Subversion access and compilation one also needs: * subversion + * autoconf + * automake Please notify us if we missed some dependencies (note that the list @@ -158,22 +179,22 @@ dependencies). Once you have compiled and installed GNU libextractor, you should -have a file 'extractor.h' installed in your 'include/' directory. This +have a file `extractor.h' installed in your `include/' directory. This file should be the starting point for your C and C++ development with -GNU libextractor. The build process also installs the 'extract' binary -and man pages for 'extract' and GNU libextractor. The 'extract' man -page documents the 'extract' tool. The GNU libextractor man page gives +GNU libextractor. The build process also installs the `extract' binary +and man pages for `extract' and GNU libextractor. The `extract' man +page documents the `extract' tool. The GNU libextractor man page gives a brief summary of the C API for GNU libextractor. When you install GNU libextractor, various plugins will be installed -in the 'lib/libextractor/' directory. The main library will be -installed as 'lib/libextractor.so'. Note that GNU libextractor will +in the `lib/libextractor/' directory. The main library will be +installed as `lib/libextractor.so'. Note that GNU libextractor will attempt to find the plugins relative to the path of the main library. Consequently, a package manager can move the library and its plugins to a different location later -- as long as the relative path between the main library and the plugins is preserved. As a method of last resort, -the user can specify an environment variable LIBEXTRACTOR_PREFIX. If GNU -libextractor cannot locate a plugin, it will look in +the user can specify an environment variable LIBEXTRACTOR_PREFIX. If +GNU libextractor cannot locate a plugin, it will look in LIBEXTRACTOR_PREFIX/lib/libextractor/. 2.1 Installation on GNU/Linux @@ -189,7 +210,7 @@ 2.3 Installation on OpenBSD =========================== -OpenBSD 3.8 also doesn't have CODESET in 'langinfo.h'. CODESET is used +OpenBSD 3.8 also doesn't have CODESET in `langinfo.h'. CODESET is used in GNU libextractor in about three places. This causes problems during compilation. @@ -202,9 +223,9 @@ ============================ Linking -lstdc++ with the provided libtool fails on Cygwin, this is a -problem with libtool, there is unfortunately no flag to tell libtool how -to do its job on Cygwin and it seems that it cannot be the default to -set the library check to 'pass_all'. Patching libtool may help. +problem with libtool, there is unfortunately no flag to tell libtool +how to do its job on Cygwin and it seems that it cannot be the default +to set the library check to 'pass_all'. Patching libtool may help. Note: this is a rather dated report and may no longer apply. @@ -212,33 +233,33 @@ ======================== libextractor has two installation methods on Mac OS X: it can be -installed as a Mac OS X framework or with the standard './configure; -make; make install' shell commands. The framework package is +installed as a Mac OS X framework or with the standard `./configure; +make; make install' shell commands. The framework package is self-contained, but currently omits some of the extractor plugins that -can be compiled in if libextractor is installed with './configure; make; -make install' (provided that the required dependencies exist.) +can be compiled in if libextractor is installed with `./configure; +make; make install' (provided that the required dependencies exist.) 2.6.1 Installing and uninstalling the framework ----------------------------------------------- The binary framework is distributed as a disk image -('Extractor-x.x.xx.dmg'). Installation is done by opening the disk -image and clicking 'Extractor.pkg' inside it. The Mac OS X installer -application will then run. The framework is installed to the root -volume's '/Library/Frameworks' folder and installing will require admin +(`Extractor-x.x.xx.dmg'). Installation is done by opening the disk +image and clicking `Extractor.pkg' inside it. The Mac OS X installer +application will then run. The framework is installed to the root +volume's `/Library/Frameworks' folder and installing will require admin privileges. The framework can be uninstalled by dragging -'/Library/Frameworks/Extractor.framework' to the 'Trash'. +`/Library/Frameworks/Extractor.framework' to the `Trash'. 2.6.2 Using the framework ------------------------- -In the framework, the 'extract' command line tool can be found at -'/Library/Frameworks/Extractor.framework/Versions/Current/bin/extract' +In the framework, the `extract' command line tool can be found at +`/Library/Frameworks/Extractor.framework/Versions/Current/bin/extract' - The framework can be used in software projects as a framework or as a -dynamic library. + The framework can be used in software projects as a framework or as +a dynamic library. When using the framework as a dynamic library in projects using autotools, one would most likely want to add @@ -288,7 +309,7 @@ -L/Library/Frameworks/Extractor.framework/Versions/Current/lib \ -lextractor - Notice the difference in the '#include' line. + Notice the difference in the `#include' line. 2.7 Note to package maintainers =============================== @@ -298,22 +319,28 @@ * libextractor (main library only, only hard dependency for other packages depending on GNU libextractor) + * extract (command-line tool and man page extract.1) + * libextractor-dev (extractor.h header and man page libextractor.3) + * libextractor-doc (this manual) + * libextractor-plugins (plugins without external dependencies; recommended but not required by extract and libextractor package) + * libextractor-plugin-XXX (plugin with dependency on libXXX, for - example for XXX=mpeg this would be 'libextractor_mpeg.so') + example for XXX=mpeg this would be `libextractor_mpeg.so') + * libextractor-plugins-all (meta package that requires all plugins except experimental plugins) - This would enable minimal installations (i.e. for embedded systems) + This would enable minimal installations (i.e. for embedded systems) to not include any plugins, as well as moderate-size installations (that do not trigger GTK and X11) for systems that have limited resources. Right now, the MP4 plugin is experimental and does nothing and should -thus never be included at all. The gstreamer plugin is experimental but -largely works with the correct version of gstreamer and can thus be +thus never be included at all. The gstreamer plugin is experimental +but largely works with the correct version of gstreamer and can thus be packaged (especially if the dependency is available on the target system) but should probably not be part of libextractor-plugins-all. @@ -326,22 +353,22 @@ 3.1 Introduction to the "extract" command ========================================= -The 'extract' command takes a list of file names as arguments, extracts -meta data from each of those files and prints the result to the console. -By default, 'extract' will use all available plugins and print all -(non-binary) meta data that is found. - - The set of plugins used by 'extract' can be controlled using the "-l" -and "-n" options. Use "-n" to not load all of the default plugins. Use -"-l NAME" to specifically load a certain plugin. For example, specify -"-n -l mime" to only use the MIME plugin. +The `extract' command takes a list of file names as arguments, extracts +meta data from each of those files and prints the result to the +console. By default, `extract' will use all available plugins and +print all (non-binary) meta data that is found. + + The set of plugins used by `extract' can be controlled using the +"-l" and "-n" options. Use "-n" to not load all of the default +plugins. Use "-l NAME" to specifically load a certain plugin. For +example, specify "-n -l mime" to only use the MIME plugin. - Using the "-p" option the output of 'extract' can be limited to only + Using the "-p" option the output of `extract' can be limited to only certain keyword types. Similarly, using the "-x" option, certain -keyword types can be excluded. A list of all known keyword types can be -obtained using the "-L" option. +keyword types can be excluded. A list of all known keyword types can +be obtained using the "-L" option. - The output format of 'extract' can be influenced with the "-V" (more + The output format of `extract' can be influenced with the "-V" (more verbose, lists filenames), "-g" (grep-friendly, all meta data on a single line per file) and "-b" (bibTeX style) options. @@ -394,11 +421,11 @@ Plugins::. Note that it is possible for GNU libextractor to encounter a -'SIGPIPE' during its execution. GNU libextractor -- as it is a library +`SIGPIPE' during its execution. GNU libextractor -- as it is a library and as such should not interfere with your main application -- does NOT -install a signal handler for 'SIGPIPE'. You thus need to install a -signal handler (or at least tell your system to ignore 'SIGPIPE') if you -want to avoid unexpected problems during calls to GNU libextractor. +install a signal handler for `SIGPIPE'. You thus need to install a +signal handler (or at least tell your system to ignore `SIGPIPE') if you +want to avoid unexpected problems during calls to GNU libextractor.  File: libextractor.info, Node: Extracting meta data, Next: Language bindings, Prev: Generalities, Up: Top @@ -408,8 +435,8 @@ In order to extract meta data with GNU libextractor you first need to load the respective plugins and then call the extraction API with the -plugins and the data to process. This section documents how to load and -unload plugins, the various types and formats in which meta data is +plugins and the data to process. This section documents how to load +and unload plugins, the various types and formats in which meta data is returned to the application and finally the extraction API itself. * Menu: @@ -431,7 +458,7 @@ isolate the parent process from potential bugs; however, it can cause problems if the parent process is multi-threaded. The issue is that at the time of the fork, another thread of the application may hold a lock -(i.e. in gettext or libc). That lock would then never be released in +(i.e. in gettext or libc). That lock would then never be released in the child process (as the other thread is not present in the child process). As a result, the child process would then deadlock on trying to acquire the lock and never terminate. This has actually been @@ -439,7 +466,7 @@ startup code when it interacts with libltdl. The problem can be solved by loading the plugins using the -'EXTRACTOR_OPTION_IN_PROCESS' option, which will run GNU libextractor +`EXTRACTOR_OPTION_IN_PROCESS' option, which will run GNU libextractor in-process and thus avoid the locking issue. In this case, all of the functions for loading and unloading plugins, including EXTRACTOR_plugin_add_defaults and EXTRACTOR_plugin_remove_all, are @@ -451,7 +478,6 @@ guaranteed. -- C Struct: EXTRACTOR_PluginList - A plugin list represents a set of GNU libextractor plugins. Most of the GNU libextractor API is concerned with either constructing a plugin list or using it to extract meta data. The internal @@ -460,41 +486,36 @@ -- Function: void EXTRACTOR_plugin_remove_all (struct EXTRACTOR_PluginList *plugins) - Unload all of the plugins in the given list. -- Function: struct EXTRACTOR_PluginList * EXTRACTOR_plugin_remove (struct EXTRACTOR_PluginList *plugins, const char*name) - Unloads a particular plugin. The given name should be the short name of the plugin, for example "mime" for the mime-type extractor or "mpeg" for the MPEG extractor. - -- Function: struct EXTRACTOR_PluginList * EXTRACTOR_plugin_add (struct - EXTRACTOR_PluginList *plugins, const char* name,const char* - options, enum EXTRACTOR_Options flags) - + -- Function: struct EXTRACTOR_PluginList * EXTRACTOR_plugin_add + (struct EXTRACTOR_PluginList *plugins, const char* name,const + char* options, enum EXTRACTOR_Options flags) Loads a particular plugin. The plugin is added to the existing - list, which can be 'NULL'. The second argument specifies the name - of the plugin (i.e. "ogg"). The third argument can be 'NULL' and + list, which can be `NULL'. The second argument specifies the name + of the plugin (i.e. "ogg"). The third argument can be `NULL' and specifies plugin-specific options. Finally, the last argument specifies if the plugin should be executed out-of-process - ('EXTRACTOR_OPTION_DEFAULT_POLICY') or not. + (`EXTRACTOR_OPTION_DEFAULT_POLICY') or not. -- Function: struct EXTRACTOR_PluginList * EXTRACTOR_plugin_add_config (struct EXTRACTOR_PluginList *plugins, const char* config, enum EXTRACTOR_Options flags) - Loads and unloads plugins based on a configuration string, - modifying the existing list, which can be 'NULL'. The string has + modifying the existing list, which can be `NULL'. The string has the format "[-]NAME(OPTIONS){:[-]NAME(OPTIONS)}*". Prefixing the plugin name with a "-" means that the plugin should be unloaded. -- Function: struct EXTRACTOR_PluginList * - EXTRACTOR_plugin_add_defaults (enum EXTRACTOR_Options flags) - - Loads all of the plugins in the plugin directory. This function is - what most GNU libextractor applications should use to setup the +EXTRACTOR_plugin_add_defaults (enum EXTRACTOR_Options flags) + Loads all of the plugins in the plugin directory. This function + is what most GNU libextractor applications should use to setup the plugins.  @@ -511,22 +532,21 @@ -- Function: const char * EXTRACTOR_metatype_to_string (enum EXTRACTOR_MetaType type) - The function EXTRACTOR_metatype_to_string can be used to obtain a - short English string 's' describing the meta data type. The string - can be translated into other languages using GNU gettext with the - domain set to GNU libextractor (dgettext("libextractor", s)). + short English string `s' describing the meta data type. The + string can be translated into other languages using GNU gettext + with the domain set to GNU libextractor (dgettext("libextractor", + s)). -- Function: const char * EXTRACTOR_metatype_to_description (enum EXTRACTOR_MetaType type) - The function EXTRACTOR_metatype_to_description can be used to - obtain a longer English string 's' describing the meta data type. + obtain a longer English string `s' describing the meta data type. The description may be empty if the short description returned by - 'EXTRACTOR_metatype_to_string' is already comprehensive. The + `EXTRACTOR_metatype_to_string' is already comprehensive. The string can be translated into other languages using GNU gettext - with the domain set to GNU libextractor - (dgettext("libextractor", s)). + with the domain set to GNU libextractor (dgettext("libextractor", + s)).  File: libextractor.info, Node: Meta formats, Next: Extracting, Prev: Meta types, Up: Extracting meta data @@ -537,17 +557,17 @@ enum EXTRACTOR_MetaFormat is a C enum which defines on a high level how the extracted meta data is represented. Currently, the library uses three formats: UTF-8 strings, C strings and binary data. A fourth -value, 'EXTRACTOR_METAFORMAT_UNKNOWN' is defined but not used. UTF-8 -strings are 0-terminated strings that have been converted to UTF-8. The -format code is 'EXTRACTOR_METAFORMAT_UTF8'. Ideally, most text meta +value, `EXTRACTOR_METAFORMAT_UNKNOWN' is defined but not used. UTF-8 +strings are 0-terminated strings that have been converted to UTF-8. +The format code is `EXTRACTOR_METAFORMAT_UTF8'. Ideally, most text meta data will be of this format. Some file formats fail to specify the encoding used for the text. In this case, the text cannot be converted to UTF-8. However, the meta data is still known to be 0-terminated and presumably human-readable. In this case, the format code used is -'EXTRACTOR_METAFORMAT_C_STRING'; however, this should not be understood +`EXTRACTOR_METAFORMAT_C_STRING'; however, this should not be understood to mean that the encoding is the same as that used by the C compiler. Finally, for binary data (mostly images), the format -'EXTRACTOR_METAFORMAT_BINARY' is used. +`EXTRACTOR_METAFORMAT_BINARY' is used. Naturally this is not a precise description of the meta format. Plugins can provide a more precise description (if known) by providing @@ -563,65 +583,64 @@ -- Function Pointer: int (*EXTRACTOR_MetaDataProcessor)(void *cls, const char *plugin_name, enum EXTRACTOR_MetaType type, enum - EXTRACTOR_MetaFormat format, const char *data_mime_type, const - char *data, size_t data_len) - + EXTRACTOR_MetaFormat format, const char *data_mime_type, + const char *data, size_t data_len) Type of a function that libextractor calls for each meta data item found. - CLS + CLS closure (user-defined) - PLUGIN_NAME + PLUGIN_NAME name of the plugin that produced this value; special values - can be used (i.e. '' for zlib being used in the main + can be used (i.e. '' for zlib being used in the main libextractor library and yielding meta data); - TYPE + TYPE libextractor-type describing the meta data; - FORMAT BASIC + FORMAT BASIC format information about data - DATA_MIME_TYPE - mime-type of data (not of the original file); can be 'NULL' + DATA_MIME_TYPE + mime-type of data (not of the original file); can be `NULL' (if mime-type is not known); - DATA + DATA actual meta-data found - DATA_LEN + DATA_LEN number of bytes in data + Return 0 to continue extracting, 1 to abort. -- Function: void EXTRACTOR_extract (struct EXTRACTOR_PluginList - *plugins, const char *filename, const void *data, size_t size, - EXTRACTOR_MetaDataProcessor proc, void *proc_cls) - + *plugins, const char *filename, const void *data, size_t + size, EXTRACTOR_MetaDataProcessor proc, void *proc_cls) This is the main function for extracting keywords with GNU libextractor. The first argument is a plugin list which specifies the set of plugins that should be used for extracting meta data. - The 'filename' argument is optional and can be used to specify the - name of a file to process. If 'filename' is 'NULL', then the - 'data' argument must point to the in-memory data to extract meta - data from. If 'filename' is non-'NULL', 'data' can be 'NULL'. If - 'data' is non-null, then 'size' is the size of 'data' in bytes. - Otherwise 'size' should be zero. For each meta data item found, - GNU libextractor will call the 'proc' function, passing 'proc_cls' - as the first argument to 'proc'. The other arguments to 'proc' + The `filename' argument is optional and can be used to specify the + name of a file to process. If `filename' is `NULL', then the + `data' argument must point to the in-memory data to extract meta + data from. If `filename' is non-`NULL', `data' can be `NULL'. If + `data' is non-null, then `size' is the size of `data' in bytes. + Otherwise `size' should be zero. For each meta data item found, + GNU libextractor will call the `proc' function, passing `proc_cls' + as the first argument to `proc'. The other arguments to `proc' depend on the specific meta data found. Meta data extraction should never really fail -- at worst, GNU - libextractor should not call 'proc' with any meta data. By design, + libextractor should not call `proc' with any meta data. By design, GNU libextractor should never crash or leak memory, even given corrupt files as input. Note however, that running GNU - libextractor on a corrupt file system (or incorrectly mmaped files) - can result in the operating system sending a SIGBUS (bus error) to - the process. As GNU libextractor typically runs plugins + libextractor on a corrupt file system (or incorrectly mmaped + files) can result in the operating system sending a SIGBUS (bus + error) to the process. As GNU libextractor typically runs plugins out-of-process, it first maps the file into memory and then attempts to decompress it. During decompression it is possible to - encounter a SIGBUS. GNU libextractor will _not_ attempt to catch + encounter a SIGBUS. GNU libextractor will _not_ attempt to catch this signal and your application is likely to crash. Note again that this should only happen if the file _system_ is corrupt (not if individual files are corrupt). If this is not acceptable, you @@ -629,26 +648,27 @@ out-of-process (as done, for example, by doodle (http://grothoff.org/christian/doodle/)). +  File: libextractor.info, Node: Language bindings, Next: Utility functions, Prev: Extracting meta data, Up: Top 5 Language bindings ******************* -GNU libextractor works immediately with C and C++ code. Bindings for +GNU libextractor works immediately with C and C++ code. Bindings for Java, Mono, Ruby, Perl, PHP and Python are available for download from -the main GNU libextractor website. Documentation for these bindings (if -available) is part of the downloads for the respective binding. In all -cases, a full installation of the C library is required before the +the main GNU libextractor website. Documentation for these bindings +(if available) is part of the downloads for the respective binding. In +all cases, a full installation of the C library is required before the binding can be installed. 5.1 Java ======== Compiling the GNU libextractor Java binding follows the usual process of -running 'configure' and 'make'. The result will be a shared C library -'libextractor_java.so' with the native code and a JAR file (installed to -'$PREFIX/share/java/libextractor.java'). +running `configure' and `make'. The result will be a shared C library +`libextractor_java.so' with the native code and a JAR file (installed +to `$PREFIX/share/java/libextractor.java'). A minimal example for using GNU libextractor's Java binding would look like this: @@ -665,9 +685,9 @@ } } - The GNU libextractor library and the 'libextractor_java.so' JNI + The GNU libextractor library and the `libextractor_java.so' JNI binding have to be in the library search path for this to work. -Furthermore, the 'libextractor.jar' file should be on the classpath. +Furthermore, the `libextractor.jar' file should be on the classpath. Note that the API does not use Java 5 style generics in order to work with older versions of Java. @@ -704,7 +724,7 @@ ******************* This chapter describes various utility functions for GNU libextractor -usage. All of the functions are reentrant. +usage. All of the functions are reentrant. * Menu: @@ -719,11 +739,11 @@ The constant EXTRACTOR_VERSION is a hexadecimal representation of the version number of the installed libextractor header. The hexadecimal -format is 0xAABBCCDD where AA is the major version (so far always 0), BB -is the minor version, CC is the revision and DD the patch number. For -example, for version 0.5.18, we would have AA=0, BB=5, CC=18 and DD=0. -Minor releases such as 0.5.18a or significant changes in unreleased -versions would be marked with DD=1 or higher. +format is 0xAABBCCDD where AA is the major version (so far always 0), +BB is the minor version, CC is the revision and DD the patch number. +For example, for version 0.5.18, we would have AA=0, BB=5, CC=18 and +DD=0. Minor releases such as 0.5.18a or significant changes in +unreleased versions would be marked with DD=1 or higher.  File: libextractor.info, Node: Meta data printing, Prev: Utility Constants, Up: Utility functions @@ -731,12 +751,12 @@ 6.2 Meta data printing ====================== -The EXTRACTOR_meta_data_print is a simple function which prints the meta -data found with libextractor to a file. The function is mostly useful -for debugging and as an example for how to manipulate the keyword list -and can be passed as the 'proc' argument to 'EXTRACTOR_extract'. The -file to print to should be passed as 'proc_cls' (which must be of type -'FILE *'), for example 'stdout'. +The EXTRACTOR_meta_data_print is a simple function which prints the +meta data found with libextractor to a file. The function is mostly +useful for debugging and as an example for how to manipulate the +keyword list and can be passed as the `proc' argument to +`EXTRACTOR_extract'. The file to print to should be passed as +`proc_cls' (which must be of type `FILE *'), for example `stdout'.  File: libextractor.info, Node: Existing Plugins, Next: Writing new Plugins, Prev: Utility functions, Up: Top @@ -745,39 +765,68 @@ ****************** * ARCHIVE (using libarchive) + * DVI + * EXIV2 (using libexiv2, 0.23 or later preferred) + * FLAC (using libFLAC) + * GIF (using libgif) + * GSTREAMER (using libgstreamer v1.0 or later) + * HTML (using libtidy) + * IT + * JPEG (using libjpeg v8 or later) + * MAN + * MIDI (using libsmf) + * MIME (using libmagic) + * MPEG (using libmpeg2) + * NSF + * NSFE + * ODF + * OLE2 (with libgsf) + * OGG (with libogg) + * PNG + * PS + * RIFF + * RPM (using librpm) + * S3M + * SID + * ThumbnailFFMPEG (using libavformat and related libav-libraries, including libswscale) + * ThumbnailGtk (using libgtk) + * TIFF (with libtiff, tested with v4) + * WAV + * XM + * ZIP - 'gzip' and 'bzip2' compressed versions of these formats are also -supported (as well as meta data embedded by 'gzip' itself) if zlib or + `gzip' and `bzip2' compressed versions of these formats are also +supported (as well as meta data embedded by `gzip' itself) if zlib or libbz2 are available.  @@ -789,8 +838,8 @@ Writing a new plugin for libextractor usually requires writing of or interfacing with an actual parser for a specific format. How this is can be accomplished depends on the format and cannot be specified in -general. However, care should be taken for the code to be reentrant and -highly fault-tolerant, especially with respect to malformed inputs. +general. However, care should be taken for the code to be reentrant +and highly fault-tolerant, especially with respect to malformed inputs. Plugins should start by verifying that the header of the data matches the specific format and immediately return if that is not the case. @@ -798,19 +847,20 @@ assume that the remainder of the file is well formed. The plugin library must be called libextractor_XXX.so, where XXX -denotes the file format of the plugin. The library must export a method +denotes the file format of the plugin. The library must export a method libextractor_XXX_extract_method, with the following signature: void EXTRACTOR_XXX_extract_method (struct EXTRACTOR_ExtractContext *ec); - 'ec' contains various information the plugin may need for its -execution. Most importantly, it contains functions for reading ("read") -and seeking ("seek") the input data and for returning extracted data -("proc"). The "config" member can contain additional configuration -options. "proc" should be called on each meta data item found. If -"proc" returns non-zero, processing should be aborted (if possible). + `ec' contains various information the plugin may need for its +execution. Most importantly, it contains functions for reading +("read") and seeking ("seek") the input data and for returning +extracted data ("proc"). The "config" member can contain additional +configuration options. "proc" should be called on each meta data item +found. If "proc" returns non-zero, processing should be aborted (if +possible). - In order to test new plugins, the 'extract' command can be run with + In order to test new plugins, the `extract' command can be run with the options "-ni" and "-l XXX" . This will run the plugin in-process (making it easier to debug) and without any of the other plugins. @@ -848,7 +898,7 @@ 9 Internal utility functions **************************** -Some plugins link against the 'libextractor_common' library which +Some plugins link against the `libextractor_common' library which provides common abstractions needed by many plugins. This section documents this internal API for plugin developers. Note that the headers for this library are (intentionally) not installed: we do not @@ -856,40 +906,40 @@ that are build and shipped with GNU libextractor. Third-party plugins should not use it. - 'convert_numeric.h' defines various conversion functions for numbers + `convert_numeric.h' defines various conversion functions for numbers (in particular, byte-order conversion for floating point numbers). - 'unzip.h' defines an API for accessing compressed files. + `unzip.h' defines an API for accessing compressed files. - 'pack.h' provides an interpreter for unpacking structs of integer + `pack.h' provides an interpreter for unpacking structs of integer numbers from streams and converting from big or little endian to host byte order at the same time. - 'convert.h' provides a function for character set conversion + `convert.h' provides a function for character set conversion described below. -- Function: char * EXTRACTOR_common_convert_to_utf8 (const char *input, size_t len, const char *charset) Various GNU libextractor plugins make use of the internal - 'convert.h' header which defines a function + `convert.h' header which defines a function EXTRACTOR_common_convert_to_utf8 which can be used to easily convert text from any character set to UTF-8. This conversion is - important since the linked list of keywords that is returned by GNU - libextractor is expected to contain only UTF-8 strings. Naturally, - proper conversion may not always be possible since some file - formats fail to specify the character set. In that case, it is - often better to not convert at all. + important since the linked list of keywords that is returned by + GNU libextractor is expected to contain only UTF-8 strings. + Naturally, proper conversion may not always be possible since some + file formats fail to specify the character set. In that case, it + is often better to not convert at all. The arguments to EXTRACTOR_common_convert_to_utf8 are the input - string (which does _not_ have to be zero-terminated), the length of - the input string, and the character set (which _must_ be + string (which does _not_ have to be zero-terminated), the length + of the input string, and the character set (which _must_ be zero-terminated). Which character sets are supported depends on - the platform, a list can generally be obtained using the 'iconv -l' - command. The return value from EXTRACTOR_common_convert_to_utf8 is - a zero-terminated string in UTF-8 format. The responsibility to - free the string is with the caller, so storing the string in the - keyword list is acceptable. + the platform, a list can generally be obtained using the `iconv + -l' command. The return value from + EXTRACTOR_common_convert_to_utf8 is a zero-terminated string in + UTF-8 format. The responsibility to free the string is with the + caller, so storing the string in the keyword list is acceptable.  File: libextractor.info, Node: Reporting bugs, Next: GNU Free Documentation License, Prev: Internal utility functions, Up: Top @@ -898,9 +948,9 @@ ***************** GNU libextractor uses the Mantis bugtracking system -(https://gnunet.org/bugs/). If possible, please report bugs there. You -can also e-mail the GNU libextractor mailinglist at -. +(https://gnunet.org/bugs/). If possible, please report bugs there. +You can also e-mail the GNU libextractor mailinglist at +`libextractor@gnu.org'.  File: libextractor.info, Node: GNU Free Documentation License, Next: Index, Prev: Reporting bugs, Up: Top @@ -911,7 +961,7 @@ Version 1.3, 3 November 2008 Copyright (C) 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc. - + `http://fsf.org/' Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. @@ -936,21 +986,21 @@ free program should come with manuals providing the same freedoms that the software does. But this License is not limited to software manuals; it can be used for any textual work, regardless - of subject matter or whether it is published as a printed book. We - recommend this License principally for works whose purpose is + of subject matter or whether it is published as a printed book. + We recommend this License principally for works whose purpose is instruction or reference. 1. APPLICABILITY AND DEFINITIONS This License applies to any manual or other work, in any medium, - that contains a notice placed by the copyright holder saying it can - be distributed under the terms of this License. Such a notice + that contains a notice placed by the copyright holder saying it + can be distributed under the terms of this License. Such a notice grants a world-wide, royalty-free license, unlimited in duration, to use that work under the conditions stated herein. The "Document", below, refers to any such manual or work. Any member - of the public is a licensee, and is addressed as "you". You accept - the license if you copy, modify or distribute the work in a way - requiring permission under copyright law. + of the public is a licensee, and is addressed as "you". You + accept the license if you copy, modify or distribute the work in a + way requiring permission under copyright law. A "Modified Version" of the Document means any work containing the Document or a portion of it, either copied verbatim, or with @@ -968,12 +1018,12 @@ regarding them. The "Invariant Sections" are certain Secondary Sections whose - titles are designated, as being those of Invariant Sections, in the - notice that says that the Document is released under this License. - If a section does not fit the above definition of Secondary then it - is not allowed to be designated as Invariant. The Document may - contain zero Invariant Sections. If the Document does not identify - any Invariant Sections then there are none. + titles are designated, as being those of Invariant Sections, in + the notice that says that the Document is released under this + License. If a section does not fit the above definition of + Secondary then it is not allowed to be designated as Invariant. + The Document may contain zero Invariant Sections. If the Document + does not identify any Invariant Sections then there are none. The "Cover Texts" are certain short passages of text that are listed, as Front-Cover Texts or Back-Cover Texts, in the notice @@ -984,27 +1034,27 @@ A "Transparent" copy of the Document means a machine-readable copy, represented in a format whose specification is available to the general public, that is suitable for revising the document - straightforwardly with generic text editors or (for images composed - of pixels) generic paint programs or (for drawings) some widely - available drawing editor, and that is suitable for input to text - formatters or for automatic translation to a variety of formats - suitable for input to text formatters. A copy made in an otherwise - Transparent file format whose markup, or absence of markup, has - been arranged to thwart or discourage subsequent modification by - readers is not Transparent. An image format is not Transparent if - used for any substantial amount of text. A copy that is not - "Transparent" is called "Opaque". + straightforwardly with generic text editors or (for images + composed of pixels) generic paint programs or (for drawings) some + widely available drawing editor, and that is suitable for input to + text formatters or for automatic translation to a variety of + formats suitable for input to text formatters. A copy made in an + otherwise Transparent file format whose markup, or absence of + markup, has been arranged to thwart or discourage subsequent + modification by readers is not Transparent. An image format is + not Transparent if used for any substantial amount of text. A + copy that is not "Transparent" is called "Opaque". Examples of suitable formats for Transparent copies include plain ASCII without markup, Texinfo input format, LaTeX input format, - SGML or XML using a publicly available DTD, and standard-conforming - simple HTML, PostScript or PDF designed for human modification. - Examples of transparent image formats include PNG, XCF and JPG. - Opaque formats include proprietary formats that can be read and - edited only by proprietary word processors, SGML or XML for which - the DTD and/or processing tools are not generally available, and - the machine-generated HTML, PostScript or PDF produced by some word - processors for output purposes only. + SGML or XML using a publicly available DTD, and + standard-conforming simple HTML, PostScript or PDF designed for + human modification. Examples of transparent image formats include + PNG, XCF and JPG. Opaque formats include proprietary formats that + can be read and edited only by proprietary word processors, SGML or + XML for which the DTD and/or processing tools are not generally + available, and the machine-generated HTML, PostScript or PDF + produced by some word processors for output purposes only. The "Title Page" means, for a printed book, the title page itself, plus such following pages as are needed to hold, legibly, the @@ -1042,8 +1092,8 @@ may not use technical measures to obstruct or control the reading or further copying of the copies you make or distribute. However, you may accept compensation in exchange for copies. If you - distribute a large enough number of copies you must also follow the - conditions in section 3. + distribute a large enough number of copies you must also follow + the conditions in section 3. You may also lend copies, under the same conditions stated above, and you may publicly display copies. @@ -1057,11 +1107,12 @@ these Cover Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on the back cover. Both covers must also clearly and legibly identify you as the publisher of these copies. The - front cover must present the full title with all words of the title - equally prominent and visible. You may add other material on the - covers in addition. Copying with changes limited to the covers, as - long as they preserve the title of the Document and satisfy these - conditions, can be treated as verbatim copying in other respects. + front cover must present the full title with all words of the + title equally prominent and visible. You may add other material + on the covers in addition. Copying with changes limited to the + covers, as long as they preserve the title of the Document and + satisfy these conditions, can be treated as verbatim copying in + other respects. If the required texts for either cover are too voluminous to fit legibly, you should put the first ones listed (as many as fit @@ -1069,39 +1120,40 @@ adjacent pages. If you publish or distribute Opaque copies of the Document - numbering more than 100, you must either include a machine-readable - Transparent copy along with each Opaque copy, or state in or with - each Opaque copy a computer-network location from which the general - network-using public has access to download using public-standard - network protocols a complete Transparent copy of the Document, free - of added material. If you use the latter option, you must take - reasonably prudent steps, when you begin distribution of Opaque - copies in quantity, to ensure that this Transparent copy will - remain thus accessible at the stated location until at least one - year after the last time you distribute an Opaque copy (directly or - through your agents or retailers) of that edition to the public. + numbering more than 100, you must either include a + machine-readable Transparent copy along with each Opaque copy, or + state in or with each Opaque copy a computer-network location from + which the general network-using public has access to download + using public-standard network protocols a complete Transparent + copy of the Document, free of added material. If you use the + latter option, you must take reasonably prudent steps, when you + begin distribution of Opaque copies in quantity, to ensure that + this Transparent copy will remain thus accessible at the stated + location until at least one year after the last time you + distribute an Opaque copy (directly or through your agents or + retailers) of that edition to the public. It is requested, but not required, that you contact the authors of - the Document well before redistributing any large number of copies, - to give them a chance to provide you with an updated version of the - Document. + the Document well before redistributing any large number of + copies, to give them a chance to provide you with an updated + version of the Document. 4. MODIFICATIONS You may copy and distribute a Modified Version of the Document under the conditions of sections 2 and 3 above, provided that you - release the Modified Version under precisely this License, with the - Modified Version filling the role of the Document, thus licensing - distribution and modification of the Modified Version to whoever - possesses a copy of it. In addition, you must do these things in - the Modified Version: + release the Modified Version under precisely this License, with + the Modified Version filling the role of the Document, thus + licensing distribution and modification of the Modified Version to + whoever possesses a copy of it. In addition, you must do these + things in the Modified Version: A. Use in the Title Page (and on the covers, if any) a title - distinct from that of the Document, and from those of previous - versions (which should, if there were any, be listed in the - History section of the Document). You may use the same title - as a previous version if the original publisher of that - version gives permission. + distinct from that of the Document, and from those of + previous versions (which should, if there were any, be listed + in the History section of the Document). You may use the + same title as a previous version if the original publisher of + that version gives permission. B. List on the Title Page, as authors, one or more persons or entities responsible for authorship of the modifications in @@ -1131,30 +1183,31 @@ I. Preserve the section Entitled "History", Preserve its Title, and add to it an item stating at least the title, year, new - authors, and publisher of the Modified Version as given on the - Title Page. If there is no section Entitled "History" in the - Document, create one stating the title, year, authors, and - publisher of the Document as given on its Title Page, then add - an item describing the Modified Version as stated in the - previous sentence. + authors, and publisher of the Modified Version as given on + the Title Page. If there is no section Entitled "History" in + the Document, create one stating the title, year, authors, + and publisher of the Document as given on its Title Page, + then add an item describing the Modified Version as stated in + the previous sentence. J. Preserve the network location, if any, given in the Document for public access to a Transparent copy of the Document, and likewise the network locations given in the Document for - previous versions it was based on. These may be placed in the - "History" section. You may omit a network location for a work - that was published at least four years before the Document - itself, or if the original publisher of the version it refers - to gives permission. + previous versions it was based on. These may be placed in + the "History" section. You may omit a network location for a + work that was published at least four years before the + Document itself, or if the original publisher of the version + it refers to gives permission. K. For any section Entitled "Acknowledgements" or "Dedications", - Preserve the Title of the section, and preserve in the section - all the substance and tone of each of the contributor + Preserve the Title of the section, and preserve in the + section all the substance and tone of each of the contributor acknowledgements and/or dedications given therein. - L. Preserve all the Invariant Sections of the Document, unaltered - in their text and in their titles. Section numbers or the - equivalent are not considered part of the section titles. + L. Preserve all the Invariant Sections of the Document, + unaltered in their text and in their titles. Section numbers + or the equivalent are not considered part of the section + titles. M. Delete any section Entitled "Endorsements". Such a section may not be included in the Modified Version. @@ -1167,11 +1220,11 @@ If the Modified Version includes new front-matter sections or appendices that qualify as Secondary Sections and contain no - material copied from the Document, you may at your option designate - some or all of these sections as invariant. To do this, add their - titles to the list of Invariant Sections in the Modified Version's - license notice. These titles must be distinct from any other - section titles. + material copied from the Document, you may at your option + designate some or all of these sections as invariant. To do this, + add their titles to the list of Invariant Sections in the Modified + Version's license notice. These titles must be distinct from any + other section titles. You may add a section Entitled "Endorsements", provided it contains nothing but endorsements of your Modified Version by various @@ -1180,15 +1233,15 @@ definition of a standard. You may add a passage of up to five words as a Front-Cover Text, - and a passage of up to 25 words as a Back-Cover Text, to the end of - the list of Cover Texts in the Modified Version. Only one passage - of Front-Cover Text and one of Back-Cover Text may be added by (or - through arrangements made by) any one entity. If the Document - already includes a cover text for the same cover, previously added - by you or by arrangement made by the same entity you are acting on - behalf of, you may not add another; but you may replace the old - one, on explicit permission from the previous publisher that added - the old one. + and a passage of up to 25 words as a Back-Cover Text, to the end + of the list of Cover Texts in the Modified Version. Only one + passage of Front-Cover Text and one of Back-Cover Text may be + added by (or through arrangements made by) any one entity. If the + Document already includes a cover text for the same cover, + previously added by you or by arrangement made by the same entity + you are acting on behalf of, you may not add another; but you may + replace the old one, on explicit permission from the previous + publisher that added the old one. The author(s) and publisher(s) of the Document do not by this License give permission to use their names for publicity for or to @@ -1198,8 +1251,8 @@ You may combine the Document with other documents released under this License, under the terms defined in section 4 above for - modified versions, provided that you include in the combination all - of the Invariant Sections of all of the original documents, + modified versions, provided that you include in the combination + all of the Invariant Sections of all of the original documents, unmodified, and list them all as Invariant Sections of your combined work in its license notice, and that you preserve all their Warranty Disclaimers. @@ -1226,20 +1279,20 @@ documents released under this License, and replace the individual copies of this License in the various documents with a single copy that is included in the collection, provided that you follow the - rules of this License for verbatim copying of each of the documents - in all other respects. + rules of this License for verbatim copying of each of the + documents in all other respects. You may extract a single document from such a collection, and distribute it individually under this License, provided you insert - a copy of this License into the extracted document, and follow this - License in all other respects regarding verbatim copying of that - document. + a copy of this License into the extracted document, and follow + this License in all other respects regarding verbatim copying of + that document. 7. AGGREGATION WITH INDEPENDENT WORKS A compilation of the Document or its derivatives with other - separate and independent documents or works, in or on a volume of a - storage or distribution medium, is called an "aggregate" if the + separate and independent documents or works, in or on a volume of + a storage or distribution medium, is called an "aggregate" if the copyright resulting from the compilation is not used to limit the legal rights of the compilation's users beyond what the individual works permit. When the Document is included in an aggregate, this @@ -1284,8 +1337,8 @@ However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) - provisionally, unless and until the copyright holder explicitly and - finally terminates your license, and (b) permanently, if the + provisionally, unless and until the copyright holder explicitly + and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. @@ -1297,33 +1350,33 @@ after your receipt of the notice. Termination of your rights under this section does not terminate - the licenses of parties who have received copies or rights from you - under this License. If your rights have been terminated and not - permanently reinstated, receipt of a copy of some or all of the - same material does not give you any rights to use it. + the licenses of parties who have received copies or rights from + you under this License. If your rights have been terminated and + not permanently reinstated, receipt of a copy of some or all of + the same material does not give you any rights to use it. - 10. FUTURE REVISIONS OF THIS LICENSE + 10. FUTURE REVISIONS OF THIS LICENSE The Free Software Foundation may publish new, revised versions of the GNU Free Documentation License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. See - . + `http://www.gnu.org/copyleft/'. Each version of the License is given a distinguishing version number. If the Document specifies that a particular numbered version of this License "or any later version" applies to it, you have the option of following the terms and conditions either of that specified version or of any later version that has been - published (not as a draft) by the Free Software Foundation. If the - Document does not specify a version number of this License, you may - choose any version ever published (not as a draft) by the Free - Software Foundation. If the Document specifies that a proxy can - decide which future versions of this License can be used, that + published (not as a draft) by the Free Software Foundation. If + the Document does not specify a version number of this License, + you may choose any version ever published (not as a draft) by the + Free Software Foundation. If the Document specifies that a proxy + can decide which future versions of this License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Document. - 11. RELICENSING + 11. RELICENSING "Massive Multiauthor Collaboration Site" (or "MMC Site") means any World Wide Web server that publishes copyrightable works and also @@ -1353,6 +1406,7 @@ site under CC-BY-SA on the same site at any time before August 1, 2009, provided the MMC is eligible for relicensing. + ADDENDUM: How to use this License for your documents ==================================================== @@ -1369,7 +1423,7 @@ Free Documentation License''. If you have Invariant Sections, Front-Cover Texts and Back-Cover -Texts, replace the "with...Texts." line with this: +Texts, replace the "with...Texts." line with this: with the Invariant Sections being LIST THEIR TITLES, with the Front-Cover Texts being LIST, and with the Back-Cover Texts @@ -1380,9 +1434,9 @@ situation. If your document contains nontrivial examples of program code, we -recommend releasing these examples in parallel under your choice of free -software license, such as the GNU General Public License, to permit -their use in free software. +recommend releasing these examples in parallel under your choice of +free software license, such as the GNU General Public License, to +permit their use in free software.  File: libextractor.info, Node: Index, Prev: GNU Free Documentation License, Up: Top @@ -1393,97 +1447,85 @@ [index] * Menu: -* (*EXTRACTOR_MetaDataProcessor)(void: Extracting. (line 6) +* (: Extracting. (line 10) * bug: Reporting bugs. (line 6) -* bus error: Extracting. (line 57) +* bus error: Extracting. (line 56) * character set: Internal utility functions. (line 28) +* concurrency <1>: Utility functions. (line 6) +* concurrency <2>: Extracting. (line 43) * concurrency: Plugin management. (line 6) -* concurrency <1>: Extracting. (line 43) -* concurrency <2>: Utility functions. (line 6) -* directory structure: Preparation. (line 63) +* directory structure: Preparation. (line 83) * enum EXTRACTOR_MetaFormat: Meta formats. (line 6) * enum EXTRACTOR_MetaType: Meta types. (line 6) * enum EXTRACTOR_Options: Plugin management. (line 6) -* environment variables: Preparation. (line 63) +* environment variables: Preparation. (line 83) * error handling: Introduction. (line 6) * EXTRACTOR_common_convert_to_utf8: Internal utility functions. - (line 26) -* EXTRACTOR_common_convert_to_utf8 <1>: Internal utility functions. (line 28) -* EXTRACTOR_extract: Extracting. (line 40) -* EXTRACTOR_extract <1>: Extracting. (line 43) +* EXTRACTOR_extract: Extracting. (line 43) +* EXTRACTOR_meta_data_print: Meta data printing. (line 6) * EXTRACTOR_MetaDataProcessor: Extracting. (line 10) * EXTRACTOR_metatype_get_max: Meta types. (line 6) -* EXTRACTOR_metatype_to_description: Meta types. (line 20) -* EXTRACTOR_metatype_to_description <1>: Meta types. (line 22) -* EXTRACTOR_metatype_to_string: Meta types. (line 12) -* EXTRACTOR_metatype_to_string <1>: Meta types. (line 14) -* EXTRACTOR_meta_data_print: Meta data printing. (line 6) -* EXTRACTOR_PluginList: Plugin management. (line 31) +* EXTRACTOR_metatype_to_description: Meta types. (line 22) +* EXTRACTOR_metatype_to_string: Meta types. (line 14) * EXTRACTOR_plugin_add: Plugin management. (line 51) -* EXTRACTOR_plugin_add <1>: Plugin management. (line 54) -* EXTRACTOR_plugin_add_config: Plugin management. (line 62) -* EXTRACTOR_plugin_add_config <1>: Plugin management. (line 65) -* EXTRACTOR_plugin_add_defaults: Plugin management. (line 71) -* EXTRACTOR_plugin_add_defaults <1>: Plugin management. (line 73) +* EXTRACTOR_plugin_add_config: Plugin management. (line 61) +* EXTRACTOR_plugin_add_defaults: Plugin management. (line 68) * EXTRACTOR_plugin_remove: Plugin management. (line 44) -* EXTRACTOR_plugin_remove <1>: Plugin management. (line 46) -* EXTRACTOR_plugin_remove_all: Plugin management. (line 39) -* EXTRACTOR_plugin_remove_all <1>: Plugin management. (line 41) +* EXTRACTOR_plugin_remove_all: Plugin management. (line 40) +* EXTRACTOR_PluginList: Plugin management. (line 32) * EXTRACTOR_VERSION: Utility Constants. (line 6) * gettext: Meta types. (line 14) -* gettext <1>: Meta types. (line 22) * internationalization: Meta types. (line 14) -* internationalization <1>: Meta types. (line 22) * Java: Language bindings. (line 6) -* LIBEXTRACTOR_PREFIX: Preparation. (line 63) +* LIBEXTRACTOR_PREFIX: Preparation. (line 83) * license: Introduction. (line 38) * Mono: Language bindings. (line 6) -* packageing: Preparation. (line 63) +* packageing: Preparation. (line 83) * Perl: Language bindings. (line 6) * PHP: Language bindings. (line 6) +* plugin <1>: Preparation. (line 83) * plugin: Introduction. (line 18) -* plugin <1>: Preparation. (line 63) * Python: Language bindings. (line 6) +* reentrant <1>: Utility functions. (line 6) +* reentrant <2>: Extracting. (line 43) * reentrant: Plugin management. (line 6) -* reentrant <1>: Extracting. (line 43) -* reentrant <2>: Utility functions. (line 6) * Ruby: Language bindings. (line 6) -* SIGBUS: Extracting. (line 57) +* SIGBUS: Extracting. (line 56) * SIGPIPE: Generalities. (line 81) * struct EXTRACTOR_PluginList: Plugin management. (line 32) +* thread-safety <1>: Utility functions. (line 6) +* thread-safety <2>: Extracting. (line 43) * thread-safety: Plugin management. (line 6) -* thread-safety <1>: Extracting. (line 43) -* thread-safety <2>: Utility functions. (line 6) +* threads <1>: Utility functions. (line 6) +* threads <2>: Extracting. (line 43) * threads: Plugin management. (line 6) -* threads <1>: Extracting. (line 43) -* threads <2>: Utility functions. (line 6) * UTF-8: Internal utility functions. (line 28)  Tag Table: -Node: Top783 +Node: Top784 Node: Introduction2384 Ref: Introduction-Footnote-14531 Node: Preparation4596 -Node: Generalities12189 -Node: Extracting meta data15420 -Node: Plugin management16132 -Node: Meta types19803 -Node: Meta formats21215 -Node: Extracting22610 -Node: Language bindings25801 -Node: Utility functions27699 +Node: Generalities12212 +Node: Extracting meta data15446 +Node: Plugin management16158 +Node: Meta types19811 +Node: Meta formats21226 +Node: Extracting22619 +Node: Language bindings25803 +Node: Utility functions27700 Node: Utility Constants28024 Node: Meta data printing28643 Node: Existing Plugins29184 -Node: Writing new Plugins30195 -Node: Internal utility functions32820 -Node: Reporting bugs35167 -Node: GNU Free Documentation License35540 -Node: Index60695 +Node: Writing new Plugins30224 +Node: Internal utility functions32848 +Node: Reporting bugs35194 +Node: GNU Free Documentation License35566 +Node: Index60740  End Tag Table diff -Nru libextractor-1.2/doc/mdate-sh libextractor-1.3/doc/mdate-sh --- libextractor-1.2/doc/mdate-sh 2013-10-19 14:32:51.000000000 +0000 +++ libextractor-1.3/doc/mdate-sh 2013-12-22 22:23:29.000000000 +0000 @@ -3,7 +3,8 @@ scriptversion=2010-08-21.06; # UTC -# Copyright (C) 1995-2013 Free Software Foundation, Inc. +# Copyright (C) 1995, 1996, 1997, 2003, 2004, 2005, 2007, 2009, 2010 +# Free Software Foundation, Inc. # written by Ulrich Drepper , June 1995 # # This program is free software; you can redistribute it and/or modify @@ -39,7 +40,7 @@ case $1 in '') - echo "$0: No file. Try '$0 --help' for more information." 1>&2 + echo "$0: No file. Try \`$0 --help' for more information." 1>&2 exit 1; ;; -h | --h*) @@ -75,7 +76,7 @@ export LC_TIME # GNU ls changes its time format in response to the TIME_STYLE -# variable. Since we cannot assume 'unset' works, revert this +# variable. Since we cannot assume `unset' works, revert this # variable to its documented default. if test "${TIME_STYLE+set}" = set; then TIME_STYLE=posix-long-iso @@ -95,14 +96,14 @@ ls_command="$ls_command -n" fi -# A 'ls -l' line looks as follows on OS/2. +# A `ls -l' line looks as follows on OS/2. # drwxrwx--- 0 Aug 11 2001 foo # This differs from Unix, which adds ownership information. # drwxrwx--- 2 root root 4096 Aug 11 2001 foo # # To find the date, we split the line on spaces and iterate on words # until we find a month. This cannot work with files whose owner is a -# user named "Jan", or "Feb", etc. However, it's unlikely that '/' +# user named `Jan', or `Feb', etc. However, it's unlikely that `/' # will be owned by a user whose name is a month. So we first look at # the extended ls output of the root directory to decide how many # words should be skipped to get the date. @@ -115,7 +116,7 @@ command= until test $month do - test $# -gt 0 || error "failed parsing '$ls_command /' output" + test $# -gt 0 || error "failed parsing \`$ls_command /' output" shift # Add another shift to the command. command="$command shift;" @@ -135,7 +136,7 @@ esac done -test -n "$month" || error "failed parsing '$ls_command /' output" +test -n "$month" || error "failed parsing \`$ls_command /' output" # Get the extended ls output of the file or directory. set dummy x`eval "$ls_command \"\\\$save_arg1\""` diff -Nru libextractor-1.2/doc/stamp-vti libextractor-1.3/doc/stamp-vti --- libextractor-1.2/doc/stamp-vti 2013-10-19 14:33:18.000000000 +0000 +++ libextractor-1.3/doc/stamp-vti 2013-12-23 11:15:44.000000000 +0000 @@ -1,4 +1,4 @@ -@set UPDATED 10 October 2012 +@set UPDATED 9 October 2012 @set UPDATED-MONTH October 2012 -@set EDITION 1.2 -@set VERSION 1.2 +@set EDITION 1.3 +@set VERSION 1.3 diff -Nru libextractor-1.2/doc/texinfo.tex libextractor-1.3/doc/texinfo.tex --- libextractor-1.2/doc/texinfo.tex 2013-10-19 14:32:51.000000000 +0000 +++ libextractor-1.3/doc/texinfo.tex 2013-12-22 22:23:29.000000000 +0000 @@ -3,11 +3,11 @@ % Load plain if necessary, i.e., if running under initex. \expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi % -\def\texinfoversion{2013-02-01.11} +\def\texinfoversion{2012-03-11.15} % % Copyright 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995, % 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, -% 2007, 2008, 2009, 2010, 2011, 2012, 2013 Free Software Foundation, Inc. +% 2007, 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc. % % This texinfo.tex file is free software: you can redistribute it and/or % modify it under the terms of the GNU General Public License as @@ -24,14 +24,13 @@ % % As a special exception, when this file is read by TeX when processing % a Texinfo source document, you may use the result without -% restriction. This Exception is an additional permission under section 7 -% of the GNU General Public License, version 3 ("GPLv3"). +% restriction. (This has been our intent since Texinfo was invented.) % % Please try the latest version of texinfo.tex before submitting bug % reports; you can get the latest version from: -% http://ftp.gnu.org/gnu/texinfo/ (the Texinfo release area), or -% http://ftpmirror.gnu.org/texinfo/ (same, via a mirror), or -% http://www.gnu.org/software/texinfo/ (the Texinfo home page) +% http://www.gnu.org/software/texinfo/ (the Texinfo home page), or +% ftp://tug.org/tex/texinfo.tex +% (and all CTAN mirrors, see http://www.ctan.org). % The texinfo.tex in any given distribution could well be out % of date, so if that's what you're using, please check. % @@ -595,7 +594,7 @@ \def\:{\spacefactor=1000 } % @* forces a line break. -\def\*{\unskip\hfil\break\hbox{}\ignorespaces} +\def\*{\hfil\break\hbox{}\ignorespaces} % @/ allows a line break. \let\/=\allowbreak @@ -1118,7 +1117,7 @@ % #1 is a control sequence in which to do the replacements, % which we \xdef. \def\txiescapepdf#1{% - \ifx\pdfescapestring\thisisundefined + \ifx\pdfescapestring\relax % No primitive available; should we give a warning or log? % Many times it won't matter. \else @@ -1368,8 +1367,9 @@ \def\skipspaces#1{\def\PP{#1}\def\D{|}% \ifx\PP\D\let\nextsp\relax \else\let\nextsp\skipspaces - \addtokens{\filename}{\PP}% - \advance\filenamelength by 1 + \ifx\p\space\else\addtokens{\filename}{\PP}% + \advance\filenamelength by 1 + \fi \fi \nextsp} \def\getfilename#1{% @@ -1475,6 +1475,9 @@ \def\ttsl{\setfontstyle{ttsl}} +% Default leading. +\newdimen\textleading \textleading = 13.2pt + % Set the baselineskip to #1, and the lineskip and strut size % correspondingly. There is no deep meaning behind these magic numbers % used as factors; they just match (closely enough) what Knuth defined. @@ -1486,7 +1489,6 @@ % can get a sort of poor man's double spacing by redefining this. \def\baselinefactor{1} % -\newdimen\textleading \def\setleading#1{% \dimen0 = #1\relax \normalbaselineskip = \baselinefactor\dimen0 @@ -1759,24 +1761,18 @@ \fi\fi -% Set the font macro #1 to the font named \fontprefix#2. +% Set the font macro #1 to the font named #2, adding on the +% specified font prefix (normally `cm'). % #3 is the font's design size, #4 is a scale factor, #5 is the CMap -% encoding (only OT1, OT1IT and OT1TT are allowed, or empty to omit). -% Example: -% #1 = \textrm -% #2 = \rmshape -% #3 = 10 -% #4 = \mainmagstep -% #5 = OT1 -% +% encoding (currently only OT1, OT1IT and OT1TT are allowed, pass +% empty to omit). \def\setfont#1#2#3#4#5{% \font#1=\fontprefix#2#3 scaled #4 \csname cmap#5\endcsname#1% } % This is what gets called when #5 of \setfont is empty. \let\cmap\gobble -% -% (end of cmaps) +% emacs-page end of cmaps % Use cm as the default font prefix. % To specify the font prefix, you must define \fontprefix @@ -1786,7 +1782,7 @@ \fi % Support font families that don't use the same naming scheme as CM. \def\rmshape{r} -\def\rmbshape{bx} % where the normal face is bold +\def\rmbshape{bx} %where the normal face is bold \def\bfshape{b} \def\bxshape{bx} \def\ttshape{tt} @@ -1801,7 +1797,8 @@ \def\scshape{csc} \def\scbshape{csc} -% Definitions for a main text size of 11pt. (The default in Texinfo.) +% Definitions for a main text size of 11pt. This is the default in +% Texinfo. % \def\definetextfontsizexi{% % Text fonts (11.2pt, magstep1). @@ -1926,7 +1923,7 @@ \textleading = 13.2pt % line spacing for 11pt CM \textfonts % reset the current fonts \rm -} % end of 11pt text font size definitions, \definetextfontsizexi +} % end of 11pt text font size definitions % Definitions to make the main text be 10pt Computer Modern, with @@ -2058,7 +2055,7 @@ \textleading = 12pt % line spacing for 10pt CM \textfonts % reset the current fonts \rm -} % end of 10pt text font size definitions, \definetextfontsizex +} % end of 10pt text font size definitions % We provide the user-level command @@ -2273,6 +2270,8 @@ \gdef\markupsetcodequoteleft{\let`\codequoteleft} \gdef\markupsetcodequoteright{\let'\codequoteright} + +\gdef\markupsetnoligaturesquoteleft{\let`\noligaturesquoteleft} } \let\markupsetuplqcode \markupsetcodequoteleft @@ -2281,9 +2280,6 @@ \let\markupsetuplqexample \markupsetcodequoteleft \let\markupsetuprqexample \markupsetcodequoteright % -\let\markupsetuplqkbd \markupsetcodequoteleft -\let\markupsetuprqkbd \markupsetcodequoteright -% \let\markupsetuplqsamp \markupsetcodequoteleft \let\markupsetuprqsamp \markupsetcodequoteright % @@ -2293,6 +2289,8 @@ \let\markupsetuplqverbatim \markupsetcodequoteleft \let\markupsetuprqverbatim \markupsetcodequoteright +\let\markupsetuplqkbd \markupsetnoligaturesquoteleft + % Allow an option to not use regular directed right quote/apostrophe % (char 0x27), but instead the undirected quote from cmtt (char 0x0d). % The undirected quote is ugly, so don't make it the default, but it @@ -2382,7 +2380,8 @@ \aftersmartic } -% Unconditional use \ttsl, and no ic. @var is set to this for defuns. +% like \smartslanted except unconditionally uses \ttsl, and no ic. +% @var is set to this for defun arguments. \def\ttslanted#1{{\ttsl #1}} % @cite is like \smartslanted except unconditionally use \sl. We never want @@ -2447,12 +2446,34 @@ % @samp. \def\samp#1{{\setupmarkupstyle{samp}\lq\tclose{#1}\rq\null}} -% @indicateurl is \samp, that is, with quotes. -\let\indicateurl=\samp +% definition of @key that produces a lozenge. Doesn't adjust to text size. +%\setfont\keyrm\rmshape{8}{1000}{OT1} +%\font\keysy=cmsy9 +%\def\key#1{{\keyrm\textfont2=\keysy \leavevmode\hbox{% +% \raise0.4pt\hbox{\angleleft}\kern-.08em\vtop{% +% \vbox{\hrule\kern-0.4pt +% \hbox{\raise0.4pt\hbox{\vphantom{\angleleft}}#1}}% +% \kern-0.4pt\hrule}% +% \kern-.06em\raise0.4pt\hbox{\angleright}}}} -% @code (and similar) prints in typewriter, but with spaces the same -% size as normal in the surrounding text, without hyphenation, etc. -% This is a subroutine for that. +% definition of @key with no lozenge. If the current font is already +% monospace, don't change it; that way, we respect @kbdinputstyle. But +% if it isn't monospace, then use \tt. +% +\def\key#1{{\setupmarkupstyle{key}% + \nohyphenation + \ifmonospace\else\tt\fi + #1}\null} + +% ctrl is no longer a Texinfo command. +\def\ctrl #1{{\tt \rawbackslash \hat}#1} + +% @file, @option are the same as @samp. +\let\file=\samp +\let\option=\samp + +% @code is a modification of @t, +% which makes spaces the same size as normal in the surrounding text. \def\tclose#1{% {% % Change normal interword space to be same as for the current font. @@ -2477,7 +2498,7 @@ % We *must* turn on hyphenation at `-' and `_' in @code. % Otherwise, it is too hard to avoid overfull hboxes % in the Emacs manual, the Library manual, etc. -% + % Unfortunately, TeX uses one parameter (\hyphenchar) to control % both hyphenation at - and hyphenation within words. % We must therefore turn them both off (\tclose does that) @@ -2496,7 +2517,7 @@ \let-\codedash \let_\codeunder \else - \let-\normaldash + \let-\realdash \let_\realunder \fi \codex @@ -2505,7 +2526,7 @@ \def\codex #1{\tclose{#1}\endgroup} -\def\normaldash{-} +\def\realdash{-} \def\codedash{-\discretionary{}{}{}} \def\codeunder{% % this is all so @math{@code{var_name}+1} can work. In math mode, _ @@ -2520,9 +2541,9 @@ } % An additional complication: the above will allow breaks after, e.g., -% each of the four underscores in __typeof__. This is bad. -% @allowcodebreaks provides a document-level way to turn breaking at - -% and _ on and off. +% each of the four underscores in __typeof__. This is undesirable in +% some manuals, especially if they don't have long identifiers in +% general. @allowcodebreaks provides a way to control this. % \newif\ifallowcodebreaks \allowcodebreakstrue @@ -2541,13 +2562,6 @@ \fi\fi } -% For @command, @env, @file, @option quotes seem unnecessary, -% so use \code rather than \samp. -\let\command=\code -\let\env=\code -\let\file=\code -\let\option=\code - % @uref (abbreviation for `urlref') takes an optional (comma-separated) % second argument specifying the text to display and an optional third % arg as text to display instead of (rather than in addition to) the url @@ -2694,6 +2708,10 @@ \let\email=\uref \fi +% @kbd is like @code, except that if the argument is just one @key command, +% then @kbd has no effect. +\def\kbd#1{{\setupmarkupstyle{kbd}\def\look{#1}\expandafter\kbdfoo\look??\par}} + % @kbdinputstyle -- arg is `distinct' (@kbd uses slanted tty font always), % `example' (@kbd uses ttsl only inside of @example and friends), % or `code' (@kbd uses normal tty font always). @@ -2717,36 +2735,16 @@ % Default is `distinct'. \kbdinputstyle distinct -% @kbd is like @code, except that if the argument is just one @key command, -% then @kbd has no effect. -\def\kbd#1{{\def\look{#1}\expandafter\kbdsub\look??\par}} - \def\xkey{\key} -\def\kbdsub#1#2#3\par{% - \def\one{#1}\def\three{#3}\def\threex{??}% - \ifx\one\xkey\ifx\threex\three \key{#2}% - \else{\tclose{\kbdfont\setupmarkupstyle{kbd}\look}}\fi - \else{\tclose{\kbdfont\setupmarkupstyle{kbd}\look}}\fi -} - -% definition of @key that produces a lozenge. Doesn't adjust to text size. -%\setfont\keyrm\rmshape{8}{1000}{OT1} -%\font\keysy=cmsy9 -%\def\key#1{{\keyrm\textfont2=\keysy \leavevmode\hbox{% -% \raise0.4pt\hbox{\angleleft}\kern-.08em\vtop{% -% \vbox{\hrule\kern-0.4pt -% \hbox{\raise0.4pt\hbox{\vphantom{\angleleft}}#1}}% -% \kern-0.4pt\hrule}% -% \kern-.06em\raise0.4pt\hbox{\angleright}}}} +\def\kbdfoo#1#2#3\par{\def\one{#1}\def\three{#3}\def\threex{??}% +\ifx\one\xkey\ifx\threex\three \key{#2}% +\else{\tclose{\kbdfont\setupmarkupstyle{kbd}\look}}\fi +\else{\tclose{\kbdfont\setupmarkupstyle{kbd}\look}}\fi} -% definition of @key with no lozenge. If the current font is already -% monospace, don't change it; that way, we respect @kbdinputstyle. But -% if it isn't monospace, then use \tt. -% -\def\key#1{{\setupmarkupstyle{key}% - \nohyphenation - \ifmonospace\else\tt\fi - #1}\null} +% For @indicateurl, @env, @command quotes seem unnecessary, so use \code. +\let\indicateurl=\code +\let\env=\code +\let\command=\code % @clicksequence{File @click{} Open ...} \def\clicksequence#1{\begingroup #1\endgroup} @@ -2854,9 +2852,6 @@ } } -% ctrl is no longer a Texinfo command, but leave this definition for fun. -\def\ctrl #1{{\tt \rawbackslash \hat}#1} - % @inlinefmt{FMTNAME,PROCESSED-TEXT} and @inlineraw{FMTNAME,RAW-TEXT}. % Ignore unless FMTNAME == tex; then it is like @iftex and @tex, % except specified as a normal braced arg, so no newlines to worry about. @@ -3147,17 +3142,12 @@ % hopefully nobody will notice/care. \edef\ecsize{\csname\curfontsize ecsize\endcsname}% \edef\nominalsize{\csname\curfontsize nominalsize\endcsname}% - \ifmonospace - % typewriter: - \font\thisecfont = ectt\ecsize \space at \nominalsize - \else - \ifx\curfontstyle\bfstylename - % bold: - \font\thisecfont = ecb\ifusingit{i}{x}\ecsize \space at \nominalsize - \else - % regular: - \font\thisecfont = ec\ifusingit{ti}{rm}\ecsize \space at \nominalsize - \fi + \ifx\curfontstyle\bfstylename + % bold: + \font\thisecfont = ecb\ifusingit{i}{x}\ecsize \space at \nominalsize + \else + % regular: + \font\thisecfont = ec\ifusingit{ti}{rm}\ecsize \space at \nominalsize \fi \thisecfont } @@ -3270,20 +3260,6 @@ \finishedtitlepagetrue } -% Settings used for typesetting titles: no hyphenation, no indentation, -% don't worry much about spacing, ragged right. This should be used -% inside a \vbox, and fonts need to be set appropriately first. Because -% it is always used for titles, nothing else, we call \rmisbold. \par -% should be specified before the end of the \vbox, since a vbox is a group. -% -\def\raggedtitlesettings{% - \rmisbold - \hyphenpenalty=10000 - \parindent=0pt - \tolerance=5000 - \ptexraggedright -} - % Macros to be used within @titlepage: \let\subtitlerm=\tenrm @@ -3291,7 +3267,7 @@ \parseargdef\title{% \checkenv\titlepage - \vbox{\titlefonts \raggedtitlesettings #1\par}% + \leftline{\titlefonts\rmisbold #1} % print a rule at the page bottom also. \finishedtitlepagefalse \vskip4pt \hrule height 4pt width \hsize \vskip4pt @@ -4188,7 +4164,7 @@ % ..., but we might end up with active ones in the argument if % we're called from @code, as @code{@value{foo-bar_}}, though. % So \let them to their normal equivalents. - \let-\normaldash \let_\normalunderscore + \let-\realdash \let_\normalunderscore } } @@ -4228,7 +4204,7 @@ } \def\ifsetfail{\doignore{ifset}} -% @ifclear VAR ... @end executes the `...' iff VAR has never been +% @ifclear VAR ... @end ifclear reads the `...' iff VAR has never been % defined with @set, or has been undefined with @clear. % % The `\else' inside the `\doifset' parameter is a trick to reuse the @@ -4239,35 +4215,6 @@ \def\ifclear{\parsearg{\doifset{\else \let\next=\ifclearfail}}} \def\ifclearfail{\doignore{ifclear}} -% @ifcommandisdefined CMD ... @end executes the `...' if CMD (written -% without the @) is in fact defined. We can only feasibly check at the -% TeX level, so something like `mathcode' is going to considered -% defined even though it is not a Texinfo command. -% -\makecond{ifcommanddefined} -\def\ifcommanddefined{\parsearg{\doifcmddefined{\let\next=\ifcmddefinedfail}}} -% -\def\doifcmddefined#1#2{{% - \makevalueexpandable - \let\next=\empty - \expandafter\ifx\csname #2\endcsname\relax - #1% If not defined, \let\next as above. - \fi - \expandafter - }\next -} -\def\ifcmddefinedfail{\doignore{ifcommanddefined}} - -% @ifcommandnotdefined CMD ... handled similar to @ifclear above. -\makecond{ifcommandnotdefined} -\def\ifcommandnotdefined{% - \parsearg{\doifcmddefined{\else \let\next=\ifcmdnotdefinedfail}}} -\def\ifcmdnotdefinedfail{\doignore{ifcommandnotdefined}} - -% Set the `txicommandconditionals' variable, so documents have a way to -% test if the @ifcommand...defined conditionals are available. -\set txicommandconditionals - % @dircategory CATEGORY -- specify a category of the dir file % which this file should belong to. Ignore this in TeX. \let\dircategory=\comment @@ -4504,7 +4451,6 @@ \definedummyword\guillemetright \definedummyword\guilsinglleft \definedummyword\guilsinglright - \definedummyword\lbracechar \definedummyword\leq \definedummyword\minus \definedummyword\ogonek @@ -4517,7 +4463,6 @@ \definedummyword\quoteleft \definedummyword\quoteright \definedummyword\quotesinglbase - \definedummyword\rbracechar \definedummyword\result \definedummyword\textdegree % @@ -4569,7 +4514,6 @@ \definedummyword\t % % Commands that take arguments. - \definedummyword\abbr \definedummyword\acronym \definedummyword\anchor \definedummyword\cite @@ -4581,9 +4525,7 @@ \definedummyword\emph \definedummyword\env \definedummyword\file - \definedummyword\image \definedummyword\indicateurl - \definedummyword\inforef \definedummyword\kbd \definedummyword\key \definedummyword\math @@ -4630,10 +4572,7 @@ % content at all. So for index sorting, we map @{ and @} to strings % starting with |, since that ASCII character is between ASCII { and }. \def\{{|a}% - \def\lbracechar{|a}% - % \def\}{|b}% - \def\rbracechar{|b}% % % Non-English letters. \def\AA{AA}% @@ -5594,6 +5533,14 @@ % Define @majorheading, @heading and @subheading +% NOTE on use of \vbox for chapter headings, section headings, and such: +% 1) We use \vbox rather than the earlier \line to permit +% overlong headings to fold. +% 2) \hyphenpenalty is set to 10000 because hyphenation in a +% heading is obnoxious; this forbids it. +% 3) Likewise, headings look best if no \parindent is used, and +% if justification is not attempted. Hence \raggedright. + \def\majorheading{% {\advance\chapheadingskip by 10pt \chapbreak }% \parsearg\chapheadingzzz @@ -5601,8 +5548,10 @@ \def\chapheading{\chapbreak \parsearg\chapheadingzzz} \def\chapheadingzzz#1{% - \vbox{\chapfonts \raggedtitlesettings #1\par}% - \nobreak\bigskip \nobreak + {\chapfonts \vbox{\hyphenpenalty=10000\tolerance=5000 + \parindent=0pt\ptexraggedright + \rmisbold #1\hfill}}% + \bigskip \par\penalty 200\relax \suppressfirstparagraphindent } @@ -5761,7 +5710,8 @@ % % Typeset the actual heading. \nobreak % Avoid page breaks at the interline glue. - \vbox{\raggedtitlesettings \hangindent=\wd0 \centerparametersmaybe + \vbox{\hyphenpenalty=10000 \tolerance=5000 \parindent=0pt \ptexraggedright + \hangindent=\wd0 \centerparametersmaybe \unhbox0 #1\par}% }% \nobreak\bigskip % no page break after a chapter title @@ -5783,18 +5733,18 @@ \def\setchapterstyle #1 {\csname CHAPF#1\endcsname} % \def\unnchfopen #1{% - \chapoddpage - \vbox{\chapfonts \raggedtitlesettings #1\par}% - \nobreak\bigskip\nobreak +\chapoddpage {\chapfonts \vbox{\hyphenpenalty=10000\tolerance=5000 + \parindent=0pt\ptexraggedright + \rmisbold #1\hfill}}\bigskip \par\nobreak } \def\chfopen #1#2{\chapoddpage {\chapfonts \vbox to 3in{\vfil \hbox to\hsize{\hfil #2} \hbox to\hsize{\hfil #1} \vfil}}% \par\penalty 5000 % } \def\centerchfopen #1{% - \chapoddpage - \vbox{\chapfonts \raggedtitlesettings \hfill #1\hfill}% - \nobreak\bigskip \nobreak +\chapoddpage {\chapfonts \vbox{\hyphenpenalty=10000\tolerance=5000 + \parindent=0pt + \hfill {\rmisbold #1}\hfill}}\bigskip \par\nobreak } \def\CHAPFopen{% \global\let\chapmacro=\chfopen @@ -6560,9 +6510,16 @@ \makedispenvdef{quotation}{\quotationstart} % \def\quotationstart{% - \indentedblockstart % same as \indentedblock, but increase right margin too. + {\parskip=0pt \aboveenvbreak}% because \aboveenvbreak inserts \parskip + \parindent=0pt + % + % @cartouche defines \nonarrowing to inhibit narrowing at next level down. \ifx\nonarrowing\relax + \advance\leftskip by \lispnarrowing \advance\rightskip by \lispnarrowing + \exdentamount = \lispnarrowing + \else + \let\nonarrowing = \relax \fi \parsearg\quotationlabel } @@ -6588,32 +6545,6 @@ \fi } -% @indentedblock is like @quotation, but indents only on the left and -% has no optional argument. -% -\makedispenvdef{indentedblock}{\indentedblockstart} -% -\def\indentedblockstart{% - {\parskip=0pt \aboveenvbreak}% because \aboveenvbreak inserts \parskip - \parindent=0pt - % - % @cartouche defines \nonarrowing to inhibit narrowing at next level down. - \ifx\nonarrowing\relax - \advance\leftskip by \lispnarrowing - \exdentamount = \lispnarrowing - \else - \let\nonarrowing = \relax - \fi -} - -% Keep a nonzero parskip for the environment, since we're doing normal filling. -% -\def\Eindentedblock{% - \par - {\parskip=0pt \afterenvbreak}% -} -\def\Esmallindentedblock{\Eindentedblock} - % LaTeX-like @verbatim...@end verbatim and @verb{...} % If we want to allow any as delimiter, @@ -7092,10 +7023,7 @@ \df \sl \hyphenchar\font=0 % % On the other hand, if an argument has two dashes (for instance), we - % want a way to get ttsl. We used to recommend @var for that, so - % leave the code in, but it's strange for @var to lead to typewriter. - % Nowadays we recommend @code, since the difference between a ttsl hyphen - % and a tt hyphen is pretty tiny. @code also disables ?` !`. + % want a way to get ttsl. Let's try @var for that. \def\var##1{{\setupmarkupstyle{var}\ttslanted{##1}}}% #1% \sl\hyphenchar\font=45 @@ -7879,7 +7807,7 @@ \fi\fi } -% + % @xref, @pxref, and @ref generate cross-references. For \xrefX, #1 is % the node name, #2 the name of the Info cross-reference, #3 the printed % node name, #4 the name of the Info file, #5 the name of the printed @@ -7889,21 +7817,16 @@ \def\xref#1{\putwordSee{} \xrefX[#1,,,,,,,]} \def\ref#1{\xrefX[#1,,,,,,,]} % -\newbox\toprefbox +\newbox\topbox \newbox\printedrefnamebox -\newbox\infofilenamebox \newbox\printedmanualbox % \def\xrefX[#1,#2,#3,#4,#5,#6]{\begingroup \unsepspaces % - % Get args without leading/trailing spaces. \def\printedrefname{\ignorespaces #3}% \setbox\printedrefnamebox = \hbox{\printedrefname\unskip}% % - \def\infofilename{\ignorespaces #4}% - \setbox\infofilenamebox = \hbox{\infofilename\unskip}% - % \def\printedmanual{\ignorespaces #5}% \setbox\printedmanualbox = \hbox{\printedmanual\unskip}% % @@ -7938,18 +7861,11 @@ \turnoffactive \makevalueexpandable % This expands tokens, so do it after making catcode changes, so _ - % etc. don't get their TeX definitions. This ignores all spaces in - % #4, including (wrongly) those in the middle of the filename. + % etc. don't get their TeX definitions. \getfilename{#4}% % - % This (wrongly) does not take account of leading or trailing - % spaces in #1, which should be ignored. \edef\pdfxrefdest{#1}% - \ifx\pdfxrefdest\empty - \def\pdfxrefdest{Top}% no empty targets - \else - \txiescapepdf\pdfxrefdest % escape PDF special chars - \fi + \txiescapepdf\pdfxrefdest % \leavevmode \startlink attr{/Border [0 0 0]}% @@ -7982,7 +7898,7 @@ \printedrefname \fi % - % If the user also gave the printed manual name (fifth arg), append + % if the user also gave the printed manual name (fifth arg), append % "in MANUALNAME". \ifdim \wd\printedmanualbox > 0pt \space \putwordin{} \cite{\printedmanual}% @@ -7997,20 +7913,32 @@ % this is a loss. Therefore, we give the text of the node name % again, so it is as if TeX is seeing it for the first time. % + % Cross-manual reference. Only include the "Section ``foo'' in" if + % the foo is neither missing or Top. Thus, @xref{,,,foo,The Foo Manual} + % outputs simply "see The Foo Manual". \ifdim \wd\printedmanualbox > 0pt - % Cross-manual reference with a printed manual name. + % What is the 7sp about? The idea is that we also want to omit + % the Section part if we would be printing "Top", since they are + % clearly trying to refer to the whole manual. But, this being + % TeX, we can't easily compare strings while ignoring the possible + % spaces before and after in the input. By adding the arbitrary + % 7sp, we make it much less likely that a real node name would + % happen to have the same width as "Top" (e.g., in a monospaced font). + % I hope it will never happen in practice. % - \crossmanualxref{\cite{\printedmanual\unskip}}% - % - \else\ifdim \wd\infofilenamebox > 0pt - % Cross-manual reference with only an info filename (arg 4), no - % printed manual name (arg 5). This is essentially the same as - % the case above; we output the filename, since we have nothing else. + % For the same basic reason, we retypeset the "Top" at every + % reference, since the current font is indeterminate. % - \crossmanualxref{\code{\infofilename\unskip}}% - % + \setbox\topbox = \hbox{Top\kern7sp}% + \setbox2 = \hbox{\ignorespaces \printedrefname \unskip \kern7sp}% + \ifdim \wd2 > 7sp + \ifdim \wd2 = \wd\topbox \else + \putwordSection{} ``\printedrefname'' \putwordin{}\space + \fi + \fi + \cite{\printedmanual}% \else - % Reference within this manual. + % Reference in this manual. % % _ (for example) has to be the character _ for the purposes of the % control sequence corresponding to the node, but it has to expand @@ -8031,37 +7959,11 @@ % % output the `page 3'. \turnoffactive \putwordpage\tie\refx{#1-pg}{}% - \fi\fi + \fi \fi \endlink \endgroup} -% Output a cross-manual xref to #1. Used just above (twice). -% -% Only include the text "Section ``foo'' in" if the foo is neither -% missing or Top. Thus, @xref{,,,foo,The Foo Manual} outputs simply -% "see The Foo Manual", the idea being to refer to the whole manual. -% -% But, this being TeX, we can't easily compare our node name against the -% string "Top" while ignoring the possible spaces before and after in -% the input. By adding the arbitrary 7sp below, we make it much less -% likely that a real node name would have the same width as "Top" (e.g., -% in a monospaced font). Hopefully it will never happen in practice. -% -% For the same basic reason, we retypeset the "Top" at every -% reference, since the current font is indeterminate. -% -\def\crossmanualxref#1{% - \setbox\toprefbox = \hbox{Top\kern7sp}% - \setbox2 = \hbox{\ignorespaces \printedrefname \unskip \kern7sp}% - \ifdim \wd2 > 7sp % nonempty? - \ifdim \wd2 = \wd\toprefbox \else % same as Top? - \putwordSection{} ``\printedrefname'' \putwordin{}\space - \fi - \fi - #1% -} - % This macro is called from \xrefX for the `[nodename]' part of xref % output. It's a separate macro only so it can be changed more easily, % since square brackets don't work well in some documents. Particularly @@ -9993,26 +9895,22 @@ @gdef@otherbackslash{@let\=@realbackslash} % Same as @turnoffactive except outputs \ as {\tt\char`\\} instead of -% the literal character `\'. Also revert - to its normal character, in -% case the active - from code has slipped in. +% the literal character `\'. % -{@catcode`- = @active - @gdef@normalturnoffactive{% - @let-=@normaldash - @let"=@normaldoublequote - @let$=@normaldollar %$ font-lock fix - @let+=@normalplus - @let<=@normalless - @let>=@normalgreater - @let\=@normalbackslash - @let^=@normalcaret - @let_=@normalunderscore - @let|=@normalverticalbar - @let~=@normaltilde - @markupsetuplqdefault - @markupsetuprqdefault - @unsepspaces - } +@def@normalturnoffactive{% + @let"=@normaldoublequote + @let$=@normaldollar %$ font-lock fix + @let+=@normalplus + @let<=@normalless + @let>=@normalgreater + @let\=@normalbackslash + @let^=@normalcaret + @let_=@normalunderscore + @let|=@normalverticalbar + @let~=@normaltilde + @markupsetuplqdefault + @markupsetuprqdefault + @unsepspaces } % Make _ and + \other characters, temporarily. diff -Nru libextractor-1.2/doc/version.texi libextractor-1.3/doc/version.texi --- libextractor-1.2/doc/version.texi 2013-10-19 14:33:18.000000000 +0000 +++ libextractor-1.3/doc/version.texi 2013-12-22 16:50:15.000000000 +0000 @@ -1,4 +1,4 @@ -@set UPDATED 10 October 2012 +@set UPDATED 9 October 2012 @set UPDATED-MONTH October 2012 -@set EDITION 1.2 -@set VERSION 1.2 +@set EDITION 1.3 +@set VERSION 1.3 diff -Nru libextractor-1.2/install-sh libextractor-1.3/install-sh --- libextractor-1.2/install-sh 2013-10-19 14:32:51.000000000 +0000 +++ libextractor-1.3/install-sh 2013-12-22 22:23:29.000000000 +0000 @@ -1,7 +1,7 @@ #!/bin/sh # install - install a program, script, or datafile -scriptversion=2011-11-20.07; # UTC +scriptversion=2011-01-19.21; # UTC # This originates from X11R5 (mit/util/scripts/install.sh), which was # later released in X11R6 (xc/config/util/install.sh) with the @@ -35,7 +35,7 @@ # 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 +# `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 @@ -156,7 +156,7 @@ -s) stripcmd=$stripprog;; -t) dst_arg=$2 - # Protect names problematic for 'test' and other utilities. + # Protect names problematic for `test' and other utilities. case $dst_arg in -* | [=\(\)!]) dst_arg=./$dst_arg;; esac @@ -190,7 +190,7 @@ fi shift # arg dst_arg=$arg - # Protect names problematic for 'test' and other utilities. + # Protect names problematic for `test' and other utilities. case $dst_arg in -* | [=\(\)!]) dst_arg=./$dst_arg;; esac @@ -202,7 +202,7 @@ echo "$0: no input file specified." >&2 exit 1 fi - # It's OK to call 'install-sh -d' without argument. + # It's OK to call `install-sh -d' without argument. # This can happen when creating conditional directories. exit 0 fi @@ -240,7 +240,7 @@ for src do - # Protect names problematic for 'test' and other utilities. + # Protect names problematic for `test' and other utilities. case $src in -* | [=\(\)!]) src=./$src;; esac @@ -354,7 +354,7 @@ 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. + # other-writeable bit of parent directory when it shouldn't. # FreeBSD 6.1 mkdir -m -p sets mode of existing directory. ls_ld_tmpdir=`ls -ld "$tmpdir"` case $ls_ld_tmpdir in diff -Nru libextractor-1.2/ltmain.sh libextractor-1.3/ltmain.sh --- libextractor-1.2/ltmain.sh 2013-10-19 14:32:45.000000000 +0000 +++ libextractor-1.3/ltmain.sh 2013-12-22 22:23:25.000000000 +0000 @@ -70,7 +70,7 @@ # compiler: $LTCC # compiler flags: $LTCFLAGS # linker: $LD (gnu? $with_gnu_ld) -# $progname: (GNU libtool) 2.4.2 Debian-2.4.2-1.3 +# $progname: (GNU libtool) 2.4.2 Debian-2.4.2-1.1 # automake: $automake_version # autoconf: $autoconf_version # @@ -80,7 +80,7 @@ PROGRAM=libtool PACKAGE=libtool -VERSION="2.4.2 Debian-2.4.2-1.3" +VERSION="2.4.2 Debian-2.4.2-1.1" TIMESTAMP="" package_revision=1.3337 diff -Nru libextractor-1.2/m4/Makefile.in libextractor-1.3/m4/Makefile.in --- libextractor-1.2/m4/Makefile.in 2013-10-19 14:32:52.000000000 +0000 +++ libextractor-1.3/m4/Makefile.in 2013-12-23 11:15:27.000000000 +0000 @@ -1,8 +1,9 @@ -# Makefile.in generated by automake 1.14 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2013 Free Software Foundation, Inc. - +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 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. @@ -14,51 +15,23 @@ @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 \ +am__make_dryrun = \ + { \ + am__dry=no; \ 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;; \ + echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \ + | grep '^AM OK$$' >/dev/null || am__dry=yes;; \ + *) \ + for am__flg in $$MAKEFLAGS; do \ + case $$am__flg in \ + *=*|--*) ;; \ + *n*) am__dry=yes; break;; \ + esac; \ + done;; \ 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)) + test $$am__dry = yes; \ + } pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ @@ -79,7 +52,7 @@ host_triplet = @host@ target_triplet = @target@ subdir = m4 -DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/abi-gsf.m4 \ $(top_srcdir)/m4/ac_define_dir.m4 \ @@ -100,18 +73,12 @@ 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_GEN_0 = @echo " GEN " $@; 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 = \ @@ -119,7 +86,6 @@ n|no|NO) false;; \ *) (install-info --version) >/dev/null 2>&1;; \ esac -am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AMTAR = @AMTAR@ @@ -378,11 +344,11 @@ clean-libtool: -rm -rf .libs _libs -tags TAGS: - -ctags CTAGS: +tags: TAGS +TAGS: -cscope cscopelist: +ctags: CTAGS +CTAGS: distdir: $(DISTFILES) @@ -518,16 +484,15 @@ .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-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 + distclean distclean-generic distclean-libtool 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 maintainer-clean \ + maintainer-clean-generic mostlyclean mostlyclean-generic \ + mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am # Tell versions [3.59,3.63) of GNU make to not export all variables. diff -Nru libextractor-1.2/m4/libtool.m4 libextractor-1.3/m4/libtool.m4 --- libextractor-1.2/m4/libtool.m4 2013-10-19 14:32:45.000000000 +0000 +++ libextractor-1.3/m4/libtool.m4 2013-12-22 22:23:25.000000000 +0000 @@ -1324,14 +1324,7 @@ LD="${LD-ld} -m elf_i386_fbsd" ;; x86_64-*linux*) - case `/usr/bin/file conftest.o` in - *x86-64*) - LD="${LD-ld} -m elf32_x86_64" - ;; - *) - LD="${LD-ld} -m elf_i386" - ;; - esac + LD="${LD-ld} -m elf_i386" ;; ppc64-*linux*|powerpc64-*linux*) LD="${LD-ld} -m elf32ppclinux" @@ -1695,8 +1688,7 @@ ;; *) lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null` - if test -n "$lt_cv_sys_max_cmd_len" && \ - test undefined != "$lt_cv_sys_max_cmd_len"; then + 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 diff -Nru libextractor-1.2/missing libextractor-1.3/missing --- libextractor-1.2/missing 2013-10-19 14:32:51.000000000 +0000 +++ libextractor-1.3/missing 2013-12-22 22:23:29.000000000 +0000 @@ -1,10 +1,11 @@ #! /bin/sh -# Common wrapper for a few potentially missing GNU programs. +# Common stub for a few missing GNU programs while installing. -scriptversion=2012-06-26.16; # UTC +scriptversion=2012-01-06.13; # UTC -# Copyright (C) 1996-2013 Free Software Foundation, Inc. -# Originally written by Fran,cois Pinard , 1996. +# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006, +# 2008, 2009, 2010, 2011, 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 @@ -25,40 +26,68 @@ # 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" + echo 1>&2 "Try \`$0 --help' for more information" exit 1 fi -case $1 in +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 - --is-lightweight) - # Used by our autoconf macros to check whether the available missing - # script is modern enough. - exit 0 - ;; +msg="missing on your system" - --run) - # Back-compat with the calling convention used by older automake. - shift - ;; +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]... -Run 'PROGRAM [ARGUMENT]...', returning a proper advice when this fails due -to PROGRAM being missing or too old. +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 autoconf autoheader autom4te automake makeinfo - bison yacc flex lex help2man + 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. +Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and +\`g' are ignored when checking the name. Send bug reports to ." exit $? @@ -70,141 +99,228 @@ ;; -*) - echo 1>&2 "$0: unknown '$1' option" - echo 1>&2 "Try '$0 --help' for more information" + echo 1>&2 "$0: Unknown \`$1' option" + echo 1>&2 "Try \`$0 --help' for more information" exit 1 ;; esac -# Run the given program, remember its exit status. -"$@"; st=$? +# 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 it succeeded, we are done. -test $st -eq 0 && exit 0 + *) + 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 -# Also exit now if we it failed (or wasn't found), and '--version' was -# passed; such an option is passed most likely to detect whether the -# program is present and works. -case $2 in --version|--help) exit $st;; esac - -# Exit code 63 means version mismatch. This often happens when the user -# tries to use an ancient version of a tool on a file that requires a -# minimum version. -if test $st -eq 63; then - msg="probably too old" -elif test $st -eq 127; then - # Program was missing. - msg="missing on your system" -else - # Program was found and executed, but failed. Give up. - exit $st -fi +# 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 -perl_URL=http://www.perl.org/ -flex_URL=http://flex.sourceforge.net/ -gnu_software_URL=http://www.gnu.org/software - -program_details () -{ - case $1 in - aclocal|automake) - echo "The '$1' program is part of the GNU Automake package:" - echo "<$gnu_software_URL/automake>" - echo "It also requires GNU Autoconf, GNU m4 and Perl in order to run:" - echo "<$gnu_software_URL/autoconf>" - echo "<$gnu_software_URL/m4/>" - echo "<$perl_URL>" - ;; - autoconf|autom4te|autoheader) - echo "The '$1' program is part of the GNU Autoconf package:" - echo "<$gnu_software_URL/autoconf/>" - echo "It also requires GNU m4 and Perl in order to run:" - echo "<$gnu_software_URL/m4/>" - echo "<$perl_URL>" - ;; - esac -} - -give_advice () -{ - # Normalize program name to check for. - normalized_program=`echo "$1" | sed ' - s/^gnu-//; t - s/^gnu//; t - s/^g//; t'` - - printf '%s\n' "'$1' is $msg." - - configure_deps="'configure.ac' or m4 files included by 'configure.ac'" - case $normalized_program in - autoconf*) - echo "You should only need it if you modified 'configure.ac'," - echo "or m4 files included by it." - program_details 'autoconf' - ;; - autoheader*) - echo "You should only need it if you modified 'acconfig.h' or" - echo "$configure_deps." - program_details 'autoheader' - ;; - automake*) - echo "You should only need it if you modified 'Makefile.am' or" - echo "$configure_deps." - program_details 'automake' - ;; - aclocal*) - echo "You should only need it if you modified 'acinclude.m4' or" - echo "$configure_deps." - program_details 'aclocal' - ;; - autom4te*) - echo "You might have modified some maintainer files that require" - echo "the 'automa4te' program to be rebuilt." - program_details 'autom4te' - ;; - bison*|yacc*) - echo "You should only need it if you modified a '.y' file." - echo "You may want to install the GNU Bison package:" - echo "<$gnu_software_URL/bison/>" - ;; - lex*|flex*) - echo "You should only need it if you modified a '.l' file." - echo "You may want to install the Fast Lexical Analyzer package:" - echo "<$flex_URL>" - ;; - help2man*) - echo "You should only need it if you modified a dependency" \ - "of a man page." - echo "You may want to install the GNU Help2man package:" - echo "<$gnu_software_URL/help2man/>" - ;; - makeinfo*) - echo "You should only need it if you modified a '.texi' file, or" - echo "any other file indirectly affecting the aspect of the manual." - echo "You might want to install the Texinfo package:" - echo "<$gnu_software_URL/texinfo/>" - echo "The spurious makeinfo call might also be the consequence of" - echo "using a buggy 'make' (AIX, DU, IRIX), in which case you might" - echo "want to install GNU make:" - echo "<$gnu_software_URL/make/>" - ;; - *) - echo "You might have modified some files without having the proper" - echo "tools for further handling them. Check the 'README' file, it" - echo "often tells you about the needed prerequisites for installing" - echo "this package. You may also peek at any GNU archive site, in" - echo "case some other package contains this missing '$1' program." - ;; - esac -} - -give_advice "$1" | sed -e '1s/^/WARNING: /' \ - -e '2,$s/^/ /' >&2 - -# Propagate the correct exit status (expected to be 127 for a program -# not found, 63 for a program that failed due to version mismatch). -exit $st +exit 0 # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp) Binary files /tmp/bxY_VFQYc8/libextractor-1.2/po/de.gmo and /tmp/B9SpZIFhbr/libextractor-1.3/po/de.gmo differ diff -Nru libextractor-1.2/po/de.po libextractor-1.3/po/de.po --- libextractor-1.2/po/de.po 2013-10-19 14:33:51.000000000 +0000 +++ libextractor-1.3/po/de.po 2013-12-22 22:11:22.000000000 +0000 @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: libextractor 0.5.14\n" "Report-Msgid-Bugs-To: libextractor@gnu.org\n" -"POT-Creation-Date: 2013-10-19 16:33+0200\n" +"POT-Creation-Date: 2013-12-22 23:11+0100\n" "PO-Revision-Date: 2007-03-23 23:16+0100\n" "Last-Translator: Nils Durner \n" "Language-Team: German \n" @@ -143,7 +143,7 @@ msgid "Keywords for file %s:\n" msgstr "Schlüsserwörter für die Datei %s:\n" -#: src/main/extractor.c:674 +#: src/main/extractor.c:676 #, c-format msgid "Initialization of plugin mechanism failed: %s!\n" msgstr "Initialisierung des Plugin-Mechanismus' ist fehlgeschlagen: %s.\n" @@ -1929,7 +1929,15 @@ msgid "duration of a subtitle stream" msgstr "" -#: src/main/extractor_metatypes.c:551 src/main/extractor_metatypes.c:552 +#: src/main/extractor_metatypes.c:551 +msgid "audio preview" +msgstr "" + +#: src/main/extractor_metatypes.c:552 +msgid "a preview of the file audio stream" +msgstr "" + +#: src/main/extractor_metatypes.c:554 src/main/extractor_metatypes.c:555 msgid "last" msgstr "" Binary files /tmp/bxY_VFQYc8/libextractor-1.2/po/fr.gmo and /tmp/B9SpZIFhbr/libextractor-1.3/po/fr.gmo differ diff -Nru libextractor-1.2/po/fr.po libextractor-1.3/po/fr.po --- libextractor-1.2/po/fr.po 2013-10-19 14:33:51.000000000 +0000 +++ libextractor-1.3/po/fr.po 2013-12-22 22:11:22.000000000 +0000 @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: libextractor-0.5.20a\n" "Report-Msgid-Bugs-To: libextractor@gnu.org\n" -"POT-Creation-Date: 2013-10-19 16:33+0200\n" +"POT-Creation-Date: 2013-12-22 23:11+0100\n" "PO-Revision-Date: 2008-08-24 19:08+0100\n" "Last-Translator: Nicolas Provost \n" "Language-Team: French \n" @@ -141,7 +141,7 @@ msgid "Keywords for file %s:\n" msgstr "Mots-clés pour le fichier %s:\n" -#: src/main/extractor.c:674 +#: src/main/extractor.c:676 #, c-format msgid "Initialization of plugin mechanism failed: %s!\n" msgstr "Echec de l'initialisation du module %s !\n" @@ -1924,7 +1924,15 @@ msgid "duration of a subtitle stream" msgstr "" -#: src/main/extractor_metatypes.c:551 src/main/extractor_metatypes.c:552 +#: src/main/extractor_metatypes.c:551 +msgid "audio preview" +msgstr "" + +#: src/main/extractor_metatypes.c:552 +msgid "a preview of the file audio stream" +msgstr "" + +#: src/main/extractor_metatypes.c:554 src/main/extractor_metatypes.c:555 msgid "last" msgstr "" Binary files /tmp/bxY_VFQYc8/libextractor-1.2/po/ga.gmo and /tmp/B9SpZIFhbr/libextractor-1.3/po/ga.gmo differ diff -Nru libextractor-1.2/po/ga.po libextractor-1.3/po/ga.po --- libextractor-1.2/po/ga.po 2013-10-19 14:33:51.000000000 +0000 +++ libextractor-1.3/po/ga.po 2013-12-22 22:11:22.000000000 +0000 @@ -6,7 +6,7 @@ msgstr "" "Project-Id-Version: libextractor 0.5.20\n" "Report-Msgid-Bugs-To: libextractor@gnu.org\n" -"POT-Creation-Date: 2013-10-19 16:33+0200\n" +"POT-Creation-Date: 2013-12-22 23:11+0100\n" "PO-Revision-Date: 2008-03-21 20:46-0700\n" "Last-Translator: Kevin Scannell \n" "Language-Team: Irish \n" @@ -139,7 +139,7 @@ msgid "Keywords for file %s:\n" msgstr "Lorgfhocail do chomhad %s:\n" -#: src/main/extractor.c:674 +#: src/main/extractor.c:676 #, c-format msgid "Initialization of plugin mechanism failed: %s!\n" msgstr "Theip ar thúsú meicníocht na mbreiseán: %s!\n" @@ -1925,7 +1925,15 @@ msgid "duration of a subtitle stream" msgstr "" -#: src/main/extractor_metatypes.c:551 src/main/extractor_metatypes.c:552 +#: src/main/extractor_metatypes.c:551 +msgid "audio preview" +msgstr "" + +#: src/main/extractor_metatypes.c:552 +msgid "a preview of the file audio stream" +msgstr "" + +#: src/main/extractor_metatypes.c:554 src/main/extractor_metatypes.c:555 msgid "last" msgstr "" Binary files /tmp/bxY_VFQYc8/libextractor-1.2/po/it.gmo and /tmp/B9SpZIFhbr/libextractor-1.3/po/it.gmo differ diff -Nru libextractor-1.2/po/it.po libextractor-1.3/po/it.po --- libextractor-1.2/po/it.po 2013-10-19 14:33:51.000000000 +0000 +++ libextractor-1.3/po/it.po 2013-12-22 22:11:22.000000000 +0000 @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: libextractor-0.6.0\n" "Report-Msgid-Bugs-To: libextractor@gnu.org\n" -"POT-Creation-Date: 2013-10-19 16:33+0200\n" +"POT-Creation-Date: 2013-12-22 23:11+0100\n" "PO-Revision-Date: 2010-09-30 23:41+0200\n" "Last-Translator: Sergio Zanchetta \n" "Language-Team: Italian \n" @@ -136,7 +136,7 @@ msgid "Keywords for file %s:\n" msgstr "" -#: src/main/extractor.c:674 +#: src/main/extractor.c:676 #, c-format msgid "Initialization of plugin mechanism failed: %s!\n" msgstr "" @@ -1847,7 +1847,16 @@ msgid "duration of a subtitle stream" msgstr "" -#: src/main/extractor_metatypes.c:551 src/main/extractor_metatypes.c:552 +#: src/main/extractor_metatypes.c:551 +msgid "audio preview" +msgstr "" + +#: src/main/extractor_metatypes.c:552 +#, fuzzy +msgid "a preview of the file audio stream" +msgstr "titolo del lavoro" + +#: src/main/extractor_metatypes.c:554 src/main/extractor_metatypes.c:555 msgid "last" msgstr "" diff -Nru libextractor-1.2/po/libextractor.pot libextractor-1.3/po/libextractor.pot --- libextractor-1.2/po/libextractor.pot 2013-10-19 14:33:50.000000000 +0000 +++ libextractor-1.3/po/libextractor.pot 2013-12-22 22:11:22.000000000 +0000 @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: libextractor@gnu.org\n" -"POT-Creation-Date: 2013-10-19 16:33+0200\n" +"POT-Creation-Date: 2013-12-22 23:11+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -131,7 +131,7 @@ msgid "Keywords for file %s:\n" msgstr "" -#: src/main/extractor.c:674 +#: src/main/extractor.c:676 #, c-format msgid "Initialization of plugin mechanism failed: %s!\n" msgstr "" @@ -1818,7 +1818,15 @@ msgid "duration of a subtitle stream" msgstr "" -#: src/main/extractor_metatypes.c:551 src/main/extractor_metatypes.c:552 +#: src/main/extractor_metatypes.c:551 +msgid "audio preview" +msgstr "" + +#: src/main/extractor_metatypes.c:552 +msgid "a preview of the file audio stream" +msgstr "" + +#: src/main/extractor_metatypes.c:554 src/main/extractor_metatypes.c:555 msgid "last" msgstr "" Binary files /tmp/bxY_VFQYc8/libextractor-1.2/po/nl.gmo and /tmp/B9SpZIFhbr/libextractor-1.3/po/nl.gmo differ diff -Nru libextractor-1.2/po/nl.po libextractor-1.3/po/nl.po --- libextractor-1.2/po/nl.po 2013-10-19 14:33:51.000000000 +0000 +++ libextractor-1.3/po/nl.po 2013-12-22 22:11:22.000000000 +0000 @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: libextractor-1.0.0-pre1\n" "Report-Msgid-Bugs-To: libextractor@gnu.org\n" -"POT-Creation-Date: 2013-10-19 16:33+0200\n" +"POT-Creation-Date: 2013-12-22 23:11+0100\n" "PO-Revision-Date: 2013-08-21 22:41+0200\n" "Last-Translator: Benno Schulenberg \n" "Language-Team: Dutch \n" @@ -143,7 +143,7 @@ msgid "Keywords for file %s:\n" msgstr "Trefwoorden voor bestand %s:\n" -#: src/main/extractor.c:674 +#: src/main/extractor.c:676 #, c-format msgid "Initialization of plugin mechanism failed: %s!\n" msgstr "Initialisatie van plugin-mechanisme is mislukt: %s\n" @@ -1865,7 +1865,17 @@ msgid "duration of a subtitle stream" msgstr "speelduur van een ondertitelings-stream" -#: src/main/extractor_metatypes.c:551 src/main/extractor_metatypes.c:552 +#: src/main/extractor_metatypes.c:551 +#, fuzzy +msgid "audio preview" +msgstr "audio-bitsnelheid" + +#: src/main/extractor_metatypes.c:552 +#, fuzzy +msgid "a preview of the file audio stream" +msgstr "... van het audiospoor" + +#: src/main/extractor_metatypes.c:554 src/main/extractor_metatypes.c:555 #, fuzzy msgid "last" msgstr "laatste" Binary files /tmp/bxY_VFQYc8/libextractor-1.2/po/pl.gmo and /tmp/B9SpZIFhbr/libextractor-1.3/po/pl.gmo differ diff -Nru libextractor-1.2/po/pl.po libextractor-1.3/po/pl.po --- libextractor-1.2/po/pl.po 2013-10-19 14:33:51.000000000 +0000 +++ libextractor-1.3/po/pl.po 2013-12-22 22:11:22.000000000 +0000 @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: libextractor 1.0.0-pre1\n" "Report-Msgid-Bugs-To: libextractor@gnu.org\n" -"POT-Creation-Date: 2013-10-19 16:33+0200\n" +"POT-Creation-Date: 2013-12-22 23:11+0100\n" "PO-Revision-Date: 2012-12-01 15:45+0100\n" "Last-Translator: Jakub Bogusz \n" "Language-Team: Polish \n" @@ -138,7 +138,7 @@ msgid "Keywords for file %s:\n" msgstr "SÅ‚owa kluczowe dla pliku %s:\n" -#: src/main/extractor.c:674 +#: src/main/extractor.c:676 #, c-format msgid "Initialization of plugin mechanism failed: %s!\n" msgstr "Inicjalizacja mechanizmu wtyczek nie powiodÅ‚a siÄ™: %s!\n" @@ -1853,7 +1853,17 @@ msgid "duration of a subtitle stream" msgstr "czas trwania strumienia napisów" -#: src/main/extractor_metatypes.c:551 src/main/extractor_metatypes.c:552 +#: src/main/extractor_metatypes.c:551 +#, fuzzy +msgid "audio preview" +msgstr "prÄ™dkosć transmisji dźwiÄ™ku" + +#: src/main/extractor_metatypes.c:552 +#, fuzzy +msgid "a preview of the file audio stream" +msgstr "czÄ™stotliwość próbkowania Å›cieżki dźwiÄ™kowej" + +#: src/main/extractor_metatypes.c:554 src/main/extractor_metatypes.c:555 msgid "last" msgstr "koniec" Binary files /tmp/bxY_VFQYc8/libextractor-1.2/po/ro.gmo and /tmp/B9SpZIFhbr/libextractor-1.3/po/ro.gmo differ diff -Nru libextractor-1.2/po/ro.po libextractor-1.3/po/ro.po --- libextractor-1.2/po/ro.po 2013-10-19 14:33:51.000000000 +0000 +++ libextractor-1.3/po/ro.po 2013-12-22 22:11:22.000000000 +0000 @@ -9,7 +9,7 @@ msgstr "" "Project-Id-Version: libextractor 0.5.3\n" "Report-Msgid-Bugs-To: libextractor@gnu.org\n" -"POT-Creation-Date: 2013-10-19 16:33+0200\n" +"POT-Creation-Date: 2013-12-22 23:11+0100\n" "PO-Revision-Date: 2005-08-16 12:00-0500\n" "Last-Translator: Laurentiu Buzdugan \n" "Language-Team: Romanian \n" @@ -142,7 +142,7 @@ msgid "Keywords for file %s:\n" msgstr "Cuvinte cheie pentru fiºier %s:\n" -#: src/main/extractor.c:674 +#: src/main/extractor.c:676 #, c-format msgid "Initialization of plugin mechanism failed: %s!\n" msgstr "iniþializare mecanismului de plugin a eºuat: %s!\n" @@ -1922,7 +1922,16 @@ msgid "duration of a subtitle stream" msgstr "" -#: src/main/extractor_metatypes.c:551 src/main/extractor_metatypes.c:552 +#: src/main/extractor_metatypes.c:551 +msgid "audio preview" +msgstr "" + +#: src/main/extractor_metatypes.c:552 +#, fuzzy +msgid "a preview of the file audio stream" +msgstr "Dispozitivul nu este un flux (stream)" + +#: src/main/extractor_metatypes.c:554 src/main/extractor_metatypes.c:555 msgid "last" msgstr "" @@ -2841,9 +2850,6 @@ #~ msgid "Bad font file fmt" #~ msgstr "Format fiºier font incorect" -#~ msgid "Device not a stream" -#~ msgstr "Dispozitivul nu este un flux (stream)" - #~ msgid "No data (for no delay io)" #~ msgstr "Nici o datã (pentru intrare/ieºire fãrã întârziere)" Binary files /tmp/bxY_VFQYc8/libextractor-1.2/po/rw.gmo and /tmp/B9SpZIFhbr/libextractor-1.3/po/rw.gmo differ diff -Nru libextractor-1.2/po/rw.po libextractor-1.3/po/rw.po --- libextractor-1.2/po/rw.po 2013-10-19 14:33:51.000000000 +0000 +++ libextractor-1.3/po/rw.po 2013-12-22 22:11:22.000000000 +0000 @@ -16,7 +16,7 @@ msgstr "" "Project-Id-Version: libextractor 0.4.2\n" "Report-Msgid-Bugs-To: libextractor@gnu.org\n" -"POT-Creation-Date: 2013-10-19 16:33+0200\n" +"POT-Creation-Date: 2013-12-22 23:11+0100\n" "PO-Revision-Date: 2005-04-04 10:55-0700\n" "Last-Translator: Steven Michael Murphy \n" "Language-Team: Kinyarwanda \n" @@ -149,7 +149,7 @@ msgid "Keywords for file %s:\n" msgstr "kugirango IDOSIYE" -#: src/main/extractor.c:674 +#: src/main/extractor.c:676 #, fuzzy, c-format msgid "Initialization of plugin mechanism failed: %s!\n" msgstr "Bya Byanze" @@ -2148,7 +2148,16 @@ msgid "duration of a subtitle stream" msgstr "Uwasohoye inyandiko" -#: src/main/extractor_metatypes.c:551 src/main/extractor_metatypes.c:552 +#: src/main/extractor_metatypes.c:551 +msgid "audio preview" +msgstr "" + +#: src/main/extractor_metatypes.c:552 +#, fuzzy +msgid "a preview of the file audio stream" +msgstr "Uwasohoye inyandiko" + +#: src/main/extractor_metatypes.c:554 src/main/extractor_metatypes.c:555 #, fuzzy msgid "last" msgstr "Umuhanzi" Binary files /tmp/bxY_VFQYc8/libextractor-1.2/po/sv.gmo and /tmp/B9SpZIFhbr/libextractor-1.3/po/sv.gmo differ diff -Nru libextractor-1.2/po/sv.po libextractor-1.3/po/sv.po --- libextractor-1.2/po/sv.po 2013-10-19 14:33:51.000000000 +0000 +++ libextractor-1.3/po/sv.po 2013-12-22 22:11:22.000000000 +0000 @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: libextractor 0.5.22\n" "Report-Msgid-Bugs-To: libextractor@gnu.org\n" -"POT-Creation-Date: 2013-10-19 16:33+0200\n" +"POT-Creation-Date: 2013-12-22 23:11+0100\n" "PO-Revision-Date: 2009-05-12 17:45+0100\n" "Last-Translator: Daniel Nylander \n" "Language-Team: Swedish \n" @@ -136,7 +136,7 @@ msgid "Keywords for file %s:\n" msgstr "Nyckelord för filen %s:\n" -#: src/main/extractor.c:674 +#: src/main/extractor.c:676 #, c-format msgid "Initialization of plugin mechanism failed: %s!\n" msgstr "Initiering av insticksmekanism misslyckades: %s!\n" @@ -1935,7 +1935,15 @@ msgid "duration of a subtitle stream" msgstr "" -#: src/main/extractor_metatypes.c:551 src/main/extractor_metatypes.c:552 +#: src/main/extractor_metatypes.c:551 +msgid "audio preview" +msgstr "" + +#: src/main/extractor_metatypes.c:552 +msgid "a preview of the file audio stream" +msgstr "" + +#: src/main/extractor_metatypes.c:554 src/main/extractor_metatypes.c:555 msgid "last" msgstr "" Binary files /tmp/bxY_VFQYc8/libextractor-1.2/po/uk.gmo and /tmp/B9SpZIFhbr/libextractor-1.3/po/uk.gmo differ diff -Nru libextractor-1.2/po/uk.po libextractor-1.3/po/uk.po --- libextractor-1.2/po/uk.po 2013-10-19 14:33:51.000000000 +0000 +++ libextractor-1.3/po/uk.po 2013-12-22 22:11:22.000000000 +0000 @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: libextractor 1.0.0-pre1\n" "Report-Msgid-Bugs-To: libextractor@gnu.org\n" -"POT-Creation-Date: 2013-10-19 16:33+0200\n" +"POT-Creation-Date: 2013-12-22 23:11+0100\n" "PO-Revision-Date: 2012-09-05 22:36+0300\n" "Last-Translator: Yuri Chornoivan \n" "Language-Team: Ukrainian \n" @@ -151,7 +151,7 @@ msgid "Keywords for file %s:\n" msgstr "Ключові Ñлова Ð´Ð»Ñ Ñ„Ð°Ð¹Ð»Ð° %s:\n" -#: src/main/extractor.c:674 +#: src/main/extractor.c:676 #, c-format msgid "Initialization of plugin mechanism failed: %s!\n" msgstr "Помилка під Ñ‡Ð°Ñ Ñпроби ініціалізації механізму додатків: %s!\n" @@ -1861,7 +1861,17 @@ msgid "duration of a subtitle stream" msgstr "триваліÑÑ‚ÑŒ потоку Ñубтитрів" -#: src/main/extractor_metatypes.c:551 src/main/extractor_metatypes.c:552 +#: src/main/extractor_metatypes.c:551 +#, fuzzy +msgid "audio preview" +msgstr "бітова швидкіÑÑ‚ÑŒ звуку" + +#: src/main/extractor_metatypes.c:552 +#, fuzzy +msgid "a preview of the file audio stream" +msgstr "чаÑтота диÑкретизації звукових даних" + +#: src/main/extractor_metatypes.c:554 src/main/extractor_metatypes.c:555 msgid "last" msgstr "триваліÑÑ‚ÑŒ" Binary files /tmp/bxY_VFQYc8/libextractor-1.2/po/vi.gmo and /tmp/B9SpZIFhbr/libextractor-1.3/po/vi.gmo differ diff -Nru libextractor-1.2/po/vi.po libextractor-1.3/po/vi.po --- libextractor-1.2/po/vi.po 2013-10-19 14:33:51.000000000 +0000 +++ libextractor-1.3/po/vi.po 2013-12-22 22:11:22.000000000 +0000 @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: libextractor 0.6.0\n" "Report-Msgid-Bugs-To: libextractor@gnu.org\n" -"POT-Creation-Date: 2013-10-19 16:33+0200\n" +"POT-Creation-Date: 2013-12-22 23:11+0100\n" "PO-Revision-Date: 2010-02-11 00:13+0930\n" "Last-Translator: Clytie Siddall \n" "Language-Team: Vietnamese \n" @@ -145,7 +145,7 @@ msgid "Keywords for file %s:\n" msgstr "Từ khoá cho tập tin %s:\n" -#: src/main/extractor.c:674 +#: src/main/extractor.c:676 #, c-format msgid "Initialization of plugin mechanism failed: %s!\n" msgstr "Việc khởi Ä‘á»™ng cÆ¡ chế cầm phít bị lá»—i: %s\n" @@ -1887,7 +1887,16 @@ msgid "duration of a subtitle stream" msgstr "" -#: src/main/extractor_metatypes.c:551 src/main/extractor_metatypes.c:552 +#: src/main/extractor_metatypes.c:551 +msgid "audio preview" +msgstr "" + +#: src/main/extractor_metatypes.c:552 +#, fuzzy +msgid "a preview of the file audio stream" +msgstr "tên của ngÆ°á»i đạo diá»…n" + +#: src/main/extractor_metatypes.c:554 src/main/extractor_metatypes.c:555 msgid "last" msgstr "cuối" diff -Nru libextractor-1.2/src/Makefile.in libextractor-1.3/src/Makefile.in --- libextractor-1.2/src/Makefile.in 2013-10-19 14:32:52.000000000 +0000 +++ libextractor-1.3/src/Makefile.in 2013-12-23 11:15:27.000000000 +0000 @@ -1,8 +1,9 @@ -# Makefile.in generated by automake 1.14 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2013 Free Software Foundation, Inc. - +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 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. @@ -14,51 +15,23 @@ @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 \ +am__make_dryrun = \ + { \ + am__dry=no; \ 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;; \ + echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \ + | grep '^AM OK$$' >/dev/null || am__dry=yes;; \ + *) \ + for am__flg in $$MAKEFLAGS; do \ + case $$am__flg in \ + *=*|--*) ;; \ + *n*) am__dry=yes; break;; \ + esac; \ + done;; \ 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)) + test $$am__dry = yes; \ + } pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ @@ -79,7 +52,7 @@ host_triplet = @host@ target_triplet = @target@ subdir = src -DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/abi-gsf.m4 \ $(top_srcdir)/m4/ac_define_dir.m4 \ @@ -100,28 +73,21 @@ 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_GEN_0 = @echo " GEN " $@; 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 +RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ + html-recursive info-recursive install-data-recursive \ + install-dvi-recursive install-exec-recursive \ + install-html-recursive install-info-recursive \ + install-pdf-recursive install-ps-recursive install-recursive \ + installcheck-recursive installdirs-recursive pdf-recursive \ + ps-recursive uninstall-recursive am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ @@ -129,29 +95,9 @@ 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 \ +AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \ + $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags 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 = include intlemu main common plugins . @@ -406,25 +352,22 @@ -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; \ +# into them and run `make' without going through this Makefile. +# To change the values of `make' variables: instead of editing Makefiles, +# (1) if the variable is set in `config.status', edit `config.status' +# (which will cause the Makefiles to be regenerated when you run `make'); +# (2) otherwise, pass the desired values on the `make' command line. +$(RECURSIVE_TARGETS): + @fail= failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ dot_seen=no; \ target=`echo $@ | sed s/-recursive//`; \ - case "$@" in \ - distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ - *) list='$(SUBDIRS)' ;; \ - esac; \ - for subdir in $$list; do \ + list='$(SUBDIRS)'; for subdir in $$list; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ dot_seen=yes; \ @@ -439,12 +382,57 @@ $(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 +$(RECURSIVE_CLEAN_TARGETS): + @fail= failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ + dot_seen=no; \ + case "$@" in \ + distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ + *) list='$(SUBDIRS)' ;; \ + esac; \ + rev=''; for subdir in $$list; do \ + if test "$$subdir" = "."; then :; else \ + rev="$$subdir $$rev"; \ + fi; \ + done; \ + rev="$$rev ."; \ + target=`echo $@ | sed s/-recursive//`; \ + for subdir in $$rev; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || eval $$failcom; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done +ctags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ + done + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + mkid -fID $$unique +tags: TAGS -tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) set x; \ here=`pwd`; \ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ @@ -460,7 +448,12 @@ set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ fi; \ done; \ - $(am__define_uniq_tagged_files); \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ @@ -472,11 +465,15 @@ $$unique; \ fi; \ fi -ctags: ctags-recursive - -CTAGS: ctags -ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) - $(am__define_uniq_tagged_files); \ +ctags: CTAGS +CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique @@ -485,21 +482,6 @@ 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 @@ -660,20 +642,22 @@ uninstall-am: -.MAKE: $(am__recursive_targets) install-am install-strip +.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \ + install-am install-strip tags-recursive -.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 +.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ + all all-am check check-am clean clean-generic clean-libtool \ + ctags ctags-recursive 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-recursive \ + uninstall uninstall-am # Tell versions [3.59,3.63) of GNU make to not export all variables. diff -Nru libextractor-1.2/src/common/Makefile.in libextractor-1.3/src/common/Makefile.in --- libextractor-1.2/src/common/Makefile.in 2013-10-19 14:32:52.000000000 +0000 +++ libextractor-1.3/src/common/Makefile.in 2013-12-23 11:15:27.000000000 +0000 @@ -1,8 +1,9 @@ -# Makefile.in generated by automake 1.14 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2013 Free Software Foundation, Inc. - +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 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. @@ -15,51 +16,23 @@ @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 \ +am__make_dryrun = \ + { \ + am__dry=no; \ 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;; \ + echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \ + | grep '^AM OK$$' >/dev/null || am__dry=yes;; \ + *) \ + for am__flg in $$MAKEFLAGS; do \ + case $$am__flg in \ + *=*|--*) ;; \ + *n*) am__dry=yes; break;; \ + esac; \ + done;; \ 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)) + test $$am__dry = yes; \ + } pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ @@ -80,8 +53,7 @@ host_triplet = @host@ target_triplet = @target@ subdir = src/common -DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \ - $(top_srcdir)/depcomp +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/abi-gsf.m4 \ $(top_srcdir)/m4/ac_define_dir.m4 \ @@ -142,23 +114,10 @@ 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 = libextractor_common_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ $(AM_CFLAGS) $(CFLAGS) $(libextractor_common_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 @@ -171,16 +130,20 @@ $(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 = +am__v_CC_0 = @echo " CC " $@; +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) +am__v_at_0 = @ 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 = +am__v_CCLD_0 = @echo " CCLD " $@; +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) +am__v_GEN_0 = @echo " GEN " $@; SOURCES = $(libextractor_common_la_SOURCES) DIST_SOURCES = $(am__libextractor_common_la_SOURCES_DIST) am__can_run_installinfo = \ @@ -188,23 +151,6 @@ 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) @@ -445,7 +391,6 @@ $(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=; \ @@ -472,15 +417,12 @@ 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}; \ - } - + @list='$(lib_LTLIBRARIES)'; for p in $$list; do \ + dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ + test "$$dir" != "$$p" || dir=.; \ + echo "rm -f \"$${dir}/so_locations\""; \ + rm -f "$${dir}/so_locations"; \ + done libextractor_common.la: $(libextractor_common_la_OBJECTS) $(libextractor_common_la_DEPENDENCIES) $(EXTRA_libextractor_common_la_DEPENDENCIES) $(AM_V_CCLD)$(libextractor_common_la_LINK) -rpath $(libdir) $(libextractor_common_la_OBJECTS) $(libextractor_common_la_LIBADD) $(LIBS) @@ -498,14 +440,14 @@ @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 $@ $< +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c $< .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) '$<'` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'` .c.lo: @am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -520,15 +462,26 @@ clean-libtool: -rm -rf .libs _libs -ID: $(am__tagged_files) - $(am__define_uniq_tagged_files); mkid -fID $$unique -tags: tags-am -TAGS: tags +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + mkid -fID $$unique +tags: TAGS -tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) set x; \ here=`pwd`; \ - $(am__define_uniq_tagged_files); \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ @@ -540,11 +493,15 @@ $$unique; \ fi; \ fi -ctags: ctags-am - -CTAGS: ctags -ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) - $(am__define_uniq_tagged_files); \ +ctags: CTAGS +CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique @@ -553,21 +510,6 @@ 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 @@ -712,19 +654,19 @@ .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 \ +.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ + clean-libLTLIBRARIES clean-libtool ctags distclean \ + distclean-compile distclean-generic distclean-libtool \ + distclean-tags distdir dvi dvi-am html html-am info info-am \ + install install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am \ + install-libLTLIBRARIES install-man install-pdf install-pdf-am \ + install-ps install-ps-am install-strip installcheck \ + installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-compile \ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ - tags tags-am uninstall uninstall-am uninstall-libLTLIBRARIES + tags uninstall uninstall-am uninstall-libLTLIBRARIES # Tell versions [3.59,3.63) of GNU make to not export all variables. diff -Nru libextractor-1.2/src/include/Makefile.in libextractor-1.3/src/include/Makefile.in --- libextractor-1.2/src/include/Makefile.in 2013-10-19 14:32:52.000000000 +0000 +++ libextractor-1.3/src/include/Makefile.in 2013-12-23 11:15:27.000000000 +0000 @@ -1,8 +1,9 @@ -# Makefile.in generated by automake 1.14 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2013 Free Software Foundation, Inc. - +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 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. @@ -15,51 +16,23 @@ @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 \ +am__make_dryrun = \ + { \ + am__dry=no; \ 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;; \ + echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \ + | grep '^AM OK$$' >/dev/null || am__dry=yes;; \ + *) \ + for am__flg in $$MAKEFLAGS; do \ + case $$am__flg in \ + *=*|--*) ;; \ + *n*) am__dry=yes; break;; \ + esac; \ + done;; \ 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)) + test $$am__dry = yes; \ + } pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ @@ -80,8 +53,8 @@ host_triplet = @host@ target_triplet = @target@ subdir = src/include -DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \ - $(include_HEADERS) +DIST_COMMON = $(include_HEADERS) $(srcdir)/Makefile.am \ + $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/abi-gsf.m4 \ $(top_srcdir)/m4/ac_define_dir.m4 \ @@ -102,28 +75,21 @@ 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_GEN_0 = @echo " GEN " $@; 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 +RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ + html-recursive info-recursive install-data-recursive \ + install-dvi-recursive install-exec-recursive \ + install-html-recursive install-info-recursive \ + install-pdf-recursive install-ps-recursive install-recursive \ + installcheck-recursive installdirs-recursive pdf-recursive \ + ps-recursive uninstall-recursive am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ @@ -160,29 +126,9 @@ HEADERS = $(include_HEADERS) 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 \ +AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \ + $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags 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 = $(SUBDIRS) @@ -464,25 +410,22 @@ dir='$(DESTDIR)$(includedir)'; $(am__uninstall_files_from_dir) # 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; \ +# into them and run `make' without going through this Makefile. +# To change the values of `make' variables: instead of editing Makefiles, +# (1) if the variable is set in `config.status', edit `config.status' +# (which will cause the Makefiles to be regenerated when you run `make'); +# (2) otherwise, pass the desired values on the `make' command line. +$(RECURSIVE_TARGETS): + @fail= failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ dot_seen=no; \ target=`echo $@ | sed s/-recursive//`; \ - case "$@" in \ - distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ - *) list='$(SUBDIRS)' ;; \ - esac; \ - for subdir in $$list; do \ + list='$(SUBDIRS)'; for subdir in $$list; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ dot_seen=yes; \ @@ -497,12 +440,57 @@ $(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 +$(RECURSIVE_CLEAN_TARGETS): + @fail= failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ + dot_seen=no; \ + case "$@" in \ + distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ + *) list='$(SUBDIRS)' ;; \ + esac; \ + rev=''; for subdir in $$list; do \ + if test "$$subdir" = "."; then :; else \ + rev="$$subdir $$rev"; \ + fi; \ + done; \ + rev="$$rev ."; \ + target=`echo $@ | sed s/-recursive//`; \ + for subdir in $$rev; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || eval $$failcom; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done +ctags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ + done + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + mkid -fID $$unique +tags: TAGS -tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) set x; \ here=`pwd`; \ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ @@ -518,7 +506,12 @@ set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ fi; \ done; \ - $(am__define_uniq_tagged_files); \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ @@ -530,11 +523,15 @@ $$unique; \ fi; \ fi -ctags: ctags-recursive - -CTAGS: ctags -ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) - $(am__define_uniq_tagged_files); \ +ctags: CTAGS +CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique @@ -543,21 +540,6 @@ 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 @@ -721,21 +703,23 @@ uninstall-am: uninstall-includeHEADERS -.MAKE: $(am__recursive_targets) install-am install-strip +.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \ + install-am install-strip tags-recursive -.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-includeHEADERS 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 \ +.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ + all all-am check check-am clean clean-generic clean-libtool \ + ctags ctags-recursive 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-includeHEADERS 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 uninstall-includeHEADERS + mostlyclean-libtool pdf pdf-am ps ps-am tags tags-recursive \ + uninstall uninstall-am uninstall-includeHEADERS # Tell versions [3.59,3.63) of GNU make to not export all variables. diff -Nru libextractor-1.2/src/include/extractor.h libextractor-1.3/src/include/extractor.h --- libextractor-1.2/src/include/extractor.h 2013-10-19 14:31:14.000000000 +0000 +++ libextractor-1.3/src/include/extractor.h 2013-12-22 16:48:14.000000000 +0000 @@ -35,7 +35,7 @@ * 0.2.6-1 => 0x00020601 * 4.5.2-0 => 0x04050200 */ -#define EXTRACTOR_VERSION 0x01020000 +#define EXTRACTOR_VERSION 0x01030000 #include @@ -382,8 +382,10 @@ EXTRACTOR_METATYPE_VIDEO_DURATION = 225, EXTRACTOR_METATYPE_AUDIO_DURATION = 226, EXTRACTOR_METATYPE_SUBTITLE_DURATION = 227, + + EXTRACTOR_METATYPE_AUDIO_PREVIEW = 228, - EXTRACTOR_METATYPE_LAST = 228 + EXTRACTOR_METATYPE_LAST = 229 }; /** @} */ /* end of meta data types */ diff -Nru libextractor-1.2/src/intlemu/Makefile.in libextractor-1.3/src/intlemu/Makefile.in --- libextractor-1.2/src/intlemu/Makefile.in 2013-10-19 14:32:52.000000000 +0000 +++ libextractor-1.3/src/intlemu/Makefile.in 2013-12-23 11:15:28.000000000 +0000 @@ -1,8 +1,9 @@ -# Makefile.in generated by automake 1.14 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2013 Free Software Foundation, Inc. - +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 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. @@ -15,51 +16,23 @@ @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 \ +am__make_dryrun = \ + { \ + am__dry=no; \ 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;; \ + echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \ + | grep '^AM OK$$' >/dev/null || am__dry=yes;; \ + *) \ + for am__flg in $$MAKEFLAGS; do \ + case $$am__flg in \ + *=*|--*) ;; \ + *n*) am__dry=yes; break;; \ + esac; \ + done;; \ 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)) + test $$am__dry = yes; \ + } pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ @@ -80,8 +53,7 @@ host_triplet = @host@ target_triplet = @target@ subdir = src/intlemu -DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \ - $(top_srcdir)/depcomp +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/abi-gsf.m4 \ $(top_srcdir)/m4/ac_define_dir.m4 \ @@ -109,22 +81,9 @@ 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 = libintlemu_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ $(libintlemu_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 @@ -137,16 +96,20 @@ $(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 = +am__v_CC_0 = @echo " CC " $@; +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) +am__v_at_0 = @ 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 = +am__v_CCLD_0 = @echo " CCLD " $@; +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) +am__v_GEN_0 = @echo " GEN " $@; SOURCES = $(libintlemu_la_SOURCES) DIST_SOURCES = $(libintlemu_la_SOURCES) am__can_run_installinfo = \ @@ -154,23 +117,6 @@ 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) @@ -402,15 +348,12 @@ clean-noinstLTLIBRARIES: -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES) - @list='$(noinst_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}; \ - } - + @list='$(noinst_LTLIBRARIES)'; for p in $$list; do \ + dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ + test "$$dir" != "$$p" || dir=.; \ + echo "rm -f \"$${dir}/so_locations\""; \ + rm -f "$${dir}/so_locations"; \ + done libintlemu.la: $(libintlemu_la_OBJECTS) $(libintlemu_la_DEPENDENCIES) $(EXTRA_libintlemu_la_DEPENDENCIES) $(AM_V_CCLD)$(libintlemu_la_LINK) $(libintlemu_la_OBJECTS) $(libintlemu_la_LIBADD) $(LIBS) @@ -427,14 +370,14 @@ @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 $@ $< +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c $< .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) '$<'` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'` .c.lo: @am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -449,15 +392,26 @@ clean-libtool: -rm -rf .libs _libs -ID: $(am__tagged_files) - $(am__define_uniq_tagged_files); mkid -fID $$unique -tags: tags-am -TAGS: tags +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + mkid -fID $$unique +tags: TAGS -tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) set x; \ here=`pwd`; \ - $(am__define_uniq_tagged_files); \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ @@ -469,11 +423,15 @@ $$unique; \ fi; \ fi -ctags: ctags-am - -CTAGS: ctags -ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) - $(am__define_uniq_tagged_files); \ +ctags: CTAGS +CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique @@ -482,21 +440,6 @@ 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 @@ -638,19 +581,18 @@ .MAKE: install-am install-strip -.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \ - clean-libtool clean-noinstLTLIBRARIES 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-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 +.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ + clean-libtool clean-noinstLTLIBRARIES ctags distclean \ + distclean-compile distclean-generic distclean-libtool \ + distclean-tags distdir dvi dvi-am html html-am info info-am \ + install install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-ps install-ps-am \ + install-strip installcheck installcheck-am installdirs \ + maintainer-clean maintainer-clean-generic mostlyclean \ + mostlyclean-compile mostlyclean-generic mostlyclean-libtool \ + pdf pdf-am ps ps-am tags uninstall uninstall-am # Tell versions [3.59,3.63) of GNU make to not export all variables. diff -Nru libextractor-1.2/src/main/Makefile.in libextractor-1.3/src/main/Makefile.in --- libextractor-1.2/src/main/Makefile.in 2013-10-19 14:32:52.000000000 +0000 +++ libextractor-1.3/src/main/Makefile.in 2013-12-23 11:15:28.000000000 +0000 @@ -1,8 +1,9 @@ -# Makefile.in generated by automake 1.14 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2013 Free Software Foundation, Inc. - +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 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. @@ -16,51 +17,23 @@ 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 \ +am__make_dryrun = \ + { \ + am__dry=no; \ 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;; \ + echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \ + | grep '^AM OK$$' >/dev/null || am__dry=yes;; \ + *) \ + for am__flg in $$MAKEFLAGS; do \ + case $$am__flg in \ + *=*|--*) ;; \ + *n*) am__dry=yes; break;; \ + esac; \ + done;; \ 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)) + test $$am__dry = yes; \ + } pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ @@ -85,8 +58,7 @@ test_plugin_load_multi$(EXEEXT) test_ipc$(EXEEXT) \ test_file$(EXEEXT) $(am__EXEEXT_1) $(am__EXEEXT_2) subdir = src/main -DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \ - $(top_srcdir)/depcomp $(top_srcdir)/test-driver +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/abi-gsf.m4 \ $(top_srcdir)/m4/ac_define_dir.m4 \ @@ -164,7 +136,6 @@ 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 = libextractor_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ $(AM_CFLAGS) $(CFLAGS) $(libextractor_la_LDFLAGS) $(LDFLAGS) \ @@ -214,18 +185,6 @@ am_test_trivial_OBJECTS = test_trivial.$(OBJEXT) test_trivial_OBJECTS = $(am_test_trivial_OBJECTS) test_trivial_DEPENDENCIES = $(top_builddir)/src/main/libextractor.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 @@ -238,16 +197,20 @@ $(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 = +am__v_CC_0 = @echo " CC " $@; +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) +am__v_at_0 = @ 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 = +am__v_CCLD_0 = @echo " CCLD " $@; +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) +am__v_GEN_0 = @echo " GEN " $@; SOURCES = $(libextractor_la_SOURCES) $(libextractor_test_la_SOURCES) \ $(libextractor_test2_la_SOURCES) $(extract_SOURCES) \ $(test_bzip2_SOURCES) $(test_file_SOURCES) \ @@ -261,14 +224,13 @@ $(test_gzip_SOURCES) $(test_ipc_SOURCES) \ $(test_plugin_load_multi_SOURCES) \ $(test_plugin_loading_SOURCES) $(test_trivial_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 +RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ + html-recursive info-recursive install-data-recursive \ + install-dvi-recursive install-exec-recursive \ + install-html-recursive install-info-recursive \ + install-pdf-recursive install-ps-recursive install-recursive \ + installcheck-recursive installdirs-recursive pdf-recursive \ + ps-recursive uninstall-recursive am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ @@ -276,207 +238,13 @@ 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 \ - check recheck 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)` +AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \ + $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \ + distdir ETAGS = etags CTAGS = ctags -am__tty_colors_dummy = \ - mgn= red= grn= lgn= blu= brg= std=; \ - am__color_tests=no -am__tty_colors = { \ - $(am__tty_colors_dummy); \ - if test "X$(AM_COLOR_TESTS)" = Xno; then \ - am__color_tests=no; \ - elif test "X$(AM_COLOR_TESTS)" = Xalways; then \ - am__color_tests=yes; \ - elif test "X$$TERM" != Xdumb && { test -t 1; } 2>/dev/null; then \ - am__color_tests=yes; \ - fi; \ - if test $$am__color_tests = yes; then \ - red=''; \ - grn=''; \ - lgn=''; \ - blu=''; \ - mgn=''; \ - brg=''; \ - std=''; \ - fi; \ -} -am__recheck_rx = ^[ ]*:recheck:[ ]* -am__global_test_result_rx = ^[ ]*:global-test-result:[ ]* -am__copy_in_global_log_rx = ^[ ]*:copy-in-global-log:[ ]* -# A command that, given a newline-separated list of test names on the -# standard input, print the name of the tests that are to be re-run -# upon "make recheck". -am__list_recheck_tests = $(AWK) '{ \ - recheck = 1; \ - while ((rc = (getline line < ($$0 ".trs"))) != 0) \ - { \ - if (rc < 0) \ - { \ - if ((getline line2 < ($$0 ".log")) < 0) \ - recheck = 0; \ - break; \ - } \ - else if (line ~ /$(am__recheck_rx)[nN][Oo]/) \ - { \ - recheck = 0; \ - break; \ - } \ - else if (line ~ /$(am__recheck_rx)[yY][eE][sS]/) \ - { \ - break; \ - } \ - }; \ - if (recheck) \ - print $$0; \ - close ($$0 ".trs"); \ - close ($$0 ".log"); \ -}' -# A command that, given a newline-separated list of test names on the -# standard input, create the global log from their .trs and .log files. -am__create_global_log = $(AWK) ' \ -function fatal(msg) \ -{ \ - print "fatal: making $@: " msg | "cat >&2"; \ - exit 1; \ -} \ -function rst_section(header) \ -{ \ - print header; \ - len = length(header); \ - for (i = 1; i <= len; i = i + 1) \ - printf "="; \ - printf "\n\n"; \ -} \ -{ \ - copy_in_global_log = 1; \ - global_test_result = "RUN"; \ - while ((rc = (getline line < ($$0 ".trs"))) != 0) \ - { \ - if (rc < 0) \ - fatal("failed to read from " $$0 ".trs"); \ - if (line ~ /$(am__global_test_result_rx)/) \ - { \ - sub("$(am__global_test_result_rx)", "", line); \ - sub("[ ]*$$", "", line); \ - global_test_result = line; \ - } \ - else if (line ~ /$(am__copy_in_global_log_rx)[nN][oO]/) \ - copy_in_global_log = 0; \ - }; \ - if (copy_in_global_log) \ - { \ - rst_section(global_test_result ": " $$0); \ - while ((rc = (getline line < ($$0 ".log"))) != 0) \ - { \ - if (rc < 0) \ - fatal("failed to read from " $$0 ".log"); \ - print line; \ - }; \ - printf "\n"; \ - }; \ - close ($$0 ".trs"); \ - close ($$0 ".log"); \ -}' -# Restructured Text title. -am__rst_title = { sed 's/.*/ & /;h;s/./=/g;p;x;s/ *$$//;p;g' && echo; } -# Solaris 10 'make', and several other traditional 'make' implementations, -# pass "-e" to $(SHELL), and POSIX 2008 even requires this. Work around it -# by disabling -e (using the XSI extension "set +e") if it's set. -am__sh_e_setup = case $$- in *e*) set +e;; esac -# Default flags passed to test drivers. -am__common_driver_flags = \ - --color-tests "$$am__color_tests" \ - --enable-hard-errors "$$am__enable_hard_errors" \ - --expect-failure "$$am__expect_failure" -# To be inserted before the command running the test. Creates the -# directory for the log if needed. Stores in $dir the directory -# containing $f, in $tst the test, in $log the log. Executes the -# developer- defined test setup AM_TESTS_ENVIRONMENT (if any), and -# passes TESTS_ENVIRONMENT. Set up options for the wrapper that -# will run the test scripts (or their associated LOG_COMPILER, if -# thy have one). -am__check_pre = \ -$(am__sh_e_setup); \ -$(am__vpath_adj_setup) $(am__vpath_adj) \ -$(am__tty_colors); \ -srcdir=$(srcdir); export srcdir; \ -case "$@" in \ - */*) am__odir=`echo "./$@" | sed 's|/[^/]*$$||'`;; \ - *) am__odir=.;; \ -esac; \ -test "x$$am__odir" = x"." || test -d "$$am__odir" \ - || $(MKDIR_P) "$$am__odir" || exit $$?; \ -if test -f "./$$f"; then dir=./; \ -elif test -f "$$f"; then dir=; \ -else dir="$(srcdir)/"; fi; \ -tst=$$dir$$f; log='$@'; \ -if test -n '$(DISABLE_HARD_ERRORS)'; then \ - am__enable_hard_errors=no; \ -else \ - am__enable_hard_errors=yes; \ -fi; \ -case " $(XFAIL_TESTS) " in \ - *[\ \ ]$$f[\ \ ]* | *[\ \ ]$$dir$$f[\ \ ]*) \ - am__expect_failure=yes;; \ - *) \ - am__expect_failure=no;; \ -esac; \ -$(AM_TESTS_ENVIRONMENT) $(TESTS_ENVIRONMENT) -# A shell command to get the names of the tests scripts with any registered -# extension removed (i.e., equivalently, the names of the test logs, with -# the '.log' extension removed). The result is saved in the shell variable -# '$bases'. This honors runtime overriding of TESTS and TEST_LOGS. Sadly, -# we cannot use something simpler, involving e.g., "$(TEST_LOGS:.log=)", -# since that might cause problem with VPATH rewrites for suffix-less tests. -# See also 'test-harness-vpath-rewrite.sh' and 'test-trs-basic.sh'. -am__set_TESTS_bases = \ - bases='$(TEST_LOGS)'; \ - bases=`for i in $$bases; do echo $$i; done | sed 's/\.log$$//'`; \ - bases=`echo $$bases` -RECHECK_LOGS = $(TEST_LOGS) -TEST_SUITE_LOG = test-suite.log -TEST_EXTENSIONS = @EXEEXT@ .test -LOG_DRIVER = $(SHELL) $(top_srcdir)/test-driver -LOG_COMPILE = $(LOG_COMPILER) $(AM_LOG_FLAGS) $(LOG_FLAGS) -am__set_b = \ - case '$@' in \ - */*) \ - case '$*' in \ - */*) b='$*';; \ - *) b=`echo '$@' | sed 's/\.log$$//'`; \ - esac;; \ - *) \ - b='$*';; \ - esac -am__test_logs1 = $(TESTS:=.log) -am__test_logs2 = $(am__test_logs1:@EXEEXT@.log=.log) -TEST_LOGS = $(am__test_logs2:.test.log=.log) -TEST_LOG_DRIVER = $(SHELL) $(top_srcdir)/test-driver -TEST_LOG_COMPILE = $(TEST_LOG_COMPILER) $(AM_TEST_LOG_FLAGS) \ - $(TEST_LOG_FLAGS) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) am__relativize = \ @@ -808,7 +576,7 @@ all: all-recursive .SUFFIXES: -.SUFFIXES: .c .lo .log .o .obj .test .test$(EXEEXT) .trs +.SUFFIXES: .c .lo .o .obj $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ @@ -839,7 +607,6 @@ $(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=; \ @@ -866,32 +633,25 @@ 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}; \ - } + @list='$(lib_LTLIBRARIES)'; for p in $$list; do \ + dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ + test "$$dir" != "$$p" || dir=.; \ + echo "rm -f \"$${dir}/so_locations\""; \ + rm -f "$${dir}/so_locations"; \ + done clean-noinstLTLIBRARIES: -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES) - @list='$(noinst_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}; \ - } - + @list='$(noinst_LTLIBRARIES)'; for p in $$list; do \ + dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ + test "$$dir" != "$$p" || dir=.; \ + echo "rm -f \"$${dir}/so_locations\""; \ + rm -f "$${dir}/so_locations"; \ + done libextractor.la: $(libextractor_la_OBJECTS) $(libextractor_la_DEPENDENCIES) $(EXTRA_libextractor_la_DEPENDENCIES) $(AM_V_CCLD)$(libextractor_la_LINK) -rpath $(libdir) $(libextractor_la_OBJECTS) $(libextractor_la_LIBADD) $(LIBS) - libextractor_test.la: $(libextractor_test_la_OBJECTS) $(libextractor_test_la_DEPENDENCIES) $(EXTRA_libextractor_test_la_DEPENDENCIES) $(AM_V_CCLD)$(libextractor_test_la_LINK) $(libextractor_test_la_OBJECTS) $(libextractor_test_la_LIBADD) $(LIBS) - libextractor_test2.la: $(libextractor_test2_la_OBJECTS) $(libextractor_test2_la_DEPENDENCIES) $(EXTRA_libextractor_test2_la_DEPENDENCIES) $(AM_V_CCLD)$(libextractor_test2_la_LINK) $(libextractor_test2_la_OBJECTS) $(libextractor_test2_la_LIBADD) $(LIBS) install-binPROGRAMS: $(bin_PROGRAMS) @@ -903,12 +663,10 @@ 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; \ + 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|.*|.|' \ + 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 } \ @@ -929,8 +687,7 @@ @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ files=`for p in $$list; do echo "$$p"; done | \ sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ - -e 's/$$/$(EXEEXT)/' \ - `; \ + -e 's/$$/$(EXEEXT)/' `; \ test -n "$$list" || exit 0; \ echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(bindir)" && rm -f $$files @@ -952,35 +709,27 @@ list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ echo " rm -f" $$list; \ rm -f $$list - extract$(EXEEXT): $(extract_OBJECTS) $(extract_DEPENDENCIES) $(EXTRA_extract_DEPENDENCIES) @rm -f extract$(EXEEXT) $(AM_V_CCLD)$(LINK) $(extract_OBJECTS) $(extract_LDADD) $(LIBS) - test_bzip2$(EXEEXT): $(test_bzip2_OBJECTS) $(test_bzip2_DEPENDENCIES) $(EXTRA_test_bzip2_DEPENDENCIES) @rm -f test_bzip2$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_bzip2_OBJECTS) $(test_bzip2_LDADD) $(LIBS) - test_file$(EXEEXT): $(test_file_OBJECTS) $(test_file_DEPENDENCIES) $(EXTRA_test_file_DEPENDENCIES) @rm -f test_file$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_file_OBJECTS) $(test_file_LDADD) $(LIBS) - test_gzip$(EXEEXT): $(test_gzip_OBJECTS) $(test_gzip_DEPENDENCIES) $(EXTRA_test_gzip_DEPENDENCIES) @rm -f test_gzip$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_gzip_OBJECTS) $(test_gzip_LDADD) $(LIBS) - test_ipc$(EXEEXT): $(test_ipc_OBJECTS) $(test_ipc_DEPENDENCIES) $(EXTRA_test_ipc_DEPENDENCIES) @rm -f test_ipc$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_ipc_OBJECTS) $(test_ipc_LDADD) $(LIBS) - test_plugin_load_multi$(EXEEXT): $(test_plugin_load_multi_OBJECTS) $(test_plugin_load_multi_DEPENDENCIES) $(EXTRA_test_plugin_load_multi_DEPENDENCIES) @rm -f test_plugin_load_multi$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_plugin_load_multi_OBJECTS) $(test_plugin_load_multi_LDADD) $(LIBS) - test_plugin_loading$(EXEEXT): $(test_plugin_loading_OBJECTS) $(test_plugin_loading_DEPENDENCIES) $(EXTRA_test_plugin_loading_DEPENDENCIES) @rm -f test_plugin_loading$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_plugin_loading_OBJECTS) $(test_plugin_loading_LDADD) $(LIBS) - test_trivial$(EXEEXT): $(test_trivial_OBJECTS) $(test_trivial_DEPENDENCIES) $(EXTRA_test_trivial_DEPENDENCIES) @rm -f test_trivial$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_trivial_OBJECTS) $(test_trivial_LDADD) $(LIBS) @@ -1021,14 +770,14 @@ @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 $@ $< +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c $< .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) '$<'` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'` .c.lo: @am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -1128,25 +877,22 @@ -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; \ +# into them and run `make' without going through this Makefile. +# To change the values of `make' variables: instead of editing Makefiles, +# (1) if the variable is set in `config.status', edit `config.status' +# (which will cause the Makefiles to be regenerated when you run `make'); +# (2) otherwise, pass the desired values on the `make' command line. +$(RECURSIVE_TARGETS): + @fail= failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ dot_seen=no; \ target=`echo $@ | sed s/-recursive//`; \ - case "$@" in \ - distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ - *) list='$(SUBDIRS)' ;; \ - esac; \ - for subdir in $$list; do \ + list='$(SUBDIRS)'; for subdir in $$list; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ dot_seen=yes; \ @@ -1161,12 +907,57 @@ $(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 +$(RECURSIVE_CLEAN_TARGETS): + @fail= failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ + dot_seen=no; \ + case "$@" in \ + distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ + *) list='$(SUBDIRS)' ;; \ + esac; \ + rev=''; for subdir in $$list; do \ + if test "$$subdir" = "."; then :; else \ + rev="$$subdir $$rev"; \ + fi; \ + done; \ + rev="$$rev ."; \ + target=`echo $@ | sed s/-recursive//`; \ + for subdir in $$rev; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || eval $$failcom; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done +ctags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ + done + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + mkid -fID $$unique +tags: TAGS -tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) set x; \ here=`pwd`; \ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ @@ -1182,7 +973,12 @@ set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ fi; \ done; \ - $(am__define_uniq_tagged_files); \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ @@ -1194,11 +990,15 @@ $$unique; \ fi; \ fi -ctags: ctags-recursive - -CTAGS: ctags -ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) - $(am__define_uniq_tagged_files); \ +ctags: CTAGS +CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique @@ -1207,229 +1007,102 @@ 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 -# Recover from deleted '.trs' file; this should ensure that -# "rm -f foo.log; make foo.trs" re-run 'foo.test', and re-create -# both 'foo.log' and 'foo.trs'. Break the recipe in two subshells -# to avoid problems with "make -n". -.log.trs: - rm -f $< $@ - $(MAKE) $(AM_MAKEFLAGS) $< - -# Leading 'am--fnord' is there to ensure the list of targets does not -# expand to empty, as could happen e.g. with make check TESTS=''. -am--fnord $(TEST_LOGS) $(TEST_LOGS:.log=.trs): $(am__force_recheck) -am--force-recheck: - @: - -$(TEST_SUITE_LOG): $(TEST_LOGS) - @$(am__set_TESTS_bases); \ - am__f_ok () { test -f "$$1" && test -r "$$1"; }; \ - redo_bases=`for i in $$bases; do \ - am__f_ok $$i.trs && am__f_ok $$i.log || echo $$i; \ - done`; \ - if test -n "$$redo_bases"; then \ - redo_logs=`for i in $$redo_bases; do echo $$i.log; done`; \ - redo_results=`for i in $$redo_bases; do echo $$i.trs; done`; \ - if $(am__make_dryrun); then :; else \ - rm -f $$redo_logs && rm -f $$redo_results || exit 1; \ - fi; \ - fi; \ - if test -n "$$am__remaking_logs"; then \ - echo "fatal: making $(TEST_SUITE_LOG): possible infinite" \ - "recursion detected" >&2; \ - else \ - am__remaking_logs=yes $(MAKE) $(AM_MAKEFLAGS) $$redo_logs; \ - fi; \ - if $(am__make_dryrun); then :; else \ - st=0; \ - errmsg="fatal: making $(TEST_SUITE_LOG): failed to create"; \ - for i in $$redo_bases; do \ - test -f $$i.trs && test -r $$i.trs \ - || { echo "$$errmsg $$i.trs" >&2; st=1; }; \ - test -f $$i.log && test -r $$i.log \ - || { echo "$$errmsg $$i.log" >&2; st=1; }; \ +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ done; \ - test $$st -eq 0 || exit 1; \ - fi - @$(am__sh_e_setup); $(am__tty_colors); $(am__set_TESTS_bases); \ - ws='[ ]'; \ - results=`for b in $$bases; do echo $$b.trs; done`; \ - test -n "$$results" || results=/dev/null; \ - all=` grep "^$$ws*:test-result:" $$results | wc -l`; \ - pass=` grep "^$$ws*:test-result:$$ws*PASS" $$results | wc -l`; \ - fail=` grep "^$$ws*:test-result:$$ws*FAIL" $$results | wc -l`; \ - skip=` grep "^$$ws*:test-result:$$ws*SKIP" $$results | wc -l`; \ - xfail=`grep "^$$ws*:test-result:$$ws*XFAIL" $$results | wc -l`; \ - xpass=`grep "^$$ws*:test-result:$$ws*XPASS" $$results | wc -l`; \ - error=`grep "^$$ws*:test-result:$$ws*ERROR" $$results | wc -l`; \ - if test `expr $$fail + $$xpass + $$error` -eq 0; then \ - success=true; \ - else \ - success=false; \ - fi; \ - br='==================='; br=$$br$$br$$br$$br; \ - result_count () \ - { \ - if test x"$$1" = x"--maybe-color"; then \ - maybe_colorize=yes; \ - elif test x"$$1" = x"--no-color"; then \ - maybe_colorize=no; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ else \ - echo "$@: invalid 'result_count' usage" >&2; exit 4; \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ fi; \ - shift; \ - desc=$$1 count=$$2; \ - if test $$maybe_colorize = yes && test $$count -gt 0; then \ - color_start=$$3 color_end=$$std; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ else \ - color_start= color_end=; \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ fi; \ - echo "$${color_start}# $$desc $$count$${color_end}"; \ - }; \ - create_testsuite_report () \ - { \ - result_count $$1 "TOTAL:" $$all "$$brg"; \ - result_count $$1 "PASS: " $$pass "$$grn"; \ - result_count $$1 "SKIP: " $$skip "$$blu"; \ - result_count $$1 "XFAIL:" $$xfail "$$lgn"; \ - result_count $$1 "FAIL: " $$fail "$$red"; \ - result_count $$1 "XPASS:" $$xpass "$$red"; \ - result_count $$1 "ERROR:" $$error "$$mgn"; \ - }; \ - { \ - echo "$(PACKAGE_STRING): $(subdir)/$(TEST_SUITE_LOG)" | \ - $(am__rst_title); \ - create_testsuite_report --no-color; \ - echo; \ - echo ".. contents:: :depth: 2"; \ - echo; \ - for b in $$bases; do echo $$b; done \ - | $(am__create_global_log); \ - } >$(TEST_SUITE_LOG).tmp || exit 1; \ - mv $(TEST_SUITE_LOG).tmp $(TEST_SUITE_LOG); \ - if $$success; then \ - col="$$grn"; \ - else \ - col="$$red"; \ - test x"$$VERBOSE" = x || cat $(TEST_SUITE_LOG); \ - fi; \ - echo "$${col}$$br$${std}"; \ - echo "$${col}Testsuite summary for $(PACKAGE_STRING)$${std}"; \ - echo "$${col}$$br$${std}"; \ - create_testsuite_report --maybe-color; \ - echo "$$col$$br$$std"; \ - if $$success; then :; else \ - echo "$${col}See $(subdir)/$(TEST_SUITE_LOG)$${std}"; \ - if test -n "$(PACKAGE_BUGREPORT)"; then \ - echo "$${col}Please report to $(PACKAGE_BUGREPORT)$${std}"; \ - fi; \ - echo "$$col$$br$$std"; \ - fi; \ - $$success || exit 1 - -check-TESTS: - @list='$(RECHECK_LOGS)'; test -z "$$list" || rm -f $$list - @list='$(RECHECK_LOGS:.log=.trs)'; test -z "$$list" || rm -f $$list - @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) - @set +e; $(am__set_TESTS_bases); \ - log_list=`for i in $$bases; do echo $$i.log; done`; \ - trs_list=`for i in $$bases; do echo $$i.trs; done`; \ - log_list=`echo $$log_list`; trs_list=`echo $$trs_list`; \ - $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) TEST_LOGS="$$log_list"; \ - exit $$?; -recheck: all $(check_PROGRAMS) - @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) - @set +e; $(am__set_TESTS_bases); \ - bases=`for i in $$bases; do echo $$i; done \ - | $(am__list_recheck_tests)` || exit 1; \ - log_list=`for i in $$bases; do echo $$i.log; done`; \ - log_list=`echo $$log_list`; \ - $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) \ - am__force_recheck=am--force-recheck \ - TEST_LOGS="$$log_list"; \ - exit $$? -test_trivial.log: test_trivial$(EXEEXT) - @p='test_trivial$(EXEEXT)'; \ - b='test_trivial'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_plugin_loading.log: test_plugin_loading$(EXEEXT) - @p='test_plugin_loading$(EXEEXT)'; \ - b='test_plugin_loading'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_plugin_load_multi.log: test_plugin_load_multi$(EXEEXT) - @p='test_plugin_load_multi$(EXEEXT)'; \ - b='test_plugin_load_multi'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_ipc.log: test_ipc$(EXEEXT) - @p='test_ipc$(EXEEXT)'; \ - b='test_ipc'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_file.log: test_file$(EXEEXT) - @p='test_file$(EXEEXT)'; \ - b='test_file'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_gzip.log: test_gzip$(EXEEXT) - @p='test_gzip$(EXEEXT)'; \ - b='test_gzip'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_bzip2.log: test_bzip2$(EXEEXT) - @p='test_bzip2$(EXEEXT)'; \ - b='test_bzip2'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -.test.log: - @p='$<'; \ - $(am__set_b); \ - $(am__check_pre) $(TEST_LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_TEST_LOG_DRIVER_FLAGS) $(TEST_LOG_DRIVER_FLAGS) -- $(TEST_LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -@am__EXEEXT_TRUE@.test$(EXEEXT).log: -@am__EXEEXT_TRUE@ @p='$<'; \ -@am__EXEEXT_TRUE@ $(am__set_b); \ -@am__EXEEXT_TRUE@ $(am__check_pre) $(TEST_LOG_DRIVER) --test-name "$$f" \ -@am__EXEEXT_TRUE@ --log-file $$b.log --trs-file $$b.trs \ -@am__EXEEXT_TRUE@ $(am__common_driver_flags) $(AM_TEST_LOG_DRIVER_FLAGS) $(TEST_LOG_DRIVER_FLAGS) -- $(TEST_LOG_COMPILE) \ -@am__EXEEXT_TRUE@ "$$tst" $(AM_TESTS_FD_REDIRECT) + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + col="$$grn"; \ + else \ + col="$$red"; \ + fi; \ + echo "$${col}$$dashes$${std}"; \ + echo "$${col}$$banner$${std}"; \ + test -z "$$skipped" || echo "$${col}$$skipped$${std}"; \ + test -z "$$report" || echo "$${col}$$report$${std}"; \ + echo "$${col}$$dashes$${std}"; \ + test "$$failed" -eq 0; \ + else :; fi distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -1518,9 +1191,6 @@ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ fi mostlyclean-generic: - -test -z "$(TEST_LOGS)" || rm -f $(TEST_LOGS) - -test -z "$(TEST_LOGS:.log=.trs)" || rm -f $(TEST_LOGS:.log=.trs) - -test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) clean-generic: @@ -1603,13 +1273,14 @@ uninstall-am: uninstall-binPROGRAMS uninstall-libLTLIBRARIES -.MAKE: $(am__recursive_targets) check-am install-am install-strip +.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) check-am \ + ctags-recursive install-am install-strip tags-recursive -.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ - check-TESTS check-am clean clean-binPROGRAMS \ +.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ + all all-am check check-TESTS check-am clean clean-binPROGRAMS \ clean-checkPROGRAMS clean-generic clean-libLTLIBRARIES \ - clean-libtool clean-noinstLTLIBRARIES cscopelist-am ctags \ - ctags-am distclean distclean-compile distclean-generic \ + clean-libtool clean-noinstLTLIBRARIES ctags ctags-recursive \ + distclean distclean-compile distclean-generic \ distclean-libtool distclean-tags distdir dvi dvi-am html \ html-am info info-am install install-am install-binPROGRAMS \ install-data install-data-am install-dvi install-dvi-am \ @@ -1620,7 +1291,7 @@ installdirs installdirs-am maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-compile \ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ - recheck tags tags-am uninstall uninstall-am \ + tags tags-recursive uninstall uninstall-am \ uninstall-binPROGRAMS uninstall-libLTLIBRARIES diff -Nru libextractor-1.2/src/main/extractor.c libextractor-1.3/src/main/extractor.c --- libextractor-1.2/src/main/extractor.c 2013-08-28 09:30:31.000000000 +0000 +++ libextractor-1.3/src/main/extractor.c 2013-12-23 11:15:21.000000000 +0000 @@ -92,7 +92,7 @@ EXTRACTOR_IPC_channel_destroy_ (plugin->channel); plugin->channel = NULL; plugin->round_finished = 1; - } + } } @@ -166,7 +166,7 @@ if (0 != prp->file_finished) { /* client already aborted, ignore message, tell plugin about abort */ - return; + return; } if (0 != prp->proc (prp->proc_cls, plugin->short_libname, @@ -271,13 +271,13 @@ * Seek in the file. Use 'SEEK_CUR' for whence and 'pos' of 0 to * obtain the current position in the file. * Callback used for in-process plugins. - * + * * @param cls a 'struct InProcessContext' * @param pos position to seek (see 'man lseek') * @param whence how to see (absolute to start, relative, absolute to end) * @return new absolute position, -1 on error (i.e. desired position * does not exist) - */ + */ static int64_t in_process_seek (void *cls, int64_t pos, @@ -294,15 +294,15 @@ /** * Determine the overall size of the file. * Callback used for in-process plugins. - * + * * @param cls a 'struct InProcessContext' * @return overall file size, UINT64_MAX on error (i.e. IPC failure) - */ + */ static uint64_t in_process_get_size (void *cls) { struct InProcessContext *ctx = cls; - + return (uint64_t) EXTRACTOR_datasource_get_size_ (ctx->ds, 0); } @@ -318,13 +318,13 @@ * used in the main libextractor library and yielding * meta data). * @param type libextractor-type describing the meta data - * @param format basic format information about data + * @param format basic format information about data * @param data_mime_type mime-type of data (not of the original file); * can be NULL (if mime-type is not known) * @param data actual meta-data found * @param data_len number of bytes in data * @return 0 to continue extracting, 1 to abort - */ + */ static int in_process_proc (void *cls, const char *plugin_name, @@ -363,7 +363,7 @@ * @param proc_cls cls argument to proc */ static void -do_extract (struct EXTRACTOR_PluginList *plugins, +do_extract (struct EXTRACTOR_PluginList *plugins, struct EXTRACTOR_SharedMemory *shm, struct EXTRACTOR_Datasource *ds, EXTRACTOR_MetaDataProcessor proc, void *proc_cls) @@ -438,12 +438,12 @@ else { /* not running this round, seeking! */ - channels[plugin_off] = NULL; + channels[plugin_off] = NULL; } plugin_off++; } /* give plugins chance to send us meta data, seek or finished messages */ - if (-1 == + if (-1 == EXTRACTOR_IPC_channel_recv_ (channels, plugin_count, &process_plugin_reply, @@ -464,12 +464,14 @@ plugin_off++; if ( (1 == pos->round_finished) || (NULL == pos->channel) ) - continue; /* inactive plugin */ + { + continue; /* inactive plugin */ + } if (-1 == pos->seek_request) { - /* possibly more meta data at current position, at least + /* possibly more meta data at current position, at least this plugin is still working on it... */ - done = 0; + done = 0; break; } if (-1 != pos->seek_request) @@ -485,14 +487,14 @@ pos->seek_request = 0; } else - { + { pos->seek_request = end - pos->seek_request; } } if ( (-1 == min_seek) || (min_seek > pos->seek_request) ) { - min_seek = pos->seek_request; + min_seek = pos->seek_request; } } } @@ -521,16 +523,16 @@ { /* Skipping plugin: channel down */ continue; - } - if ( (-1 != pos->seek_request) && + } + if ( (-1 != pos->seek_request) && (1 == prp.file_finished) ) { send_discard_message (pos); pos->round_finished = 1; - pos->seek_request = -1; - } + pos->seek_request = -1; + } if ( (-1 != data_available) && - (-1 != pos->seek_request) && + (-1 != pos->seek_request) && (min_seek <= pos->seek_request) && ( (min_seek + data_available > pos->seek_request) || (min_seek == EXTRACTOR_datasource_get_size_ (ds, 0))) ) @@ -540,10 +542,10 @@ min_seek, data_available, ds); - pos->seek_request = -1; + pos->seek_request = -1; } if (0 == pos->round_finished) - done = 0; /* can't be done, plugin still active */ + done = 0; /* can't be done, plugin still active */ } } @@ -615,7 +617,7 @@ datasource = EXTRACTOR_datasource_create_from_file_ (filename, proc, proc_cls); if (NULL == datasource) - return; + return; shm = NULL; have_oop = 0; for (pos = plugins; NULL != pos; pos = pos->next) @@ -658,8 +660,8 @@ /** * Initialize gettext and libltdl (and W32 if needed). */ -void __attribute__ ((constructor)) -EXTRACTOR_ltdl_init () +void __attribute__ ((constructor)) +EXTRACTOR_ltdl_init () { int err; @@ -667,7 +669,7 @@ BINDTEXTDOMAIN (PACKAGE, LOCALEDIR); #endif err = lt_dlinit (); - if (err > 0) + if (err > 0) { #if DEBUG fprintf (stderr, @@ -678,6 +680,8 @@ } #if WINDOWS plibc_init_utf8 ("GNU", PACKAGE, 1); + plibc_set_stat_size_size (sizeof (((struct stat *) 0)->st_size)); + plibc_set_stat_time_size (sizeof (((struct stat *) 0)->st_mtime)); #endif } @@ -685,7 +689,7 @@ /** * Deinit. */ -void __attribute__ ((destructor)) +void __attribute__ ((destructor)) EXTRACTOR_ltdl_fini () { #if WINDOWS plibc_shutdown (); diff -Nru libextractor-1.2/src/main/extractor_ipc.c libextractor-1.3/src/main/extractor_ipc.c --- libextractor-1.2/src/main/extractor_ipc.c 2013-06-26 09:15:38.000000000 +0000 +++ libextractor-1.3/src/main/extractor_ipc.c 2013-12-22 17:53:22.000000000 +0000 @@ -67,7 +67,7 @@ size--; data++; continue; - case MESSAGE_SEEK: /* Seek */ + case MESSAGE_SEEK: /* Seek */ if (size < sizeof (struct SeekRequestMessage)) { plugin->seek_request = -1; @@ -88,13 +88,13 @@ } memcpy (&meta, cdata, sizeof (meta)); /* check hdr for sanity */ - if (meta.value_size > MAX_META_DATA) + if (meta.value_size > MAX_META_DATA) { LOG ("Meta data exceeds size limit\n"); return -1; /* not allowing more than MAX_META_DATA meta data */ } if (size < sizeof (meta) + meta.mime_length + meta.value_size) - { + { plugin->seek_request = -1; return ret; } @@ -108,7 +108,7 @@ if ('\0' != mime_type[meta.mime_length - 1]) { LOG ("Mime type not 0-terminated\n"); - return -1; + return -1; } } if (0 == meta.value_size) @@ -117,7 +117,7 @@ value = &cdata[sizeof (struct MetaMessage) + meta.mime_length]; if (meta.meta_type >= EXTRACTOR_metatype_get_max ()) meta.meta_type = EXTRACTOR_METATYPE_UNKNOWN; - proc (proc_cls, + proc (proc_cls, plugin, (enum EXTRACTOR_MetaType) meta.meta_type, (enum EXTRACTOR_MetaFormat) meta.meta_format, diff -Nru libextractor-1.2/src/main/extractor_ipc_gnu.c libextractor-1.3/src/main/extractor_ipc_gnu.c --- libextractor-1.2/src/main/extractor_ipc_gnu.c 2013-10-19 14:46:41.000000000 +0000 +++ libextractor-1.3/src/main/extractor_ipc_gnu.c 2013-12-22 17:52:33.000000000 +0000 @@ -447,6 +447,7 @@ ssize_t ret; ssize_t iret; char *ndata; + int closed_channel; FD_ZERO (&to_check); max = -1; @@ -468,6 +469,27 @@ if (0 >= select (max + 1, &to_check, NULL, NULL, &tv)) { /* an error or timeout -> something's wrong or all plugins hung up */ + closed_channel = 0; + for (i=0;iplugin->seek_request) + { + /* plugin blocked for too long, kill channel */ + LOG ("Channel blocked, closing channel to %s\n", + channel->plugin->libname); + channel->plugin->channel = NULL; + channel->plugin->round_finished = 1; + EXTRACTOR_IPC_channel_destroy_ (channel); + channels[i] = NULL; + closed_channel = 1; + } + } + if (1 == closed_channel) + return 1; + /* strange, no channel is to blame, let's die just to be safe */ if ((EINTR != errno) && (0 != errno)) LOG_STRERROR ("select"); return -1; @@ -511,7 +533,8 @@ { if (-1 == iret) LOG_STRERROR ("read"); - LOG ("Read error from channel, closing channel %d\n", i+1); + LOG ("Read error from channel, closing channel %s\n", + channel->plugin->libname); EXTRACTOR_IPC_channel_destroy_ (channel); channels[i] = NULL; } diff -Nru libextractor-1.2/src/main/extractor_ipc_w32.c libextractor-1.3/src/main/extractor_ipc_w32.c --- libextractor-1.2/src/main/extractor_ipc_w32.c 2013-02-07 12:56:50.000000000 +0000 +++ libextractor-1.3/src/main/extractor_ipc_w32.c 2013-12-22 21:16:33.000000000 +0000 @@ -695,6 +695,7 @@ unsigned int c; char *ndata; HANDLE events[MAXIMUM_WAIT_OBJECTS]; + int closed_channel; c = 0; for (i = 0; i < num_channels; i++) @@ -725,11 +726,31 @@ if (c == 0) return 1; /* nothing left to do! */ - ms = 10000; + ms = 500; first_ready = WaitForMultipleObjects (c, events, FALSE, ms); if (first_ready == WAIT_TIMEOUT || first_ready == WAIT_FAILED) { /* an error or timeout -> something's wrong or all plugins hung up */ + closed_channel = 0; + for (i = 0; i < num_channels; i++) + { + struct EXTRACTOR_Channel *channel = channels[i]; + if (NULL == channel) + continue; + if (-1 == channel->plugin->seek_request) + { + /* plugin blocked for too long, kill the channel */ + LOG ("Channel blocked, closing channel to %s\n", + channel->plugin->libname); + channel->plugin->channel = NULL; + channel->plugin->round_finished = 1; + EXTRACTOR_IPC_channel_destroy_ (channel); + channels[i] = NULL; + closed_channel = 1; + } + } + if (1 == closed_channel) + return 1; LOG_STRERROR ("WaitForMultipleObjects"); return -1; } diff -Nru libextractor-1.2/src/main/extractor_metatypes.c libextractor-1.3/src/main/extractor_metatypes.c --- libextractor-1.2/src/main/extractor_metatypes.c 2012-09-06 07:38:49.000000000 +0000 +++ libextractor-1.3/src/main/extractor_metatypes.c 2013-12-19 18:56:20.000000000 +0000 @@ -548,6 +548,9 @@ { gettext_noop ("subtitle duration"), gettext_noop ("duration of a subtitle stream") }, + { gettext_noop ("audio preview"), + gettext_noop ("a preview of the file audio stream") }, + { gettext_noop ("last"), gettext_noop ("last") } }; diff -Nru libextractor-1.2/src/main/extractor_plugpath.c libextractor-1.3/src/main/extractor_plugpath.c --- libextractor-1.2/src/main/extractor_plugpath.c 2013-06-19 12:03:01.000000000 +0000 +++ libextractor-1.3/src/main/extractor_plugpath.c 2013-11-28 21:16:45.000000000 +0000 @@ -36,7 +36,7 @@ /** * Function to call on paths. - * + * * @param cls closure * @param path a directory path */ @@ -50,8 +50,8 @@ * @param in input string, modified * @return NULL if 'in' is NULL, otherwise 'in' with '/bin/' removed */ -static char * -cut_bin (char * in) +static char * +cut_bin (char * in) { size_t p; @@ -64,7 +64,7 @@ ('\\' == in[p-1]) ) in[--p] = '\0'; if (0 == strcmp (&in[p-4], - "/bin")) + "/bin")) { in[p-4] = '\0'; p -= 4; @@ -88,7 +88,7 @@ * and the binary linking against it sits elsewhere. */ static char * -get_path_from_proc_exe () +get_path_from_proc_exe () { char fn[64]; char line[1024]; @@ -105,13 +105,13 @@ getpid ()); if (NULL != (f = FOPEN (fn, "r"))) { - while (NULL != fgets (line, 1024, f)) + while (NULL != fgets (line, 1024, f)) { if ( (1 == sscanf (line, "%*x-%*x %*c%*c%*c%*c %*x %*2x:%*2x %*u%*[ ]%s", dir)) && (NULL != (lestr = strstr (dir, - "libextractor")) ) ) + "libextractor")) ) ) { lestr[0] = '\0'; fclose (f); @@ -178,8 +178,8 @@ /** * Try to determine path with win32-specific function */ -static char * -get_path_from_module_filename () +static char * +get_path_from_module_filename () { char *path; char *ret; @@ -218,7 +218,7 @@ * @param number of bytes available in 'buf' * @return 0 on success, otherwise desired number of bytes is stored in 'bufsize' */ -typedef int (*MyNSGetExecutablePathProto) (char *buf, +typedef int (*MyNSGetExecutablePathProto) (char *buf, size_t *bufsize); @@ -280,8 +280,8 @@ * * @return NULL on error */ -static char * -get_path_from_dyld_image () +static char * +get_path_from_dyld_image () { const char *path; char *s; @@ -290,7 +290,7 @@ int c; c = _dyld_image_count (); - for (i = 0; i < c; i++) + for (i = 0; i < c; i++) { if (((void *) _dyld_get_image_header (i)) != (void *) &_mh_dylib_header) continue; @@ -321,7 +321,7 @@ * @return path to binary, NULL if not found */ static char * -get_path_from_PATH() +get_path_from_PATH() { struct stat sbuf; char *path; @@ -345,11 +345,11 @@ return NULL; } pos = path; - while (NULL != (end = strchr(pos, ':'))) + while (NULL != (end = strchr(pos, ':'))) { *end = '\0'; sprintf (buf, "%s/%s", pos, "extract"); - if (0 == stat(buf, &sbuf)) + if (0 == stat(buf, &sbuf)) { free (buf); if (NULL == (pos = strdup (pos))) @@ -360,19 +360,19 @@ } free (path); pos = cut_bin (pos); - if (NULL == (ret = realloc (pos, strlen (pos) + 5))) + if (NULL == (ret = realloc (pos, strlen (pos) + 6))) { LOG_STRERROR ("realloc"); free (pos); return NULL; } - strcat (ret, "lib/"); + strcat (ret, "/lib/"); return ret; } pos = end + 1; } sprintf (buf, "%s/%s", pos, "extract"); - if (0 == stat (buf, &sbuf)) + if (0 == stat (buf, &sbuf)) { pos = strdup (pos); free (buf); @@ -380,13 +380,13 @@ if (NULL == pos) return NULL; pos = cut_bin (pos); - if (NULL == (ret = realloc (pos, strlen (pos) + 5))) + if (NULL == (ret = realloc (pos, strlen (pos) + 6))) { LOG_STRERROR ("realloc"); free (pos); return NULL; } - strcat (ret, "lib/"); + strcat (ret, "/lib/"); return ret; } free (buf); @@ -398,7 +398,7 @@ /** * Create a filename by appending 'fname' to 'path'. * - * @param path the base path + * @param path the base path * @param fname the filename to append * @return '$path/$fname', NULL on error */ @@ -420,23 +420,23 @@ if ('\\' == path[slen-1]) sprintf (ret, "%s%s", - path, + path, fname); else sprintf (ret, "%s\\%s", - path, + path, fname); #else if ('/' == path[slen-1]) sprintf (ret, "%s%s", - path, + path, fname); else sprintf (ret, "%s/%s", - path, + path, fname); #endif return ret; @@ -471,7 +471,7 @@ for (prefix = strtok_r (d, PATH_SEPARATOR_STR, &saveptr); NULL != prefix; prefix = strtok_r (NULL, PATH_SEPARATOR_STR, &saveptr)) - pp (pp_cls, prefix); + pp (pp_cls, prefix); free (d); return; } @@ -515,17 +515,17 @@ * Name of the plugin we are looking for. */ const char *short_name; - + /** * Location for storing the path to the plugin upon success. - */ + */ char *path; }; /** * Load all plugins from the given directory. - * + * * @param cls pointer to the "struct EXTRACTOR_PluginList*" to extend * @param path path to a directory with plugins */ @@ -555,7 +555,7 @@ (0 != strcasecmp (&ent->d_name[dlen-4], ".dll")) ) ) continue; /* only load '.so' and '.dll' */ if (NULL == (sym_name = strrchr (ent->d_name, '_'))) - continue; + continue; sym_name++; if (NULL == (sym = strdup (sym_name))) { @@ -586,7 +586,7 @@ EXTRACTOR_find_plugin_ (const char *short_name) { struct SearchContext sc; - + sc.path = NULL; sc.short_name = short_name; get_installation_paths (&find_plugin_in_path, @@ -595,14 +595,14 @@ } -/** +/** * Closure for 'load_plugins_from_dir'. */ struct DefaultLoaderContext { /** * Accumulated result list. - */ + */ struct EXTRACTOR_PluginList *res; /** @@ -614,7 +614,7 @@ /** * Load all plugins from the given directory. - * + * * @param cls pointer to the "struct EXTRACTOR_PluginList*" to extend * @param path path to a directory with plugins */ @@ -672,7 +672,7 @@ * @param flags options for all of the plugins loaded * @return the default set of plugins, NULL if no plugins were found */ -struct EXTRACTOR_PluginList * +struct EXTRACTOR_PluginList * EXTRACTOR_plugin_add_defaults (enum EXTRACTOR_Options flags) { struct DefaultLoaderContext dlc; diff -Nru libextractor-1.2/src/plugins/Makefile.am libextractor-1.3/src/plugins/Makefile.am --- libextractor-1.2/src/plugins/Makefile.am 2013-06-26 09:15:37.000000000 +0000 +++ libextractor-1.3/src/plugins/Makefile.am 2013-12-21 16:04:41.000000000 +0000 @@ -72,6 +72,11 @@ TEST_FFMPEG=test_thumbnailffmpeg endif +if HAVE_FFMPEG_NEW +PLUGIN_PREVIEWOPUS=libextractor_previewopus.la +TEST_PREVIEWOPUS=test_previewopus +endif + if HAVE_GTK # Gtk-thumbnailer requires MAGIC and GTK PLUGIN_GTK=libextractor_thumbnailgtk.la @@ -153,6 +158,7 @@ TEST_OGG=test_ogg endif + if HAVE_ZLIB PLUGIN_ZLIB= \ libextractor_deb.la \ @@ -190,6 +196,7 @@ $(PLUGIN_MP4) \ $(PLUGIN_MPEG) \ $(PLUGIN_OGG) \ + $(PLUGIN_PREVIEWOPUS) \ $(PLUGIN_RPM) \ $(PLUGIN_TIFF) \ $(PLUGIN_ZLIB) @@ -216,6 +223,7 @@ $(TEST_ARCHIVE) \ $(TEST_EXIV2) \ $(TEST_FFMPEG) \ + $(TEST_PREVIEWOPUS) \ $(TEST_FLAC) \ $(TEST_GIF) \ $(TEST_GSF) \ @@ -620,7 +628,19 @@ test_thumbnailgtk_LDADD = \ $(top_builddir)/src/plugins/libtest.la +libextractor_previewopus_la_SOURCES = \ + previewopus_extractor.c +libextractor_previewopus_la_LDFLAGS = \ + $(PLUGINFLAGS) +libextractor_previewopus_la_LIBADD = \ + -lavutil -lavformat -lavcodec -lswscale -lavresample -lmagic $(XLIB) + +test_previewopus_SOURCES = \ + test_previewopus.c +test_previewopus_LDADD = \ + $(top_builddir)/src/plugins/libtest.la + libextractor_tiff_la_SOURCES = \ tiff_extractor.c libextractor_tiff_la_LDFLAGS = \ diff -Nru libextractor-1.2/src/plugins/Makefile.in libextractor-1.3/src/plugins/Makefile.in --- libextractor-1.2/src/plugins/Makefile.in 2013-10-19 14:32:52.000000000 +0000 +++ libextractor-1.3/src/plugins/Makefile.in 2013-12-23 11:15:28.000000000 +0000 @@ -1,8 +1,9 @@ -# Makefile.in generated by automake 1.14 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2013 Free Software Foundation, Inc. - +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 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. @@ -15,51 +16,23 @@ @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 \ +am__make_dryrun = \ + { \ + am__dry=no; \ 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;; \ + echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \ + | grep '^AM OK$$' >/dev/null || am__dry=yes;; \ + *) \ + for am__flg in $$MAKEFLAGS; do \ + case $$am__flg in \ + *=*|--*) ;; \ + *n*) am__dry=yes; break;; \ + esac; \ + done;; \ 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)) + test $$am__dry = yes; \ + } pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ @@ -89,10 +62,9 @@ $(am__EXEEXT_8) $(am__EXEEXT_9) $(am__EXEEXT_10) \ $(am__EXEEXT_11) $(am__EXEEXT_12) $(am__EXEEXT_13) \ $(am__EXEEXT_14) $(am__EXEEXT_15) $(am__EXEEXT_16) \ - $(am__EXEEXT_17) + $(am__EXEEXT_17) $(am__EXEEXT_18) subdir = src/plugins -DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \ - $(top_srcdir)/depcomp $(top_srcdir)/test-driver +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/abi-gsf.m4 \ $(top_srcdir)/m4/ac_define_dir.m4 \ @@ -150,7 +122,6 @@ 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 = libextractor_archive_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ $(AM_CFLAGS) $(CFLAGS) $(libextractor_archive_la_LDFLAGS) \ @@ -332,6 +303,16 @@ $(AM_CFLAGS) $(CFLAGS) $(libextractor_png_la_LDFLAGS) \ $(LDFLAGS) -o $@ @HAVE_ZLIB_TRUE@am_libextractor_png_la_rpath = -rpath $(plugindir) +libextractor_previewopus_la_DEPENDENCIES = $(am__DEPENDENCIES_1) +am_libextractor_previewopus_la_OBJECTS = previewopus_extractor.lo +libextractor_previewopus_la_OBJECTS = \ + $(am_libextractor_previewopus_la_OBJECTS) +libextractor_previewopus_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ + $(AM_CFLAGS) $(CFLAGS) $(libextractor_previewopus_la_LDFLAGS) \ + $(LDFLAGS) -o $@ +@HAVE_FFMPEG_NEW_TRUE@@HAVE_MAGIC_TRUE@am_libextractor_previewopus_la_rpath = \ +@HAVE_FFMPEG_NEW_TRUE@@HAVE_MAGIC_TRUE@ -rpath $(plugindir) libextractor_ps_la_DEPENDENCIES = $(am__DEPENDENCIES_1) am_libextractor_ps_la_OBJECTS = ps_extractor.lo libextractor_ps_la_OBJECTS = $(am_libextractor_ps_la_OBJECTS) @@ -432,21 +413,22 @@ @HAVE_ARCHIVE_TRUE@am__EXEEXT_1 = test_archive$(EXEEXT) @HAVE_EXIV2_TRUE@am__EXEEXT_2 = test_exiv2$(EXEEXT) @HAVE_FFMPEG_TRUE@@HAVE_MAGIC_TRUE@am__EXEEXT_3 = test_thumbnailffmpeg$(EXEEXT) -@HAVE_FLAC_TRUE@am__EXEEXT_4 = test_flac$(EXEEXT) -@HAVE_GIF_TRUE@am__EXEEXT_5 = test_gif$(EXEEXT) -@HAVE_GSF_TRUE@am__EXEEXT_6 = test_ole2$(EXEEXT) -@HAVE_GSTREAMER_TRUE@am__EXEEXT_7 = test_gstreamer$(EXEEXT) -@HAVE_GTK_TRUE@@HAVE_MAGIC_TRUE@am__EXEEXT_8 = \ +@HAVE_FFMPEG_NEW_TRUE@@HAVE_MAGIC_TRUE@am__EXEEXT_4 = test_previewopus$(EXEEXT) +@HAVE_FLAC_TRUE@am__EXEEXT_5 = test_flac$(EXEEXT) +@HAVE_GIF_TRUE@am__EXEEXT_6 = test_gif$(EXEEXT) +@HAVE_GSF_TRUE@am__EXEEXT_7 = test_ole2$(EXEEXT) +@HAVE_GSTREAMER_TRUE@am__EXEEXT_8 = test_gstreamer$(EXEEXT) +@HAVE_GTK_TRUE@@HAVE_MAGIC_TRUE@am__EXEEXT_9 = \ @HAVE_GTK_TRUE@@HAVE_MAGIC_TRUE@ test_thumbnailgtk$(EXEEXT) -@HAVE_MAGIC_TRUE@@HAVE_TIDY_TRUE@am__EXEEXT_9 = test_html$(EXEEXT) -@HAVE_JPEG_TRUE@am__EXEEXT_10 = test_jpeg$(EXEEXT) -@HAVE_SMF_TRUE@am__EXEEXT_11 = test_midi$(EXEEXT) -@HAVE_MAGIC_TRUE@am__EXEEXT_12 = test_mime$(EXEEXT) -@HAVE_MPEG2_TRUE@am__EXEEXT_13 = test_mpeg$(EXEEXT) -@HAVE_VORBISFILE_TRUE@am__EXEEXT_14 = test_ogg$(EXEEXT) -@HAVE_LIBRPM_TRUE@am__EXEEXT_15 = test_rpm$(EXEEXT) -@HAVE_TIFF_TRUE@am__EXEEXT_16 = test_tiff$(EXEEXT) -@HAVE_ZLIB_TRUE@am__EXEEXT_17 = test_deb$(EXEEXT) +@HAVE_MAGIC_TRUE@@HAVE_TIDY_TRUE@am__EXEEXT_10 = test_html$(EXEEXT) +@HAVE_JPEG_TRUE@am__EXEEXT_11 = test_jpeg$(EXEEXT) +@HAVE_SMF_TRUE@am__EXEEXT_12 = test_midi$(EXEEXT) +@HAVE_MAGIC_TRUE@am__EXEEXT_13 = test_mime$(EXEEXT) +@HAVE_MPEG2_TRUE@am__EXEEXT_14 = test_mpeg$(EXEEXT) +@HAVE_VORBISFILE_TRUE@am__EXEEXT_15 = test_ogg$(EXEEXT) +@HAVE_LIBRPM_TRUE@am__EXEEXT_16 = test_rpm$(EXEEXT) +@HAVE_TIFF_TRUE@am__EXEEXT_17 = test_tiff$(EXEEXT) +@HAVE_ZLIB_TRUE@am__EXEEXT_18 = test_deb$(EXEEXT) am_test_archive_OBJECTS = test_archive.$(OBJEXT) test_archive_OBJECTS = $(am_test_archive_OBJECTS) test_archive_DEPENDENCIES = $(top_builddir)/src/plugins/libtest.la @@ -513,6 +495,10 @@ am_test_png_OBJECTS = test_png.$(OBJEXT) test_png_OBJECTS = $(am_test_png_OBJECTS) test_png_DEPENDENCIES = $(top_builddir)/src/plugins/libtest.la +am_test_previewopus_OBJECTS = test_previewopus.$(OBJEXT) +test_previewopus_OBJECTS = $(am_test_previewopus_OBJECTS) +test_previewopus_DEPENDENCIES = \ + $(top_builddir)/src/plugins/libtest.la am_test_ps_OBJECTS = test_ps.$(OBJEXT) test_ps_OBJECTS = $(am_test_ps_OBJECTS) test_ps_DEPENDENCIES = $(top_builddir)/src/plugins/libtest.la @@ -548,18 +534,6 @@ am_test_zip_OBJECTS = test_zip.$(OBJEXT) test_zip_OBJECTS = $(am_test_zip_OBJECTS) test_zip_DEPENDENCIES = $(top_builddir)/src/plugins/libtest.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 @@ -572,16 +546,17 @@ $(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 = +am__v_CC_0 = @echo " CC " $@; +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) +am__v_at_0 = @ 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 = +am__v_CCLD_0 = @echo " CCLD " $@; CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) LTCXXCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ @@ -590,16 +565,17 @@ $(AM_CXXFLAGS) $(CXXFLAGS) AM_V_CXX = $(am__v_CXX_@AM_V@) am__v_CXX_ = $(am__v_CXX_@AM_DEFAULT_V@) -am__v_CXX_0 = @echo " CXX " $@; -am__v_CXX_1 = +am__v_CXX_0 = @echo " CXX " $@; CXXLD = $(CXX) CXXLINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \ $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ AM_V_CXXLD = $(am__v_CXXLD_@AM_V@) am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@) -am__v_CXXLD_0 = @echo " CXXLD " $@; -am__v_CXXLD_1 = +am__v_CXXLD_0 = @echo " CXXLD " $@; +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) +am__v_GEN_0 = @echo " GEN " $@; SOURCES = $(libextractor_archive_la_SOURCES) \ $(libextractor_deb_la_SOURCES) $(libextractor_dvi_la_SOURCES) \ $(libextractor_exiv2_la_SOURCES) \ @@ -612,9 +588,11 @@ $(libextractor_mpeg_la_SOURCES) $(libextractor_nsf_la_SOURCES) \ $(libextractor_nsfe_la_SOURCES) $(libextractor_odf_la_SOURCES) \ $(libextractor_ogg_la_SOURCES) $(libextractor_ole2_la_SOURCES) \ - $(libextractor_png_la_SOURCES) $(libextractor_ps_la_SOURCES) \ - $(libextractor_riff_la_SOURCES) $(libextractor_rpm_la_SOURCES) \ - $(libextractor_s3m_la_SOURCES) $(libextractor_sid_la_SOURCES) \ + $(libextractor_png_la_SOURCES) \ + $(libextractor_previewopus_la_SOURCES) \ + $(libextractor_ps_la_SOURCES) $(libextractor_riff_la_SOURCES) \ + $(libextractor_rpm_la_SOURCES) $(libextractor_s3m_la_SOURCES) \ + $(libextractor_sid_la_SOURCES) \ $(libextractor_thumbnailffmpeg_la_SOURCES) \ $(libextractor_thumbnailgtk_la_SOURCES) \ $(libextractor_tiff_la_SOURCES) $(libextractor_wav_la_SOURCES) \ @@ -627,11 +605,11 @@ $(test_midi_SOURCES) $(test_mime_SOURCES) $(test_mpeg_SOURCES) \ $(test_nsf_SOURCES) $(test_nsfe_SOURCES) $(test_odf_SOURCES) \ $(test_ogg_SOURCES) $(test_ole2_SOURCES) $(test_png_SOURCES) \ - $(test_ps_SOURCES) $(test_riff_SOURCES) $(test_rpm_SOURCES) \ - $(test_s3m_SOURCES) $(test_sid_SOURCES) \ - $(test_thumbnailffmpeg_SOURCES) $(test_thumbnailgtk_SOURCES) \ - $(test_tiff_SOURCES) $(test_wav_SOURCES) $(test_xm_SOURCES) \ - $(test_zip_SOURCES) + $(test_previewopus_SOURCES) $(test_ps_SOURCES) \ + $(test_riff_SOURCES) $(test_rpm_SOURCES) $(test_s3m_SOURCES) \ + $(test_sid_SOURCES) $(test_thumbnailffmpeg_SOURCES) \ + $(test_thumbnailgtk_SOURCES) $(test_tiff_SOURCES) \ + $(test_wav_SOURCES) $(test_xm_SOURCES) $(test_zip_SOURCES) DIST_SOURCES = $(libextractor_archive_la_SOURCES) \ $(libextractor_deb_la_SOURCES) $(libextractor_dvi_la_SOURCES) \ $(libextractor_exiv2_la_SOURCES) \ @@ -644,9 +622,11 @@ $(libextractor_mpeg_la_SOURCES) $(libextractor_nsf_la_SOURCES) \ $(libextractor_nsfe_la_SOURCES) $(libextractor_odf_la_SOURCES) \ $(libextractor_ogg_la_SOURCES) $(libextractor_ole2_la_SOURCES) \ - $(libextractor_png_la_SOURCES) $(libextractor_ps_la_SOURCES) \ - $(libextractor_riff_la_SOURCES) $(libextractor_rpm_la_SOURCES) \ - $(libextractor_s3m_la_SOURCES) $(libextractor_sid_la_SOURCES) \ + $(libextractor_png_la_SOURCES) \ + $(libextractor_previewopus_la_SOURCES) \ + $(libextractor_ps_la_SOURCES) $(libextractor_riff_la_SOURCES) \ + $(libextractor_rpm_la_SOURCES) $(libextractor_s3m_la_SOURCES) \ + $(libextractor_sid_la_SOURCES) \ $(libextractor_thumbnailffmpeg_la_SOURCES) \ $(libextractor_thumbnailgtk_la_SOURCES) \ $(libextractor_tiff_la_SOURCES) $(libextractor_wav_la_SOURCES) \ @@ -659,19 +639,18 @@ $(test_midi_SOURCES) $(test_mime_SOURCES) $(test_mpeg_SOURCES) \ $(test_nsf_SOURCES) $(test_nsfe_SOURCES) $(test_odf_SOURCES) \ $(test_ogg_SOURCES) $(test_ole2_SOURCES) $(test_png_SOURCES) \ - $(test_ps_SOURCES) $(test_riff_SOURCES) $(test_rpm_SOURCES) \ - $(test_s3m_SOURCES) $(test_sid_SOURCES) \ - $(test_thumbnailffmpeg_SOURCES) $(test_thumbnailgtk_SOURCES) \ - $(test_tiff_SOURCES) $(test_wav_SOURCES) $(test_xm_SOURCES) \ - $(test_zip_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 + $(test_previewopus_SOURCES) $(test_ps_SOURCES) \ + $(test_riff_SOURCES) $(test_rpm_SOURCES) $(test_s3m_SOURCES) \ + $(test_sid_SOURCES) $(test_thumbnailffmpeg_SOURCES) \ + $(test_thumbnailgtk_SOURCES) $(test_tiff_SOURCES) \ + $(test_wav_SOURCES) $(test_xm_SOURCES) $(test_zip_SOURCES) +RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ + html-recursive info-recursive install-data-recursive \ + install-dvi-recursive install-exec-recursive \ + install-html-recursive install-info-recursive \ + install-pdf-recursive install-ps-recursive install-recursive \ + installcheck-recursive installdirs-recursive pdf-recursive \ + ps-recursive uninstall-recursive am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ @@ -679,207 +658,13 @@ 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 \ - check recheck 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)` +AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \ + $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \ + distdir ETAGS = etags CTAGS = ctags -am__tty_colors_dummy = \ - mgn= red= grn= lgn= blu= brg= std=; \ - am__color_tests=no -am__tty_colors = { \ - $(am__tty_colors_dummy); \ - if test "X$(AM_COLOR_TESTS)" = Xno; then \ - am__color_tests=no; \ - elif test "X$(AM_COLOR_TESTS)" = Xalways; then \ - am__color_tests=yes; \ - elif test "X$$TERM" != Xdumb && { test -t 1; } 2>/dev/null; then \ - am__color_tests=yes; \ - fi; \ - if test $$am__color_tests = yes; then \ - red=''; \ - grn=''; \ - lgn=''; \ - blu=''; \ - mgn=''; \ - brg=''; \ - std=''; \ - fi; \ -} -am__recheck_rx = ^[ ]*:recheck:[ ]* -am__global_test_result_rx = ^[ ]*:global-test-result:[ ]* -am__copy_in_global_log_rx = ^[ ]*:copy-in-global-log:[ ]* -# A command that, given a newline-separated list of test names on the -# standard input, print the name of the tests that are to be re-run -# upon "make recheck". -am__list_recheck_tests = $(AWK) '{ \ - recheck = 1; \ - while ((rc = (getline line < ($$0 ".trs"))) != 0) \ - { \ - if (rc < 0) \ - { \ - if ((getline line2 < ($$0 ".log")) < 0) \ - recheck = 0; \ - break; \ - } \ - else if (line ~ /$(am__recheck_rx)[nN][Oo]/) \ - { \ - recheck = 0; \ - break; \ - } \ - else if (line ~ /$(am__recheck_rx)[yY][eE][sS]/) \ - { \ - break; \ - } \ - }; \ - if (recheck) \ - print $$0; \ - close ($$0 ".trs"); \ - close ($$0 ".log"); \ -}' -# A command that, given a newline-separated list of test names on the -# standard input, create the global log from their .trs and .log files. -am__create_global_log = $(AWK) ' \ -function fatal(msg) \ -{ \ - print "fatal: making $@: " msg | "cat >&2"; \ - exit 1; \ -} \ -function rst_section(header) \ -{ \ - print header; \ - len = length(header); \ - for (i = 1; i <= len; i = i + 1) \ - printf "="; \ - printf "\n\n"; \ -} \ -{ \ - copy_in_global_log = 1; \ - global_test_result = "RUN"; \ - while ((rc = (getline line < ($$0 ".trs"))) != 0) \ - { \ - if (rc < 0) \ - fatal("failed to read from " $$0 ".trs"); \ - if (line ~ /$(am__global_test_result_rx)/) \ - { \ - sub("$(am__global_test_result_rx)", "", line); \ - sub("[ ]*$$", "", line); \ - global_test_result = line; \ - } \ - else if (line ~ /$(am__copy_in_global_log_rx)[nN][oO]/) \ - copy_in_global_log = 0; \ - }; \ - if (copy_in_global_log) \ - { \ - rst_section(global_test_result ": " $$0); \ - while ((rc = (getline line < ($$0 ".log"))) != 0) \ - { \ - if (rc < 0) \ - fatal("failed to read from " $$0 ".log"); \ - print line; \ - }; \ - printf "\n"; \ - }; \ - close ($$0 ".trs"); \ - close ($$0 ".log"); \ -}' -# Restructured Text title. -am__rst_title = { sed 's/.*/ & /;h;s/./=/g;p;x;s/ *$$//;p;g' && echo; } -# Solaris 10 'make', and several other traditional 'make' implementations, -# pass "-e" to $(SHELL), and POSIX 2008 even requires this. Work around it -# by disabling -e (using the XSI extension "set +e") if it's set. -am__sh_e_setup = case $$- in *e*) set +e;; esac -# Default flags passed to test drivers. -am__common_driver_flags = \ - --color-tests "$$am__color_tests" \ - --enable-hard-errors "$$am__enable_hard_errors" \ - --expect-failure "$$am__expect_failure" -# To be inserted before the command running the test. Creates the -# directory for the log if needed. Stores in $dir the directory -# containing $f, in $tst the test, in $log the log. Executes the -# developer- defined test setup AM_TESTS_ENVIRONMENT (if any), and -# passes TESTS_ENVIRONMENT. Set up options for the wrapper that -# will run the test scripts (or their associated LOG_COMPILER, if -# thy have one). -am__check_pre = \ -$(am__sh_e_setup); \ -$(am__vpath_adj_setup) $(am__vpath_adj) \ -$(am__tty_colors); \ -srcdir=$(srcdir); export srcdir; \ -case "$@" in \ - */*) am__odir=`echo "./$@" | sed 's|/[^/]*$$||'`;; \ - *) am__odir=.;; \ -esac; \ -test "x$$am__odir" = x"." || test -d "$$am__odir" \ - || $(MKDIR_P) "$$am__odir" || exit $$?; \ -if test -f "./$$f"; then dir=./; \ -elif test -f "$$f"; then dir=; \ -else dir="$(srcdir)/"; fi; \ -tst=$$dir$$f; log='$@'; \ -if test -n '$(DISABLE_HARD_ERRORS)'; then \ - am__enable_hard_errors=no; \ -else \ - am__enable_hard_errors=yes; \ -fi; \ -case " $(XFAIL_TESTS) " in \ - *[\ \ ]$$f[\ \ ]* | *[\ \ ]$$dir$$f[\ \ ]*) \ - am__expect_failure=yes;; \ - *) \ - am__expect_failure=no;; \ -esac; \ -$(AM_TESTS_ENVIRONMENT) $(TESTS_ENVIRONMENT) -# A shell command to get the names of the tests scripts with any registered -# extension removed (i.e., equivalently, the names of the test logs, with -# the '.log' extension removed). The result is saved in the shell variable -# '$bases'. This honors runtime overriding of TESTS and TEST_LOGS. Sadly, -# we cannot use something simpler, involving e.g., "$(TEST_LOGS:.log=)", -# since that might cause problem with VPATH rewrites for suffix-less tests. -# See also 'test-harness-vpath-rewrite.sh' and 'test-trs-basic.sh'. -am__set_TESTS_bases = \ - bases='$(TEST_LOGS)'; \ - bases=`for i in $$bases; do echo $$i; done | sed 's/\.log$$//'`; \ - bases=`echo $$bases` -RECHECK_LOGS = $(TEST_LOGS) -TEST_SUITE_LOG = test-suite.log -TEST_EXTENSIONS = @EXEEXT@ .test -LOG_DRIVER = $(SHELL) $(top_srcdir)/test-driver -LOG_COMPILE = $(LOG_COMPILER) $(AM_LOG_FLAGS) $(LOG_FLAGS) -am__set_b = \ - case '$@' in \ - */*) \ - case '$*' in \ - */*) b='$*';; \ - *) b=`echo '$@' | sed 's/\.log$$//'`; \ - esac;; \ - *) \ - b='$*';; \ - esac -am__test_logs1 = $(TESTS:=.log) -am__test_logs2 = $(am__test_logs1:@EXEEXT@.log=.log) -TEST_LOGS = $(am__test_logs2:.test.log=.log) -TEST_LOG_DRIVER = $(SHELL) $(top_srcdir)/test-driver -TEST_LOG_COMPILE = $(TEST_LOG_COMPILER) $(AM_TEST_LOG_FLAGS) \ - $(TEST_LOG_FLAGS) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) am__relativize = \ @@ -1148,6 +933,8 @@ # FFmpeg-thumbnailer requires MAGIC and FFMPEG @HAVE_FFMPEG_TRUE@@HAVE_MAGIC_TRUE@PLUGIN_FFMPEG = libextractor_thumbnailffmpeg.la @HAVE_FFMPEG_TRUE@@HAVE_MAGIC_TRUE@TEST_FFMPEG = test_thumbnailffmpeg +@HAVE_FFMPEG_NEW_TRUE@@HAVE_MAGIC_TRUE@PLUGIN_PREVIEWOPUS = libextractor_previewopus.la +@HAVE_FFMPEG_NEW_TRUE@@HAVE_MAGIC_TRUE@TEST_PREVIEWOPUS = test_previewopus # Gtk-thumbnailer requires MAGIC and GTK @HAVE_GTK_TRUE@@HAVE_MAGIC_TRUE@PLUGIN_GTK = libextractor_thumbnailgtk.la @@ -1216,6 +1003,7 @@ $(PLUGIN_MP4) \ $(PLUGIN_MPEG) \ $(PLUGIN_OGG) \ + $(PLUGIN_PREVIEWOPUS) \ $(PLUGIN_RPM) \ $(PLUGIN_TIFF) \ $(PLUGIN_ZLIB) @@ -1669,6 +1457,21 @@ test_thumbnailgtk_LDADD = \ $(top_builddir)/src/plugins/libtest.la +libextractor_previewopus_la_SOURCES = \ + previewopus_extractor.c + +libextractor_previewopus_la_LDFLAGS = \ + $(PLUGINFLAGS) + +libextractor_previewopus_la_LIBADD = \ + -lavutil -lavformat -lavcodec -lswscale -lavresample -lmagic $(XLIB) + +test_previewopus_SOURCES = \ + test_previewopus.c + +test_previewopus_LDADD = \ + $(top_builddir)/src/plugins/libtest.la + libextractor_tiff_la_SOURCES = \ tiff_extractor.c @@ -1732,7 +1535,7 @@ all: all-recursive .SUFFIXES: -.SUFFIXES: .c .cc .lo .log .o .obj .test .test$(EXEEXT) .trs +.SUFFIXES: .c .cc .lo .o .obj $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ @@ -1766,15 +1569,12 @@ clean-noinstLTLIBRARIES: -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES) - @list='$(noinst_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}; \ - } - + @list='$(noinst_LTLIBRARIES)'; for p in $$list; do \ + dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ + test "$$dir" != "$$p" || dir=.; \ + echo "rm -f \"$${dir}/so_locations\""; \ + rm -f "$${dir}/so_locations"; \ + done install-pluginLTLIBRARIES: $(plugin_LTLIBRARIES) @$(NORMAL_INSTALL) @list='$(plugin_LTLIBRARIES)'; test -n "$(plugindir)" || list=; \ @@ -1801,111 +1601,78 @@ clean-pluginLTLIBRARIES: -test -z "$(plugin_LTLIBRARIES)" || rm -f $(plugin_LTLIBRARIES) - @list='$(plugin_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}; \ - } - + @list='$(plugin_LTLIBRARIES)'; for p in $$list; do \ + dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ + test "$$dir" != "$$p" || dir=.; \ + echo "rm -f \"$${dir}/so_locations\""; \ + rm -f "$${dir}/so_locations"; \ + done libextractor_archive.la: $(libextractor_archive_la_OBJECTS) $(libextractor_archive_la_DEPENDENCIES) $(EXTRA_libextractor_archive_la_DEPENDENCIES) $(AM_V_CCLD)$(libextractor_archive_la_LINK) $(am_libextractor_archive_la_rpath) $(libextractor_archive_la_OBJECTS) $(libextractor_archive_la_LIBADD) $(LIBS) - libextractor_deb.la: $(libextractor_deb_la_OBJECTS) $(libextractor_deb_la_DEPENDENCIES) $(EXTRA_libextractor_deb_la_DEPENDENCIES) $(AM_V_CCLD)$(libextractor_deb_la_LINK) $(am_libextractor_deb_la_rpath) $(libextractor_deb_la_OBJECTS) $(libextractor_deb_la_LIBADD) $(LIBS) - libextractor_dvi.la: $(libextractor_dvi_la_OBJECTS) $(libextractor_dvi_la_DEPENDENCIES) $(EXTRA_libextractor_dvi_la_DEPENDENCIES) $(AM_V_CCLD)$(libextractor_dvi_la_LINK) -rpath $(plugindir) $(libextractor_dvi_la_OBJECTS) $(libextractor_dvi_la_LIBADD) $(LIBS) - libextractor_exiv2.la: $(libextractor_exiv2_la_OBJECTS) $(libextractor_exiv2_la_DEPENDENCIES) $(EXTRA_libextractor_exiv2_la_DEPENDENCIES) $(AM_V_CXXLD)$(libextractor_exiv2_la_LINK) $(am_libextractor_exiv2_la_rpath) $(libextractor_exiv2_la_OBJECTS) $(libextractor_exiv2_la_LIBADD) $(LIBS) - libextractor_flac.la: $(libextractor_flac_la_OBJECTS) $(libextractor_flac_la_DEPENDENCIES) $(EXTRA_libextractor_flac_la_DEPENDENCIES) $(AM_V_CCLD)$(libextractor_flac_la_LINK) $(am_libextractor_flac_la_rpath) $(libextractor_flac_la_OBJECTS) $(libextractor_flac_la_LIBADD) $(LIBS) - libextractor_gif.la: $(libextractor_gif_la_OBJECTS) $(libextractor_gif_la_DEPENDENCIES) $(EXTRA_libextractor_gif_la_DEPENDENCIES) $(AM_V_CCLD)$(libextractor_gif_la_LINK) $(am_libextractor_gif_la_rpath) $(libextractor_gif_la_OBJECTS) $(libextractor_gif_la_LIBADD) $(LIBS) - libextractor_gstreamer.la: $(libextractor_gstreamer_la_OBJECTS) $(libextractor_gstreamer_la_DEPENDENCIES) $(EXTRA_libextractor_gstreamer_la_DEPENDENCIES) $(AM_V_CCLD)$(libextractor_gstreamer_la_LINK) $(am_libextractor_gstreamer_la_rpath) $(libextractor_gstreamer_la_OBJECTS) $(libextractor_gstreamer_la_LIBADD) $(LIBS) - libextractor_html.la: $(libextractor_html_la_OBJECTS) $(libextractor_html_la_DEPENDENCIES) $(EXTRA_libextractor_html_la_DEPENDENCIES) $(AM_V_CCLD)$(libextractor_html_la_LINK) $(am_libextractor_html_la_rpath) $(libextractor_html_la_OBJECTS) $(libextractor_html_la_LIBADD) $(LIBS) - libextractor_it.la: $(libextractor_it_la_OBJECTS) $(libextractor_it_la_DEPENDENCIES) $(EXTRA_libextractor_it_la_DEPENDENCIES) $(AM_V_CCLD)$(libextractor_it_la_LINK) -rpath $(plugindir) $(libextractor_it_la_OBJECTS) $(libextractor_it_la_LIBADD) $(LIBS) - libextractor_jpeg.la: $(libextractor_jpeg_la_OBJECTS) $(libextractor_jpeg_la_DEPENDENCIES) $(EXTRA_libextractor_jpeg_la_DEPENDENCIES) $(AM_V_CCLD)$(libextractor_jpeg_la_LINK) $(am_libextractor_jpeg_la_rpath) $(libextractor_jpeg_la_OBJECTS) $(libextractor_jpeg_la_LIBADD) $(LIBS) - libextractor_man.la: $(libextractor_man_la_OBJECTS) $(libextractor_man_la_DEPENDENCIES) $(EXTRA_libextractor_man_la_DEPENDENCIES) $(AM_V_CCLD)$(libextractor_man_la_LINK) -rpath $(plugindir) $(libextractor_man_la_OBJECTS) $(libextractor_man_la_LIBADD) $(LIBS) - libextractor_midi.la: $(libextractor_midi_la_OBJECTS) $(libextractor_midi_la_DEPENDENCIES) $(EXTRA_libextractor_midi_la_DEPENDENCIES) $(AM_V_CCLD)$(libextractor_midi_la_LINK) $(am_libextractor_midi_la_rpath) $(libextractor_midi_la_OBJECTS) $(libextractor_midi_la_LIBADD) $(LIBS) - libextractor_mime.la: $(libextractor_mime_la_OBJECTS) $(libextractor_mime_la_DEPENDENCIES) $(EXTRA_libextractor_mime_la_DEPENDENCIES) $(AM_V_CCLD)$(libextractor_mime_la_LINK) $(am_libextractor_mime_la_rpath) $(libextractor_mime_la_OBJECTS) $(libextractor_mime_la_LIBADD) $(LIBS) - libextractor_mp4.la: $(libextractor_mp4_la_OBJECTS) $(libextractor_mp4_la_DEPENDENCIES) $(EXTRA_libextractor_mp4_la_DEPENDENCIES) $(AM_V_CCLD)$(libextractor_mp4_la_LINK) $(am_libextractor_mp4_la_rpath) $(libextractor_mp4_la_OBJECTS) $(libextractor_mp4_la_LIBADD) $(LIBS) - libextractor_mpeg.la: $(libextractor_mpeg_la_OBJECTS) $(libextractor_mpeg_la_DEPENDENCIES) $(EXTRA_libextractor_mpeg_la_DEPENDENCIES) $(AM_V_CCLD)$(libextractor_mpeg_la_LINK) $(am_libextractor_mpeg_la_rpath) $(libextractor_mpeg_la_OBJECTS) $(libextractor_mpeg_la_LIBADD) $(LIBS) - libextractor_nsf.la: $(libextractor_nsf_la_OBJECTS) $(libextractor_nsf_la_DEPENDENCIES) $(EXTRA_libextractor_nsf_la_DEPENDENCIES) $(AM_V_CCLD)$(libextractor_nsf_la_LINK) -rpath $(plugindir) $(libextractor_nsf_la_OBJECTS) $(libextractor_nsf_la_LIBADD) $(LIBS) - libextractor_nsfe.la: $(libextractor_nsfe_la_OBJECTS) $(libextractor_nsfe_la_DEPENDENCIES) $(EXTRA_libextractor_nsfe_la_DEPENDENCIES) $(AM_V_CCLD)$(libextractor_nsfe_la_LINK) -rpath $(plugindir) $(libextractor_nsfe_la_OBJECTS) $(libextractor_nsfe_la_LIBADD) $(LIBS) - libextractor_odf.la: $(libextractor_odf_la_OBJECTS) $(libextractor_odf_la_DEPENDENCIES) $(EXTRA_libextractor_odf_la_DEPENDENCIES) $(AM_V_CCLD)$(libextractor_odf_la_LINK) $(am_libextractor_odf_la_rpath) $(libextractor_odf_la_OBJECTS) $(libextractor_odf_la_LIBADD) $(LIBS) - libextractor_ogg.la: $(libextractor_ogg_la_OBJECTS) $(libextractor_ogg_la_DEPENDENCIES) $(EXTRA_libextractor_ogg_la_DEPENDENCIES) $(AM_V_CCLD)$(libextractor_ogg_la_LINK) $(am_libextractor_ogg_la_rpath) $(libextractor_ogg_la_OBJECTS) $(libextractor_ogg_la_LIBADD) $(LIBS) - libextractor_ole2.la: $(libextractor_ole2_la_OBJECTS) $(libextractor_ole2_la_DEPENDENCIES) $(EXTRA_libextractor_ole2_la_DEPENDENCIES) $(AM_V_CCLD)$(libextractor_ole2_la_LINK) $(am_libextractor_ole2_la_rpath) $(libextractor_ole2_la_OBJECTS) $(libextractor_ole2_la_LIBADD) $(LIBS) - libextractor_png.la: $(libextractor_png_la_OBJECTS) $(libextractor_png_la_DEPENDENCIES) $(EXTRA_libextractor_png_la_DEPENDENCIES) $(AM_V_CCLD)$(libextractor_png_la_LINK) $(am_libextractor_png_la_rpath) $(libextractor_png_la_OBJECTS) $(libextractor_png_la_LIBADD) $(LIBS) - +libextractor_previewopus.la: $(libextractor_previewopus_la_OBJECTS) $(libextractor_previewopus_la_DEPENDENCIES) $(EXTRA_libextractor_previewopus_la_DEPENDENCIES) + $(AM_V_CCLD)$(libextractor_previewopus_la_LINK) $(am_libextractor_previewopus_la_rpath) $(libextractor_previewopus_la_OBJECTS) $(libextractor_previewopus_la_LIBADD) $(LIBS) libextractor_ps.la: $(libextractor_ps_la_OBJECTS) $(libextractor_ps_la_DEPENDENCIES) $(EXTRA_libextractor_ps_la_DEPENDENCIES) $(AM_V_CCLD)$(libextractor_ps_la_LINK) -rpath $(plugindir) $(libextractor_ps_la_OBJECTS) $(libextractor_ps_la_LIBADD) $(LIBS) - libextractor_riff.la: $(libextractor_riff_la_OBJECTS) $(libextractor_riff_la_DEPENDENCIES) $(EXTRA_libextractor_riff_la_DEPENDENCIES) $(AM_V_CCLD)$(libextractor_riff_la_LINK) -rpath $(plugindir) $(libextractor_riff_la_OBJECTS) $(libextractor_riff_la_LIBADD) $(LIBS) - libextractor_rpm.la: $(libextractor_rpm_la_OBJECTS) $(libextractor_rpm_la_DEPENDENCIES) $(EXTRA_libextractor_rpm_la_DEPENDENCIES) $(AM_V_CCLD)$(libextractor_rpm_la_LINK) $(am_libextractor_rpm_la_rpath) $(libextractor_rpm_la_OBJECTS) $(libextractor_rpm_la_LIBADD) $(LIBS) - libextractor_s3m.la: $(libextractor_s3m_la_OBJECTS) $(libextractor_s3m_la_DEPENDENCIES) $(EXTRA_libextractor_s3m_la_DEPENDENCIES) $(AM_V_CCLD)$(libextractor_s3m_la_LINK) -rpath $(plugindir) $(libextractor_s3m_la_OBJECTS) $(libextractor_s3m_la_LIBADD) $(LIBS) - libextractor_sid.la: $(libextractor_sid_la_OBJECTS) $(libextractor_sid_la_DEPENDENCIES) $(EXTRA_libextractor_sid_la_DEPENDENCIES) $(AM_V_CCLD)$(libextractor_sid_la_LINK) -rpath $(plugindir) $(libextractor_sid_la_OBJECTS) $(libextractor_sid_la_LIBADD) $(LIBS) - libextractor_thumbnailffmpeg.la: $(libextractor_thumbnailffmpeg_la_OBJECTS) $(libextractor_thumbnailffmpeg_la_DEPENDENCIES) $(EXTRA_libextractor_thumbnailffmpeg_la_DEPENDENCIES) $(AM_V_CCLD)$(libextractor_thumbnailffmpeg_la_LINK) $(am_libextractor_thumbnailffmpeg_la_rpath) $(libextractor_thumbnailffmpeg_la_OBJECTS) $(libextractor_thumbnailffmpeg_la_LIBADD) $(LIBS) - libextractor_thumbnailgtk.la: $(libextractor_thumbnailgtk_la_OBJECTS) $(libextractor_thumbnailgtk_la_DEPENDENCIES) $(EXTRA_libextractor_thumbnailgtk_la_DEPENDENCIES) $(AM_V_CCLD)$(libextractor_thumbnailgtk_la_LINK) $(am_libextractor_thumbnailgtk_la_rpath) $(libextractor_thumbnailgtk_la_OBJECTS) $(libextractor_thumbnailgtk_la_LIBADD) $(LIBS) - libextractor_tiff.la: $(libextractor_tiff_la_OBJECTS) $(libextractor_tiff_la_DEPENDENCIES) $(EXTRA_libextractor_tiff_la_DEPENDENCIES) $(AM_V_CCLD)$(libextractor_tiff_la_LINK) $(am_libextractor_tiff_la_rpath) $(libextractor_tiff_la_OBJECTS) $(libextractor_tiff_la_LIBADD) $(LIBS) - libextractor_wav.la: $(libextractor_wav_la_OBJECTS) $(libextractor_wav_la_DEPENDENCIES) $(EXTRA_libextractor_wav_la_DEPENDENCIES) $(AM_V_CCLD)$(libextractor_wav_la_LINK) -rpath $(plugindir) $(libextractor_wav_la_OBJECTS) $(libextractor_wav_la_LIBADD) $(LIBS) - libextractor_xm.la: $(libextractor_xm_la_OBJECTS) $(libextractor_xm_la_DEPENDENCIES) $(EXTRA_libextractor_xm_la_DEPENDENCIES) $(AM_V_CCLD)$(libextractor_xm_la_LINK) -rpath $(plugindir) $(libextractor_xm_la_OBJECTS) $(libextractor_xm_la_LIBADD) $(LIBS) - libextractor_zip.la: $(libextractor_zip_la_OBJECTS) $(libextractor_zip_la_DEPENDENCIES) $(EXTRA_libextractor_zip_la_DEPENDENCIES) $(AM_V_CCLD)$(libextractor_zip_la_LINK) $(am_libextractor_zip_la_rpath) $(libextractor_zip_la_OBJECTS) $(libextractor_zip_la_LIBADD) $(LIBS) - libtest.la: $(libtest_la_OBJECTS) $(libtest_la_DEPENDENCIES) $(EXTRA_libtest_la_DEPENDENCIES) $(AM_V_CCLD)$(LINK) $(libtest_la_OBJECTS) $(libtest_la_LIBADD) $(LIBS) @@ -1917,127 +1684,99 @@ list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ echo " rm -f" $$list; \ rm -f $$list - test_archive$(EXEEXT): $(test_archive_OBJECTS) $(test_archive_DEPENDENCIES) $(EXTRA_test_archive_DEPENDENCIES) @rm -f test_archive$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_archive_OBJECTS) $(test_archive_LDADD) $(LIBS) - test_deb$(EXEEXT): $(test_deb_OBJECTS) $(test_deb_DEPENDENCIES) $(EXTRA_test_deb_DEPENDENCIES) @rm -f test_deb$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_deb_OBJECTS) $(test_deb_LDADD) $(LIBS) - test_dvi$(EXEEXT): $(test_dvi_OBJECTS) $(test_dvi_DEPENDENCIES) $(EXTRA_test_dvi_DEPENDENCIES) @rm -f test_dvi$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_dvi_OBJECTS) $(test_dvi_LDADD) $(LIBS) - test_exiv2$(EXEEXT): $(test_exiv2_OBJECTS) $(test_exiv2_DEPENDENCIES) $(EXTRA_test_exiv2_DEPENDENCIES) @rm -f test_exiv2$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_exiv2_OBJECTS) $(test_exiv2_LDADD) $(LIBS) - test_flac$(EXEEXT): $(test_flac_OBJECTS) $(test_flac_DEPENDENCIES) $(EXTRA_test_flac_DEPENDENCIES) @rm -f test_flac$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_flac_OBJECTS) $(test_flac_LDADD) $(LIBS) - test_gif$(EXEEXT): $(test_gif_OBJECTS) $(test_gif_DEPENDENCIES) $(EXTRA_test_gif_DEPENDENCIES) @rm -f test_gif$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_gif_OBJECTS) $(test_gif_LDADD) $(LIBS) - test_gstreamer$(EXEEXT): $(test_gstreamer_OBJECTS) $(test_gstreamer_DEPENDENCIES) $(EXTRA_test_gstreamer_DEPENDENCIES) @rm -f test_gstreamer$(EXEEXT) $(AM_V_CCLD)$(test_gstreamer_LINK) $(test_gstreamer_OBJECTS) $(test_gstreamer_LDADD) $(LIBS) - test_html$(EXEEXT): $(test_html_OBJECTS) $(test_html_DEPENDENCIES) $(EXTRA_test_html_DEPENDENCIES) @rm -f test_html$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_html_OBJECTS) $(test_html_LDADD) $(LIBS) - test_it$(EXEEXT): $(test_it_OBJECTS) $(test_it_DEPENDENCIES) $(EXTRA_test_it_DEPENDENCIES) @rm -f test_it$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_it_OBJECTS) $(test_it_LDADD) $(LIBS) - test_jpeg$(EXEEXT): $(test_jpeg_OBJECTS) $(test_jpeg_DEPENDENCIES) $(EXTRA_test_jpeg_DEPENDENCIES) @rm -f test_jpeg$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_jpeg_OBJECTS) $(test_jpeg_LDADD) $(LIBS) - test_man$(EXEEXT): $(test_man_OBJECTS) $(test_man_DEPENDENCIES) $(EXTRA_test_man_DEPENDENCIES) @rm -f test_man$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_man_OBJECTS) $(test_man_LDADD) $(LIBS) - test_midi$(EXEEXT): $(test_midi_OBJECTS) $(test_midi_DEPENDENCIES) $(EXTRA_test_midi_DEPENDENCIES) @rm -f test_midi$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_midi_OBJECTS) $(test_midi_LDADD) $(LIBS) - test_mime$(EXEEXT): $(test_mime_OBJECTS) $(test_mime_DEPENDENCIES) $(EXTRA_test_mime_DEPENDENCIES) @rm -f test_mime$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_mime_OBJECTS) $(test_mime_LDADD) $(LIBS) - test_mpeg$(EXEEXT): $(test_mpeg_OBJECTS) $(test_mpeg_DEPENDENCIES) $(EXTRA_test_mpeg_DEPENDENCIES) @rm -f test_mpeg$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_mpeg_OBJECTS) $(test_mpeg_LDADD) $(LIBS) - test_nsf$(EXEEXT): $(test_nsf_OBJECTS) $(test_nsf_DEPENDENCIES) $(EXTRA_test_nsf_DEPENDENCIES) @rm -f test_nsf$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_nsf_OBJECTS) $(test_nsf_LDADD) $(LIBS) - test_nsfe$(EXEEXT): $(test_nsfe_OBJECTS) $(test_nsfe_DEPENDENCIES) $(EXTRA_test_nsfe_DEPENDENCIES) @rm -f test_nsfe$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_nsfe_OBJECTS) $(test_nsfe_LDADD) $(LIBS) - test_odf$(EXEEXT): $(test_odf_OBJECTS) $(test_odf_DEPENDENCIES) $(EXTRA_test_odf_DEPENDENCIES) @rm -f test_odf$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_odf_OBJECTS) $(test_odf_LDADD) $(LIBS) - test_ogg$(EXEEXT): $(test_ogg_OBJECTS) $(test_ogg_DEPENDENCIES) $(EXTRA_test_ogg_DEPENDENCIES) @rm -f test_ogg$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_ogg_OBJECTS) $(test_ogg_LDADD) $(LIBS) - test_ole2$(EXEEXT): $(test_ole2_OBJECTS) $(test_ole2_DEPENDENCIES) $(EXTRA_test_ole2_DEPENDENCIES) @rm -f test_ole2$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_ole2_OBJECTS) $(test_ole2_LDADD) $(LIBS) - test_png$(EXEEXT): $(test_png_OBJECTS) $(test_png_DEPENDENCIES) $(EXTRA_test_png_DEPENDENCIES) @rm -f test_png$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_png_OBJECTS) $(test_png_LDADD) $(LIBS) - +test_previewopus$(EXEEXT): $(test_previewopus_OBJECTS) $(test_previewopus_DEPENDENCIES) $(EXTRA_test_previewopus_DEPENDENCIES) + @rm -f test_previewopus$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(test_previewopus_OBJECTS) $(test_previewopus_LDADD) $(LIBS) test_ps$(EXEEXT): $(test_ps_OBJECTS) $(test_ps_DEPENDENCIES) $(EXTRA_test_ps_DEPENDENCIES) @rm -f test_ps$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_ps_OBJECTS) $(test_ps_LDADD) $(LIBS) - test_riff$(EXEEXT): $(test_riff_OBJECTS) $(test_riff_DEPENDENCIES) $(EXTRA_test_riff_DEPENDENCIES) @rm -f test_riff$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_riff_OBJECTS) $(test_riff_LDADD) $(LIBS) - test_rpm$(EXEEXT): $(test_rpm_OBJECTS) $(test_rpm_DEPENDENCIES) $(EXTRA_test_rpm_DEPENDENCIES) @rm -f test_rpm$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_rpm_OBJECTS) $(test_rpm_LDADD) $(LIBS) - test_s3m$(EXEEXT): $(test_s3m_OBJECTS) $(test_s3m_DEPENDENCIES) $(EXTRA_test_s3m_DEPENDENCIES) @rm -f test_s3m$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_s3m_OBJECTS) $(test_s3m_LDADD) $(LIBS) - test_sid$(EXEEXT): $(test_sid_OBJECTS) $(test_sid_DEPENDENCIES) $(EXTRA_test_sid_DEPENDENCIES) @rm -f test_sid$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_sid_OBJECTS) $(test_sid_LDADD) $(LIBS) - test_thumbnailffmpeg$(EXEEXT): $(test_thumbnailffmpeg_OBJECTS) $(test_thumbnailffmpeg_DEPENDENCIES) $(EXTRA_test_thumbnailffmpeg_DEPENDENCIES) @rm -f test_thumbnailffmpeg$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_thumbnailffmpeg_OBJECTS) $(test_thumbnailffmpeg_LDADD) $(LIBS) - test_thumbnailgtk$(EXEEXT): $(test_thumbnailgtk_OBJECTS) $(test_thumbnailgtk_DEPENDENCIES) $(EXTRA_test_thumbnailgtk_DEPENDENCIES) @rm -f test_thumbnailgtk$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_thumbnailgtk_OBJECTS) $(test_thumbnailgtk_LDADD) $(LIBS) - test_tiff$(EXEEXT): $(test_tiff_OBJECTS) $(test_tiff_DEPENDENCIES) $(EXTRA_test_tiff_DEPENDENCIES) @rm -f test_tiff$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_tiff_OBJECTS) $(test_tiff_LDADD) $(LIBS) - test_wav$(EXEEXT): $(test_wav_OBJECTS) $(test_wav_DEPENDENCIES) $(EXTRA_test_wav_DEPENDENCIES) @rm -f test_wav$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_wav_OBJECTS) $(test_wav_LDADD) $(LIBS) - test_xm$(EXEEXT): $(test_xm_OBJECTS) $(test_xm_DEPENDENCIES) $(EXTRA_test_xm_DEPENDENCIES) @rm -f test_xm$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_xm_OBJECTS) $(test_xm_LDADD) $(LIBS) - test_zip$(EXEEXT): $(test_zip_OBJECTS) $(test_zip_DEPENDENCIES) $(EXTRA_test_zip_DEPENDENCIES) @rm -f test_zip$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_zip_OBJECTS) $(test_zip_LDADD) $(LIBS) @@ -2070,6 +1809,7 @@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/odf_extractor.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ogg_extractor.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/png_extractor.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/previewopus_extractor.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ps_extractor.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/riff_extractor.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rpm_extractor.Plo@am__quote@ @@ -2096,6 +1836,7 @@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test_ogg.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test_ole2.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test_png.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test_previewopus.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test_ps.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test_riff.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test_rpm.Po@am__quote@ @@ -2118,14 +1859,14 @@ @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 $@ $< +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c $< .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) '$<'` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'` .c.lo: @am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -2204,25 +1945,22 @@ -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; \ +# into them and run `make' without going through this Makefile. +# To change the values of `make' variables: instead of editing Makefiles, +# (1) if the variable is set in `config.status', edit `config.status' +# (which will cause the Makefiles to be regenerated when you run `make'); +# (2) otherwise, pass the desired values on the `make' command line. +$(RECURSIVE_TARGETS): + @fail= failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ dot_seen=no; \ target=`echo $@ | sed s/-recursive//`; \ - case "$@" in \ - distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ - *) list='$(SUBDIRS)' ;; \ - esac; \ - for subdir in $$list; do \ + list='$(SUBDIRS)'; for subdir in $$list; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ dot_seen=yes; \ @@ -2237,12 +1975,57 @@ $(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 +$(RECURSIVE_CLEAN_TARGETS): + @fail= failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ + dot_seen=no; \ + case "$@" in \ + distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ + *) list='$(SUBDIRS)' ;; \ + esac; \ + rev=''; for subdir in $$list; do \ + if test "$$subdir" = "."; then :; else \ + rev="$$subdir $$rev"; \ + fi; \ + done; \ + rev="$$rev ."; \ + target=`echo $@ | sed s/-recursive//`; \ + for subdir in $$rev; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || eval $$failcom; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done +ctags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ + done + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + mkid -fID $$unique +tags: TAGS -tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) set x; \ here=`pwd`; \ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ @@ -2258,7 +2041,12 @@ set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ fi; \ done; \ - $(am__define_uniq_tagged_files); \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ @@ -2270,11 +2058,15 @@ $$unique; \ fi; \ fi -ctags: ctags-recursive - -CTAGS: ctags -ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) - $(am__define_uniq_tagged_files); \ +ctags: CTAGS +CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique @@ -2283,404 +2075,102 @@ 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 -# Recover from deleted '.trs' file; this should ensure that -# "rm -f foo.log; make foo.trs" re-run 'foo.test', and re-create -# both 'foo.log' and 'foo.trs'. Break the recipe in two subshells -# to avoid problems with "make -n". -.log.trs: - rm -f $< $@ - $(MAKE) $(AM_MAKEFLAGS) $< - -# Leading 'am--fnord' is there to ensure the list of targets does not -# expand to empty, as could happen e.g. with make check TESTS=''. -am--fnord $(TEST_LOGS) $(TEST_LOGS:.log=.trs): $(am__force_recheck) -am--force-recheck: - @: - -$(TEST_SUITE_LOG): $(TEST_LOGS) - @$(am__set_TESTS_bases); \ - am__f_ok () { test -f "$$1" && test -r "$$1"; }; \ - redo_bases=`for i in $$bases; do \ - am__f_ok $$i.trs && am__f_ok $$i.log || echo $$i; \ - done`; \ - if test -n "$$redo_bases"; then \ - redo_logs=`for i in $$redo_bases; do echo $$i.log; done`; \ - redo_results=`for i in $$redo_bases; do echo $$i.trs; done`; \ - if $(am__make_dryrun); then :; else \ - rm -f $$redo_logs && rm -f $$redo_results || exit 1; \ - fi; \ - fi; \ - if test -n "$$am__remaking_logs"; then \ - echo "fatal: making $(TEST_SUITE_LOG): possible infinite" \ - "recursion detected" >&2; \ - else \ - am__remaking_logs=yes $(MAKE) $(AM_MAKEFLAGS) $$redo_logs; \ - fi; \ - if $(am__make_dryrun); then :; else \ - st=0; \ - errmsg="fatal: making $(TEST_SUITE_LOG): failed to create"; \ - for i in $$redo_bases; do \ - test -f $$i.trs && test -r $$i.trs \ - || { echo "$$errmsg $$i.trs" >&2; st=1; }; \ - test -f $$i.log && test -r $$i.log \ - || { echo "$$errmsg $$i.log" >&2; st=1; }; \ +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ done; \ - test $$st -eq 0 || exit 1; \ - fi - @$(am__sh_e_setup); $(am__tty_colors); $(am__set_TESTS_bases); \ - ws='[ ]'; \ - results=`for b in $$bases; do echo $$b.trs; done`; \ - test -n "$$results" || results=/dev/null; \ - all=` grep "^$$ws*:test-result:" $$results | wc -l`; \ - pass=` grep "^$$ws*:test-result:$$ws*PASS" $$results | wc -l`; \ - fail=` grep "^$$ws*:test-result:$$ws*FAIL" $$results | wc -l`; \ - skip=` grep "^$$ws*:test-result:$$ws*SKIP" $$results | wc -l`; \ - xfail=`grep "^$$ws*:test-result:$$ws*XFAIL" $$results | wc -l`; \ - xpass=`grep "^$$ws*:test-result:$$ws*XPASS" $$results | wc -l`; \ - error=`grep "^$$ws*:test-result:$$ws*ERROR" $$results | wc -l`; \ - if test `expr $$fail + $$xpass + $$error` -eq 0; then \ - success=true; \ - else \ - success=false; \ - fi; \ - br='==================='; br=$$br$$br$$br$$br; \ - result_count () \ - { \ - if test x"$$1" = x"--maybe-color"; then \ - maybe_colorize=yes; \ - elif test x"$$1" = x"--no-color"; then \ - maybe_colorize=no; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ else \ - echo "$@: invalid 'result_count' usage" >&2; exit 4; \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ fi; \ - shift; \ - desc=$$1 count=$$2; \ - if test $$maybe_colorize = yes && test $$count -gt 0; then \ - color_start=$$3 color_end=$$std; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ else \ - color_start= color_end=; \ + skipped="($$skip tests were not run)"; \ fi; \ - echo "$${color_start}# $$desc $$count$${color_end}"; \ - }; \ - create_testsuite_report () \ - { \ - result_count $$1 "TOTAL:" $$all "$$brg"; \ - result_count $$1 "PASS: " $$pass "$$grn"; \ - result_count $$1 "SKIP: " $$skip "$$blu"; \ - result_count $$1 "XFAIL:" $$xfail "$$lgn"; \ - result_count $$1 "FAIL: " $$fail "$$red"; \ - result_count $$1 "XPASS:" $$xpass "$$red"; \ - result_count $$1 "ERROR:" $$error "$$mgn"; \ - }; \ - { \ - echo "$(PACKAGE_STRING): $(subdir)/$(TEST_SUITE_LOG)" | \ - $(am__rst_title); \ - create_testsuite_report --no-color; \ - echo; \ - echo ".. contents:: :depth: 2"; \ - echo; \ - for b in $$bases; do echo $$b; done \ - | $(am__create_global_log); \ - } >$(TEST_SUITE_LOG).tmp || exit 1; \ - mv $(TEST_SUITE_LOG).tmp $(TEST_SUITE_LOG); \ - if $$success; then \ - col="$$grn"; \ - else \ - col="$$red"; \ - test x"$$VERBOSE" = x || cat $(TEST_SUITE_LOG); \ - fi; \ - echo "$${col}$$br$${std}"; \ - echo "$${col}Testsuite summary for $(PACKAGE_STRING)$${std}"; \ - echo "$${col}$$br$${std}"; \ - create_testsuite_report --maybe-color; \ - echo "$$col$$br$$std"; \ - if $$success; then :; else \ - echo "$${col}See $(subdir)/$(TEST_SUITE_LOG)$${std}"; \ - if test -n "$(PACKAGE_BUGREPORT)"; then \ - echo "$${col}Please report to $(PACKAGE_BUGREPORT)$${std}"; \ - fi; \ - echo "$$col$$br$$std"; \ - fi; \ - $$success || exit 1 - -check-TESTS: - @list='$(RECHECK_LOGS)'; test -z "$$list" || rm -f $$list - @list='$(RECHECK_LOGS:.log=.trs)'; test -z "$$list" || rm -f $$list - @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) - @set +e; $(am__set_TESTS_bases); \ - log_list=`for i in $$bases; do echo $$i.log; done`; \ - trs_list=`for i in $$bases; do echo $$i.trs; done`; \ - log_list=`echo $$log_list`; trs_list=`echo $$trs_list`; \ - $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) TEST_LOGS="$$log_list"; \ - exit $$?; -recheck: all $(check_PROGRAMS) - @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) - @set +e; $(am__set_TESTS_bases); \ - bases=`for i in $$bases; do echo $$i; done \ - | $(am__list_recheck_tests)` || exit 1; \ - log_list=`for i in $$bases; do echo $$i.log; done`; \ - log_list=`echo $$log_list`; \ - $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) \ - am__force_recheck=am--force-recheck \ - TEST_LOGS="$$log_list"; \ - exit $$? -fuzz_default.sh.log: fuzz_default.sh - @p='fuzz_default.sh'; \ - b='fuzz_default.sh'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_dvi.log: test_dvi$(EXEEXT) - @p='test_dvi$(EXEEXT)'; \ - b='test_dvi'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_it.log: test_it$(EXEEXT) - @p='test_it$(EXEEXT)'; \ - b='test_it'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_man.log: test_man$(EXEEXT) - @p='test_man$(EXEEXT)'; \ - b='test_man'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_nsf.log: test_nsf$(EXEEXT) - @p='test_nsf$(EXEEXT)'; \ - b='test_nsf'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_nsfe.log: test_nsfe$(EXEEXT) - @p='test_nsfe$(EXEEXT)'; \ - b='test_nsfe'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_odf.log: test_odf$(EXEEXT) - @p='test_odf$(EXEEXT)'; \ - b='test_odf'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_ps.log: test_ps$(EXEEXT) - @p='test_ps$(EXEEXT)'; \ - b='test_ps'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_png.log: test_png$(EXEEXT) - @p='test_png$(EXEEXT)'; \ - b='test_png'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_riff.log: test_riff$(EXEEXT) - @p='test_riff$(EXEEXT)'; \ - b='test_riff'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_s3m.log: test_s3m$(EXEEXT) - @p='test_s3m$(EXEEXT)'; \ - b='test_s3m'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_sid.log: test_sid$(EXEEXT) - @p='test_sid$(EXEEXT)'; \ - b='test_sid'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_wav.log: test_wav$(EXEEXT) - @p='test_wav$(EXEEXT)'; \ - b='test_wav'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_xm.log: test_xm$(EXEEXT) - @p='test_xm$(EXEEXT)'; \ - b='test_xm'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_zip.log: test_zip$(EXEEXT) - @p='test_zip$(EXEEXT)'; \ - b='test_zip'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_archive.log: test_archive$(EXEEXT) - @p='test_archive$(EXEEXT)'; \ - b='test_archive'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_exiv2.log: test_exiv2$(EXEEXT) - @p='test_exiv2$(EXEEXT)'; \ - b='test_exiv2'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_thumbnailffmpeg.log: test_thumbnailffmpeg$(EXEEXT) - @p='test_thumbnailffmpeg$(EXEEXT)'; \ - b='test_thumbnailffmpeg'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_flac.log: test_flac$(EXEEXT) - @p='test_flac$(EXEEXT)'; \ - b='test_flac'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_gif.log: test_gif$(EXEEXT) - @p='test_gif$(EXEEXT)'; \ - b='test_gif'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_ole2.log: test_ole2$(EXEEXT) - @p='test_ole2$(EXEEXT)'; \ - b='test_ole2'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_gstreamer.log: test_gstreamer$(EXEEXT) - @p='test_gstreamer$(EXEEXT)'; \ - b='test_gstreamer'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_thumbnailgtk.log: test_thumbnailgtk$(EXEEXT) - @p='test_thumbnailgtk$(EXEEXT)'; \ - b='test_thumbnailgtk'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_html.log: test_html$(EXEEXT) - @p='test_html$(EXEEXT)'; \ - b='test_html'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_jpeg.log: test_jpeg$(EXEEXT) - @p='test_jpeg$(EXEEXT)'; \ - b='test_jpeg'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_midi.log: test_midi$(EXEEXT) - @p='test_midi$(EXEEXT)'; \ - b='test_midi'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_mime.log: test_mime$(EXEEXT) - @p='test_mime$(EXEEXT)'; \ - b='test_mime'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_mpeg.log: test_mpeg$(EXEEXT) - @p='test_mpeg$(EXEEXT)'; \ - b='test_mpeg'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_ogg.log: test_ogg$(EXEEXT) - @p='test_ogg$(EXEEXT)'; \ - b='test_ogg'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_rpm.log: test_rpm$(EXEEXT) - @p='test_rpm$(EXEEXT)'; \ - b='test_rpm'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_tiff.log: test_tiff$(EXEEXT) - @p='test_tiff$(EXEEXT)'; \ - b='test_tiff'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_deb.log: test_deb$(EXEEXT) - @p='test_deb$(EXEEXT)'; \ - b='test_deb'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -.test.log: - @p='$<'; \ - $(am__set_b); \ - $(am__check_pre) $(TEST_LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_TEST_LOG_DRIVER_FLAGS) $(TEST_LOG_DRIVER_FLAGS) -- $(TEST_LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -@am__EXEEXT_TRUE@.test$(EXEEXT).log: -@am__EXEEXT_TRUE@ @p='$<'; \ -@am__EXEEXT_TRUE@ $(am__set_b); \ -@am__EXEEXT_TRUE@ $(am__check_pre) $(TEST_LOG_DRIVER) --test-name "$$f" \ -@am__EXEEXT_TRUE@ --log-file $$b.log --trs-file $$b.trs \ -@am__EXEEXT_TRUE@ $(am__common_driver_flags) $(AM_TEST_LOG_DRIVER_FLAGS) $(TEST_LOG_DRIVER_FLAGS) -- $(TEST_LOG_COMPILE) \ -@am__EXEEXT_TRUE@ "$$tst" $(AM_TESTS_FD_REDIRECT) + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + col="$$grn"; \ + else \ + col="$$red"; \ + fi; \ + echo "$${col}$$dashes$${std}"; \ + echo "$${col}$$banner$${std}"; \ + test -z "$$skipped" || echo "$${col}$$skipped$${std}"; \ + test -z "$$report" || echo "$${col}$$report$${std}"; \ + echo "$${col}$$dashes$${std}"; \ + test "$$failed" -eq 0; \ + else :; fi distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -2767,9 +2257,6 @@ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ fi mostlyclean-generic: - -test -z "$(TEST_LOGS)" || rm -f $(TEST_LOGS) - -test -z "$(TEST_LOGS:.log=.trs)" || rm -f $(TEST_LOGS:.log=.trs) - -test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) clean-generic: @@ -2851,24 +2338,25 @@ uninstall-am: uninstall-pluginLTLIBRARIES -.MAKE: $(am__recursive_targets) check-am install-am install-strip +.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) check-am \ + ctags-recursive install-am install-strip tags-recursive -.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ - check-TESTS check-am clean clean-checkPROGRAMS clean-generic \ - clean-libtool clean-noinstLTLIBRARIES clean-pluginLTLIBRARIES \ - 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-man install-pdf \ - install-pdf-am install-pluginLTLIBRARIES install-ps \ - install-ps-am install-strip installcheck installcheck-am \ - installdirs installdirs-am maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-compile \ - mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ - recheck tags tags-am uninstall uninstall-am \ - uninstall-pluginLTLIBRARIES +.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ + all all-am check check-TESTS check-am clean \ + clean-checkPROGRAMS clean-generic clean-libtool \ + clean-noinstLTLIBRARIES clean-pluginLTLIBRARIES ctags \ + ctags-recursive 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-man install-pdf install-pdf-am \ + install-pluginLTLIBRARIES install-ps install-ps-am \ + install-strip installcheck installcheck-am installdirs \ + installdirs-am maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool pdf pdf-am ps ps-am tags tags-recursive \ + uninstall uninstall-am uninstall-pluginLTLIBRARIES # Tell versions [3.59,3.63) of GNU make to not export all variables. diff -Nru libextractor-1.2/src/plugins/gstreamer_extractor.c libextractor-1.3/src/plugins/gstreamer_extractor.c --- libextractor-1.2/src/plugins/gstreamer_extractor.c 2013-09-13 12:17:30.000000000 +0000 +++ libextractor-1.3/src/plugins/gstreamer_extractor.c 2013-12-22 21:16:33.000000000 +0000 @@ -35,18 +35,12 @@ #define GST_CAT_DEFAULT gstreamer_extractor /** - * How often should we check for data timeout. - * In milliseconds. - */ -#define DATA_TIMEOUT_FREQUENCY 45 /* 45ms, hang up for 90ms at most */ - -/** * Once discoverer has gone for that long without asking for data or * asking to seek, or giving us discovered info, assume it hanged up * and kill it. - * In microseconds. + * In milliseconds. */ -#define DATA_TIMEOUT 80000LL /* 80ms */ +#define DATA_TIMEOUT 750 /* 750ms */ pthread_mutex_t pipe_mutex; @@ -803,13 +797,6 @@ struct PrivStruct { /** - * Tracks the time from the last IO request so that we can decide - * to terminate processing if GStreamer just takes far too long. - * Values are based on 'g_get_monotonic_time()', in milliseconds. - */ - gint64 last_data_request_time; - - /** * Current read-offset in the 'ec' context (based on our read/seek calls). */ guint64 offset; @@ -856,7 +843,7 @@ size_t toc_pos; /** - * + * Identifier of the timeout event source */ guint timeout_id; @@ -908,6 +895,16 @@ static GQuark duration_quark; +static gboolean +_data_timeout (struct PrivStruct *ps) +{ + GST_ERROR ("GstDiscoverer I/O timed out"); + ps->timeout_id = 0; + g_main_loop_quit (ps->loop); + return FALSE; +} + + /** * Implementation of GstElement's "need-data" callback. Reads data from * the extraction context and passes it to GStreamer. @@ -917,8 +914,8 @@ * @param ps our execution context */ static void -feed_data (GstElement * appsrc, - guint size, +feed_data (GstElement * appsrc, + guint size, struct PrivStruct * ps) { ssize_t data_len; @@ -930,8 +927,9 @@ GST_DEBUG ("Request %u bytes", size); - /* Update it now, in case we bail out due to error */ - ps->last_data_request_time = g_get_monotonic_time (); + if (ps->timeout_id > 0) + g_source_remove (ps->timeout_id); + ps->timeout_id = g_timeout_add (DATA_TIMEOUT, (GSourceFunc) _data_timeout, ps); if ( (ps->length > 0) && (ps->offset >= ps->length) ) { @@ -975,7 +973,7 @@ GST_BUFFER_OFFSET (buffer) = ps->offset; GST_BUFFER_OFFSET_END (buffer) = ps->offset + size; - GST_DEBUG ("feed buffer %p, offset %" G_GUINT64_FORMAT "-%u", + GST_DEBUG ("feed buffer %p, offset %" G_GUINT64_FORMAT "-%u", buffer, ps->offset, size); gst_app_src_push_buffer (GST_APP_SRC (ps->source), buffer); ps->offset += size; @@ -987,8 +985,9 @@ ps->offset = UINT64_MAX; /* set to invalid value */ } - /* Update it again to account for time we spent fulfilling the request */ - ps->last_data_request_time = g_get_monotonic_time (); + if (ps->timeout_id > 0) + g_source_remove (ps->timeout_id); + ps->timeout_id = g_timeout_add (DATA_TIMEOUT, (GSourceFunc) _data_timeout, ps); } @@ -1002,29 +1001,31 @@ * @return TRUE if seeking succeeded, FALSE if not */ static gboolean -seek_data (GstElement * appsrc, - guint64 position, +seek_data (GstElement * appsrc, + guint64 position, struct PrivStruct * ps) { GST_DEBUG ("seek to offset %" G_GUINT64_FORMAT, position); pthread_mutex_lock (&pipe_mutex); ps->offset = ps->ec->seek (ps->ec->cls, position, SEEK_SET); pthread_mutex_unlock (&pipe_mutex); - ps->last_data_request_time = g_get_monotonic_time (); + if (ps->timeout_id > 0) + g_source_remove (ps->timeout_id); + ps->timeout_id = g_timeout_add (DATA_TIMEOUT, (GSourceFunc) _data_timeout, ps); return ps->offset == position; } /** * FIXME - * + * * @param field_id FIXME * @param value FIXME * @param user_data our 'struct PrivStruct' * @return TRUE to continue processing, FALSE to abort */ static gboolean -send_structure_foreach (GQuark field_id, +send_structure_foreach (GQuark field_id, const GValue *value, gpointer user_data) { @@ -1081,7 +1082,7 @@ str = NULL; break; } - if (NULL != str) + if (NULL != str) { unsigned int i; @@ -1089,7 +1090,7 @@ if (0 == strcmp (named_tags[i].tag, field_name)) { ps->time_to_leave = ps->ec->proc (ps->ec->cls, "gstreamer", - named_tags[i].le_type, + named_tags[i].le_type, EXTRACTOR_METAFORMAT_UTF8, "text/plain", (const char *) str, strlen (str) + 1); g_free (str); @@ -1102,7 +1103,7 @@ gchar *senddata = g_strdup_printf ("%s=%s", field_name, str); ps->time_to_leave = ps->ec->proc (ps->ec->cls, "gstreamer", EXTRACTOR_METATYPE_UNKNOWN, EXTRACTOR_METAFORMAT_UTF8, "text/plain", - (const char *) senddata, + (const char *) senddata, strlen (senddata) + 1); g_free (senddata); } @@ -1114,13 +1115,13 @@ /** * FIXME - * + * * @param info FIXME * @param ps processing context * @return FALSE to continue processing, TRUE to abort */ static gboolean -send_audio_info (GstDiscovererAudioInfo *info, +send_audio_info (GstDiscovererAudioInfo *info, struct PrivStruct *ps) { gchar *tmp; @@ -1131,7 +1132,7 @@ if (ctmp) if ((ps->time_to_leave = ps->ec->proc (ps->ec->cls, "gstreamer", EXTRACTOR_METATYPE_AUDIO_LANGUAGE, - EXTRACTOR_METAFORMAT_UTF8, + EXTRACTOR_METAFORMAT_UTF8, "text/plain", (const char *) ctmp, strlen (ctmp) + 1))) return TRUE; @@ -1202,13 +1203,13 @@ /** * FIXME - * + * * @param info FIXME * @param ps processing context * @return FALSE to continue processing, TRUE to abort */ static int -send_video_info (GstDiscovererVideoInfo *info, +send_video_info (GstDiscovererVideoInfo *info, struct PrivStruct *ps) { gchar *tmp; @@ -1298,13 +1299,13 @@ /** * FIXME - * + * * @param info FIXME * @param ps processing context * @return FALSE to continue processing, TRUE to abort */ static int -send_subtitle_info (GstDiscovererSubtitleInfo *info, +send_subtitle_info (GstDiscovererSubtitleInfo *info, struct PrivStruct *ps) { const gchar *ctmp; @@ -1397,7 +1398,7 @@ mime_type = gst_structure_get_name (gst_caps_get_structure (caps, 0)); info = gst_sample_get_info (sample); - + if ( (NULL == info) || (!gst_structure_get (info, "image-type", GST_TYPE_TAG_IMAGE_TYPE, &imagetype, NULL)) ) le_type = EXTRACTOR_METATYPE_PICTURE; @@ -1583,13 +1584,13 @@ } -static void -send_streams (GstDiscovererStreamInfo *info, +static void +send_streams (GstDiscovererStreamInfo *info, struct PrivStruct *ps); static void -send_stream_info (GstDiscovererStreamInfo * info, +send_stream_info (GstDiscovererStreamInfo * info, struct PrivStruct *ps) { const GstStructure *misc; @@ -1677,7 +1678,7 @@ static void -send_streams (GstDiscovererStreamInfo *info, +send_streams (GstDiscovererStreamInfo *info, struct PrivStruct *ps) { GstDiscovererStreamInfo *next; @@ -1696,7 +1697,7 @@ * Callback used to construct the XML 'toc'. * * @param tags FIXME - * @param tag FIXME + * @param tag FIXME * @param user_data the 'struct PrivStruct' with the 'toc' string we are assembling */ static void @@ -1802,11 +1803,11 @@ else ps->toc_length += strlen ("\n") + ps->toc_depth * 2; } - + subentries = gst_toc_entry_get_sub_entries (entry); g_list_foreach (subentries, send_toc_foreach, ps); ps->toc_depth--; - + s = g_strdup_printf ("%*.*s\n", ps->toc_depth * 2, ps->toc_depth * 2, " ", gst_toc_entry_type_get_nick (entype)); if (ps->toc_print_phase) @@ -1824,7 +1825,7 @@ static void -send_info (GstDiscovererInfo * info, +send_info (GstDiscovererInfo * info, struct PrivStruct *ps) { const GstToc *toc; @@ -1870,15 +1871,15 @@ ps->toc_length += 1 + strlen (TOC_XML_HEADER); ps->toc = g_malloc (ps->toc_length); ps->toc_pos = 0; - ps->toc_pos += g_snprintf (&ps->toc[ps->toc_pos], - ps->toc_length - ps->toc_pos, - "%s", + ps->toc_pos += g_snprintf (&ps->toc[ps->toc_pos], + ps->toc_length - ps->toc_pos, + "%s", TOC_XML_HEADER); g_list_foreach (entries, &send_toc_foreach, ps); ps->toc[ps->toc_length - 1] = '\0'; ps->time_to_leave = ps->ec->proc (ps->ec->cls, "gstreamer", - EXTRACTOR_METATYPE_TOC, - EXTRACTOR_METAFORMAT_C_STRING, + EXTRACTOR_METATYPE_TOC, + EXTRACTOR_METAFORMAT_C_STRING, "application/xml", (const char *) ps->toc, ps->toc_length); @@ -1896,7 +1897,7 @@ static void -send_discovered_info (GstDiscovererInfo * info, +send_discovered_info (GstDiscovererInfo * info, struct PrivStruct * ps) { GstDiscovererResult result; @@ -1928,13 +1929,15 @@ static void -_new_discovered_uri (GstDiscoverer * dc, - GstDiscovererInfo * info, - GError * err, +_new_discovered_uri (GstDiscoverer * dc, + GstDiscovererInfo * info, + GError * err, struct PrivStruct *ps) { send_discovered_info (info, ps); - ps->last_data_request_time = g_get_monotonic_time (); + if (ps->timeout_id > 0) + g_source_remove (ps->timeout_id); + ps->timeout_id = g_timeout_add (DATA_TIMEOUT, (GSourceFunc) _data_timeout, ps); } @@ -1948,34 +1951,18 @@ } -static gboolean -_data_timeout (struct PrivStruct *ps) -{ - gint64 now = g_get_monotonic_time (); - if (now - ps->last_data_request_time > DATA_TIMEOUT) - { - GST_ERROR ("GstDiscoverer I/O timed out (last heard from discoverer on %lld, now is %lld, difference is %lld > %lld", - ps->last_data_request_time, now, now - ps->last_data_request_time, DATA_TIMEOUT); - ps->timeout_id = 0; - g_main_loop_quit (ps->loop); - return FALSE; - } - return TRUE; -} - - /** * This callback is called when discoverer has constructed a source object to * read from. Since we provided the appsrc:// uri to discoverer, this will be * the appsrc that we must handle. We set up some signals - one to push data - * into appsrc and one to perform a seek. + * into appsrc and one to perform a seek. * * @param dc * @param source - * @param ps + * @param ps */ static void -_source_setup (GstDiscoverer * dc, +_source_setup (GstDiscoverer * dc, GstElement * source, struct PrivStruct *ps) { @@ -1999,8 +1986,7 @@ * data */ g_signal_connect (ps->source, "need-data", G_CALLBACK (feed_data), ps); g_signal_connect (ps->source, "seek-data", G_CALLBACK (seek_data), ps); - ps->timeout_id = g_timeout_add (DATA_TIMEOUT_FREQUENCY, (GSourceFunc) _data_timeout, ps); - ps->last_data_request_time = g_get_monotonic_time (); + ps->timeout_id = g_timeout_add (DATA_TIMEOUT, (GSourceFunc) _data_timeout, ps); } @@ -2048,7 +2034,7 @@ memset (&ps, 0, sizeof (ps)); ps.dc = gst_discoverer_new (8 * GST_SECOND, &err); - if (NULL == ps.dc) + if (NULL == ps.dc) { if (NULL != err) g_error_free (err); @@ -2082,7 +2068,7 @@ /** * Initialize glib and globals. */ -void __attribute__ ((constructor)) +void __attribute__ ((constructor)) gstreamer_init () { gst_init (NULL, NULL); diff -Nru libextractor-1.2/src/plugins/jpeg_extractor.c libextractor-1.3/src/plugins/jpeg_extractor.c --- libextractor-1.2/src/plugins/jpeg_extractor.c 2013-09-16 07:44:57.000000000 +0000 +++ libextractor-1.3/src/plugins/jpeg_extractor.c 2013-12-22 22:10:35.000000000 +0000 @@ -79,11 +79,11 @@ /** - * Main entry method for the 'image/jpeg' extraction plugin. + * Main entry method for the 'image/jpeg' extraction plugin. * * @param ec extraction context provided to the plugin */ -void +void EXTRACTOR_jpeg_extract_method (struct EXTRACTOR_ExtractContext *ec) { struct jpeg_decompress_struct jds; @@ -103,7 +103,7 @@ em.output_message = &no_output; em.error_exit = &no_exit; jds.client_data = &ctx; - if (1 == setjmp (ctx.env)) + if (1 == setjmp (ctx.env)) goto EXIT; /* we get here if libjpeg calls 'no_exit' because it wants to die */ jds.err = &em; jpeg_create_decompress (&jds); @@ -118,7 +118,7 @@ break; jpeg_mem_src (&jds, buf, size); if (0 == is_jpeg) - { + { if (JPEG_HEADER_OK == jpeg_read_header (&jds, 1)) is_jpeg = 1; /* ok, really a jpeg, keep going until the end */ continue; @@ -171,7 +171,7 @@ mptr->data_length - off)) goto EXIT; } - + EXIT: jpeg_destroy_decompress (&jds); } diff -Nru libextractor-1.2/src/plugins/previewopus_extractor.c libextractor-1.3/src/plugins/previewopus_extractor.c --- libextractor-1.2/src/plugins/previewopus_extractor.c 1970-01-01 00:00:00.000000000 +0000 +++ libextractor-1.3/src/plugins/previewopus_extractor.c 2013-12-22 22:44:18.000000000 +0000 @@ -0,0 +1,1171 @@ +/* + This file is part of libextractor. + Copyright (C) 2008, 2013 Bruno Cabral and Christian Grothoff + + libextractor 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 3, or (at your + option) any later version. + + libextractor 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 libextractor; see the file COPYING. If not, write to the + Free Software Foundation, Inc., 59 Temple Place - Suite 330, + Boston, MA 02111-1307, USA. + */ +/** + * @file previewopus_extractor.c + * @author Bruno Cabral + * @author Christian Grothoff + * @brief this extractor produces a binary encoded + * audio snippet of music/video files using ffmpeg libs. + * + * Based on ffmpeg samples. + * + * Note that ffmpeg has a few issues: + * (1) there are no recent official releases of the ffmpeg libs + * (2) ffmpeg has a history of having security issues (parser is not robust) + * + * So this plugin cannot be recommended for system with high security + *requirements. + */ +#include "platform.h" +#include "extractor.h" +#include + +#if HAVE_LIBAVUTIL_AVUTIL_H +#include +#include +#include +#include + +#elif HAVE_FFMPEG_AVUTIL_H +#include +#include +#include +#include +#endif +#if HAVE_LIBAVFORMAT_AVFORMAT_H +#include +#elif HAVE_FFMPEG_AVFORMAT_H +#include +#endif +#if HAVE_LIBAVCODEC_AVCODEC_H +#include +#elif HAVE_FFMPEG_AVCODEC_H +#include +#endif +#if HAVE_LIBSWSCALE_SWSCALE_H +#include +#elif HAVE_FFMPEG_SWSCALE_H +#include +#endif + +//TODO: Check for ffmpeg +#include + + + + + + + +/** + * Set to 1 to enable debug output. + */ +#define DEBUG 0 + +/** + * Set to 1 to enable a output file for testing. + */ +#define OUTPUT_FILE 0 + + + +/** + * Maximum size in bytes for the preview. + */ +#define MAX_SIZE (28*1024) + +/** + * HardLimit for file + */ +#define HARD_LIMIT_SIZE (50*1024) + + +/** The output bit rate in kbit/s */ +#define OUTPUT_BIT_RATE 28000 +/** The number of output channels */ +#define OUTPUT_CHANNELS 2 +/** The audio sample output format */ +#define OUTPUT_SAMPLE_FORMAT AV_SAMPLE_FMT_S16 + + +/** Our output buffer*/ +static unsigned char *buffer; + +/** Actual output buffer size */ +static int totalSize; + +/** + * Convert an error code into a text message. + * @param error Error code to be converted + * @return Corresponding error text (not thread-safe) + */ +static char *const get_error_text(const int error) +{ + static char error_buffer[255]; + av_strerror(error, error_buffer, sizeof(error_buffer)); + return error_buffer; +} + + +/** + * Read callback. + * + * @param opaque the 'struct EXTRACTOR_ExtractContext' + * @param buf where to write data + * @param buf_size how many bytes to read + * @return -1 on error (or for unknown file size) + */ +static int +read_cb (void *opaque, + uint8_t *buf, + int buf_size) +{ + struct EXTRACTOR_ExtractContext *ec = opaque; + void *data; + ssize_t ret; + + ret = ec->read (ec->cls, &data, buf_size); + if (ret <= 0) + return ret; + memcpy (buf, data, ret); + return ret; +} + + +/** + * Seek callback. + * + * @param opaque the 'struct EXTRACTOR_ExtractContext' + * @param offset where to seek + * @param whence how to seek; AVSEEK_SIZE to return file size without seeking + * @return -1 on error (or for unknown file size) + */ +static int64_t +seek_cb (void *opaque, + int64_t offset, + int whence) +{ + struct EXTRACTOR_ExtractContext *ec = opaque; + + if (AVSEEK_SIZE == whence) + return ec->get_size (ec->cls); + return ec->seek (ec->cls, offset, whence); +} + + +/** + * write callback. + * + * @param opaque NULL + * @param pBuffer to write + * @param pBufferSize , amount to write + * @return 0 on error + */ +static int writePacket(void *opaque, unsigned char *pBuffer, int pBufferSize) { + + int sizeToCopy = pBufferSize; + if( (totalSize + pBufferSize) > HARD_LIMIT_SIZE) + sizeToCopy = HARD_LIMIT_SIZE - totalSize; + + memcpy(buffer + totalSize, pBuffer, sizeToCopy); + totalSize+= sizeToCopy; + + return sizeToCopy; +} + + +/** + * Open an output file and the required encoder. + * Also set some basic encoder parameters. + * Some of these parameters are based on the input file's parameters. + */ +static int open_output_file( + AVCodecContext *input_codec_context, + AVFormatContext **output_format_context, + AVCodecContext **output_codec_context) +{ + AVStream *stream = NULL; + AVCodec *output_codec = NULL; + AVIOContext *io_ctx; + int error; + + + unsigned char *iob; + + if (NULL == (iob = av_malloc (16 * 1024))) + return AVERROR_EXIT; + if (NULL == (io_ctx = avio_alloc_context (iob, 16 * 1024, + AVIO_FLAG_WRITE, NULL, + NULL, + &writePacket /* no writing */, + NULL))) + { + av_free (iob); + return AVERROR_EXIT; + } + if (NULL == ((*output_format_context) = avformat_alloc_context ())) + { + av_free (io_ctx); + return AVERROR_EXIT; + } + (*output_format_context)->pb = io_ctx; + + /** Guess the desired container format based on the file extension. */ + if (!((*output_format_context)->oformat = av_guess_format(NULL, "file.ogg", + NULL))) { + #if DEBUG + fprintf(stderr, "Could not find output file format\n"); +#endif + goto cleanup; + } + + + /** Find the encoder to be used by its name. */ + if (!(output_codec = avcodec_find_encoder(AV_CODEC_ID_OPUS))) { + #if DEBUG + fprintf(stderr, "Could not find an OPUS encoder.\n"); +#endif + goto cleanup; + } + + /** Create a new audio stream in the output file container. */ + if (!(stream = avformat_new_stream(*output_format_context, output_codec))) { + #if DEBUG + fprintf(stderr, "Could not create new stream\n"); +#endif + error = AVERROR(ENOMEM); + goto cleanup; + } + + /** Save the encoder context for easiert access later. */ + *output_codec_context = stream->codec; + + + /** + * Set the basic encoder parameters. + * The input file's sample rate is used to avoid a sample rate conversion. + */ + (*output_codec_context)->channels = OUTPUT_CHANNELS; + (*output_codec_context)->channel_layout = av_get_default_channel_layout(OUTPUT_CHANNELS); + (*output_codec_context)->sample_rate = 48000; //Opus need 48000 + (*output_codec_context)->sample_fmt = AV_SAMPLE_FMT_S16; + (*output_codec_context)->bit_rate = OUTPUT_BIT_RATE; + + + /** Open the encoder for the audio stream to use it later. */ + if ((error = avcodec_open2(*output_codec_context, output_codec, NULL)) < 0) { + #if DEBUG + fprintf(stderr, "Could not open output codec (error '%s')\n", + get_error_text(error)); +#endif + goto cleanup; + } + + return 0; + +cleanup: + return error < 0 ? error : AVERROR_EXIT; +} + +/** Initialize one data packet for reading or writing. */ +static void init_packet(AVPacket *packet) +{ + av_init_packet(packet); + /** Set the packet data and size so that it is recognized as being empty. */ + packet->data = NULL; + packet->size = 0; +} + +/** Initialize one audio frame for reading from the input file */ +static int init_input_frame(AVFrame **frame) +{ + if (!(*frame = avcodec_alloc_frame())) { + #if DEBUG + fprintf(stderr, "Could not allocate input frame\n"); +#endif + return AVERROR(ENOMEM); + } + return 0; +} + +/** + * Initialize the audio resampler based on the input and output codec settings. + * If the input and output sample formats differ, a conversion is required + * libavresample takes care of this, but requires initialization. + */ +static int init_resampler(AVCodecContext *input_codec_context, + AVCodecContext *output_codec_context, + AVAudioResampleContext **resample_context) +{ + /** + * Only initialize the resampler if it is necessary, i.e., + * if and only if the sample formats differ. + */ + if (input_codec_context->sample_fmt != output_codec_context->sample_fmt || + input_codec_context->channels != output_codec_context->channels) { + int error; + + /** Create a resampler context for the conversion. */ + if (!(*resample_context = avresample_alloc_context())) { + #if DEBUG + fprintf(stderr, "Could not allocate resample context\n"); + #endif + return AVERROR(ENOMEM); + } + + + /** + * Set the conversion parameters. + * Default channel layouts based on the number of channels + * are assumed for simplicity (they are sometimes not detected + * properly by the demuxer and/or decoder). + */ + av_opt_set_int(*resample_context, "in_channel_layout", + av_get_default_channel_layout(input_codec_context->channels), 0); + av_opt_set_int(*resample_context, "out_channel_layout", + av_get_default_channel_layout(output_codec_context->channels), 0); + av_opt_set_int(*resample_context, "in_sample_rate", + input_codec_context->sample_rate, 0); + av_opt_set_int(*resample_context, "out_sample_rate", + output_codec_context->sample_rate, 0); + av_opt_set_int(*resample_context, "in_sample_fmt", + input_codec_context->sample_fmt, 0); + av_opt_set_int(*resample_context, "out_sample_fmt", + output_codec_context->sample_fmt, 0); + + /** Open the resampler with the specified parameters. */ + if ((error = avresample_open(*resample_context)) < 0) { + #if DEBUG + fprintf(stderr, "Could not open resample context\n"); + #endif + avresample_free(resample_context); + return error; + } + } + return 0; +} + +/** Initialize a FIFO buffer for the audio samples to be encoded. */ +static int init_fifo(AVAudioFifo **fifo) +{ + /** Create the FIFO buffer based on the specified output sample format. */ + if (!(*fifo = av_audio_fifo_alloc(OUTPUT_SAMPLE_FORMAT, OUTPUT_CHANNELS, 1))) { + #if DEBUG + fprintf(stderr, "Could not allocate FIFO\n"); + #endif + return AVERROR(ENOMEM); + } + return 0; +} + +/** Write the header of the output file container. */ +static int write_output_file_header(AVFormatContext *output_format_context) +{ + int error; + if ((error = avformat_write_header(output_format_context, NULL)) < 0) { + #if DEBUG + fprintf(stderr, "Could not write output file header (error '%s')\n", + get_error_text(error)); + #endif + return error; + } + return 0; +} + +/** Decode one audio frame from the input file. */ +static int decode_audio_frame(AVFrame *frame, + AVFormatContext *input_format_context, + AVCodecContext *input_codec_context, int audio_stream_index, + int *data_present, int *finished) +{ + /** Packet used for temporary storage. */ + AVPacket input_packet; + int error; + init_packet(&input_packet); + + /** Read one audio frame from the input file into a temporary packet. */ + while(1){ + if ((error = av_read_frame(input_format_context, &input_packet)) < 0) { + /** If we are the the end of the file, flush the decoder below. */ + if (error == AVERROR_EOF){ + #if DEBUG + fprintf(stderr, "EOF in decode_audio\n"); + #endif + *finished = 1; + } + else { + #if DEBUG + fprintf(stderr, "Could not read frame (error '%s')\n", + get_error_text(error)); + #endif + return error; + } + } + + if(input_packet.stream_index == audio_stream_index) + break; + } + + /** + * Decode the audio frame stored in the temporary packet. + * The input audio stream decoder is used to do this. + * If we are at the end of the file, pass an empty packet to the decoder + * to flush it. + */ + if ((error = avcodec_decode_audio4(input_codec_context, frame, + data_present, &input_packet)) < 0) { + #if DEBUG + fprintf(stderr, "Could not decode frame (error '%s')\n", + get_error_text(error)); + #endif + av_free_packet(&input_packet); + return error; + } + + /** + * If the decoder has not been flushed completely, we are not finished, + * so that this function has to be called again. + */ + if (*finished && *data_present) + *finished = 0; + av_free_packet(&input_packet); + return 0; +} + +/** + * Initialize a temporary storage for the specified number of audio samples. + * The conversion requires temporary storage due to the different format. + * The number of audio samples to be allocated is specified in frame_size. + */ +static int init_converted_samples(uint8_t ***converted_input_samples, int* out_linesize, + AVCodecContext *output_codec_context, + int frame_size) +{ + int error; + + /** + * Allocate as many pointers as there are audio channels. + * Each pointer will later point to the audio samples of the corresponding + * channels (although it may be NULL for interleaved formats). + */ + if (!(*converted_input_samples = calloc(output_codec_context->channels, + sizeof(**converted_input_samples)))) { + #if DEBUG + fprintf(stderr, "Could not allocate converted input sample pointers\n"); + #endif + return AVERROR(ENOMEM); + } + + /** + * Allocate memory for the samples of all channels in one consecutive + * block for convenience. + */ + if ((error = av_samples_alloc(*converted_input_samples, out_linesize, + output_codec_context->channels, + frame_size, + output_codec_context->sample_fmt, 0)) < 0) { + #if DEBUG + fprintf(stderr, + "Could not allocate converted input samples (error '%s')\n", + get_error_text(error)); + #endif + av_freep(&(*converted_input_samples)[0]); + free(*converted_input_samples); + return error; + } + return 0; +} + +/** + * Convert the input audio samples into the output sample format. + * The conversion happens on a per-frame basis, the size of which is specified + * by frame_size. + */ +static int convert_samples(uint8_t **input_data, + uint8_t **converted_data, const int in_sample, const int out_sample, const int out_linesize, + AVAudioResampleContext *resample_context) +{ + int error; + + /** Convert the samples using the resampler. */ + if ((error = avresample_convert(resample_context, converted_data, out_linesize, + out_sample, input_data, 0, in_sample)) < 0) { + #if DEBUG + fprintf(stderr, "Could not convert input samples (error '%s')\n", + get_error_text(error)); + #endif + return error; + } + + + /** + * Perform a sanity check so that the number of converted samples is + * not greater than the number of samples to be converted. + * If the sample rates differ, this case has to be handled differently + */ + if (avresample_available(resample_context)) { + #if DEBUG + fprintf(stderr, "%i Converted samples left over\n",avresample_available(resample_context)); + #endif + } + + + return 0; +} + +/** Add converted input audio samples to the FIFO buffer for later processing. */ +static int add_samples_to_fifo(AVAudioFifo *fifo, + uint8_t **converted_input_samples, + const int frame_size) +{ + int error; + + /** + * Make the FIFO as large as it needs to be to hold both, + * the old and the new samples. + */ + if ((error = av_audio_fifo_realloc(fifo, av_audio_fifo_size(fifo) + frame_size)) < 0) { + #if DEBUG + fprintf(stderr, "Could not reallocate FIFO\n"); + #endif + return error; + } + + /** Store the new samples in the FIFO buffer. */ + if (av_audio_fifo_write(fifo, (void **)converted_input_samples, + frame_size) < frame_size) { + #if DEBUG + fprintf(stderr, "Could not write data to FIFO\n"); + #endif + return AVERROR_EXIT; + } + return 0; +} + +/** + * Read one audio frame from the input file, decodes, converts and stores + * it in the FIFO buffer. + */ +static int read_decode_convert_and_store(AVAudioFifo *fifo, + AVFormatContext *input_format_context, + AVCodecContext *input_codec_context, + AVCodecContext *output_codec_context, + AVAudioResampleContext *resampler_context, int audio_stream_index, + int *finished) +{ + /** Temporary storage of the input samples of the frame read from the file. */ + AVFrame *input_frame = NULL; + /** Temporary storage for the converted input samples. */ + uint8_t **converted_input_samples = NULL; + int data_present; + int ret = AVERROR_EXIT; + + /** Initialize temporary storage for one input frame. */ + if (init_input_frame(&input_frame)){ + #if DEBUG + fprintf(stderr, "Failed at init frame\n"); + #endif + goto cleanup; + + } + /** Decode one frame worth of audio samples. */ + if (decode_audio_frame(input_frame, input_format_context, + input_codec_context, audio_stream_index, &data_present, finished)){ + #if DEBUG + fprintf(stderr, "Failed at decode audio\n"); + #endif + + goto cleanup; + + } + /** + * If we are at the end of the file and there are no more samples + * in the decoder which are delayed, we are actually finished. + * This must not be treated as an error. + */ + if (*finished && !data_present) { + ret = 0; + #if DEBUG + fprintf(stderr, "Failed at finished or no data\n"); + #endif + goto cleanup; + } + /** If there is decoded data, convert and store it */ + if (data_present) { + int out_linesize; + //FIX ME: I'm losing samples, but can't get it to work. + int out_samples = avresample_available(resampler_context) + avresample_get_delay(resampler_context) + input_frame->nb_samples; + + + //fprintf(stderr, "Input nbsamples %i out_samples: %i \n",input_frame->nb_samples,out_samples); + + /** Initialize the temporary storage for the converted input samples. */ + if (init_converted_samples(&converted_input_samples, &out_linesize, output_codec_context, + out_samples)){ + #if DEBUG + fprintf(stderr, "Failed at init_converted_samples\n"); + #endif + goto cleanup; + } + + /** + * Convert the input samples to the desired output sample format. + * This requires a temporary storage provided by converted_input_samples. + */ + if (convert_samples(input_frame->extended_data, converted_input_samples, + input_frame->nb_samples, out_samples, out_linesize ,resampler_context)){ + + + #if DEBUG + fprintf(stderr, "Failed at convert_samples, input frame %i \n",input_frame->nb_samples); + #endif + goto cleanup; + } + /** Add the converted input samples to the FIFO buffer for later processing. */ + if (add_samples_to_fifo(fifo, converted_input_samples, + out_samples)){ + #if DEBUG + fprintf(stderr, "Failed at add_samples_to_fifo\n"); + #endif + goto cleanup; + } + ret = 0; + } + ret = 0; + +cleanup: + if (converted_input_samples) { + av_freep(&converted_input_samples[0]); + free(converted_input_samples); + } + avcodec_free_frame(&input_frame); + + return ret; +} + +/** + * Initialize one input frame for writing to the output file. + * The frame will be exactly frame_size samples large. + */ +static int init_output_frame(AVFrame **frame, + AVCodecContext *output_codec_context, + int frame_size) +{ + int error; + + /** Create a new frame to store the audio samples. */ + if (!(*frame = avcodec_alloc_frame())) { + #if DEBUG + fprintf(stderr, "Could not allocate output frame\n"); + #endif + return AVERROR_EXIT; + } + + /** + * Set the frame's parameters, especially its size and format. + * av_frame_get_buffer needs this to allocate memory for the + * audio samples of the frame. + * Default channel layouts based on the number of channels + * are assumed for simplicity. + */ + (*frame)->nb_samples = frame_size; + (*frame)->channel_layout = output_codec_context->channel_layout; + (*frame)->format = output_codec_context->sample_fmt; + (*frame)->sample_rate = output_codec_context->sample_rate; + + + + //fprintf(stderr, "%i %i \n",frame_size , (*frame)->format,(*frame)->sample_rate); + + /** + * Allocate the samples of the created frame. This call will make + * sure that the audio frame can hold as many samples as specified. + */ + if ((error = av_frame_get_buffer(*frame, 0)) < 0) { + #if DEBUG + fprintf(stderr, "Could allocate output frame samples (error '%s')\n", get_error_text(error)); + #endif + avcodec_free_frame(frame); + return error; + } + + return 0; +} + +/** Encode one frame worth of audio to the output file. */ +static int encode_audio_frame(AVFrame *frame, + AVFormatContext *output_format_context, + AVCodecContext *output_codec_context, + int *data_present) +{ + /** Packet used for temporary storage. */ + AVPacket output_packet; + int error; + init_packet(&output_packet); + + /** + * Encode the audio frame and store it in the temporary packet. + * The output audio stream encoder is used to do this. + */ + if ((error = avcodec_encode_audio2(output_codec_context, &output_packet, + frame, data_present)) < 0) { + #if DEBUG + fprintf(stderr, "Could not encode frame (error '%s')\n", + get_error_text(error)); + #endif + av_free_packet(&output_packet); + return error; + } + + /** Write one audio frame from the temporary packet to the output file. */ + if (*data_present) { + if ((error = av_write_frame(output_format_context, &output_packet)) < 0) { + #if DEBUG + fprintf(stderr, "Could not write frame (error '%s')\n", + get_error_text(error)); + #endif + + av_free_packet(&output_packet); + return error; + } + + av_free_packet(&output_packet); + } + + return 0; +} + +/** + * Load one audio frame from the FIFO buffer, encode and write it to the + * output file. + */ +static int load_encode_and_write(AVAudioFifo *fifo, + AVFormatContext *output_format_context, + AVCodecContext *output_codec_context) +{ + /** Temporary storage of the output samples of the frame written to the file. */ + AVFrame *output_frame; + /** + * Use the maximum number of possible samples per frame. + * If there is less than the maximum possible frame size in the FIFO + * buffer use this number. Otherwise, use the maximum possible frame size + */ + const int frame_size = FFMIN(av_audio_fifo_size(fifo), + output_codec_context->frame_size); + int data_written; + + /** Initialize temporary storage for one output frame. */ + if (init_output_frame(&output_frame, output_codec_context, frame_size)) + return AVERROR_EXIT; + + /** + * Read as many samples from the FIFO buffer as required to fill the frame. + * The samples are stored in the frame temporarily. + */ + if (av_audio_fifo_read(fifo, (void **)output_frame->data, frame_size) < frame_size) { + #if DEBUG + fprintf(stderr, "Could not read data from FIFO\n"); + #endif + avcodec_free_frame(&output_frame); + return AVERROR_EXIT; + } + + /** Encode one frame worth of audio samples. */ + if (encode_audio_frame(output_frame, output_format_context, + output_codec_context, &data_written)) { + avcodec_free_frame(&output_frame); + return AVERROR_EXIT; + } + avcodec_free_frame(&output_frame); + return 0; +} +/** Write the trailer of the output file container. */ +static int write_output_file_trailer(AVFormatContext *output_format_context) +{ + int error; + if ((error = av_write_trailer(output_format_context)) < 0) { + #if DEBUG + fprintf(stderr, "Could not write output file trailer (error '%s')\n", + get_error_text(error)); + #endif + return error; + } + return 0; +} + +#define ENUM_CODEC_ID enum AVCodecID + + +/** + * Perform the audio snippet extraction + * + * @param ec extraction context to use + */ +static void +extract_audio (struct EXTRACTOR_ExtractContext *ec) +{ + AVIOContext *io_ctx; + struct AVFormatContext *format_ctx; + AVCodecContext *codec_ctx; + AVFormatContext *output_format_context = NULL; + AVCodec *codec; + AVDictionary *options; + AVFrame *frame; + AVCodecContext* output_codec_context = NULL; + AVAudioResampleContext *resample_context = NULL; + AVAudioFifo *fifo = NULL; + + + int audio_stream_index; + int i; + int err; + int duration; + unsigned char *iob; + + + totalSize =0; + + if (NULL == (iob = av_malloc (16 * 1024))) + return; + if (NULL == (io_ctx = avio_alloc_context (iob, 16 * 1024, + 0, ec, + &read_cb, + NULL /* no writing */, + &seek_cb))) + { + av_free (iob); + return; + } + if (NULL == (format_ctx = avformat_alloc_context ())) + { + av_free (io_ctx); + return; + } + format_ctx->pb = io_ctx; + options = NULL; + if (0 != avformat_open_input (&format_ctx, "", NULL, &options)) + return; + av_dict_free (&options); + if (0 > avformat_find_stream_info (format_ctx, NULL)) + { + #if DEBUG + fprintf (stderr, + "Failed to read stream info\n"); +#endif + avformat_close_input (&format_ctx); + av_free (io_ctx); + return; + } + codec = NULL; + codec_ctx = NULL; + audio_stream_index = -1; + for (i=0; inb_streams; i++) + { + codec_ctx = format_ctx->streams[i]->codec; + if (AVMEDIA_TYPE_AUDIO != codec_ctx->codec_type) + continue; + if (NULL == (codec = avcodec_find_decoder (codec_ctx->codec_id))) + continue; + options = NULL; + if (0 != (err = avcodec_open2 (codec_ctx, codec, &options))) + { + codec = NULL; + continue; + } + av_dict_free (&options); + audio_stream_index = i; + break; + } + if ( (-1 == audio_stream_index) || + (0 == codec_ctx->channels) ) + { +#if DEBUG + fprintf (stderr, + "No audio streams or no suitable codec found\n"); +#endif + if (NULL != codec) + avcodec_close (codec_ctx); + avformat_close_input (&format_ctx); + av_free (io_ctx); + return; + } + + if (NULL == (frame = avcodec_alloc_frame ())) + { +#if DEBUG + fprintf (stderr, + "Failed to allocate frame\n"); +#endif + avcodec_close (codec_ctx); + avformat_close_input (&format_ctx); + av_free (io_ctx); + return; + } + + + if(!(buffer = malloc(HARD_LIMIT_SIZE))) + goto cleanup; + + + /** Open the output file for writing. */ + if (open_output_file( codec_ctx,&output_format_context, &output_codec_context)) + goto cleanup; + /** Initialize the resampler to be able to convert audio sample formats. */ + if (init_resampler(codec_ctx, output_codec_context, + &resample_context)) + goto cleanup; + /** Initialize the FIFO buffer to store audio samples to be encoded. */ + if (init_fifo(&fifo)) + goto cleanup; + + /** Write the header of the output file container. */ + if (write_output_file_header(output_format_context)) + goto cleanup; + + + if (format_ctx->duration == AV_NOPTS_VALUE) + { + duration = -1; +#if DEBUG + fprintf (stderr, + "Duration unknown\n"); +#endif + } + else + { + #if DEBUG + duration = format_ctx->duration; + fprintf (stderr, + "Duration: %lld\n", + format_ctx->duration); +#endif + } + + + + /* if duration is known, seek to first tried, + * else use 10 sec into stream */ + + if(-1 != duration) + err = av_seek_frame (format_ctx, -1, (duration/3), 0); + else + err = av_seek_frame (format_ctx, -1, 10 * AV_TIME_BASE, 0); + + + + if (err >= 0) + avcodec_flush_buffers (codec_ctx); + + + /** + * Loop as long as we have input samples to read or output samples + * to write; abort as soon as we have neither. + */ + while (1) { + /** Use the encoder's desired frame size for processing. */ + const int output_frame_size = output_codec_context->frame_size; + int finished = 0; + + /** + * Make sure that there is one frame worth of samples in the FIFO + * buffer so that the encoder can do its work. + * Since the decoder's and the encoder's frame size may differ, we + * need to FIFO buffer to store as many frames worth of input samples + * that they make up at least one frame worth of output samples. + */ + + while ((av_audio_fifo_size(fifo) < output_frame_size)) { + /** + * Decode one frame worth of audio samples, convert it to the + * output sample format and put it into the FIFO buffer. + */ + + + if (read_decode_convert_and_store(fifo, format_ctx,codec_ctx, + output_codec_context, + resample_context,audio_stream_index, &finished)){ + + goto cleanup; + + } + + /** + * If we are at the end of the input file, we continue + * encoding the remaining audio samples to the output file. + */ + if (finished) + break; + } + + /* Already over our limit*/ + if(totalSize >= MAX_SIZE) + finished = 1; + + + /** + * If we have enough samples for the encoder, we encode them. + * At the end of the file, we pass the remaining samples to + * the encoder. + */ + + while (av_audio_fifo_size(fifo) >= output_frame_size || + (finished && av_audio_fifo_size(fifo) > 0)){ + /** + * Take one frame worth of audio samples from the FIFO buffer, + * encode it and write it to the output file. + */ + + + if (load_encode_and_write(fifo,output_format_context, output_codec_context)) + goto cleanup; + } + /** + * If we are at the end of the input file and have encoded + * all remaining samples, we can exit this loop and finish. + */ + if (finished) { + int data_written; + /** Flush the encoder as it may have delayed frames. */ + do { + encode_audio_frame(NULL, output_format_context, output_codec_context, &data_written); + } while (data_written); + break; + } + } + + /** Write the trailer of the output file container. */ + if (write_output_file_trailer(output_format_context)) + goto cleanup; + + + ec->proc (ec->cls, + "previewopus", + EXTRACTOR_METATYPE_AUDIO_PREVIEW, + EXTRACTOR_METAFORMAT_BINARY, + "audio/opus", + buffer, + totalSize); + + +#if OUTPUT_FILE + FILE *f; + f = fopen("example.opus", "wb"); + if (!f) { + fprintf(stderr, "Could not open %s\n", "file"); + exit(1); + } + + fwrite(buffer, 1, totalSize, f); + fclose(f); + +#endif + + + cleanup: + av_free (frame); + + free(buffer); + + if (fifo) + av_audio_fifo_free(fifo); + if (resample_context) { + avresample_close(resample_context); + avresample_free(&resample_context); + } + if (output_codec_context) + avcodec_close(output_codec_context); + + if (codec_ctx) + avcodec_close(codec_ctx); + if (format_ctx) + avformat_close_input(&format_ctx); + av_free (io_ctx); + + +} + +/** + * Main method for the opus-preview plugin. + * + * @param ec extraction context + */ +void +EXTRACTOR_previewopus_extract_method (struct EXTRACTOR_ExtractContext *ec) +{ + ssize_t iret; + void *data; + + + if (-1 == (iret = ec->read (ec->cls, + &data, + 16 * 1024))) + return; + + if (0 != ec->seek (ec->cls, 0, SEEK_SET)) + return; + + extract_audio (ec); +} + + + +/** + * Log callback. Does nothing. + * + * @param ptr NULL + * @param level log level + * @param format format string + * @param ap arguments for format + */ +static void +previewopus_av_log_callback (void* ptr, + int level, + const char *format, + va_list ap) +{ +#if DEBUG + vfprintf(stderr, format, ap); +#endif +} + + +/** + * Initialize av-libs + */ +void __attribute__ ((constructor)) +previewopus_lib_init (void) +{ + av_log_set_callback (&previewopus_av_log_callback); + av_register_all (); + +} + + +/** + * Destructor for the library, cleans up. + */ +void __attribute__ ((destructor)) +previewopus_ltdl_fini () +{ + +} + + +/* end of previewopus_extractor.c */ diff -Nru libextractor-1.2/src/plugins/rpm_extractor.c libextractor-1.3/src/plugins/rpm_extractor.c --- libextractor-1.2/src/plugins/rpm_extractor.c 2012-09-04 11:02:51.000000000 +0000 +++ libextractor-1.3/src/plugins/rpm_extractor.c 2013-11-28 21:16:45.000000000 +0000 @@ -28,7 +28,11 @@ #include #include #include +#if SOMEBSD +#include +#else #include +#endif #include #include @@ -36,9 +40,9 @@ /** * Closure for the 'pipe_feeder'. */ -struct PipeArgs +struct PipeArgs { - + /** * Context for reading data from. */ @@ -84,7 +88,7 @@ void *ptr; char *buf; - /* buffer is heap-allocated as this is a thread and + /* buffer is heap-allocated as this is a thread and large stack allocations might not be the best idea */ while (0 == p->shutdown) { @@ -110,13 +114,13 @@ } if (0 == wret) break; - done += wret; + done += wret; } if (done != rret) break; } CLOSE (p->pi[1]); - return NULL; + return NULL; } @@ -124,14 +128,14 @@ * LOG callback called by librpm. Does nothing, we * just need this to override the default behavior. */ -static int +static int discard_log_callback (rpmlogRec rec, - void *ctx) + void *ctx) { /* do nothing! */ return 0; } - + /** * Mapping from RPM tags to LE types. @@ -152,7 +156,7 @@ /** * List of mappings from RPM tags to LE types. - */ + */ static struct Matches tests[] = { {RPMTAG_NAME, EXTRACTOR_METATYPE_PACKAGE_NAME}, {RPMTAG_VERSION, EXTRACTOR_METATYPE_SOFTWARE_VERSION}, @@ -238,7 +242,7 @@ /** - * Main entry method for the 'application/x-rpm' extraction plugin. + * Main entry method for the 'application/x-rpm' extraction plugin. * * @param ec extraction context provided to the plugin */ @@ -298,7 +302,7 @@ goto END; } pthread_mutex_lock (&parg.lock); - if (0 != ec->proc (ec->cls, + if (0 != ec->proc (ec->cls, "rpm", EXTRACTOR_METATYPE_MIMETYPE, EXTRACTOR_METAFORMAT_UTF8, @@ -322,18 +326,18 @@ case RPM_STRING_ARRAY_TYPE: case RPM_I18NSTRING_TYPE: case RPM_STRING_TYPE: - while (NULL != (str = rpmtdNextString (p))) + while (NULL != (str = rpmtdNextString (p))) { pthread_mutex_lock (&parg.lock); - if (0 != ec->proc (ec->cls, + if (0 != ec->proc (ec->cls, "rpm", tests[i].type, EXTRACTOR_METAFORMAT_UTF8, "text/plain", str, strlen (str) + 1)) - - { + + { pthread_mutex_unlock (&parg.lock); goto CLEANUP; } @@ -349,9 +353,9 @@ time_t tp = (time_t) *v; ctime_r (&tp, tmp); - tmp[strlen (tmp) - 1] = '\0'; /* eat linefeed */ + tmp[strlen (tmp) - 1] = '\0'; /* eat linefeed */ pthread_mutex_lock (&parg.lock); - if (0 != ec->proc (ec->cls, + if (0 != ec->proc (ec->cls, "rpm", tests[i].type, EXTRACTOR_METAFORMAT_UTF8, @@ -369,12 +373,12 @@ char tmp[14]; uint32_t *s = rpmtdNextUint32 (p); - snprintf (tmp, - sizeof (tmp), - "%u", + snprintf (tmp, + sizeof (tmp), + "%u", (unsigned int) *s); pthread_mutex_lock (&parg.lock); - if (0 != ec->proc (ec->cls, + if (0 != ec->proc (ec->cls, "rpm", tests[i].type, EXTRACTOR_METAFORMAT_UTF8, @@ -391,13 +395,13 @@ } default: break; - } + } } CLEANUP: rpmtdFree (p); headerFreeIterator (hi); - END: + END: headerFree (hdr); rpmtsFree(ts); @@ -410,7 +414,7 @@ sigaction (SIGALRM, &sig, &old); parg.shutdown = 1; CLOSE (parg.pi[0]); - Fclose (fdi); + Fclose (fdi); pthread_kill (pthr, SIGALRM); pthread_join (pthr, &unused); pthread_mutex_destroy (&parg.lock); diff -Nru libextractor-1.2/src/plugins/test_previewopus.c libextractor-1.3/src/plugins/test_previewopus.c --- libextractor-1.2/src/plugins/test_previewopus.c 1970-01-01 00:00:00.000000000 +0000 +++ libextractor-1.3/src/plugins/test_previewopus.c 2013-12-20 23:26:20.000000000 +0000 @@ -0,0 +1,54 @@ +/* + This file is part of libextractor. + (C) 2013 Vidyut Samanta and Christian Grothoff + + libextractor 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 3, or (at your + option) any later version. + + libextractor 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 libextractor; see the file COPYING. If not, write to the + Free Software Foundation, Inc., 59 Temple Place - Suite 330, + Boston, MA 02111-1307, USA. +*/ +/** + * @file plugins/test_previewopus.c + * @brief stub testcase for previewopus plugin + * @author Bruno Cabral + */ +#include "platform.h" +#include "test_lib.h" + + + +/** + * Main function for the previewopus testcase. + * + * @param argc number of arguments (ignored) + * @param argv arguments (ignored) + * @return 0 on success + */ +int +main (int argc, char *argv[]) +{ + struct SolutionData previewopus_audio_sol[] = + { + //TODO. Can't test as it depends on the encoder. + { 0, 0, NULL, NULL, 0, -1 } + }; + struct ProblemSet ps[] = + { + { "testdata/mpeg_alien.mpg", + previewopus_audio_sol }, + { NULL, NULL } + }; + return ET_main ("previewopus", ps); +} + +/* end of test_thumbnailffmpeg.c */ diff -Nru libextractor-1.2/src/plugins/thumbnailffmpeg_extractor.c libextractor-1.3/src/plugins/thumbnailffmpeg_extractor.c --- libextractor-1.2/src/plugins/thumbnailffmpeg_extractor.c 2013-08-28 09:30:31.000000000 +0000 +++ libextractor-1.3/src/plugins/thumbnailffmpeg_extractor.c 2013-12-21 16:04:41.000000000 +0000 @@ -168,6 +168,12 @@ uint8_t *encoder_output_buffer; size_t encoder_output_buffer_size; int err; + + AVPacket pkt; + av_init_packet(&pkt); + pkt.data = NULL; + pkt.size = 0; + int gotPacket; if (NULL == (encoder_codec = avcodec_find_encoder_by_name ("png"))) { @@ -264,9 +270,29 @@ sws_freeContext (scaler_ctx); return 0; } + + +#if LIBAVCODEC_BUILD >= AV_VERSION_INT(54,25,0) + //err = encode_frame (encoder_codec_ctx, dst_frame); + err = avcodec_encode_video2 (encoder_codec_ctx, + &pkt, + dst_frame, &gotPacket); + + if(err < 0) + goto cleanup; + err = pkt.size; + memcpy(encoder_output_buffer,pkt.data, pkt.size); + + av_free_packet(&pkt); + + +#else err = avcodec_encode_video (encoder_codec_ctx, encoder_output_buffer, encoder_output_buffer_size, dst_frame); + +#endif +cleanup: av_dict_free (&opts); avcodec_close (encoder_codec_ctx); av_free (encoder_codec_ctx); @@ -327,13 +353,12 @@ #endif } -#if AV_VERSION_INT(54,25,0) > LIBAVUTIL_VERSION_INT -#define ENUM_CODEC_ID enum CodecID +#if LIBAVCODEC_BUILD >= AV_VERSION_INT(54,25,0) + #define ENUM_CODEC_ID enum AVCodecID #else -#define ENUM_CODEC_ID enum AvCodecID + #define ENUM_CODEC_ID enum CodecID #endif - /** * Perform thumbnailing when the input is an image. * @@ -608,6 +633,7 @@ &encoded_thumbnail, MAX_THUMB_BYTES); if (err > 0) { + ec->proc (ec->cls, "thumbnailffmpeg", EXTRACTOR_METATYPE_THUMBNAIL, @@ -646,13 +672,25 @@ */ static const struct MIMEToDecoderMapping m2d_map[] = { - { "image/x-bmp", CODEC_ID_BMP }, + +#if LIBAVCODEC_BUILD >= AV_VERSION_INT(54,25,0) + { "image/x-bmp", AV_CODEC_ID_BMP }, + { "image/gif", AV_CODEC_ID_GIF }, + { "image/jpeg", AV_CODEC_ID_MJPEG }, + { "image/png", AV_CODEC_ID_PNG }, + { "image/x-png", AV_CODEC_ID_PNG }, + { "image/x-portable-pixmap", AV_CODEC_ID_PPM }, + { NULL, AV_CODEC_ID_NONE } +#else + { "image/x-bmp", CODEC_ID_BMP }, { "image/gif", CODEC_ID_GIF }, { "image/jpeg", CODEC_ID_MJPEG }, { "image/png", CODEC_ID_PNG }, { "image/x-png", CODEC_ID_PNG }, { "image/x-portable-pixmap", CODEC_ID_PPM }, { NULL, CODEC_ID_NONE } +#endif + }; diff -Nru libextractor-1.2/test-driver libextractor-1.3/test-driver --- libextractor-1.2/test-driver 2013-10-19 14:32:52.000000000 +0000 +++ libextractor-1.3/test-driver 1970-01-01 00:00:00.000000000 +0000 @@ -1,127 +0,0 @@ -#! /bin/sh -# test-driver - basic testsuite driver script. - -scriptversion=2012-06-27.10; # UTC - -# Copyright (C) 2011-2013 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. - -# This file is maintained in Automake, please report -# bugs to or send patches to -# . - -# Make unconditional expansion of undefined variables an error. This -# helps a lot in preventing typo-related bugs. -set -u - -usage_error () -{ - echo "$0: $*" >&2 - print_usage >&2 - exit 2 -} - -print_usage () -{ - cat <$log_file 2>&1 -estatus=$? -if test $enable_hard_errors = no && test $estatus -eq 99; then - estatus=1 -fi - -case $estatus:$expect_failure in - 0:yes) col=$red res=XPASS recheck=yes gcopy=yes;; - 0:*) col=$grn res=PASS recheck=no gcopy=no;; - 77:*) col=$blu res=SKIP recheck=no gcopy=yes;; - 99:*) col=$mgn res=ERROR recheck=yes gcopy=yes;; - *:yes) col=$lgn res=XFAIL recheck=no gcopy=yes;; - *:*) col=$red res=FAIL recheck=yes gcopy=yes;; -esac - -# Report outcome to console. -echo "${col}${res}${std}: $test_name" - -# Register the test result, and other relevant metadata. -echo ":test-result: $res" > $trs_file -echo ":global-test-result: $res" >> $trs_file -echo ":recheck: $recheck" >> $trs_file -echo ":copy-in-global-log: $gcopy" >> $trs_file - -# 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: