Hello community,

here is the log from the commit of package ivykis for openSUSE:Factory checked 
in at 2017-09-12 19:55:48
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ivykis (Old)
 and      /work/SRC/openSUSE:Factory/.ivykis.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "ivykis"

Tue Sep 12 19:55:48 2017 rev:12 rq:523300 version:0.42.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/ivykis/ivykis.changes    2017-02-28 
23:51:20.334757564 +0100
+++ /work/SRC/openSUSE:Factory/.ivykis.new/ivykis.changes       2017-09-12 
19:56:07.856867579 +0200
@@ -1,0 +2,9 @@
+Fri Sep  8 20:47:59 UTC 2017 - jeng...@inai.de
+
+- Update to new upstream release 0.42.1
+  * Fixes a timer handling bug in the epoll/port poll methods
+    that was showing up with syslog-ng.
+  * Fixes a timer fairness handling bug, and a potential crash
+    when initializing a task handler.
+
+-------------------------------------------------------------------

Old:
----
  ivykis-0.41.tar.gz

New:
----
  ivykis-0.42.1.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ ivykis.spec ++++++
--- /var/tmp/diff_new_pack.AZk4dE/_old  2017-09-12 19:56:08.792735989 +0200
+++ /var/tmp/diff_new_pack.AZk4dE/_new  2017-09-12 19:56:08.796735427 +0200
@@ -18,7 +18,7 @@
 
 Name:           ivykis
 %define lname   libivykis0
-Version:        0.41
+Version:        0.42.1
 Release:        0
 Summary:        An event dispatching library
 License:        LGPL-2.1

++++++ ivykis-0.41.tar.gz -> ivykis-0.42.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ivykis-0.41/config.guess 
new/ivykis-0.42.1/config.guess
--- old/ivykis-0.41/config.guess        2016-12-11 14:41:59.000000000 +0100
+++ new/ivykis-0.42.1/config.guess      2017-08-19 10:05:32.000000000 +0200
@@ -1,8 +1,8 @@
 #! /bin/sh
 # Attempt to guess a canonical system name.
-#   Copyright 1992-2015 Free Software Foundation, Inc.
+#   Copyright 1992-2016 Free Software Foundation, Inc.
 
-timestamp='2015-01-01'
+timestamp='2016-10-02'
 
 # 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
@@ -27,7 +27,7 @@
 # Originally written by Per Bothner; maintained since 2000 by Ben Elliston.
 #
 # 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
+# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess
 #
 # Please send patches to <config-patc...@gnu.org>.
 
@@ -50,7 +50,7 @@
 GNU config.guess ($timestamp)
 
 Originally written by Per Bothner.
-Copyright 1992-2015 Free Software Foundation, Inc.
+Copyright 1992-2016 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."
@@ -168,19 +168,29 @@
        # Note: NetBSD doesn't particularly care about the vendor
        # portion of the name.  We always set it to "unknown".
        sysctl="sysctl -n hw.machine_arch"
-       UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
-           /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
+       UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \
+           /sbin/$sysctl 2>/dev/null || \
+           /usr/sbin/$sysctl 2>/dev/null || \
+           echo unknown)`
        case "${UNAME_MACHINE_ARCH}" in
            armeb) machine=armeb-unknown ;;
            arm*) machine=arm-unknown ;;
            sh3el) machine=shl-unknown ;;
            sh3eb) machine=sh-unknown ;;
            sh5el) machine=sh5le-unknown ;;
+           earmv*)
+               arch=`echo ${UNAME_MACHINE_ARCH} | sed -e 
's,^e\(armv[0-9]\).*$,\1,'`
+               endian=`echo ${UNAME_MACHINE_ARCH} | sed -ne 
's,^.*\(eb\)$,\1,p'`
+               machine=${arch}${endian}-unknown
+               ;;
            *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
        esac
        # The Operating System including object format, if it has switched
-       # to ELF recently, or will in the future.
+       # to ELF recently (or will in the future) and ABI.
        case "${UNAME_MACHINE_ARCH}" in
+           earm*)
+               os=netbsdelf
+               ;;
            arm*|i386|m68k|ns32k|sh3*|sparc|vax)
                eval $set_cc_for_build
                if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
@@ -197,6 +207,13 @@
                os=netbsd
                ;;
        esac
+       # Determine ABI tags.
+       case "${UNAME_MACHINE_ARCH}" in
+           earm*)
+               expr='s/^earmv[0-9]/-eabi/;s/eb$//'
+               abi=`echo ${UNAME_MACHINE_ARCH} | sed -e "$expr"`
+               ;;
+       esac
        # The OS release
        # Debian GNU/NetBSD machines have a different userland, and
        # thus, need a distinct triplet. However, they do not need
@@ -207,13 +224,13 @@
                release='-gnu'
                ;;
            *)
-               release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
+               release=`echo ${UNAME_RELEASE} | sed -e 's/[-_].*//' | cut -d. 
-f1,2`
                ;;
        esac
        # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
        # contains redundant information, the shorter form:
        # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
-       echo "${machine}-${os}${release}"
+       echo "${machine}-${os}${release}${abi}"
        exit ;;
     *:Bitrig:*:*)
        UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
@@ -223,6 +240,10 @@
        UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
        echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
        exit ;;
+    *:LibertyBSD:*:*)
+       UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'`
+       echo ${UNAME_MACHINE_ARCH}-unknown-libertybsd${UNAME_RELEASE}
+       exit ;;
     *:ekkoBSD:*:*)
        echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
        exit ;;
