Hello community, here is the log from the commit of package libcerror for openSUSE:Factory checked in at 2017-10-05 11:57:14 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libcerror (Old) and /work/SRC/openSUSE:Factory/.libcerror.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libcerror" Thu Oct 5 11:57:14 2017 rev:13 rq:530563 version:0~20170824 Changes: -------- --- /work/SRC/openSUSE:Factory/libcerror/libcerror.changes 2017-02-19 01:02:47.652730287 +0100 +++ /work/SRC/openSUSE:Factory/.libcerror.new/libcerror.changes 2017-10-05 11:57:18.081126173 +0200 @@ -1,0 +2,7 @@ +Sun Oct 1 21:38:12 UTC 2017 - [email protected] + +- update to v0~20170824 + * worked on packaging issues for non-linux distros + * worked on tests + +------------------------------------------------------------------- Old: ---- libcerror-beta-20170101.tar.gz New: ---- libcerror-beta-20170824.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libcerror.spec ++++++ --- /var/tmp/diff_new_pack.EvgWBM/_old 2017-10-05 11:57:19.128978742 +0200 +++ /var/tmp/diff_new_pack.EvgWBM/_new 2017-10-05 11:57:19.136977617 +0200 @@ -18,7 +18,7 @@ Name: libcerror %define lname libcerror1 -%define timestamp 20170101 +%define timestamp 20170824 Version: 0~%timestamp Release: 0 Summary: Library for cross-platform C error functions ++++++ libcerror-beta-20170101.tar.gz -> libcerror-beta-20170824.tar.gz ++++++ ++++ 2021 lines of diff (skipped) ++++ retrying with extended exclude list diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libcerror-20170101/Makefile.am new/libcerror-20170824/Makefile.am --- old/libcerror-20170101/Makefile.am 2016-11-06 03:51:28.000000000 +0100 +++ new/libcerror-20170824/Makefile.am 2017-04-10 06:11:31.000000000 +0200 @@ -15,10 +15,9 @@ dpkg/compat \ dpkg/control \ dpkg/copyright \ - dpkg/copyright.in \ dpkg/rules \ - dpkg/libcerror-dev.docs \ - dpkg/libcerror.docs \ + dpkg/libcerror-dev.install \ + dpkg/libcerror.install \ dpkg/source/format GETTEXT_FILES = \ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libcerror-20170101/common/config.h new/libcerror-20170824/common/config.h --- old/libcerror-20170101/common/config.h 2017-01-01 09:16:48.000000000 +0100 +++ new/libcerror-20170824/common/config.h 2017-08-24 07:28:59.000000000 +0200 @@ -263,7 +263,7 @@ #define PACKAGE_NAME "libcerror" /* Define to the full name and version of this package. */ -#define PACKAGE_STRING "libcerror 20170101" +#define PACKAGE_STRING "libcerror 20170824" /* Define to the one symbol short name of this package. */ #define PACKAGE_TARNAME "libcerror" @@ -272,7 +272,7 @@ #define PACKAGE_URL "" /* Define to the version of this package. */ -#define PACKAGE_VERSION "20170101" +#define PACKAGE_VERSION "20170824" /* The size of `int', as computed by sizeof. */ #define SIZEOF_INT 4 @@ -293,7 +293,7 @@ /* #undef STRERROR_R_CHAR_P */ /* Version number of package */ -#define VERSION "20170101" +#define VERSION "20170824" /* Enable large inode numbers on Mac OS X 10.5. */ #ifndef _DARWIN_USE_64_BIT_INODE diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libcerror-20170101/configure.ac new/libcerror-20170824/configure.ac --- old/libcerror-20170101/configure.ac 2017-01-01 09:07:48.000000000 +0100 +++ new/libcerror-20170824/configure.ac 2017-08-24 07:25:32.000000000 +0200 @@ -2,7 +2,7 @@ AC_INIT( [libcerror], - [20170101], + [20170824], [[email protected]]) AC_CONFIG_SRCDIR( @@ -119,7 +119,6 @@ dnl Have configure make distribution specific files AC_CONFIG_FILES([common/types.h]) AC_CONFIG_FILES([dpkg/changelog]) -AC_CONFIG_FILES([dpkg/copyright]) AC_CONFIG_FILES([libcerror/libcerror.rc]) AC_CONFIG_FILES([libcerror.pc]) AC_CONFIG_FILES([libcerror.spec]) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libcerror-20170101/dpkg/changelog new/libcerror-20170824/dpkg/changelog --- old/libcerror-20170101/dpkg/changelog 2017-01-01 09:16:48.000000000 +0100 +++ new/libcerror-20170824/dpkg/changelog 2017-08-24 07:28:59.000000000 +0200 @@ -1,5 +1,5 @@ -libcerror (20170101-1) unstable; urgency=low +libcerror (20170824-1) unstable; urgency=low * Auto-generated - -- Joachim Metz <[email protected]> Sun, 01 Jan 2017 09:16:47 +0100 + -- Joachim Metz <[email protected]> Thu, 24 Aug 2017 07:28:58 +0200 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libcerror-20170101/dpkg/compat new/libcerror-20170824/dpkg/compat --- old/libcerror-20170101/dpkg/compat 2012-05-07 20:26:51.000000000 +0200 +++ new/libcerror-20170824/dpkg/compat 2017-08-24 07:25:31.000000000 +0200 @@ -1 +1 @@ -7 +9 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libcerror-20170101/dpkg/control new/libcerror-20170824/dpkg/control --- old/libcerror-20170101/dpkg/control 2016-09-12 07:30:26.000000000 +0200 +++ new/libcerror-20170824/dpkg/control 2017-08-24 07:25:31.000000000 +0200 @@ -1,10 +1,10 @@ Source: libcerror -Section: libs Priority: extra Maintainer: Joachim Metz <[email protected]> -Build-Depends: debhelper (>= 7), autotools-dev +Build-Depends: debhelper (>= 9), dh-autoreconf, pkg-config Standards-Version: 3.9.5 -Homepage: https://github.com/libyal/libcerror/ +Section: libs +Homepage: https://github.com/libyal/libcerror Package: libcerror Architecture: any diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libcerror-20170101/dpkg/copyright new/libcerror-20170824/dpkg/copyright --- old/libcerror-20170101/dpkg/copyright 2017-01-01 09:16:48.000000000 +0100 +++ new/libcerror-20170824/dpkg/copyright 2017-08-24 07:25:31.000000000 +0200 @@ -1,40 +1,25 @@ -This work was packaged for Debian by: - - Joachim Metz <[email protected]> on Sun, 01 Jan 2017 09:16:47 +0100 - -It was downloaded from https://github.com/libyal/libcerror/ - -Upstream Author(s): - - Joachim Metz <[email protected]> - -Copyright: - - Copyright (C) 2008-2017, Joachim Metz <[email protected]> - -License: - - This package is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 3 of the License, or (at your option) any later version. - - This package 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 - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this package; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - -On Debian systems, the complete text of the GNU Lesser General -Public License can be found in `/usr/share/common-licenses/LGPL-3'. - -The Debian packaging is: - - Copyright (C) 2008-2017, Joachim Metz <[email protected]> - -and is licensed under the GNU Lesser General Public License, -see `/usr/share/common-licenses/LGPL-3'. +Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: libcerror +Source: https://github.com/libyal/libcerror + +Files: * +Copyright: 2008-2017, Joachim Metz <[email protected]> +License: LGPL-3.0+ + +License: LGPL-3.0+ + This package is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 3 of the License, or (at your option) any later version. + . + This package 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 + Lesser General Public License for more details. + . + You should have received a copy of the GNU General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. + . + On Debian systems, the complete text of the GNU Lesser General + Public License can be found in "/usr/share/common-licenses/LGPL-3". diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libcerror-20170101/dpkg/copyright.in new/libcerror-20170824/dpkg/copyright.in --- old/libcerror-20170101/dpkg/copyright.in 2017-01-01 09:07:48.000000000 +0100 +++ new/libcerror-20170824/dpkg/copyright.in 1970-01-01 01:00:00.000000000 +0100 @@ -1,40 +0,0 @@ -This work was packaged for Debian by: - - Joachim Metz <[email protected]> on @DPKG_DATE@ - -It was downloaded from https://github.com/libyal/libcerror/ - -Upstream Author(s): - - Joachim Metz <[email protected]> - -Copyright: - - Copyright (C) 2008-2017, Joachim Metz <[email protected]> - -License: - - This package is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 3 of the License, or (at your option) any later version. - - This package 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 - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this package; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - -On Debian systems, the complete text of the GNU Lesser General -Public License can be found in `/usr/share/common-licenses/LGPL-3'. - -The Debian packaging is: - - Copyright (C) 2008-2017, Joachim Metz <[email protected]> - -and is licensed under the GNU Lesser General Public License, -see `/usr/share/common-licenses/LGPL-3'. - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libcerror-20170101/dpkg/libcerror-dev.docs new/libcerror-20170824/dpkg/libcerror-dev.docs --- old/libcerror-20170101/dpkg/libcerror-dev.docs 2016-03-27 09:05:44.000000000 +0200 +++ new/libcerror-20170824/dpkg/libcerror-dev.docs 1970-01-01 01:00:00.000000000 +0100 @@ -1,4 +0,0 @@ -AUTHORS -COPYING -NEWS -README diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libcerror-20170101/dpkg/libcerror-dev.install new/libcerror-20170824/dpkg/libcerror-dev.install --- old/libcerror-20170101/dpkg/libcerror-dev.install 1970-01-01 01:00:00.000000000 +0100 +++ new/libcerror-20170824/dpkg/libcerror-dev.install 2017-08-24 07:25:31.000000000 +0200 @@ -0,0 +1,5 @@ +usr/include/* +usr/lib/*-*/lib*.a +usr/lib/*-*/lib*.so +usr/lib/*-*/pkgconfig/* +usr/share/man/man3 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libcerror-20170101/dpkg/libcerror.docs new/libcerror-20170824/dpkg/libcerror.docs --- old/libcerror-20170101/dpkg/libcerror.docs 2012-05-07 20:26:51.000000000 +0200 +++ new/libcerror-20170824/dpkg/libcerror.docs 1970-01-01 01:00:00.000000000 +0100 @@ -1,4 +0,0 @@ -AUTHORS -COPYING -NEWS -README diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libcerror-20170101/dpkg/libcerror.install new/libcerror-20170824/dpkg/libcerror.install --- old/libcerror-20170101/dpkg/libcerror.install 1970-01-01 01:00:00.000000000 +0100 +++ new/libcerror-20170824/dpkg/libcerror.install 2017-08-24 07:25:31.000000000 +0200 @@ -0,0 +1 @@ +usr/lib/*-*/lib*.so.* diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libcerror-20170101/dpkg/rules new/libcerror-20170824/dpkg/rules --- old/libcerror-20170101/dpkg/rules 2016-03-27 09:05:45.000000000 +0200 +++ new/libcerror-20170824/dpkg/rules 2017-08-24 07:25:31.000000000 +0200 @@ -1,78 +1,19 @@ #!/usr/bin/make -f -# debian/rules that uses debhelper >= 7. +# -*- makefile -*- -# Uncomment this to turn on verbose mode. -#export DH_VERBOSE=1 - -# This has to be exported to make some magic below work. -export DH_OPTIONS +# Uncomment for debhelper verbose output. +# export DH_VERBOSE=1 %: - dh $@ + dh $@ --with autoreconf .PHONY: override_dh_auto_configure override_dh_auto_configure: dh_auto_configure -- CFLAGS="-g" -.PHONY: override_dh_auto_test -override_dh_auto_test: - .PHONY: override_dh_install override_dh_install: - # Create the libcerror package. - dh_install "debian/tmp/usr/lib/lib*.so.*.*.*" -p libcerror - # Create the libcerror-dev package. - dh_install "debian/tmp/usr/include/*.h" -p libcerror-dev - dh_install "debian/tmp/usr/include/lib*/*.h" -p libcerror-dev - dh_install "debian/tmp/usr/lib/*.a" -p libcerror-dev - dh_install "debian/tmp/usr/lib/*.la" -p libcerror-dev - dh_install "debian/tmp/usr/lib/*.so" -p libcerror-dev - dh_install "debian/tmp/usr/lib/pkgconfig/*" -p libcerror-dev - dh_install "debian/tmp/usr/share/man/man3/*" -p libcerror-dev - # The libcerror-dbg package is created by dh_strip. - dh_install - -.PHONY: override_dh_installmenu -override_dh_installmenu: - -.PHONY: override_dh_installmime -override_dh_installmime: - -.PHONY: override_dh_installmodules -override_dh_installmodules: - -.PHONY: override_dh_installlogcheck -override_dh_installlogcheck: - -.PHONY: override_dh_installlogrotate -override_dh_installlogrotate: - -.PHONY: override_dh_installpam -override_dh_installpam: - -.PHONY: override_dh_installppp -override_dh_installppp: - -.PHONY: override_dh_installudev -override_dh_installudev: - -.PHONY: override_dh_installwm -override_dh_installwm: - -.PHONY: override_dh_installxfonts -override_dh_installxfonts: - -.PHONY: override_dh_gconf -override_dh_gconf: - -.PHONY: override_dh_icons -override_dh_icons: - -.PHONY: override_dh_perl -override_dh_perl: - -.PHONY: override_dh_pysupport -override_dh_pysupport: + dh_install --fail-missing -X.la .PHONY: override_dh_strip override_dh_strip: @@ -80,11 +21,3 @@ dh_strip -plibcerror --dbg-package=libcerror-dbg endif -.PHONY: override_dh_shlibdeps -override_dh_shlibdeps: - dh_shlibdeps -Llibcerror -l${CURDIR}/debian/tmp/usr/lib - -.PHONY: override_dh_makeshlibs -override_dh_makeshlibs: - dh_makeshlibs -Xlibcerror-dev - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libcerror-20170101/dpkg/source/format new/libcerror-20170824/dpkg/source/format --- old/libcerror-20170101/dpkg/source/format 2016-03-27 09:05:45.000000000 +0200 +++ new/libcerror-20170824/dpkg/source/format 2017-08-24 07:25:31.000000000 +0200 @@ -1 +1 @@ -1.0 +3.0 (quilt) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libcerror-20170101/include/libcerror/definitions.h new/libcerror-20170824/include/libcerror/definitions.h --- old/libcerror-20170101/include/libcerror/definitions.h 2017-01-01 09:16:48.000000000 +0100 +++ new/libcerror-20170824/include/libcerror/definitions.h 2017-08-24 07:28:59.000000000 +0200 @@ -24,11 +24,11 @@ #include <libcerror/types.h> -#define LIBCERROR_VERSION 20170101 +#define LIBCERROR_VERSION 20170824 /* The libcerror version string */ -#define LIBCERROR_VERSION_STRING "20170101" +#define LIBCERROR_VERSION_STRING "20170824" /* The error domains */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libcerror-20170101/libcerror/libcerror.rc new/libcerror-20170824/libcerror/libcerror.rc --- old/libcerror-20170101/libcerror/libcerror.rc 2017-01-01 09:16:48.000000000 +0100 +++ new/libcerror-20170824/libcerror/libcerror.rc 2017-08-24 07:28:59.000000000 +0200 @@ -22,12 +22,12 @@ BLOCK "040904E4" BEGIN VALUE "FileDescription", "Library to support cross-platform C error functions\0" - VALUE "FileVersion", "20170101" "\0" + VALUE "FileVersion", "20170824" "\0" VALUE "InternalName", "libcerror.dll\0" VALUE "LegalCopyright", "(C) 2008-2017, Joachim Metz <[email protected]>\0" VALUE "OriginalFilename", "libcerror.dll\0" VALUE "ProductName", "libcerror\0" - VALUE "ProductVersion", "20170101" "\0" + VALUE "ProductVersion", "20170824" "\0" VALUE "Comments", "For more information visit https://github.com/libyal/libcerror/\0" END END diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libcerror-20170101/libcerror/libcerror_definitions.h new/libcerror-20170824/libcerror/libcerror_definitions.h --- old/libcerror-20170101/libcerror/libcerror_definitions.h 2017-01-01 09:16:48.000000000 +0100 +++ new/libcerror-20170824/libcerror/libcerror_definitions.h 2017-08-24 07:28:59.000000000 +0200 @@ -35,11 +35,11 @@ */ #else -#define LIBCERROR_VERSION 20170101 +#define LIBCERROR_VERSION 20170824 /* The libcerror version string */ -#define LIBCERROR_VERSION_STRING "20170101" +#define LIBCERROR_VERSION_STRING "20170824" /* The error domains */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libcerror-20170101/libcerror/libcerror_system.c new/libcerror-20170824/libcerror/libcerror_system.c --- old/libcerror-20170101/libcerror/libcerror_system.c 2017-01-01 09:07:48.000000000 +0100 +++ new/libcerror-20170824/libcerror/libcerror_system.c 2017-08-24 07:27:07.000000000 +0200 @@ -574,7 +574,7 @@ { message_size += LIBCERROR_MESSAGE_INCREMENT_SIZE; } - else if( ( (size_t) print_count > message_size ) + else if( ( (size_t) print_count >= message_size ) || ( ( internal_error->messages[ message_index ] )[ print_count ] != 0 ) ) { message_size = (size_t) ( print_count + 1 ); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libcerror-20170101/libcerror.spec new/libcerror-20170824/libcerror.spec --- old/libcerror-20170101/libcerror.spec 2017-01-01 09:16:48.000000000 +0100 +++ new/libcerror-20170824/libcerror.spec 2017-08-24 07:28:59.000000000 +0200 @@ -1,5 +1,5 @@ Name: libcerror -Version: 20170101 +Version: 20170824 Release: 1 Summary: Library to support cross-platform C error functions Group: System Environment/Libraries @@ -53,6 +53,6 @@ %{_mandir}/man3/* %changelog -* Sun Jan 1 2017 Joachim Metz <[email protected]> 20170101-1 +* Thu Aug 24 2017 Joachim Metz <[email protected]> 20170824-1 - Auto-generated diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libcerror-20170101/tests/Makefile.am new/libcerror-20170824/tests/Makefile.am --- old/libcerror-20170101/tests/Makefile.am 2017-01-01 09:07:47.000000000 +0100 +++ new/libcerror-20170824/tests/Makefile.am 2017-08-24 07:25:31.000000000 +0200 @@ -4,12 +4,10 @@ @LIBCERROR_DLL_IMPORT@ TESTS = \ - test_api_functions.sh \ - test_api_types.sh + test_library.sh check_SCRIPTS = \ - test_api_functions.sh \ - test_api_types.sh \ + test_library.sh \ test_runner.sh EXTRA_DIST = \ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libcerror-20170101/tests/cerror_test_macros.h new/libcerror-20170824/tests/cerror_test_macros.h --- old/libcerror-20170101/tests/cerror_test_macros.h 2017-01-01 09:07:48.000000000 +0100 +++ new/libcerror-20170824/tests/cerror_test_macros.h 2017-08-24 07:25:32.000000000 +0200 @@ -71,6 +71,62 @@ goto on_error; \ } +#define CERROR_TEST_ASSERT_EQUAL_INT8( name, value, expected_value ) \ + if( value != expected_value ) \ + { \ + fprintf( stdout, "%s:%d %s (%" PRIi8 ") != %" PRIi8 "\n", __FILE__, __LINE__, name, value, expected_value ); \ + goto on_error; \ + } + +#define CERROR_TEST_ASSERT_NOT_EQUAL_INT8( name, value, expected_value ) \ + if( value == expected_value ) \ + { \ + fprintf( stdout, "%s:%d %s (%" PRIi8 ") == %" PRIi8 "\n", __FILE__, __LINE__, name, value, expected_value ); \ + goto on_error; \ + } + +#define CERROR_TEST_ASSERT_EQUAL_UINT8( name, value, expected_value ) \ + if( value != expected_value ) \ + { \ + fprintf( stdout, "%s:%d %s (%" PRIi8 ") != %" PRIu8 "\n", __FILE__, __LINE__, name, value, expected_value ); \ + goto on_error; \ + } + +#define CERROR_TEST_ASSERT_LESS_THAN_UINT8( name, value, expected_value ) \ + if( value >= expected_value ) \ + { \ + fprintf( stdout, "%s:%d %s (%" PRIi8 ") >= %" PRIu8 "\n", __FILE__, __LINE__, name, value, expected_value ); \ + goto on_error; \ + } + +#define CERROR_TEST_ASSERT_EQUAL_INT16( name, value, expected_value ) \ + if( value != expected_value ) \ + { \ + fprintf( stdout, "%s:%d %s (%" PRIi16 ") != %" PRIi16 "\n", __FILE__, __LINE__, name, value, expected_value ); \ + goto on_error; \ + } + +#define CERROR_TEST_ASSERT_NOT_EQUAL_INT16( name, value, expected_value ) \ + if( value == expected_value ) \ + { \ + fprintf( stdout, "%s:%d %s (%" PRIi16 ") == %" PRIi16 "\n", __FILE__, __LINE__, name, value, expected_value ); \ + goto on_error; \ + } + +#define CERROR_TEST_ASSERT_EQUAL_UINT16( name, value, expected_value ) \ + if( value != expected_value ) \ + { \ + fprintf( stdout, "%s:%d %s (%" PRIi16 ") != %" PRIu16 "\n", __FILE__, __LINE__, name, value, expected_value ); \ + goto on_error; \ + } + +#define CERROR_TEST_ASSERT_LESS_THAN_UINT16( name, value, expected_value ) \ + if( value >= expected_value ) \ + { \ + fprintf( stdout, "%s:%d %s (%" PRIi16 ") >= %" PRIu16 "\n", __FILE__, __LINE__, name, value, expected_value ); \ + goto on_error; \ + } + #define CERROR_TEST_ASSERT_EQUAL_INT32( name, value, expected_value ) \ if( value != expected_value ) \ { \ @@ -78,6 +134,13 @@ goto on_error; \ } +#define CERROR_TEST_ASSERT_NOT_EQUAL_INT32( name, value, expected_value ) \ + if( value == expected_value ) \ + { \ + fprintf( stdout, "%s:%d %s (%" PRIi32 ") == %" PRIi32 "\n", __FILE__, __LINE__, name, value, expected_value ); \ + goto on_error; \ + } + #define CERROR_TEST_ASSERT_EQUAL_UINT32( name, value, expected_value ) \ if( value != expected_value ) \ { \ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libcerror-20170101/tests/cerror_test_memory.c new/libcerror-20170824/tests/cerror_test_memory.c --- old/libcerror-20170101/tests/cerror_test_memory.c 2017-01-01 09:07:48.000000000 +0100 +++ new/libcerror-20170824/tests/cerror_test_memory.c 2017-08-24 07:25:32.000000000 +0200 @@ -25,13 +25,15 @@ #include <stdlib.h> #endif -#if defined( HAVE_GNU_DL_DLSYM ) && defined( __GNUC__ ) && !defined( __clang__ ) +#if defined( HAVE_GNU_DL_DLSYM ) && defined( __GNUC__ ) #define __USE_GNU #include <dlfcn.h> #undef __USE_GNU #endif -#if defined( HAVE_GNU_DL_DLSYM ) && defined( __GNUC__ ) && !defined( __clang__ ) +#include "cerror_test_memory.h" + +#if defined( HAVE_CERROR_TEST_MEMORY ) static void *(*cerror_test_real_malloc)(size_t) = NULL; static void *(*cerror_test_real_memcpy)(void *, void *, size_t) = NULL; @@ -171,5 +173,5 @@ return( ptr ); } -#endif /* defined( HAVE_GNU_DL_DLSYM ) && defined( __GNUC__ ) && !defined( __clang__ ) */ +#endif /* defined( HAVE_CERROR_TEST_MEMORY ) */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libcerror-20170101/tests/cerror_test_memory.h new/libcerror-20170824/tests/cerror_test_memory.h --- old/libcerror-20170101/tests/cerror_test_memory.h 2017-01-01 09:07:48.000000000 +0100 +++ new/libcerror-20170824/tests/cerror_test_memory.h 2017-08-24 07:25:32.000000000 +0200 @@ -28,9 +28,11 @@ extern "C" { #endif -#if defined( HAVE_GNU_DL_DLSYM ) && defined( __GNUC__ ) && !defined( __clang__ ) - +#if defined( HAVE_GNU_DL_DLSYM ) && defined( __GNUC__ ) && !defined( LIBCERROR_DLL_IMPORT ) && !defined( __arm__ ) && !defined( __clang__ ) && !defined( __CYGWIN__ ) && !defined( __hppa__ ) && !defined( __mips__ ) && !defined( __sparc__ ) && !defined( HAVE_ASAN ) #define HAVE_CERROR_TEST_MEMORY 1 +#endif + +#if defined( HAVE_CERROR_TEST_MEMORY ) extern int cerror_test_malloc_attempts_before_fail; @@ -40,7 +42,7 @@ extern int cerror_test_realloc_attempts_before_fail; -#endif /* defined( HAVE_GNU_DL_DLSYM ) && defined( __GNUC__ ) && !defined( __clang__ ) */ +#endif /* defined( HAVE_CERROR_TEST_MEMORY ) */ #if defined( __cplusplus ) } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libcerror-20170101/tests/test_api_functions.sh new/libcerror-20170824/tests/test_api_functions.sh --- old/libcerror-20170101/tests/test_api_functions.sh 2017-01-01 09:07:48.000000000 +0100 +++ new/libcerror-20170824/tests/test_api_functions.sh 1970-01-01 01:00:00.000000000 +0100 @@ -1,116 +0,0 @@ -#!/bin/bash -# Library API functions testing script -# -# Version: 20161110 - -EXIT_SUCCESS=0; -EXIT_FAILURE=1; -EXIT_IGNORE=77; - -TEST_PREFIX=`dirname ${PWD}`; -TEST_PREFIX=`basename ${TEST_PREFIX} | sed 's/^lib\([^-]*\).*$/\1/'`; - -TEST_PROFILE="lib${TEST_PREFIX}"; -TEST_FUNCTIONS="support"; -TEST_FUNCTIONS_WITH_INPUT=""; -OPTION_SETS=""; - -TEST_TOOL_DIRECTORY="."; -INPUT_DIRECTORY="input"; -INPUT_GLOB="*"; - -test_api_function() -{ - local TEST_FUNCTION=$1; - - local TEST_DESCRIPTION="Testing API functions: ${TEST_FUNCTION}"; - local TEST_EXECUTABLE="${TEST_TOOL_DIRECTORY}/${TEST_PREFIX}_test_${TEST_FUNCTION}"; - - if ! test -x "${TEST_EXECUTABLE}"; - then - TEST_EXECUTABLE="${TEST_EXECUTABLE}.exe"; - fi - - # TODO: add support for TEST_PROFILE and OPTION_SETS? - run_test_with_arguments "${TEST_DESCRIPTION}" "${TEST_EXECUTABLE}"; - local RESULT=$?; - - return ${RESULT}; -} - -test_api_function_with_input() -{ - local TEST_FUNCTION=$1; - - local TEST_DESCRIPTION="Testing API functions: ${TEST_FUNCTION}"; - local TEST_EXECUTABLE="${TEST_TOOL_DIRECTORY}/${TEST_PREFIX}_test_${TEST_FUNCTION}"; - - if ! test -x "${TEST_EXECUTABLE}"; - then - TEST_EXECUTABLE="${TEST_EXECUTABLE}.exe"; - fi - - run_test_on_input_directory "${TEST_PROFILE}" "${TEST_DESCRIPTION}" "default" "${OPTION_SETS}" "${TEST_EXECUTABLE}" "${INPUT_DIRECTORY}" "${INPUT_GLOB}"; - local RESULT=$?; - - return ${RESULT}; -} - -if ! test -z ${SKIP_LIBRARY_TESTS}; -then - exit ${EXIT_IGNORE}; -fi - -TEST_RUNNER="tests/test_runner.sh"; - -if ! test -f "${TEST_RUNNER}"; -then - TEST_RUNNER="./test_runner.sh"; -fi - -if ! test -f "${TEST_RUNNER}"; -then - echo "Missing test runner: ${TEST_RUNNER}"; - - exit ${EXIT_FAILURE}; -fi - -source ${TEST_RUNNER}; - -RESULT=${EXIT_IGNORE}; - -for TEST_FUNCTION in ${TEST_FUNCTIONS}; -do - test_api_function "${TEST_FUNCTION}"; - RESULT=$?; - - if test ${RESULT} -ne ${EXIT_SUCCESS}; - then - break; - fi -done - -if test ${RESULT} -ne ${EXIT_SUCCESS} && test ${RESULT} -ne ${EXIT_IGNORE}; -then - exit ${RESULT}; -fi - -for TEST_FUNCTION in ${TEST_FUNCTIONS_WITH_INPUT}; -do - if test -d ${INPUT_DIRECTORY}; - then - test_api_function_with_input "${TEST_FUNCTION}"; - RESULT=$?; - else - test_api_function "${TEST_FUNCTION}"; - RESULT=$?; - fi - - if test ${RESULT} -ne ${EXIT_SUCCESS}; - then - break; - fi -done - -exit ${RESULT}; - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libcerror-20170101/tests/test_api_types.sh new/libcerror-20170824/tests/test_api_types.sh --- old/libcerror-20170101/tests/test_api_types.sh 2017-01-01 09:07:48.000000000 +0100 +++ new/libcerror-20170824/tests/test_api_types.sh 1970-01-01 01:00:00.000000000 +0100 @@ -1,115 +0,0 @@ -#!/bin/bash -# Library API type testing script -# -# Version: 20161110 - -EXIT_SUCCESS=0; -EXIT_FAILURE=1; -EXIT_IGNORE=77; - -TEST_PREFIX=`dirname ${PWD}`; -TEST_PREFIX=`basename ${TEST_PREFIX} | sed 's/^lib\([^-]*\).*$/\1/'`; - -TEST_PROFILE="lib${TEST_PREFIX}"; -TEST_TYPES="error"; -TEST_TYPES_WITH_INPUT=""; -OPTION_SETS=""; - -TEST_TOOL_DIRECTORY="."; -INPUT_DIRECTORY="input"; -INPUT_GLOB="*"; - -test_api_type() -{ - local TEST_TYPE=$1; - - local TEST_DESCRIPTION="Testing API type: ${TEST_TYPE}"; - local TEST_EXECUTABLE="${TEST_TOOL_DIRECTORY}/${TEST_PREFIX}_test_${TEST_TYPE}"; - - if ! test -x "${TEST_EXECUTABLE}"; - then - TEST_EXECUTABLE="${TEST_EXECUTABLE}.exe"; - fi - - run_test_with_arguments "${TEST_DESCRIPTION}" "${TEST_EXECUTABLE}"; - local RESULT=$?; - - return ${RESULT}; -} - -test_api_type_with_input() -{ - local TEST_TYPE=$1; - - local TEST_DESCRIPTION="Testing API type: ${TEST_TYPE}"; - local TEST_EXECUTABLE="${TEST_TOOL_DIRECTORY}/${TEST_PREFIX}_test_${TEST_TYPE}"; - - if ! test -x "${TEST_EXECUTABLE}"; - then - TEST_EXECUTABLE="${TEST_EXECUTABLE}.exe"; - fi - - run_test_on_input_directory "${TEST_PROFILE}" "${TEST_DESCRIPTION}" "default" "${OPTION_SETS}" "${TEST_EXECUTABLE}" "${INPUT_DIRECTORY}" "${INPUT_GLOB}"; - local RESULT=$?; - - return ${RESULT}; -} - -if ! test -z ${SKIP_LIBRARY_TESTS}; -then - exit ${EXIT_IGNORE}; -fi - -TEST_RUNNER="tests/test_runner.sh"; - -if ! test -f "${TEST_RUNNER}"; -then - TEST_RUNNER="./test_runner.sh"; -fi - -if ! test -f "${TEST_RUNNER}"; -then - echo "Missing test runner: ${TEST_RUNNER}"; - - exit ${EXIT_FAILURE}; -fi - -source ${TEST_RUNNER}; - -RESULT=${EXIT_IGNORE}; - -for TEST_TYPE in ${TEST_TYPES}; -do - test_api_type "${TEST_TYPE}"; - RESULT=$?; - - if test ${RESULT} -ne ${EXIT_SUCCESS}; - then - break; - fi -done - -if test ${RESULT} -ne ${EXIT_SUCCESS} && test ${RESULT} -ne ${EXIT_IGNORE}; -then - exit ${RESULT}; -fi - -for TEST_TYPE in ${TEST_TYPES_WITH_INPUT}; -do - if test -d ${INPUT_DIRECTORY}; - then - test_api_type_with_input "${TEST_TYPE}"; - RESULT=$?; - else - test_api_type "${TEST_TYPE}"; - RESULT=$?; - fi - - if test ${RESULT} -ne ${EXIT_SUCCESS}; - then - break; - fi -done - -exit ${RESULT}; - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libcerror-20170101/tests/test_library.sh new/libcerror-20170824/tests/test_library.sh --- old/libcerror-20170101/tests/test_library.sh 1970-01-01 01:00:00.000000000 +0100 +++ new/libcerror-20170824/tests/test_library.sh 2017-08-24 07:25:32.000000000 +0200 @@ -0,0 +1,110 @@ +#!/bin/bash +# Tests C library functions and types. +# +# Version: 20170722 + +EXIT_SUCCESS=0; +EXIT_FAILURE=1; +EXIT_IGNORE=77; + +LIBRARY_TESTS="error support"; +LIBRARY_TESTS_WITH_INPUT=""; +OPTION_SETS=""; + +INPUT_GLOB="*"; + +run_test() +{ + local TEST_NAME=$1; + + local TEST_DESCRIPTION="Testing: ${TEST_NAME}"; + local TEST_EXECUTABLE="./cerror_test_${TEST_NAME}"; + + if ! test -x "${TEST_EXECUTABLE}"; + then + TEST_EXECUTABLE="${TEST_EXECUTABLE}.exe"; + fi + + # TODO: add support for TEST_PROFILE and OPTION_SETS? + run_test_with_arguments "${TEST_DESCRIPTION}" "${TEST_EXECUTABLE}"; + local RESULT=$?; + + return ${RESULT}; +} + +run_test_with_input() +{ + local TEST_NAME=$1; + + local TEST_DESCRIPTION="Testing: ${TEST_NAME}"; + local TEST_EXECUTABLE="./cerror_test_${TEST_NAME}"; + + if ! test -x "${TEST_EXECUTABLE}"; + then + TEST_EXECUTABLE="${TEST_EXECUTABLE}.exe"; + fi + + run_test_on_input_directory "libcerror" "${TEST_DESCRIPTION}" "default" "${OPTION_SETS}" "${TEST_EXECUTABLE}" "input" "${INPUT_GLOB}"; + local RESULT=$?; + + return ${RESULT}; +} + +if ! test -z ${SKIP_LIBRARY_TESTS}; +then + exit ${EXIT_IGNORE}; +fi + +TEST_RUNNER="tests/test_runner.sh"; + +if ! test -f "${TEST_RUNNER}"; +then + TEST_RUNNER="./test_runner.sh"; +fi + +if ! test -f "${TEST_RUNNER}"; +then + echo "Missing test runner: ${TEST_RUNNER}"; + + exit ${EXIT_FAILURE}; +fi + +source ${TEST_RUNNER}; + +RESULT=${EXIT_IGNORE}; + +for TEST_NAME in ${LIBRARY_TESTS}; +do + run_test "${TEST_NAME}"; + RESULT=$?; + + if test ${RESULT} -ne ${EXIT_SUCCESS}; + then + break; + fi +done + +if test ${RESULT} -ne ${EXIT_SUCCESS} && test ${RESULT} -ne ${EXIT_IGNORE}; +then + exit ${RESULT}; +fi + +for TEST_NAME in ${LIBRARY_TESTS_WITH_INPUT}; +do + if test -d "input"; + then + run_test_with_input "${TEST_NAME}"; + RESULT=$?; + else + run_test "${TEST_NAME}"; + RESULT=$?; + fi + + if test ${RESULT} -ne ${EXIT_SUCCESS}; + then + break; + fi +done + +exit ${RESULT}; + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libcerror-20170101/tests/test_runner.sh new/libcerror-20170824/tests/test_runner.sh --- old/libcerror-20170101/tests/test_runner.sh 2017-01-01 09:07:48.000000000 +0100 +++ new/libcerror-20170824/tests/test_runner.sh 2017-08-24 07:25:32.000000000 +0200 @@ -1,7 +1,10 @@ #!/bin/bash # Bash functions to run an executable for testing. # -# Version: 20161115 +# Version: 20170825 +# +# When CHECK_WITH_ASAN is set to a non-empty value the test executable +# is run with asan, otherwise it is run without. # # When CHECK_WITH_GDB is set to a non-empty value the test executable # is run with gdb, otherwise it is run without. @@ -366,6 +369,7 @@ # Runs the test with optional arguments. # # Globals: +# CHECK_WITH_ASAN # CHECK_WITH_GDB # CHECK_WITH_STDERR # CHECK_WITH_VALGRIND @@ -393,7 +397,7 @@ return ${EXIT_FAILURE}; fi - local PLATFORM=`uname -s`; + local PLATFORM=`uname -s | sed 's/-.*$//'`; # Note that the behavior of `file -bi` is not helpful on Mac OS X. local EXECUTABLE_TYPE=`file -b ${TEST_EXECUTABLE}`; @@ -417,7 +421,34 @@ fi local RESULT=0; - if test -n "${CHECK_WITH_GDB}"; + if test -n "${CHECK_WITH_ASAN}"; + then + assert_availability_binary ldconfig; + + local LIBASAN=`ldconfig -p | grep libasan | sed 's/^.* => //'`; + + if ! test -f ${LIBASAN}; + then + echo "Missing library: ${BINARY}"; + echo ""; + + exit ${EXIT_FAILURE}; + fi + + local TEST_EXECUTABLE=$( find_binary_executable ${TEST_EXECUTABLE} ); + local LIBRARY_PATH=$( find_binary_library_path ${TEST_EXECUTABLE} ); + local PYTHON_MODULE_PATH=$( find_binary_python_module_path ${TEST_EXECUTABLE} ); + + if test ${IS_PYTHON_SCRIPT} -eq 0; + then + LSAN_OPTIONS=suppressions="lsan.suppressions" LD_PRELOAD="${LIBASAN}" LD_LIBRARY_PATH="${LIBRARY_PATH}" PYTHONPATH="${PYTHON_MODULE_PATH}" "${PYTHON}" "${TEST_EXECUTABLE}" ${ARGUMENTS[@]}; + RESULT=$?; + else + LSAN_OPTIONS=suppressions="lsan.suppressions" LD_PRELOAD="${LIBASAN}" LD_LIBRARY_PATH="${LIBRARY_PATH}" "${TEST_EXECUTABLE}" ${ARGUMENTS[@]}; + RESULT=$?; + fi + + elif test -n "${CHECK_WITH_GDB}"; then local TEST_EXECUTABLE=$( find_binary_executable ${TEST_EXECUTABLE} ); local LIBRARY_PATH=$( find_binary_library_path ${TEST_EXECUTABLE} ); @@ -433,6 +464,18 @@ DYLD_LIBRARY_PATH="${LIBRARY_PATH}" gdb -ex "set non-stop on" -ex "run" -ex "quit" --args "${TEST_EXECUTABLE}" ${ARGUMENTS[@]}; RESULT=$?; fi + + elif test "${PLATFORM}" = "CYGWIN_NT"; + then + if test ${IS_PYTHON_SCRIPT} -eq 0; + then + PATH="${LIBRARY_PATH}:${PATH}" PYTHONPATH="${PYTHON_MODULE_PATH}" gdb -ex "set non-stop on" -ex "run" -ex "quit" --args "${PYTHON}" "${TEST_EXECUTABLE}" ${ARGUMENTS[@]}; + RESULT=$?; + else + PATH="${LIBRARY_PATH}:${PATH}" gdb -ex "set non-stop on" -ex "run" -ex "quit" --args "${TEST_EXECUTABLE}" ${ARGUMENTS[@]}; + RESULT=$?; + fi + else if test ${IS_PYTHON_SCRIPT} -eq 0; then @@ -463,6 +506,18 @@ DYLD_LIBRARY_PATH="${LIBRARY_PATH}" valgrind ${VALGRIND_OPTIONS[@]} "${TEST_EXECUTABLE}" ${ARGUMENTS[@]}; RESULT=$?; fi + + elif test "${PLATFORM}" = "CYGWIN_NT"; + then + if test ${IS_PYTHON_SCRIPT} -eq 0; + then + PATH="${LIBRARY_PATH}:${PATH}" PYTHONPATH="${PYTHON_MODULE_PATH}" valgrind ${VALGRIND_OPTIONS[@]} "${PYTHON}" "${TEST_EXECUTABLE}" ${ARGUMENTS[@]}; + RESULT=$?; + else + PATH="${LIBRARY_PATH}:${PATH}" valgrind ${VALGRIND_OPTIONS[@]} "${TEST_EXECUTABLE}" ${ARGUMENTS[@]}; + RESULT=$?; + fi + else if test ${IS_PYTHON_SCRIPT} -eq 0; then @@ -537,6 +592,18 @@ DYLD_LIBRARY_PATH="${LIBRARY_PATH}" PYTHONPATH="${PYTHON_MODULE_PATH}" "${PYTHON}" "${TEST_EXECUTABLE}" ${ARGUMENTS[@]} 2> /dev/null; RESULT=$?; fi + + elif test "${PLATFORM}" = "CYGWIN_NT"; + then + if test -n "${CHECK_WITH_STDERR}"; + then + PATH="${LIBRARY_PATH}:${PATH}" PYTHONPATH="${PYTHON_MODULE_PATH}" "${PYTHON}" "${TEST_EXECUTABLE}" ${ARGUMENTS[@]}; + RESULT=$?; + else + PATH="${LIBRARY_PATH}:${PATH}" PYTHONPATH="${PYTHON_MODULE_PATH}" "${PYTHON}" "${TEST_EXECUTABLE}" ${ARGUMENTS[@]} 2> /dev/null; + RESULT=$?; + fi + else if test -n "${CHECK_WITH_STDERR}"; then @@ -582,6 +649,7 @@ # Runs the test with an input file and optional arguments. # # Globals: +# CHECK_WITH_ASAN # CHECK_WITH_GDB # CHECK_WITH_STDERR # CHECK_WITH_VALGRIND @@ -609,7 +677,7 @@ return ${EXIT_FAILURE}; fi - local PLATFORM=`uname -s`; + local PLATFORM=`uname -s | sed 's/-.*$//'`; # Note that the behavior of `file -bi` is not helpful on Mac OS X. local EXECUTABLE_TYPE=`file -b ${TEST_EXECUTABLE}`; @@ -633,7 +701,34 @@ fi local RESULT=0; - if test -n "${CHECK_WITH_GDB}"; + if test -n "${CHECK_WITH_ASAN}"; + then + assert_availability_binary ldconfig; + + local LIBASAN=`ldconfig -p | grep libasan | sed 's/^.* => //'`; + + if ! test -f ${LIBASAN}; + then + echo "Missing library: ${BINARY}"; + echo ""; + + exit ${EXIT_FAILURE}; + fi + + local TEST_EXECUTABLE=$( find_binary_executable ${TEST_EXECUTABLE} ); + local LIBRARY_PATH=$( find_binary_library_path ${TEST_EXECUTABLE} ); + local PYTHON_MODULE_PATH=$( find_binary_python_module_path ${TEST_EXECUTABLE} ); + + if test ${IS_PYTHON_SCRIPT} -eq 0; + then + LSAN_OPTIONS=suppressions="lsan.suppressions" LD_PRELOAD="${LIBASAN}" LD_LIBRARY_PATH="${LIBRARY_PATH}" PYTHONPATH="${PYTHON_MODULE_PATH}" "${PYTHON}" "${TEST_EXECUTABLE}" ${ARGUMENTS[@]} "${INPUT_FILE}"; + RESULT=$?; + else + LSAN_OPTIONS=suppressions="lsan.suppressions" LD_PRELOAD="${LIBASAN}" LD_LIBRARY_PATH="${LIBRARY_PATH}" "${TEST_EXECUTABLE}" ${ARGUMENTS[@]} "${INPUT_FILE}"; + RESULT=$?; + fi + + elif test -n "${CHECK_WITH_GDB}"; then local TEST_EXECUTABLE=$( find_binary_executable ${TEST_EXECUTABLE} ); local LIBRARY_PATH=$( find_binary_library_path ${TEST_EXECUTABLE} ); @@ -649,6 +744,18 @@ DYLD_LIBRARY_PATH="${LIBRARY_PATH}" gdb -ex "set non-stop on" -ex "run" -ex "quit" --args "${TEST_EXECUTABLE}" ${ARGUMENTS[@]} "${INPUT_FILE}"; RESULT=$?; fi + + elif test "${PLATFORM}" = "CYGWIN_NT"; + then + if test ${IS_PYTHON_SCRIPT} -eq 0; + then + PATH="${LIBRARY_PATH}:${PATH}" PYTHONPATH="${PYTHON_MODULE_PATH}" gdb -ex "set non-stop on" -ex "run" -ex "quit" --args "${PYTHON}" "${TEST_EXECUTABLE}" ${ARGUMENTS[@]} "${INPUT_FILE}"; + RESULT=$?; + else + PATH="${LIBRARY_PATH}:${PATH}" gdb -ex "set non-stop on" -ex "run" -ex "quit" --args "${TEST_EXECUTABLE}" ${ARGUMENTS[@]} "${INPUT_FILE}"; + RESULT=$?; + fi + else if test ${IS_PYTHON_SCRIPT} -eq 0; then @@ -679,6 +786,18 @@ DYLD_LIBRARY_PATH="${LIBRARY_PATH}" valgrind ${VALGRIND_OPTIONS[@]} "${TEST_EXECUTABLE}" ${ARGUMENTS[@]} "${INPUT_FILE}"; RESULT=$?; fi + + elif test "${PLATFORM}" = "CYGWIN_NT"; + then + if test ${IS_PYTHON_SCRIPT} -eq 0; + then + PATH="${LIBRARY_PATH}:${PATH}" PYTHONPATH="${PYTHON_MODULE_PATH}" valgrind ${VALGRIND_OPTIONS[@]} "${PYTHON}" "${TEST_EXECUTABLE}" ${ARGUMENTS[@]} "${INPUT_FILE}"; + RESULT=$?; + else + PATH="${LIBRARY_PATH}:${PATH}" valgrind ${VALGRIND_OPTIONS[@]} "${TEST_EXECUTABLE}" ${ARGUMENTS[@]} "${INPUT_FILE}"; + RESULT=$?; + fi + else if test ${IS_PYTHON_SCRIPT} -eq 0; then @@ -753,6 +872,18 @@ DYLD_LIBRARY_PATH="${LIBRARY_PATH}" PYTHONPATH="${PYTHON_MODULE_PATH}" "${PYTHON}" "${TEST_EXECUTABLE}" ${ARGUMENTS[@]} "${INPUT_FILE}" 2> /dev/null; RESULT=$?; fi + + elif test "${PLATFORM}" = "CYGWIN_NT"; + then + if test -n "${CHECK_WITH_STDERR}"; + then + PATH="${LIBRARY_PATH}:${PATH}" PYTHONPATH="${PYTHON_MODULE_PATH}" "${PYTHON}" "${TEST_EXECUTABLE}" ${ARGUMENTS[@]} "${INPUT_FILE}"; + RESULT=$?; + else + PATH="${LIBRARY_PATH}:${PATH}" PYTHONPATH="${PYTHON_MODULE_PATH}" "${PYTHON}" "${TEST_EXECUTABLE}" ${ARGUMENTS[@]} "${INPUT_FILE}" 2> /dev/null; + RESULT=$?; + fi + else if test -n "${CHECK_WITH_STDERR}"; then @@ -953,10 +1084,6 @@ # Runs the test on the input directory. # -# Globals: -# CHECK_WITH_GDB -# CHECK_WITH_VALGRIND -# # Arguments: # a string containing the name of the test profile # a string containing the description of the test
