Stable version fails to compile with glibc-2.8, versions >2.4.0 have patch. Nyhm, arches added because current stable doesn't build: Making all in keytouch-acpid make[1]: Entering directory `/var/tmp/portage/x11-misc/keytouch-2.3.2/work/keytouch-2.3.2/keytouch-acpid' x86_64-pc-linux-gnu-gcc -DPACKAGE_NAME=\"keytouch\" -DPACKAGE_TARNAME=\"keytouch\" -DPACKAGE_VERSION=\"2.3.0beta\" -DPACKAGE_STRING=\"keytouch\ 2.3.0beta\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"keytouch\" -DVERSION=\"2.3.0beta\" -DHAVE_DIRENT_H=1 -DSTDC_HEADERS=1 -DHAVE_SYS_WAIT_H=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_FCNTL_H=1 -DHAVE_LIBINTL_H=1 -DHAVE_LIMITS_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_STRINGS_H=1 -DHAVE_SYS_IOCTL_H=1 -DHAVE_SYS_SOCKET_H=1 -DHAVE_UNISTD_H=1 -DHAVE_LIBASOUND=1 -DHAVE_FORK=1 -DHAVE_VFORK=1 -DHAVE_WORKING_VFORK=1 -DHAVE_WORKING_FORK=1 -DHAVE_STDLIB_H=1 -DHAVE_MALLOC=1 -DHAVE_STDLIB_H=1 -DHAVE_REALLOC=1 -DRETSIGTYPE=void -DLSTAT_FOLLOWS_SLASHED_SYMLINK=1 -DHAVE_MEMSET=1 -DHAVE_MKDIR=1 -DHAVE_SOCKET=1 -DHAVE_STRCASECMP=1 -DHAVE_STRCHR=1 -DHAVE_STRDUP=1 -DHAVE_STRERROR=1 -DHAVE_STRSTR=1 -DHAVE_STRTOL=1 -DHAVE_LIBX11=1 -DHAVE_LIBXTST=1 -I. -I. -I. -I../string_to_keycode/ -I../mxml -DSYSCONF_DIR=\""/etc"\" -DPACKAGE_DATA_DIR=\""/usr/share"\" -march=athlon64 -O2 -pipe -Wall -march=athlon64 -O2 -pipe -c config.c x86_64-pc-linux-gnu-gcc -DPACKAGE_NAME=\"keytouch\" -DPACKAGE_TARNAME=\"keytouch\" -DPACKAGE_VERSION=\"2.3.0beta\" -DPACKAGE_STRING=\"keytouch\ 2.3.0beta\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"keytouch\" -DVERSION=\"2.3.0beta\" -DHAVE_DIRENT_H=1 -DSTDC_HEADERS=1 -DHAVE_SYS_WAIT_H=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_FCNTL_H=1 -DHAVE_LIBINTL_H=1 -DHAVE_LIMITS_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_STRINGS_H=1 -DHAVE_SYS_IOCTL_H=1 -DHAVE_SYS_SOCKET_H=1 -DHAVE_UNISTD_H=1 -DHAVE_LIBASOUND=1 -DHAVE_FORK=1 -DHAVE_VFORK=1 -DHAVE_WORKING_VFORK=1 -DHAVE_WORKING_FORK=1 -DHAVE_STDLIB_H=1 -DHAVE_MALLOC=1 -DHAVE_STDLIB_H=1 -DHAVE_REALLOC=1 -DRETSIGTYPE=void -DLSTAT_FOLLOWS_SLASHED_SYMLINK=1 -DHAVE_MEMSET=1 -DHAVE_MKDIR=1 -DHAVE_SOCKET=1 -DHAVE_STRCASECMP=1 -DHAVE_STRCHR=1 -DHAVE_STRDUP=1 -DHAVE_STRERROR=1 -DHAVE_STRSTR=1 -DHAVE_STRTOL=1 -DHAVE_LIBX11=1 -DHAVE_LIBXTST=1 -I. -I. -I. -I../string_to_keycode/ -I../mxml -DSYSCONF_DIR=\""/etc"\" -DPACKAGE_DATA_DIR=\""/usr/share"\" -march=athlon64 -O2 -pipe -Wall -march=athlon64 -O2 -pipe -c main.c x86_64-pc-linux-gnu-gcc -DPACKAGE_NAME=\"keytouch\" -DPACKAGE_TARNAME=\"keytouch\" -DPACKAGE_VERSION=\"2.3.0beta\" -DPACKAGE_STRING=\"keytouch\ 2.3.0beta\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"keytouch\" -DVERSION=\"2.3.0beta\" -DHAVE_DIRENT_H=1 -DSTDC_HEADERS=1 -DHAVE_SYS_WAIT_H=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_FCNTL_H=1 -DHAVE_LIBINTL_H=1 -DHAVE_LIMITS_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_STRINGS_H=1 -DHAVE_SYS_IOCTL_H=1 -DHAVE_SYS_SOCKET_H=1 -DHAVE_UNISTD_H=1 -DHAVE_LIBASOUND=1 -DHAVE_FORK=1 -DHAVE_VFORK=1 -DHAVE_WORKING_VFORK=1 -DHAVE_WORKING_FORK=1 -DHAVE_STDLIB_H=1 -DHAVE_MALLOC=1 -DHAVE_STDLIB_H=1 -DHAVE_REALLOC=1 -DRETSIGTYPE=void -DLSTAT_FOLLOWS_SLASHED_SYMLINK=1 -DHAVE_MEMSET=1 -DHAVE_MKDIR=1 -DHAVE_SOCKET=1 -DHAVE_STRCASECMP=1 -DHAVE_STRCHR=1 -DHAVE_STRDUP=1 -DHAVE_STRERROR=1 -DHAVE_STRSTR=1 -DHAVE_STRTOL=1 -DHAVE_LIBX11=1 -DHAVE_LIBXTST=1 -I. -I. -I. -I../string_to_keycode/ -I../mxml -DSYSCONF_DIR=\""/etc"\" -DPACKAGE_DATA_DIR=\""/usr/share"\" -march=athlon64 -O2 -pipe -Wall -march=athlon64 -O2 -pipe -c error.c x86_64-pc-linux-gnu-gcc -DPACKAGE_NAME=\"keytouch\" -DPACKAGE_TARNAME=\"keytouch\" -DPACKAGE_VERSION=\"2.3.0beta\" -DPACKAGE_STRING=\"keytouch\ 2.3.0beta\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"keytouch\" -DVERSION=\"2.3.0beta\" -DHAVE_DIRENT_H=1 -DSTDC_HEADERS=1 -DHAVE_SYS_WAIT_H=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_FCNTL_H=1 -DHAVE_LIBINTL_H=1 -DHAVE_LIMITS_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_STRINGS_H=1 -DHAVE_SYS_IOCTL_H=1 -DHAVE_SYS_SOCKET_H=1 -DHAVE_UNISTD_H=1 -DHAVE_LIBASOUND=1 -DHAVE_FORK=1 -DHAVE_VFORK=1 -DHAVE_WORKING_VFORK=1 -DHAVE_WORKING_FORK=1 -DHAVE_STDLIB_H=1 -DHAVE_MALLOC=1 -DHAVE_STDLIB_H=1 -DHAVE_REALLOC=1 -DRETSIGTYPE=void -DLSTAT_FOLLOWS_SLASHED_SYMLINK=1 -DHAVE_MEMSET=1 -DHAVE_MKDIR=1 -DHAVE_SOCKET=1 -DHAVE_STRCASECMP=1 -DHAVE_STRCHR=1 -DHAVE_STRDUP=1 -DHAVE_STRERROR=1 -DHAVE_STRSTR=1 -DHAVE_STRTOL=1 -DHAVE_LIBX11=1 -DHAVE_LIBXTST=1 -I. -I. -I. -I../string_to_keycode/ -I../mxml -DSYSCONF_DIR=\""/etc"\" -DPACKAGE_DATA_DIR=\""/usr/share"\" -march=athlon64 -O2 -pipe -Wall -march=athlon64 -O2 -pipe -c memory.c In file included from main.c:53: ud_socket.h:12: warning: 'struct ucred' declared inside parameter list ud_socket.h:12: warning: its scope is only this definition or declaration, which is probably not what you want x86_64-pc-linux-gnu-gcc -DPACKAGE_NAME=\"keytouch\" -DPACKAGE_TARNAME=\"keytouch\" -DPACKAGE_VERSION=\"2.3.0beta\" -DPACKAGE_STRING=\"keytouch\ 2.3.0beta\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"keytouch\" -DVERSION=\"2.3.0beta\" -DHAVE_DIRENT_H=1 -DSTDC_HEADERS=1 -DHAVE_SYS_WAIT_H=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_FCNTL_H=1 -DHAVE_LIBINTL_H=1 -DHAVE_LIMITS_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_STRINGS_H=1 -DHAVE_SYS_IOCTL_H=1 -DHAVE_SYS_SOCKET_H=1 -DHAVE_UNISTD_H=1 -DHAVE_LIBASOUND=1 -DHAVE_FORK=1 -DHAVE_VFORK=1 -DHAVE_WORKING_VFORK=1 -DHAVE_WORKING_FORK=1 -DHAVE_STDLIB_H=1 -DHAVE_MALLOC=1 -DHAVE_STDLIB_H=1 -DHAVE_REALLOC=1 -DRETSIGTYPE=void -DLSTAT_FOLLOWS_SLASHED_SYMLINK=1 -DHAVE_MEMSET=1 -DHAVE_MKDIR=1 -DHAVE_SOCKET=1 -DHAVE_STRCASECMP=1 -DHAVE_STRCHR=1 -DHAVE_STRDUP=1 -DHAVE_STRERROR=1 -DHAVE_STRSTR=1 -DHAVE_STRTOL=1 -DHAVE_LIBX11=1 -DHAVE_LIBXTST=1 -I. -I. -I. -I../string_to_keycode/ -I../mxml -DSYSCONF_DIR=\""/etc"\" -DPACKAGE_DATA_DIR=\""/usr/share"\" -march=athlon64 -O2 -pipe -Wall -march=athlon64 -O2 -pipe -c ud_socket.c In file included from ud_socket.c:18: ud_socket.h:12: warning: 'struct ucred' declared inside parameter list ud_socket.h:12: warning: its scope is only this definition or declaration, which is probably not what you want ud_socket.c:56: warning: 'struct ucred' declared inside parameter list ud_socket.c:57: error: conflicting types for 'ud_accept' ud_socket.h:12: error: previous declaration of 'ud_accept' was here ud_socket.c: In function 'ud_accept': ud_socket.c:73: error: invalid application of 'sizeof' to incomplete type 'struct ucred' make[1]: *** [ud_socket.o] Error 1 make[1]: *** Waiting for unfinished jobs.... make[1]: Leaving directory `/var/tmp/portage/x11-misc/keytouch-2.3.2/work/keytouch-2.3.2/keytouch-acpid' make: *** [all-recursive] Error 1
amd64/x86 stable, all arches done.