@@ -235,6 +256,9 @@
     *:MirBSD:*:*)
        echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
        exit ;;
+    *:Sortix:*:*)
+       echo ${UNAME_MACHINE}-unknown-sortix
+       exit ;;
     alpha:OSF1:*:*)
        case $UNAME_RELEASE in
        *4.0)
@@ -251,42 +275,42 @@
        ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) 
processor.*$/\1/p' | head -n 1`
        case "$ALPHA_CPU_TYPE" in
            "EV4 (21064)")
-               UNAME_MACHINE="alpha" ;;
+               UNAME_MACHINE=alpha ;;
            "EV4.5 (21064)")
-               UNAME_MACHINE="alpha" ;;
+               UNAME_MACHINE=alpha ;;
            "LCA4 (21066/21068)")
-               UNAME_MACHINE="alpha" ;;
+               UNAME_MACHINE=alpha ;;
            "EV5 (21164)")
-               UNAME_MACHINE="alphaev5" ;;
+               UNAME_MACHINE=alphaev5 ;;
            "EV5.6 (21164A)")
-               UNAME_MACHINE="alphaev56" ;;
+               UNAME_MACHINE=alphaev56 ;;
            "EV5.6 (21164PC)")
-               UNAME_MACHINE="alphapca56" ;;
+               UNAME_MACHINE=alphapca56 ;;
            "EV5.7 (21164PC)")
-               UNAME_MACHINE="alphapca57" ;;
+               UNAME_MACHINE=alphapca57 ;;
            "EV6 (21264)")
-               UNAME_MACHINE="alphaev6" ;;
+               UNAME_MACHINE=alphaev6 ;;
            "EV6.7 (21264A)")
-               UNAME_MACHINE="alphaev67" ;;
+               UNAME_MACHINE=alphaev67 ;;
            "EV6.8CB (21264C)")
-               UNAME_MACHINE="alphaev68" ;;
+               UNAME_MACHINE=alphaev68 ;;
            "EV6.8AL (21264B)")
-               UNAME_MACHINE="alphaev68" ;;
+               UNAME_MACHINE=alphaev68 ;;
            "EV6.8CX (21264D)")
-               UNAME_MACHINE="alphaev68" ;;
+               UNAME_MACHINE=alphaev68 ;;
            "EV6.9A (21264/EV69A)")
-               UNAME_MACHINE="alphaev69" ;;
+               UNAME_MACHINE=alphaev69 ;;
            "EV7 (21364)")
-               UNAME_MACHINE="alphaev7" ;;
+               UNAME_MACHINE=alphaev7 ;;
            "EV7.9 (21364A)")
-               UNAME_MACHINE="alphaev79" ;;
+               UNAME_MACHINE=alphaev79 ;;
        esac
        # A Pn.n version is a patched version.
        # A Vn.n version is a released version.
        # A Tn.n version is a released field test version.
        # A Xn.n version is an unreleased experimental baselevel.
        # 1.2 uses "1.2" for uname -r.
-       echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 
's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
+       echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 
's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`
        # Reset EXIT trap before exiting to avoid spurious non-zero exit code.
        exitcode=$?
        trap '' 0
@@ -359,16 +383,16 @@
        exit ;;
     i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
        eval $set_cc_for_build
-       SUN_ARCH="i386"
+       SUN_ARCH=i386
        # If there is a compiler, see if it is configured for 64-bit objects.
        # Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
        # This test works for both compilers.
-       if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
+       if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
            if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
-               (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
+               (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
                grep IS_64BIT_ARCH >/dev/null
            then
-               SUN_ARCH="x86_64"
+               SUN_ARCH=x86_64
            fi
        fi
        echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
@@ -393,7 +417,7 @@
        exit ;;
     sun*:*:4.2BSD:*)
        UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 
2>/dev/null`
-       test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
+       test "x${UNAME_RELEASE}" = x && UNAME_RELEASE=3
        case "`/bin/arch`" in
            sun3)
                echo m68k-sun-sunos${UNAME_RELEASE}
@@ -618,13 +642,13 @@
                    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
                    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
                    case "${sc_cpu_version}" in
-                     523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
-                     528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
+                     523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0
+                     528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1
                      532)                      # CPU_PA_RISC2_0
                        case "${sc_kernel_bits}" in
-                         32) HP_ARCH="hppa2.0n" ;;
-                         64) HP_ARCH="hppa2.0w" ;;
-                         '') HP_ARCH="hppa2.0" ;;   # HP-UX 10.20
+                         32) HP_ARCH=hppa2.0n ;;
+                         64) HP_ARCH=hppa2.0w ;;
+                         '') HP_ARCH=hppa2.0 ;;   # HP-UX 10.20
                        esac ;;
                    esac
                fi
@@ -663,11 +687,11 @@
                    exit (0);
                }
 EOF
-                   (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && 
HP_ARCH=`$dummy`
+                   (CCOPTS="" $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && 
HP_ARCH=`$dummy`
                    test -z "$HP_ARCH" && HP_ARCH=hppa
                fi ;;
        esac
-       if [ ${HP_ARCH} = "hppa2.0w" ]
+       if [ ${HP_ARCH} = hppa2.0w ]
        then
            eval $set_cc_for_build
 
@@ -680,12 +704,12 @@
            # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
            # => hppa64-hp-hpux11.23
 
-           if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
+           if echo __LP64__ | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) |
                grep -q __LP64__
            then
-               HP_ARCH="hppa2.0w"
+               HP_ARCH=hppa2.0w
            else
-               HP_ARCH="hppa64"
+               HP_ARCH=hppa64
            fi
        fi
        echo ${HP_ARCH}-hp-hpux${HPUX_REV}
@@ -790,14 +814,14 @@
        echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
        exit ;;
     F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
-       FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 
'abcdefghijklmnopqrstuvwxyz'`
-       FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 
'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
+       FUJITSU_PROC=`uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ 
abcdefghijklmnopqrstuvwxyz`
+       FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ 
abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
        FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
        echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
        exit ;;
     5000:UNIX_System_V:4.*:*)
-       FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 
'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
-       FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 
'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
+       FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ 
abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
+       FUJITSU_REL=`echo ${UNAME_RELEASE} | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ 
abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'`
        echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
        exit ;;
     i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
@@ -879,7 +903,7 @@
        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 "[:upper:]" "[:lower:]"``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC}
        exit ;;
     i*86:Minix:*:*)
        echo ${UNAME_MACHINE}-pc-minix
@@ -902,7 +926,7 @@
          EV68*) UNAME_MACHINE=alphaev68 ;;
        esac
        objdump --private-headers /bin/sh | grep -q ld.so.1
-       if test "$?" = 0 ; then LIBC="gnulibc1" ; fi
+       if test "$?" = 0 ; then LIBC=gnulibc1 ; fi
        echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
        exit ;;
     arc:Linux:*:* | arceb:Linux:*:*)
@@ -933,6 +957,9 @@
     crisv32:Linux:*:*)
        echo ${UNAME_MACHINE}-axis-linux-${LIBC}
        exit ;;
+    e2k:Linux:*:*)
+       echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+       exit ;;
     frv:Linux:*:*)
        echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
        exit ;;
@@ -945,6 +972,9 @@
     ia64:Linux:*:*)
        echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
        exit ;;
+    k1om:Linux:*:*)
+       echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+       exit ;;
     m32r*:Linux:*:*)
        echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
        exit ;;
@@ -970,6 +1000,9 @@
        eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
        test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; }
        ;;
+    mips64el:Linux:*:*)
+       echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+       exit ;;
     openrisc*:Linux:*:*)
        echo or1k-unknown-linux-${LIBC}
        exit ;;
@@ -1002,6 +1035,9 @@
     ppcle:Linux:*:*)
        echo powerpcle-unknown-linux-${LIBC}
        exit ;;
+    riscv32:Linux:*:* | riscv64:Linux:*:*)
+       echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+       exit ;;
     s390:Linux:*:* | s390x:Linux:*:*)
        echo ${UNAME_MACHINE}-ibm-linux-${LIBC}
        exit ;;
@@ -1021,7 +1057,7 @@
        echo ${UNAME_MACHINE}-dec-linux-${LIBC}
        exit ;;
     x86_64:Linux:*:*)
-       echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+       echo ${UNAME_MACHINE}-pc-linux-${LIBC}
        exit ;;
     xtensa*:Linux:*:*)
        echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
@@ -1100,7 +1136,7 @@
        # uname -m prints for DJGPP always 'pc', but it prints nothing about
        # the processor, so we play safe by assuming i586.
        # Note: whatever this is, it MUST be the same as what config.sub
-       # prints for the "djgpp" host, or else GDB configury will decide that
+       # prints for the "djgpp" host, or else GDB configure will decide that
        # this is a cross-build.
        echo i586-pc-msdosdjgpp
        exit ;;
@@ -1249,6 +1285,9 @@
     SX-8R:SUPER-UX:*:*)
        echo sx8r-nec-superux${UNAME_RELEASE}
        exit ;;
+    SX-ACE:SUPER-UX:*:*)
+       echo sxace-nec-superux${UNAME_RELEASE}
+       exit ;;
     Power*:Rhapsody:*:*)
        echo powerpc-apple-rhapsody${UNAME_RELEASE}
        exit ;;
@@ -1262,9 +1301,9 @@
            UNAME_PROCESSOR=powerpc
        fi
        if test `echo "$UNAME_RELEASE" | sed -e 's/\..*//'` -le 10 ; then
-           if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
+           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) | \
+                   (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
                    grep IS_64BIT_ARCH >/dev/null
                then
                    case $UNAME_PROCESSOR in
@@ -1286,7 +1325,7 @@
        exit ;;
     *:procnto*:*:* | *:QNX:[0123456789]*:*)
        UNAME_PROCESSOR=`uname -p`
-       if test "$UNAME_PROCESSOR" = "x86"; then
+       if test "$UNAME_PROCESSOR" = x86; then
                UNAME_PROCESSOR=i386
                UNAME_MACHINE=pc
        fi
@@ -1317,7 +1356,7 @@
        # "uname -m" is not consistent, so use $cputype instead. 386
        # is converted to i386 for consistency with other x86
        # operating systems.
-       if test "$cputype" = "386"; then
+       if test "$cputype" = 386; then
            UNAME_MACHINE=i386
        else
            UNAME_MACHINE="$cputype"
@@ -1359,7 +1398,7 @@
        echo i386-pc-xenix
        exit ;;
     i*86:skyos:*:*)
-       echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ 
.*$//'
+       echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE} | sed -e 's/ 
.*$//'`
        exit ;;
     i*86:rdos:*:*)
        echo ${UNAME_MACHINE}-pc-rdos
@@ -1370,23 +1409,25 @@
     x86_64:VMkernel:*:*)
        echo ${UNAME_MACHINE}-unknown-esx
        exit ;;
+    amd64:Isilon\ OneFS:*:*)
+       echo x86_64-unknown-onefs
+       exit ;;
 esac
 
 cat >&2 <<EOF
 $0: unable to guess system type
 
-This script, last modified $timestamp, has failed to recognize
-the operating system you are using. It is advised that you
-download the most up to date version of the config scripts from
+This script (version $timestamp), has failed to recognize the
+operating system you are using. If your script is old, overwrite
+config.guess and config.sub with the latest versions from:
 
-  
http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
+  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess
 and
-  
http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
+  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
 
-If the version you run ($0) is already up to date, please
-send the following data and any information you think might be
-pertinent to <config-patc...@gnu.org> in order to provide the needed
-information to handle your system.
+If $0 has already been updated, send the following data and any
+information you think might be pertinent to config-patc...@gnu.org to
+provide the necessary information to handle your system.
 
 config.guess timestamp = $timestamp
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ivykis-0.41/config.sub new/ivykis-0.42.1/config.sub
--- old/ivykis-0.41/config.sub  2016-12-11 14:41:59.000000000 +0100
+++ new/ivykis-0.42.1/config.sub        2017-08-19 10:05:32.000000000 +0200
@@ -1,8 +1,8 @@
 #! /bin/sh
 # Configuration validation subroutine script.
-#   Copyright 1992-2015 Free Software Foundation, Inc.
+#   Copyright 1992-2016 Free Software Foundation, Inc.
 
-timestamp='2015-01-01'
+timestamp='2016-09-05'
 
 # 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
@@ -33,7 +33,7 @@
 # Otherwise, we print the canonical config type on stdout and succeed.
 
 # You can get the latest version of this script from:
-# 
http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
+# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
 
 # This file is supposed to be the same for all GNU packages
 # and recognize all the CPU types, system types and aliases
@@ -53,8 +53,7 @@
 me=`echo "$0" | sed -e 's,.*/,,'`
 
 usage="\
-Usage: $0 [OPTION] CPU-MFR-OPSYS
-       $0 [OPTION] ALIAS
+Usage: $0 [OPTION] CPU-MFR-OPSYS or ALIAS
 
 Canonicalize a configuration name.
 
@@ -68,7 +67,7 @@
 version="\
 GNU config.sub ($timestamp)
 
-Copyright 1992-2015 Free Software Foundation, Inc.
+Copyright 1992-2016 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."
@@ -117,8 +116,8 @@
 case $maybe_os in
   nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
   linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | 
kfreebsd*-gnu* | \
-  knetbsd*-gnu* | netbsd*-gnu* | \
-  kopensolaris*-gnu* | \
+  knetbsd*-gnu* | netbsd*-gnu* | netbsd*-eabi* | \
+  kopensolaris*-gnu* | cloudabi*-eabi* | \
   storm-chaos* | os2-emx* | rtmk-nova*)
     os=-$maybe_os
     basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
@@ -255,11 +254,12 @@
        | arc | arceb \
        | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
        | avr | avr32 \
+       | ba \
        | be32 | be64 \
        | bfin \
        | c4x | c8051 | clipper \
        | d10v | d30v | dlx | dsp16xx \
-       | epiphany \
+       | e2k | epiphany \
        | fido | fr30 | frv | ft32 \
        | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
        | hexagon \
@@ -305,7 +305,7 @@
        | riscv32 | riscv64 \
        | rl78 | rx \
        | score \
-       | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | 
shbe | shle | sh[1234]le | sh3ele \
+       | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[234]eb | sheb | 
shbe | shle | sh[1234]le | sh3ele \
        | sh64 | sh64le \
        | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | 
sparclite \
        | sparcv8 | sparcv9 | sparcv9b | sparcv9v \
@@ -376,12 +376,13 @@
        | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \
        | arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
        | avr-* | avr32-* \
+       | ba-* \
        | be32-* | be64-* \
        | bfin-* | bs2000-* \
        | c[123]* | c30-* | [cjt]90-* | c4x-* \
        | c8051-* | clipper-* | craynv-* | cydra-* \
        | d10v-* | d30v-* | dlx-* \
-       | elxsi-* \
+       | e2k-* | elxsi-* \
        | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
        | h8300-* | h8500-* \
        | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
@@ -428,12 +429,13 @@
        | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
        | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
        | pyramid-* \
+       | riscv32-* | riscv64-* \
        | rl78-* | romp-* | rs6000-* | rx-* \
        | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* 
| sheb-* | shbe-* \
        | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
        | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | 
sparclet-* \
        | sparclite-* \
-       | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \
+       | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx*-* \
        | tahoe-* \
        | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
        | tile*-* \
@@ -518,6 +520,9 @@
                basic_machine=i386-pc
                os=-aros
                ;;
+       asmjs)
+               basic_machine=asmjs-unknown
+               ;;
        aux)
                basic_machine=m68k-apple
                os=-aux
@@ -638,6 +643,14 @@
                basic_machine=m68k-bull
                os=-sysv3
                ;;
+       e500v[12])
+               basic_machine=powerpc-unknown
+               os=$os"spe"
+               ;;
+       e500v[12]-*)
+               basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
+               os=$os"spe"
+               ;;
        ebmon29k)
                basic_machine=a29k-amd
                os=-ebmon
@@ -1017,7 +1030,7 @@
        ppc-* | ppcbe-*)
                basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
                ;;
-       ppcle | powerpclittle | ppc-le | powerpc-little)
+       ppcle | powerpclittle)
                basic_machine=powerpcle-unknown
                ;;
        ppcle-* | powerpclittle-*)
@@ -1027,7 +1040,7 @@
                ;;
        ppc64-* | ppc64p7-*) basic_machine=powerpc64-`echo $basic_machine | sed 
's/^[^-]*-//'`
                ;;
-       ppc64le | powerpc64little | ppc64-le | powerpc64-little)
+       ppc64le | powerpc64little)
                basic_machine=powerpc64le-unknown
                ;;
        ppc64le-* | powerpc64little-*)
@@ -1373,18 +1386,18 @@
              | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | 
-solaris* \
              | -sym* | -kopensolaris* | -plan9* \
              | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
-             | -aos* | -aros* \
+             | -aos* | -aros* | -cloudabi* | -sortix* \
              | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
              | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
              | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
-             | -bitrig* | -openbsd* | -solidbsd* \
+             | -bitrig* | -openbsd* | -solidbsd* | -libertybsd* \
              | -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* \
+             | -midipix* | -mingw32* | -mingw64* | -linux-gnu* | 
-linux-android* \
              | -linux-newlib* | -linux-musl* | -linux-uclibc* \
              | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \
              | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
@@ -1393,7 +1406,8 @@
              | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
              | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
              | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
-             | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* | 
-tirtos*)
+             | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* \
+             | -onefs* | -tirtos* | -phoenix*)
        # Remember, each alternative MUST END IN *, to match a version number.
                ;;
        -qnx*)
@@ -1525,6 +1539,8 @@
                ;;
        -nacl*)
                ;;
+       -ios)
+               ;;
        -none)
                ;;
        *)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ivykis-0.41/configure new/ivykis-0.42.1/configure
--- old/ivykis-0.41/configure   2016-12-11 14:41:59.000000000 +0100
+++ new/ivykis-0.42.1/configure 2017-08-19 10:05:32.000000000 +0200
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for ivykis 0.41.
+# Generated by GNU Autoconf 2.69 for ivykis 0.42.1.
 #
 # Report bugs to <libivykis-disc...@lists.sourceforge.net>.
 #
@@ -590,8 +590,8 @@
 # Identity of this package.
 PACKAGE_NAME='ivykis'
 PACKAGE_TARNAME='ivykis'
-PACKAGE_VERSION='0.41'
-PACKAGE_STRING='ivykis 0.41'
+PACKAGE_VERSION='0.42.1'
+PACKAGE_STRING='ivykis 0.42.1'
 PACKAGE_BUGREPORT='libivykis-disc...@lists.sourceforge.net'
 PACKAGE_URL=''
 
@@ -1337,7 +1337,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 ivykis 0.41 to adapt to many kinds of systems.
+\`configure' configures ivykis 0.42.1 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1407,7 +1407,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of ivykis 0.41:";;
+     short | recursive ) echo "Configuration of ivykis 0.42.1:";;
    esac
   cat <<\_ACEOF
 
@@ -1517,7 +1517,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-ivykis configure 0.41
+ivykis configure 0.42.1
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1997,7 +1997,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by ivykis $as_me 0.41, which was
+It was created by ivykis $as_me 0.42.1, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -2867,7 +2867,7 @@
 
 # Define the identity of the package.
  PACKAGE='ivykis'
- VERSION='0.41'
+ VERSION='0.42.1'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -14636,7 +14636,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by ivykis $as_me 0.41, which was
+This file was extended by ivykis $as_me 0.42.1, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -14702,7 +14702,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; 
s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-ivykis config.status 0.41
+ivykis config.status 0.42.1
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ivykis-0.41/configure.ac 
new/ivykis-0.42.1/configure.ac
--- old/ivykis-0.41/configure.ac        2016-12-11 14:41:59.000000000 +0100
+++ new/ivykis-0.42.1/configure.ac      2017-08-19 10:05:32.000000000 +0200
@@ -1,5 +1,5 @@
 AC_PREREQ(2.59)
-AC_INIT([ivykis], [0.41], [libivykis-disc...@lists.sourceforge.net])
+AC_INIT([ivykis], [0.42.1], [libivykis-disc...@lists.sourceforge.net])
 AC_CONFIG_SRCDIR([src/iv_avl.c])
 AC_CONFIG_SUBDIRS([test.mt])
 AC_CONFIG_HEADER(config.h)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ivykis-0.41/src/Makefile.am 
new/ivykis-0.42.1/src/Makefile.am
--- old/ivykis-0.41/src/Makefile.am     2016-12-11 14:41:59.000000000 +0100
+++ new/ivykis-0.42.1/src/Makefile.am   2017-08-19 10:05:32.000000000 +0200
@@ -60,7 +60,7 @@
 INC                    += include/iv_inotify.h
 endif
 
-LINKFLAGS      = -version-info 5:1:5
+LINKFLAGS      = -version-info 5:3:5
 if HAVE_VERSIONING
 LINKFLAGS      += -Wl,--version-script,$(top_srcdir)/libivykis.posix.ver
 endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ivykis-0.41/src/Makefile.in 
new/ivykis-0.42.1/src/Makefile.in
--- old/ivykis-0.41/src/Makefile.in     2016-12-11 14:41:59.000000000 +0100
+++ new/ivykis-0.42.1/src/Makefile.in   2017-08-19 10:05:32.000000000 +0200
@@ -395,7 +395,7 @@
 INC = include/iv_avl.h include/iv_event.h include/iv_event_raw.h \
        include/iv_list.h include/iv_thread.h include/iv_tls.h \
        include/iv_work.h $(am__append_2) $(am__append_8)
-@HAVE_POSIX_TRUE@LINKFLAGS = -version-info 5:1:5 $(am__append_9)
+@HAVE_POSIX_TRUE@LINKFLAGS = -version-info 5:3:5 $(am__append_9)
 @HAVE_WIN32_TRUE@LINKFLAGS = -version-info 0:0:0                               
                \
 @HAVE_WIN32_TRUE@          
-Wl,--version-script,$(top_srcdir)/libivykis.win32.ver      \
 @HAVE_WIN32_TRUE@          -no-undefined
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ivykis-0.41/src/iv_fd_epoll.c 
new/ivykis-0.42.1/src/iv_fd_epoll.c
--- old/ivykis-0.41/src/iv_fd_epoll.c   2016-12-11 14:41:59.000000000 +0100
+++ new/ivykis-0.42.1/src/iv_fd_epoll.c 2017-08-19 10:05:32.000000000 +0200
@@ -388,6 +388,8 @@
        val.it_interval.tv_sec = 0;
        val.it_interval.tv_nsec = 0;
        val.it_value = *abs;
+       if (val.it_value.tv_sec == 0 && val.it_value.tv_nsec == 0)
+               val.it_value.tv_nsec = 1;
 
        ret = timerfd_settime(st->u.epoll.timer_fd,
                              TFD_TIMER_ABSTIME, &val, NULL);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ivykis-0.41/src/iv_fd_port.c 
new/ivykis-0.42.1/src/iv_fd_port.c
--- old/ivykis-0.41/src/iv_fd_port.c    2016-12-11 14:41:59.000000000 +0100
+++ new/ivykis-0.42.1/src/iv_fd_port.c  2017-08-19 10:05:32.000000000 +0200
@@ -296,6 +296,8 @@
        val.it_interval.tv_sec = 0;
        val.it_interval.tv_nsec = 0;
        val.it_value = *abs;
+       if (val.it_value.tv_sec == 0 && val.it_value.tv_nsec == 0)
+               val.it_value.tv_nsec = 1;
 
        ret = timer_settime(st->u.port.timer_id, TIMER_ABSTIME, &val, NULL);
        if (ret < 0) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ivykis-0.41/src/iv_task.c 
new/ivykis-0.42.1/src/iv_task.c
--- old/ivykis-0.41/src/iv_task.c       2016-12-11 14:41:59.000000000 +0100
+++ new/ivykis-0.42.1/src/iv_task.c     2017-08-19 10:05:32.000000000 +0200
@@ -56,7 +56,7 @@
        struct iv_task_ *t = (struct iv_task_ *)_t;
 
        INIT_IV_LIST_HEAD(&t->list);
-       t->epoch = st->task_epoch;
+       t->epoch = (st != NULL) ? st->task_epoch : 0;
 }
 
 void iv_task_register(struct iv_task *_t)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ivykis-0.41/src/iv_timer.c 
new/ivykis-0.42.1/src/iv_timer.c
--- old/ivykis-0.41/src/iv_timer.c      2016-12-11 14:41:59.000000000 +0100
+++ new/ivykis-0.42.1/src/iv_timer.c    2017-08-19 10:05:32.000000000 +0200
@@ -341,13 +341,13 @@
                        pull_up(st, (*p)->index, p);
                        push_down(st, (*p)->index, p);
                }
+
+               st->numobjs--;
        } else {
                iv_list_del(&t->list_expired);
        }
 
        t->index = -1;
-
-       st->numobjs--;
 }
 
 int iv_timer_registered(const struct iv_timer *_t)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ivykis-0.41/test/Makefile.am 
new/ivykis-0.42.1/test/Makefile.am
--- old/ivykis-0.41/test/Makefile.am    2016-12-11 14:41:59.000000000 +0100
+++ new/ivykis-0.42.1/test/Makefile.am  2017-08-19 10:05:32.000000000 +0200
@@ -11,8 +11,10 @@
                          struct_sizes                  \
                          timer                         \
                          timer_fairness                \
+                         timer_fairness_bug            \
                          timer_order                   \
-                         timer_past
+                         timer_past                    \
+                         timer_zero
 
 if HAVE_POSIX
 PROGS                  += client                       \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ivykis-0.41/test/Makefile.in 
new/ivykis-0.42.1/test/Makefile.in
--- old/ivykis-0.41/test/Makefile.in    2016-12-11 14:41:59.000000000 +0100
+++ new/ivykis-0.42.1/test/Makefile.in  2017-08-19 10:05:32.000000000 +0200
@@ -89,8 +89,9 @@
 build_triplet = @build@
 host_triplet = @host@
 TESTS = avl$(EXEEXT) iv_event_raw_test$(EXEEXT) struct_sizes$(EXEEXT) \
-       timer$(EXEEXT) timer_fairness$(EXEEXT) timer_order$(EXEEXT) \
-       timer_past$(EXEEXT) $(am__EXEEXT_4)
+       timer$(EXEEXT) timer_fairness$(EXEEXT) \
+       timer_fairness_bug$(EXEEXT) timer_order$(EXEEXT) \
+       timer_past$(EXEEXT) timer_zero$(EXEEXT) $(am__EXEEXT_4)
 @HAVE_POSIX_TRUE@am__append_1 = client                 \
 @HAVE_POSIX_TRUE@                         connectfail                  \
 @HAVE_POSIX_TRUE@                         connectreset                 \
@@ -132,7 +133,8 @@
 @HAVE_POSIX_TRUE@am__EXEEXT_4 = iv_signal_test$(EXEEXT)
 am__EXEEXT_5 = avl$(EXEEXT) iv_event_raw_test$(EXEEXT) \
        struct_sizes$(EXEEXT) timer$(EXEEXT) timer_fairness$(EXEEXT) \
-       timer_order$(EXEEXT) timer_past$(EXEEXT) $(am__EXEEXT_4)
+       timer_fairness_bug$(EXEEXT) timer_order$(EXEEXT) \
+       timer_past$(EXEEXT) timer_zero$(EXEEXT) $(am__EXEEXT_4)
 PROGRAMS = $(noinst_PROGRAMS)
 am_avl_OBJECTS = avl.$(OBJEXT)
 avl_OBJECTS = $(am_avl_OBJECTS)
@@ -221,6 +223,10 @@
 timer_fairness_OBJECTS = $(am_timer_fairness_OBJECTS)
 timer_fairness_LDADD = $(LDADD)
 timer_fairness_DEPENDENCIES = $(top_builddir)/src/libivykis.la
+timer_fairness_bug_SOURCES = timer_fairness_bug.c
+timer_fairness_bug_OBJECTS = timer_fairness_bug.$(OBJEXT)
+timer_fairness_bug_LDADD = $(LDADD)
+timer_fairness_bug_DEPENDENCIES = $(top_builddir)/src/libivykis.la
 am_timer_order_OBJECTS = timer_order.$(OBJEXT)
 timer_order_OBJECTS = $(am_timer_order_OBJECTS)
 timer_order_LDADD = $(LDADD)
@@ -229,6 +235,10 @@
 timer_past_OBJECTS = $(am_timer_past_OBJECTS)
 timer_past_LDADD = $(LDADD)
 timer_past_DEPENDENCIES = $(top_builddir)/src/libivykis.la
+timer_zero_SOURCES = timer_zero.c
+timer_zero_OBJECTS = timer_zero.$(OBJEXT)
+timer_zero_LDADD = $(LDADD)
+timer_zero_DEPENDENCIES = $(top_builddir)/src/libivykis.la
 AM_V_P = $(am__v_P_@AM_V@)
 am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
 am__v_P_0 = false
@@ -272,8 +282,8 @@
        $(iv_signal_bench_timer_SOURCES) \
        $(iv_signal_child_test_SOURCES) $(iv_signal_test_SOURCES) \
        $(null_SOURCES) $(struct_sizes_SOURCES) $(timer_SOURCES) \
-       $(timer_fairness_SOURCES) $(timer_order_SOURCES) \
-       $(timer_past_SOURCES)
+       $(timer_fairness_SOURCES) timer_fairness_bug.c \
+       $(timer_order_SOURCES) $(timer_past_SOURCES) timer_zero.c
 DIST_SOURCES = $(avl_SOURCES) $(client_SOURCES) $(connectfail_SOURCES) \
        $(connectreset_SOURCES) $(iv_event_raw_bench_signal_SOURCES) \
        $(iv_event_raw_bench_timer_SOURCES) \
@@ -283,8 +293,8 @@
        $(iv_signal_bench_timer_SOURCES) \
        $(iv_signal_child_test_SOURCES) $(iv_signal_test_SOURCES) \
        $(null_SOURCES) $(struct_sizes_SOURCES) $(timer_SOURCES) \
-       $(timer_fairness_SOURCES) $(timer_order_SOURCES) \
-       $(timer_past_SOURCES)
+       $(timer_fairness_SOURCES) timer_fairness_bug.c \
+       $(timer_order_SOURCES) $(timer_past_SOURCES) timer_zero.c
 am__can_run_installinfo = \
   case $$AM_UPDATE_INFO_DIR in \
     n|no|NO) false;; \
@@ -781,6 +791,10 @@
        @rm -f timer_fairness$(EXEEXT)
        $(AM_V_CCLD)$(LINK) $(timer_fairness_OBJECTS) $(timer_fairness_LDADD) 
$(LIBS)
 
+timer_fairness_bug$(EXEEXT): $(timer_fairness_bug_OBJECTS) 
$(timer_fairness_bug_DEPENDENCIES) $(EXTRA_timer_fairness_bug_DEPENDENCIES) 
+       @rm -f timer_fairness_bug$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(timer_fairness_bug_OBJECTS) 
$(timer_fairness_bug_LDADD) $(LIBS)
+
 timer_order$(EXEEXT): $(timer_order_OBJECTS) $(timer_order_DEPENDENCIES) 
$(EXTRA_timer_order_DEPENDENCIES) 
        @rm -f timer_order$(EXEEXT)
        $(AM_V_CCLD)$(LINK) $(timer_order_OBJECTS) $(timer_order_LDADD) $(LIBS)
@@ -789,6 +803,10 @@
        @rm -f timer_past$(EXEEXT)
        $(AM_V_CCLD)$(LINK) $(timer_past_OBJECTS) $(timer_past_LDADD) $(LIBS)
 
+timer_zero$(EXEEXT): $(timer_zero_OBJECTS) $(timer_zero_DEPENDENCIES) 
$(EXTRA_timer_zero_DEPENDENCIES) 
+       @rm -f timer_zero$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(timer_zero_OBJECTS) $(timer_zero_LDADD) $(LIBS)
+
 mostlyclean-compile:
        -rm -f *.$(OBJEXT)
 
@@ -814,8 +832,10 @@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/struct_sizes.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/timer.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/timer_fairness.Po@am__quote@
+@AMDEP_TRUE@@am__include@ 
@am__quote@./$(DEPDIR)/timer_fairness_bug.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/timer_order.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/timer_past.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/timer_zero.Po@am__quote@
 
 .c.o:
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF 
$(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -1100,6 +1120,13 @@
        --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)
+timer_fairness_bug.log: timer_fairness_bug$(EXEEXT)
+       @p='timer_fairness_bug$(EXEEXT)'; \
+       b='timer_fairness_bug'; \
+       $(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)
 timer_order.log: timer_order$(EXEEXT)
        @p='timer_order$(EXEEXT)'; \
        b='timer_order'; \
@@ -1113,6 +1140,13 @@
        $(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)
+timer_zero.log: timer_zero$(EXEEXT)
+       @p='timer_zero$(EXEEXT)'; \
+       b='timer_zero'; \
+       $(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)
 iv_signal_test.log: iv_signal_test$(EXEEXT)
        @p='iv_signal_test$(EXEEXT)'; \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ivykis-0.41/test/timer_fairness_bug.c 
new/ivykis-0.42.1/test/timer_fairness_bug.c
--- old/ivykis-0.41/test/timer_fairness_bug.c   1970-01-01 01:00:00.000000000 
+0100
+++ new/ivykis-0.42.1/test/timer_fairness_bug.c 2017-08-19 10:05:32.000000000 
+0200
@@ -0,0 +1,63 @@
+/*
+ * ivykis, an event handling library
+ * Copyright (C) 2017 Lennert Buytenhek
+ * Dedicated to Marija Kulikova.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version
+ * 2.1 as published by the Free Software Foundation.
+ *
+ * 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 Lesser General Public License version 2.1 for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License version 2.1 along with this program; if not, write to the
+ * Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ */
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <iv.h>
+
+static struct iv_timer timer1;
+static struct iv_timer timer2;
+
+static void handler1(void *_t)
+{
+       if (iv_timer_registered(&timer2))
+               iv_timer_unregister(&timer2);
+}
+
+static void handler2(void *_t)
+{
+       if (iv_timer_registered(&timer1))
+               iv_timer_unregister(&timer1);
+}
+
+int main()
+{
+       alarm(5);
+
+       iv_init();
+
+       iv_validate_now();
+
+       IV_TIMER_INIT(&timer1);
+       timer1.expires = iv_now;
+       timer1.handler = handler1;
+       iv_timer_register(&timer1);
+
+       IV_TIMER_INIT(&timer2);
+       timer2.expires = iv_now;
+       timer2.handler = handler2;
+       iv_timer_register(&timer2);
+
+       iv_main();
+
+       iv_deinit();
+
+       return 0;
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ivykis-0.41/test/timer_zero.c 
new/ivykis-0.42.1/test/timer_zero.c
--- old/ivykis-0.41/test/timer_zero.c   1970-01-01 01:00:00.000000000 +0100
+++ new/ivykis-0.42.1/test/timer_zero.c 2017-08-19 10:05:32.000000000 +0200
@@ -0,0 +1,53 @@
+/*
+ * ivykis, an event handling library
+ * Copyright (C) 2017 Lennert Buytenhek
+ * Dedicated to Marija Kulikova.
+ *
+ * This library is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version
+ * 2.1 as published by the Free Software Foundation.
+ *
+ * This library 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 version 2.1 for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License version 2.1 along with this library; if not, write to the
+ * Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ */
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <iv.h>
+#include <signal.h>
+
+static int count;
+static struct iv_timer tim;
+
+static void got_timer_timeout(void *_dummy)
+{
+       count++;
+       if (count < 100)
+               iv_timer_register(&tim);
+}
+
+int main()
+{
+       alarm(5);
+
+       iv_init();
+
+       IV_TIMER_INIT(&tim);
+       tim.expires.tv_sec = 0;
+       tim.expires.tv_nsec = 0;
+       tim.handler = got_timer_timeout;
+       iv_timer_register(&tim);
+
+       iv_main();
+
+       iv_deinit();
+
+       return 0;
+}


Reply via email to