diff -Nru lirc-0.10.1/ChangeLog lirc-0.10.2/ChangeLog --- lirc-0.10.1/ChangeLog 2017-09-10 08:52:57.000000000 +0000 +++ lirc-0.10.2/ChangeLog 2022-10-04 08:05:00.000000000 +0000 @@ -1,2599 +1,643 @@ -2017-09-10 Alec Leamas - - Update for 0.10.1 - -2017-09-03 Alec Leamas - - mode2: Fix inconsistent loglevel/debug option (#307). - -2017-08-31 Alec Leamas - - build: Fix make "always build all" error. - -2017-08-23 Ayke van Laethem - - plugins: devinput: fix glob "no match" error - See 63e041cc5 and LIRC issue #285 (Debian: #860551) - -2017-08-14 Alec Leamas - - build: install media/lirc.h (BTS #872074). - The plugin builds references this file. Basically, this should be - resolved by lirc_driver.h, testing if the kernel header is - available and using it if so, but without including config.h - - This fix adds an evil symlink to not remove anything. The proper - fix includes actually moving the file and also streamlining the - HAVE_KERNEL_LIRC_H to the generic HAVE_LINUX_LIRC_H. - -2017-08-12 Alec Leamas - - Update for lirc-0.10.0 - - lib: Comments update. - - plugins: Update driver_version. - - build: Mute libtool when V=0. - - build: Fix typo. - -2017-08-12 Baruch Siach - - lib/curl_poll.h: fix header guard collision with musl libc - The musl libc uses the _POLL_H macro as a double include guard for the poll.h - header. This breaks compilation of files the include curl_poll.h: - - In file included from driver.h:32:0, - from driver.c:12: - lirc/curl_poll.h:38:29: error: array type has incomplete element type ‘struct pollfd’ - int curl_poll(struct pollfd ufds[], unsigned int nfds, int timeout_ms); - ^~~~ - - Rename the curl_poll.h header guard macro to avoid collision. Don't use a name - that starts with an underscore and a capital letter since these names are - reserved according to the ANSI C standard. - - https://www.gnu.org/software/libc/manual/html_node/Reserved-Names.html - -2017-06-22 Alec Leamas - - Merge branch 'release-0.10' into release - -2017-06-21 Alec Leamas - - build: Missing dep, repeated builds and clean fixes. - - python-pkg: Don't distribute test if python < 3.5. - - Update for 0.10.0-rc3 - - build: Update ABI version info for 0.10.0. - - doc: Updates. - - lircmd: Don't write on non-existing socket (#295). - -2017-06-20 Alec Leamas - - tests: Overall portability fixes. - - Use correct lircrcd binary from development tree. - - Use explicit /bin/bash shebang, don't trust /bin/sh to be bash. - -2017-06-20 Alec Leamas - - Don't distribute generated config.h, config.py and paths.h (#294). - - build: Fix VPATHS builds (#294). - -2017-06-15 Alec Leamas - - Build: Disable non-linkable plugins on kfreebsd. - -2017-06-13 Alec Leamas - - python-pkg: tests: Don't hardcode socat and expect paths. - - Build: more distcheck. - - Build: more distcheck. - - Build: distribute python test files. - - Build: fix "make clean". - - Build: Revert timestamp fix. - - Update for 0.10.0-rc2 - - Build: distcheck fixes. - -2017-06-12 Alec Leamas - - Build: non-linux FTBS fixes. - - Build: More python installation clean-up. - - Move and install lirctool wrapper (but no link). - - Don't hardcode python3 shebang - - attic: Remove attic from release branch. - -2017-06-11 Alec Leamas - - build: Rectify "make clean" - - python-pkg: tests: Use socat instead of ncat (#289). - Turns out that ncat exists in several version on Debian, all of - them broken somehow. socat seems more uniform and works in both - Fedora and Debian stretch. - - mode2: Actually parse the [mode2] config file section [#292]. - Although the manpage describes how mode2 reads the [mode2] section - in the config file, the actual code for this was missing. - -2017-06-10 Alec Leamas - - irsimsend: Fix log setup typo. - - lirc-setup: Clean up paths handling (#290) - - doc: Update. - - Kill all 0.9.5 references. - - Review lircd-uinput repeat handling after deprecating lircd - --release option. - - Rewrite intro chapter in Configuration guide. - - Typos and clean-up. - -2017-06-08 Christoph Bartelmus - - doc: lirc.org: Set left margin to 0 - -2017-06-08 Alec Leamas - - doc: Fix python document generation. - Add missing python filters to distribution, and ensure it works - with alternative python interpreters. - -2017-06-03 Alec Leamas - - build: Don't hardcode python3 interpreter name. - Fixes build errors on hosts where python3 is invoked e. g., - as python3.5. - -2017-06-01 Alec Leamas - - Build: fix bad link tools/lirc-setup/config.py - - Build: Fix timestamps in generated tarball. - The debian buildchain requires generated tarballs to have the - same timestamps to be considered equal. So, set the timestamps - of generated files to the git commit date. - -2017-05-31 Alec Leamas - - Build: fix linking issue. - - Build: Use correct python interpreter. - - doc: Mute annoying build error message. - - doc: Deprecate lirc.hwdb, NEWS update. - -2017-05-31 Alec leamas - - build: Mageia fixes - -2017-05-29 Alec Leamas - - build: Let configure update also lib/lirc/config.h - - lib: Fix missing #include config.h - -2017-05-28 Alec Leamas - - Updating for lirc-0.10.0rc1 - - NEWS: update. - -2017-05-22 Alec Leamas - - doc: Update. - -2017-05-21 Alec Leamas - - doc: Fix download links for new version. - -2017-05-20 Alec Leamas - - NEWS:update - - lircd: Deprecate --release option. - - doc: Add release into index.html - - build: Make it more quiet. - - irpipe: Build against system lirc.h. - - build: Update ABI version info (added interfaces). - -2017-05-19 Alec Leamas - - doc: Move upstreamed lirc.4 manpage to attic. - - plugins/commandir: Mute compiler warnings (somewhat shaky). - - build: Fix recent GCC compiler warnings. - - Update for lirc-0.10.0 - - Merge branch 'master' into release-0.10 - release branch - -2017-05-16 Alec Leamas - - NEWS: update. - - doc: fixes, some source comments - - build: Don't build table.html and hwdb on cross-compile (#286). - This is a temporary fix. Building these in runtime, the proper - solution, requires vast changes to the build not suitable at - this point. - -2017-05-16 Alec Leamas - - lib: Relax -O option parsing. - The original code only handled the option followed by a space and - the config file path. New code handles: - - + -O/some/path - + -0=/some/path - + -O /some/path - + --options-file=/some/path - + --options-file /some/path - -2017-05-16 Alec Leamas - - lircd-uinput: Fix options config file handling (#284). - The release-timeout option value was actually not used. - - The add-release-event, logfile and uinput options was not - handled when set in the config file (but OK if on command line). - - Don't use lircd --release option as default suffix; the lircd - --release handling is likely to be deprecated. - -2017-05-15 Alec Leamas - - build: Don't invoke lirc-lsplugins on cross-compile build (#286). - -2017-05-14 Alec Leamas - - build: Cross-compilation fixes (#278). - - Fix bad space in compiler -I flags. - - Add SH_PATH cross-compile configuration variable. - - Fix HAVE_WORKING_POLL help message. - - Sanitize cross-compile checks for DEVINPUT_HEADER. - - lib: Possible read() buffer overflow fix. - -2017-05-14 Alec Leamas - - Use lircd waitfordata() instead of copy in lib/receive (#278). - Using a separate waitfordata() in lib/receive causes subtle errors - when transmitting if data is received concurrently. In all - circumstances, having two parallel poll()/select() loops is a - bad idea leading to hard-to-understand logics. - - Patch lets clients such as lircd set the function used by - waitfordata() in lib/receive, effectively forcing drivers to - used the lircd waitfordata() function. This centralizes the - event loop to a single function. - - lib/receive still uses the old function as default e. g., when - used by irrecord. - -2017-05-13 Alec Leamas - - lib: Add missing library defs. - - lircd-uinput: Fix release-timeout option handling (#284). - -2017-05-05 Alec Leamas - - lircd: Enhance handling of --release option (#284). - - plugins: devinput: Enhance "No device available" log message (#285). - -2017-05-04 Alec Leamas - - build: Enhance ./configure output - -2017-05-04 Alec Leamas - - build: kill a compiler warning. - -2017-05-04 Alec Leamas - - build: MacOS fixes - - Don't break on missing clock_gettime(). - - Use specific tests instead of -D DARWIN. - - Don't use broken stock AC_TYPE_GETGROUPS. - - Bugfixes, in particular lirc-make-devinput. - -2017-05-03 Alec Leamas - - build: Make build less verbose by default - Basically applies .SILENT if V is unset or set to '0'. Use - 'make V=0' or 'make V=1' to provide less or more feedback. - -2017-04-19 Alec Leamas - - Revert "build: Add missing -I flag to lirc-driver.pc (#282)." - The real problem here is a bad include path in media/lirc.h; this - is already fixed in 87c02189 without changing the .pc file - include paths. Ditching un-needed patch which makes all sorts of - private headers visible in the driver. - - Un-revert "lib: config_file: Fix parsing absolute include path (#281)." - This reverts commit 8d9ee2dde7766a6c8951110ce6595dd3cf9e00e8. This is - an insane mess, the wrong commit was reverted and the commit message - is a joke. - - lircmd: Fix parsing of -D option (#283). - -2017-04-13 Alec Leamas - - Revert "lib: config_file: Fix parsing absolute include path (#281)." - The real problem here is a bad include path in media/lirc.h; this - is already fixed in 87c02189 without changing the .pc file - include paths. Ditching un-needed patch which makes all sorts of - private headers visible in the driver. - -2017-04-12 Alec Leamas - - lib: config_file: Fix parsing absolute include path (#281). - - build: Add missing -I flag to lirc-driver.pc (#282). - -2017-04-07 Alec Leamas - - Merge /u/mhej/lirc/ branch small-fixes into master - https://sourceforge.net/p/lirc/git/merge-requests/29/ - -2017-04-07 Bengt Martensson +2022-10-04 Sean Young - lircd: Bug in setuptimeout() - merge request 27. - The drvctl_functions according to specs returns "nonzero" on failure; - the code however was expting -1 on failure. Possibly non-inialized vars: - min_timeout, max_timeout. + Update for 0.10.2 - Changed some lirc_t to uint32_t. +2022-10-03 Sean Young -2017-04-07 Alec Leamas + On Fedora 36, PYTHON_LIBS is empty. Use PYTHON_CFLAGS instead - tools, plugins: lirc-lsplugins: Kill device_hint shell cruft. + Fix make distcheck -2017-04-06 Alec Leamas + HAVE_KERNEL_LIRC_H is unused - irlog: remove some cruft, add missing Makefile. + Make run-tests work again - drivers: Adding a logging module wrapper. +2022-10-02 Sean Young -2017-04-05 Alec Leamas + always disable all kernel decoding protocols - lib, tools: Refactor some drv_handle_opts() code. +2022-10-01 Sean Young - irrecord: Add a driver-options argument (#277). + lircd cpu usage may jump to 100% + If the release time is set from a previous button press, then tv + will be updated accordingly. If the release time has already + passed, then tv might be 0, in which case poll gets a timeout of + 0 milliseconds and the loop is executed again (eating all available + cpu). -2017-04-05 Matthias Reichl + Next version will be 0.10.2 - lib: Fix bad driver initialization (#279). +2022-09-26 Sean Young -2017-04-05 Alec Leamas + Update NEWS - plugins: devinput: Fix bad codelength (#265). +2022-09-19 Sean Young -2017-04-05 pylover + reguire_version needed before import - python-pkg: Change extension module path (#270) +2022-09-18 Thomas Uhle -2017-04-05 Alec Leamas + SafeConfigParser class has been renamed to ConfigParser in Python 3.2 + The current version of LIRC produces a warning message with more or less + up-to-date versions of Python 3. You can find such messages in syslog for + instance (date and hostname stripped): - doc: Fix lircd.conf manpage bug (#276). + lircd-setup[828]: /usr/sbin/lircd-setup:37: DeprecationWarning: The SafeConfigParser class has been renamed to ConfigParser in Python 3.2. This alias will be removed in future versions. Use ConfigParser directly instead. - mode2: Write error messages on stderr (#272). +2022-09-05 Thomas Betker - build: Warn for missing Python.h + visit_rc() leaks file descriptor + visit_rc() opens /sys/class/rc/rc1/protocols O_RDONLY, but never closes it, so + the file stays open forever. [fd is overwritten by another O_WRONLY open a few + lines later; that one is closed correctly, though.] - build: Use bundled event codes on non-linux platforms (#273). + In my case (lirc-0.10.1 on openSUSE Leap 15.4, 'irw' running, 'lircd' failing + to open /dev/lirc1 due to permission issues), this means that 'lircd' creates + a new /sys/class/rc/rc1/protocols file descriptor every second, sometimes + resulting in hundreds of /proc/$PID/fd/ entries. -2017-04-05 Alec Leamas + Apparently, this was introduced by commit 06bd6d "plugins/default: Just check + lirc protocol if read-only access (#133)." on 17-Sep-2015. - build: Disable python client if python version < 3.5. - The new client requires 3.5+, causinng build errors otherwise. +2022-06-26 Sean Young - lib: MacOS build bugfix. + Support lirc overflows -2017-04-04 Alec Leamas + Sync lirc.h with linux 5.18 - Handle missing kernel-devel lirc.h - part 2 (#280) + Always use bundled lirc.h header file + This ensure less breakage if the system header changes, and allows us + to use a newer version of lirc.h than is available on all distributions. - Handle missing kernel-devel lirc.h (#280) + Update download link and remove merge conflict -2017-04-01 Alec Leamas - - Handle systemd new pkg-config filename (#274) - -2017-03-30 John Penfold - - plugins: ftdi: Fix bad timings (#275). - Old code had all timings multiplied by two; fixed. - -2017-03-14 Bengt Martensson - - girs.[c|html]: minor issues fixed; substantially improved doc. - readdata(lirc_t): do not return when the hardward times out, just - continue. (Made mode2 bail out). - initialize_tcp(): bugfix. - -2017-03-07 Alec Leamas - - lib: Add development link for lirc/config.h - -2017-03-05 Vahid - - test_client: Misspelled OSError typo - -2017-02-14 Maciej S. Szmigiero - - plugins/devinput: use correct code printout field precision - ir_code is a 64-bit (16 hex digits) type, but devinput logged it with - 8-digit field precision which resulted in printout length varying between - various event types (which are encoded in top 16 bits of a code number). - - Print codes with full 16 hex digits so to maintain constant length output. - -2017-02-14 Maciej S. Szmigiero - - lib: Fix spinning in array_guest_code_equals() - lircd was spinning on startup in array_guest_code_equals() when started - with one of my configs. - That function didn't correctly advance current element pointers when - iterating over code lists in keys that had more than one code. - - Fix this and also improper return value when the first argument key codes - are a prefix of the second argument ones (previously the function would - return "equal" verdict in this case). - -2017-02-13 Maciej S. Szmigiero - - lib: Fix crash when loading remote without "codes" block - When loading a config file that has a remote without "codes" block - (at least) irrecord crashes. - - It turns out that sanityChecks() function tries to deference rem->codes - pointer blindly. - Fix it by checking whether this pointer is null and failing the validation - in this case. - - Let's use this opportunity to also fix a logging call few lines earlier in - this function which tried to output a struct type as a string. - -2017-02-12 Alec Leamas - - build: Kill som unused cruft. - - NEWS: Clean up merge from release, update. - - Use _EVUP instead of _UP as release suffic (#263). - - driver API: Add server version info. - Drivers needs a way to check the server version level i. e., the - support available in server. This is an oversight in thescurrent - driver API. - - build: Configure devinput (#264) - - doc, build: Fix FTBS bugs on hosts without installed lirc. - -2017-02-09 Alec Leamas - - doc: Fix FTBS bug on hosts without installed lirc. - -2017-02-02 Alec Leamas - - lircd: Remove --uinput option. - - plugins: Remove the slink-e (a. k. a. slinke) driver. - The hardware was discontinued in 2004, so it's time. - http://www.avsforum.com/forum/28-tweaks-do-yourself/ - 416812-slink-e-discontinued.html - - doc: Update out-of-tree driver Makefile example. - - lib: Handle segfault in lirc_readconfig_only(). - -2017-01-25 Alec Leamas - - build: Missing files, bad python import paths and versioning. - - plugins: More device enumeration. - -2017-01-23 Alec Leamas - - NEWS: update. - - irpipe: Use kernel lirc.h header, not the bundled file. - - Revert buggy part of 1b7f6b0 (#254). - - Revert buggy part of 1b7f6b0 (#254). - - Reconsider next version: 0.9.5 -> 0.10.0. - - lirc-setup: Clean up import paths. - - python: Documentation fixs, Makefile.am bugfix. - -2017-01-22 Alec Leamas - - python-bindings: feature complete. - Old and new python code now lives in python-pkg/. This is installed - in regular locations by Makefile, but it is also a functional - pypi package which could be installed e. g., in a virtualenv. - - The API contains pieces to send commands and receive data. See the - API docs and also the manual. It is supposed to be complete in the - sense that it can handle all known socket commands to lircd(0) and - lircrcd(8). It can also receive both raw events like irw(1) and - application string like ircat(1). - - There are also some proof-of-concepts in doc/python-bindings. If - installed in a virtualenc the pypi package installs the lirctool - script, a more complete demonstration of the API. - -2017-01-22 Alec Leamas - - lirc_client: Make lirc_deinit() idempotent. - -2017-01-21 Alec Leamas - - doc: Document ircat LIRC_SOCKET_PATH usage, more list-devices stuff. - -2017-01-19 Alec Leamas +2022-06-26 Alec Leamas contrib: release-process: update. - doc: Document ircat LIRC_SOCKET_PATH usage. - -2017-01-18 Alec Leamas - - plugins: slinke doc update. - - Build: Fix repeated 'make install' failures on same target dir. - - lib: Fix segfault in driver enumeration. - -2017-01-08 Alec Leamas - - Update for 0.9.4d - - NEWS:update. - - doc: Fix missing logo. - - lirc_client: Fix bunch of lircrcd-related bugs (#254) - the lirc_code2char function has provisions to use a centralized - translation in order to support global modes using lircrcd. This - code has not been teste thoroughly, and lirc_client has a several - bugs related to communication with lircrcd and trailing lf in - text. - -2017-01-07 Alec Leamas - - xmode2: Fix handling of --driver option. - -2017-01-07 Alec Leamas - - lib: Print drivers in columns. - In original code the long list of drivers made the original message - disappear. - - Also a fix for bad handling of --driver to xmode2. - -2017-01-06 Alec Leamas - - lib: Fix some API docs comments. - - lircd: Fix DRV_OPTION error message handling (#256). - - lircd: Fix DRV_OPTION error message handling (#256). - -2017-01-05 Alec Leamas - - tools: pylint fixes - -2017-01-05 Alec Leamas - - lircrcd: Rewrite to match manpage functionality (#253). - The old lircrcd implementation is plain broken with respect to the - manual page. It opens a connection ti lircd, listens to all decoded - keypresses and uses this to generate application strings to - clients. - - New implementation is just s common instance and state for converting - codes to application strings. It only listens to clients, and - translates as required. - - Caching key/mode transltions could make this daemon considerably faster. - -2017-01-05 Alec Leamas - - lirc_client: Fix bunch of lircrcd-related bugs (#254) - the lirc_code2char function has provisions to use a centralized - translation in order to support global modes using lircrcd. This - code has not been teste thoroughly, and lirc_client has a several - bugs related to communication with lircrcd and trailing lf in - text. - - lib, doc: Clean up API docs. - -2017-01-05 Samuel Thibault - - build, plugins: Fix hurd build issues (BTS #845499). - -2017-01-04 Alec Leamas - - plugins: Only export the driver table (#255). - - ircat: Fix option parsing bug + empty conditions (#251). - The --command/-c option was not parsed correctly, despite that - it seemed to work. lirc_code2char is not guarenteed to return - NULL if there is no more data, it could just be empty. - - lircd: Fix segfault in SET_INPUTLOG without arguments (#252). - - ircat: Fix option parsing bug + empty conditions (#251). - The --command/-c option was not parsed correctly, despite that - it seemed to work. lirc_code2char is not guarenteed to return - NULL if there is no more data, it could just be empty. - - lircd: Fix segfault in SET_INPUTLOG without arguments (#252). - -2016-12-30 Alec Leamas - - lirc-setup: Kill pylint warnings. - - build: Include config.h in installed headers (#250). - - build: Include config.h in installed headers (#250). - -2016-12-27 Alec Leamas - - doc: Device enumeration support update. - - lirc-setup: Adapted to new device enumeration. - - plugins: Use new enumeration for ttyUSB devices. - - lib, plugins: Device enumeration jumbo update. - - configure: Fix libusb detection bug. - -2016-12-23 Alec Leamas - - doc: Document optional args on non-glibc host (#240). - - lircd: Fix --listen option parsing [#249]. - - lircd: Fix --listen option parsing [#249]. - -2016-12-22 Alec Leamas - - NEWS: update - - doc: Update irtoy plugins docs. - -2016-12-22 Felix Schmidt - - plugins: irtoy: Add support for irdroid. - Irdroid is basically a stripped down irtoy with old firmware - version 20 lacking support for signalling pins. The commit avoids - using the signalling pins for version 20 (i. e., "2.0"). - - The state of version 21 is unknown. The use of signalling pins is - enabled for versions >= 22. - -2016-12-21 Alec Leamas - - plugins: More driver device enumeration. - Adding new drv_enum library file, re-factoring free'ing of - DRVCTL_DEG_DEVICES data, adding centralized globbing support. - - lircd: Add logging of options etc. [#244]. - - plugins: Add some more driver device enumeration. - -2016-12-20 Alec Leamas - - lib: Fix _XOPEN_SOURCE related FTBS on some platforms (#248). - - lib: Fix _XOPEN_SOURCE related FTBS on some platforms (#248). - -2016-11-16 Alec Leamas - - systemd: Add missing lircd-setup.service to distribution (#243). - - systemd: Add missing lircd-setup.service to distribution (#243). - -2016-11-09 Alec Leamas - - Build: configure plugins/ftdix and usb libraries (freebsd fix). - - Build: Don't use pkg-config for libusb (freebsd buildfix). - - Build: Don't generate linux files on non-linux hosts (kfreebsd build). - Also some more cleanup in configure.ac. - - Build: Configure false (kfreebsd build). - - Build: configure plugins/ftdix. - - Build: Don't use pkg-config for libusb (freebsd buildfix). - - Build: Don't generate linux files on non-linux hosts (kfreebsd build). - -2016-11-07 Alec Leamas - - build: Use pkg-config instead of os-dependent hacks. - -2016-11-06 Alec Leamas - - build: Configure libudev (#242). - - build: Configure libudev (#242). - -2016-11-04 Alec Leamas - - config: Remove deprecated --uinput from lirc_options.conf - -2016-11-03 Alec Leamas - - lib: Remove old. unused systemd bug walk-around. - - build: Configure clock_gettime(). - - doc: lirc.org: Fix some available hardware links. - - build: More cleanup: deps, configure.ac constructs - -2016-10-31 Alec Leamas - - build: Fix python3 command handling - The old--enable-python3-fix was a abomination, installing a - global python3 link if not available. When packaging, this - just don't work. Instead, patch scripts at installation time - to use the python3 interpreter available and remove the switch. - - build: Remove configure.ac cruft, cleanup. - - all: Remove kernel-space data types __u32 et. al. - The types __u32, __u64 etc. are designed to be used in linux kernel - space. Using them instead of the generic types in stdint.h causes - portability problems, notably on Debian. uint32_t etc. are always - available due to the autoconf support. - - build: Use autoconf AC_TYPE_GETGROUPS instead of homebrew hack. - - lib: Only use local headers in lirc_private.h (#237). - The lirc_private.h header should only be used internally - when building lirc tools, and i this case we should not - care about what's possibly installed in /usr/include/lirc. - - .gitignore: doc/ fixes - - systemd: Fix wrong path to irexec (#239). - - Build: Add --enable-uinput ./configure option (#238). - There are situations where the default value guessed from the - existence of the /dev/uinput device cannot be used to determine - if lircd-uinput should be built, all related to cross-compiling. - The bug occurs on Ubuntu, where some build hosts seems to lack - this device. It will also bite anyone doing a traditional - cross-compilation. The new option should work in all cases, not - adding so much complexity since the default is almost always - sane. - -2016-10-30 Alec Leamas - - lib: Only use local headers in lirc_private.h (#237). - The lirc_private.h header should only be used internally - when building lirc tools, and i this case we should not - care about what's possibly installed in /usr/include/lirc. - - lirc.pc: Fix bad library specification (#236). - - .gitignore: doc/ fixes - -2016-10-29 Alec Leamas - - systemd: Fix wrong path to irexec (#239). - - Build: Use HAVE_UINPUT=1 to force building uinput code (#238). - -2016-10-25 Alec Leamas - - lirc.pc: Fix bad library specification (#236). - - lib: curl_poll.h: Ensure build on unconfiguredclients. - - lib: curl_poll.h: Ensure build on unconfiguredclients. - -2016-10-23 Alec Leamas - - configure: Fix cross-compilation error (#233). - - build: lirc.h: Configure includes in lirc.h (#234). - Fall back to sys/ioctl.h instead of linux/ioctl.h etc. on - non-linux platform i. e., MacOS. - - lirc.org: Clean up distribution links, bugfixes. - - lirc.org: Clean up distribution links, bugfixes. - - build: lirc.h: Configure includes in lirc.h (#234). - Fall back to sys/ioctl.h instead of linux/ioctl.h etc. on - non-linux platform i. e., MacOS. - - configure: Fix cross-compilation error (#233). - - doc: lirc.org update. - -2016-10-22 Alec Leamas - - plugins: girs.c: Default device typo fix. - - plugins: girs.c: Default device typo fix. - - NEWS:update - - lircd: Remove use of functions killed in kernel 4.8.0 - From 4.8.0 the kernel no longer supports LIRC_NOTIFY_DECODE, - LIRC_SETUP_START/LIRC_SETUP_END and several constants related - to initiating filters. Remove corresponding calls from lircd. + build: Mute libtool when V=0. - include: Update bundled lirc.h. + plugins: Update driver_version. -2016-10-21 Alec Leamas +2022-06-03 Alec Leamas - plugins>/girs: Use curl_poll wrapper for poll() + python 3.10: Fix new Queue interface - plugins>/girs: Use curl_poll wrapper for poll() +2022-06-03 Debian Lirc Team - Update for 0.9.4c release. + python3.8 + =================================================================== - tools: irtext2udp: Bugfixes. +2022-06-03 Alec Leamas - tools: irtext2udp: Bugfixes. + logging: Don't use broken LOG_CONS syslog flag. - NEWS: Update. +2022-06-03 Alec Leamas - plugins: girs: Add tcp/udp support (#201). + database.py: Handle new PyYAML interface. -2016-10-21 Bengt Martensson +2022-05-30 Sean Young - plugins: girs: Add tcp/udp support (#201). + Only enable the lirc protocol if present + linux kernel 4.16 and newer no longer have the lirc chardev connected as + a protocol decoder, but it is baked into rc-core. So, it is not necessary + to enable the lirc protocol any more if lirc is not present in the + protocols file. -2016-10-20 Alec Leamas + Note that lirc is still in the protocols file in current versions of the + kernel (at the time of writing), but it would be nice to be able to remove + this in the distant future. - macos, lib: Use curl_poll instead of poll() to handle macos (#227). - This affects many drivers which is somewhat problematic. The alternative - would be to define poll() as a macro. Not really sure. +2022-05-30 Sean Young - lib: Handle bad poll() implementations using a wrapper (#227). - Primarely for macos, this adds a wrapper for poll which uses - select() on platforms with a bad poll(). Here is also a - configure.ac test to check for buggy poll implementations. + Ensure LIRC_MODE2_TIMEOUT and LIRC_MODE2_FREQUENCY are handled correctly + Based on https://github.com/neuralassembly/raspi/blob/master/lirc-gpio-ir-0.10.patch + Bug-Debian: bugs.debian.org/931078 - build: handle macos missing openpty() declaration (#226). +2022-05-29 Matej Drobnič - plugins: Handle macos not having strchrnul(3) (#226). - This is only used in a single plugin, so just make it - a local definition. The implementation is trivial. + plugins: irtoy: gracefully handle buffer overflow error - lircd: osx compilation fixes (#226). - https://sourceforge.net/p/lirc/mailman/message/35403649/ +2022-05-29 Sean Young - docs: Update. + The Irdroid hangs after transmit intermittently + When this occurs, the device led remains on and does not respond to any + command. It has to unplugged and lirc has to be restarted. - Adding curl and ciniparser license files. + See https://gist.github.com/Irdroid/384d5144d24cba7c94e58dde75388968 -2016-10-20 Alec Leamas +2022-05-29 b'Sean Young - Add curl and ciniparser license files. - The ciniparser license is missing long since, but is now in - place. The curl one is for the new lib/curl_poll files. + Merge /u/craigandrews/lirc/ branch RuntimeDirectory into master + https://sourceforge.net/p/lirc/git/merge-requests/42/ - ciniparser COPYING + Merge /u/greenbird/lirc/ branch uname into master + https://sourceforge.net/p/lirc/git/merge-requests/36/ -2016-10-20 Alec Leamas +2022-05-25 Sergei Trofimovich - macos, lib: Use curl_poll instead of poll() to handle macos (#227). - This affects many drivers which is somewhat problematic. The alternative - would be to define poll() as a macro. Not really sure. + lircd: drop support for LIRC_CAN_SET_REC_FILTER and LIRC_CAN_NOTIFY_DECODE features + linux-headers-5.18 dropped LIRC_CAN_SET_REC_FILTER and + LIRC_CAN_NOTIFY_DECODE define in + https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=b2a90f4fcb146d0e033203ab646f0fd22cfa947f + as no drivers implement it. - lib: Handle bad poll() implementations using a wrapper (#227). - Primarely for macos, this adds a wrapper for poll which uses - select() on platforms with a bad poll(). Here is also a - configure.ac test to check for buggy poll implementations. + Without the change lircd build fails on linux-headers-5.18 as: - build: handle macos missing openpty() declaration (#226). + lircd.cpp: In function 'int setup_hardware()': + lircd.cpp:492:49: error: 'LIRC_CAN_SET_REC_FILTER' was not declared in this scope; did you mean 'LIRC_CAN_SET_REC_CARRIER'? + 492 | || (curr_driver->features & LIRC_CAN_SET_REC_FILTER)) { + | ^~~~~~~~~~~~~~~~~~~~~~~ + | LIRC_CAN_SET_REC_CARRIER - plugins: Handle macos not having strchrnul(3) (#226). - This is only used in a single plugin, so just make it - a local definition. The implementation is trivial. +2019-09-15 Craig Andrews - lircd: osx compilation fixes (#226). - https://sourceforge.net/p/lirc/mailman/message/35403649/ + systemd: ensure lirc runtime directory exists - Add new irtext2udp filter (#197). +2019-05-05 Cédric Schieli - Add new irtext2udp filter (#197). + python-pkg: fix: async iterator should stop if an exception occurs in the select loop -2016-10-19 Alec Leamas + python-pkg: test: async iterator should stop if an exception occurs in the select loop - doc: Fix multiple manpages version markup. + python-pkg: fix: async readline should reraise if an exception occurs during select loop - doc: Fix multiple manpages version markup. + python-pkg: async_client: enqueue exceptions that occur during the select loop so they can be handled -2016-08-27 Alec Leamas + python-pkg: test: async readline should reraise if an exception occurs during select loop - mode2: Fix broken --raw option (#223). + python-pkg: test: if the connection is lost while using sync code, a ConnectionResetError should be raised - mode2: Fix broken --raw option (#223). + python-pkg: suppress ConnectionResetError and TimeoutException in testReceiveAsyncDisconnectDontBlock -2016-08-23 Alec Leamas + python-pkg: selectively suppress captured exceptions - lirc-make-devinput: Fix that two remotes has the same name (#222). + python-pkg: capture uncaught async exception in event_loop context manager - lirc-make-devinput: Fix that two remotes has the same name (#222). + python-pkg: fix: if the connection is lost while using async code, the loop should not block infinitely - lircd: Warn for duplicate remote definitions (#222). + python-pkg: test: if the connection is lost while using async code, the loop should not block infinitely - lircd: Warn for duplicate remote definitions (#222). + python-pkg: ensure testing code cannot run infinitely + The assertCompletedBeforeTimeout context manager can be used to prevent + a test case from blocking the whole run. - lircd: Retry temporary unavailable write sockets (#221). + python-pkg: prepare for multiple async code test cases + Each async code test case should run on its own newly created loop and + the loop should be closed after each test. + The event_loop context manager can be used to ensure that. - lircd: Retry temporary unavailable write sockets (#221). +2019-01-01 William Manley -2016-08-22 Alec Leamas + systemd support: Notify systemd on successful startup + This allows systemd to detect the case where we've failed to startup + due to a failure to parse our config files. - contrib: Fix usb devices' acl permissions (rhbz #1364744). +2018-12-30 Alec Leamas - lirc-setup: Fix crasher bugfix. - Fixes https://retrace.fedoraproject.org/faf/reports/1166394/ + lircd: Fix --connect option parsing error (#343). - lirc-setup: Fix crasher bugfix. - Fixes https://retrace.fedoraproject.org/faf/reports/1166394/ +2018-11-18 Bernhard M. Wiedemann - doc: Review and fix links, mute linkchecker(1). + Do not store build date and kernel ver [#301] + See https://reproducible-builds.org/ for why this is good. - lircd: Remove use of functions killed in kernel 4.8.0 - From 4.8.0 the kernel no longer supports LIRC_NOTIFY_DECODE, - LIRC_SETUP_START/LIRC_SETUP_END and several constants related - to initiating filters. Remove corresponding calls from lircd. +2018-02-23 Alec Leamas - include: Update bundled lirc.h. + lircd.conf: Update
 documentation (#319).
 
-	contrib: Fix usb devices' acl permissions (rhbz #1364744).
+2018-02-12  Alec Leamas  
 
-2016-08-18  Alec Leamas  
+	configure: Clean up man2html test.
 
-	contrib: disable udev /dev/uinput rule.
+2018-02-11  Alec Leamas  
 
-	contrib: disable udev /dev/uinput rule.
+	configure: Enhance test for usable man2html (#316).
 
-	plugins: audio_alsa: Fix byte truncating in 16-bit data (#218):
-	This fixes a bug introduced in 82305c72 which basically was
-	about muting a "dereferencing type-punned pointer will break
-	strict-aliasing rules" compiler warning.
+2018-02-11  Felix Schmidt  
 
-	plugins: audio_alsa: Fix byte truncating in 16-bit data (#218):
-	This fixes a bug introduced in 82305c72 which basically was
-	about muting a "dereferencing type-punned pointer will break
-	strict-aliasing rules" compiler warning.
+	irexec: Handle non-working shells gracefully (#314).
 
-2016-08-16  Alec Leamas  
+2018-01-16  jrie  
 
-	doc: 0.9.4b Update of lirc.org/index.
+	 repeat in lircd-uinput by using reps instead of is_release
 
-2016-08-16  Helen Foster  
+2017-09-27  Alec Leamas  
 
-	irtoy: improve error handling (#220).
-	Avoid double init. Avoid calling setPin or trying to send if irtoy
-	is not initialized (segfault).
+	lircd: Help message polish.
 
-	irtoy: improve error handling (#220).
-	Avoid double init. Avoid calling setPin or trying to send if irtoy
-	is not initialized (segfault).
+2017-09-14  Baruch Siach  
 
-2016-08-10  Alec Leamas  
+	lirc.org: fix Buildroot link
+	Busybox is not a Linux distro. Commit bd6f04e0ddda most likely meant to
+	add a reference to Buildroot, a Linux system generator that shares some
+	of its history with Busybox. Fix this.
 
-	lircd-uinput: More (final?) cleanup.
+2017-09-12  Alec Leamas  
 
-2016-08-09  Alec Leamas  
+	doc: lirc.org: Add busybox link.
 
-	NEWS, doc: Fix news entry in lirc.org, update NEWS, manpage typos.
+2017-09-12  Baruch Siach  
 
-	NEWS, lirc.org/index.html: Fixes.
+	build: Fix python client cross compile
+	The setup.py setuptools wrapper needs to use a version of python built
+	specifically for cross compiling to cross compile successfully. Allow
+	setting that in the environment using the SETUPTOOLS_ENV variable.
 
-	doc: Fix manpage typos.
+	Fixes the following build failure:
 
-	Update for 0.9.4b
+	/usr/bin/ld: skipping incompatible \
+	    .../lirc-tools-0.10.0/lib/.libs/liblirc_client.so \
+	    when searching for -llirc_client
+	/usr/bin/ld: cannot find -llirc_client
+	collect2: error: ld returned 1 exit status
 
-	lib: Add missing line_buffer.
+2017-09-12  Alec Leamas  
 
 	NEWS: update.
 
-	lircd-setup: Accept also keys code1..code10 + manpage update.
-
-	doc: Fix lircmd setup text.
-
-	lib: Add missing Makefile.am dep (#210).
-	Fixes bug introduced in [19439d] where the comment is OK but the
-	single-line patch is wrong...
-
-	doc: Update lircd manpage.
-
-	lircmd: Options, udev examples and manpage update.
-	  - Use the lircd output settings as lircmd default input.
-	  - Add udev fixed link for lircmd in example rules.
-	  - Manpage overhaul.
-
-	doc: lircd-uinput: Document running as root.
-
-	systemd: Update service files hardening comments (#204).
-
-	systemd: Add hardening options comments to services (#204).
-
-2016-08-09  Matthias Reichl  
-
-	doc: lircd-uinput manpage update.
-
-2016-08-09  Alec Leamas  
-
-	lircd-uinput: Add a --repeat option (#211).
-	Let user set the kernel autorepeat options, since this is the only
-	repeat mechanism we are using.
-
-	lircd-uinput: Minor cleanups.
-
-	lircd-uinput: Don't register --disabled buttons (#211).
-	The buttons registered might affect how the kernel classifies the
-	uinput device. By blocking the --disabled buttons also when
-	registrating users can walk-around possible problems.
-
-	lircd-uinput: A multitude of fixes (#213, #211, #177)
-	As released, lircd-uinput is a pile of junk. Fixes:
-	  - Fix release events handling causing loops.
-	  - Don't drop the release events as illegal.
-	  - Fix --loglevel CLI option handling
-	  - Fix ---release-suffix CLI option handling.
-	  - Add new --disable CLI option to block certain keys.
-	  - Add new --add-release-events option as an alternative to
-	    lircd --release.
-	  - Forward all available key symbols
-	  - Don't emulate hardware autorepeat (event.value == 2), instead
-	    trust the kernel autorepeat support.
-	  - Add support for input from a plain file (testability).
-	  - Add some logging, notably --debug logs all events sent to kernel.
-	  - Add udev rule making the input device visible.
-	  - lircd-uinput(8) manpage update + TOC links.
-	  - Refactoring, cleanup and commenting.
-
-2016-08-09  Helen Foster  
-
-	lirc_client: read_string() not terminating buffer contents (#216);
-	Lack og trailing '\0' in certain situations causes segfaults
-	in irsend.
-
-2016-08-09  Alec Leamas  
-
-	doc: lircd.conf: Document suppress_repeat.
-
-	lib:irrecord: Fix under-sized buffer (#208).
-
-2016-08-09  Helen Foster  
-
-	lib/lirc_client: Don't write to fd 0 (#207)
-	File descriptor 0 is normally stdin. On some systems, writing to it
-	seems to work, but stops the user redirecting the output. In
-	particular, this affected irsend LIST.
-
-2016-08-09  Alec Leamas  
-
-	tools: Fix bad non-python3 reference.
-
-	lib: Fix the added Makefile dep (#210).
-
-2016-08-08  Alec Leamas  
-
-	doc: Fix lircmd setup text, add lircd-setup links, bugfixes.
-
-	lib: Add missing Makefile.am dep (#210).
-
-	doc: Update lircd manpage.
-
-	lircmd: Options, udev examples and manpage update.
-	  - Use the lircd output settings as lircmd default input.
-	  - Add udev fixed link for lircmd in example rules.
-	  - Manpage overhaul.
-
-	systemd: Update service files hardening comments (#204).
-
-	doc: lircd-uinput: Document running as root.
-
-	lircd-setup: Accept also keys code1..code10 + manpage update.
-
-2016-08-07  Matthias Reichl  
-
-	doc: lircd-uinput manpage update.
-
-2016-08-07  Alec Leamas  
-
-	lircd-uinput: Add a --repeat option (#211).
-	Let user set the kernel autorepeat options, since this is the only
-	repeat mechanism we are using.
-
-2016-08-05  Alec Leamas  
-
-	lircd-uinput: Minor cleanups.
-
-2016-08-04  Alec Leamas  
-
-	lircd-uinput: Don't register --disabled buttons (#211).
-	The buttons registered might affect how the kernel classifies the
-	uinput device. By blocking the --disabled buttons also when
-	registrating users can walk-around possible problems.
-
-	systemd: Add hardening options comments to services (#204).
-
-	doc: Some small fixes.
-
-	lircd-uinput: A multitude of fixes (#213, #211, #177)
-	As released, lircd-uinput is a pile of junk. Fixes:
-	  - Fix release events handling causing loops.
-	  - Don't drop the release events as illegal.
-	  - Fix --loglevel CLI option handling
-	  - Fix ---release-suffix CLI option handling.
-	  - Add new --disable CLI option to block certain keys.
-	  - Add new --add-release-events option as an alternative to
-	    lircd --release.
-	  - Forward all available key symbols
-	  - Don't emulate hardware autorepeat (event.value == 2), instead
-	    trust the kernel autorepeat support.
-	  - Add support for input from a plain file (testability).
-	  - Add some logging, notably --debug logs all events sent to kernel.
-	  - Add udev rule making the input device visible.
-	  - lircd-uinput(8) manpage update + TOC links.
-	  - Refactoring, cleanup and commenting.
-
-	lib: Add a line buffer.
-
-	lib: Add some comments, formatting.
-
-2016-08-03  Helen Foster  
-
-	lirc_client: read_string() not terminating buffer contents (#216);
-	Lack og trailing '\0' in certain situations causes segfaults
-	in irsend.
-
-2016-08-01  Craig Andrews  
-
-	build: Don't define docdir - autoconf defines docdir
-
-2016-08-01  Bengt Martensson  
-
-	girs.c: Mark last of receive as LIRC_MODE2_TIMEOUT. Log improvements.
-
-2016-08-01  Craig Andrews  
-
-	build: Use $(runstatedir) to set VARRUNDIR (#212)
-	Use runstatedir (when available) to set VARRUNDIR instead of
-	using $(localstatedir)/run
-
-2016-08-01  Alec Leamas  
-
-	doc: lircd.conf: Document suppress_repeat.
-
-	irrecord: Enhance "Don't use devinput" message (#180).
-
-	lib:irrecord: Fix under-sized buffer (#208).
-
-2016-08-01  Helen Foster  
-
-	lib/lirc_client: Don't write to fd 0 (#207)
-	File descriptor 0 is normally stdin. On some systems, writing to it
-	seems to work, but stops the user redirecting the output. In
-	particular, this affected irsend LIST.
-
-2016-08-01  William Manley  
-
-	ftdi: Fix retry logic
-	...by closing the ftdi device before attempting to reopen it.  Otherwise
-	you get stuck in an infinite loop as `ftdi_usb_open_desc` will fail as the
-	device is already open.  I can't understand how this retry logic ever could
-	have worked for any errors apart from:
-
-	* Open failing
-	* Unplugging and replugging the ftdi device
-
-2016-08-01  William Manley  
-
-	ftdi: Don't error if the ftdi device doesn't have any data available yet
-	This can happen on first use of the device after rebooting.  This
-	previously caused lirc to hang with the ftdi subprocess stuck in a loop of
-	erroring and retrying.
-
-	ftdi: Log all errors from syscalls and libftdi
-	For easier debugging.
-
-	ftdi: Refactor to clarify looping logic
-	Previously this function was confusing because the loop/retry condition
-	`ret > 0` was far from the code that would set `ret` and `ret` could be the
-	return value from either `write` to lircd or `ftdi_read` from the hardware.
-
-2016-06-28  Alec Leamas  
-
-	Merge branch 'release-0_9_4' into release
-
-	Update for 0.9.4a
-
-	systemd: Fix syntax errors in systemd unit files (rhbz: 1350750)
-
-	systemd: Fix syntax errors in systemd unit files (rhbz: 1350750)
-
-2016-06-08  Alec Leamas  
-
-	doc: Skip the 'none' dummy driver config in generated table/hwdb (#202).
-
-	doc: Fix header for generated table.html (#202).
-
-	lirc-lsplugins: Fix for --yaml output(#202).
-
-2016-06-08  Bengt Martensson  
-
-	lircd: Typo in options decoding.
-
-2016-06-06  Alec Leamas  
-
-	irrecord: Enhance "Don't use devinput" message (#180).
-
-2016-06-03  Bengt Martensson  
-
-	lircd: Renamed option --immediate_init to immediate-init.
-
-2016-06-01  Bengt Martensson  
-
-	lircd.cpp: Implement --immediate-init option.
-
-2016-06-01  Aaron Thompson  
-
-	plugins/uirt2_raw: Reset device to UIR mode on deinit.
-	If the UIRT is left in RAW mode, it does not trigger wake from S3.
-	Setting the UIRT back to UIR mode on deinit allows wake from S3 to
-	work properly.
-
-2016-06-01  Alec Leamas  
-
-	plugins/uirt2_raw: Reset device to UIR mode on deinit.
-	If the UIRT is left in RAW mode, it does not trigger wake from S3.
-	Setting the UIRT back to UIR mode on deinit allows wake from S3 to
-	work properly.
-
-2016-06-01  Bengt Martensson  
-
-	plugins/girs.c: Enable reception after sending.
-
-	plugins/girs.c: Enable reception after sending.
-
-2016-06-01  Alec Leamas  
-
-	doc: Remove caraca references.
-
-2016-06-01  Christoph Bartelmus  
-
-	lirc.org: Update
-
-	lirc.org: Update
-
-2016-05-30  Alec Leamas  
-
-	tools/config.py: restore python3 shebang (BSD compilation).
-
-	Build: Various BSD distcheck fixes (#192).
-	Includes not building devinput.lircd.conf on non-linux hosts.
-
-2016-05-29  Bengt Martensson  
-
-	plugins/default: Handle  non-demodulated "IR" signals (#198).
-
-2016-05-28  Alec Leamas  
-
-	lircd, liblirc_client: Fix freeaddrinfo handling (#195).
-	freeaddrinfo() was used the wrong wa which caused a segfault using
-	--connect  and during a boot race condition. Fixed the bad usage
-	of freeaddrinf() in two places + some cleanup.
-
-	lircd, liblirc_client: Fix freeaddrinfo handling (#195).
-	freeaddrinfo() was used the wrong wa which caused a segfault using
-	--connect  and during a boot race condition. Fixed the bad usage
-	of freeaddrinf() in two places + some cleanup.
-
-2016-05-27  Bengt Martensson  
-
-	plugins/default: Dispatch LIRC_SET_TRANSMITTER_MASK to driver (#196).
-
-2016-05-27  Alec Leamas  
-
-	lirc_options.conf: debug => loglevel (#199).
-
-	lirc.org/index update.
-
-	doc: Remove local lirc.4 fix in Makefile.am.
-
-	lirc_options.conf: debug => loglevel (#199).
-
-2016-05-25  Thomas Petazzoni  
-
-	lib: use proper linking method to avoid parallel build issue
-	Using _LDFLAGS = -l is correct when  is an
-	external library. However, when it is built by the same package, and
-	especially in the same directory, this is wrong and can cause parallel
-	build issues. In lib/Makefile.am, there was:
-
-	libirrecord_la_LDFLAGS      = -llirc
-
-	But the liblirc library is built in the same directory. Or, due to the
-	using of _LDFLAGS, make is not aware of the build dependency
-	between libirrecord and liblirc.
-
-	To solve this, _LIBADD should be used instead, as follows:
-
-	libirrecord_la_LIBADD       = liblirc.la
-
-	This fixes parallel build issues seen by automated build tests
-	conducted by the Buildroot project, such as:
-
-	  http://autobuild.buildroot.org/results/eb4/eb47d57de8182d25b1dacbf0ac3726ed20063d04/build-end.log
-
-2016-05-25  Baruch Siach  
+2017-09-10  Alec Leamas  
 
-	tools: make_rel_symlink.py can also use python2
-	The make_rel_symlink.py script is compatible with both python2 and python3.
-	Don't hard code a requirement for python3.
+	plugins: srm7500: Fix device enumeration.
 
-2016-05-25  Thomas Petazzoni  
+	plugins: srm7500: Split some long lines.
 
-	lib: use proper linking method to avoid parallel build issue
-	Using _LDFLAGS = -l is correct when  is an
-	external library. However, when it is built by the same package, and
-	especially in the same directory, this is wrong and can cause parallel
-	build issues. In lib/Makefile.am, there was:
+2017-09-10  Henning Glawe  
 
-	libirrecord_la_LDFLAGS      = -llirc
+	plugins: srm7500: Add timeout to args of philipsrf_output().
 
-	But the liblirc library is built in the same directory. Or, due to the
-	using of _LDFLAGS, make is not aware of the build dependency
-	between libirrecord and liblirc.
+	plugins: srm7500: Add timeout to args of philipsrf_input().
 
-	To solve this, _LIBADD should be used instead, as follows:
+	plugins: srm7500: move usb_init() back to find_usb_device()
+	calling 'usb_find_devices' a second time (e.g. restarting irw)
+	caused a exception 'corrupted double-linked list', which is fixed by
+	this revert.
 
-	libirrecord_la_LIBADD       = liblirc.la
+	plugins: srm7500: Add macro SLEEP_NANO_500_us.
 
-	This fixes parallel build issues seen by automated build tests
-	conducted by the Buildroot project, such as:
+	plugins: srm7500: Add macro SLEEP_NANO_20_ms.
 
-	  http://autobuild.buildroot.org/results/eb4/eb47d57de8182d25b1dacbf0ac3726ed20063d04/build-end.log
+	plugins: srm7500: Fix whitespace/indent.
 
-2016-05-25  Baruch Siach  
+	plugins: srm7500: Explicitly close pipe on child exit.
+	Explicitly close sending end of pipe before child exit
 
-	tools: make_rel_symlink.py can also use python2
-	The make_rel_symlink.py script is compatible with both python2 and python3.
-	Don't hard code a requirement for python3.
+	plugins: srm7500: Debug-log exit of child.
 
-2016-05-24  Alec Leamas  
+	plugins: srm7500: Close receiving pipe as early as possible.
+	Close receiving end of pipe as early as possible in child process
 
-	lirc-lsplugins: Add support for displaying device enumeration.
+	plugins: srm7500: Deinitialize srm7500 receiver in main loop.
 
-	plugins/devinput: Announce the list-devices support.
+	plugins: srm7500: Move usb_init to before the srm7500 main loop.
 
-	plugins/devinput: Make the list-devices support available.
+	plugins: srm7500: Wait for usb receiver being available.
+	wait for presence of usb receiver instead of repeatedly failing
 
-	configure.ac: Bugfix (BSD setting reported wrong).
+	plugins: srm7500: deinit() error handling and nanosleep.
+	uadd error handling and nanosleep to srm7500_deinitialize_usbdongle
 
-	configure.ac: Bugfix (BSD setting reported wrong).
+	plugins: srm7500: Improve logging for 802.15.4 MAC initialization.
 
-	Don't build commandir unless we have usb.h (#191).
+	plugins: srm7500: Replace wait-for-mac by generic queue-flush
+	most probably due to the fixed low-level initialization code, there is
+	no MLME_SET_confirm.PIB_ATTR_macExtendedAddress packet observed
+	anymore.
+	Just in case, read all packets before setting up 802.15.4 mac layer
 
-	Don't build commandir unless we have usb.h (#191).
+	plugins: srm7500: Add philipsrf_output error* logging.
+	Add error logging to philipsrf_input and philipsrf_output wrapper functions
 
-	lirc.org: Bugfix.
+	plugins: srm7500: Log usb_close on level debug.
 
-2016-05-23  Alec Leamas  
+	plugins: srm7500: Clean up logging in first device init phase.
 
-	NEWS: update.
+	plugins: srm7500: Close dev_handle at error_label, if necessary.
 
-2016-05-23  Alec Leamas  
+	plugins: srm7500: Introduce 'error_label' goto target.
+	introduce goto label 'error_label' to srm7500_initialize_usbdongle
 
-	Build: Fix some BSD portability issues (#155).
-	  - Make implicit header sys/wait.h explicit.
-	  - cp -ar => cp -pr and sed => $(SED)
-	  - #!/bin/bash =>  #!/usr/bin/env bash
-	  - Handle missing modinfo by skipping kernel drivers.
-	  - Don't build plugins requiring linux-specific stuff.
-	  - and some more...
-
-	The bug is really about OSX, but this is what we do for now.
-	Package builds on FreeBSD 10.3, but cannot run 'make dist'
-	due to some files generated when doing 'make dist' requiring
-	linux tools.
+	plugins: srm7500: Add 500 us sleep (usb_control_msg fix).
+	Add some 500 microsecond sleeps in the hope to resolve the
+	usb_control_msg issue
 
-2016-05-23  Alec Leamas  
+	plugins: srm7500: Explicitly initialize dev_handle to NULL.
 
-	lib: Update version-info age part (added interfaces).
+	plugins: srm7500: log_perror_err() -> log_error().
+	Use log_error instead of log_perror_err when detaching kernel driver
 
-	NEWS: update
+	plugins: srm7500: Device reset: sleep 1s -> 20 ms.
+	sleep for 20ms instead of 1s after usb device reset
 
-	Revert "Build: Handle alternative usb.h locations."
-	This reverts commit 46fd216d0862cf3ed745fca5499f992779be0433.
+	plugins: srm7500: Read loop sleep: 2s -> 20 us.
+	sleep for 20 microseconds instead of 2 seconds after usb_read_loop
 
-	Documentation fixes.
+	plugins: srm7500: Add SLEEP_NANO wrapper around nanosleep.
 
-	plugins/default: Support the "auto" device.
-	Making the default and devinput driver support the "auto" device should
-	cope with a large number of trivial configurations.
+	plugins: srm7500: Add log msgs to usb device init.
 
-	lirc-setup: Add support for drvctl device enumeration.
+	plugins: srm7500: add usb_reset call (undef state cleanup).
+	clean up undefined state of usb dongle
 
-	lirc-setup: Fix bad imports (python gi lib update).
+	plugins: srm7500: Add log messages.
+	 Åre-initialization phase of SRM7500 usb dongle
 
-	Debian build: Kill some trivial lintian warnings.
+	plugins: srm7500: Add error messages
+	Messages for dongle and 802.15.4 initialization failure
 
-	gitignore: update.
+	plugins: srm7500: Fix typo in warning log msg.
 
-	plugins: Don't add trailing line on pluginlist.am.
+2017-09-10  Alec Leamas  
 
-	README: update.
+	build: configure.ac and lirc-postinstall cleanup.
 
-2016-05-15  William Manley  
+2017-09-10  Alec Leamas  
 
-	plugins/ftdi: Specify duty_cycle to fix ftdi driver
-	The recent commit c9afda9 added support for duty_cycle to the ftdi driver.
-	This worked for lircd config files that actually specified `duty_cycle`
-	but broke it for config files that didn't as it would default to 0 rather
-	than 50.
+	build: Fix build without Python.
+	Don't define HAVE_PYTHON35 when PYTHON_LIBS is empty.
 
-	Before this commit it was the responsibility of each driver that implements
-	duty_cycle to know about this default.  This fix centralises the defaults
-	by adding a getter function to `ir_remote`, simplifying the drivers.  As a
-	result, even though this patch is to fix a bug in ftdi it touches the
-	default driver too.
+	Also, don't build Python dependent code when HAVE_PYTHON35 is not
+	defined.
 
-	This issue didn't come up in testing c9afda9 because I'd only tested it
-	with config files that actually explicitly set duty_cycle.
+	This fixes build failures like:
 
-	For the ftdix driver I hard-code a duty_cycle of 50 because that's all it's
-	capable of.  Passing in duty_cycle to modulate_pulses in this instance was
-	misleading.
+	Makefile:1616: recipe for target 'python-pkg/dist/lirc-0.10.0.tar.gz' failed
+	make[3]: *** [python-pkg/dist/lirc-0.10.0.tar.gz] Error 1
+	python-pkg/lirc/_client.c:1:20: fatal error: Python.h: \
+	    No such file or directory
 
-	Kudos: Dave Röthlisberg (testing).
+2017-09-10  Bengt Martensson  
 
-2016-05-12  Alec Leamas  
+	lircd: Silly driver options to lircd should be fatal (#304).
 
-	doc: Try to fix broken html for lircd-uinput.8.
+2017-09-07  Baruch Siach  
 
-	gitignore: Update.*
+	build: Fix lirc version detection when cross compiling.
+	The setup.py script that runs on the host can't use the client library
+	built for target. So setup.py falls back to a wrong hard-coded VERSION
+	value.
 
-2016-05-10  Alec Leamas  
+	Instead of importing the target library, use exec() to read
+	lirc/config.py directly for its VERSION value.
 
-	doc: Add example udev rule for fixed /dev/lirc* links.
+	Fixes build failure:
 
-2016-05-09  Alec Leamas  
+	/usr/bin/install -c -m 644 ./python-pkg/dist/lirc-0.10.0.tar.gz \
+	    '.../output/host/arm-buildroot-linux-musleabihf/sysroot/usr/share/lirc'
+	/usr/bin/install: cannot stat './python-pkg/dist/lirc-0.10.0.tar.gz': \
+	    No such file or directory
 
-	build: Handle brain-dead Ubuntu systemd configuration.
+2017-09-05  Alec Leamas  
 
-2016-05-06  Nigel Kettlewell  
+	build: Mute automake warning.
 
-	plugins/uirt: Don't block if a 0xff is received by usb-uirt .
-	Periodically the usb§$-uirt-raw sends a short signal without any IR
-	activity. I don't know what the signal is, but as it's a "raw" receiver
-	I presume it's some interference.
+2017-09-03  Alec Leamas  
 
-	Regardless, the problem is that the uirt receiver code sees this short
-	signal, and the main loop goes back to the uirt2 code because there is
-	data remaining to be read. It reads a 0xff as the first byte in
-	uirt2_read_raw and that function goes back to read more .. but there
-	isn't any more, so it blocks forever because the main loop function gave
-	us a timeout of zero .. which is turned into an infinite timeout in
-	waitfordata.
+	build: Don't drop user CFLAGS (#306).
 
-	Subsequent IR keypresses DO work, because the blocking read gets some
-	data. But subsequent connections to the socket (e.g. by irw or irsend)
-	DON'T work: they block until some IR activity occurs which could be many
-	minutes later, because lircd is stuck in a poll on the USB fd, but isn't
-	polling on the socket connection fd, which is only done by the main
-	loop.
+	mode2: Fix inconsistent loglevel/debug option (#307).
 
-	There may other ways to fix this, but this does work. With the patch I
-	can always connect to the socket, and IR keypresses continue to be
-	processed correctly.
+2017-09-02  Alec Leamas  
 
-2016-05-06  Alec Leamas  
+	python-pkg: pylint indentation fic.
 
 	NEWS: update.
 
-	irrecord (lirc-make-devinput): Handle new include files (#187).
-
-	lirc-lsplugins: Handle plugins with errors in --yaml mode.
-
-2016-05-03  Alec Leamas  
-
-	tests: Bugfix.
-
-	Makefile.am: Bugfixes.
-	Makefile.am: bugfix.
-
-	plugins/default: Add device enumeration.
-
-	plugins/devinput: Add device enumeration.
-
-	lib/driver: Add some glob_t convenience stuff.
-
-2016-04-27  Alec Leamas  
-
-	git-tools/checkpatch.pl: Kill unescaped brace warning.
-
-	plugins/ftdi: Registration cleanup, checkpatch warnings.
-
-2016-04-27  William Manley  
-
-	plugins/ftdi: Add new ftdix driver + documentation.
-	Mode2 transmitter using the bitbang mode of an FTDI USB-to-serial chip such as
-	the FT230X.  The standard FTDI driver with the FT232R is unreliable having a
-	IR transmit failure rate of ~2%.  The FT232R also becomes unusable if you set
-	the tx_baud_rate to values other than 65536.
-
-	This driver works differently modifying its tx_baud_rate according to the
-	carrier frequency set.  This is ok because the FT230X does not have the timing
-	bugs present in the FT232R.  This allows much lower data rates over USB and
-	so improves reliablity, particularly if other devices are connect to the same
-	USB port.
-
-	Receive is not included to significantly simplify design of this driver.
-
-2016-04-27  Alec Leamas  
-
-	plugins/file: Fix bad test for LIRCCODE cases (#171).
-	Bug caused the file driver to emit "code" instead of pulse/space for
-	the last values in somw raw remotes.
-
-	lirs-lsremotes: Don't use non-standard GLOB_BRACE (#174).
-
-	doc: mode2.1 manpage update.
-
-2016-04-26  Helen Foster  
-
-	Fix  misleading logprintf comments (#179)
-
-2016-04-26  Alec Leamas  
-
-	tests: fix logging tests.
-
-	build: distcheck bugfix.
-
-2016-04-26  William Manley  
-
-	plugins/ftdi: Conform to lirc driver API v2 lifecycle expectations
-	As documented in a1c63fe.  Specifically:
-
-	> * At some later point, lirc calls the deinit() func. This puts the
-	>   driver in a stand-by state, from which it is a reasonably fast
-	>   operation to call `init_func()` again.
-	> * As a last operation, lirc might call the `close()` func. This
-	>   relinquishes all resources allocated by the driver.
-	> * functions are not guaranteed to be executed in the order described.
-	>   In general, the driver should not break if e. g., the `init()` or
-	>   `deinit()` function is called twice.
-
-2016-04-26  William Manley  
-
-	plugins/ftdi: Tear down subprocess if parent dies
-	If the lircd parent process is killed with SIGKILL it will be unable
-	to call `hwftdi_deinit` and so the subprocess it spawned will continue
-	living, keeping the ftdi device busy.  This change uses receiving EOF
-	on the pipe from the parent process as a signal that the parent process
-	has died and will shut itself down accordingly too.
-
-	plugins/ftdi: Add support for duty_cycle in lirc configuration file
-	An IR signal is modulated on a carrier.  The carrier consists of a square
-	wave of 0 and 1 at a default frequency of 38kHz.  The duty_cycle is the
-	percentage of the time that the carrier is at 1 rather than at 0 during
-	a carrier cycle.  It is in the range 1-99.
-
-	plugins/ftdi: Refactor pulling pulse creation function by itself
-	The new `write_pulse` function is more functional and less dependent on
-	the other implementation details of the ftdi driver.  This will give me
-	more oppertunity to investigate its operation.
-
-2016-04-26  Alec Leamas  
-
-	lib: Clean up loglevel handling (#178).
-
-2016-04-25  Bengt Martensson  
-
-	plugins:  girs.c bugfixes.
-	See https://sourceforge.net/p/lirc/mailman/message/34982405/
-
-2016-04-25  Alec Leamas  
-
-	Fix typo causing lost deinit_func() calls (#179).
-
-2016-01-25  Alec Leamas  
-
-	plugins/default: Work around kernel bug (#172).
-
-	irpipe: Bugfix.
-
-	plugins/file: Bugfix dumping non-LIRCCODE data (#171).
-
-	Add explicit default -L${libdir} linker flag.
-	Adding an explicit -L${libdir} is redundant on single-arch hosts
-	but is essential e. g., when building a 32-bit library on a 64-bit host.
-
-	build: Fix cleaning.
-
-	systemd: Remove space in key definitions
-	Spaces generates valid packaging warnings  on Debian (lintian).
-
-	drivers: Update iguanair plugin docs.
-
-	docs: update.
-
-	doc: Add a "Default Configuration" chapter.
-
-	Fix generation of plugin docs.
-
-	lircd-uinput.8: Fix bad section.
-
-	Fix Debian FTBS compilation error.
+2017-09-02  Bengt Martensson  
 
-2016-01-08  Alec Leamas  
+	girs.c: Implemented Removed LIRC_SET_REC_TIMEOUT support (#302).
+	Removed LIRC_SET_REC_TIMEOUT support, and similar. Doc update.
+	Instead new driver option: ending_timeout.  Cleaned logging.
 
-	Starting 0.9.5 cycle.
-
-2016-01-06  Alec Leamas  
-
-	docs: update.
-
-	README: update.
-
-	Fix --options-file option parsing (#165).
-
-	doc: Makefile.am distcheck bugfix.
-
-	Use kernel lirc.h if available (#163).
-
-2016-01-05  Alec Leamas  
-
-	Make --uinput a separate service lircd-uinput (#162-part1).
-
-	Upstream the lirc.4 manpage (#164).
-
-	doc: lirc.4 upstream review remarks fixes.
-	This version has been merged to upstream
-	http://git.kernel.org/cgit/docs/man-pages/man-pages.git
-
-2015-12-29  Alec Leamas  
-
-	Build: Fix clean errors.
-
-2015-12-08  Alec Leamas  
-
-	tools: Teach irpipe to handle LIRCCODE drivers.
-
-	plugins: file: Add sending of LIRCCODE files.
-
-	lib: log: Remove unused cruft.
-
-2015-12-02  Alec Leamas  
-
-	irpipe: Fix compiler option (breaks w recent kernel).
-
-2015-11-29  Nicolas  
-
-	Temporay fix for uinput device setup (#161).
-	We normally init the driver when the first client connects to
-	the socket, and calle deinit() whenthe last client disconnects.
-	Using uinput we connect at startup, and never disconnects.
-
-2015-11-24  Alec Leamas  
-
-	Revert use of CLOCK_MONOTONIC_RAW (#158).
-
-	Fix wrong device in 03e378f (#150, again).
-
-2015-11-07  Alec Leamas  
-
-	build: Fix getgroups(2) configuration (#155).
-
-2015-11-06  Alec Leamas  
-
-	lirc-config: pylint/pep8 cleanup + bad bugfix.
-
-	test: Update plugin count.
-
-	lircd: Add tentative Darwin timer handling.
-
-	build, lircd: Use CLOCK_MONOTONIC_RAW if available.
-
-2015-11-06  Jarkko Sonninen  
-
-	lircd: Fix sending gap between repeats (#158).
-
-2015-11-04  Alec Leamas  
-
-	plugins: Move iguanair driver out of tree.
-
-2015-11-03  Alec Leamas  
-
-	Remove in-source debian packaging files.
-
-	debian: Update.
-	- Follow-ups to kernel-drivers.dist handling.
-	- Be strict when checking for libftdi > 1.0.
-
-	All: MacOS compilation fixes (#155).
-	- Affects all parts
-
-2015-11-02  Alec Leamas  
-
-	Create kernel-driver.yaml data in runtime (#157).
-
-	log: Fix bad useconds typing in 9f8c440 (#159).
-
-	doc: Restore manpages destroyed by bdc7525.
-
-	debian: Fix some remarks from debian-mentors.
-
-2015-10-31  Alec Leamas  
-
-	debian: Bugfixes (#160).
-
-2015-10-28  Alec Leamas  
-
-	NEWS: drivers OOT move.
-
-	drivers: Update yard2 docs.
-
-2015-10-28  Jarkko Sonninen  
-
-	lib: Add microseconds to log time (#159).
-
-2015-10-28  Alec Leamas  
-
-	plugins: Move irman driver out of tree.
-	This removes all libirman dependencies from the main build tree.
-	The driver can be built and installed out of tree, after that
-	lirc has been installed.
-
-	plugins: Move yard2 driver out of tree.
-
-	doc: Add yard2 plugin documentation.
-
-2015-10-26  Alec Leamas  
-
-	debian: bugfixes.
-
-2015-10-25  Alec Leamas  
-
-	doc: Fix broken links.
-
-	doc: Add some missing files.
-
-	doc: Update (includes fixes to #154).
-	  - New substitution variable @website@ for manpage use.
-	  - irexec manpage overhaul.
-	  - New lircrc examples added to contrib.
-	  - New FTDI driver documentation.
-	  - New lircrc manpage.
-
-	Add a system-wide irexec service (#156).
-
-2015-10-25  Alec Leamas  
-
-	Add plugin device enumeration.
-	The only reliable way to enumerate devices, in particular the USB ones
-	is done by the driver. This adds a new option in the configs file +
-	a mode2 CLI option to display the values listed by the driver. The
-	actual code is a DRVCTL so it does not really change the driver
-	interface.
-
-	Implement in atilibusb and ftdi, the latter untested. The ftdi code
-	fixes an existing error in the drvctl_func.
-
-2015-10-25  Alec Leamas  
-
-	build: Fix OOT plugin docs generation, update example code.
-
-2015-10-19  Alec Leamas  
-
-	doc: Update.
-
-	contrib: Add a new "blacklist all" catch all rule, clean-up.
-
-	configs: Update.
-
-	lirc-setup: Bugfixes
-	Fix some glitches which surfaced when starting on Debian.
-
-	Create a devinput-based default setup (#106).
-	Using the devinput driver with the 'auto' device as default setup works
-	if there is a single remote with rc-based driver. While certainly not
-	covering all cases, it's a reasonable attempt - there is actually a
-	chance this "works" out of the box for some users.
-
-	irrecord:  Fix error messages (#152).
-
-	plugins: Add "No such file" logging to default (#151).
-
-2015-10-19  Alec Leamas  
-
-	Clean up generating of devinput.lircd.conf (#153).
-	The existing logic was completely broken. The idea to distribute
-	input_map.inc is wrong since it reflects the kernel on the machine
-	where it was created. Better then to just distribute a best-effort
-	devinput.lircd.conf + simple tool to re-generate it from the target
-	system kernel.
-
-	After patch there is just one single script used both when building and
-	when users re-generate devinput.lircd.conf.
-
-2015-10-19  Alec Leamas  
-
-	build:  Debian packaging build wrap-up.
-	Locating modinfo is causing some pain on Debian system which havn't
-	/sbin:/usr/sbin in $PATH. Locate using autoconf and use that value.
-	While we are on it, rename paths.py to config.py, which reflects the
-	purpose.
-
-	A VERSION file is added, installed as a document. Git version data
-	is updated at "make dist".
-
-	The debian packaging is updated, and outside the package the Fedora
-	debian toolchain has been updated so that source packages can be built.
-
-	Various bugfixes and clean-up.
-
-2015-10-16  Alec Leamas  
-
-	Add debian upstream packaging (#137).
-	Normally this is done downstream. However, with the Debian package
-	stalled at 0.9.0 we need to support some way for Debian users to
-	use a more recent version. Until the downstream situation improves
-	we need to carry this.
-
-2015-10-15  Alec Leamas  
-
-	lib: irrecord: Re-factoring bugfix (#147).
-
-2015-10-14  Alec Leamas  
-
-	doc: Add missing lircd-setup manpage.
-
-	doc: Add missing pronto2lirc manpage.
-
-2015-10-14  Alec Leamas  
-
-	contrib: Remove outdated start script lircs.
-
-	contrib: Remove init.d cruft (trust the packagers).
-
-2015-10-14  Alec Leamas  
-
-	Revert walk-around kernel bug fixes (#119, #148)
-	Reverting  "default: Conditionalize kernel bug walk-around"
-	(68e49ce4a) and "plugins: default: Work around kernel bug (#119)."
-	(19b01d0fc). The fix is broken, and the upstream bug is fixed
-	from kernel 4.1.6.
-
-2015-10-14  Bengt Martensson  
-
-	plugins:girs: Minor fixes (#150).
-
-2015-10-04  Jon Bergli Heier  
+2017-08-31  Alec Leamas  
 
-	lib: receive: Return 0 on poll() timeout.
+	build: Fix make "always build all" error.
 
-	lib: receive: Fixed timeout value for poll().
+2017-08-26  Alec Leamas  
 
-2015-10-03  Alec Leamas  
+	lib: Drop support for the GOLDSTAR flag in lircd.conf.
 
 	NEWS: update
 
-	Sanitize the for_each_plugin() signature.
-
-	doc, tools: Database distcheck fixes.
-
-	doc: Mega update.
-
-	doc: Provide a configuration-guide symlink to plugindocs.
-
-	lib, tools: Streamline application logging.
-
-2015-10-03  Alec Leamas  
-
-	lirc-setup: Update: tests, documentation links, bugfixes
-	- Added options for running mode2 and lircd+irw for selected config.
-	- Added documentation links for driver
-	- Support for /bin/sh driver hints scripts
-	- Added paths.py to substitute installation paths.
-	- Tons of bugfixes.
-
-	The UI has more or less collapsed and need an overhaul. However,
-	this seems at a glance funtionally complete.
-
-2015-10-02  Alec Leamas  
-
-	irrecord: Fix some messages.
-
-	plugins: Generate devinput.lircd.conf, fix obsolete file warning.
-	Add code to generate devinput.lircd.conf on current system. Fix warning
-	in devinput plugin for obsolete file.
-
-	plugins: Add some complicated device_hints.
-
-	configs: Fix yaml generation, bugfixes.
-
-2015-10-02  Alec Leamas  
-
-	lirc-lsplugins: Quote some YAML output.
-	The YAML parser is unhappy with more complicated shell commands in
-	the device_hint string. Write string as a double-quoted string,
-	quoting all \ to \\. The more YAML-friendly single quoting doesn't
-	work since "'" is part of command shell commands.
-
-	Also adds the info string to the generated output.
-
-2015-10-02  Alec Leamas  
-
-	Revert "build: Add selinux policy."
-	Lets make an upstream policy patch instead:
-	https://github.com/fedora-selinux/selinux-policy/pull/41
+2017-08-24  Alec Leamas  
 
-	irrecord: Fix un-decodable buttons handling (#146).
+	irdb-get: Support reproducible builds [#301].
 
-	atilibusb: Fix crash for non-existing device (#145).
+2017-08-24  Ayke van Laethem  
 
-	lirc-lsplugins: Fix --plugindir not being respected (#144).
+	plugins: devinput: Fix glob "no match" error [#285].
+	See [63e041cc] and LIRC issue #285 (Debian: #860551).
 
-	tests: fix  expected driver count (girs => +1).
+2017-08-23  Alec Leamas  
 
-2015-09-29  Alec Leamas  
+	Update for 0.11.0
 
-	lib: Fix parsing of multiple files (#141).
-	In certain combinations of including multiple files which contains
-	concatened remotes the concatenated remotes were silently dropped.
+	build: Don't generate table.html in build - #286 part 2.
 
-2015-09-28  Alec Leamas  
+2017-08-22  Alec Leamas  
 
-	Retire the caraca driver.
-	The driver depends on a library which isn't packaged in any major
-	distribution. The code is since 2002, and does not build. Keeping
-	the driver in attic for the time being.
+	lirc-postinstall: Update external driver docs.
 
-2015-09-27  Alec Leamas  
+2017-08-21  Alec Leamas  
 
-	NEWS:update
-
-	doc, tools: distcheck database fixes.
-
-	girs: Mute some checkfiles warnings.
-
-2015-09-27  Alec Leamas  
-
-	build: Add selinux policy.
-	The selinux policy is built if the libselinux-devel files (really
-	libselinux.pc) is present. The set of policies (mls, targeted) is
-	hardcoded in Makefile.am.  Although polices are built they are not
-	installed during 'make install'.
-
-	The long time solution is to add this policy to the upstream generic
-	one. However, using a package policy yields a faster turn-around in
-	the initial incarnations. There is also some problems with the
-	module naming:
-
-	https://github.com/fedora-selinux/selinux-policy/issues/38
-
-2015-09-27  Alec Leamas  
-
-	build: Generate devinput.lircd.conf.
-	The devinput.lircd.conf reflects the host (i. e., the kernel) rather
-	than any external hardware. Thus it makes sense to rebuild it
-	as part of the build so an actual up-to-date version always is
-	available.
-
-	doc: Fix install-time paths in manpages (#140).
-	Add build mechanics to patch installation paths in manpages and
-	apply them for /var/run (@varrundir@) and /etc (@etcdir@).
-
-	irrecord: Fix get_toggle_mask infinite loop (#139).
-
-	irrecord: From mailing list: improve some text.
-
-2015-09-27  Alec Leamas  
-
-	tools: irrecord, mode2, xmode2: Options and default values.
-	As pointed out in the mailing list, using the lircd values for
-	driver and device are reasonable fallbacks when no value
-	exists in the [irrecord] section. While we are on it, fix
-	debuglevel and plugindir as well. This fix:
-
-	 - Makes all three tools handle --device, --driver, --debug
-	   --plugindir, --options-file and --keep-root in a uniform way.
-	 - Makes all three tools fall back to the [lircd] section for
-	   --driver, --device, --plugindir and --debug if not defined
-	   elsewhere.
-	 - Adds feedback for effective driver and device.
-	 - Makes a manpage overhaul.
-
-2015-09-27  Alec Leamas  
-
-	plugins: Add document reference in .info.
-	For those drivers which have documentation, linking to that seems to
-	be a Good Thing. Moving the plugindocs dir declared in lirc-driver.pc
-	fomr /usr/share to /usr/share/doc. This is a border case, the driver
-	works without the docs but contains a link to it.
-
-	doc: Add out-of-tree plugin docs generation.
-
-	doc: Adding irman driver doc sketch.
-
-	doc: Driver API logging update.
-
-	logging: Macroize logperror.
-
-	logging: Macroize standard logprintf usecases.
-	Using macros is a better interface, and opens up for addding e. g.,
-	file and line number to messages.
-
-	logging: replace LOGPERROR ->logperror.
-
-	logging: Replace LOGPRINTF -> logprintf (#129).
-
-	configs: bugfixes, README update.
-
-	Lower priority of duplicate codes messages.
-	The messages about multiple definitions or multiple values are
-	far from severe. In many cases the codes are defined this way
-	deliberately. NOTICE is more appropriate.
-
-	mode2: Clean up stdout/stderr output(#142).
-	Old code puts error messages on stdout which is a plain bug.
-	Fix this. While we're on it: fix some message definitions.
-	Raise default loglevel to DEBUG.
-
-	girs: Add configs/ file.
-	From a user perspective, the girs driver is as of now Arduino
-	support and this config file presents it as such. It is perfectly
-	possible to add another one named "girs" presenting the driver as
-	a generic tool should the need arise.
-
-	girs: Add device_hint, update to API version 3.
-
-2015-09-27  Bengt Martensson  
+	build: Add lirc-postinstall - #286 part 1.
 
-	Girs driver: completed code, documented.
-
-2015-09-24  Alec Leamas  
-
-	irrecord: Fix insane driver default being devinput.
-
-2015-09-22  Alec Leamas  
-
-	Merge branch 'config'
-	A bunch of fixes which eventually updates the configuration data
-	database. The input is coming from several sources ending up in
-	a number of yaml files in configs/. The database has a python API;
-	current code is updated to use this uniform API.
-
-	The driver api is bumped after adding configuration hooks to the
-	drivers.
-
-2015-09-22  Alec Leamas  
-
-	contrib: Add generic USB devices permissions rule
-
-	Documentation: updates for configuration tools.
-
-	datatable: Adapt to new database format.
-
-	data2hwdb: Adapt to new data model.
-
-	lirc-setup: Handle local files, fix some deprecations.
-
-	lirc-setup: Adapting to new data model.
-
-	build: Add mechanics to build *yaml files.
-
-	Adding new lirc-kerneldrivers tool.
-
-	configs/README: Provisionary config file documentation.
-
-	configs: Update to new standards, resurrect most in attic.
-	The open question is how many configs using the 'default' driver that
-	actually are supported by the kernel. The first one who actually
-	tries will know, there isn't much of an alternative (?).
-
-2015-09-22  Alec Leamas  
-
-	configs: Nove obsolete configs to attic
-	The lirc_gpio driver is retired since long. Moving configs
-	depneding on this driver to new "attic" place so they can
-	still be found if someone wants to resurrect them.
-
-	The wpc8769l driver didn't make it when the lirc drivers were
-	upstreamed to the kernel. Moving the config to the attic, and
-	re-adding the kernel driver (which doesn't build as-is) if
-	someone want's to resurrect them.
-
-2015-09-22  Alec Leamas  
-
-	configs: First stab on kernel-drivers.dist.
-
-	irdb-get: Add support for creating confs_by_driver yaml.
-	   - New yaml-config subcommand creates confs_by_driver.yaml
-	   - Add support for XDG_CACHE_HOME for cached directory
-	   - Add testing environment variables.
-	   - Add -v/--version support
-
-	lirc-lsplugins: Add support for yaml listing.
-
-	plugins: Show real device in error feedback.
-	For drivers which autodetects devices the probed the device should
-	be made available as early as possible in driver.device so that
-	error messages can reflect the probed device.
-
-2015-09-21  Alec Leamas  
-
-	plugins: Add configuration data, API version bump to 3.
-
-	plugins: devinput: Handle larger events (kernel interface update).
-	kernel input events are now 24 bytes, breaking some hard-coded
-	limits in both this driver and in mode2. Bump driver interface
-	version.
-
-	NEWS: update.
+2017-08-19  Alec Leamas  
 
-2015-09-20  Alec Leamas  
+	doc: Remove lirc.hwdb support.
 
-	mode2: Make read buffer size dynamic.
-	New input size from the /dev/input events breaks hard-coded limits.
-	Instead of just raising the limits makes the size dynamic.
+	doc: build typo.
 
-	plugins: devinput: Add DRVCTL_GET_RAW_CODELENGTH support.
-	If mode2 should work, it needs to read the correct number of bytes
-	when reading from /dev/input devices. This is required, since
-	this driver does not implement readdata().
+	build: Fix missing media/lirc.h (BTS #872074).
 
-	lib: Add new DRVCTL_GET_RAW_CODELENGTH drvctl command.
+2017-06-30  Alec Leamas  
 
-	lib: Use correct groups when dropping CLI privileges.
+	doc: lirc.org: Update packaging linux distro list.
 
-2015-09-19  Alec Leamas  
+	Build: walk-around autoconf bug 19964 (#297).
+	Build breaks if lirc top-level dir parent contains files like
+	install.sh. This is the knownn and open autoconf bug
+	https://lists.gnu.org/archive/html/bug-automake/2015-02/msg00003.html
+	with this work-around provided by upstream.
 
-	plugins: file.c: Fix off-by-one sscanf error (#138).
+2017-06-28  Alec Leamas  
 
-2015-09-18  Alec Leamas  
+	build:  Makefile.am: kill duplicated line.
 
-	lib: Use getaddrinfo instead of gethostbyname (#122).
+2017-06-24  Alec Leamas  
 
-	lircd: Use getaddrinfo instead of gethostbyname (#122).
-	Also: refactor some code.
+	build: Align with release-0.10 branch.
 
-	NEWS:update.
+2017-06-24  Baruch Siach  
 
-	doc: Major update.
-	  Configuration guide:
-	     - New appendix "Handling USB HID devices".
-	     - New appendix "Using irrecord".
-	     - New appendix "Running as a regular user".
-	  Fix rpmlint manpage warnings
-	  Add note on bundled header in lirc(4).
-	  irsend: Fix help message + manpage glitch.
-	  Various bugfixes.
-
-	Add lircd setup tool (#121).
-
-	plugins/default: Just check lirc protocol if read-only access (#133).
-	When assuring the the used protocol is 'lirc' in the current rc device,
-	first check if it's already set. If OK, the code works without write
-	access.
-
-	plugins/devinput: Add an "auto" device (#134).
-
-2015-09-18  Alec Leamas  
-
-	Clean up documentation (#136).
-	Remove the manpages under html/ and mode everything to lirc.org.
-	Clean up some links and symlinks. Remaining symlinks reflects
-	the different view from api-docs/ and lirc.org/html.
-
-	The symlinks can now be easily expanded using tar --dereference.
-
-2015-09-09  Alec Leamas  
-
-	lib: Fix missing --lirc flag.
-	This is not strictly required, the linker resolves the symbols anyway.
-	However, there is packaging noise without it.
-
-	irrecord: Fix crash when invoked without arguments.
-
-2015-09-08  Alec Leamas  
-
-	checkfiles: Mute needless kernel.space check (#135).
-
-	Revert "tools: Add missing file lirc-setup/database.py."
-	This reverts commit 034bc3b198a057427d79d4bd93a40234936be1cc, which is
-	part of a yet-not-merged feature branch.
-
-2015-09-07  Alec Leamas  
-
-	default: Conditionalize kernel bug walk-around
-	The fix introduced in "19b01d plugins: default: Work around kernel bug
-	(#119)" does not play with the regression tests.  Add a simple fix
-	which disables the fix if LIRC_REGRESSION_TEST is defined in the
-	environment for now, better long-term strategies are needed later,
-	and update the test script.
-
-	contrib: Update release process.
-
-	Restore some old files to original shape.
-
-	plugins: update version info.
-
-	irsimreceive: Fix -U option parsing bug.
-
-	tools: Add missing file lirc-setup/database.py.
-
-2015-09-03  Alec Leamas  
-
-	plugins: Update to checkpatch standards.
-
-	lirc_options.conf: Clean-up.
-
-	lirc-config-tool: Update some heuristics.
-
-	Updating to 0.9.4-devel
-
-	Link a single large doc file to keep dist archives sane.
-	WHile it's good thing to have everything in the archive (and versioned)
-	this single seldom read PDF doubles the distribution size. Store
-	it on sourceforge outside the git repo and link to it.
-
-	gitignore
-
-	Documentation (README, Install.txt, lirc.org/index.html) fixed.
-
-2015-08-28  Alec Leamas  
-
-	lircd: Fix unloadable driver error message (#128).
-
-	lircd: Fix crash in debug output (#126).
-
-	lircd: Don't require unused arguments (#131).
-
-	lib: Add explicit default value for lircd.conf:frequency (#132).
-
-	build: Don't hardcode -j make flags (#130).
-
-2015-08-23  Alec Leamas  
-
-	configure.ac: Don't meddle with CFLAGS (again!) (#127).
-
-2015-08-20  Alec Leamas  
-
-	Build: fix dependencies.
+	lib/curl_poll.h: fix header guard collision with musl libc
+	The musl libc uses the _POLL_H macro as a double include guard for the poll.h
+	header. This breaks compilation of files the include curl_poll.h:
 
-	doc: Update
+	In file included from driver.h:32:0,
+	                 from driver.c:12:
+	lirc/curl_poll.h:38:29: error: array type has incomplete element type ‘struct pollfd’
+	 int curl_poll(struct pollfd ufds[], unsigned int nfds, int timeout_ms);
+	                             ^~~~
 
-	doc: driver-api: Add permissions text.
+	Rename the curl_poll.h header guard macro to avoid collision. Don't use a name
+	that starts with an underscore and a capital letter since these names are
+	reserved according to the ANSI C standard.
 
-	configure.ac: Don't hardcode CFLAGS (#124).
+	https://www.gnu.org/software/libc/manual/html_node/Reserved-Names.html
 
-	irrecord-ui: Handle remotes without gap (#98).
+2017-06-24  Alec Leamas  
 
-	irrecord-ui: Fix -k option parsing bug.
+	build: Missing dep, repeated builds and clean fixes.
 
-	lib: Create log directory if missing (#125).
+	python-pkg: Don't distribute test if python < 3.5.
 
-	lib: irrecord: Rewrite insane waitfordata loop.
+	build: Update ABI version info for 0.10.0.
 
-	lirc-setup: Fix missing item in lirc_options.
+	doc: Updates.
 
-	lirc-setup: Fix for compressed kernel modules, typos.
+	lircmd: Don't write on non-existing socket (#295).
 
-	tools: Add -h/--help to pronto2lirc.
+	Don't distribute generated config.h, config.py and paths.h (#294).
 
-	tools: Pylint/pep8 fixes.
+	build: Fix VPATHS builds (#294).
 
-	lirc-lsplugins: Fix left-over log file.
-	lsplugins left logfile on current directory, fixed.
+	doc: Fix python document generation.
+	Add missing python filters to distribution, and ensure it works
+	with alternative  python interpreters.
 
-2015-08-20  Alec Leamas  
+	build: Don't hardcode python3 interpreter name.
+	Fixes build errors on hosts where python3 is invoked e. g.,
+	as python3.5.
 
-	Build: Add configdir and plugindocs pkg-config support.
-	Add configdir pkg-config variable so that plugins compiled
-	out-of-tree knows where to install configuration. Likewise
-	add a new plugindocs directory wheer plugins can install docs.
-	Having these available using pkg-config mean that drivers
-	don't need to be configured.
+	Build: fix bad link tools/lirc-setup/config.py
 
-2015-08-17  Alec Leamas  
+	Build: Fix timestamps in generated tarball.
+	The debian buildchain requires generated tarballs to have the
+	same timestamps to be considered equal. So, set the timestamps
+	of generated files to the git commit date.
 
-	tools: Fix bad typo creating lirc_lsremotes, not lirc-lsremotes.
+	Build: fix linking issue.
 
-2015-08-16  Alec Leamas  
+	Build: Use correct python interpreter.
 
-	tests: Adjust # plugins.
+	doc: Mute annoying build error message.
 
-	lirc-lsplugins: Use puts when applicable.
+	doc: Deprecate lirc.hwdb, NEWS update.
 
-	lircd: --effective-user: Set also gid (RH bz 1253907).
+2017-06-24  Alec leamas  
 
-	doc: Add missing files.
-	This should teach me to run distcheck from a fresh clone.
+	build: Mageia fixes
 
-	doc: Updates, bugfixes.
-	 - NEWS updated
-	 - Driver api: Refer to manpage instead of duplicate.
-	 - Bundle and link NEWS in docs,
-	 - All sorts of typos etc.
-	 - Clean up some links.
-	 - All sorts of updates & fixes.
+2017-06-24  Alec Leamas  
 
-	tools: lirc-lsplugins: Patch legend info, fix irw formatting.
+	build: Let configure update also lib/lirc/config.h
 
-	lib: Typo fix.
+	lib: Fix missing #include config.h
 
-2015-08-16  Alec Leamas  
+	doc: Update.
 
-	lircd: Set supplementary groups (RH bz 1253907).
-	Setting effective user id isn't enough, we also need the supplementary
-	groups (e. g., to access /var/lock files).
+	build: Make it more quiet.
 
-	Downstream: https://bugzilla.redhat.com/show_bug.cgi?id=1253907
+2017-06-16  Alec Leamas  
 
-	This is perhaps no final solution, but definitely makes the semantics
-	better.
+	tests: Overall portability fixes.
+	  - Use correct lircrcd binary from development tree.
+	  - Use explicit /bin/bash shebang, don't trust /bin/sh to be bash.
+	  - Use lirc_set_verbose() to kill silly output.
 
-2015-08-16  Alec Leamas  
+	lib:lirc_client: Add lirc_set_verbose() function.
+	There has been no way to dynamically set the output flag defined
+	by lirc_init. The tests are a simple usecase requiring this, but it
+	aseems general enough to motivate a new function.
 
-	Removing remotes.
-	Since the regression tests now uses the sf remotes database
-	the local remotes are not required any more.
+2017-06-16  Alec Leamas  
 
-	plugins: default: Work around kernel bug (#119).
+	lircd: Reformat long lines
 
-	tools: pronto2lirc: Fix stoneage python syntax (#118).
+	lib, lircd: Remove --release support.
 
-	irrecord-ui: More user feedback, formatting.
+	irlog: enhance logging.
 
-	lib: irrecord: Fix debug output + formatting fixes.
+2017-06-16  Alec Leamas  
 
-	lircrcd: poll() bugfix.
+	Build: Disable non-linkable plugins on kfreebsd.
 
-	lircd: poll() bugfixes.
+2017-06-16  Alec Leamas  
 
-	irtestcase: LIRC_SOCKET_PATH handling bugfix.
+	python-pkg: tests: Don't hardcode socat and expect paths.
 
-2015-08-13  Alec Leamas  
+	Build: more distcheck.
 
-	plugins: Fix wrong driver configuring kernel (#99).
+	Build: distribute python test files.
 
-	build: Warn if python3 link is missing, clean-up.
+	Build: fix "make clean".
 
-2015-08-12  Alec Leamas  
+	Build: Revert timestamp fix.
 
-	build: Let configure die without suitbale python (#112)
+	Update for 0.10.0-rc2
 
-	tools: Clean up perror output using perrorf()
+	Build: distcheck fixes.
 
-	daemons: Clean up perror output using perrorf()
+	Build: non-linux FTBS fixes.
 
-	lib: Add perrorf() function, formatted perror() support.
+	Build: More python installation clean-up.
+	  - Move and install lirctool wrapper (but no link).
+	  - Don't hardcode python3 shebang
 
-2015-08-11  Alec Leamas  
+	attic: Remove attic from release branch.
 
-	Remove links on uninstall (#113).
-	Surprise: 'make distcheck' does not check for left-over links
-	after uninstall...
+	build: Rectify "make clean"
 
-2015-08-10  Alec Leamas  
+	python-pkg: tests: Use socat instead of ncat (#289).
+	Turns out that ncat exists in several version on Debian, all of
+	them broken somehow. socat seems more uniform and works in both
+	Fedora and Debian stretch.
 
-	No designated initializers in C++ (#111).
+	mode2: Actually parse the [mode2] config file section [#292].
+	Although the manpage describes how mode2 reads the [mode2] section
+	in the config file, the actual code for this was missing.
 
-	doc: bugfix.
+	irsimsend: Fix log setup typo.
 
-	doc: Yet another missing image.
+	lirc-setup: Clean up paths handling (#290)
 
-	doc: Move som stuff to configuration guide, more bugfix.
+	doc: Update.
+	  - Kill all 0.9.5 references.
+	  - Review lircd-uinput repeat handling after deprecating lircd
+	    --release option.
+	  - Rewrite intro chapter in Configuration guide.
+	  - Typos and clean-up.
 
-	build: distcheck/VPATH fixes.
+	build: m4: Clean up AX_PYTHON_MODULE
+	Attempt tp fix timed out builds on Debian m68k builders. Use
+	standard autoconf control flow functions, fix under-quoted
+	arguments, fix indentations.
 
-	doc: Update, fix links, reorganize.
-	- Update install info.
-	- Configure -> Configuration reference, bugfixes.
-	- Make a separate Program Overview.
-	- Manpages macro usage cleanup.
-	- Add som info on drivers.
-	- New iguanair driver doc.
-	- Fix broken links and missing images (lot's of them).
+2017-06-05  Christoph Bartelmus  
 
-	configs: Make iguanaIR driver conflict kernel's.
-	Basically, this is up to the iguanaIR tools from
-	IguanaIR, Inc. However, lirc's igunanair driver clearly
-	cannot work with the kernel iguanair, so conflict: it.
+	doc: lirc.org: Set left margin to 0
 
-	doc: distcheck fix.
+2017-05-20  Alec Leamas  
 
-2015-08-03  Alec Leamas  
+	irpipe: Use system lirc.h.
 
 	NEWS:update
 
-	doc: Move things from install and configure, clean up.
-
-	doc: Add driver support files info to driver API.
-	Clean up some things in technical and index.
-
-	doc: Move protocol info to manpages (lircd, lircrcd, lircmd).
-	The protocol info in technical.html is not updated, many (most?)
-	commands are missing. Moving to manpage to create better chance
-	for folks updating the code to also update the docs. Update manpages
-	to current status.
-
-	doc: Remove duplicated config tools text.
-
-	doc: Add sending to client manual.
-
-	doc: Expand api-docs on install and link to them.
-
-	doc: Add irpipe manpage.
-
-	doc: index: Clean up manpage TOC, add programs overview.
-
-	doc: install, technical: refresh, remove obsolete text.
-
-	doc: Makefile.am: Mute some garbage, bugfixes.
-
-2015-08-02  Alec Leamas  
-
-	doc: Really delete lirc_ioctl after merge.
-
-	lirc.org: Clean up intro text.
-
-	lirc.org: Update for 0.9.3.
-
-	daemons: Remove irsimsend and irsimreceive.
-	These adds more complexity to lircd, and we don't need that. The
-	new irsimsend + irpipe tools provides better substitutes.
-
-2015-08-01  Alec Leamas  
-
-	doc: Configuration Guide: html bugfix.
-
-	tools/irpipe: Nuke some compiler warnings.
-
-	tools: Makefile.am distcheck fix.
-
-	Merge lirc.4 and lirc_ioctl.4 manpages into lirc.4.
-	Also fix some review remarks fromm Michael Kerrick, Linux manpages
-	project.
-
-	doc: Add some missing manpage links.
-
-	doc: lircd manpage update.
-
-	doc: Remove bad links to lirc.org.
-
-	doc: Configuration Guide: Add tools and files appendixes.
-
-	doc: file-driver.html bugfix.
-
-	doc: Add table.html to lirc.org.
-
-	doc: Configuration Guide update.
-
-	Update lirc-codec-regression-test to use irpipe
-	New test does not use lircd.simsend or lircd.simreceive but are based
-	on the irpipe kernel driver.
-
-	tools: irpipe test tool added.
-	Userspace tool to handle the irpipe kernel driver.
-
-	Adding irpipe kernel test driver.
-
-	plugins: zotac: Use poll() instead of select().
-
-	plugins: uirt2_common: Use poll() instead of select().
-
-	plugins: uirt_common: Use poll() instead of select().
-
-	plugins: tira: Use poll() instead of select().
-
-	plugins:irtoy:Use poll() instead of select().
-
-	plugins: irlink: Use poll() instead of select().
-
-	plugins: IguanaIR: Use poll() instead of select().
-
-	plugins: atwf83: Use poll() instead of select().
-
-	lib: serial: Use poll() instead of select().
-
-	lib: receive: Use poll() instead of select().
-
-	irpty: Use poll() instead of select().
-
-	irrecord: Use poll() instead of select().
-
-	lircrcd: Use poll() instead of select().
-
-	lircd: Use poll() instead of select().
-
-2015-08-01  Bengt Martensson  
-
-	configure.ac: Typo fix (#110).
-
-2015-08-01  Alec Leamas  
-
-	irw: Make a clean exit on SIGUSR1.
-
-	NEWS: update
-
-	lirc-lsplugins: Display log after parsing file(s).
-
-	Check for button duplicates when parsing (#107).
-	The ticket is about (rightfully) about duplicate key names. While
-	we're on it, also check for duplicate values/data.
-
-	lircrcd: Remove superfluos PACKET_SIZE definition (#108).
-
-	lirc-config-tool: Mute bogus BTN_ and MOUSE_ warnings (#105)
-
-2015-08-01  lotan_rm  
-
-	irexec: Make lirc_init() before readconfig() (#102).
-
-2015-08-01  Alec Leamas  
-
-	irsimsend: Fix argument parsing -> -U/--pluginpath bugfix.
+	lircd: Deprecate --release option.
 
-	irsimsend: List all remote definitions, not just the first.
+	doc: Add release into index.html
 
-	irsimsend: bugfix.
+	build: Make it more quiet.
 
-	configs: Add irtoy item.
+	build: Update ABI version info (added interfaces).
 
-	gitignore: Update.
+	doc: Move upstreamed lirc.4 manpage to attic.
 
-	Updating version to 0.9.4
+	plugins/commandir: Mute compiler warnings (somewhat shaky).
 
-2015-08-01  Bengt Martensson  
+	build: Fix recent GCC compiler warnings.
 
-	plugins: irtoy: Added support for debug LEDs (RA2,...,RA5), new docs.
-	Original blinking when IR received caused problems, removed.
-	Use receivePin when listening (compatiblity with IrScrutinizer).
+2017-05-19  Alec Leamas  
 
-	Docs added (irtoy_driver.html).
+	formatting: checkpatch fixes.
diff -Nru lirc-0.10.1/INSTALL lirc-0.10.2/INSTALL
--- lirc-0.10.1/INSTALL	2017-09-10 08:52:38.000000000 +0000
+++ lirc-0.10.2/INSTALL	2022-10-04 08:02:31.000000000 +0000
@@ -1,8 +1,8 @@
 Installation Instructions
 *************************
 
-Copyright (C) 1994-1996, 1999-2002, 2004-2013 Free Software Foundation,
-Inc.
+   Copyright (C) 1994-1996, 1999-2002, 2004-2017, 2020-2021 Free
+Software Foundation, Inc.
 
    Copying and distribution of this file, with or without modification,
 are permitted in any medium without royalty provided the copyright
@@ -12,97 +12,96 @@
 Basic Installation
 ==================
 
-   Briefly, the shell command `./configure && make && make install'
+   Briefly, the shell command './configure && make && make install'
 should configure, build, and install this package.  The following
-more-detailed instructions are generic; see the `README' file for
+more-detailed instructions are generic; see the 'README' file for
 instructions specific to this package.  Some packages provide this
-`INSTALL' file but do not implement all of the features documented
+'INSTALL' file but do not implement all of the features documented
 below.  The lack of an optional feature in a given package is not
 necessarily a bug.  More recommendations for GNU packages can be found
 in *note Makefile Conventions: (standards)Makefile Conventions.
 
-   The `configure' shell script attempts to guess correct values for
+   The 'configure' shell script attempts to guess correct values for
 various system-dependent variables used during compilation.  It uses
-those values to create a `Makefile' in each directory of the package.
-It may also create one or more `.h' files containing system-dependent
-definitions.  Finally, it creates a shell script `config.status' that
+those values to create a 'Makefile' in each directory of the package.
+It may also create one or more '.h' files containing system-dependent
+definitions.  Finally, it creates a shell script 'config.status' that
 you can run in the future to recreate the current configuration, and a
-file `config.log' containing compiler output (useful mainly for
-debugging `configure').
+file 'config.log' containing compiler output (useful mainly for
+debugging 'configure').
 
-   It can also use an optional file (typically called `config.cache'
-and enabled with `--cache-file=config.cache' or simply `-C') that saves
-the results of its tests to speed up reconfiguring.  Caching is
-disabled by default to prevent problems with accidental use of stale
-cache files.
+   It can also use an optional file (typically called 'config.cache' and
+enabled with '--cache-file=config.cache' or simply '-C') that saves the
+results of its tests to speed up reconfiguring.  Caching is disabled by
+default to prevent problems with accidental use of stale cache files.
 
    If you need to do unusual things to compile the package, please try
-to figure out how `configure' could check whether to do them, and mail
-diffs or instructions to the address given in the `README' so they can
+to figure out how 'configure' could check whether to do them, and mail
+diffs or instructions to the address given in the 'README' so they can
 be considered for the next release.  If you are using the cache, and at
-some point `config.cache' contains results you don't want to keep, you
+some point 'config.cache' contains results you don't want to keep, you
 may remove or edit it.
 
-   The file `configure.ac' (or `configure.in') is used to create
-`configure' by a program called `autoconf'.  You need `configure.ac' if
-you want to change it or regenerate `configure' using a newer version
-of `autoconf'.
+   The file 'configure.ac' (or 'configure.in') is used to create
+'configure' by a program called 'autoconf'.  You need 'configure.ac' if
+you want to change it or regenerate 'configure' using a newer version of
+'autoconf'.
 
    The simplest way to compile this package is:
 
-  1. `cd' to the directory containing the package's source code and type
-     `./configure' to configure the package for your system.
+  1. 'cd' to the directory containing the package's source code and type
+     './configure' to configure the package for your system.
 
-     Running `configure' might take a while.  While running, it prints
+     Running 'configure' might take a while.  While running, it prints
      some messages telling which features it is checking for.
 
-  2. Type `make' to compile the package.
+  2. Type 'make' to compile the package.
 
-  3. Optionally, type `make check' to run any self-tests that come with
+  3. Optionally, type 'make check' to run any self-tests that come with
      the package, generally using the just-built uninstalled binaries.
 
-  4. Type `make install' to install the programs and any data files and
+  4. Type 'make install' to install the programs and any data files and
      documentation.  When installing into a prefix owned by root, it is
      recommended that the package be configured and built as a regular
-     user, and only the `make install' phase executed with root
+     user, and only the 'make install' phase executed with root
      privileges.
 
-  5. Optionally, type `make installcheck' to repeat any self-tests, but
+  5. Optionally, type 'make installcheck' to repeat any self-tests, but
      this time using the binaries in their final installed location.
      This target does not install anything.  Running this target as a
-     regular user, particularly if the prior `make install' required
+     regular user, particularly if the prior 'make install' required
      root privileges, verifies that the installation completed
      correctly.
 
   6. You can remove the program binaries and object files from the
-     source code directory by typing `make clean'.  To also remove the
-     files that `configure' created (so you can compile the package for
-     a different kind of computer), type `make distclean'.  There is
-     also a `make maintainer-clean' target, but that is intended mainly
+     source code directory by typing 'make clean'.  To also remove the
+     files that 'configure' created (so you can compile the package for
+     a different kind of computer), type 'make distclean'.  There is
+     also a 'make maintainer-clean' target, but that is intended mainly
      for the package's developers.  If you use it, you may have to get
      all sorts of other programs in order to regenerate files that came
      with the distribution.
 
-  7. Often, you can also type `make uninstall' to remove the installed
+  7. Often, you can also type 'make uninstall' to remove the installed
      files again.  In practice, not all packages have tested that
      uninstallation works correctly, even though it is required by the
      GNU Coding Standards.
 
-  8. Some packages, particularly those that use Automake, provide `make
+  8. Some packages, particularly those that use Automake, provide 'make
      distcheck', which can by used by developers to test that all other
-     targets like `make install' and `make uninstall' work correctly.
+     targets like 'make install' and 'make uninstall' work correctly.
      This target is generally not run by end users.
 
 Compilers and Options
 =====================
 
    Some systems require unusual options for compilation or linking that
-the `configure' script does not know about.  Run `./configure --help'
+the 'configure' script does not know about.  Run './configure --help'
 for details on some of the pertinent environment variables.
 
-   You can give `configure' initial values for configuration parameters
-by setting variables in the command line or in the environment.  Here
-is an example:
+   You can give 'configure' initial values for configuration parameters
+by setting variables in the command line or in the environment.  Here is
+an example:
 
      ./configure CC=c99 CFLAGS=-g LIBS=-lposix
 
@@ -113,21 +112,21 @@
 
    You can compile the package for more than one kind of computer at the
 same time, by placing the object files for each architecture in their
-own directory.  To do this, you can use GNU `make'.  `cd' to the
+own directory.  To do this, you can use GNU 'make'.  'cd' to the
 directory where you want the object files and executables to go and run
-the `configure' script.  `configure' automatically checks for the
-source code in the directory that `configure' is in and in `..'.  This
-is known as a "VPATH" build.
+the 'configure' script.  'configure' automatically checks for the source
+code in the directory that 'configure' is in and in '..'.  This is known
+as a "VPATH" build.
 
-   With a non-GNU `make', it is safer to compile the package for one
+   With a non-GNU 'make', it is safer to compile the package for one
 architecture at a time in the source code directory.  After you have
-installed the package for one architecture, use `make distclean' before
+installed the package for one architecture, use 'make distclean' before
 reconfiguring for another architecture.
 
    On MacOS X 10.5 and later systems, you can create libraries and
 executables that work on multiple system types--known as "fat" or
-"universal" binaries--by specifying multiple `-arch' options to the
-compiler but only a single `-arch' option to the preprocessor.  Like
+"universal" binaries--by specifying multiple '-arch' options to the
+compiler but only a single '-arch' option to the preprocessor.  Like
 this:
 
      ./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
@@ -136,105 +135,104 @@
 
    This is not guaranteed to produce working output in all cases, you
 may have to build one architecture at a time and combine the results
-using the `lipo' tool if you have problems.
+using the 'lipo' tool if you have problems.
 
 Installation Names
 ==================
 
-   By default, `make install' installs the package's commands under
-`/usr/local/bin', include files under `/usr/local/include', etc.  You
-can specify an installation prefix other than `/usr/local' by giving
-`configure' the option `--prefix=PREFIX', where PREFIX must be an
+   By default, 'make install' installs the package's commands under
+'/usr/local/bin', include files under '/usr/local/include', etc.  You
+can specify an installation prefix other than '/usr/local' by giving
+'configure' the option '--prefix=PREFIX', where PREFIX must be an
 absolute file name.
 
    You can specify separate installation prefixes for
 architecture-specific files and architecture-independent files.  If you
-pass the option `--exec-prefix=PREFIX' to `configure', the package uses
+pass the option '--exec-prefix=PREFIX' to 'configure', the package uses
 PREFIX as the prefix for installing programs and libraries.
 Documentation and other data files still use the regular prefix.
 
    In addition, if you use an unusual directory layout you can give
-options like `--bindir=DIR' to specify different values for particular
-kinds of files.  Run `configure --help' for a list of the directories
-you can set and what kinds of files go in them.  In general, the
-default for these options is expressed in terms of `${prefix}', so that
-specifying just `--prefix' will affect all of the other directory
+options like '--bindir=DIR' to specify different values for particular
+kinds of files.  Run 'configure --help' for a list of the directories
+you can set and what kinds of files go in them.  In general, the default
+for these options is expressed in terms of '${prefix}', so that
+specifying just '--prefix' will affect all of the other directory
 specifications that were not explicitly provided.
 
    The most portable way to affect installation locations is to pass the
-correct locations to `configure'; however, many packages provide one or
+correct locations to 'configure'; however, many packages provide one or
 both of the following shortcuts of passing variable assignments to the
-`make install' command line to change installation locations without
+'make install' command line to change installation locations without
 having to reconfigure or recompile.
 
    The first method involves providing an override variable for each
-affected directory.  For example, `make install
+affected directory.  For example, 'make install
 prefix=/alternate/directory' will choose an alternate location for all
 directory configuration variables that were expressed in terms of
-`${prefix}'.  Any directories that were specified during `configure',
-but not in terms of `${prefix}', must each be overridden at install
-time for the entire installation to be relocated.  The approach of
-makefile variable overrides for each directory variable is required by
-the GNU Coding Standards, and ideally causes no recompilation.
-However, some platforms have known limitations with the semantics of
-shared libraries that end up requiring recompilation when using this
-method, particularly noticeable in packages that use GNU Libtool.
-
-   The second method involves providing the `DESTDIR' variable.  For
-example, `make install DESTDIR=/alternate/directory' will prepend
-`/alternate/directory' before all installation names.  The approach of
-`DESTDIR' overrides is not required by the GNU Coding Standards, and
+'${prefix}'.  Any directories that were specified during 'configure',
+but not in terms of '${prefix}', must each be overridden at install time
+for the entire installation to be relocated.  The approach of makefile
+variable overrides for each directory variable is required by the GNU
+Coding Standards, and ideally causes no recompilation.  However, some
+platforms have known limitations with the semantics of shared libraries
+that end up requiring recompilation when using this method, particularly
+noticeable in packages that use GNU Libtool.
+
+   The second method involves providing the 'DESTDIR' variable.  For
+example, 'make install DESTDIR=/alternate/directory' will prepend
+'/alternate/directory' before all installation names.  The approach of
+'DESTDIR' overrides is not required by the GNU Coding Standards, and
 does not work on platforms that have drive letters.  On the other hand,
 it does better at avoiding recompilation issues, and works well even
-when some directory options were not specified in terms of `${prefix}'
-at `configure' time.
+when some directory options were not specified in terms of '${prefix}'
+at 'configure' time.
 
 Optional Features
 =================
 
    If the package supports it, you can cause programs to be installed
-with an extra prefix or suffix on their names by giving `configure' the
-option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
+with an extra prefix or suffix on their names by giving 'configure' the
+option '--program-prefix=PREFIX' or '--program-suffix=SUFFIX'.
 
-   Some packages pay attention to `--enable-FEATURE' options to
-`configure', where FEATURE indicates an optional part of the package.
-They may also pay attention to `--with-PACKAGE' options, where PACKAGE
-is something like `gnu-as' or `x' (for the X Window System).  The
-`README' should mention any `--enable-' and `--with-' options that the
+   Some packages pay attention to '--enable-FEATURE' options to
+'configure', where FEATURE indicates an optional part of the package.
+They may also pay attention to '--with-PACKAGE' options, where PACKAGE
+is something like 'gnu-as' or 'x' (for the X Window System).  The
+'README' should mention any '--enable-' and '--with-' options that the
 package recognizes.
 
-   For packages that use the X Window System, `configure' can usually
+   For packages that use the X Window System, 'configure' can usually
 find the X include and library files automatically, but if it doesn't,
-you can use the `configure' options `--x-includes=DIR' and
-`--x-libraries=DIR' to specify their locations.
+you can use the 'configure' options '--x-includes=DIR' and
+'--x-libraries=DIR' to specify their locations.
 
    Some packages offer the ability to configure how verbose the
-execution of `make' will be.  For these packages, running `./configure
+execution of 'make' will be.  For these packages, running './configure
 --enable-silent-rules' sets the default to minimal output, which can be
-overridden with `make V=1'; while running `./configure
+overridden with 'make V=1'; while running './configure
 --disable-silent-rules' sets the default to verbose, which can be
-overridden with `make V=0'.
+overridden with 'make V=0'.
 
 Particular systems
 ==================
 
-   On HP-UX, the default C compiler is not ANSI C compatible.  If GNU
-CC is not installed, it is recommended to use the following options in
+   On HP-UX, the default C compiler is not ANSI C compatible.  If GNU CC
+is not installed, it is recommended to use the following options in
 order to use an ANSI C compiler:
 
      ./configure CC="cc -Ae -D_XOPEN_SOURCE=500"
 
 and if that doesn't work, install pre-built binaries of GCC for HP-UX.
 
-   HP-UX `make' updates targets which have the same time stamps as
-their prerequisites, which makes it generally unusable when shipped
-generated files such as `configure' are involved.  Use GNU `make'
-instead.
+   HP-UX 'make' updates targets which have the same timestamps as their
+prerequisites, which makes it generally unusable when shipped generated
+files such as 'configure' are involved.  Use GNU 'make' instead.
 
    On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot
-parse its `' header file.  The option `-nodtk' can be used as
-a workaround.  If GNU CC is not installed, it is therefore recommended
-to try
+parse its '' header file.  The option '-nodtk' can be used as a
+workaround.  If GNU CC is not installed, it is therefore recommended to
+try
 
      ./configure CC="cc"
 
@@ -242,26 +240,26 @@
 
      ./configure CC="cc -nodtk"
 
-   On Solaris, don't put `/usr/ucb' early in your `PATH'.  This
+   On Solaris, don't put '/usr/ucb' early in your 'PATH'.  This
 directory contains several dysfunctional programs; working variants of
-these programs are available in `/usr/bin'.  So, if you need `/usr/ucb'
-in your `PATH', put it _after_ `/usr/bin'.
+these programs are available in '/usr/bin'.  So, if you need '/usr/ucb'
+in your 'PATH', put it _after_ '/usr/bin'.
 
-   On Haiku, software installed for all users goes in `/boot/common',
-not `/usr/local'.  It is recommended to use the following options:
+   On Haiku, software installed for all users goes in '/boot/common',
+not '/usr/local'.  It is recommended to use the following options:
 
      ./configure --prefix=/boot/common
 
 Specifying the System Type
 ==========================
 
-   There may be some features `configure' cannot figure out
+   There may be some features 'configure' cannot figure out
 automatically, but needs to determine by the type of machine the package
 will run on.  Usually, assuming the package is built to be run on the
-_same_ architectures, `configure' can figure that out, but if it prints
+_same_ architectures, 'configure' can figure that out, but if it prints
 a message saying it cannot guess the machine type, give it the
-`--build=TYPE' option.  TYPE can either be a short name for the system
-type, such as `sun4', or a canonical name which has the form:
+'--build=TYPE' option.  TYPE can either be a short name for the system
+type, such as 'sun4', or a canonical name which has the form:
 
      CPU-COMPANY-SYSTEM
 
@@ -270,101 +268,101 @@
      OS
      KERNEL-OS
 
-   See the file `config.sub' for the possible values of each field.  If
-`config.sub' isn't included in this package, then this package doesn't
+   See the file 'config.sub' for the possible values of each field.  If
+'config.sub' isn't included in this package, then this package doesn't
 need to know the machine type.
 
    If you are _building_ compiler tools for cross-compiling, you should
-use the option `--target=TYPE' to select the type of system they will
+use the option '--target=TYPE' to select the type of system they will
 produce code for.
 
    If you want to _use_ a cross compiler, that generates code for a
 platform different from the build platform, you should specify the
 "host" platform (i.e., that on which the generated programs will
-eventually be run) with `--host=TYPE'.
+eventually be run) with '--host=TYPE'.
 
 Sharing Defaults
 ================
 
-   If you want to set default values for `configure' scripts to share,
-you can create a site shell script called `config.site' that gives
-default values for variables like `CC', `cache_file', and `prefix'.
-`configure' looks for `PREFIX/share/config.site' if it exists, then
-`PREFIX/etc/config.site' if it exists.  Or, you can set the
-`CONFIG_SITE' environment variable to the location of the site script.
-A warning: not all `configure' scripts look for a site script.
+   If you want to set default values for 'configure' scripts to share,
+you can create a site shell script called 'config.site' that gives
+default values for variables like 'CC', 'cache_file', and 'prefix'.
+'configure' looks for 'PREFIX/share/config.site' if it exists, then
+'PREFIX/etc/config.site' if it exists.  Or, you can set the
+'CONFIG_SITE' environment variable to the location of the site script.
+A warning: not all 'configure' scripts look for a site script.
 
 Defining Variables
 ==================
 
    Variables not defined in a site shell script can be set in the
-environment passed to `configure'.  However, some packages may run
+environment passed to 'configure'.  However, some packages may run
 configure again during the build, and the customized values of these
 variables may be lost.  In order to avoid this problem, you should set
-them in the `configure' command line, using `VAR=value'.  For example:
+them in the 'configure' command line, using 'VAR=value'.  For example:
 
      ./configure CC=/usr/local2/bin/gcc
 
-causes the specified `gcc' to be used as the C compiler (unless it is
+causes the specified 'gcc' to be used as the C compiler (unless it is
 overridden in the site shell script).
 
-Unfortunately, this technique does not work for `CONFIG_SHELL' due to
-an Autoconf limitation.  Until the limitation is lifted, you can use
-this workaround:
+Unfortunately, this technique does not work for 'CONFIG_SHELL' due to an
+Autoconf limitation.  Until the limitation is lifted, you can use this
+workaround:
 
      CONFIG_SHELL=/bin/bash ./configure CONFIG_SHELL=/bin/bash
 
-`configure' Invocation
+'configure' Invocation
 ======================
 
-   `configure' recognizes the following options to control how it
+   'configure' recognizes the following options to control how it
 operates.
 
-`--help'
-`-h'
-     Print a summary of all of the options to `configure', and exit.
+'--help'
+'-h'
+     Print a summary of all of the options to 'configure', and exit.
 
-`--help=short'
-`--help=recursive'
+'--help=short'
+'--help=recursive'
      Print a summary of the options unique to this package's
-     `configure', and exit.  The `short' variant lists options used
-     only in the top level, while the `recursive' variant lists options
-     also present in any nested packages.
-
-`--version'
-`-V'
-     Print the version of Autoconf used to generate the `configure'
+     'configure', and exit.  The 'short' variant lists options used only
+     in the top level, while the 'recursive' variant lists options also
+     present in any nested packages.
+
+'--version'
+'-V'
+     Print the version of Autoconf used to generate the 'configure'
      script, and exit.
 
-`--cache-file=FILE'
+'--cache-file=FILE'
      Enable the cache: use and save the results of the tests in FILE,
-     traditionally `config.cache'.  FILE defaults to `/dev/null' to
+     traditionally 'config.cache'.  FILE defaults to '/dev/null' to
      disable caching.
 
-`--config-cache'
-`-C'
-     Alias for `--cache-file=config.cache'.
-
-`--quiet'
-`--silent'
-`-q'
+'--config-cache'
+'-C'
+     Alias for '--cache-file=config.cache'.
+
+'--quiet'
+'--silent'
+'-q'
      Do not print messages saying which checks are being made.  To
-     suppress all normal output, redirect it to `/dev/null' (any error
+     suppress all normal output, redirect it to '/dev/null' (any error
      messages will still be shown).
 
-`--srcdir=DIR'
+'--srcdir=DIR'
      Look for the package's source code in directory DIR.  Usually
-     `configure' can determine that directory automatically.
+     'configure' can determine that directory automatically.
 
-`--prefix=DIR'
-     Use DIR as the installation prefix.  *note Installation Names::
-     for more details, including other options available for fine-tuning
-     the installation locations.
+'--prefix=DIR'
+     Use DIR as the installation prefix.  *note Installation Names:: for
+     more details, including other options available for fine-tuning the
+     installation locations.
 
-`--no-create'
-`-n'
+'--no-create'
+'-n'
      Run the configure checks, but stop before creating any output
      files.
 
-`configure' also accepts some other, not widely useful, options.  Run
-`configure --help' for more details.
+'configure' also accepts some other, not widely useful, options.  Run
+'configure --help' for more details.
diff -Nru lirc-0.10.1/Makefile.am lirc-0.10.2/Makefile.am
--- lirc-0.10.1/Makefile.am	2017-09-10 08:52:19.000000000 +0000
+++ lirc-0.10.2/Makefile.am	2022-10-03 09:34:07.000000000 +0000
@@ -10,11 +10,16 @@
 GIT_COMMIT      = $(shell git log -1 --pretty=format:%h || echo UNKNOWN)
 GIT_DATE        = $(shell git log -1 --pretty=format:%cd || echo UNKNOWN)
 GIT_REFS        = $(shell git log -1 --pretty=format:%d || echo UNKNOWN)
+GIT_DATE_ISO    = $(shell git log -1 --pretty=format:%ci || date +"%F %T")
 
-BASE_VERSION            = $(subst -rc,rc,$(subst -devel,,$(VERSION)))
+BASE_VERSION    = $(subst -rc,rc,$(subst -devel,,$(VERSION)))
 
-VERBOSE                 = $(subst 0,,$(V))
-AM_LIBTOOLFLAGS         = $(if $(VERBOSE),,--silent)
+VERBOSE         = $(subst 0,,$(V))
+AM_LIBTOOLFLAGS = $(if $(VERBOSE),,--silent)
+
+DPY_PKG          = notused
+PY_PKG_CFLAGS   = -I$(abs_top_srcdir)/lib -I$(abs_builddir)/lib $(CFLAGS)
+PY_PKG_LFLAGS   = -L$(abs_builddir)/lib/.libs $(LDFLAGS)
 
 if HAVE_PYTHON35
 PYTHON_TARBALL          = python-pkg/dist/lirc-$(BASE_VERSION).tar.gz
@@ -25,7 +30,7 @@
 
 DISTCLEANFILES          = configure.sh  ChangeLog paths.h
 CLEANFILES              = *~ remotes/*~ contrib/*~ devinput.lircd.conf
-CHANGELOG_REVS          = lirc-0_9_4..HEAD
+CHANGELOG_REVS          = lirc-0.10.0..HEAD
 MANTAINERCLEANFILES     = config.sub install-sh depcomp py-compile \
                           missing libtool plugins/Makefile.am
 
@@ -67,9 +72,11 @@
 dist_pkgconfig_DATA     = lirc.pc lirc-driver.pc
 
 headerdir               = $(includedir)/lirc
-nobase_header_HEADERS   = include/media/lirc.h \
-                          include/linux/input-event-codes.h
-header_HEADERS          = drivers/irpipe/irpipe.h
+header_HEADERS          = include/linux/input-event-codes.h \
+                          drivers/irpipe/irpipe.h
+
+mediadir                = $(includedir)/lirc/media
+media_HEADERS           = include/media/lirc.h
 
 py_pkgdir               = $(pkgdatadir)/python-pkg
 dist_py_pkg_DATA        = python-pkg/setup.py \
@@ -104,6 +111,7 @@
 
 libpython               = $(libdir)/python$(PYTHON_VERSION)
 pydir                   = $(libpython)/site-packages/lirc
+if HAVE_PYTHON35
 py_LTLIBRARIES          = python-pkg/lib/_client.la
 python_pkg_lib__client_la_SOURCES = \
                           python-pkg/lirc/_client.c
@@ -116,6 +124,7 @@
                           $(PYTHON_LIBS)
 python_pkg_lib__client_la_LIBADD = \
                           lib/liblirc_client.la
+endif
 
 pylint: .phony
 	$(MAKE) -C tools pylint
@@ -129,26 +138,24 @@
 if HAVE_PYTHON35
 all-local:
 	cd python-pkg; \
-	    CFLAGS="-I$(abs_top_srcdir)/lib -I$(abs_builddir)/lib" \
-	    LDFLAGS=-L$(abs_builddir)/lib/.libs $(PYTHON) setup.py \
-	    $(if $(VERBOSE),,-q) build
+	    $(SETUPTOOLS_ENV) \
+	    CFLAGS="$(PY_PKG_CFLAGS)" LDFLAGS="$(PY_PKG_LFLAGS)" \
+	    $(PYTHON) setup.py $(if $(VERBOSE),,-q) build
 endif
 
 install-data-hook:
 	$(SED) -i -e '/^plugindir/s|/usr/lib|$(libdir)|' \
 	    $(DESTDIR)$(lirc_confdir)/lirc_options.conf
 	cp -pr $(srcdir)/contrib $(DESTDIR)$(pkgdatadir)
-	chmod u+w $(DESTDIR)$(includedir)
-	cd $(DESTDIR)$(includedir)/lirc; ln -s include/media .
 
 uninstall-hook:
 	-chmod -R u+w $(DESTDIR)/$(pkgdatadir)/contrib
 	-rm -rf $(DESTDIR)/$(pkgdatadir) \
 	        $(DESTDIR)/$(pkgpythondir) \
-	        $(DESTDIR)/$(pkgdatadir)/contrib \
-		$(DESTDIR)$(includedir)/lirc
+	        $(DESTDIR)/$(pkgdatadir)/contrib
 
 dist-hook: ChangeLog fix-version
+	touch -d "$(GIT_DATE_ISO)" $(distdir)/lib/lirc/* VERSION
 	cp -pr $(srcdir)/contrib $(distdir)
 
 clean-local:
@@ -176,23 +183,25 @@
 
 $(PYTHON_TARBALL): $(abs_builddir)/python-pkg/setup.py
 	cp $(top_builddir)/VERSION $(abs_builddir)/python-pkg
-	cd $(abs_builddir)/python-pkg; CFLAGS=-I$(abs_top_srcdir)/lib \
-	    LDFLAGS=-L$(abs_builddir)/lib/.libs $(PYTHON) setup.py -q sdist
+	cd $(abs_builddir)/python-pkg; \
+	    CFLAGS="$(PY_PKG_CFLAGS)" LDFLAGS="$(PY_PKG_LFLAGS)" \
+	    $(SETUPTOOLS_ENV) \
+	    $(PYTHON) setup.py -q sdist
 
 $(top_builddir)/python-pkg/VERSION: VERSION
 	cp $? $@
 
 python-pkg/lirc/config.py: Makefile  $(abs_builddir)/python-pkg/setup.py
-	@echo '""" Generated by lib/Makefile.am."""' >$@
-	@echo 'DATADIR = "$(datadir)"' >>$@
-	@echo 'SYSCONFDIR = "$(sysconfdir)"' >>$@
-	@echo 'VARRUNDIR = "$(localstatedir)/run"' >>$@
-	@echo 'LOCALSTATEDIR = "$(localstatedir)"' >>$@
-	@echo 'BINDIR = "$(bindir)"' >>$@
-	@echo 'LIBDIR = "$(libdir)"' >>$@
-	@echo 'DOCDIR = "$(docdir)"' >>$@
-	@echo 'MODINFO = "$(MODINFO)"' >>$@
-	@echo 'VERSION = "$(VERSION)"' >>$@
+	@echo '# Generated by lib/Makefile.am.' >$@
+	@echo 'DATADIR="$(datadir)"' >>$@
+	@echo 'SYSCONFDIR="$(sysconfdir)"' >>$@
+	@echo 'VARRUNDIR="$(localstatedir)/run"' >>$@
+	@echo 'LOCALSTATEDIR="$(localstatedir)"' >>$@
+	@echo 'BINDIR="$(bindir)"' >>$@
+	@echo 'LIBDIR="$(libdir)"' >>$@
+	@echo 'DOCDIR="$(docdir)"' >>$@
+	@echo 'MODINFO="$(MODINFO)"' >>$@
+	@echo 'VERSION="$(VERSION)"' >>$@
 
 paths.h: Makefile
 	@echo "#ifndef PATHS_H"          >paths.h
diff -Nru lirc-0.10.1/Makefile.in lirc-0.10.2/Makefile.in
--- lirc-0.10.1/Makefile.in	2017-09-10 08:52:38.000000000 +0000
+++ lirc-0.10.2/Makefile.in	2022-10-04 08:02:31.000000000 +0000
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.16.5 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2021 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -110,7 +110,7 @@
 	$(dist_py_pkg_DATA) $(dist_py_pkg_doc_DATA) \
 	$(am__dist_py_pkg_lirc_DATA_DIST) \
 	$(am__dist_py_pkg_test_DATA_DIST) $(header_HEADERS) \
-	$(nobase_header_HEADERS) $(am__DIST_COMMON)
+	$(media_HEADERS) $(am__DIST_COMMON)
 am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
  configure.lineno config.status.lineno
 mkinstalldirs = $(install_sh) -d
@@ -151,12 +151,15 @@
 	"$(DESTDIR)$(py_pkg_docdir)" "$(DESTDIR)$(py_pkg_lircdir)" \
 	"$(DESTDIR)$(py_pkg_testdir)" "$(DESTDIR)$(lircdconfigdir)" \
 	"$(DESTDIR)$(pkgdatadir)" "$(DESTDIR)$(headerdir)" \
-	"$(DESTDIR)$(headerdir)"
+	"$(DESTDIR)$(mediadir)"
 LTLIBRARIES = $(py_LTLIBRARIES)
-python_pkg_lib__client_la_DEPENDENCIES = lib/liblirc_client.la
+@HAVE_PYTHON35_TRUE@python_pkg_lib__client_la_DEPENDENCIES =  \
+@HAVE_PYTHON35_TRUE@	lib/liblirc_client.la
+am__python_pkg_lib__client_la_SOURCES_DIST =  \
+	python-pkg/lirc/_client.c
 am__dirstamp = $(am__leading_dot)dirstamp
-am_python_pkg_lib__client_la_OBJECTS =  \
-	python-pkg/lirc/python_pkg_lib__client_la-_client.lo
+@HAVE_PYTHON35_TRUE@am_python_pkg_lib__client_la_OBJECTS =  \
+@HAVE_PYTHON35_TRUE@	python-pkg/lirc/lib__client_la-_client.lo
 python_pkg_lib__client_la_OBJECTS =  \
 	$(am_python_pkg_lib__client_la_OBJECTS)
 AM_V_lt = $(am__v_lt_@AM_V@)
@@ -167,6 +170,8 @@
 	$(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
 	$(AM_CFLAGS) $(CFLAGS) $(python_pkg_lib__client_la_LDFLAGS) \
 	$(LDFLAGS) -o $@
+@HAVE_PYTHON35_TRUE@am_python_pkg_lib__client_la_rpath = -rpath \
+@HAVE_PYTHON35_TRUE@	$(pydir)
 AM_V_P = $(am__v_P_@AM_V@)
 am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
 am__v_P_0 = false
@@ -181,7 +186,9 @@
 am__v_at_1 = 
 DEFAULT_INCLUDES = -I.@am__isrc@
 depcomp = $(SHELL) $(top_srcdir)/depcomp
-am__depfiles_maybe = depfiles
+am__maybe_remake_depfiles = depfiles
+am__depfiles_remade =  \
+	python-pkg/lirc/$(DEPDIR)/lib__client_la-_client.Plo
 am__mv = mv -f
 COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
 	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
@@ -202,7 +209,7 @@
 am__v_CCLD_0 = @echo "  CCLD    " $@;
 am__v_CCLD_1 = 
 SOURCES = $(python_pkg_lib__client_la_SOURCES)
-DIST_SOURCES = $(python_pkg_lib__client_la_SOURCES)
+DIST_SOURCES = $(am__python_pkg_lib__client_la_SOURCES_DIST)
 RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
 	ctags-recursive dvi-recursive html-recursive info-recursive \
 	install-data-recursive install-dvi-recursive \
@@ -218,7 +225,7 @@
   esac
 am__py_compile = PYTHON=$(PYTHON) $(SHELL) $(py_compile)
 am__pep3147_tweak = \
-  sed -e 's|\.py$$||' -e 's|[^/]*$$|__pycache__/&.*.py|'
+  sed -e 's|\.py$$||' -e 's|[^/]*$$|__pycache__/&.*.pyc __pycache__/&.*.pyo|'
 am__py_PYTHON_DIST = python-pkg/lirc/__init__.py \
 	python-pkg/lirc/database.py python-pkg/lirc/paths.py \
 	python-pkg/lirc/async_client.py python-pkg/lirc/client.py
@@ -238,7 +245,7 @@
 	$(dist_py_pkg_DATA) $(dist_py_pkg_doc_DATA) \
 	$(dist_py_pkg_lirc_DATA) $(dist_py_pkg_test_DATA) \
 	$(nodist_lircdconfig_DATA) $(nodist_pkgdata_DATA)
-HEADERS = $(header_HEADERS) $(nobase_header_HEADERS)
+HEADERS = $(header_HEADERS) $(media_HEADERS)
 RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive	\
   distclean-recursive maintainer-clean-recursive
 am__recursive_targets = \
@@ -246,9 +253,9 @@
   $(RECURSIVE_CLEAN_TARGETS) \
   $(am__extra_recursive_targets)
 AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
-	cscope distdir dist dist-all distcheck
-am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \
-	$(LISP)config.h.in
+	cscope distdir distdir-am dist dist-all distcheck
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) \
+	config.h.in
 # Read a list of newline-separated strings from the standard input,
 # and print each of them once, without duplicates.  Input order is
 # *not* preserved.
@@ -265,9 +272,6 @@
   unique=`for i in $$list; do \
     if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
   done | $(am__uniquify_input)`
-ETAGS = etags
-CTAGS = ctags
-CSCOPE = cscope
 DIST_SUBDIRS = lib daemons tools plugins configs doc systemd
 am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/VERSION.in \
 	$(srcdir)/config.h.in $(srcdir)/lirc-driver.pc.in \
@@ -312,6 +316,8 @@
 DIST_ARCHIVES = $(distdir).tar.gz $(distdir).tar.bz2
 GZIP_ENV = --best
 DIST_TARGETS = dist-bzip2 dist-gzip
+# Exists only to be overridden by the user if desired.
+AM_DISTCHECK_DVI_TARGET = dvi
 distuninstallcheck_listfiles = find . -type f -print
 am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
   | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
@@ -329,6 +335,8 @@
 CFLAGS = @CFLAGS@
 CPP = @CPP@
 CPPFLAGS = @CPPFLAGS@
+CSCOPE = @CSCOPE@
+CTAGS = @CTAGS@
 CXX = @CXX@
 CXXCPP = @CXXCPP@
 CXXDEPMODE = @CXXDEPMODE@
@@ -339,15 +347,16 @@
 DEVINPUT_HEADER = @DEVINPUT_HEADER@
 DLLTOOL = @DLLTOOL@
 DOXYGEN = @DOXYGEN@
-DRIVER_FLAGS = @DRIVER_FLAGS@
 DSYMUTIL = @DSYMUTIL@
 DUMPBIN = @DUMPBIN@
 ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
+ETAGS = @ETAGS@
 EXEEXT = @EXEEXT@
 FGREP = @FGREP@
+FILECMD = @FILECMD@
 FTDI_CFLAGS = @FTDI_CFLAGS@
 FTDI_LIBS = @FTDI_LIBS@
 GREP = @GREP@
@@ -370,7 +379,6 @@
 LTLIBOBJS = @LTLIBOBJS@
 LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
 MAKEINFO = @MAKEINFO@
-MAN2HTML = @MAN2HTML@
 MANIFEST_TOOL = @MANIFEST_TOOL@
 MKDIR_P = @MKDIR_P@
 MODINFO = @MODINFO@
@@ -403,6 +411,7 @@
 PYTHON_VERSION = @PYTHON_VERSION@
 RANLIB = @RANLIB@
 SED = @SED@
+SETUPTOOLS_ENV = @SETUPTOOLS_ENV@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
 SH_PATH = @SH_PATH@
@@ -452,7 +461,6 @@
 includedir = @includedir@
 infodir = @infodir@
 install_sh = @install_sh@
-kernel_header_flags = @kernel_header_flags@
 libdir = @libdir@
 libexecdir = @libexecdir@
 localedir = @localedir@
@@ -491,16 +499,20 @@
 GIT_COMMIT = $(shell git log -1 --pretty=format:%h || echo UNKNOWN)
 GIT_DATE = $(shell git log -1 --pretty=format:%cd || echo UNKNOWN)
 GIT_REFS = $(shell git log -1 --pretty=format:%d || echo UNKNOWN)
+GIT_DATE_ISO = $(shell git log -1 --pretty=format:%ci || date +"%F %T")
 BASE_VERSION = $(subst -rc,rc,$(subst -devel,,$(VERSION)))
 VERBOSE = $(subst 0,,$(V))
 AM_LIBTOOLFLAGS = $(if $(VERBOSE),,--silent)
+DPY_PKG = notused
+PY_PKG_CFLAGS = -I$(abs_top_srcdir)/lib -I$(abs_builddir)/lib $(CFLAGS)
+PY_PKG_LFLAGS = -L$(abs_builddir)/lib/.libs $(LDFLAGS)
 @HAVE_PYTHON35_TRUE@PYTHON_TARBALL = python-pkg/dist/lirc-$(BASE_VERSION).tar.gz
 EXTRA_DIST = README autogen.sh CONTRIBUTE.md ChangeLog \
                           COPYING.curl COPYING.ciniparser
 
 DISTCLEANFILES = configure.sh  ChangeLog paths.h
 CLEANFILES = *~ remotes/*~ contrib/*~ devinput.lircd.conf
-CHANGELOG_REVS = lirc-0_9_4..HEAD
+CHANGELOG_REVS = lirc-0.10.0..HEAD
 MANTAINERCLEANFILES = config.sub install-sh depcomp py-compile \
                           missing libtool plugins/Makefile.am
 
@@ -524,10 +536,11 @@
 pkgconfigdir = $(libdir)/pkgconfig
 dist_pkgconfig_DATA = lirc.pc lirc-driver.pc
 headerdir = $(includedir)/lirc
-nobase_header_HEADERS = include/media/lirc.h \
-                          include/linux/input-event-codes.h
+header_HEADERS = include/linux/input-event-codes.h \
+                          drivers/irpipe/irpipe.h
 
-header_HEADERS = drivers/irpipe/irpipe.h
+mediadir = $(includedir)/lirc/media
+media_HEADERS = include/media/lirc.h
 py_pkgdir = $(pkgdatadir)/python-pkg
 dist_py_pkg_DATA = python-pkg/setup.py \
                           python-pkg/README.rst
@@ -553,20 +566,20 @@
 
 libpython = $(libdir)/python$(PYTHON_VERSION)
 pydir = $(libpython)/site-packages/lirc
-py_LTLIBRARIES = python-pkg/lib/_client.la
-python_pkg_lib__client_la_SOURCES = \
-                          python-pkg/lirc/_client.c
-
-python_pkg_lib__client_la_CPPFLAGS = \
-                          $(PYTHON_CFLAGS) $(AM_CPPFLAGS) \
-			  -I$(abs_builddir)/lib -I$(abs_srcdir)/lib
-
-python_pkg_lib__client_la_LDFLAGS = \
-                          -module -avoid-version -export-symbols-regex client \
-                          $(PYTHON_LIBS)
+@HAVE_PYTHON35_TRUE@py_LTLIBRARIES = python-pkg/lib/_client.la
+@HAVE_PYTHON35_TRUE@python_pkg_lib__client_la_SOURCES = \
+@HAVE_PYTHON35_TRUE@                          python-pkg/lirc/_client.c
+
+@HAVE_PYTHON35_TRUE@python_pkg_lib__client_la_CPPFLAGS = \
+@HAVE_PYTHON35_TRUE@                          $(PYTHON_CFLAGS) $(AM_CPPFLAGS) \
+@HAVE_PYTHON35_TRUE@			  -I$(abs_builddir)/lib -I$(abs_srcdir)/lib
+
+@HAVE_PYTHON35_TRUE@python_pkg_lib__client_la_LDFLAGS = \
+@HAVE_PYTHON35_TRUE@                          -module -avoid-version -export-symbols-regex client \
+@HAVE_PYTHON35_TRUE@                          $(PYTHON_LIBS)
 
-python_pkg_lib__client_la_LIBADD = \
-                          lib/liblirc_client.la
+@HAVE_PYTHON35_TRUE@python_pkg_lib__client_la_LIBADD = \
+@HAVE_PYTHON35_TRUE@                          lib/liblirc_client.la
 
 all: $(BUILT_SOURCES) config.h
 	$(MAKE) $(AM_MAKEFLAGS) all-recursive
@@ -594,8 +607,8 @@
 	    echo ' $(SHELL) ./config.status'; \
 	    $(SHELL) ./config.status;; \
 	  *) \
-	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
-	    cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
+	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles)'; \
+	    cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles);; \
 	esac;
 $(srcdir)/pylint.mak $(am__empty):
 
@@ -669,7 +682,7 @@
 python-pkg/lirc/$(DEPDIR)/$(am__dirstamp):
 	@$(MKDIR_P) python-pkg/lirc/$(DEPDIR)
 	@: > python-pkg/lirc/$(DEPDIR)/$(am__dirstamp)
-python-pkg/lirc/python_pkg_lib__client_la-_client.lo:  \
+python-pkg/lirc/lib__client_la-_client.lo:  \
 	python-pkg/lirc/$(am__dirstamp) \
 	python-pkg/lirc/$(DEPDIR)/$(am__dirstamp)
 python-pkg/lib/$(am__dirstamp):
@@ -677,7 +690,7 @@
 	@: > python-pkg/lib/$(am__dirstamp)
 
 python-pkg/lib/_client.la: $(python_pkg_lib__client_la_OBJECTS) $(python_pkg_lib__client_la_DEPENDENCIES) $(EXTRA_python_pkg_lib__client_la_DEPENDENCIES) python-pkg/lib/$(am__dirstamp)
-	$(AM_V_CCLD)$(python_pkg_lib__client_la_LINK) -rpath $(pydir) $(python_pkg_lib__client_la_OBJECTS) $(python_pkg_lib__client_la_LIBADD) $(LIBS)
+	$(AM_V_CCLD)$(python_pkg_lib__client_la_LINK) $(am_python_pkg_lib__client_la_rpath) $(python_pkg_lib__client_la_OBJECTS) $(python_pkg_lib__client_la_LIBADD) $(LIBS)
 
 mostlyclean-compile:
 	-rm -f *.$(OBJEXT)
@@ -687,7 +700,13 @@
 distclean-compile:
 	-rm -f *.tab.c
 
-@AMDEP_TRUE@@am__include@ @am__quote@python-pkg/lirc/$(DEPDIR)/python_pkg_lib__client_la-_client.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@python-pkg/lirc/$(DEPDIR)/lib__client_la-_client.Plo@am__quote@ # am--include-marker
+
+$(am__depfiles_remade):
+	@$(MKDIR_P) $(@D)
+	@echo '# dummy' >$@-t && $(am__mv) $@-t $@
+
+am--depfiles: $(am__depfiles_remade)
 
 .c.o:
 @am__fastdepCC_TRUE@	$(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
@@ -713,12 +732,12 @@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<
 
-python-pkg/lirc/python_pkg_lib__client_la-_client.lo: python-pkg/lirc/_client.c
-@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(python_pkg_lib__client_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT python-pkg/lirc/python_pkg_lib__client_la-_client.lo -MD -MP -MF python-pkg/lirc/$(DEPDIR)/python_pkg_lib__client_la-_client.Tpo -c -o python-pkg/lirc/python_pkg_lib__client_la-_client.lo `test -f 'python-pkg/lirc/_client.c' || echo '$(srcdir)/'`python-pkg/lirc/_client.c
-@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) python-pkg/lirc/$(DEPDIR)/python_pkg_lib__client_la-_client.Tpo python-pkg/lirc/$(DEPDIR)/python_pkg_lib__client_la-_client.Plo
-@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='python-pkg/lirc/_client.c' object='python-pkg/lirc/python_pkg_lib__client_la-_client.lo' libtool=yes @AMDEPBACKSLASH@
+python-pkg/lirc/lib__client_la-_client.lo: python-pkg/lirc/_client.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(python_pkg_lib__client_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT python-pkg/lirc/lib__client_la-_client.lo -MD -MP -MF python-pkg/lirc/$(DEPDIR)/lib__client_la-_client.Tpo -c -o python-pkg/lirc/lib__client_la-_client.lo `test -f 'python-pkg/lirc/_client.c' || echo '$(srcdir)/'`python-pkg/lirc/_client.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) python-pkg/lirc/$(DEPDIR)/lib__client_la-_client.Tpo python-pkg/lirc/$(DEPDIR)/lib__client_la-_client.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='python-pkg/lirc/_client.c' object='python-pkg/lirc/lib__client_la-_client.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(python_pkg_lib__client_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o python-pkg/lirc/python_pkg_lib__client_la-_client.lo `test -f 'python-pkg/lirc/_client.c' || echo '$(srcdir)/'`python-pkg/lirc/_client.c
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(python_pkg_lib__client_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o python-pkg/lirc/lib__client_la-_client.lo `test -f 'python-pkg/lirc/_client.c' || echo '$(srcdir)/'`python-pkg/lirc/_client.c
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -763,20 +782,15 @@
 	dir='$(DESTDIR)$(py_pkgdir)'; \
 	pyc_files=`echo "$$py_files" | sed 's|$$|c|'`; \
 	pyo_files=`echo "$$py_files" | sed 's|$$|o|'`; \
-	py_files_pep3147=`echo "$$py_files" | $(am__pep3147_tweak)`; \
-	echo "$$py_files_pep3147";\
-	pyc_files_pep3147=`echo "$$py_files_pep3147" | sed 's|$$|c|'`; \
-	pyo_files_pep3147=`echo "$$py_files_pep3147" | sed 's|$$|o|'`; \
 	st=0; \
-	for files in \
-	  "$$py_files" \
-	  "$$pyc_files" \
-	  "$$pyo_files" \
-	  "$$pyc_files_pep3147" \
-	  "$$pyo_files_pep3147" \
-	; do \
+	for files in "$$py_files" "$$pyc_files" "$$pyo_files"; do \
 	  $(am__uninstall_files_from_dir) || st=$$?; \
 	done; \
+	dir='$(DESTDIR)$(py_pkgdir)'; \
+	echo "$$py_files" | $(am__pep3147_tweak) | $(am__base_list) | \
+	  while read files; do \
+	    $(am__uninstall_files_from_dir) || st=$$?; \
+	  done || exit $$?; \
 	exit $$st
 install-pyPYTHON: $(py_PYTHON)
 	@$(NORMAL_INSTALL)
@@ -811,20 +825,15 @@
 	dir='$(DESTDIR)$(pydir)'; \
 	pyc_files=`echo "$$py_files" | sed 's|$$|c|'`; \
 	pyo_files=`echo "$$py_files" | sed 's|$$|o|'`; \
-	py_files_pep3147=`echo "$$py_files" | $(am__pep3147_tweak)`; \
-	echo "$$py_files_pep3147";\
-	pyc_files_pep3147=`echo "$$py_files_pep3147" | sed 's|$$|c|'`; \
-	pyo_files_pep3147=`echo "$$py_files_pep3147" | sed 's|$$|o|'`; \
 	st=0; \
-	for files in \
-	  "$$py_files" \
-	  "$$pyc_files" \
-	  "$$pyo_files" \
-	  "$$pyc_files_pep3147" \
-	  "$$pyo_files_pep3147" \
-	; do \
+	for files in "$$py_files" "$$pyc_files" "$$pyo_files"; do \
 	  $(am__uninstall_files_from_dir) || st=$$?; \
 	done; \
+	dir='$(DESTDIR)$(pydir)'; \
+	echo "$$py_files" | $(am__pep3147_tweak) | $(am__base_list) | \
+	  while read files; do \
+	    $(am__uninstall_files_from_dir) || st=$$?; \
+	  done || exit $$?; \
 	exit $$st
 install-dist_docDATA: $(dist_doc_DATA)
 	@$(NORMAL_INSTALL)
@@ -1057,30 +1066,27 @@
 	@list='$(header_HEADERS)'; test -n "$(headerdir)" || list=; \
 	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
 	dir='$(DESTDIR)$(headerdir)'; $(am__uninstall_files_from_dir)
-install-nobase_headerHEADERS: $(nobase_header_HEADERS)
+install-mediaHEADERS: $(media_HEADERS)
 	@$(NORMAL_INSTALL)
-	@list='$(nobase_header_HEADERS)'; test -n "$(headerdir)" || list=; \
+	@list='$(media_HEADERS)'; test -n "$(mediadir)" || list=; \
 	if test -n "$$list"; then \
-	  echo " $(MKDIR_P) '$(DESTDIR)$(headerdir)'"; \
-	  $(MKDIR_P) "$(DESTDIR)$(headerdir)" || exit 1; \
+	  echo " $(MKDIR_P) '$(DESTDIR)$(mediadir)'"; \
+	  $(MKDIR_P) "$(DESTDIR)$(mediadir)" || exit 1; \
 	fi; \
-	$(am__nobase_list) | while read dir files; do \
-	  xfiles=; for file in $$files; do \
-	    if test -f "$$file"; then xfiles="$$xfiles $$file"; \
-	    else xfiles="$$xfiles $(srcdir)/$$file"; fi; done; \
-	  test -z "$$xfiles" || { \
-	    test "x$$dir" = x. || { \
-	      echo " $(MKDIR_P) '$(DESTDIR)$(headerdir)/$$dir'"; \
-	      $(MKDIR_P) "$(DESTDIR)$(headerdir)/$$dir"; }; \
-	    echo " $(INSTALL_HEADER) $$xfiles '$(DESTDIR)$(headerdir)/$$dir'"; \
-	    $(INSTALL_HEADER) $$xfiles "$(DESTDIR)$(headerdir)/$$dir" || exit $$?; }; \
+	for p in $$list; do \
+	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+	  echo "$$d$$p"; \
+	done | $(am__base_list) | \
+	while read files; do \
+	  echo " $(INSTALL_HEADER) $$files '$(DESTDIR)$(mediadir)'"; \
+	  $(INSTALL_HEADER) $$files "$(DESTDIR)$(mediadir)" || exit $$?; \
 	done
 
-uninstall-nobase_headerHEADERS:
+uninstall-mediaHEADERS:
 	@$(NORMAL_UNINSTALL)
-	@list='$(nobase_header_HEADERS)'; test -n "$(headerdir)" || list=; \
-	$(am__nobase_strip_setup); files=`$(am__nobase_strip)`; \
-	dir='$(DESTDIR)$(headerdir)'; $(am__uninstall_files_from_dir)
+	@list='$(media_HEADERS)'; test -n "$(mediadir)" || list=; \
+	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
+	dir='$(DESTDIR)$(mediadir)'; $(am__uninstall_files_from_dir)
 
 # This directory's subdirectories are mostly independent; you can cd
 # into them and run 'make' without going through this Makefile.
@@ -1187,8 +1193,10 @@
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 	-rm -f cscope.out cscope.in.out cscope.po.out cscope.files
+distdir: $(BUILT_SOURCES)
+	$(MAKE) $(AM_MAKEFLAGS) distdir-am
 
-distdir: $(DISTFILES)
+distdir-am: $(DISTFILES)
 	@case `sed 15q $(srcdir)/NEWS` in \
 	*"$(VERSION)"*) : ;; \
 	*) \
@@ -1276,6 +1284,10 @@
 	tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
 	$(am__post_remove_distdir)
 
+dist-zstd: distdir
+	tardir=$(distdir) && $(am__tar) | zstd -c $${ZSTD_CLEVEL-$${ZSTD_OPT--19}} >$(distdir).tar.zst
+	$(am__post_remove_distdir)
+
 dist-tarZ: distdir
 	@echo WARNING: "Support for distribution archives compressed with" \
 		       "legacy program 'compress' is deprecated." >&2
@@ -1318,6 +1330,8 @@
 	  eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\
 	*.zip*) \
 	  unzip $(distdir).zip ;;\
+	*.tar.zst*) \
+	  zstd -dc $(distdir).tar.zst | $(am__untar) ;;\
 	esac
 	chmod -R a-w $(distdir)
 	chmod u+w $(distdir)
@@ -1333,7 +1347,7 @@
 	    $(DISTCHECK_CONFIGURE_FLAGS) \
 	    --srcdir=../.. --prefix="$$dc_install_base" \
 	  && $(MAKE) $(AM_MAKEFLAGS) \
-	  && $(MAKE) $(AM_MAKEFLAGS) dvi \
+	  && $(MAKE) $(AM_MAKEFLAGS) $(AM_DISTCHECK_DVI_TARGET) \
 	  && $(MAKE) $(AM_MAKEFLAGS) check \
 	  && $(MAKE) $(AM_MAKEFLAGS) install \
 	  && $(MAKE) $(AM_MAKEFLAGS) installcheck \
@@ -1391,12 +1405,13 @@
 all-am: Makefile $(LTLIBRARIES) $(DATA) $(HEADERS) config.h all-local
 installdirs: installdirs-recursive
 installdirs-am:
-	for dir in "$(DESTDIR)$(pydir)" "$(DESTDIR)$(py_pkgdir)" "$(DESTDIR)$(pydir)" "$(DESTDIR)$(docdir)" "$(DESTDIR)$(lirc_confdir)" "$(DESTDIR)$(lircdconfigdir)" "$(DESTDIR)$(pkgconfigdir)" "$(DESTDIR)$(py_pkgdir)" "$(DESTDIR)$(py_pkg_docdir)" "$(DESTDIR)$(py_pkg_lircdir)" "$(DESTDIR)$(py_pkg_testdir)" "$(DESTDIR)$(lircdconfigdir)" "$(DESTDIR)$(pkgdatadir)" "$(DESTDIR)$(headerdir)" "$(DESTDIR)$(headerdir)"; do \
+	for dir in "$(DESTDIR)$(pydir)" "$(DESTDIR)$(py_pkgdir)" "$(DESTDIR)$(pydir)" "$(DESTDIR)$(docdir)" "$(DESTDIR)$(lirc_confdir)" "$(DESTDIR)$(lircdconfigdir)" "$(DESTDIR)$(pkgconfigdir)" "$(DESTDIR)$(py_pkgdir)" "$(DESTDIR)$(py_pkg_docdir)" "$(DESTDIR)$(py_pkg_lircdir)" "$(DESTDIR)$(py_pkg_testdir)" "$(DESTDIR)$(lircdconfigdir)" "$(DESTDIR)$(pkgdatadir)" "$(DESTDIR)$(headerdir)" "$(DESTDIR)$(mediadir)"; do \
 	  test -z "$$dir" || $(MKDIR_P) "$$dir"; \
 	done
 install: $(BUILT_SOURCES)
 	$(MAKE) $(AM_MAKEFLAGS) install-recursive
-install-exec: install-exec-recursive
+install-exec: $(BUILT_SOURCES)
+	$(MAKE) $(AM_MAKEFLAGS) install-exec-recursive
 install-data: install-data-recursive
 uninstall: uninstall-recursive
 
@@ -1438,7 +1453,7 @@
 
 distclean: distclean-recursive
 	-rm -f $(am__CONFIG_DISTCLEAN_FILES)
-	-rm -rf python-pkg/lirc/$(DEPDIR)
+		-rm -f python-pkg/lirc/$(DEPDIR)/lib__client_la-_client.Plo
 	-rm -f Makefile
 distclean-am: clean-am distclean-compile distclean-generic \
 	distclean-hdr distclean-libtool distclean-local distclean-tags
@@ -1459,7 +1474,7 @@
 	install-dist_lircdconfigDATA install-dist_pkgconfigDATA \
 	install-dist_py_pkgDATA install-dist_py_pkg_docDATA \
 	install-dist_py_pkg_lircDATA install-dist_py_pkg_testDATA \
-	install-headerHEADERS install-nobase_headerHEADERS \
+	install-headerHEADERS install-mediaHEADERS \
 	install-nodist_lircdconfigDATA install-nodist_pkgdataDATA \
 	install-nodist_py_pkgPYTHON install-pyLTLIBRARIES \
 	install-pyPYTHON
@@ -1494,7 +1509,7 @@
 maintainer-clean: maintainer-clean-recursive
 	-rm -f $(am__CONFIG_DISTCLEAN_FILES)
 	-rm -rf $(top_srcdir)/autom4te.cache
-	-rm -rf python-pkg/lirc/$(DEPDIR)
+		-rm -f python-pkg/lirc/$(DEPDIR)/lib__client_la-_client.Plo
 	-rm -f Makefile
 maintainer-clean-am: distclean-am maintainer-clean-generic \
 	maintainer-clean-local
@@ -1516,21 +1531,21 @@
 	uninstall-dist_lircdconfigDATA uninstall-dist_pkgconfigDATA \
 	uninstall-dist_py_pkgDATA uninstall-dist_py_pkg_docDATA \
 	uninstall-dist_py_pkg_lircDATA uninstall-dist_py_pkg_testDATA \
-	uninstall-headerHEADERS uninstall-nobase_headerHEADERS \
+	uninstall-headerHEADERS uninstall-mediaHEADERS \
 	uninstall-nodist_lircdconfigDATA uninstall-nodist_pkgdataDATA \
 	uninstall-nodist_py_pkgPYTHON uninstall-pyLTLIBRARIES \
 	uninstall-pyPYTHON
 	@$(NORMAL_INSTALL)
 	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
 .MAKE: $(am__recursive_targets) all check install install-am \
-	install-data-am install-strip uninstall-am
+	install-data-am install-exec install-strip uninstall-am
 
 .PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am all-local \
-	am--refresh check check-am clean clean-cscope clean-generic \
-	clean-libtool clean-local clean-pyLTLIBRARIES cscope \
-	cscopelist-am ctags ctags-am dist dist-all dist-bzip2 \
+	am--depfiles am--refresh check check-am clean clean-cscope \
+	clean-generic clean-libtool clean-local clean-pyLTLIBRARIES \
+	cscope cscopelist-am ctags ctags-am dist dist-all dist-bzip2 \
 	dist-gzip dist-hook dist-lzip dist-shar dist-tarZ dist-xz \
-	dist-zip distcheck distclean distclean-compile \
+	dist-zip dist-zstd distcheck distclean distclean-compile \
 	distclean-generic distclean-hdr distclean-libtool \
 	distclean-local distclean-tags distcleancheck distdir \
 	distuninstallcheck dvi dvi-am html html-am info info-am \
@@ -1542,7 +1557,7 @@
 	install-dist_py_pkg_testDATA install-dvi install-dvi-am \
 	install-exec install-exec-am install-headerHEADERS \
 	install-html install-html-am install-info install-info-am \
-	install-man install-nobase_headerHEADERS \
+	install-man install-mediaHEADERS \
 	install-nodist_lircdconfigDATA install-nodist_pkgdataDATA \
 	install-nodist_py_pkgPYTHON install-pdf install-pdf-am \
 	install-ps install-ps-am install-pyLTLIBRARIES \
@@ -1555,8 +1570,7 @@
 	uninstall-dist_lircdconfigDATA uninstall-dist_pkgconfigDATA \
 	uninstall-dist_py_pkgDATA uninstall-dist_py_pkg_docDATA \
 	uninstall-dist_py_pkg_lircDATA uninstall-dist_py_pkg_testDATA \
-	uninstall-headerHEADERS uninstall-hook \
-	uninstall-nobase_headerHEADERS \
+	uninstall-headerHEADERS uninstall-hook uninstall-mediaHEADERS \
 	uninstall-nodist_lircdconfigDATA uninstall-nodist_pkgdataDATA \
 	uninstall-nodist_py_pkgPYTHON uninstall-pyLTLIBRARIES \
 	uninstall-pyPYTHON
@@ -1575,25 +1589,23 @@
 
 @HAVE_PYTHON35_TRUE@all-local:
 @HAVE_PYTHON35_TRUE@	cd python-pkg; \
-@HAVE_PYTHON35_TRUE@	    CFLAGS="-I$(abs_top_srcdir)/lib -I$(abs_builddir)/lib" \
-@HAVE_PYTHON35_TRUE@	    LDFLAGS=-L$(abs_builddir)/lib/.libs $(PYTHON) setup.py \
-@HAVE_PYTHON35_TRUE@	    $(if $(VERBOSE),,-q) build
+@HAVE_PYTHON35_TRUE@	    $(SETUPTOOLS_ENV) \
+@HAVE_PYTHON35_TRUE@	    CFLAGS="$(PY_PKG_CFLAGS)" LDFLAGS="$(PY_PKG_LFLAGS)" \
+@HAVE_PYTHON35_TRUE@	    $(PYTHON) setup.py $(if $(VERBOSE),,-q) build
 
 install-data-hook:
 	$(SED) -i -e '/^plugindir/s|/usr/lib|$(libdir)|' \
 	    $(DESTDIR)$(lirc_confdir)/lirc_options.conf
 	cp -pr $(srcdir)/contrib $(DESTDIR)$(pkgdatadir)
-	chmod u+w $(DESTDIR)$(includedir)
-	cd $(DESTDIR)$(includedir)/lirc; ln -s include/media .
 
 uninstall-hook:
 	-chmod -R u+w $(DESTDIR)/$(pkgdatadir)/contrib
 	-rm -rf $(DESTDIR)/$(pkgdatadir) \
 	        $(DESTDIR)/$(pkgpythondir) \
-	        $(DESTDIR)/$(pkgdatadir)/contrib \
-		$(DESTDIR)$(includedir)/lirc
+	        $(DESTDIR)/$(pkgdatadir)/contrib
 
 dist-hook: ChangeLog fix-version
+	touch -d "$(GIT_DATE_ISO)" $(distdir)/lib/lirc/* VERSION
 	cp -pr $(srcdir)/contrib $(distdir)
 
 clean-local:
@@ -1620,23 +1632,25 @@
 
 $(PYTHON_TARBALL): $(abs_builddir)/python-pkg/setup.py
 	cp $(top_builddir)/VERSION $(abs_builddir)/python-pkg
-	cd $(abs_builddir)/python-pkg; CFLAGS=-I$(abs_top_srcdir)/lib \
-	    LDFLAGS=-L$(abs_builddir)/lib/.libs $(PYTHON) setup.py -q sdist
+	cd $(abs_builddir)/python-pkg; \
+	    CFLAGS="$(PY_PKG_CFLAGS)" LDFLAGS="$(PY_PKG_LFLAGS)" \
+	    $(SETUPTOOLS_ENV) \
+	    $(PYTHON) setup.py -q sdist
 
 $(top_builddir)/python-pkg/VERSION: VERSION
 	cp $? $@
 
 python-pkg/lirc/config.py: Makefile  $(abs_builddir)/python-pkg/setup.py
-	@echo '""" Generated by lib/Makefile.am."""' >$@
-	@echo 'DATADIR = "$(datadir)"' >>$@
-	@echo 'SYSCONFDIR = "$(sysconfdir)"' >>$@
-	@echo 'VARRUNDIR = "$(localstatedir)/run"' >>$@
-	@echo 'LOCALSTATEDIR = "$(localstatedir)"' >>$@
-	@echo 'BINDIR = "$(bindir)"' >>$@
-	@echo 'LIBDIR = "$(libdir)"' >>$@
-	@echo 'DOCDIR = "$(docdir)"' >>$@
-	@echo 'MODINFO = "$(MODINFO)"' >>$@
-	@echo 'VERSION = "$(VERSION)"' >>$@
+	@echo '# Generated by lib/Makefile.am.' >$@
+	@echo 'DATADIR="$(datadir)"' >>$@
+	@echo 'SYSCONFDIR="$(sysconfdir)"' >>$@
+	@echo 'VARRUNDIR="$(localstatedir)/run"' >>$@
+	@echo 'LOCALSTATEDIR="$(localstatedir)"' >>$@
+	@echo 'BINDIR="$(bindir)"' >>$@
+	@echo 'LIBDIR="$(libdir)"' >>$@
+	@echo 'DOCDIR="$(docdir)"' >>$@
+	@echo 'MODINFO="$(MODINFO)"' >>$@
+	@echo 'VERSION="$(VERSION)"' >>$@
 
 paths.h: Makefile
 	@echo "#ifndef PATHS_H"          >paths.h
diff -Nru lirc-0.10.1/NEWS lirc-0.10.2/NEWS
--- lirc-0.10.1/NEWS	2017-09-10 08:52:19.000000000 +0000
+++ lirc-0.10.2/NEWS	2022-10-04 08:01:11.000000000 +0000
@@ -1,3 +1,21 @@
+0.10.2 4/10/22
+ * Vendor latest linux/lirc.h and handle lirc overflows.
+ * mode2: support lirc overflows, carrier reports, and timeouts
+ * Lots of fixes for python 3.
+ * irdroid: fix hang after transmit
+ * The deprecated lircd --uinput option is dropped. Use
+   lircd-uinput(8) instead.
+ * The deprecated generation of lirc.hwdb is dropped. Use
+   the configs/*.conf or the python database.py instead.
+ * Added a new lirc-postinstall scripts which updates
+   configuration and docs in final install destination (#286).
+ * Using LIRC_IRDB_CACHE_ID lirc now supports reproducible
+   builds. See #301 and updated irdb-get(1) manpage.
+ * lircd: Support for the GOLDSTAR flag in lircd.conf(5) is dropped.
+ * plugins: srm7500libusb: Major overhaul.
+ * plugins:girs: Drop support for LIRC_SET_REC_TIMEOUT, add new
+   driver option ending_timeout (#302).
+
 0.10.1 10/9/17
  * mode2: Fix inconsistent loglevel/debug option (#307).
  * build: install media/lirc.h (Debian BTS #872074).
@@ -11,10 +29,10 @@
 
 0.10.0-rc3 21/6/17
  * lircmd: Fix bogus, excessive logging using --uinput (#295).
- * Build: VPATH fixes (#294).
- * Build: kfreebsd debian builds fixes.
+ * build: VPATH fixes (#294).
+ * build: kfreebsd debian builds fixes.
  * python tests: Portability fixes for in python-pkg/test.
- * Unit tests in test/ dir: Portability fixes and some docs.
+ * unit tests in test/ dir: Portability fixes and some docs.
 
 0.10.0-rc2 13/6/17
  * Fixed lirc-setup fail-on-start (#290).
diff -Nru lirc-0.10.1/README lirc-0.10.2/README
--- lirc-0.10.1/README	2017-09-10 08:52:19.000000000 +0000
+++ lirc-0.10.2/README	2022-10-04 08:01:19.000000000 +0000
@@ -14,7 +14,7 @@
 
 Updated versions of lirc is available using the website http://lirc.org.
 
-## Last version: 0.10.1
+## Last version: 0.10.2
 
 ## Build and install.
 
diff -Nru lirc-0.10.1/VERSION lirc-0.10.2/VERSION
--- lirc-0.10.1/VERSION	2017-09-10 08:53:08.000000000 +0000
+++ lirc-0.10.2/VERSION	2022-10-04 08:05:13.000000000 +0000
@@ -1,4 +1,4 @@
-VERSION="0.10.1"
-COMMIT="f180410"
-DATE="Sun Sep 10 10:51:24 2017 +0200"
-REFS=" (HEAD -> release-0.10, origin/release-0.10, origin/HEAD)"
+VERSION="0.10.2"
+COMMIT="2650b422"
+DATE="Tue Oct 4 09:01:58 2022 +0100"
+REFS=" (HEAD -> master, tag: lirc-0.10.2)"
diff -Nru lirc-0.10.1/aclocal.m4 lirc-0.10.2/aclocal.m4
--- lirc-0.10.1/aclocal.m4	2017-09-10 08:52:34.000000000 +0000
+++ lirc-0.10.2/aclocal.m4	2022-10-04 08:02:29.000000000 +0000
@@ -1,6 +1,6 @@
-# generated automatically by aclocal 1.15 -*- Autoconf -*-
+# generated automatically by aclocal 1.16.5 -*- Autoconf -*-
 
-# Copyright (C) 1996-2014 Free Software Foundation, Inc.
+# Copyright (C) 1996-2021 Free Software Foundation, Inc.
 
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -14,15 +14,15 @@
 m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])])
 m4_ifndef([AC_AUTOCONF_VERSION],
   [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
-m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69],,
-[m4_warning([this file was generated for autoconf 2.69.
+m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.71],,
+[m4_warning([this file was generated for autoconf 2.71.
 You have another version of autoconf.  It may work, but is not guaranteed to.
 If you have problems, you may need to regenerate the build system entirely.
 To do so, use the procedure documented by the package, typically 'autoreconf'.])])
 
-dnl pkg.m4 - Macros to locate and utilise pkg-config.   -*- Autoconf -*-
-dnl serial 11 (pkg-config-0.29.1)
-dnl
+# pkg.m4 - Macros to locate and utilise pkg-config.   -*- Autoconf -*-
+# serial 11 (pkg-config-0.29.1)
+
 dnl Copyright © 2004 Scott James Remnant .
 dnl Copyright © 2012-2015 Dan Nicholson 
 dnl
@@ -296,7 +296,75 @@
 AS_VAR_IF([$1], [""], [$5], [$4])dnl
 ])dnl PKG_CHECK_VAR
 
-# Copyright (C) 2002-2014 Free Software Foundation, Inc.
+dnl PKG_WITH_MODULES(VARIABLE-PREFIX, MODULES,
+dnl   [ACTION-IF-FOUND],[ACTION-IF-NOT-FOUND],
+dnl   [DESCRIPTION], [DEFAULT])
+dnl ------------------------------------------
+dnl
+dnl Prepare a "--with-" configure option using the lowercase
+dnl [VARIABLE-PREFIX] name, merging the behaviour of AC_ARG_WITH and
+dnl PKG_CHECK_MODULES in a single macro.
+AC_DEFUN([PKG_WITH_MODULES],
+[
+m4_pushdef([with_arg], m4_tolower([$1]))
+
+m4_pushdef([description],
+           [m4_default([$5], [build with ]with_arg[ support])])
+
+m4_pushdef([def_arg], [m4_default([$6], [auto])])
+m4_pushdef([def_action_if_found], [AS_TR_SH([with_]with_arg)=yes])
+m4_pushdef([def_action_if_not_found], [AS_TR_SH([with_]with_arg)=no])
+
+m4_case(def_arg,
+            [yes],[m4_pushdef([with_without], [--without-]with_arg)],
+            [m4_pushdef([with_without],[--with-]with_arg)])
+
+AC_ARG_WITH(with_arg,
+     AS_HELP_STRING(with_without, description[ @<:@default=]def_arg[@:>@]),,
+    [AS_TR_SH([with_]with_arg)=def_arg])
+
+AS_CASE([$AS_TR_SH([with_]with_arg)],
+            [yes],[PKG_CHECK_MODULES([$1],[$2],$3,$4)],
+            [auto],[PKG_CHECK_MODULES([$1],[$2],
+                                        [m4_n([def_action_if_found]) $3],
+                                        [m4_n([def_action_if_not_found]) $4])])
+
+m4_popdef([with_arg])
+m4_popdef([description])
+m4_popdef([def_arg])
+
+])dnl PKG_WITH_MODULES
+
+dnl PKG_HAVE_WITH_MODULES(VARIABLE-PREFIX, MODULES,
+dnl   [DESCRIPTION], [DEFAULT])
+dnl -----------------------------------------------
+dnl
+dnl Convenience macro to trigger AM_CONDITIONAL after PKG_WITH_MODULES
+dnl check._[VARIABLE-PREFIX] is exported as make variable.
+AC_DEFUN([PKG_HAVE_WITH_MODULES],
+[
+PKG_WITH_MODULES([$1],[$2],,,[$3],[$4])
+
+AM_CONDITIONAL([HAVE_][$1],
+               [test "$AS_TR_SH([with_]m4_tolower([$1]))" = "yes"])
+])dnl PKG_HAVE_WITH_MODULES
+
+dnl PKG_HAVE_DEFINE_WITH_MODULES(VARIABLE-PREFIX, MODULES,
+dnl   [DESCRIPTION], [DEFAULT])
+dnl ------------------------------------------------------
+dnl
+dnl Convenience macro to run AM_CONDITIONAL and AC_DEFINE after
+dnl PKG_WITH_MODULES check. HAVE_[VARIABLE-PREFIX] is exported as make
+dnl and preprocessor variable.
+AC_DEFUN([PKG_HAVE_DEFINE_WITH_MODULES],
+[
+PKG_HAVE_WITH_MODULES([$1],[$2],[$3],[$4])
+
+AS_IF([test "$AS_TR_SH([with_]m4_tolower([$1]))" = "yes"],
+        [AC_DEFINE([HAVE_][$1], 1, [Enable ]m4_tolower([$1])[ support])])
+])dnl PKG_HAVE_DEFINE_WITH_MODULES
+
+# Copyright (C) 2002-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -308,10 +376,10 @@
 # generated from the m4 files accompanying Automake X.Y.
 # (This private macro should not be called outside this file.)
 AC_DEFUN([AM_AUTOMAKE_VERSION],
-[am__api_version='1.15'
+[am__api_version='1.16'
 dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
 dnl require some minimum version.  Point them to the right macro.
-m4_if([$1], [1.15], [],
+m4_if([$1], [1.16.5], [],
       [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
 ])
 
@@ -327,14 +395,14 @@
 # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
 # This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
 AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.15])dnl
+[AM_AUTOMAKE_VERSION([1.16.5])dnl
 m4_ifndef([AC_AUTOCONF_VERSION],
   [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
 _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
 
 # AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
 
-# Copyright (C) 2001-2014 Free Software Foundation, Inc.
+# Copyright (C) 2001-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -386,7 +454,7 @@
 
 # AM_CONDITIONAL                                            -*- Autoconf -*-
 
-# Copyright (C) 1997-2014 Free Software Foundation, Inc.
+# Copyright (C) 1997-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -417,7 +485,7 @@
 Usually this means the macro was only invoked conditionally.]])
 fi])])
 
-# Copyright (C) 1999-2014 Free Software Foundation, Inc.
+# Copyright (C) 1999-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -608,13 +676,12 @@
 
 # Generate code to set up dependency tracking.              -*- Autoconf -*-
 
-# Copyright (C) 1999-2014 Free Software Foundation, Inc.
+# Copyright (C) 1999-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-
 # _AM_OUTPUT_DEPENDENCY_COMMANDS
 # ------------------------------
 AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
@@ -622,49 +689,43 @@
   # Older Autoconf quotes --file arguments for eval, but not when files
   # are listed without --file.  Let's play safe and only enable the eval
   # if we detect the quoting.
-  case $CONFIG_FILES in
-  *\'*) eval set x "$CONFIG_FILES" ;;
-  *)   set x $CONFIG_FILES ;;
-  esac
+  # TODO: see whether this extra hack can be removed once we start
+  # requiring Autoconf 2.70 or later.
+  AS_CASE([$CONFIG_FILES],
+          [*\'*], [eval set x "$CONFIG_FILES"],
+          [*], [set x $CONFIG_FILES])
   shift
-  for mf
+  # Used to flag and report bootstrapping failures.
+  am_rc=0
+  for am_mf
   do
     # Strip MF so we end up with the name of the file.
-    mf=`echo "$mf" | sed -e 's/:.*$//'`
-    # Check whether this is an Automake generated Makefile or not.
-    # We used to match only the files named 'Makefile.in', but
-    # some people rename them; so instead we look at the file content.
-    # Grep'ing the first line is not enough: some people post-process
-    # each Makefile.in and add a new line on top of each file to say so.
-    # Grep'ing the whole file is not good either: AIX grep has a line
+    am_mf=`AS_ECHO(["$am_mf"]) | sed -e 's/:.*$//'`
+    # Check whether this is an Automake generated Makefile which includes
+    # dependency-tracking related rules and includes.
+    # Grep'ing the whole file directly is not great: AIX grep has a line
     # limit of 2048, but all sed's we know have understand at least 4000.
-    if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
-      dirpart=`AS_DIRNAME("$mf")`
-    else
-      continue
-    fi
-    # Extract the definition of DEPDIR, am__include, and am__quote
-    # from the Makefile without running 'make'.
-    DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
-    test -z "$DEPDIR" && continue
-    am__include=`sed -n 's/^am__include = //p' < "$mf"`
-    test -z "$am__include" && continue
-    am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
-    # Find all dependency output files, they are included files with
-    # $(DEPDIR) in their names.  We invoke sed twice because it is the
-    # simplest approach to changing $(DEPDIR) to its actual value in the
-    # expansion.
-    for file in `sed -n "
-      s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
-	 sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do
-      # Make sure the directory exists.
-      test -f "$dirpart/$file" && continue
-      fdir=`AS_DIRNAME(["$file"])`
-      AS_MKDIR_P([$dirpart/$fdir])
-      # echo "creating $dirpart/$file"
-      echo '# dummy' > "$dirpart/$file"
-    done
+    sed -n 's,^am--depfiles:.*,X,p' "$am_mf" | grep X >/dev/null 2>&1 \
+      || continue
+    am_dirpart=`AS_DIRNAME(["$am_mf"])`
+    am_filepart=`AS_BASENAME(["$am_mf"])`
+    AM_RUN_LOG([cd "$am_dirpart" \
+      && sed -e '/# am--include-marker/d' "$am_filepart" \
+        | $MAKE -f - am--depfiles]) || am_rc=$?
   done
+  if test $am_rc -ne 0; then
+    AC_MSG_FAILURE([Something went wrong bootstrapping makefile fragments
+    for automatic dependency tracking.  If GNU make was not used, consider
+    re-running the configure script with MAKE="gmake" (or whatever is
+    necessary).  You can also try re-running configure with the
+    '--disable-dependency-tracking' option to at least be able to build
+    the package (albeit without support for automatic dependency tracking).])
+  fi
+  AS_UNSET([am_dirpart])
+  AS_UNSET([am_filepart])
+  AS_UNSET([am_mf])
+  AS_UNSET([am_rc])
+  rm -f conftest-deps.mk
 }
 ])# _AM_OUTPUT_DEPENDENCY_COMMANDS
 
@@ -673,18 +734,17 @@
 # -----------------------------
 # This macro should only be invoked once -- use via AC_REQUIRE.
 #
-# This code is only required when automatic dependency tracking
-# is enabled.  FIXME.  This creates each '.P' file that we will
-# need in order to bootstrap the dependency handling code.
+# This code is only required when automatic dependency tracking is enabled.
+# This creates each '.Po' and '.Plo' makefile fragment that we'll need in
+# order to bootstrap the dependency handling code.
 AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
 [AC_CONFIG_COMMANDS([depfiles],
      [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
-     [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
-])
+     [AMDEP_TRUE="$AMDEP_TRUE" MAKE="${MAKE-make}"])])
 
 # Do all the work for Automake.                             -*- Autoconf -*-
 
-# Copyright (C) 1996-2014 Free Software Foundation, Inc.
+# Copyright (C) 1996-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -712,6 +772,10 @@
 # release and drop the old call support.
 AC_DEFUN([AM_INIT_AUTOMAKE],
 [AC_PREREQ([2.65])dnl
+m4_ifdef([_$0_ALREADY_INIT],
+  [m4_fatal([$0 expanded multiple times
+]m4_defn([_$0_ALREADY_INIT]))],
+  [m4_define([_$0_ALREADY_INIT], m4_expansion_stack)])dnl
 dnl Autoconf wants to disallow AM_ names.  We explicitly allow
 dnl the ones we care about.
 m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
@@ -748,7 +812,7 @@
 [_AM_SET_OPTIONS([$1])dnl
 dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
 m4_if(
-  m4_ifdef([AC_PACKAGE_NAME], [ok]):m4_ifdef([AC_PACKAGE_VERSION], [ok]),
+  m4_ifset([AC_PACKAGE_NAME], [ok]):m4_ifset([AC_PACKAGE_VERSION], [ok]),
   [ok:ok],,
   [m4_fatal([AC_INIT should be called with package and version arguments])])dnl
  AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
@@ -771,8 +835,8 @@
 AC_REQUIRE([AC_PROG_MKDIR_P])dnl
 # For better backward compatibility.  To be removed once Automake 1.9.x
 # dies out for good.  For more background, see:
-# 
-# 
+# 
+# 
 AC_SUBST([mkdir_p], ['$(MKDIR_P)'])
 # We need awk for the "check" target (and possibly the TAP driver).  The
 # system "awk" is bad on some platforms.
@@ -800,6 +864,20 @@
 		  [m4_define([AC_PROG_OBJCXX],
 			     m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl
 ])
+# Variables for tags utilities; see am/tags.am
+if test -z "$CTAGS"; then
+  CTAGS=ctags
+fi
+AC_SUBST([CTAGS])
+if test -z "$ETAGS"; then
+  ETAGS=etags
+fi
+AC_SUBST([ETAGS])
+if test -z "$CSCOPE"; then
+  CSCOPE=cscope
+fi
+AC_SUBST([CSCOPE])
+
 AC_REQUIRE([AM_SILENT_RULES])dnl
 dnl The testsuite driver may need to know about EXEEXT, so add the
 dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen.  This
@@ -839,7 +917,7 @@
 Aborting the configuration process, to ensure you take notice of the issue.
 
 You can download and install GNU coreutils to get an 'rm' implementation
-that behaves properly: .
+that behaves properly: .
 
 If you want to complete the configuration process using your problematic
 'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
@@ -881,7 +959,7 @@
 done
 echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
 
-# Copyright (C) 2001-2014 Free Software Foundation, Inc.
+# Copyright (C) 2001-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -902,7 +980,7 @@
 fi
 AC_SUBST([install_sh])])
 
-# Copyright (C) 2003-2014 Free Software Foundation, Inc.
+# Copyright (C) 2003-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -923,7 +1001,7 @@
 
 # Check to see how 'make' treats includes.	            -*- Autoconf -*-
 
-# Copyright (C) 2001-2014 Free Software Foundation, Inc.
+# Copyright (C) 2001-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -931,49 +1009,42 @@
 
 # AM_MAKE_INCLUDE()
 # -----------------
-# Check to see how make treats includes.
+# Check whether make has an 'include' directive that can support all
+# the idioms we need for our automatic dependency tracking code.
 AC_DEFUN([AM_MAKE_INCLUDE],
-[am_make=${MAKE-make}
-cat > confinc << 'END'
+[AC_MSG_CHECKING([whether ${MAKE-make} supports the include directive])
+cat > confinc.mk << 'END'
 am__doit:
-	@echo this is the am__doit target
+	@echo this is the am__doit target >confinc.out
 .PHONY: am__doit
 END
-# If we don't find an include directive, just comment out the code.
-AC_MSG_CHECKING([for style of include used by $am_make])
 am__include="#"
 am__quote=
-_am_result=none
-# First try GNU make style include.
-echo "include confinc" > confmf
-# Ignore all kinds of additional output from 'make'.
-case `$am_make -s -f confmf 2> /dev/null` in #(
-*the\ am__doit\ target*)
-  am__include=include
-  am__quote=
-  _am_result=GNU
-  ;;
-esac
-# Now try BSD make style include.
-if test "$am__include" = "#"; then
-   echo '.include "confinc"' > confmf
-   case `$am_make -s -f confmf 2> /dev/null` in #(
-   *the\ am__doit\ target*)
-     am__include=.include
-     am__quote="\""
-     _am_result=BSD
-     ;;
-   esac
-fi
-AC_SUBST([am__include])
-AC_SUBST([am__quote])
-AC_MSG_RESULT([$_am_result])
-rm -f confinc confmf
-])
+# BSD make does it like this.
+echo '.include "confinc.mk" # ignored' > confmf.BSD
+# Other make implementations (GNU, Solaris 10, AIX) do it like this.
+echo 'include confinc.mk # ignored' > confmf.GNU
+_am_result=no
+for s in GNU BSD; do
+  AM_RUN_LOG([${MAKE-make} -f confmf.$s && cat confinc.out])
+  AS_CASE([$?:`cat confinc.out 2>/dev/null`],
+      ['0:this is the am__doit target'],
+      [AS_CASE([$s],
+          [BSD], [am__include='.include' am__quote='"'],
+          [am__include='include' am__quote=''])])
+  if test "$am__include" != "#"; then
+    _am_result="yes ($s style)"
+    break
+  fi
+done
+rm -f confinc.* confmf.*
+AC_MSG_RESULT([${_am_result}])
+AC_SUBST([am__include])])
+AC_SUBST([am__quote])])
 
 # Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
 
-# Copyright (C) 1997-2014 Free Software Foundation, Inc.
+# Copyright (C) 1997-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -994,12 +1065,7 @@
 [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
 AC_REQUIRE_AUX_FILE([missing])dnl
 if test x"${MISSING+set}" != xset; then
-  case $am_aux_dir in
-  *\ * | *\	*)
-    MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
-  *)
-    MISSING="\${SHELL} $am_aux_dir/missing" ;;
-  esac
+  MISSING="\${SHELL} '$am_aux_dir/missing'"
 fi
 # Use eval to expand $SHELL
 if eval "$MISSING --is-lightweight"; then
@@ -1012,7 +1078,7 @@
 
 # Helper functions for option handling.                     -*- Autoconf -*-
 
-# Copyright (C) 2001-2014 Free Software Foundation, Inc.
+# Copyright (C) 2001-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1041,7 +1107,7 @@
 AC_DEFUN([_AM_IF_OPTION],
 [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
 
-# Copyright (C) 1999-2014 Free Software Foundation, Inc.
+# Copyright (C) 1999-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1088,7 +1154,7 @@
 # For backward compatibility.
 AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
 
-# Copyright (C) 1999-2014 Free Software Foundation, Inc.
+# Copyright (C) 1999-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1122,8 +1188,11 @@
   dnl Find a Python interpreter.  Python versions prior to 2.0 are not
   dnl supported. (2.0 was released on October 16, 2000).
   m4_define_default([_AM_PYTHON_INTERPRETER_LIST],
-[python python2 python3 python3.3 python3.2 python3.1 python3.0 python2.7 dnl
- python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0])
+[python python2 python3 dnl
+ python3.9 python3.8 python3.7 python3.6 python3.5 python3.4 python3.3 dnl
+ python3.2 python3.1 python3.0 dnl
+ python2.7 python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 dnl
+ python2.0])
 
   AC_ARG_VAR([PYTHON], [the Python interpreter])
 
@@ -1164,34 +1233,141 @@
   ])
 
   if test "$PYTHON" = :; then
-  dnl Run any user-specified action, or abort.
+    dnl Run any user-specified action, or abort.
     m4_default([$3], [AC_MSG_ERROR([no suitable Python interpreter found])])
   else
 
-  dnl Query Python for its version number.  Getting [:3] seems to be
-  dnl the best way to do this; it's what "site.py" does in the standard
-  dnl library.
-
+  dnl Query Python for its version number.  Although site.py simply uses
+  dnl sys.version[:3], printing that failed with Python 3.10, since the
+  dnl trailing zero was eliminated. So now we output just the major
+  dnl and minor version numbers, as numbers. Apparently the tertiary
+  dnl version is not of interest.
+  dnl
   AC_CACHE_CHECK([for $am_display_PYTHON version], [am_cv_python_version],
-    [am_cv_python_version=`$PYTHON -c "import sys; sys.stdout.write(sys.version[[:3]])"`])
+    [am_cv_python_version=`$PYTHON -c "import sys; print ('%u.%u' % sys.version_info[[:2]])"`])
   AC_SUBST([PYTHON_VERSION], [$am_cv_python_version])
 
-  dnl Use the values of $prefix and $exec_prefix for the corresponding
-  dnl values of PYTHON_PREFIX and PYTHON_EXEC_PREFIX.  These are made
-  dnl distinct variables so they can be overridden if need be.  However,
-  dnl general consensus is that you shouldn't need this ability.
-
-  AC_SUBST([PYTHON_PREFIX], ['${prefix}'])
-  AC_SUBST([PYTHON_EXEC_PREFIX], ['${exec_prefix}'])
-
-  dnl At times (like when building shared libraries) you may want
+  dnl At times, e.g., when building shared libraries, you may want
   dnl to know which OS platform Python thinks this is.
-
+  dnl
   AC_CACHE_CHECK([for $am_display_PYTHON platform], [am_cv_python_platform],
     [am_cv_python_platform=`$PYTHON -c "import sys; sys.stdout.write(sys.platform)"`])
   AC_SUBST([PYTHON_PLATFORM], [$am_cv_python_platform])
 
-  # Just factor out some code duplication.
+  dnl emacs-page
+  dnl If --with-python-sys-prefix is given, use the values of sys.prefix
+  dnl and sys.exec_prefix for the corresponding values of PYTHON_PREFIX
+  dnl and PYTHON_EXEC_PREFIX. Otherwise, use the GNU ${prefix} and
+  dnl ${exec_prefix} variables.
+  dnl
+  dnl The two are made distinct variables so they can be overridden if
+  dnl need be, although general consensus is that you shouldn't need
+  dnl this separation.
+  dnl
+  dnl Also allow directly setting the prefixes via configure options,
+  dnl overriding any default.
+  dnl
+  if test "x$prefix" = xNONE; then
+    am__usable_prefix=$ac_default_prefix
+  else
+    am__usable_prefix=$prefix
+  fi
+
+  # Allow user to request using sys.* values from Python,
+  # instead of the GNU $prefix values.
+  AC_ARG_WITH([python-sys-prefix],
+  [AS_HELP_STRING([--with-python-sys-prefix],
+                  [use Python's sys.prefix and sys.exec_prefix values])],
+  [am_use_python_sys=:],
+  [am_use_python_sys=false])
+
+  # Allow user to override whatever the default Python prefix is.
+  AC_ARG_WITH([python_prefix],
+  [AS_HELP_STRING([--with-python_prefix],
+                  [override the default PYTHON_PREFIX])],
+  [am_python_prefix_subst=$withval
+   am_cv_python_prefix=$withval
+   AC_MSG_CHECKING([for explicit $am_display_PYTHON prefix])
+   AC_MSG_RESULT([$am_cv_python_prefix])],
+  [
+   if $am_use_python_sys; then
+     # using python sys.prefix value, not GNU
+     AC_CACHE_CHECK([for python default $am_display_PYTHON prefix],
+     [am_cv_python_prefix],
+     [am_cv_python_prefix=`$PYTHON -c "import sys; sys.stdout.write(sys.prefix)"`])
+
+     dnl If sys.prefix is a subdir of $prefix, replace the literal value of
+     dnl $prefix with a variable reference so it can be overridden.
+     case $am_cv_python_prefix in
+     $am__usable_prefix*)
+       am__strip_prefix=`echo "$am__usable_prefix" | sed 's|.|.|g'`
+       am_python_prefix_subst=`echo "$am_cv_python_prefix" | sed "s,^$am__strip_prefix,\\${prefix},"`
+       ;;
+     *)
+       am_python_prefix_subst=$am_cv_python_prefix
+       ;;
+     esac
+   else # using GNU prefix value, not python sys.prefix
+     am_python_prefix_subst='${prefix}'
+     am_python_prefix=$am_python_prefix_subst
+     AC_MSG_CHECKING([for GNU default $am_display_PYTHON prefix])
+     AC_MSG_RESULT([$am_python_prefix])
+   fi])
+  # Substituting python_prefix_subst value.
+  AC_SUBST([PYTHON_PREFIX], [$am_python_prefix_subst])
+
+  # emacs-page Now do it all over again for Python exec_prefix, but with yet
+  # another conditional: fall back to regular prefix if that was specified.
+  AC_ARG_WITH([python_exec_prefix],
+  [AS_HELP_STRING([--with-python_exec_prefix],
+                  [override the default PYTHON_EXEC_PREFIX])],
+  [am_python_exec_prefix_subst=$withval
+   am_cv_python_exec_prefix=$withval
+   AC_MSG_CHECKING([for explicit $am_display_PYTHON exec_prefix])
+   AC_MSG_RESULT([$am_cv_python_exec_prefix])],
+  [
+   # no explicit --with-python_exec_prefix, but if
+   # --with-python_prefix was given, use its value for python_exec_prefix too.
+   AS_IF([test -n "$with_python_prefix"],
+   [am_python_exec_prefix_subst=$with_python_prefix
+    am_cv_python_exec_prefix=$with_python_prefix
+    AC_MSG_CHECKING([for python_prefix-given $am_display_PYTHON exec_prefix])
+    AC_MSG_RESULT([$am_cv_python_exec_prefix])],
+   [
+    # Set am__usable_exec_prefix whether using GNU or Python values,
+    # since we use that variable for pyexecdir.
+    if test "x$exec_prefix" = xNONE; then
+      am__usable_exec_prefix=$am__usable_prefix
+    else
+      am__usable_exec_prefix=$exec_prefix
+    fi
+    #
+    if $am_use_python_sys; then # using python sys.exec_prefix, not GNU
+      AC_CACHE_CHECK([for python default $am_display_PYTHON exec_prefix],
+      [am_cv_python_exec_prefix],
+      [am_cv_python_exec_prefix=`$PYTHON -c "import sys; sys.stdout.write(sys.exec_prefix)"`])
+      dnl If sys.exec_prefix is a subdir of $exec_prefix, replace the
+      dnl literal value of $exec_prefix with a variable reference so it can
+      dnl be overridden.
+      case $am_cv_python_exec_prefix in
+      $am__usable_exec_prefix*)
+        am__strip_prefix=`echo "$am__usable_exec_prefix" | sed 's|.|.|g'`
+        am_python_exec_prefix_subst=`echo "$am_cv_python_exec_prefix" | sed "s,^$am__strip_prefix,\\${exec_prefix},"`
+        ;;
+      *)
+        am_python_exec_prefix_subst=$am_cv_python_exec_prefix
+        ;;
+     esac
+   else # using GNU $exec_prefix, not python sys.exec_prefix
+     am_python_exec_prefix_subst='${exec_prefix}'
+     am_python_exec_prefix=$am_python_exec_prefix_subst
+     AC_MSG_CHECKING([for GNU default $am_display_PYTHON exec_prefix])
+     AC_MSG_RESULT([$am_python_exec_prefix])
+   fi])])
+  # Substituting python_exec_prefix_subst.
+  AC_SUBST([PYTHON_EXEC_PREFIX], [$am_python_exec_prefix_subst])
+
+  # Factor out some code duplication into this shell variable.
   am_python_setup_sysconfig="\
 import sys
 # Prefer sysconfig over distutils.sysconfig, for better compatibility
@@ -1211,96 +1387,95 @@
 except ImportError:
     pass"
 
-  dnl Set up 4 directories:
+  dnl emacs-page Set up 4 directories:
 
-  dnl pythondir -- where to install python scripts.  This is the
-  dnl   site-packages directory, not the python standard library
-  dnl   directory like in previous automake betas.  This behavior
-  dnl   is more consistent with lispdir.m4 for example.
+  dnl 1. pythondir: where to install python scripts.  This is the
+  dnl    site-packages directory, not the python standard library
+  dnl    directory like in previous automake betas.  This behavior
+  dnl    is more consistent with lispdir.m4 for example.
   dnl Query distutils for this directory.
-  AC_CACHE_CHECK([for $am_display_PYTHON script directory],
-    [am_cv_python_pythondir],
-    [if test "x$prefix" = xNONE
-     then
-       am_py_prefix=$ac_default_prefix
-     else
-       am_py_prefix=$prefix
-     fi
-     am_cv_python_pythondir=`$PYTHON -c "
+  dnl
+  AC_CACHE_CHECK([for $am_display_PYTHON script directory (pythondir)],
+  [am_cv_python_pythondir],
+  [if test "x$am_cv_python_prefix" = x; then
+     am_py_prefix=$am__usable_prefix
+   else
+     am_py_prefix=$am_cv_python_prefix
+   fi
+   am_cv_python_pythondir=`$PYTHON -c "
 $am_python_setup_sysconfig
 if can_use_sysconfig:
-    sitedir = sysconfig.get_path('purelib', vars={'base':'$am_py_prefix'})
+  sitedir = sysconfig.get_path('purelib', vars={'base':'$am_py_prefix'})
 else:
-    from distutils import sysconfig
-    sitedir = sysconfig.get_python_lib(0, 0, prefix='$am_py_prefix')
+  from distutils import sysconfig
+  sitedir = sysconfig.get_python_lib(0, 0, prefix='$am_py_prefix')
 sys.stdout.write(sitedir)"`
-     case $am_cv_python_pythondir in
-     $am_py_prefix*)
-       am__strip_prefix=`echo "$am_py_prefix" | sed 's|.|.|g'`
-       am_cv_python_pythondir=`echo "$am_cv_python_pythondir" | sed "s,^$am__strip_prefix,$PYTHON_PREFIX,"`
-       ;;
-     *)
-       case $am_py_prefix in
-         /usr|/System*) ;;
-         *)
-	  am_cv_python_pythondir=$PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages
-	  ;;
-       esac
-       ;;
+   #
+   case $am_cv_python_pythondir in
+   $am_py_prefix*)
+     am__strip_prefix=`echo "$am_py_prefix" | sed 's|.|.|g'`
+     am_cv_python_pythondir=`echo "$am_cv_python_pythondir" | sed "s,^$am__strip_prefix,\\${PYTHON_PREFIX},"`
+     ;;
+   *)
+     case $am_py_prefix in
+       /usr|/System*) ;;
+       *) am_cv_python_pythondir="\${PYTHON_PREFIX}/lib/python$PYTHON_VERSION/site-packages"
+          ;;
      esac
-    ])
+     ;;
+   esac
+  ])
   AC_SUBST([pythondir], [$am_cv_python_pythondir])
 
-  dnl pkgpythondir -- $PACKAGE directory under pythondir.  Was
-  dnl   PYTHON_SITE_PACKAGE in previous betas, but this naming is
-  dnl   more consistent with the rest of automake.
-
+  dnl 2. pkgpythondir: $PACKAGE directory under pythondir.  Was
+  dnl    PYTHON_SITE_PACKAGE in previous betas, but this naming is
+  dnl    more consistent with the rest of automake.
+  dnl
   AC_SUBST([pkgpythondir], [\${pythondir}/$PACKAGE])
 
-  dnl pyexecdir -- directory for installing python extension modules
-  dnl   (shared libraries)
+  dnl 3. pyexecdir: directory for installing python extension modules
+  dnl    (shared libraries).
   dnl Query distutils for this directory.
-  AC_CACHE_CHECK([for $am_display_PYTHON extension module directory],
-    [am_cv_python_pyexecdir],
-    [if test "x$exec_prefix" = xNONE
-     then
-       am_py_exec_prefix=$am_py_prefix
-     else
-       am_py_exec_prefix=$exec_prefix
-     fi
-     am_cv_python_pyexecdir=`$PYTHON -c "
+  dnl
+  AC_CACHE_CHECK([for $am_display_PYTHON extension module directory (pyexecdir)],
+  [am_cv_python_pyexecdir],
+  [if test "x$am_cv_python_exec_prefix" = x; then
+     am_py_exec_prefix=$am__usable_exec_prefix
+   else
+     am_py_exec_prefix=$am_cv_python_exec_prefix
+   fi
+   am_cv_python_pyexecdir=`$PYTHON -c "
 $am_python_setup_sysconfig
 if can_use_sysconfig:
-    sitedir = sysconfig.get_path('platlib', vars={'platbase':'$am_py_prefix'})
+  sitedir = sysconfig.get_path('platlib', vars={'platbase':'$am_py_exec_prefix'})
 else:
-    from distutils import sysconfig
-    sitedir = sysconfig.get_python_lib(1, 0, prefix='$am_py_prefix')
+  from distutils import sysconfig
+  sitedir = sysconfig.get_python_lib(1, 0, prefix='$am_py_exec_prefix')
 sys.stdout.write(sitedir)"`
-     case $am_cv_python_pyexecdir in
-     $am_py_exec_prefix*)
-       am__strip_prefix=`echo "$am_py_exec_prefix" | sed 's|.|.|g'`
-       am_cv_python_pyexecdir=`echo "$am_cv_python_pyexecdir" | sed "s,^$am__strip_prefix,$PYTHON_EXEC_PREFIX,"`
-       ;;
-     *)
-       case $am_py_exec_prefix in
-         /usr|/System*) ;;
-         *)
-	   am_cv_python_pyexecdir=$PYTHON_EXEC_PREFIX/lib/python$PYTHON_VERSION/site-packages
-	   ;;
-       esac
-       ;;
+   #
+   case $am_cv_python_pyexecdir in
+   $am_py_exec_prefix*)
+     am__strip_prefix=`echo "$am_py_exec_prefix" | sed 's|.|.|g'`
+     am_cv_python_pyexecdir=`echo "$am_cv_python_pyexecdir" | sed "s,^$am__strip_prefix,\\${PYTHON_EXEC_PREFIX},"`
+     ;;
+   *)
+     case $am_py_exec_prefix in
+       /usr|/System*) ;;
+       *) am_cv_python_pyexecdir="\${PYTHON_EXEC_PREFIX}/lib/python$PYTHON_VERSION/site-packages"
+          ;;
      esac
-    ])
+     ;;
+   esac
+  ])
   AC_SUBST([pyexecdir], [$am_cv_python_pyexecdir])
 
-  dnl pkgpyexecdir -- $(pyexecdir)/$(PACKAGE)
-
+  dnl 4. pkgpyexecdir: $(pyexecdir)/$(PACKAGE)
+  dnl
   AC_SUBST([pkgpyexecdir], [\${pyexecdir}/$PACKAGE])
 
   dnl Run any user-specified action.
   $2
   fi
-
 ])
 
 
@@ -1323,7 +1498,7 @@
 sys.exit(sys.hexversion < minverhex)"
   AS_IF([AM_RUN_LOG([$1 -c "$prog"])], [$3], [$4])])
 
-# Copyright (C) 2001-2014 Free Software Foundation, Inc.
+# Copyright (C) 2001-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1342,7 +1517,7 @@
 
 # Check to make sure that the build environment is sane.    -*- Autoconf -*-
 
-# Copyright (C) 1996-2014 Free Software Foundation, Inc.
+# Copyright (C) 1996-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1423,7 +1598,7 @@
 rm -f conftest.file
 ])
 
-# Copyright (C) 2009-2014 Free Software Foundation, Inc.
+# Copyright (C) 2009-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1483,7 +1658,7 @@
 _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
 ])
 
-# Copyright (C) 2001-2014 Free Software Foundation, Inc.
+# Copyright (C) 2001-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1511,7 +1686,7 @@
 INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
 AC_SUBST([INSTALL_STRIP_PROGRAM])])
 
-# Copyright (C) 2006-2014 Free Software Foundation, Inc.
+# Copyright (C) 2006-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1530,7 +1705,7 @@
 
 # Check how to create a tarball.                            -*- Autoconf -*-
 
-# Copyright (C) 2004-2014 Free Software Foundation, Inc.
+# Copyright (C) 2004-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
diff -Nru lirc-0.10.1/compile lirc-0.10.2/compile
--- lirc-0.10.1/compile	2017-09-10 08:52:38.000000000 +0000
+++ lirc-0.10.2/compile	2022-10-04 08:02:30.000000000 +0000
@@ -1,9 +1,9 @@
 #! /bin/sh
 # Wrapper for compilers which do not understand '-c -o'.
 
-scriptversion=2012-10-14.11; # UTC
+scriptversion=2018-03-07.03; # UTC
 
-# Copyright (C) 1999-2014 Free Software Foundation, Inc.
+# Copyright (C) 1999-2021 Free Software Foundation, Inc.
 # Written by Tom Tromey .
 #
 # This program is free software; you can redistribute it and/or modify
@@ -17,7 +17,7 @@
 # GNU General Public License for more details.
 #
 # You should have received a copy of the GNU General Public License
-# along with this program.  If not, see .
+# along with this program.  If not, see .
 
 # As a special exception to the GNU General Public License, if you
 # distribute this file as part of a program that contains a
@@ -53,7 +53,7 @@
 	  MINGW*)
 	    file_conv=mingw
 	    ;;
-	  CYGWIN*)
+	  CYGWIN* | MSYS*)
 	    file_conv=cygwin
 	    ;;
 	  *)
@@ -67,7 +67,7 @@
 	mingw/*)
 	  file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`
 	  ;;
-	cygwin/*)
+	cygwin/* | msys/*)
 	  file=`cygpath -m "$file" || echo "$file"`
 	  ;;
 	wine/*)
@@ -255,7 +255,8 @@
     echo "compile $scriptversion"
     exit $?
     ;;
-  cl | *[/\\]cl | cl.exe | *[/\\]cl.exe )
+  cl | *[/\\]cl | cl.exe | *[/\\]cl.exe | \
+  icl | *[/\\]icl | icl.exe | *[/\\]icl.exe )
     func_cl_wrapper "$@"      # Doesn't return...
     ;;
 esac
@@ -339,9 +340,9 @@
 # Local Variables:
 # mode: shell-script
 # sh-indentation: 2
-# eval: (add-hook 'write-file-hooks 'time-stamp)
+# eval: (add-hook 'before-save-hook 'time-stamp)
 # time-stamp-start: "scriptversion="
 # time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
+# time-stamp-time-zone: "UTC0"
 # time-stamp-end: "; # UTC"
 # End:
diff -Nru lirc-0.10.1/config.guess lirc-0.10.2/config.guess
--- lirc-0.10.1/config.guess	2017-09-10 08:52:38.000000000 +0000
+++ lirc-0.10.2/config.guess	2022-10-04 08:02:30.000000000 +0000
@@ -1,12 +1,14 @@
-#! /bin/sh
+#!/usr/bin/sh
 # Attempt to guess a canonical system name.
-#   Copyright 1992-2015 Free Software Foundation, Inc.
+#   Copyright 1992-2022 Free Software Foundation, Inc.
 
-timestamp='2015-01-01'
+# shellcheck disable=SC2006,SC2268 # see below for rationale
+
+timestamp='2022-05-25'
 
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 3 of the License, or
+# the Free Software Foundation, either version 3 of the License, or
 # (at your option) any later version.
 #
 # This program is distributed in the hope that it will be useful, but
@@ -15,7 +17,7 @@
 # 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 .
+# along with this program; if not, see .
 #
 # As a special exception to the GNU General Public License, if you
 # distribute this file as part of a program that contains a
@@ -27,11 +29,19 @@
 # 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
+# https://git.savannah.gnu.org/cgit/config.git/plain/config.guess
 #
 # Please send patches to .
 
 
+# The "shellcheck disable" line above the timestamp inhibits complaints
+# about features and limitations of the classic Bourne shell that were
+# superseded or lifted in POSIX.  However, this script identifies a wide
+# variety of pre-POSIX systems that do not have POSIX shells at all, and
+# even some reasonably current systems (Solaris 10 as case-in-point) still
+# have a pre-POSIX /bin/sh.
+
+
 me=`echo "$0" | sed -e 's,.*/,,'`
 
 usage="\
@@ -39,7 +49,7 @@
 
 Output the configuration name of the system \`$me' is run on.
 
-Operation modes:
+Options:
   -h, --help         print this help, then exit
   -t, --time-stamp   print date of last modification, then exit
   -v, --version      print version number, then exit
@@ -50,7 +60,7 @@
 GNU config.guess ($timestamp)
 
 Originally written by Per Bothner.
-Copyright 1992-2015 Free Software Foundation, Inc.
+Copyright 1992-2022 Free Software Foundation, Inc.
 
 This is free software; see the source for copying conditions.  There is NO
 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -84,7 +94,8 @@
   exit 1
 fi
 
-trap 'exit 1' 1 2 15
+# Just in case it came from the environment.
+GUESS=
 
 # CC_FOR_BUILD -- compiler used by this script. Note that the use of a
 # compiler to aid in system detection is discouraged as it requires
@@ -96,66 +107,90 @@
 
 # Portable tmp directory creation inspired by the Autoconf team.
 
-set_cc_for_build='
-trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
-trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
-: ${TMPDIR=/tmp} ;
- { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
- { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
- { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
- { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
-dummy=$tmp/dummy ;
-tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
-case $CC_FOR_BUILD,$HOST_CC,$CC in
- ,,)    echo "int x;" > $dummy.c ;
-	for c in cc gcc c89 c99 ; do
-	  if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
-	     CC_FOR_BUILD="$c"; break ;
-	  fi ;
-	done ;
-	if test x"$CC_FOR_BUILD" = x ; then
-	  CC_FOR_BUILD=no_compiler_found ;
-	fi
-	;;
- ,,*)   CC_FOR_BUILD=$CC ;;
- ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
-esac ; set_cc_for_build= ;'
+tmp=
+# shellcheck disable=SC2172
+trap 'test -z "$tmp" || rm -fr "$tmp"' 0 1 2 13 15
+
+set_cc_for_build() {
+    # prevent multiple calls if $tmp is already set
+    test "$tmp" && return 0
+    : "${TMPDIR=/tmp}"
+    # shellcheck disable=SC2039,SC3028
+    { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
+	{ test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir "$tmp" 2>/dev/null) ; } ||
+	{ tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir "$tmp" 2>/dev/null) && echo "Warning: creating insecure temp directory" >&2 ; } ||
+	{ echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; }
+    dummy=$tmp/dummy
+    case ${CC_FOR_BUILD-},${HOST_CC-},${CC-} in
+	,,)    echo "int x;" > "$dummy.c"
+	       for driver in cc gcc c89 c99 ; do
+		   if ($driver -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then
+		       CC_FOR_BUILD=$driver
+		       break
+		   fi
+	       done
+	       if test x"$CC_FOR_BUILD" = x ; then
+		   CC_FOR_BUILD=no_compiler_found
+	       fi
+	       ;;
+	,,*)   CC_FOR_BUILD=$CC ;;
+	,*,*)  CC_FOR_BUILD=$HOST_CC ;;
+    esac
+}
 
 # This is needed to find uname on a Pyramid OSx when run in the BSD universe.
 # (ghazi@noc.rutgers.edu 1994-08-24)
-if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
+if test -f /.attbin/uname ; then
 	PATH=$PATH:/.attbin ; export PATH
 fi
 
 UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
 UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
-UNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
+UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
 UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
 
-case "${UNAME_SYSTEM}" in
+case $UNAME_SYSTEM in
 Linux|GNU|GNU/*)
-	# If the system lacks a compiler, then just pick glibc.
-	# We could probably try harder.
-	LIBC=gnu
+	LIBC=unknown
 
-	eval $set_cc_for_build
-	cat <<-EOF > $dummy.c
+	set_cc_for_build
+	cat <<-EOF > "$dummy.c"
 	#include 
 	#if defined(__UCLIBC__)
 	LIBC=uclibc
 	#elif defined(__dietlibc__)
 	LIBC=dietlibc
-	#else
+	#elif defined(__GLIBC__)
 	LIBC=gnu
+	#else
+	#include 
+	/* First heuristic to detect musl libc.  */
+	#ifdef __DEFINED_va_list
+	LIBC=musl
+	#endif
 	#endif
 	EOF
-	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`
+	cc_set_libc=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`
+	eval "$cc_set_libc"
+
+	# Second heuristic to detect musl libc.
+	if [ "$LIBC" = unknown ] &&
+	   command -v ldd >/dev/null &&
+	   ldd --version 2>&1 | grep -q ^musl; then
+		LIBC=musl
+	fi
+
+	# If the system lacks a compiler, then just pick glibc.
+	# We could probably try harder.
+	if [ "$LIBC" = unknown ]; then
+		LIBC=gnu
+	fi
 	;;
 esac
 
 # Note: order is significant - the case branches are not exclusive.
 
-case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
+case $UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION in
     *:NetBSD:*:*)
 	# NetBSD (nbsd) targets should (where applicable) match one or
 	# more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*,
@@ -167,22 +202,32 @@
 	#
 	# Note: NetBSD doesn't particularly care about the vendor
 	# portion of the name.  We always set it to "unknown".
-	sysctl="sysctl -n hw.machine_arch"
-	UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
-	    /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
-	case "${UNAME_MACHINE_ARCH}" in
+	UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \
+	    /sbin/sysctl -n hw.machine_arch 2>/dev/null || \
+	    /usr/sbin/sysctl -n hw.machine_arch 2>/dev/null || \
+	    echo unknown)`
+	case $UNAME_MACHINE_ARCH in
+	    aarch64eb) machine=aarch64_be-unknown ;;
 	    armeb) machine=armeb-unknown ;;
 	    arm*) machine=arm-unknown ;;
 	    sh3el) machine=shl-unknown ;;
 	    sh3eb) machine=sh-unknown ;;
 	    sh5el) machine=sh5le-unknown ;;
-	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
+	    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.
-	case "${UNAME_MACHINE_ARCH}" in
+	# 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
+		set_cc_for_build
 		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
 			| grep -q __ELF__
 		then
@@ -197,45 +242,80 @@
 		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
 	# kernel version information, so it can be replaced with a
 	# suitable tag, in the style of linux-gnu.
-	case "${UNAME_VERSION}" in
+	case $UNAME_VERSION in
 	    Debian*)
 		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}"
-	exit ;;
+	GUESS=$machine-${os}${release}${abi-}
+	;;
     *:Bitrig:*:*)
 	UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
-	echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE}
-	exit ;;
+	GUESS=$UNAME_MACHINE_ARCH-unknown-bitrig$UNAME_RELEASE
+	;;
     *:OpenBSD:*:*)
 	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
-	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
-	exit ;;
+	GUESS=$UNAME_MACHINE_ARCH-unknown-openbsd$UNAME_RELEASE
+	;;
+    *:SecBSD:*:*)
+	UNAME_MACHINE_ARCH=`arch | sed 's/SecBSD.//'`
+	GUESS=$UNAME_MACHINE_ARCH-unknown-secbsd$UNAME_RELEASE
+	;;
+    *:LibertyBSD:*:*)
+	UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'`
+	GUESS=$UNAME_MACHINE_ARCH-unknown-libertybsd$UNAME_RELEASE
+	;;
+    *:MidnightBSD:*:*)
+	GUESS=$UNAME_MACHINE-unknown-midnightbsd$UNAME_RELEASE
+	;;
     *:ekkoBSD:*:*)
-	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
-	exit ;;
+	GUESS=$UNAME_MACHINE-unknown-ekkobsd$UNAME_RELEASE
+	;;
     *:SolidBSD:*:*)
-	echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
-	exit ;;
+	GUESS=$UNAME_MACHINE-unknown-solidbsd$UNAME_RELEASE
+	;;
+    *:OS108:*:*)
+	GUESS=$UNAME_MACHINE-unknown-os108_$UNAME_RELEASE
+	;;
     macppc:MirBSD:*:*)
-	echo powerpc-unknown-mirbsd${UNAME_RELEASE}
-	exit ;;
+	GUESS=powerpc-unknown-mirbsd$UNAME_RELEASE
+	;;
     *:MirBSD:*:*)
-	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
-	exit ;;
+	GUESS=$UNAME_MACHINE-unknown-mirbsd$UNAME_RELEASE
+	;;
+    *:Sortix:*:*)
+	GUESS=$UNAME_MACHINE-unknown-sortix
+	;;
+    *:Twizzler:*:*)
+	GUESS=$UNAME_MACHINE-unknown-twizzler
+	;;
+    *:Redox:*:*)
+	GUESS=$UNAME_MACHINE-unknown-redox
+	;;
+    mips:OSF1:*.*)
+	GUESS=mips-dec-osf1
+	;;
     alpha:OSF1:*:*)
+	# Reset EXIT trap before exiting to avoid spurious non-zero exit code.
+	trap '' 0
 	case $UNAME_RELEASE in
 	*4.0)
 		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
@@ -249,163 +329,158 @@
 	# covers most systems running today.  This code pipes the CPU
 	# types through head -n 1, so we only detect the type of CPU 0.
 	ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
-	case "$ALPHA_CPU_TYPE" in
+	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'`
-	# Reset EXIT trap before exiting to avoid spurious non-zero exit code.
-	exitcode=$?
-	trap '' 0
-	exit $exitcode ;;
-    Alpha\ *:Windows_NT*:*)
-	# How do we know it's Interix rather than the generic POSIX subsystem?
-	# Should we change UNAME_MACHINE based on the output of uname instead
-	# of the specific Alpha model?
-	echo alpha-pc-interix
-	exit ;;
-    21064:Windows_NT:50:3)
-	echo alpha-dec-winnt3.5
-	exit ;;
+	OSF_REL=`echo "$UNAME_RELEASE" | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`
+	GUESS=$UNAME_MACHINE-dec-osf$OSF_REL
+	;;
     Amiga*:UNIX_System_V:4.0:*)
-	echo m68k-unknown-sysv4
-	exit ;;
+	GUESS=m68k-unknown-sysv4
+	;;
     *:[Aa]miga[Oo][Ss]:*:*)
-	echo ${UNAME_MACHINE}-unknown-amigaos
-	exit ;;
+	GUESS=$UNAME_MACHINE-unknown-amigaos
+	;;
     *:[Mm]orph[Oo][Ss]:*:*)
-	echo ${UNAME_MACHINE}-unknown-morphos
-	exit ;;
+	GUESS=$UNAME_MACHINE-unknown-morphos
+	;;
     *:OS/390:*:*)
-	echo i370-ibm-openedition
-	exit ;;
+	GUESS=i370-ibm-openedition
+	;;
     *:z/VM:*:*)
-	echo s390-ibm-zvmoe
-	exit ;;
+	GUESS=s390-ibm-zvmoe
+	;;
     *:OS400:*:*)
-	echo powerpc-ibm-os400
-	exit ;;
+	GUESS=powerpc-ibm-os400
+	;;
     arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
-	echo arm-acorn-riscix${UNAME_RELEASE}
-	exit ;;
+	GUESS=arm-acorn-riscix$UNAME_RELEASE
+	;;
     arm*:riscos:*:*|arm*:RISCOS:*:*)
-	echo arm-unknown-riscos
-	exit ;;
+	GUESS=arm-unknown-riscos
+	;;
     SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
-	echo hppa1.1-hitachi-hiuxmpp
-	exit ;;
+	GUESS=hppa1.1-hitachi-hiuxmpp
+	;;
     Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
 	# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
-	if test "`(/bin/universe) 2>/dev/null`" = att ; then
-		echo pyramid-pyramid-sysv3
-	else
-		echo pyramid-pyramid-bsd
-	fi
-	exit ;;
+	case `(/bin/universe) 2>/dev/null` in
+	    att) GUESS=pyramid-pyramid-sysv3 ;;
+	    *)   GUESS=pyramid-pyramid-bsd   ;;
+	esac
+	;;
     NILE*:*:*:dcosx)
-	echo pyramid-pyramid-svr4
-	exit ;;
+	GUESS=pyramid-pyramid-svr4
+	;;
     DRS?6000:unix:4.0:6*)
-	echo sparc-icl-nx6
-	exit ;;
+	GUESS=sparc-icl-nx6
+	;;
     DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
 	case `/usr/bin/uname -p` in
-	    sparc) echo sparc-icl-nx7; exit ;;
-	esac ;;
+	    sparc) GUESS=sparc-icl-nx7 ;;
+	esac
+	;;
     s390x:SunOS:*:*)
-	echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit ;;
+	SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`
+	GUESS=$UNAME_MACHINE-ibm-solaris2$SUN_REL
+	;;
     sun4H:SunOS:5.*:*)
-	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit ;;
+	SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`
+	GUESS=sparc-hal-solaris2$SUN_REL
+	;;
     sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
-	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit ;;
+	SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`
+	GUESS=sparc-sun-solaris2$SUN_REL
+	;;
     i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
-	echo i386-pc-auroraux${UNAME_RELEASE}
-	exit ;;
+	GUESS=i386-pc-auroraux$UNAME_RELEASE
+	;;
     i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
-	eval $set_cc_for_build
-	SUN_ARCH="i386"
+	set_cc_for_build
+	SUN_ARCH=i386
 	# If there is a compiler, see if it is configured for 64-bit objects.
 	# Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
 	# This test works for both compilers.
-	if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
+	if test "$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 -m64 -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/[^.]*//'`
-	exit ;;
+	SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`
+	GUESS=$SUN_ARCH-pc-solaris2$SUN_REL
+	;;
     sun4*:SunOS:6*:*)
 	# According to config.sub, this is the proper way to canonicalize
 	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
 	# it's likely to be more like Solaris than SunOS4.
-	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit ;;
+	SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`
+	GUESS=sparc-sun-solaris3$SUN_REL
+	;;
     sun4*:SunOS:*:*)
-	case "`/usr/bin/arch -k`" in
+	case `/usr/bin/arch -k` in
 	    Series*|S4*)
 		UNAME_RELEASE=`uname -v`
 		;;
 	esac
 	# Japanese Language versions have a version number like `4.1.3-JL'.
-	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
-	exit ;;
+	SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/-/_/'`
+	GUESS=sparc-sun-sunos$SUN_REL
+	;;
     sun3*:SunOS:*:*)
-	echo m68k-sun-sunos${UNAME_RELEASE}
-	exit ;;
+	GUESS=m68k-sun-sunos$UNAME_RELEASE
+	;;
     sun*:*:4.2BSD:*)
 	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
-	test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
-	case "`/bin/arch`" in
+	test "x$UNAME_RELEASE" = x && UNAME_RELEASE=3
+	case `/bin/arch` in
 	    sun3)
-		echo m68k-sun-sunos${UNAME_RELEASE}
+		GUESS=m68k-sun-sunos$UNAME_RELEASE
 		;;
 	    sun4)
-		echo sparc-sun-sunos${UNAME_RELEASE}
+		GUESS=sparc-sun-sunos$UNAME_RELEASE
 		;;
 	esac
-	exit ;;
+	;;
     aushp:SunOS:*:*)
-	echo sparc-auspex-sunos${UNAME_RELEASE}
-	exit ;;
+	GUESS=sparc-auspex-sunos$UNAME_RELEASE
+	;;
     # The situation for MiNT is a little confusing.  The machine name
     # can be virtually everything (everything which is not
     # "atarist" or "atariste" at least should have a processor
@@ -415,44 +490,44 @@
     # MiNT.  But MiNT is downward compatible to TOS, so this should
     # be no problem.
     atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
-	echo m68k-atari-mint${UNAME_RELEASE}
-	exit ;;
+	GUESS=m68k-atari-mint$UNAME_RELEASE
+	;;
     atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
-	echo m68k-atari-mint${UNAME_RELEASE}
-	exit ;;
+	GUESS=m68k-atari-mint$UNAME_RELEASE
+	;;
     *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
-	echo m68k-atari-mint${UNAME_RELEASE}
-	exit ;;
+	GUESS=m68k-atari-mint$UNAME_RELEASE
+	;;
     milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
-	echo m68k-milan-mint${UNAME_RELEASE}
-	exit ;;
+	GUESS=m68k-milan-mint$UNAME_RELEASE
+	;;
     hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
-	echo m68k-hades-mint${UNAME_RELEASE}
-	exit ;;
+	GUESS=m68k-hades-mint$UNAME_RELEASE
+	;;
     *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
-	echo m68k-unknown-mint${UNAME_RELEASE}
-	exit ;;
+	GUESS=m68k-unknown-mint$UNAME_RELEASE
+	;;
     m68k:machten:*:*)
-	echo m68k-apple-machten${UNAME_RELEASE}
-	exit ;;
+	GUESS=m68k-apple-machten$UNAME_RELEASE
+	;;
     powerpc:machten:*:*)
-	echo powerpc-apple-machten${UNAME_RELEASE}
-	exit ;;
+	GUESS=powerpc-apple-machten$UNAME_RELEASE
+	;;
     RISC*:Mach:*:*)
-	echo mips-dec-mach_bsd4.3
-	exit ;;
+	GUESS=mips-dec-mach_bsd4.3
+	;;
     RISC*:ULTRIX:*:*)
-	echo mips-dec-ultrix${UNAME_RELEASE}
-	exit ;;
+	GUESS=mips-dec-ultrix$UNAME_RELEASE
+	;;
     VAX*:ULTRIX*:*:*)
-	echo vax-dec-ultrix${UNAME_RELEASE}
-	exit ;;
+	GUESS=vax-dec-ultrix$UNAME_RELEASE
+	;;
     2020:CLIX:*:* | 2430:CLIX:*:*)
-	echo clipper-intergraph-clix${UNAME_RELEASE}
-	exit ;;
+	GUESS=clipper-intergraph-clix$UNAME_RELEASE
+	;;
     mips:*:*:UMIPS | mips:*:*:RISCos)
-	eval $set_cc_for_build
-	sed 's/^	//' << EOF >$dummy.c
+	set_cc_for_build
+	sed 's/^	//' << EOF > "$dummy.c"
 #ifdef __cplusplus
 #include   /* for printf() prototype */
 	int main (int argc, char *argv[]) {
@@ -461,95 +536,96 @@
 #endif
 	#if defined (host_mips) && defined (MIPSEB)
 	#if defined (SYSTYPE_SYSV)
-	  printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
+	  printf ("mips-mips-riscos%ssysv\\n", argv[1]); exit (0);
 	#endif
 	#if defined (SYSTYPE_SVR4)
-	  printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
+	  printf ("mips-mips-riscos%ssvr4\\n", argv[1]); exit (0);
 	#endif
 	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
-	  printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
+	  printf ("mips-mips-riscos%sbsd\\n", argv[1]); exit (0);
 	#endif
 	#endif
 	  exit (-1);
 	}
 EOF
-	$CC_FOR_BUILD -o $dummy $dummy.c &&
-	  dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
-	  SYSTEM_NAME=`$dummy $dummyarg` &&
+	$CC_FOR_BUILD -o "$dummy" "$dummy.c" &&
+	  dummyarg=`echo "$UNAME_RELEASE" | sed -n 's/\([0-9]*\).*/\1/p'` &&
+	  SYSTEM_NAME=`"$dummy" "$dummyarg"` &&
 	    { echo "$SYSTEM_NAME"; exit; }
-	echo mips-mips-riscos${UNAME_RELEASE}
-	exit ;;
+	GUESS=mips-mips-riscos$UNAME_RELEASE
+	;;
     Motorola:PowerMAX_OS:*:*)
-	echo powerpc-motorola-powermax
-	exit ;;
+	GUESS=powerpc-motorola-powermax
+	;;
     Motorola:*:4.3:PL8-*)
-	echo powerpc-harris-powermax
-	exit ;;
+	GUESS=powerpc-harris-powermax
+	;;
     Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
-	echo powerpc-harris-powermax
-	exit ;;
+	GUESS=powerpc-harris-powermax
+	;;
     Night_Hawk:Power_UNIX:*:*)
-	echo powerpc-harris-powerunix
-	exit ;;
+	GUESS=powerpc-harris-powerunix
+	;;
     m88k:CX/UX:7*:*)
-	echo m88k-harris-cxux7
-	exit ;;
+	GUESS=m88k-harris-cxux7
+	;;
     m88k:*:4*:R4*)
-	echo m88k-motorola-sysv4
-	exit ;;
+	GUESS=m88k-motorola-sysv4
+	;;
     m88k:*:3*:R3*)
-	echo m88k-motorola-sysv3
-	exit ;;
+	GUESS=m88k-motorola-sysv3
+	;;
     AViiON:dgux:*:*)
 	# DG/UX returns AViiON for all architectures
 	UNAME_PROCESSOR=`/usr/bin/uname -p`
-	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
+	if test "$UNAME_PROCESSOR" = mc88100 || test "$UNAME_PROCESSOR" = mc88110
 	then
-	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
-	       [ ${TARGET_BINARY_INTERFACE}x = x ]
+	    if test "$TARGET_BINARY_INTERFACE"x = m88kdguxelfx || \
+	       test "$TARGET_BINARY_INTERFACE"x = x
 	    then
-		echo m88k-dg-dgux${UNAME_RELEASE}
+		GUESS=m88k-dg-dgux$UNAME_RELEASE
 	    else
-		echo m88k-dg-dguxbcs${UNAME_RELEASE}
+		GUESS=m88k-dg-dguxbcs$UNAME_RELEASE
 	    fi
 	else
-	    echo i586-dg-dgux${UNAME_RELEASE}
+	    GUESS=i586-dg-dgux$UNAME_RELEASE
 	fi
-	exit ;;
+	;;
     M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
-	echo m88k-dolphin-sysv3
-	exit ;;
+	GUESS=m88k-dolphin-sysv3
+	;;
     M88*:*:R3*:*)
 	# Delta 88k system running SVR3
-	echo m88k-motorola-sysv3
-	exit ;;
+	GUESS=m88k-motorola-sysv3
+	;;
     XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
-	echo m88k-tektronix-sysv3
-	exit ;;
+	GUESS=m88k-tektronix-sysv3
+	;;
     Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
-	echo m68k-tektronix-bsd
-	exit ;;
+	GUESS=m68k-tektronix-bsd
+	;;
     *:IRIX*:*:*)
-	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
-	exit ;;
+	IRIX_REL=`echo "$UNAME_RELEASE" | sed -e 's/-/_/g'`
+	GUESS=mips-sgi-irix$IRIX_REL
+	;;
     ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
-	echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
-	exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
+	GUESS=romp-ibm-aix    # uname -m gives an 8 hex-code CPU id
+	;;                    # Note that: echo "'`uname -s`'" gives 'AIX '
     i*86:AIX:*:*)
-	echo i386-ibm-aix
-	exit ;;
+	GUESS=i386-ibm-aix
+	;;
     ia64:AIX:*:*)
-	if [ -x /usr/bin/oslevel ] ; then
+	if test -x /usr/bin/oslevel ; then
 		IBM_REV=`/usr/bin/oslevel`
 	else
-		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
+		IBM_REV=$UNAME_VERSION.$UNAME_RELEASE
 	fi
-	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
-	exit ;;
+	GUESS=$UNAME_MACHINE-ibm-aix$IBM_REV
+	;;
     *:AIX:2:3)
 	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
-		eval $set_cc_for_build
-		sed 's/^		//' << EOF >$dummy.c
+		set_cc_for_build
+		sed 's/^		//' << EOF > "$dummy.c"
 		#include 
 
 		main()
@@ -560,77 +636,77 @@
 			exit(0);
 			}
 EOF
-		if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
+		if $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"`
 		then
-			echo "$SYSTEM_NAME"
+			GUESS=$SYSTEM_NAME
 		else
-			echo rs6000-ibm-aix3.2.5
+			GUESS=rs6000-ibm-aix3.2.5
 		fi
 	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
-		echo rs6000-ibm-aix3.2.4
+		GUESS=rs6000-ibm-aix3.2.4
 	else
-		echo rs6000-ibm-aix3.2
+		GUESS=rs6000-ibm-aix3.2
 	fi
-	exit ;;
+	;;
     *:AIX:*:[4567])
 	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
-	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
+	if /usr/sbin/lsattr -El "$IBM_CPU_ID" | grep ' POWER' >/dev/null 2>&1; then
 		IBM_ARCH=rs6000
 	else
 		IBM_ARCH=powerpc
 	fi
-	if [ -x /usr/bin/lslpp ] ; then
-		IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc |
+	if test -x /usr/bin/lslpp ; then
+		IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc | \
 			   awk -F: '{ print $3 }' | sed s/[0-9]*$/0/`
 	else
-		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
+		IBM_REV=$UNAME_VERSION.$UNAME_RELEASE
 	fi
-	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
-	exit ;;
+	GUESS=$IBM_ARCH-ibm-aix$IBM_REV
+	;;
     *:AIX:*:*)
-	echo rs6000-ibm-aix
-	exit ;;
-    ibmrt:4.4BSD:*|romp-ibm:BSD:*)
-	echo romp-ibm-bsd4.4
-	exit ;;
+	GUESS=rs6000-ibm-aix
+	;;
+    ibmrt:4.4BSD:*|romp-ibm:4.4BSD:*)
+	GUESS=romp-ibm-bsd4.4
+	;;
     ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
-	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
-	exit ;;                             # report: romp-ibm BSD 4.3
+	GUESS=romp-ibm-bsd$UNAME_RELEASE    # 4.3 with uname added to
+	;;                                  # report: romp-ibm BSD 4.3
     *:BOSX:*:*)
-	echo rs6000-bull-bosx
-	exit ;;
+	GUESS=rs6000-bull-bosx
+	;;
     DPX/2?00:B.O.S.:*:*)
-	echo m68k-bull-sysv3
-	exit ;;
+	GUESS=m68k-bull-sysv3
+	;;
     9000/[34]??:4.3bsd:1.*:*)
-	echo m68k-hp-bsd
-	exit ;;
+	GUESS=m68k-hp-bsd
+	;;
     hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
-	echo m68k-hp-bsd4.4
-	exit ;;
+	GUESS=m68k-hp-bsd4.4
+	;;
     9000/[34678]??:HP-UX:*:*)
-	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
-	case "${UNAME_MACHINE}" in
-	    9000/31? )            HP_ARCH=m68000 ;;
-	    9000/[34]?? )         HP_ARCH=m68k ;;
+	HPUX_REV=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*.[0B]*//'`
+	case $UNAME_MACHINE in
+	    9000/31?)            HP_ARCH=m68000 ;;
+	    9000/[34]??)         HP_ARCH=m68k ;;
 	    9000/[678][0-9][0-9])
-		if [ -x /usr/bin/getconf ]; then
+		if test -x /usr/bin/getconf; then
 		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
 		    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
-		    case "${sc_cpu_version}" in
-		      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
-		      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
+		    case $sc_cpu_version in
+		      523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0
+		      528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1
 		      532)                      # CPU_PA_RISC2_0
-			case "${sc_kernel_bits}" in
-			  32) HP_ARCH="hppa2.0n" ;;
-			  64) HP_ARCH="hppa2.0w" ;;
-			  '') HP_ARCH="hppa2.0" ;;   # HP-UX 10.20
+			case $sc_kernel_bits in
+			  32) HP_ARCH=hppa2.0n ;;
+			  64) HP_ARCH=hppa2.0w ;;
+			  '') HP_ARCH=hppa2.0 ;;   # HP-UX 10.20
 			esac ;;
 		    esac
 		fi
-		if [ "${HP_ARCH}" = "" ]; then
-		    eval $set_cc_for_build
-		    sed 's/^		//' << EOF >$dummy.c
+		if test "$HP_ARCH" = ""; then
+		    set_cc_for_build
+		    sed 's/^		//' << EOF > "$dummy.c"
 
 		#define _HPUX_SOURCE
 		#include 
@@ -663,13 +739,13 @@
 		    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 test "$HP_ARCH" = hppa2.0w
 	then
-	    eval $set_cc_for_build
+	    set_cc_for_build
 
 	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
 	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
@@ -680,23 +756,23 @@
 	    # $ 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}
-	exit ;;
+	GUESS=$HP_ARCH-hp-hpux$HPUX_REV
+	;;
     ia64:HP-UX:*:*)
-	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
-	echo ia64-hp-hpux${HPUX_REV}
-	exit ;;
+	HPUX_REV=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*.[0B]*//'`
+	GUESS=ia64-hp-hpux$HPUX_REV
+	;;
     3050*:HI-UX:*:*)
-	eval $set_cc_for_build
-	sed 's/^	//' << EOF >$dummy.c
+	set_cc_for_build
+	sed 's/^	//' << EOF > "$dummy.c"
 	#include 
 	int
 	main ()
@@ -721,38 +797,38 @@
 	  exit (0);
 	}
 EOF
-	$CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
+	$CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` &&
 		{ echo "$SYSTEM_NAME"; exit; }
-	echo unknown-hitachi-hiuxwe2
-	exit ;;
-    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
-	echo hppa1.1-hp-bsd
-	exit ;;
+	GUESS=unknown-hitachi-hiuxwe2
+	;;
+    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:*)
+	GUESS=hppa1.1-hp-bsd
+	;;
     9000/8??:4.3bsd:*:*)
-	echo hppa1.0-hp-bsd
-	exit ;;
+	GUESS=hppa1.0-hp-bsd
+	;;
     *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
-	echo hppa1.0-hp-mpeix
-	exit ;;
-    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
-	echo hppa1.1-hp-osf
-	exit ;;
+	GUESS=hppa1.0-hp-mpeix
+	;;
+    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:*)
+	GUESS=hppa1.1-hp-osf
+	;;
     hp8??:OSF1:*:*)
-	echo hppa1.0-hp-osf
-	exit ;;
+	GUESS=hppa1.0-hp-osf
+	;;
     i*86:OSF1:*:*)
-	if [ -x /usr/sbin/sysversion ] ; then
-	    echo ${UNAME_MACHINE}-unknown-osf1mk
+	if test -x /usr/sbin/sysversion ; then
+	    GUESS=$UNAME_MACHINE-unknown-osf1mk
 	else
-	    echo ${UNAME_MACHINE}-unknown-osf1
+	    GUESS=$UNAME_MACHINE-unknown-osf1
 	fi
-	exit ;;
+	;;
     parisc*:Lites*:*:*)
-	echo hppa1.1-hp-lites
-	exit ;;
+	GUESS=hppa1.1-hp-lites
+	;;
     C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
-	echo c1-convex-bsd
-	exit ;;
+	GUESS=c1-convex-bsd
+	;;
     C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
 	if getsysinfo -f scalar_acc
 	then echo c32-convex-bsd
@@ -760,139 +836,148 @@
 	fi
 	exit ;;
     C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
-	echo c34-convex-bsd
-	exit ;;
+	GUESS=c34-convex-bsd
+	;;
     C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
-	echo c38-convex-bsd
-	exit ;;
+	GUESS=c38-convex-bsd
+	;;
     C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
-	echo c4-convex-bsd
-	exit ;;
+	GUESS=c4-convex-bsd
+	;;
     CRAY*Y-MP:*:*:*)
-	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-	exit ;;
+	CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'`
+	GUESS=ymp-cray-unicos$CRAY_REL
+	;;
     CRAY*[A-Z]90:*:*:*)
-	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
+	echo "$UNAME_MACHINE"-cray-unicos"$UNAME_RELEASE" \
 	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
 	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
 	      -e 's/\.[^.]*$/.X/'
 	exit ;;
     CRAY*TS:*:*:*)
-	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-	exit ;;
+	CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'`
+	GUESS=t90-cray-unicos$CRAY_REL
+	;;
     CRAY*T3E:*:*:*)
-	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-	exit ;;
+	CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'`
+	GUESS=alphaev5-cray-unicosmk$CRAY_REL
+	;;
     CRAY*SV1:*:*:*)
-	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-	exit ;;
+	CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'`
+	GUESS=sv1-cray-unicos$CRAY_REL
+	;;
     *:UNICOS/mp:*:*)
-	echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-	exit ;;
+	CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'`
+	GUESS=craynv-cray-unicosmp$CRAY_REL
+	;;
     F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
-	FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
-	FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
-	FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
-	echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
-	exit ;;
+	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/ /_/'`
+	GUESS=${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}
+	;;
     5000:UNIX_System_V:4.*:*)
-	FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
-	FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
-	echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
-	exit ;;
+	FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
+	FUJITSU_REL=`echo "$UNAME_RELEASE" | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'`
+	GUESS=sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}
+	;;
     i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
-	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
-	exit ;;
+	GUESS=$UNAME_MACHINE-pc-bsdi$UNAME_RELEASE
+	;;
     sparc*:BSD/OS:*:*)
-	echo sparc-unknown-bsdi${UNAME_RELEASE}
-	exit ;;
+	GUESS=sparc-unknown-bsdi$UNAME_RELEASE
+	;;
     *:BSD/OS:*:*)
-	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
-	exit ;;
+	GUESS=$UNAME_MACHINE-unknown-bsdi$UNAME_RELEASE
+	;;
+    arm:FreeBSD:*:*)
+	UNAME_PROCESSOR=`uname -p`
+	set_cc_for_build
+	if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
+	    | grep -q __ARM_PCS_VFP
+	then
+	    FREEBSD_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'`
+	    GUESS=$UNAME_PROCESSOR-unknown-freebsd$FREEBSD_REL-gnueabi
+	else
+	    FREEBSD_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'`
+	    GUESS=$UNAME_PROCESSOR-unknown-freebsd$FREEBSD_REL-gnueabihf
+	fi
+	;;
     *:FreeBSD:*:*)
 	UNAME_PROCESSOR=`/usr/bin/uname -p`
-	case ${UNAME_PROCESSOR} in
+	case $UNAME_PROCESSOR in
 	    amd64)
-		echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
-	    *)
-		echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+		UNAME_PROCESSOR=x86_64 ;;
+	    i386)
+		UNAME_PROCESSOR=i586 ;;
 	esac
-	exit ;;
+	FREEBSD_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'`
+	GUESS=$UNAME_PROCESSOR-unknown-freebsd$FREEBSD_REL
+	;;
     i*:CYGWIN*:*)
-	echo ${UNAME_MACHINE}-pc-cygwin
-	exit ;;
+	GUESS=$UNAME_MACHINE-pc-cygwin
+	;;
     *:MINGW64*:*)
-	echo ${UNAME_MACHINE}-pc-mingw64
-	exit ;;
+	GUESS=$UNAME_MACHINE-pc-mingw64
+	;;
     *:MINGW*:*)
-	echo ${UNAME_MACHINE}-pc-mingw32
-	exit ;;
+	GUESS=$UNAME_MACHINE-pc-mingw32
+	;;
     *:MSYS*:*)
-	echo ${UNAME_MACHINE}-pc-msys
-	exit ;;
-    i*:windows32*:*)
-	# uname -m includes "-pc" on this system.
-	echo ${UNAME_MACHINE}-mingw32
-	exit ;;
+	GUESS=$UNAME_MACHINE-pc-msys
+	;;
     i*:PW*:*)
-	echo ${UNAME_MACHINE}-pc-pw32
-	exit ;;
+	GUESS=$UNAME_MACHINE-pc-pw32
+	;;
+    *:SerenityOS:*:*)
+        GUESS=$UNAME_MACHINE-pc-serenity
+        ;;
     *:Interix*:*)
-	case ${UNAME_MACHINE} in
+	case $UNAME_MACHINE in
 	    x86)
-		echo i586-pc-interix${UNAME_RELEASE}
-		exit ;;
+		GUESS=i586-pc-interix$UNAME_RELEASE
+		;;
 	    authenticamd | genuineintel | EM64T)
-		echo x86_64-unknown-interix${UNAME_RELEASE}
-		exit ;;
+		GUESS=x86_64-unknown-interix$UNAME_RELEASE
+		;;
 	    IA64)
-		echo ia64-unknown-interix${UNAME_RELEASE}
-		exit ;;
+		GUESS=ia64-unknown-interix$UNAME_RELEASE
+		;;
 	esac ;;
-    [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
-	echo i${UNAME_MACHINE}-pc-mks
-	exit ;;
-    8664:Windows_NT:*)
-	echo x86_64-pc-mks
-	exit ;;
-    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
-	# How do we know it's Interix rather than the generic POSIX subsystem?
-	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
-	# UNAME_MACHINE based on the output of uname instead of i386?
-	echo i586-pc-interix
-	exit ;;
     i*:UWIN*:*)
-	echo ${UNAME_MACHINE}-pc-uwin
-	exit ;;
+	GUESS=$UNAME_MACHINE-pc-uwin
+	;;
     amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
-	echo x86_64-unknown-cygwin
-	exit ;;
-    p*:CYGWIN*:*)
-	echo powerpcle-unknown-cygwin
-	exit ;;
+	GUESS=x86_64-pc-cygwin
+	;;
     prep*:SunOS:5.*:*)
-	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit ;;
+	SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`
+	GUESS=powerpcle-unknown-solaris2$SUN_REL
+	;;
     *:GNU:*:*)
 	# the GNU system
-	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
-	exit ;;
+	GNU_ARCH=`echo "$UNAME_MACHINE" | sed -e 's,[-/].*$,,'`
+	GNU_REL=`echo "$UNAME_RELEASE" | sed -e 's,/.*$,,'`
+	GUESS=$GNU_ARCH-unknown-$LIBC$GNU_REL
+	;;
     *: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}
-	exit ;;
-    i*86:Minix:*:*)
-	echo ${UNAME_MACHINE}-pc-minix
-	exit ;;
+	GNU_SYS=`echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"`
+	GNU_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'`
+	GUESS=$UNAME_MACHINE-unknown-$GNU_SYS$GNU_REL-$LIBC
+	;;
+    *:Minix:*:*)
+	GUESS=$UNAME_MACHINE-unknown-minix
+	;;
     aarch64:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
-	exit ;;
+	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	;;
     aarch64_be:Linux:*:*)
 	UNAME_MACHINE=aarch64_be
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
-	exit ;;
+	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	;;
     alpha:Linux:*:*)
-	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
+	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' /proc/cpuinfo 2>/dev/null` in
 	  EV5)   UNAME_MACHINE=alphaev5 ;;
 	  EV56)  UNAME_MACHINE=alphaev56 ;;
 	  PCA56) UNAME_MACHINE=alphapca56 ;;
@@ -902,172 +987,237 @@
 	  EV68*) UNAME_MACHINE=alphaev68 ;;
 	esac
 	objdump --private-headers /bin/sh | grep -q ld.so.1
-	if test "$?" = 0 ; then LIBC="gnulibc1" ; fi
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
-	exit ;;
-    arc:Linux:*:* | arceb:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
-	exit ;;
+	if test "$?" = 0 ; then LIBC=gnulibc1 ; fi
+	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	;;
+    arc:Linux:*:* | arceb:Linux:*:* | arc32:Linux:*:* | arc64:Linux:*:*)
+	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	;;
     arm*:Linux:*:*)
-	eval $set_cc_for_build
+	set_cc_for_build
 	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
 	    | grep -q __ARM_EABI__
 	then
-	    echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+	    GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
 	else
 	    if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
 		| grep -q __ARM_PCS_VFP
 	    then
-		echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi
+		GUESS=$UNAME_MACHINE-unknown-linux-${LIBC}eabi
 	    else
-		echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf
+		GUESS=$UNAME_MACHINE-unknown-linux-${LIBC}eabihf
 	    fi
 	fi
-	exit ;;
+	;;
     avr32*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
-	exit ;;
+	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	;;
     cris:Linux:*:*)
-	echo ${UNAME_MACHINE}-axis-linux-${LIBC}
-	exit ;;
+	GUESS=$UNAME_MACHINE-axis-linux-$LIBC
+	;;
     crisv32:Linux:*:*)
-	echo ${UNAME_MACHINE}-axis-linux-${LIBC}
-	exit ;;
+	GUESS=$UNAME_MACHINE-axis-linux-$LIBC
+	;;
+    e2k:Linux:*:*)
+	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	;;
     frv:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
-	exit ;;
+	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	;;
     hexagon:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
-	exit ;;
+	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	;;
     i*86:Linux:*:*)
-	echo ${UNAME_MACHINE}-pc-linux-${LIBC}
-	exit ;;
+	GUESS=$UNAME_MACHINE-pc-linux-$LIBC
+	;;
     ia64:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
-	exit ;;
+	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	;;
+    k1om:Linux:*:*)
+	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	;;
+    loongarch32:Linux:*:* | loongarch64:Linux:*:* | loongarchx32:Linux:*:*)
+	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	;;
     m32r*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
-	exit ;;
+	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	;;
     m68*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
-	exit ;;
+	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	;;
     mips:Linux:*:* | mips64:Linux:*:*)
-	eval $set_cc_for_build
-	sed 's/^	//' << EOF >$dummy.c
+	set_cc_for_build
+	IS_GLIBC=0
+	test x"${LIBC}" = xgnu && IS_GLIBC=1
+	sed 's/^	//' << EOF > "$dummy.c"
 	#undef CPU
-	#undef ${UNAME_MACHINE}
-	#undef ${UNAME_MACHINE}el
+	#undef mips
+	#undef mipsel
+	#undef mips64
+	#undef mips64el
+	#if ${IS_GLIBC} && defined(_ABI64)
+	LIBCABI=gnuabi64
+	#else
+	#if ${IS_GLIBC} && defined(_ABIN32)
+	LIBCABI=gnuabin32
+	#else
+	LIBCABI=${LIBC}
+	#endif
+	#endif
+
+	#if ${IS_GLIBC} && defined(__mips64) && defined(__mips_isa_rev) && __mips_isa_rev>=6
+	CPU=mipsisa64r6
+	#else
+	#if ${IS_GLIBC} && !defined(__mips64) && defined(__mips_isa_rev) && __mips_isa_rev>=6
+	CPU=mipsisa32r6
+	#else
+	#if defined(__mips64)
+	CPU=mips64
+	#else
+	CPU=mips
+	#endif
+	#endif
+	#endif
+
 	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
-	CPU=${UNAME_MACHINE}el
+	MIPS_ENDIAN=el
 	#else
 	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
-	CPU=${UNAME_MACHINE}
+	MIPS_ENDIAN=
 	#else
-	CPU=
+	MIPS_ENDIAN=
 	#endif
 	#endif
 EOF
-	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
-	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; }
+	cc_set_vars=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU\|^MIPS_ENDIAN\|^LIBCABI'`
+	eval "$cc_set_vars"
+	test "x$CPU" != x && { echo "$CPU${MIPS_ENDIAN}-unknown-linux-$LIBCABI"; exit; }
+	;;
+    mips64el:Linux:*:*)
+	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
 	;;
     openrisc*:Linux:*:*)
-	echo or1k-unknown-linux-${LIBC}
-	exit ;;
+	GUESS=or1k-unknown-linux-$LIBC
+	;;
     or32:Linux:*:* | or1k*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
-	exit ;;
+	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	;;
     padre:Linux:*:*)
-	echo sparc-unknown-linux-${LIBC}
-	exit ;;
+	GUESS=sparc-unknown-linux-$LIBC
+	;;
     parisc64:Linux:*:* | hppa64:Linux:*:*)
-	echo hppa64-unknown-linux-${LIBC}
-	exit ;;
+	GUESS=hppa64-unknown-linux-$LIBC
+	;;
     parisc:Linux:*:* | hppa:Linux:*:*)
 	# Look for CPU level
 	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
-	  PA7*) echo hppa1.1-unknown-linux-${LIBC} ;;
-	  PA8*) echo hppa2.0-unknown-linux-${LIBC} ;;
-	  *)    echo hppa-unknown-linux-${LIBC} ;;
+	  PA7*) GUESS=hppa1.1-unknown-linux-$LIBC ;;
+	  PA8*) GUESS=hppa2.0-unknown-linux-$LIBC ;;
+	  *)    GUESS=hppa-unknown-linux-$LIBC ;;
 	esac
-	exit ;;
+	;;
     ppc64:Linux:*:*)
-	echo powerpc64-unknown-linux-${LIBC}
-	exit ;;
+	GUESS=powerpc64-unknown-linux-$LIBC
+	;;
     ppc:Linux:*:*)
-	echo powerpc-unknown-linux-${LIBC}
-	exit ;;
+	GUESS=powerpc-unknown-linux-$LIBC
+	;;
     ppc64le:Linux:*:*)
-	echo powerpc64le-unknown-linux-${LIBC}
-	exit ;;
+	GUESS=powerpc64le-unknown-linux-$LIBC
+	;;
     ppcle:Linux:*:*)
-	echo powerpcle-unknown-linux-${LIBC}
-	exit ;;
+	GUESS=powerpcle-unknown-linux-$LIBC
+	;;
+    riscv32:Linux:*:* | riscv32be:Linux:*:* | riscv64:Linux:*:* | riscv64be:Linux:*:*)
+	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	;;
     s390:Linux:*:* | s390x:Linux:*:*)
-	echo ${UNAME_MACHINE}-ibm-linux-${LIBC}
-	exit ;;
+	GUESS=$UNAME_MACHINE-ibm-linux-$LIBC
+	;;
     sh64*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
-	exit ;;
+	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	;;
     sh*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
-	exit ;;
+	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	;;
     sparc:Linux:*:* | sparc64:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
-	exit ;;
+	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	;;
     tile*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
-	exit ;;
+	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	;;
     vax:Linux:*:*)
-	echo ${UNAME_MACHINE}-dec-linux-${LIBC}
-	exit ;;
+	GUESS=$UNAME_MACHINE-dec-linux-$LIBC
+	;;
     x86_64:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
-	exit ;;
+	set_cc_for_build
+	CPU=$UNAME_MACHINE
+	LIBCABI=$LIBC
+	if test "$CC_FOR_BUILD" != no_compiler_found; then
+	    ABI=64
+	    sed 's/^	    //' << EOF > "$dummy.c"
+	    #ifdef __i386__
+	    ABI=x86
+	    #else
+	    #ifdef __ILP32__
+	    ABI=x32
+	    #endif
+	    #endif
+EOF
+	    cc_set_abi=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^ABI' | sed 's, ,,g'`
+	    eval "$cc_set_abi"
+	    case $ABI in
+		x86) CPU=i686 ;;
+		x32) LIBCABI=${LIBC}x32 ;;
+	    esac
+	fi
+	GUESS=$CPU-pc-linux-$LIBCABI
+	;;
     xtensa*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
-	exit ;;
+	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	;;
     i*86:DYNIX/ptx:4*:*)
 	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
 	# earlier versions are messed up and put the nodename in both
 	# sysname and nodename.
-	echo i386-sequent-sysv4
-	exit ;;
+	GUESS=i386-sequent-sysv4
+	;;
     i*86:UNIX_SV:4.2MP:2.*)
 	# Unixware is an offshoot of SVR4, but it has its own version
 	# number series starting with 2...
 	# I am not positive that other SVR4 systems won't match this,
 	# I just have to hope.  -- rms.
 	# Use sysv4.2uw... so that sysv4* matches it.
-	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
-	exit ;;
+	GUESS=$UNAME_MACHINE-pc-sysv4.2uw$UNAME_VERSION
+	;;
     i*86:OS/2:*:*)
 	# If we were able to find `uname', then EMX Unix compatibility
 	# is probably installed.
-	echo ${UNAME_MACHINE}-pc-os2-emx
-	exit ;;
+	GUESS=$UNAME_MACHINE-pc-os2-emx
+	;;
     i*86:XTS-300:*:STOP)
-	echo ${UNAME_MACHINE}-unknown-stop
-	exit ;;
+	GUESS=$UNAME_MACHINE-unknown-stop
+	;;
     i*86:atheos:*:*)
-	echo ${UNAME_MACHINE}-unknown-atheos
-	exit ;;
+	GUESS=$UNAME_MACHINE-unknown-atheos
+	;;
     i*86:syllable:*:*)
-	echo ${UNAME_MACHINE}-pc-syllable
-	exit ;;
+	GUESS=$UNAME_MACHINE-pc-syllable
+	;;
     i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
-	echo i386-unknown-lynxos${UNAME_RELEASE}
-	exit ;;
+	GUESS=i386-unknown-lynxos$UNAME_RELEASE
+	;;
     i*86:*DOS:*:*)
-	echo ${UNAME_MACHINE}-pc-msdosdjgpp
-	exit ;;
-    i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
-	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
+	GUESS=$UNAME_MACHINE-pc-msdosdjgpp
+	;;
+    i*86:*:4.*:*)
+	UNAME_REL=`echo "$UNAME_RELEASE" | sed 's/\/MP$//'`
 	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
-		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
+		GUESS=$UNAME_MACHINE-univel-sysv$UNAME_REL
 	else
-		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
+		GUESS=$UNAME_MACHINE-pc-sysv$UNAME_REL
 	fi
-	exit ;;
+	;;
     i*86:*:5:[678]*)
 	# UnixWare 7.x, OpenUNIX and OpenServer 6.
 	case `/bin/uname -X | grep "^Machine"` in
@@ -1075,12 +1225,12 @@
 	    *Pentium)	     UNAME_MACHINE=i586 ;;
 	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
 	esac
-	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
-	exit ;;
+	GUESS=$UNAME_MACHINE-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
+	;;
     i*86:*:3.2:*)
 	if test -f /usr/options/cb.name; then
 		UNAME_REL=`sed -n 's/.*Version //p' /dev/null >/dev/null ; then
 		UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
 		(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
@@ -1090,43 +1240,43 @@
 			&& UNAME_MACHINE=i686
 		(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
 			&& UNAME_MACHINE=i686
-		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
+		GUESS=$UNAME_MACHINE-pc-sco$UNAME_REL
 	else
-		echo ${UNAME_MACHINE}-pc-sysv32
+		GUESS=$UNAME_MACHINE-pc-sysv32
 	fi
-	exit ;;
+	;;
     pc:*:*:*)
 	# Left here for compatibility:
 	# uname -m prints for DJGPP always 'pc', but it prints nothing about
 	# the processor, so we play safe by assuming i586.
 	# Note: whatever this is, it MUST be the same as what config.sub
-	# prints for the "djgpp" host, or else GDB configury will decide that
+	# prints for the "djgpp" host, or else GDB configure will decide that
 	# this is a cross-build.
-	echo i586-pc-msdosdjgpp
-	exit ;;
+	GUESS=i586-pc-msdosdjgpp
+	;;
     Intel:Mach:3*:*)
-	echo i386-pc-mach3
-	exit ;;
+	GUESS=i386-pc-mach3
+	;;
     paragon:*:*:*)
-	echo i860-intel-osf1
-	exit ;;
+	GUESS=i860-intel-osf1
+	;;
     i860:*:4.*:*) # i860-SVR4
 	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
-	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
+	  GUESS=i860-stardent-sysv$UNAME_RELEASE    # Stardent Vistra i860-SVR4
 	else # Add other i860-SVR4 vendors below as they are discovered.
-	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
+	  GUESS=i860-unknown-sysv$UNAME_RELEASE     # Unknown i860-SVR4
 	fi
-	exit ;;
+	;;
     mini*:CTIX:SYS*5:*)
 	# "miniframe"
-	echo m68010-convergent-sysv
-	exit ;;
+	GUESS=m68010-convergent-sysv
+	;;
     mc68k:UNIX:SYSTEM5:3.51m)
-	echo m68k-convergent-sysv
-	exit ;;
+	GUESS=m68k-convergent-sysv
+	;;
     M680?0:D-NIX:5.3:*)
-	echo m68k-diab-dnix
-	exit ;;
+	GUESS=m68k-diab-dnix
+	;;
     M68*:*:R3V[5678]*:*)
 	test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
     3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)
@@ -1134,9 +1284,9 @@
 	test -r /etc/.relid \
 	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
 	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
-	  && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
+	  && { echo i486-ncr-sysv4.3"$OS_REL"; exit; }
 	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
-	  && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
+	  && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;;
     3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
 	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
 	  && { echo i486-ncr-sysv4; exit; } ;;
@@ -1145,248 +1295,444 @@
 	test -r /etc/.relid \
 	    && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
 	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
-	    && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
+	    && { echo i486-ncr-sysv4.3"$OS_REL"; exit; }
 	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
-	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
+	    && { echo i586-ncr-sysv4.3"$OS_REL"; exit; }
 	/bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
-	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
+	    && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;;
     m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
-	echo m68k-unknown-lynxos${UNAME_RELEASE}
-	exit ;;
+	GUESS=m68k-unknown-lynxos$UNAME_RELEASE
+	;;
     mc68030:UNIX_System_V:4.*:*)
-	echo m68k-atari-sysv4
-	exit ;;
+	GUESS=m68k-atari-sysv4
+	;;
     TSUNAMI:LynxOS:2.*:*)
-	echo sparc-unknown-lynxos${UNAME_RELEASE}
-	exit ;;
+	GUESS=sparc-unknown-lynxos$UNAME_RELEASE
+	;;
     rs6000:LynxOS:2.*:*)
-	echo rs6000-unknown-lynxos${UNAME_RELEASE}
-	exit ;;
+	GUESS=rs6000-unknown-lynxos$UNAME_RELEASE
+	;;
     PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
-	echo powerpc-unknown-lynxos${UNAME_RELEASE}
-	exit ;;
+	GUESS=powerpc-unknown-lynxos$UNAME_RELEASE
+	;;
     SM[BE]S:UNIX_SV:*:*)
-	echo mips-dde-sysv${UNAME_RELEASE}
-	exit ;;
+	GUESS=mips-dde-sysv$UNAME_RELEASE
+	;;
     RM*:ReliantUNIX-*:*:*)
-	echo mips-sni-sysv4
-	exit ;;
+	GUESS=mips-sni-sysv4
+	;;
     RM*:SINIX-*:*:*)
-	echo mips-sni-sysv4
-	exit ;;
+	GUESS=mips-sni-sysv4
+	;;
     *:SINIX-*:*:*)
 	if uname -p 2>/dev/null >/dev/null ; then
 		UNAME_MACHINE=`(uname -p) 2>/dev/null`
-		echo ${UNAME_MACHINE}-sni-sysv4
+		GUESS=$UNAME_MACHINE-sni-sysv4
 	else
-		echo ns32k-sni-sysv
+		GUESS=ns32k-sni-sysv
 	fi
-	exit ;;
+	;;
     PENTIUM:*:4.0*:*)	# Unisys `ClearPath HMP IX 4000' SVR4/MP effort
 			# says 
-	echo i586-unisys-sysv4
-	exit ;;
+	GUESS=i586-unisys-sysv4
+	;;
     *:UNIX_System_V:4*:FTX*)
 	# From Gerald Hewes .
 	# How about differentiating between stratus architectures? -djm
-	echo hppa1.1-stratus-sysv4
-	exit ;;
+	GUESS=hppa1.1-stratus-sysv4
+	;;
     *:*:*:FTX*)
 	# From seanf@swdc.stratus.com.
-	echo i860-stratus-sysv4
-	exit ;;
+	GUESS=i860-stratus-sysv4
+	;;
     i*86:VOS:*:*)
 	# From Paul.Green@stratus.com.
-	echo ${UNAME_MACHINE}-stratus-vos
-	exit ;;
+	GUESS=$UNAME_MACHINE-stratus-vos
+	;;
     *:VOS:*:*)
 	# From Paul.Green@stratus.com.
-	echo hppa1.1-stratus-vos
-	exit ;;
+	GUESS=hppa1.1-stratus-vos
+	;;
     mc68*:A/UX:*:*)
-	echo m68k-apple-aux${UNAME_RELEASE}
-	exit ;;
+	GUESS=m68k-apple-aux$UNAME_RELEASE
+	;;
     news*:NEWS-OS:6*:*)
-	echo mips-sony-newsos6
-	exit ;;
+	GUESS=mips-sony-newsos6
+	;;
     R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
-	if [ -d /usr/nec ]; then
-		echo mips-nec-sysv${UNAME_RELEASE}
+	if test -d /usr/nec; then
+		GUESS=mips-nec-sysv$UNAME_RELEASE
 	else
-		echo mips-unknown-sysv${UNAME_RELEASE}
+		GUESS=mips-unknown-sysv$UNAME_RELEASE
 	fi
-	exit ;;
+	;;
     BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
-	echo powerpc-be-beos
-	exit ;;
+	GUESS=powerpc-be-beos
+	;;
     BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
-	echo powerpc-apple-beos
-	exit ;;
+	GUESS=powerpc-apple-beos
+	;;
     BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
-	echo i586-pc-beos
-	exit ;;
+	GUESS=i586-pc-beos
+	;;
     BePC:Haiku:*:*)	# Haiku running on Intel PC compatible.
-	echo i586-pc-haiku
-	exit ;;
-    x86_64:Haiku:*:*)
-	echo x86_64-unknown-haiku
-	exit ;;
+	GUESS=i586-pc-haiku
+	;;
+    ppc:Haiku:*:*)	# Haiku running on Apple PowerPC
+	GUESS=powerpc-apple-haiku
+	;;
+    *:Haiku:*:*)	# Haiku modern gcc (not bound by BeOS compat)
+	GUESS=$UNAME_MACHINE-unknown-haiku
+	;;
     SX-4:SUPER-UX:*:*)
-	echo sx4-nec-superux${UNAME_RELEASE}
-	exit ;;
+	GUESS=sx4-nec-superux$UNAME_RELEASE
+	;;
     SX-5:SUPER-UX:*:*)
-	echo sx5-nec-superux${UNAME_RELEASE}
-	exit ;;
+	GUESS=sx5-nec-superux$UNAME_RELEASE
+	;;
     SX-6:SUPER-UX:*:*)
-	echo sx6-nec-superux${UNAME_RELEASE}
-	exit ;;
+	GUESS=sx6-nec-superux$UNAME_RELEASE
+	;;
     SX-7:SUPER-UX:*:*)
-	echo sx7-nec-superux${UNAME_RELEASE}
-	exit ;;
+	GUESS=sx7-nec-superux$UNAME_RELEASE
+	;;
     SX-8:SUPER-UX:*:*)
-	echo sx8-nec-superux${UNAME_RELEASE}
-	exit ;;
+	GUESS=sx8-nec-superux$UNAME_RELEASE
+	;;
     SX-8R:SUPER-UX:*:*)
-	echo sx8r-nec-superux${UNAME_RELEASE}
-	exit ;;
+	GUESS=sx8r-nec-superux$UNAME_RELEASE
+	;;
+    SX-ACE:SUPER-UX:*:*)
+	GUESS=sxace-nec-superux$UNAME_RELEASE
+	;;
     Power*:Rhapsody:*:*)
-	echo powerpc-apple-rhapsody${UNAME_RELEASE}
-	exit ;;
+	GUESS=powerpc-apple-rhapsody$UNAME_RELEASE
+	;;
     *:Rhapsody:*:*)
-	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
-	exit ;;
+	GUESS=$UNAME_MACHINE-apple-rhapsody$UNAME_RELEASE
+	;;
+    arm64:Darwin:*:*)
+	GUESS=aarch64-apple-darwin$UNAME_RELEASE
+	;;
     *:Darwin:*:*)
-	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
-	eval $set_cc_for_build
-	if test "$UNAME_PROCESSOR" = unknown ; then
-	    UNAME_PROCESSOR=powerpc
-	fi
-	if test `echo "$UNAME_RELEASE" | sed -e 's/\..*//'` -le 10 ; 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) | \
-		    grep IS_64BIT_ARCH >/dev/null
-		then
-		    case $UNAME_PROCESSOR in
-			i386) UNAME_PROCESSOR=x86_64 ;;
-			powerpc) UNAME_PROCESSOR=powerpc64 ;;
-		    esac
-		fi
+	UNAME_PROCESSOR=`uname -p`
+	case $UNAME_PROCESSOR in
+	    unknown) UNAME_PROCESSOR=powerpc ;;
+	esac
+	if command -v xcode-select > /dev/null 2> /dev/null && \
+		! xcode-select --print-path > /dev/null 2> /dev/null ; then
+	    # Avoid executing cc if there is no toolchain installed as
+	    # cc will be a stub that puts up a graphical alert
+	    # prompting the user to install developer tools.
+	    CC_FOR_BUILD=no_compiler_found
+	else
+	    set_cc_for_build
+	fi
+	if test "$CC_FOR_BUILD" != no_compiler_found; then
+	    if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
+		   (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
+		   grep IS_64BIT_ARCH >/dev/null
+	    then
+		case $UNAME_PROCESSOR in
+		    i386) UNAME_PROCESSOR=x86_64 ;;
+		    powerpc) UNAME_PROCESSOR=powerpc64 ;;
+		esac
+	    fi
+	    # On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc
+	    if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \
+		   (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
+		   grep IS_PPC >/dev/null
+	    then
+		UNAME_PROCESSOR=powerpc
 	    fi
 	elif test "$UNAME_PROCESSOR" = i386 ; then
-	    # Avoid executing cc on OS X 10.9, as it ships with a stub
-	    # that puts up a graphical alert prompting to install
-	    # developer tools.  Any system running Mac OS X 10.7 or
-	    # later (Darwin 11 and later) is required to have a 64-bit
-	    # processor. This is not true of the ARM version of Darwin
-	    # that Apple uses in portable devices.
-	    UNAME_PROCESSOR=x86_64
+	    # uname -m returns i386 or x86_64
+	    UNAME_PROCESSOR=$UNAME_MACHINE
 	fi
-	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
-	exit ;;
+	GUESS=$UNAME_PROCESSOR-apple-darwin$UNAME_RELEASE
+	;;
     *: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
-	echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
-	exit ;;
+	GUESS=$UNAME_PROCESSOR-$UNAME_MACHINE-nto-qnx$UNAME_RELEASE
+	;;
     *:QNX:*:4*)
-	echo i386-pc-qnx
-	exit ;;
-    NEO-?:NONSTOP_KERNEL:*:*)
-	echo neo-tandem-nsk${UNAME_RELEASE}
-	exit ;;
+	GUESS=i386-pc-qnx
+	;;
+    NEO-*:NONSTOP_KERNEL:*:*)
+	GUESS=neo-tandem-nsk$UNAME_RELEASE
+	;;
     NSE-*:NONSTOP_KERNEL:*:*)
-	echo nse-tandem-nsk${UNAME_RELEASE}
-	exit ;;
-    NSR-?:NONSTOP_KERNEL:*:*)
-	echo nsr-tandem-nsk${UNAME_RELEASE}
-	exit ;;
+	GUESS=nse-tandem-nsk$UNAME_RELEASE
+	;;
+    NSR-*:NONSTOP_KERNEL:*:*)
+	GUESS=nsr-tandem-nsk$UNAME_RELEASE
+	;;
+    NSV-*:NONSTOP_KERNEL:*:*)
+	GUESS=nsv-tandem-nsk$UNAME_RELEASE
+	;;
+    NSX-*:NONSTOP_KERNEL:*:*)
+	GUESS=nsx-tandem-nsk$UNAME_RELEASE
+	;;
     *:NonStop-UX:*:*)
-	echo mips-compaq-nonstopux
-	exit ;;
+	GUESS=mips-compaq-nonstopux
+	;;
     BS2000:POSIX*:*:*)
-	echo bs2000-siemens-sysv
-	exit ;;
+	GUESS=bs2000-siemens-sysv
+	;;
     DS/*:UNIX_System_V:*:*)
-	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
-	exit ;;
+	GUESS=$UNAME_MACHINE-$UNAME_SYSTEM-$UNAME_RELEASE
+	;;
     *:Plan9:*:*)
 	# "uname -m" is not consistent, so use $cputype instead. 386
 	# is converted to i386 for consistency with other x86
 	# operating systems.
-	if test "$cputype" = "386"; then
+	if test "${cputype-}" = 386; then
 	    UNAME_MACHINE=i386
-	else
-	    UNAME_MACHINE="$cputype"
+	elif test "x${cputype-}" != x; then
+	    UNAME_MACHINE=$cputype
 	fi
-	echo ${UNAME_MACHINE}-unknown-plan9
-	exit ;;
+	GUESS=$UNAME_MACHINE-unknown-plan9
+	;;
     *:TOPS-10:*:*)
-	echo pdp10-unknown-tops10
-	exit ;;
+	GUESS=pdp10-unknown-tops10
+	;;
     *:TENEX:*:*)
-	echo pdp10-unknown-tenex
-	exit ;;
+	GUESS=pdp10-unknown-tenex
+	;;
     KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
-	echo pdp10-dec-tops20
-	exit ;;
+	GUESS=pdp10-dec-tops20
+	;;
     XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
-	echo pdp10-xkl-tops20
-	exit ;;
+	GUESS=pdp10-xkl-tops20
+	;;
     *:TOPS-20:*:*)
-	echo pdp10-unknown-tops20
-	exit ;;
+	GUESS=pdp10-unknown-tops20
+	;;
     *:ITS:*:*)
-	echo pdp10-unknown-its
-	exit ;;
+	GUESS=pdp10-unknown-its
+	;;
     SEI:*:*:SEIUX)
-	echo mips-sei-seiux${UNAME_RELEASE}
-	exit ;;
+	GUESS=mips-sei-seiux$UNAME_RELEASE
+	;;
     *:DragonFly:*:*)
-	echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
-	exit ;;
+	DRAGONFLY_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'`
+	GUESS=$UNAME_MACHINE-unknown-dragonfly$DRAGONFLY_REL
+	;;
     *:*VMS:*:*)
 	UNAME_MACHINE=`(uname -p) 2>/dev/null`
-	case "${UNAME_MACHINE}" in
-	    A*) echo alpha-dec-vms ; exit ;;
-	    I*) echo ia64-dec-vms ; exit ;;
-	    V*) echo vax-dec-vms ; exit ;;
+	case $UNAME_MACHINE in
+	    A*) GUESS=alpha-dec-vms ;;
+	    I*) GUESS=ia64-dec-vms ;;
+	    V*) GUESS=vax-dec-vms ;;
 	esac ;;
     *:XENIX:*:SysV)
-	echo i386-pc-xenix
-	exit ;;
+	GUESS=i386-pc-xenix
+	;;
     i*86:skyos:*:*)
-	echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
-	exit ;;
+	SKYOS_REL=`echo "$UNAME_RELEASE" | sed -e 's/ .*$//'`
+	GUESS=$UNAME_MACHINE-pc-skyos$SKYOS_REL
+	;;
     i*86:rdos:*:*)
-	echo ${UNAME_MACHINE}-pc-rdos
-	exit ;;
-    i*86:AROS:*:*)
-	echo ${UNAME_MACHINE}-pc-aros
-	exit ;;
+	GUESS=$UNAME_MACHINE-pc-rdos
+	;;
+    i*86:Fiwix:*:*)
+	GUESS=$UNAME_MACHINE-pc-fiwix
+	;;
+    *:AROS:*:*)
+	GUESS=$UNAME_MACHINE-unknown-aros
+	;;
     x86_64:VMkernel:*:*)
-	echo ${UNAME_MACHINE}-unknown-esx
-	exit ;;
+	GUESS=$UNAME_MACHINE-unknown-esx
+	;;
+    amd64:Isilon\ OneFS:*:*)
+	GUESS=x86_64-unknown-onefs
+	;;
+    *:Unleashed:*:*)
+	GUESS=$UNAME_MACHINE-unknown-unleashed$UNAME_RELEASE
+	;;
+esac
+
+# Do we have a guess based on uname results?
+if test "x$GUESS" != x; then
+    echo "$GUESS"
+    exit
+fi
+
+# No uname command or uname output not recognized.
+set_cc_for_build
+cat > "$dummy.c" <
+#include 
+#endif
+#if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || defined(__ultrix__)
+#if defined (vax) || defined (__vax) || defined (__vax__) || defined(mips) || defined(__mips) || defined(__mips__) || defined(MIPS) || defined(__MIPS__)
+#include 
+#if defined(_SIZE_T_) || defined(SIGLOST)
+#include 
+#endif
+#endif
+#endif
+main ()
+{
+#if defined (sony)
+#if defined (MIPSEB)
+  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
+     I don't know....  */
+  printf ("mips-sony-bsd\n"); exit (0);
+#else
+#include 
+  printf ("m68k-sony-newsos%s\n",
+#ifdef NEWSOS4
+  "4"
+#else
+  ""
+#endif
+  ); exit (0);
+#endif
+#endif
+
+#if defined (NeXT)
+#if !defined (__ARCHITECTURE__)
+#define __ARCHITECTURE__ "m68k"
+#endif
+  int version;
+  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
+  if (version < 4)
+    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
+  else
+    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
+  exit (0);
+#endif
+
+#if defined (MULTIMAX) || defined (n16)
+#if defined (UMAXV)
+  printf ("ns32k-encore-sysv\n"); exit (0);
+#else
+#if defined (CMU)
+  printf ("ns32k-encore-mach\n"); exit (0);
+#else
+  printf ("ns32k-encore-bsd\n"); exit (0);
+#endif
+#endif
+#endif
+
+#if defined (__386BSD__)
+  printf ("i386-pc-bsd\n"); exit (0);
+#endif
+
+#if defined (sequent)
+#if defined (i386)
+  printf ("i386-sequent-dynix\n"); exit (0);
+#endif
+#if defined (ns32000)
+  printf ("ns32k-sequent-dynix\n"); exit (0);
+#endif
+#endif
+
+#if defined (_SEQUENT_)
+  struct utsname un;
+
+  uname(&un);
+  if (strncmp(un.version, "V2", 2) == 0) {
+    printf ("i386-sequent-ptx2\n"); exit (0);
+  }
+  if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
+    printf ("i386-sequent-ptx1\n"); exit (0);
+  }
+  printf ("i386-sequent-ptx\n"); exit (0);
+#endif
+
+#if defined (vax)
+#if !defined (ultrix)
+#include 
+#if defined (BSD)
+#if BSD == 43
+  printf ("vax-dec-bsd4.3\n"); exit (0);
+#else
+#if BSD == 199006
+  printf ("vax-dec-bsd4.3reno\n"); exit (0);
+#else
+  printf ("vax-dec-bsd\n"); exit (0);
+#endif
+#endif
+#else
+  printf ("vax-dec-bsd\n"); exit (0);
+#endif
+#else
+#if defined(_SIZE_T_) || defined(SIGLOST)
+  struct utsname un;
+  uname (&un);
+  printf ("vax-dec-ultrix%s\n", un.release); exit (0);
+#else
+  printf ("vax-dec-ultrix\n"); exit (0);
+#endif
+#endif
+#endif
+#if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || defined(__ultrix__)
+#if defined(mips) || defined(__mips) || defined(__mips__) || defined(MIPS) || defined(__MIPS__)
+#if defined(_SIZE_T_) || defined(SIGLOST)
+  struct utsname *un;
+  uname (&un);
+  printf ("mips-dec-ultrix%s\n", un.release); exit (0);
+#else
+  printf ("mips-dec-ultrix\n"); exit (0);
+#endif
+#endif
+#endif
+
+#if defined (alliant) && defined (i860)
+  printf ("i860-alliant-bsd\n"); exit (0);
+#endif
+
+  exit (1);
+}
+EOF
+
+$CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null && SYSTEM_NAME=`"$dummy"` &&
+	{ echo "$SYSTEM_NAME"; exit; }
+
+# Apollos put the system type in the environment.
+test -d /usr/apollo && { echo "$ISP-apollo-$SYSTYPE"; exit; }
+
+echo "$0: unable to guess system type" >&2
+
+case $UNAME_MACHINE:$UNAME_SYSTEM in
+    mips:Linux | mips64:Linux)
+	# If we got here on MIPS GNU/Linux, output extra information.
+	cat >&2 <&2 < in order to provide the needed
-information to handle your system.
+our_year=`echo $timestamp | sed 's,-.*,,'`
+thisyear=`date +%Y`
+# shellcheck disable=SC2003
+script_age=`expr "$thisyear" - "$our_year"`
+if test "$script_age" -lt 3 ; then
+   cat >&2 </dev/null`
 /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
 
-UNAME_MACHINE = ${UNAME_MACHINE}
-UNAME_RELEASE = ${UNAME_RELEASE}
-UNAME_SYSTEM  = ${UNAME_SYSTEM}
-UNAME_VERSION = ${UNAME_VERSION}
+UNAME_MACHINE = "$UNAME_MACHINE"
+UNAME_RELEASE = "$UNAME_RELEASE"
+UNAME_SYSTEM  = "$UNAME_SYSTEM"
+UNAME_VERSION = "$UNAME_VERSION"
 EOF
+fi
 
 exit 1
 
 # Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
+# eval: (add-hook 'before-save-hook 'time-stamp)
 # time-stamp-start: "timestamp='"
 # time-stamp-format: "%:y-%02m-%02d"
 # time-stamp-end: "'"
diff -Nru lirc-0.10.1/config.h.in lirc-0.10.2/config.h.in
--- lirc-0.10.1/config.h.in	2017-09-10 08:52:36.000000000 +0000
+++ lirc-0.10.2/config.h.in	2022-10-04 08:02:30.000000000 +0000
@@ -1,8 +1,6 @@
 /* config.h.in.  Generated from configure.ac by autoheader.  */
 
 
-#ifndef ROOT_CONFIG_H
-#define ROOT_CONFIG_H
 #include     "paths.h"
 
 
@@ -51,9 +49,6 @@
 /* Define to 1 if you have the  header file. */
 #undef HAVE_IOKIT_IOCFPLUGIN_H
 
-/* define if kernel-headers contains lirc.h */
-#undef HAVE_KERNEL_LIRC_H
-
 /* Define if the ALSA library is installed */
 #undef HAVE_LIBALSA
 
@@ -96,9 +91,6 @@
 /* Define to 1 if you have the  header file. */
 #undef HAVE_LINUX_IOCTL_H
 
-/* Define to 1 if you have the  header file. */
-#undef HAVE_LINUX_LIRC_H
-
 /* defined if linux/sched.h is available */
 #undef HAVE_LINUX_SCHED_H
 
@@ -108,9 +100,6 @@
 /* Define to 1 if you have the  header file. */
 #undef HAVE_MACH_MACH_TIME_H
 
-/* Define to 1 if you have the  header file. */
-#undef HAVE_MEMORY_H
-
 /* Define to 1 if you have the `mkfifo' function. */
 #undef HAVE_MKFIFO
 
@@ -144,6 +133,9 @@
 /* Define to 1 if you have the  header file. */
 #undef HAVE_STDINT_H
 
+/* Define to 1 if you have the  header file. */
+#undef HAVE_STDIO_H
+
 /* Define to 1 if you have the  header file. */
 #undef HAVE_STDLIB_H
 
@@ -234,10 +226,13 @@
 /* Path to shell, usually /bin/sh or /usr/bin/sh */
 #undef SH_PATH
 
-/* Define to 1 if you have the ANSI C header files. */
+/* Define to 1 if all of the C90 standard headers exist (not just the ones
+   required in a freestanding environment). This macro is provided for
+   backward compatibility; new code need not use it. */
 #undef STDC_HEADERS
 
-/* Define to 1 if you can safely include both  and . */
+/* Define to 1 if you can safely include both  and . This
+   macro is obsolete. */
 #undef TIME_WITH_SYS_TIME
 
 /* Version number of package */
@@ -286,7 +281,7 @@
    a type exists and the standard includes do not define it. */
 #undef int8_t
 
-/* Define to `int' if  does not define. */
+/* Define as a signed integer type capable of holding a process identifier. */
 #undef pid_t
 
 /* Define to `unsigned int' if  does not define. */
@@ -310,5 +305,4 @@
 
 
 #include     "lirc/lirc_config.h"
-#endif // ROOT_CONFIG_H
 
diff -Nru lirc-0.10.1/config.sub lirc-0.10.2/config.sub
--- lirc-0.10.1/config.sub	2017-09-10 08:52:38.000000000 +0000
+++ lirc-0.10.2/config.sub	2022-10-04 08:02:31.000000000 +0000
@@ -1,12 +1,14 @@
-#! /bin/sh
+#!/usr/bin/sh
 # Configuration validation subroutine script.
-#   Copyright 1992-2015 Free Software Foundation, Inc.
+#   Copyright 1992-2022 Free Software Foundation, Inc.
 
-timestamp='2015-01-01'
+# shellcheck disable=SC2006,SC2268 # see below for rationale
+
+timestamp='2022-01-03'
 
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 3 of the License, or
+# the Free Software Foundation, either version 3 of the License, or
 # (at your option) any later version.
 #
 # This program is distributed in the hope that it will be useful, but
@@ -15,7 +17,7 @@
 # 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 .
+# along with this program; if not, see .
 #
 # As a special exception to the GNU General Public License, if you
 # distribute this file as part of a program that contains a
@@ -33,7 +35,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
+# https://git.savannah.gnu.org/cgit/config.git/plain/config.sub
 
 # This file is supposed to be the same for all GNU packages
 # and recognize all the CPU types, system types and aliases
@@ -50,15 +52,21 @@
 #	CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
 # It is wrong to echo any other type of specification.
 
+# The "shellcheck disable" line above the timestamp inhibits complaints
+# about features and limitations of the classic Bourne shell that were
+# superseded or lifted in POSIX.  However, this script identifies a wide
+# variety of pre-POSIX systems that do not have POSIX shells at all, and
+# even some reasonably current systems (Solaris 10 as case-in-point) still
+# have a pre-POSIX /bin/sh.
+
 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.
 
-Operation modes:
+Options:
   -h, --help         print this help, then exit
   -t, --time-stamp   print date of last modification, then exit
   -v, --version      print version number, then exit
@@ -68,7 +76,7 @@
 version="\
 GNU config.sub ($timestamp)
 
-Copyright 1992-2015 Free Software Foundation, Inc.
+Copyright 1992-2022 Free Software Foundation, Inc.
 
 This is free software; see the source for copying conditions.  There is NO
 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -90,12 +98,12 @@
     - )	# Use stdin as input.
        break ;;
     -* )
-       echo "$me: invalid option $1$help"
+       echo "$me: invalid option $1$help" >&2
        exit 1 ;;
 
     *local*)
        # First pass through any local machine types.
-       echo $1
+       echo "$1"
        exit ;;
 
     * )
@@ -111,1228 +119,1186 @@
     exit 1;;
 esac
 
-# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
-# Here we must recognize all the valid KERNEL-OS combinations.
-maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
-case $maybe_os in
-  nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
-  linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
-  knetbsd*-gnu* | netbsd*-gnu* | \
-  kopensolaris*-gnu* | \
-  storm-chaos* | os2-emx* | rtmk-nova*)
-    os=-$maybe_os
-    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
-    ;;
-  android-linux)
-    os=-linux-android
-    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown
-    ;;
-  *)
-    basic_machine=`echo $1 | sed 's/-[^-]*$//'`
-    if [ $basic_machine != $1 ]
-    then os=`echo $1 | sed 's/.*-/-/'`
-    else os=; fi
-    ;;
-esac
-
-### Let's recognize common machines as not being operating systems so
-### that things like config.sub decstation-3100 work.  We also
-### recognize some manufacturers as not being operating systems, so we
-### can provide default operating systems below.
-case $os in
-	-sun*os*)
-		# Prevent following clause from handling this invalid input.
-		;;
-	-dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
-	-att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
-	-unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
-	-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
-	-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
-	-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
-	-apple | -axis | -knuth | -cray | -microblaze*)
-		os=
-		basic_machine=$1
-		;;
-	-bluegene*)
-		os=-cnk
-		;;
-	-sim | -cisco | -oki | -wec | -winbond)
-		os=
-		basic_machine=$1
-		;;
-	-scout)
-		;;
-	-wrs)
-		os=-vxworks
-		basic_machine=$1
-		;;
-	-chorusos*)
-		os=-chorusos
-		basic_machine=$1
-		;;
-	-chorusrdb)
-		os=-chorusrdb
-		basic_machine=$1
-		;;
-	-hiux*)
-		os=-hiuxwe2
-		;;
-	-sco6)
-		os=-sco5v6
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-sco5)
-		os=-sco3.2v5
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-sco4)
-		os=-sco3.2v4
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-sco3.2.[4-9]*)
-		os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-sco3.2v[4-9]*)
-		# Don't forget version if it is 3.2v4 or newer.
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-sco5v6*)
-		# Don't forget version if it is 3.2v4 or newer.
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-sco*)
-		os=-sco3.2v2
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-udk*)
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-isc)
-		os=-isc2.2
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-clix*)
-		basic_machine=clipper-intergraph
-		;;
-	-isc*)
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-lynx*178)
-		os=-lynxos178
-		;;
-	-lynx*5)
-		os=-lynxos5
-		;;
-	-lynx*)
-		os=-lynxos
+# Split fields of configuration type
+# shellcheck disable=SC2162
+saved_IFS=$IFS
+IFS="-" read field1 field2 field3 field4 <&2
+		exit 1
 		;;
-	-ptx*)
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
+	*-*-*-*)
+		basic_machine=$field1-$field2
+		basic_os=$field3-$field4
 		;;
-	-windowsnt*)
-		os=`echo $os | sed -e 's/windowsnt/winnt/'`
+	*-*-*)
+		# Ambiguous whether COMPANY is present, or skipped and KERNEL-OS is two
+		# parts
+		maybe_os=$field2-$field3
+		case $maybe_os in
+			nto-qnx* | linux-* | uclinux-uclibc* \
+			| uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* \
+			| netbsd*-eabi* | kopensolaris*-gnu* | cloudabi*-eabi* \
+			| storm-chaos* | os2-emx* | rtmk-nova*)
+				basic_machine=$field1
+				basic_os=$maybe_os
+				;;
+			android-linux)
+				basic_machine=$field1-unknown
+				basic_os=linux-android
+				;;
+			*)
+				basic_machine=$field1-$field2
+				basic_os=$field3
+				;;
+		esac
 		;;
-	-psos*)
-		os=-psos
+	*-*)
+		# A lone config we happen to match not fitting any pattern
+		case $field1-$field2 in
+			decstation-3100)
+				basic_machine=mips-dec
+				basic_os=
+				;;
+			*-*)
+				# Second component is usually, but not always the OS
+				case $field2 in
+					# Prevent following clause from handling this valid os
+					sun*os*)
+						basic_machine=$field1
+						basic_os=$field2
+						;;
+					zephyr*)
+						basic_machine=$field1-unknown
+						basic_os=$field2
+						;;
+					# Manufacturers
+					dec* | mips* | sequent* | encore* | pc533* | sgi* | sony* \
+					| att* | 7300* | 3300* | delta* | motorola* | sun[234]* \
+					| unicom* | ibm* | next | hp | isi* | apollo | altos* \
+					| convergent* | ncr* | news | 32* | 3600* | 3100* \
+					| hitachi* | c[123]* | convex* | sun | crds | omron* | dg \
+					| ultra | tti* | harris | dolphin | highlevel | gould \
+					| cbm | ns | masscomp | apple | axis | knuth | cray \
+					| microblaze* | sim | cisco \
+					| oki | wec | wrs | winbond)
+						basic_machine=$field1-$field2
+						basic_os=
+						;;
+					*)
+						basic_machine=$field1
+						basic_os=$field2
+						;;
+				esac
+			;;
+		esac
 		;;
-	-mint | -mint[0-9]*)
-		basic_machine=m68k-atari
-		os=-mint
+	*)
+		# Convert single-component short-hands not valid as part of
+		# multi-component configurations.
+		case $field1 in
+			386bsd)
+				basic_machine=i386-pc
+				basic_os=bsd
+				;;
+			a29khif)
+				basic_machine=a29k-amd
+				basic_os=udi
+				;;
+			adobe68k)
+				basic_machine=m68010-adobe
+				basic_os=scout
+				;;
+			alliant)
+				basic_machine=fx80-alliant
+				basic_os=
+				;;
+			altos | altos3068)
+				basic_machine=m68k-altos
+				basic_os=
+				;;
+			am29k)
+				basic_machine=a29k-none
+				basic_os=bsd
+				;;
+			amdahl)
+				basic_machine=580-amdahl
+				basic_os=sysv
+				;;
+			amiga)
+				basic_machine=m68k-unknown
+				basic_os=
+				;;
+			amigaos | amigados)
+				basic_machine=m68k-unknown
+				basic_os=amigaos
+				;;
+			amigaunix | amix)
+				basic_machine=m68k-unknown
+				basic_os=sysv4
+				;;
+			apollo68)
+				basic_machine=m68k-apollo
+				basic_os=sysv
+				;;
+			apollo68bsd)
+				basic_machine=m68k-apollo
+				basic_os=bsd
+				;;
+			aros)
+				basic_machine=i386-pc
+				basic_os=aros
+				;;
+			aux)
+				basic_machine=m68k-apple
+				basic_os=aux
+				;;
+			balance)
+				basic_machine=ns32k-sequent
+				basic_os=dynix
+				;;
+			blackfin)
+				basic_machine=bfin-unknown
+				basic_os=linux
+				;;
+			cegcc)
+				basic_machine=arm-unknown
+				basic_os=cegcc
+				;;
+			convex-c1)
+				basic_machine=c1-convex
+				basic_os=bsd
+				;;
+			convex-c2)
+				basic_machine=c2-convex
+				basic_os=bsd
+				;;
+			convex-c32)
+				basic_machine=c32-convex
+				basic_os=bsd
+				;;
+			convex-c34)
+				basic_machine=c34-convex
+				basic_os=bsd
+				;;
+			convex-c38)
+				basic_machine=c38-convex
+				basic_os=bsd
+				;;
+			cray)
+				basic_machine=j90-cray
+				basic_os=unicos
+				;;
+			crds | unos)
+				basic_machine=m68k-crds
+				basic_os=
+				;;
+			da30)
+				basic_machine=m68k-da30
+				basic_os=
+				;;
+			decstation | pmax | pmin | dec3100 | decstatn)
+				basic_machine=mips-dec
+				basic_os=
+				;;
+			delta88)
+				basic_machine=m88k-motorola
+				basic_os=sysv3
+				;;
+			dicos)
+				basic_machine=i686-pc
+				basic_os=dicos
+				;;
+			djgpp)
+				basic_machine=i586-pc
+				basic_os=msdosdjgpp
+				;;
+			ebmon29k)
+				basic_machine=a29k-amd
+				basic_os=ebmon
+				;;
+			es1800 | OSE68k | ose68k | ose | OSE)
+				basic_machine=m68k-ericsson
+				basic_os=ose
+				;;
+			gmicro)
+				basic_machine=tron-gmicro
+				basic_os=sysv
+				;;
+			go32)
+				basic_machine=i386-pc
+				basic_os=go32
+				;;
+			h8300hms)
+				basic_machine=h8300-hitachi
+				basic_os=hms
+				;;
+			h8300xray)
+				basic_machine=h8300-hitachi
+				basic_os=xray
+				;;
+			h8500hms)
+				basic_machine=h8500-hitachi
+				basic_os=hms
+				;;
+			harris)
+				basic_machine=m88k-harris
+				basic_os=sysv3
+				;;
+			hp300 | hp300hpux)
+				basic_machine=m68k-hp
+				basic_os=hpux
+				;;
+			hp300bsd)
+				basic_machine=m68k-hp
+				basic_os=bsd
+				;;
+			hppaosf)
+				basic_machine=hppa1.1-hp
+				basic_os=osf
+				;;
+			hppro)
+				basic_machine=hppa1.1-hp
+				basic_os=proelf
+				;;
+			i386mach)
+				basic_machine=i386-mach
+				basic_os=mach
+				;;
+			isi68 | isi)
+				basic_machine=m68k-isi
+				basic_os=sysv
+				;;
+			m68knommu)
+				basic_machine=m68k-unknown
+				basic_os=linux
+				;;
+			magnum | m3230)
+				basic_machine=mips-mips
+				basic_os=sysv
+				;;
+			merlin)
+				basic_machine=ns32k-utek
+				basic_os=sysv
+				;;
+			mingw64)
+				basic_machine=x86_64-pc
+				basic_os=mingw64
+				;;
+			mingw32)
+				basic_machine=i686-pc
+				basic_os=mingw32
+				;;
+			mingw32ce)
+				basic_machine=arm-unknown
+				basic_os=mingw32ce
+				;;
+			monitor)
+				basic_machine=m68k-rom68k
+				basic_os=coff
+				;;
+			morphos)
+				basic_machine=powerpc-unknown
+				basic_os=morphos
+				;;
+			moxiebox)
+				basic_machine=moxie-unknown
+				basic_os=moxiebox
+				;;
+			msdos)
+				basic_machine=i386-pc
+				basic_os=msdos
+				;;
+			msys)
+				basic_machine=i686-pc
+				basic_os=msys
+				;;
+			mvs)
+				basic_machine=i370-ibm
+				basic_os=mvs
+				;;
+			nacl)
+				basic_machine=le32-unknown
+				basic_os=nacl
+				;;
+			ncr3000)
+				basic_machine=i486-ncr
+				basic_os=sysv4
+				;;
+			netbsd386)
+				basic_machine=i386-pc
+				basic_os=netbsd
+				;;
+			netwinder)
+				basic_machine=armv4l-rebel
+				basic_os=linux
+				;;
+			news | news700 | news800 | news900)
+				basic_machine=m68k-sony
+				basic_os=newsos
+				;;
+			news1000)
+				basic_machine=m68030-sony
+				basic_os=newsos
+				;;
+			necv70)
+				basic_machine=v70-nec
+				basic_os=sysv
+				;;
+			nh3000)
+				basic_machine=m68k-harris
+				basic_os=cxux
+				;;
+			nh[45]000)
+				basic_machine=m88k-harris
+				basic_os=cxux
+				;;
+			nindy960)
+				basic_machine=i960-intel
+				basic_os=nindy
+				;;
+			mon960)
+				basic_machine=i960-intel
+				basic_os=mon960
+				;;
+			nonstopux)
+				basic_machine=mips-compaq
+				basic_os=nonstopux
+				;;
+			os400)
+				basic_machine=powerpc-ibm
+				basic_os=os400
+				;;
+			OSE68000 | ose68000)
+				basic_machine=m68000-ericsson
+				basic_os=ose
+				;;
+			os68k)
+				basic_machine=m68k-none
+				basic_os=os68k
+				;;
+			paragon)
+				basic_machine=i860-intel
+				basic_os=osf
+				;;
+			parisc)
+				basic_machine=hppa-unknown
+				basic_os=linux
+				;;
+			psp)
+				basic_machine=mipsallegrexel-sony
+				basic_os=psp
+				;;
+			pw32)
+				basic_machine=i586-unknown
+				basic_os=pw32
+				;;
+			rdos | rdos64)
+				basic_machine=x86_64-pc
+				basic_os=rdos
+				;;
+			rdos32)
+				basic_machine=i386-pc
+				basic_os=rdos
+				;;
+			rom68k)
+				basic_machine=m68k-rom68k
+				basic_os=coff
+				;;
+			sa29200)
+				basic_machine=a29k-amd
+				basic_os=udi
+				;;
+			sei)
+				basic_machine=mips-sei
+				basic_os=seiux
+				;;
+			sequent)
+				basic_machine=i386-sequent
+				basic_os=
+				;;
+			sps7)
+				basic_machine=m68k-bull
+				basic_os=sysv2
+				;;
+			st2000)
+				basic_machine=m68k-tandem
+				basic_os=
+				;;
+			stratus)
+				basic_machine=i860-stratus
+				basic_os=sysv4
+				;;
+			sun2)
+				basic_machine=m68000-sun
+				basic_os=
+				;;
+			sun2os3)
+				basic_machine=m68000-sun
+				basic_os=sunos3
+				;;
+			sun2os4)
+				basic_machine=m68000-sun
+				basic_os=sunos4
+				;;
+			sun3)
+				basic_machine=m68k-sun
+				basic_os=
+				;;
+			sun3os3)
+				basic_machine=m68k-sun
+				basic_os=sunos3
+				;;
+			sun3os4)
+				basic_machine=m68k-sun
+				basic_os=sunos4
+				;;
+			sun4)
+				basic_machine=sparc-sun
+				basic_os=
+				;;
+			sun4os3)
+				basic_machine=sparc-sun
+				basic_os=sunos3
+				;;
+			sun4os4)
+				basic_machine=sparc-sun
+				basic_os=sunos4
+				;;
+			sun4sol2)
+				basic_machine=sparc-sun
+				basic_os=solaris2
+				;;
+			sun386 | sun386i | roadrunner)
+				basic_machine=i386-sun
+				basic_os=
+				;;
+			sv1)
+				basic_machine=sv1-cray
+				basic_os=unicos
+				;;
+			symmetry)
+				basic_machine=i386-sequent
+				basic_os=dynix
+				;;
+			t3e)
+				basic_machine=alphaev5-cray
+				basic_os=unicos
+				;;
+			t90)
+				basic_machine=t90-cray
+				basic_os=unicos
+				;;
+			toad1)
+				basic_machine=pdp10-xkl
+				basic_os=tops20
+				;;
+			tpf)
+				basic_machine=s390x-ibm
+				basic_os=tpf
+				;;
+			udi29k)
+				basic_machine=a29k-amd
+				basic_os=udi
+				;;
+			ultra3)
+				basic_machine=a29k-nyu
+				basic_os=sym1
+				;;
+			v810 | necv810)
+				basic_machine=v810-nec
+				basic_os=none
+				;;
+			vaxv)
+				basic_machine=vax-dec
+				basic_os=sysv
+				;;
+			vms)
+				basic_machine=vax-dec
+				basic_os=vms
+				;;
+			vsta)
+				basic_machine=i386-pc
+				basic_os=vsta
+				;;
+			vxworks960)
+				basic_machine=i960-wrs
+				basic_os=vxworks
+				;;
+			vxworks68)
+				basic_machine=m68k-wrs
+				basic_os=vxworks
+				;;
+			vxworks29k)
+				basic_machine=a29k-wrs
+				basic_os=vxworks
+				;;
+			xbox)
+				basic_machine=i686-pc
+				basic_os=mingw32
+				;;
+			ymp)
+				basic_machine=ymp-cray
+				basic_os=unicos
+				;;
+			*)
+				basic_machine=$1
+				basic_os=
+				;;
+		esac
 		;;
 esac
 
-# Decode aliases for certain CPU-COMPANY combinations.
+# Decode 1-component or ad-hoc basic machines
 case $basic_machine in
-	# Recognize the basic CPU types without company name.
-	# Some are omitted here because they have special meanings below.
-	1750a | 580 \
-	| a29k \
-	| aarch64 | aarch64_be \
-	| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
-	| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
-	| am33_2.0 \
-	| arc | arceb \
-	| arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
-	| avr | avr32 \
-	| be32 | be64 \
-	| bfin \
-	| c4x | c8051 | clipper \
-	| d10v | d30v | dlx | dsp16xx \
-	| epiphany \
-	| fido | fr30 | frv | ft32 \
-	| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
-	| hexagon \
-	| i370 | i860 | i960 | ia64 \
-	| ip2k | iq2000 \
-	| k1om \
-	| le32 | le64 \
-	| lm32 \
-	| m32c | m32r | m32rle | m68000 | m68k | m88k \
-	| maxq | mb | microblaze | microblazeel | mcore | mep | metag \
-	| mips | mipsbe | mipseb | mipsel | mipsle \
-	| mips16 \
-	| mips64 | mips64el \
-	| mips64octeon | mips64octeonel \
-	| mips64orion | mips64orionel \
-	| mips64r5900 | mips64r5900el \
-	| mips64vr | mips64vrel \
-	| mips64vr4100 | mips64vr4100el \
-	| mips64vr4300 | mips64vr4300el \
-	| mips64vr5000 | mips64vr5000el \
-	| mips64vr5900 | mips64vr5900el \
-	| mipsisa32 | mipsisa32el \
-	| mipsisa32r2 | mipsisa32r2el \
-	| mipsisa32r6 | mipsisa32r6el \
-	| mipsisa64 | mipsisa64el \
-	| mipsisa64r2 | mipsisa64r2el \
-	| mipsisa64r6 | mipsisa64r6el \
-	| mipsisa64sb1 | mipsisa64sb1el \
-	| mipsisa64sr71k | mipsisa64sr71kel \
-	| mipsr5900 | mipsr5900el \
-	| mipstx39 | mipstx39el \
-	| mn10200 | mn10300 \
-	| moxie \
-	| mt \
-	| msp430 \
-	| nds32 | nds32le | nds32be \
-	| nios | nios2 | nios2eb | nios2el \
-	| ns16k | ns32k \
-	| open8 | or1k | or1knd | or32 \
-	| pdp10 | pdp11 | pj | pjl \
-	| powerpc | powerpc64 | powerpc64le | powerpcle \
-	| pyramid \
-	| 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 \
-	| sh64 | sh64le \
-	| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
-	| sparcv8 | sparcv9 | sparcv9b | sparcv9v \
-	| spu \
-	| tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
-	| ubicom32 \
-	| v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
-	| visium \
-	| we32k \
-	| x86 | xc16x | xstormy16 | xtensa \
-	| z8k | z80)
-		basic_machine=$basic_machine-unknown
-		;;
-	c54x)
-		basic_machine=tic54x-unknown
-		;;
-	c55x)
-		basic_machine=tic55x-unknown
-		;;
-	c6x)
-		basic_machine=tic6x-unknown
-		;;
-	leon|leon[3-9])
-		basic_machine=sparc-$basic_machine
-		;;
-	m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip)
-		basic_machine=$basic_machine-unknown
-		os=-none
+	# Here we handle the default manufacturer of certain CPU types.  It is in
+	# some cases the only manufacturer, in others, it is the most popular.
+	w89k)
+		cpu=hppa1.1
+		vendor=winbond
 		;;
-	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
+	op50n)
+		cpu=hppa1.1
+		vendor=oki
 		;;
-	ms1)
-		basic_machine=mt-unknown
+	op60c)
+		cpu=hppa1.1
+		vendor=oki
 		;;
-
-	strongarm | thumb | xscale)
-		basic_machine=arm-unknown
+	ibm*)
+		cpu=i370
+		vendor=ibm
 		;;
-	xgate)
-		basic_machine=$basic_machine-unknown
-		os=-none
+	orion105)
+		cpu=clipper
+		vendor=highlevel
 		;;
-	xscaleeb)
-		basic_machine=armeb-unknown
+	mac | mpw | mac-mpw)
+		cpu=m68k
+		vendor=apple
 		;;
-
-	xscaleel)
-		basic_machine=armel-unknown
+	pmac | pmac-mpw)
+		cpu=powerpc
+		vendor=apple
 		;;
 
-	# We use `pc' rather than `unknown'
-	# because (1) that's what they normally are, and
-	# (2) the word "unknown" tends to confuse beginning users.
-	i*86 | x86_64)
-	  basic_machine=$basic_machine-pc
-	  ;;
-	# Object if more than one company name word.
-	*-*-*)
-		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
-		exit 1
-		;;
-	# Recognize the basic CPU types with company name.
-	580-* \
-	| a29k-* \
-	| aarch64-* | aarch64_be-* \
-	| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
-	| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
-	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \
-	| arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
-	| avr-* | avr32-* \
-	| be32-* | be64-* \
-	| bfin-* | bs2000-* \
-	| c[123]* | c30-* | [cjt]90-* | c4x-* \
-	| c8051-* | clipper-* | craynv-* | cydra-* \
-	| d10v-* | d30v-* | dlx-* \
-	| elxsi-* \
-	| f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
-	| h8300-* | h8500-* \
-	| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
-	| hexagon-* \
-	| i*86-* | i860-* | i960-* | ia64-* \
-	| ip2k-* | iq2000-* \
-	| k1om-* \
-	| le32-* | le64-* \
-	| lm32-* \
-	| m32c-* | m32r-* | m32rle-* \
-	| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
-	| m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
-	| microblaze-* | microblazeel-* \
-	| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
-	| mips16-* \
-	| mips64-* | mips64el-* \
-	| mips64octeon-* | mips64octeonel-* \
-	| mips64orion-* | mips64orionel-* \
-	| mips64r5900-* | mips64r5900el-* \
-	| mips64vr-* | mips64vrel-* \
-	| mips64vr4100-* | mips64vr4100el-* \
-	| mips64vr4300-* | mips64vr4300el-* \
-	| mips64vr5000-* | mips64vr5000el-* \
-	| mips64vr5900-* | mips64vr5900el-* \
-	| mipsisa32-* | mipsisa32el-* \
-	| mipsisa32r2-* | mipsisa32r2el-* \
-	| mipsisa32r6-* | mipsisa32r6el-* \
-	| mipsisa64-* | mipsisa64el-* \
-	| mipsisa64r2-* | mipsisa64r2el-* \
-	| mipsisa64r6-* | mipsisa64r6el-* \
-	| mipsisa64sb1-* | mipsisa64sb1el-* \
-	| mipsisa64sr71k-* | mipsisa64sr71kel-* \
-	| mipsr5900-* | mipsr5900el-* \
-	| mipstx39-* | mipstx39el-* \
-	| mmix-* \
-	| mt-* \
-	| msp430-* \
-	| nds32-* | nds32le-* | nds32be-* \
-	| nios-* | nios2-* | nios2eb-* | nios2el-* \
-	| none-* | np1-* | ns16k-* | ns32k-* \
-	| open8-* \
-	| or1k*-* \
-	| orion-* \
-	| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
-	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
-	| pyramid-* \
-	| rl78-* | romp-* | rs6000-* | rx-* \
-	| sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
-	| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
-	| sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
-	| sparclite-* \
-	| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \
-	| tahoe-* \
-	| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
-	| tile*-* \
-	| tron-* \
-	| ubicom32-* \
-	| v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
-	| vax-* \
-	| visium-* \
-	| we32k-* \
-	| x86-* | x86_64-* | xc16x-* | xps100-* \
-	| xstormy16-* | xtensa*-* \
-	| ymp-* \
-	| z8k-* | z80-*)
-		;;
-	# Recognize the basic CPU types without company name, with glob match.
-	xtensa*)
-		basic_machine=$basic_machine-unknown
-		;;
 	# Recognize the various machine names and aliases which stand
 	# for a CPU type and a company and sometimes even an OS.
-	386bsd)
-		basic_machine=i386-unknown
-		os=-bsd
-		;;
 	3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
-		basic_machine=m68000-att
+		cpu=m68000
+		vendor=att
 		;;
 	3b*)
-		basic_machine=we32k-att
-		;;
-	a29khif)
-		basic_machine=a29k-amd
-		os=-udi
-		;;
-	abacus)
-		basic_machine=abacus-unknown
-		;;
-	adobe68k)
-		basic_machine=m68010-adobe
-		os=-scout
-		;;
-	alliant | fx80)
-		basic_machine=fx80-alliant
-		;;
-	altos | altos3068)
-		basic_machine=m68k-altos
-		;;
-	am29k)
-		basic_machine=a29k-none
-		os=-bsd
-		;;
-	amd64)
-		basic_machine=x86_64-pc
-		;;
-	amd64-*)
-		basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	amdahl)
-		basic_machine=580-amdahl
-		os=-sysv
-		;;
-	amiga | amiga-*)
-		basic_machine=m68k-unknown
-		;;
-	amigaos | amigados)
-		basic_machine=m68k-unknown
-		os=-amigaos
-		;;
-	amigaunix | amix)
-		basic_machine=m68k-unknown
-		os=-sysv4
-		;;
-	apollo68)
-		basic_machine=m68k-apollo
-		os=-sysv
-		;;
-	apollo68bsd)
-		basic_machine=m68k-apollo
-		os=-bsd
-		;;
-	aros)
-		basic_machine=i386-pc
-		os=-aros
-		;;
-	aux)
-		basic_machine=m68k-apple
-		os=-aux
-		;;
-	balance)
-		basic_machine=ns32k-sequent
-		os=-dynix
-		;;
-	blackfin)
-		basic_machine=bfin-unknown
-		os=-linux
-		;;
-	blackfin-*)
-		basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
-		os=-linux
+		cpu=we32k
+		vendor=att
 		;;
 	bluegene*)
-		basic_machine=powerpc-ibm
-		os=-cnk
-		;;
-	c54x-*)
-		basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	c55x-*)
-		basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	c6x-*)
-		basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	c90)
-		basic_machine=c90-cray
-		os=-unicos
-		;;
-	cegcc)
-		basic_machine=arm-unknown
-		os=-cegcc
-		;;
-	convex-c1)
-		basic_machine=c1-convex
-		os=-bsd
-		;;
-	convex-c2)
-		basic_machine=c2-convex
-		os=-bsd
-		;;
-	convex-c32)
-		basic_machine=c32-convex
-		os=-bsd
-		;;
-	convex-c34)
-		basic_machine=c34-convex
-		os=-bsd
-		;;
-	convex-c38)
-		basic_machine=c38-convex
-		os=-bsd
-		;;
-	cray | j90)
-		basic_machine=j90-cray
-		os=-unicos
-		;;
-	craynv)
-		basic_machine=craynv-cray
-		os=-unicosmp
-		;;
-	cr16 | cr16-*)
-		basic_machine=cr16-unknown
-		os=-elf
-		;;
-	crds | unos)
-		basic_machine=m68k-crds
-		;;
-	crisv32 | crisv32-* | etraxfs*)
-		basic_machine=crisv32-axis
-		;;
-	cris | cris-* | etrax*)
-		basic_machine=cris-axis
-		;;
-	crx)
-		basic_machine=crx-unknown
-		os=-elf
-		;;
-	da30 | da30-*)
-		basic_machine=m68k-da30
-		;;
-	decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
-		basic_machine=mips-dec
+		cpu=powerpc
+		vendor=ibm
+		basic_os=cnk
 		;;
 	decsystem10* | dec10*)
-		basic_machine=pdp10-dec
-		os=-tops10
+		cpu=pdp10
+		vendor=dec
+		basic_os=tops10
 		;;
 	decsystem20* | dec20*)
-		basic_machine=pdp10-dec
-		os=-tops20
+		cpu=pdp10
+		vendor=dec
+		basic_os=tops20
 		;;
 	delta | 3300 | motorola-3300 | motorola-delta \
 	      | 3300-motorola | delta-motorola)
-		basic_machine=m68k-motorola
+		cpu=m68k
+		vendor=motorola
 		;;
-	delta88)
-		basic_machine=m88k-motorola
-		os=-sysv3
-		;;
-	dicos)
-		basic_machine=i686-pc
-		os=-dicos
-		;;
-	djgpp)
-		basic_machine=i586-pc
-		os=-msdosdjgpp
-		;;
-	dpx20 | dpx20-*)
-		basic_machine=rs6000-bull
-		os=-bosx
-		;;
-	dpx2* | dpx2*-bull)
-		basic_machine=m68k-bull
-		os=-sysv3
-		;;
-	ebmon29k)
-		basic_machine=a29k-amd
-		os=-ebmon
-		;;
-	elxsi)
-		basic_machine=elxsi-elxsi
-		os=-bsd
+	dpx2*)
+		cpu=m68k
+		vendor=bull
+		basic_os=sysv3
 		;;
 	encore | umax | mmax)
-		basic_machine=ns32k-encore
+		cpu=ns32k
+		vendor=encore
 		;;
-	es1800 | OSE68k | ose68k | ose | OSE)
-		basic_machine=m68k-ericsson
-		os=-ose
+	elxsi)
+		cpu=elxsi
+		vendor=elxsi
+		basic_os=${basic_os:-bsd}
 		;;
 	fx2800)
-		basic_machine=i860-alliant
+		cpu=i860
+		vendor=alliant
 		;;
 	genix)
-		basic_machine=ns32k-ns
-		;;
-	gmicro)
-		basic_machine=tron-gmicro
-		os=-sysv
-		;;
-	go32)
-		basic_machine=i386-pc
-		os=-go32
+		cpu=ns32k
+		vendor=ns
 		;;
 	h3050r* | hiux*)
-		basic_machine=hppa1.1-hitachi
-		os=-hiuxwe2
-		;;
-	h8300hms)
-		basic_machine=h8300-hitachi
-		os=-hms
-		;;
-	h8300xray)
-		basic_machine=h8300-hitachi
-		os=-xray
-		;;
-	h8500hms)
-		basic_machine=h8500-hitachi
-		os=-hms
-		;;
-	harris)
-		basic_machine=m88k-harris
-		os=-sysv3
-		;;
-	hp300-*)
-		basic_machine=m68k-hp
-		;;
-	hp300bsd)
-		basic_machine=m68k-hp
-		os=-bsd
-		;;
-	hp300hpux)
-		basic_machine=m68k-hp
-		os=-hpux
+		cpu=hppa1.1
+		vendor=hitachi
+		basic_os=hiuxwe2
 		;;
 	hp3k9[0-9][0-9] | hp9[0-9][0-9])
-		basic_machine=hppa1.0-hp
+		cpu=hppa1.0
+		vendor=hp
 		;;
 	hp9k2[0-9][0-9] | hp9k31[0-9])
-		basic_machine=m68000-hp
+		cpu=m68000
+		vendor=hp
 		;;
 	hp9k3[2-9][0-9])
-		basic_machine=m68k-hp
+		cpu=m68k
+		vendor=hp
 		;;
 	hp9k6[0-9][0-9] | hp6[0-9][0-9])
-		basic_machine=hppa1.0-hp
+		cpu=hppa1.0
+		vendor=hp
 		;;
 	hp9k7[0-79][0-9] | hp7[0-79][0-9])
-		basic_machine=hppa1.1-hp
+		cpu=hppa1.1
+		vendor=hp
 		;;
 	hp9k78[0-9] | hp78[0-9])
 		# FIXME: really hppa2.0-hp
-		basic_machine=hppa1.1-hp
+		cpu=hppa1.1
+		vendor=hp
 		;;
 	hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
 		# FIXME: really hppa2.0-hp
-		basic_machine=hppa1.1-hp
+		cpu=hppa1.1
+		vendor=hp
 		;;
 	hp9k8[0-9][13679] | hp8[0-9][13679])
-		basic_machine=hppa1.1-hp
+		cpu=hppa1.1
+		vendor=hp
 		;;
 	hp9k8[0-9][0-9] | hp8[0-9][0-9])
-		basic_machine=hppa1.0-hp
-		;;
-	hppa-next)
-		os=-nextstep3
-		;;
-	hppaosf)
-		basic_machine=hppa1.1-hp
-		os=-osf
-		;;
-	hppro)
-		basic_machine=hppa1.1-hp
-		os=-proelf
-		;;
-	i370-ibm* | ibm*)
-		basic_machine=i370-ibm
+		cpu=hppa1.0
+		vendor=hp
 		;;
 	i*86v32)
-		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
-		os=-sysv32
+		cpu=`echo "$1" | sed -e 's/86.*/86/'`
+		vendor=pc
+		basic_os=sysv32
 		;;
 	i*86v4*)
-		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
-		os=-sysv4
+		cpu=`echo "$1" | sed -e 's/86.*/86/'`
+		vendor=pc
+		basic_os=sysv4
 		;;
 	i*86v)
-		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
-		os=-sysv
+		cpu=`echo "$1" | sed -e 's/86.*/86/'`
+		vendor=pc
+		basic_os=sysv
 		;;
 	i*86sol2)
-		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
-		os=-solaris2
-		;;
-	i386mach)
-		basic_machine=i386-mach
-		os=-mach
-		;;
-	i386-vsta | vsta)
-		basic_machine=i386-unknown
-		os=-vsta
+		cpu=`echo "$1" | sed -e 's/86.*/86/'`
+		vendor=pc
+		basic_os=solaris2
+		;;
+	j90 | j90-cray)
+		cpu=j90
+		vendor=cray
+		basic_os=${basic_os:-unicos}
 		;;
 	iris | iris4d)
-		basic_machine=mips-sgi
-		case $os in
-		    -irix*)
+		cpu=mips
+		vendor=sgi
+		case $basic_os in
+		    irix*)
 			;;
 		    *)
-			os=-irix4
+			basic_os=irix4
 			;;
 		esac
 		;;
-	isi68 | isi)
-		basic_machine=m68k-isi
-		os=-sysv
-		;;
-	leon-*|leon[3-9]-*)
-		basic_machine=sparc-`echo $basic_machine | sed 's/-.*//'`
-		;;
-	m68knommu)
-		basic_machine=m68k-unknown
-		os=-linux
-		;;
-	m68knommu-*)
-		basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
-		os=-linux
-		;;
-	m88k-omron*)
-		basic_machine=m88k-omron
-		;;
-	magnum | m3230)
-		basic_machine=mips-mips
-		os=-sysv
-		;;
-	merlin)
-		basic_machine=ns32k-utek
-		os=-sysv
-		;;
-	microblaze*)
-		basic_machine=microblaze-xilinx
-		;;
-	mingw64)
-		basic_machine=x86_64-pc
-		os=-mingw64
-		;;
-	mingw32)
-		basic_machine=i686-pc
-		os=-mingw32
-		;;
-	mingw32ce)
-		basic_machine=arm-unknown
-		os=-mingw32ce
-		;;
 	miniframe)
-		basic_machine=m68000-convergent
-		;;
-	*mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
-		basic_machine=m68k-atari
-		os=-mint
-		;;
-	mips3*-*)
-		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
-		;;
-	mips3*)
-		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
-		;;
-	monitor)
-		basic_machine=m68k-rom68k
-		os=-coff
-		;;
-	morphos)
-		basic_machine=powerpc-unknown
-		os=-morphos
-		;;
-	moxiebox)
-		basic_machine=moxie-unknown
-		os=-moxiebox
-		;;
-	msdos)
-		basic_machine=i386-pc
-		os=-msdos
-		;;
-	ms1-*)
-		basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
+		cpu=m68000
+		vendor=convergent
 		;;
-	msys)
-		basic_machine=i686-pc
-		os=-msys
-		;;
-	mvs)
-		basic_machine=i370-ibm
-		os=-mvs
-		;;
-	nacl)
-		basic_machine=le32-unknown
-		os=-nacl
-		;;
-	ncr3000)
-		basic_machine=i486-ncr
-		os=-sysv4
-		;;
-	netbsd386)
-		basic_machine=i386-unknown
-		os=-netbsd
-		;;
-	netwinder)
-		basic_machine=armv4l-rebel
-		os=-linux
-		;;
-	news | news700 | news800 | news900)
-		basic_machine=m68k-sony
-		os=-newsos
-		;;
-	news1000)
-		basic_machine=m68030-sony
-		os=-newsos
+	*mint | mint[0-9]* | *MiNT | *MiNT[0-9]*)
+		cpu=m68k
+		vendor=atari
+		basic_os=mint
 		;;
 	news-3600 | risc-news)
-		basic_machine=mips-sony
-		os=-newsos
-		;;
-	necv70)
-		basic_machine=v70-nec
-		os=-sysv
-		;;
-	next | m*-next )
-		basic_machine=m68k-next
-		case $os in
-		    -nextstep* )
+		cpu=mips
+		vendor=sony
+		basic_os=newsos
+		;;
+	next | m*-next)
+		cpu=m68k
+		vendor=next
+		case $basic_os in
+		    openstep*)
+		        ;;
+		    nextstep*)
 			;;
-		    -ns2*)
-		      os=-nextstep2
+		    ns2*)
+		      basic_os=nextstep2
 			;;
 		    *)
-		      os=-nextstep3
+		      basic_os=nextstep3
 			;;
 		esac
 		;;
-	nh3000)
-		basic_machine=m68k-harris
-		os=-cxux
-		;;
-	nh[45]000)
-		basic_machine=m88k-harris
-		os=-cxux
-		;;
-	nindy960)
-		basic_machine=i960-intel
-		os=-nindy
-		;;
-	mon960)
-		basic_machine=i960-intel
-		os=-mon960
-		;;
-	nonstopux)
-		basic_machine=mips-compaq
-		os=-nonstopux
-		;;
 	np1)
-		basic_machine=np1-gould
-		;;
-	neo-tandem)
-		basic_machine=neo-tandem
-		;;
-	nse-tandem)
-		basic_machine=nse-tandem
-		;;
-	nsr-tandem)
-		basic_machine=nsr-tandem
+		cpu=np1
+		vendor=gould
 		;;
 	op50n-* | op60c-*)
-		basic_machine=hppa1.1-oki
-		os=-proelf
-		;;
-	openrisc | openrisc-*)
-		basic_machine=or32-unknown
-		;;
-	os400)
-		basic_machine=powerpc-ibm
-		os=-os400
-		;;
-	OSE68000 | ose68000)
-		basic_machine=m68000-ericsson
-		os=-ose
-		;;
-	os68k)
-		basic_machine=m68k-none
-		os=-os68k
+		cpu=hppa1.1
+		vendor=oki
+		basic_os=proelf
 		;;
 	pa-hitachi)
-		basic_machine=hppa1.1-hitachi
-		os=-hiuxwe2
-		;;
-	paragon)
-		basic_machine=i860-intel
-		os=-osf
-		;;
-	parisc)
-		basic_machine=hppa-unknown
-		os=-linux
-		;;
-	parisc-*)
-		basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
-		os=-linux
+		cpu=hppa1.1
+		vendor=hitachi
+		basic_os=hiuxwe2
 		;;
 	pbd)
-		basic_machine=sparc-tti
+		cpu=sparc
+		vendor=tti
 		;;
 	pbb)
-		basic_machine=m68k-tti
+		cpu=m68k
+		vendor=tti
 		;;
-	pc532 | pc532-*)
-		basic_machine=ns32k-pc532
-		;;
-	pc98)
-		basic_machine=i386-pc
-		;;
-	pc98-*)
-		basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
+	pc532)
+		cpu=ns32k
+		vendor=pc532
 		;;
-	pentium | p5 | k5 | k6 | nexgen | viac3)
-		basic_machine=i586-pc
-		;;
-	pentiumpro | p6 | 6x86 | athlon | athlon_*)
-		basic_machine=i686-pc
-		;;
-	pentiumii | pentium2 | pentiumiii | pentium3)
-		basic_machine=i686-pc
+	pn)
+		cpu=pn
+		vendor=gould
 		;;
-	pentium4)
-		basic_machine=i786-pc
+	power)
+		cpu=power
+		vendor=ibm
 		;;
-	pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
-		basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
+	ps2)
+		cpu=i386
+		vendor=ibm
 		;;
-	pentiumpro-* | p6-* | 6x86-* | athlon-*)
-		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
+	rm[46]00)
+		cpu=mips
+		vendor=siemens
 		;;
-	pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
-		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
+	rtpc | rtpc-*)
+		cpu=romp
+		vendor=ibm
 		;;
-	pentium4-*)
-		basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
+	sde)
+		cpu=mipsisa32
+		vendor=sde
+		basic_os=${basic_os:-elf}
+		;;
+	simso-wrs)
+		cpu=sparclite
+		vendor=wrs
+		basic_os=vxworks
 		;;
-	pn)
-		basic_machine=pn-gould
+	tower | tower-32)
+		cpu=m68k
+		vendor=ncr
 		;;
-	power)	basic_machine=power-ibm
+	vpp*|vx|vx-*)
+		cpu=f301
+		vendor=fujitsu
 		;;
-	ppc | ppcbe)	basic_machine=powerpc-unknown
+	w65)
+		cpu=w65
+		vendor=wdc
 		;;
-	ppc-* | ppcbe-*)
-		basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
+	w89k-*)
+		cpu=hppa1.1
+		vendor=winbond
+		basic_os=proelf
 		;;
-	ppcle | powerpclittle | ppc-le | powerpc-little)
-		basic_machine=powerpcle-unknown
+	none)
+		cpu=none
+		vendor=none
 		;;
-	ppcle-* | powerpclittle-*)
-		basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
+	leon|leon[3-9])
+		cpu=sparc
+		vendor=$basic_machine
 		;;
-	ppc64)	basic_machine=powerpc64-unknown
+	leon-*|leon[3-9]-*)
+		cpu=sparc
+		vendor=`echo "$basic_machine" | sed 's/-.*//'`
 		;;
-	ppc64-* | ppc64p7-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
+
+	*-*)
+		# shellcheck disable=SC2162
+		saved_IFS=$IFS
+		IFS="-" read cpu vendor <&2
-		exit 1
+		# Recognize the canonical CPU types that are allowed with any
+		# company name.
+		case $cpu in
+			1750a | 580 \
+			| a29k \
+			| aarch64 | aarch64_be \
+			| abacus \
+			| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] \
+			| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] \
+			| alphapca5[67] | alpha64pca5[67] \
+			| am33_2.0 \
+			| amdgcn \
+			| arc | arceb | arc32 | arc64 \
+			| arm | arm[lb]e | arme[lb] | armv* \
+			| avr | avr32 \
+			| asmjs \
+			| ba \
+			| be32 | be64 \
+			| bfin | bpf | bs2000 \
+			| c[123]* | c30 | [cjt]90 | c4x \
+			| c8051 | clipper | craynv | csky | cydra \
+			| d10v | d30v | dlx | dsp16xx \
+			| e2k | elxsi | epiphany \
+			| f30[01] | f700 | fido | fr30 | frv | ft32 | fx80 \
+			| h8300 | h8500 \
+			| hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
+			| hexagon \
+			| i370 | i*86 | i860 | i960 | ia16 | ia64 \
+			| ip2k | iq2000 \
+			| k1om \
+			| le32 | le64 \
+			| lm32 \
+			| loongarch32 | loongarch64 | loongarchx32 \
+			| m32c | m32r | m32rle \
+			| m5200 | m68000 | m680[012346]0 | m68360 | m683?2 | m68k \
+			| m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x \
+			| m88110 | m88k | maxq | mb | mcore | mep | metag \
+			| microblaze | microblazeel \
+			| mips | mipsbe | mipseb | mipsel | mipsle \
+			| mips16 \
+			| mips64 | mips64eb | mips64el \
+			| mips64octeon | mips64octeonel \
+			| mips64orion | mips64orionel \
+			| mips64r5900 | mips64r5900el \
+			| mips64vr | mips64vrel \
+			| mips64vr4100 | mips64vr4100el \
+			| mips64vr4300 | mips64vr4300el \
+			| mips64vr5000 | mips64vr5000el \
+			| mips64vr5900 | mips64vr5900el \
+			| mipsisa32 | mipsisa32el \
+			| mipsisa32r2 | mipsisa32r2el \
+			| mipsisa32r3 | mipsisa32r3el \
+			| mipsisa32r5 | mipsisa32r5el \
+			| mipsisa32r6 | mipsisa32r6el \
+			| mipsisa64 | mipsisa64el \
+			| mipsisa64r2 | mipsisa64r2el \
+			| mipsisa64r3 | mipsisa64r3el \
+			| mipsisa64r5 | mipsisa64r5el \
+			| mipsisa64r6 | mipsisa64r6el \
+			| mipsisa64sb1 | mipsisa64sb1el \
+			| mipsisa64sr71k | mipsisa64sr71kel \
+			| mipsr5900 | mipsr5900el \
+			| mipstx39 | mipstx39el \
+			| mmix \
+			| mn10200 | mn10300 \
+			| moxie \
+			| mt \
+			| msp430 \
+			| nds32 | nds32le | nds32be \
+			| nfp \
+			| nios | nios2 | nios2eb | nios2el \
+			| none | np1 | ns16k | ns32k | nvptx \
+			| open8 \
+			| or1k* \
+			| or32 \
+			| orion \
+			| picochip \
+			| pdp10 | pdp11 | pj | pjl | pn | power \
+			| powerpc | powerpc64 | powerpc64le | powerpcle | powerpcspe \
+			| pru \
+			| pyramid \
+			| riscv | riscv32 | riscv32be | riscv64 | riscv64be \
+			| rl78 | romp | rs6000 | rx \
+			| s390 | s390x \
+			| score \
+			| sh | shl \
+			| sh[1234] | sh[24]a | sh[24]ae[lb] | sh[23]e | she[lb] | sh[lb]e \
+			| sh[1234]e[lb] |  sh[12345][lb]e | sh[23]ele | sh64 | sh64le \
+			| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet \
+			| sparclite \
+			| sparcv8 | sparcv9 | sparcv9b | sparcv9v | sv1 | sx* \
+			| spu \
+			| tahoe \
+			| thumbv7* \
+			| tic30 | tic4x | tic54x | tic55x | tic6x | tic80 \
+			| tron \
+			| ubicom32 \
+			| v70 | v850 | v850e | v850e1 | v850es | v850e2 | v850e2v3 \
+			| vax \
+			| visium \
+			| w65 \
+			| wasm32 | wasm64 \
+			| we32k \
+			| x86 | x86_64 | xc16x | xgate | xps100 \
+			| xstormy16 | xtensa* \
+			| ymp \
+			| z8k | z80)
+				;;
+
+			*)
+				echo Invalid configuration \`"$1"\': machine \`"$cpu-$vendor"\' not recognized 1>&2
+				exit 1
+				;;
+		esac
 		;;
 esac
 
 # Here we canonicalize certain aliases for manufacturers.
-case $basic_machine in
-	*-digital*)
-		basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
+case $vendor in
+	digital*)
+		vendor=dec
 		;;
-	*-commodore*)
-		basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
+	commodore*)
+		vendor=cbm
 		;;
 	*)
 		;;
@@ -1340,200 +1306,215 @@
 
 # Decode manufacturer-specific aliases for certain operating systems.
 
-if [ x"$os" != x"" ]
+if test x$basic_os != x
 then
+
+# First recognize some ad-hoc cases, or perhaps split kernel-os, or else just
+# set os.
+case $basic_os in
+	gnu/linux*)
+		kernel=linux
+		os=`echo "$basic_os" | sed -e 's|gnu/linux|gnu|'`
+		;;
+	os2-emx)
+		kernel=os2
+		os=`echo "$basic_os" | sed -e 's|os2-emx|emx|'`
+		;;
+	nto-qnx*)
+		kernel=nto
+		os=`echo "$basic_os" | sed -e 's|nto-qnx|qnx|'`
+		;;
+	*-*)
+		# shellcheck disable=SC2162
+		saved_IFS=$IFS
+		IFS="-" read kernel os <&2
-		exit 1
+		# No normalization, but not necessarily accepted, that comes below.
 		;;
 esac
+
 else
 
 # Here we handle the default operating systems that come with various machines.
@@ -1546,261 +1527,363 @@
 # will signal an error saying that MANUFACTURER isn't an operating
 # system, and we'll never get to this point.
 
-case $basic_machine in
+kernel=
+case $cpu-$vendor in
 	score-*)
-		os=-elf
+		os=elf
 		;;
 	spu-*)
-		os=-elf
+		os=elf
 		;;
 	*-acorn)
-		os=-riscix1.2
+		os=riscix1.2
 		;;
 	arm*-rebel)
-		os=-linux
+		kernel=linux
+		os=gnu
 		;;
 	arm*-semi)
-		os=-aout
+		os=aout
 		;;
 	c4x-* | tic4x-*)
-		os=-coff
+		os=coff
 		;;
 	c8051-*)
-		os=-elf
+		os=elf
+		;;
+	clipper-intergraph)
+		os=clix
 		;;
 	hexagon-*)
-		os=-elf
+		os=elf
 		;;
 	tic54x-*)
-		os=-coff
+		os=coff
 		;;
 	tic55x-*)
-		os=-coff
+		os=coff
 		;;
 	tic6x-*)
-		os=-coff
+		os=coff
 		;;
 	# This must come before the *-dec entry.
 	pdp10-*)
-		os=-tops20
+		os=tops20
 		;;
 	pdp11-*)
-		os=-none
+		os=none
 		;;
 	*-dec | vax-*)
-		os=-ultrix4.2
+		os=ultrix4.2
 		;;
 	m68*-apollo)
-		os=-domain
+		os=domain
 		;;
 	i386-sun)
-		os=-sunos4.0.2
+		os=sunos4.0.2
 		;;
 	m68000-sun)
-		os=-sunos3
+		os=sunos3
 		;;
 	m68*-cisco)
-		os=-aout
+		os=aout
 		;;
 	mep-*)
-		os=-elf
+		os=elf
 		;;
 	mips*-cisco)
-		os=-elf
+		os=elf
 		;;
 	mips*-*)
-		os=-elf
+		os=elf
 		;;
 	or32-*)
-		os=-coff
+		os=coff
 		;;
 	*-tti)	# must be before sparc entry or we get the wrong os.
-		os=-sysv3
+		os=sysv3
 		;;
 	sparc-* | *-sun)
-		os=-sunos4.1.1
+		os=sunos4.1.1
 		;;
-	*-be)
-		os=-beos
+	pru-*)
+		os=elf
 		;;
-	*-haiku)
-		os=-haiku
+	*-be)
+		os=beos
 		;;
 	*-ibm)
-		os=-aix
+		os=aix
 		;;
 	*-knuth)
-		os=-mmixware
+		os=mmixware
 		;;
 	*-wec)
-		os=-proelf
+		os=proelf
 		;;
 	*-winbond)
-		os=-proelf
+		os=proelf
 		;;
 	*-oki)
-		os=-proelf
+		os=proelf
 		;;
 	*-hp)
-		os=-hpux
+		os=hpux
 		;;
 	*-hitachi)
-		os=-hiux
+		os=hiux
 		;;
 	i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
-		os=-sysv
+		os=sysv
 		;;
 	*-cbm)
-		os=-amigaos
+		os=amigaos
 		;;
 	*-dg)
-		os=-dgux
+		os=dgux
 		;;
 	*-dolphin)
-		os=-sysv3
+		os=sysv3
 		;;
 	m68k-ccur)
-		os=-rtu
+		os=rtu
 		;;
 	m88k-omron*)
-		os=-luna
+		os=luna
 		;;
-	*-next )
-		os=-nextstep
+	*-next)
+		os=nextstep
 		;;
 	*-sequent)
-		os=-ptx
+		os=ptx
 		;;
 	*-crds)
-		os=-unos
+		os=unos
 		;;
 	*-ns)
-		os=-genix
+		os=genix
 		;;
 	i370-*)
-		os=-mvs
-		;;
-	*-next)
-		os=-nextstep3
+		os=mvs
 		;;
 	*-gould)
-		os=-sysv
+		os=sysv
 		;;
 	*-highlevel)
-		os=-bsd
+		os=bsd
 		;;
 	*-encore)
-		os=-bsd
+		os=bsd
 		;;
 	*-sgi)
-		os=-irix
+		os=irix
 		;;
 	*-siemens)
-		os=-sysv4
+		os=sysv4
 		;;
 	*-masscomp)
-		os=-rtu
+		os=rtu
 		;;
 	f30[01]-fujitsu | f700-fujitsu)
-		os=-uxpv
+		os=uxpv
 		;;
 	*-rom68k)
-		os=-coff
+		os=coff
 		;;
 	*-*bug)
-		os=-coff
+		os=coff
 		;;
 	*-apple)
-		os=-macos
+		os=macos
 		;;
 	*-atari*)
-		os=-mint
+		os=mint
+		;;
+	*-wrs)
+		os=vxworks
 		;;
 	*)
-		os=-none
+		os=none
 		;;
 esac
+
 fi
 
+# Now, validate our (potentially fixed-up) OS.
+case $os in
+	# Sometimes we do "kernel-libc", so those need to count as OSes.
+	musl* | newlib* | relibc* | uclibc*)
+		;;
+	# Likewise for "kernel-abi"
+	eabi* | gnueabi*)
+		;;
+	# VxWorks passes extra cpu info in the 4th filed.
+	simlinux | simwindows | spe)
+		;;
+	# Now accept the basic system types.
+	# The portable systems comes first.
+	# Each alternative MUST end in a * to match a version number.
+	gnu* | android* | bsd* | mach* | minix* | genix* | ultrix* | irix* \
+	     | *vms* | esix* | aix* | cnk* | sunos | sunos[34]* \
+	     | hpux* | unos* | osf* | luna* | dgux* | auroraux* | solaris* \
+	     | sym* |  plan9* | psp* | sim* | xray* | os68k* | v88r* \
+	     | hiux* | abug | nacl* | netware* | windows* \
+	     | os9* | macos* | osx* | ios* \
+	     | mpw* | magic* | mmixware* | mon960* | lnews* \
+	     | amigaos* | amigados* | msdos* | newsos* | unicos* | aof* \
+	     | aos* | aros* | cloudabi* | sortix* | twizzler* \
+	     | nindy* | vxsim* | vxworks* | ebmon* | hms* | mvs* \
+	     | clix* | riscos* | uniplus* | iris* | isc* | rtu* | xenix* \
+	     | mirbsd* | netbsd* | dicos* | openedition* | ose* \
+	     | bitrig* | openbsd* | secbsd* | solidbsd* | libertybsd* | os108* \
+	     | ekkobsd* | freebsd* | riscix* | lynxos* | os400* \
+	     | bosx* | nextstep* | cxux* | aout* | elf* | oabi* \
+	     | ptx* | coff* | ecoff* | winnt* | domain* | vsta* \
+	     | udi* | lites* | ieee* | go32* | aux* | hcos* \
+	     | chorusrdb* | cegcc* | glidix* | serenity* \
+	     | cygwin* | msys* | pe* | moss* | proelf* | rtems* \
+	     | midipix* | mingw32* | mingw64* | mint* \
+	     | uxpv* | beos* | mpeix* | udk* | moxiebox* \
+	     | interix* | uwin* | mks* | rhapsody* | darwin* \
+	     | openstep* | oskit* | conix* | pw32* | nonstopux* \
+	     | storm-chaos* | tops10* | tenex* | tops20* | its* \
+	     | os2* | vos* | palmos* | uclinux* | nucleus* | morphos* \
+	     | scout* | superux* | sysv* | rtmk* | tpf* | windiss* \
+	     | powermax* | dnix* | nx6 | nx7 | sei* | dragonfly* \
+	     | skyos* | haiku* | rdos* | toppers* | drops* | es* \
+	     | onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \
+	     | midnightbsd* | amdhsa* | unleashed* | emscripten* | wasi* \
+	     | nsk* | powerunix* | genode* | zvmoe* | qnx* | emx* | zephyr* \
+	     | fiwix* )
+		;;
+	# This one is extra strict with allowed versions
+	sco3.2v2 | sco3.2v[4-9]* | sco5v6*)
+		# Don't forget version if it is 3.2v4 or newer.
+		;;
+	none)
+		;;
+	*)
+		echo Invalid configuration \`"$1"\': OS \`"$os"\' not recognized 1>&2
+		exit 1
+		;;
+esac
+
+# As a final step for OS-related things, validate the OS-kernel combination
+# (given a valid OS), if there is a kernel.
+case $kernel-$os in
+	linux-gnu* | linux-dietlibc* | linux-android* | linux-newlib* \
+		   | linux-musl* | linux-relibc* | linux-uclibc* )
+		;;
+	uclinux-uclibc* )
+		;;
+	-dietlibc* | -newlib* | -musl* | -relibc* | -uclibc* )
+		# These are just libc implementations, not actual OSes, and thus
+		# require a kernel.
+		echo "Invalid configuration \`$1': libc \`$os' needs explicit kernel." 1>&2
+		exit 1
+		;;
+	kfreebsd*-gnu* | kopensolaris*-gnu*)
+		;;
+	vxworks-simlinux | vxworks-simwindows | vxworks-spe)
+		;;
+	nto-qnx*)
+		;;
+	os2-emx)
+		;;
+	*-eabi* | *-gnueabi*)
+		;;
+	-*)
+		# Blank kernel with real OS is always fine.
+		;;
+	*-*)
+		echo "Invalid configuration \`$1': Kernel \`$kernel' not known to work with OS \`$os'." 1>&2
+		exit 1
+		;;
+esac
+
 # Here we handle the case where we know the os, and the CPU type, but not the
 # manufacturer.  We pick the logical manufacturer.
-vendor=unknown
-case $basic_machine in
-	*-unknown)
-		case $os in
-			-riscix*)
+case $vendor in
+	unknown)
+		case $cpu-$os in
+			*-riscix*)
 				vendor=acorn
 				;;
-			-sunos*)
+			*-sunos*)
 				vendor=sun
 				;;
-			-cnk*|-aix*)
+			*-cnk* | *-aix*)
 				vendor=ibm
 				;;
-			-beos*)
+			*-beos*)
 				vendor=be
 				;;
-			-hpux*)
+			*-hpux*)
 				vendor=hp
 				;;
-			-mpeix*)
+			*-mpeix*)
 				vendor=hp
 				;;
-			-hiux*)
+			*-hiux*)
 				vendor=hitachi
 				;;
-			-unos*)
+			*-unos*)
 				vendor=crds
 				;;
-			-dgux*)
+			*-dgux*)
 				vendor=dg
 				;;
-			-luna*)
+			*-luna*)
 				vendor=omron
 				;;
-			-genix*)
+			*-genix*)
 				vendor=ns
 				;;
-			-mvs* | -opened*)
+			*-clix*)
+				vendor=intergraph
+				;;
+			*-mvs* | *-opened*)
+				vendor=ibm
+				;;
+			*-os400*)
 				vendor=ibm
 				;;
-			-os400*)
+			s390-* | s390x-*)
 				vendor=ibm
 				;;
-			-ptx*)
+			*-ptx*)
 				vendor=sequent
 				;;
-			-tpf*)
+			*-tpf*)
 				vendor=ibm
 				;;
-			-vxsim* | -vxworks* | -windiss*)
+			*-vxsim* | *-vxworks* | *-windiss*)
 				vendor=wrs
 				;;
-			-aux*)
+			*-aux*)
 				vendor=apple
 				;;
-			-hms*)
+			*-hms*)
 				vendor=hitachi
 				;;
-			-mpw* | -macos*)
+			*-mpw* | *-macos*)
 				vendor=apple
 				;;
-			-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
+			*-*mint | *-mint[0-9]* | *-*MiNT | *-MiNT[0-9]*)
 				vendor=atari
 				;;
-			-vos*)
+			*-vos*)
 				vendor=stratus
 				;;
 		esac
-		basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
 		;;
 esac
 
-echo $basic_machine$os
+echo "$cpu-$vendor-${kernel:+$kernel-}$os"
 exit
 
 # Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
+# eval: (add-hook 'before-save-hook 'time-stamp)
 # time-stamp-start: "timestamp='"
 # time-stamp-format: "%:y-%02m-%02d"
 # time-stamp-end: "'"
diff -Nru lirc-0.10.1/configs/Makefile.in lirc-0.10.2/configs/Makefile.in
--- lirc-0.10.1/configs/Makefile.in	2017-09-10 08:52:38.000000000 +0000
+++ lirc-0.10.2/configs/Makefile.in	2022-10-04 08:02:31.000000000 +0000
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.16.5 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2021 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -168,6 +168,8 @@
 CFLAGS = @CFLAGS@
 CPP = @CPP@
 CPPFLAGS = @CPPFLAGS@
+CSCOPE = @CSCOPE@
+CTAGS = @CTAGS@
 CXX = @CXX@
 CXXCPP = @CXXCPP@
 CXXDEPMODE = @CXXDEPMODE@
@@ -178,15 +180,16 @@
 DEVINPUT_HEADER = @DEVINPUT_HEADER@
 DLLTOOL = @DLLTOOL@
 DOXYGEN = @DOXYGEN@
-DRIVER_FLAGS = @DRIVER_FLAGS@
 DSYMUTIL = @DSYMUTIL@
 DUMPBIN = @DUMPBIN@
 ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
+ETAGS = @ETAGS@
 EXEEXT = @EXEEXT@
 FGREP = @FGREP@
+FILECMD = @FILECMD@
 FTDI_CFLAGS = @FTDI_CFLAGS@
 FTDI_LIBS = @FTDI_LIBS@
 GREP = @GREP@
@@ -209,7 +212,6 @@
 LTLIBOBJS = @LTLIBOBJS@
 LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
 MAKEINFO = @MAKEINFO@
-MAN2HTML = @MAN2HTML@
 MANIFEST_TOOL = @MANIFEST_TOOL@
 MKDIR_P = @MKDIR_P@
 MODINFO = @MODINFO@
@@ -242,6 +244,7 @@
 PYTHON_VERSION = @PYTHON_VERSION@
 RANLIB = @RANLIB@
 SED = @SED@
+SETUPTOOLS_ENV = @SETUPTOOLS_ENV@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
 SH_PATH = @SH_PATH@
@@ -291,7 +294,6 @@
 includedir = @includedir@
 infodir = @infodir@
 install_sh = @install_sh@
-kernel_header_flags = @kernel_header_flags@
 libdir = @libdir@
 libexecdir = @libexecdir@
 localedir = @localedir@
@@ -348,8 +350,8 @@
 	  *config.status*) \
 	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
 	  *) \
-	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
-	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
+	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
 	esac;
 
 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
@@ -414,8 +416,10 @@
 
 cscope cscopelist:
 
+distdir: $(BUILT_SOURCES)
+	$(MAKE) $(AM_MAKEFLAGS) distdir-am
 
-distdir: $(DISTFILES)
+distdir-am: $(DISTFILES)
 	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 	list='$(DISTFILES)'; \
diff -Nru lirc-0.10.1/configure lirc-0.10.2/configure
--- lirc-0.10.1/configure	2017-09-10 08:52:36.000000000 +0000
+++ lirc-0.10.2/configure	2022-10-04 08:02:30.000000000 +0000
@@ -1,9 +1,10 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for lirc 0.10.1.
+# Generated by GNU Autoconf 2.71 for lirc 0.10.2.
 #
 #
-# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
+# Copyright (C) 1992-1996, 1998-2017, 2020-2021 Free Software Foundation,
+# Inc.
 #
 #
 # This configure script is free software; the Free Software Foundation
@@ -14,14 +15,16 @@
 
 # Be more Bourne compatible
 DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
+as_nop=:
+if test ${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1
+then :
   emulate sh
   NULLCMD=:
   # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
   # is contrary to our usage.  Disable this feature.
   alias -g '${1+"$@"}'='"$@"'
   setopt NO_GLOB_SUBST
-else
+else $as_nop
   case `(set -o) 2>/dev/null` in #(
   *posix*) :
     set -o posix ;; #(
@@ -31,46 +34,46 @@
 fi
 
 
+
+# Reset variables that may have inherited troublesome values from
+# the environment.
+
+# IFS needs to be set, to space, tab, and newline, in precisely that order.
+# (If _AS_PATH_WALK were called with IFS unset, it would have the
+# side effect of setting IFS to empty, thus disabling word splitting.)
+# Quoting is to prevent editors from complaining about space-tab.
 as_nl='
 '
 export as_nl
-# Printing a long string crashes Solaris 7 /usr/bin/printf.
-as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-# Prefer a ksh shell builtin over an external printf program on Solaris,
-# but without wasting forks for bash or zsh.
-if test -z "$BASH_VERSION$ZSH_VERSION" \
-    && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
-  as_echo='print -r --'
-  as_echo_n='print -rn --'
-elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
-  as_echo='printf %s\n'
-  as_echo_n='printf %s'
-else
-  if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
-    as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
-    as_echo_n='/usr/ucb/echo -n'
-  else
-    as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
-    as_echo_n_body='eval
-      arg=$1;
-      case $arg in #(
-      *"$as_nl"*)
-	expr "X$arg" : "X\\(.*\\)$as_nl";
-	arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
-      esac;
-      expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
-    '
-    export as_echo_n_body
-    as_echo_n='sh -c $as_echo_n_body as_echo'
-  fi
-  export as_echo_body
-  as_echo='sh -c $as_echo_body as_echo'
-fi
+IFS=" ""	$as_nl"
+
+PS1='$ '
+PS2='> '
+PS4='+ '
+
+# Ensure predictable behavior from utilities with locale-dependent output.
+LC_ALL=C
+export LC_ALL
+LANGUAGE=C
+export LANGUAGE
+
+# We cannot yet rely on "unset" to work, but we need these variables
+# to be unset--not just set to an empty or harmless value--now, to
+# avoid bugs in old shells (e.g. pre-3.0 UWIN ksh).  This construct
+# also avoids known problems related to "unset" and subshell syntax
+# in other old shells (e.g. bash 2.01 and pdksh 5.2.14).
+for as_var in BASH_ENV ENV MAIL MAILPATH CDPATH
+do eval test \${$as_var+y} \
+  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
+done
+
+# Ensure that fds 0, 1, and 2 are open.
+if (exec 3>&0) 2>/dev/null; then :; else exec 0&1) 2>/dev/null; then :; else exec 1>/dev/null; fi
+if (exec 3>&2)            ; then :; else exec 2>/dev/null; fi
 
 # The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
+if ${PATH_SEPARATOR+false} :; then
   PATH_SEPARATOR=:
   (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
     (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
@@ -79,13 +82,6 @@
 fi
 
 
-# IFS
-# We need space, tab and new line, in precisely that order.  Quoting is
-# there to prevent editors from complaining about space-tab.
-# (If _AS_PATH_WALK were called with IFS unset, it would disable word
-# splitting by setting IFS to empty value.)
-IFS=" ""	$as_nl"
-
 # Find who we are.  Look in the path if we contain no directory separator.
 as_myself=
 case $0 in #((
@@ -94,8 +90,12 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    test -r "$as_dir$0" && as_myself=$as_dir$0 && break
   done
 IFS=$as_save_IFS
 
@@ -107,30 +107,10 @@
   as_myself=$0
 fi
 if test ! -f "$as_myself"; then
-  $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
+  printf "%s\n" "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
   exit 1
 fi
 
-# Unset variables that we do not need and which cause bugs (e.g. in
-# pre-3.0 UWIN ksh).  But do not cause bugs in bash 2.01; the "|| exit 1"
-# suppresses any "Segmentation fault" message there.  '((' could
-# trigger a bug in pdksh 5.2.14.
-for as_var in BASH_ENV ENV MAIL MAILPATH
-do eval test x\${$as_var+set} = xset \
-  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
-done
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-LC_ALL=C
-export LC_ALL
-LANGUAGE=C
-export LANGUAGE
-
-# CDPATH.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
 
 # Use a proper internal environment variable to ensure we don't fall
   # into an infinite loop, continuously re-executing ourselves.
@@ -152,20 +132,22 @@
 exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
 # Admittedly, this is quite paranoid, since all the known shells bail
 # out after a failed `exec'.
-$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
-as_fn_exit 255
+printf "%s\n" "$0: could not re-execute with $CONFIG_SHELL" >&2
+exit 255
   fi
   # We don't want this to propagate to other subprocesses.
           { _as_can_reexec=; unset _as_can_reexec;}
 if test "x$CONFIG_SHELL" = x; then
-  as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
+  as_bourne_compatible="as_nop=:
+if test \${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1
+then :
   emulate sh
   NULLCMD=:
   # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which
   # is contrary to our usage.  Disable this feature.
   alias -g '\${1+\"\$@\"}'='\"\$@\"'
   setopt NO_GLOB_SUBST
-else
+else \$as_nop
   case \`(set -o) 2>/dev/null\` in #(
   *posix*) :
     set -o posix ;; #(
@@ -185,12 +167,15 @@
 as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; }
 as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; }
 as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; }
-if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
+if ( set x; as_fn_ret_success y && test x = \"\$1\" )
+then :
 
-else
+else \$as_nop
   exitcode=1; echo positional parameters were not saved.
 fi
 test x\$exitcode = x0 || exit 1
+blah=\$(echo \$(echo blah))
+test x\"\$blah\" = xblah || exit 1
 test -x / || exit 1"
   as_suggested="  as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
   as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
@@ -205,30 +190,38 @@
     test \"X\`printf %s \$ECHO\`\" = \"X\$ECHO\" \\
       || test \"X\`print -r -- \$ECHO\`\" = \"X\$ECHO\" ) || exit 1
 test \$(( 1 + 1 )) = 2 || exit 1"
-  if (eval "$as_required") 2>/dev/null; then :
+  if (eval "$as_required") 2>/dev/null
+then :
   as_have_required=yes
-else
+else $as_nop
   as_have_required=no
 fi
-  if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then :
+  if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null
+then :
 
-else
+else $as_nop
   as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 as_found=false
 for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
   as_found=:
   case $as_dir in #(
 	 /*)
 	   for as_base in sh bash ksh sh5; do
 	     # Try only shells that exist, to save several forks.
-	     as_shell=$as_dir/$as_base
+	     as_shell=$as_dir$as_base
 	     if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
-		    { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then :
+		    as_run=a "$as_shell" -c "$as_bourne_compatible""$as_required" 2>/dev/null
+then :
   CONFIG_SHELL=$as_shell as_have_required=yes
-		   if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then :
+		   if as_run=a "$as_shell" -c "$as_bourne_compatible""$as_suggested" 2>/dev/null
+then :
   break 2
 fi
 fi
@@ -236,14 +229,21 @@
        esac
   as_found=false
 done
-$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&
-	      { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then :
-  CONFIG_SHELL=$SHELL as_have_required=yes
-fi; }
 IFS=$as_save_IFS
+if $as_found
+then :
+
+else $as_nop
+  if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&
+	      as_run=a "$SHELL" -c "$as_bourne_compatible""$as_required" 2>/dev/null
+then :
+  CONFIG_SHELL=$SHELL as_have_required=yes
+fi
+fi
 
 
-      if test "x$CONFIG_SHELL" != x; then :
+      if test "x$CONFIG_SHELL" != x
+then :
   export CONFIG_SHELL
              # We cannot yet assume a decent shell, so we have to provide a
 # neutralization value for shells without unset; and this also
@@ -261,18 +261,19 @@
 exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
 # Admittedly, this is quite paranoid, since all the known shells bail
 # out after a failed `exec'.
-$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
+printf "%s\n" "$0: could not re-execute with $CONFIG_SHELL" >&2
 exit 255
 fi
 
-    if test x$as_have_required = xno; then :
-  $as_echo "$0: This script requires a shell more modern than all"
-  $as_echo "$0: the shells that I found on your system."
-  if test x${ZSH_VERSION+set} = xset ; then
-    $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should"
-    $as_echo "$0: be upgraded to zsh 4.3.4 or later."
+    if test x$as_have_required = xno
+then :
+  printf "%s\n" "$0: This script requires a shell more modern than all"
+  printf "%s\n" "$0: the shells that I found on your system."
+  if test ${ZSH_VERSION+y} ; then
+    printf "%s\n" "$0: In particular, zsh $ZSH_VERSION has bugs and should"
+    printf "%s\n" "$0: be upgraded to zsh 4.3.4 or later."
   else
-    $as_echo "$0: Please tell bug-autoconf@gnu.org about your system,
+    printf "%s\n" "$0: Please tell bug-autoconf@gnu.org about your system,
 $0: including any error possibly output before this
 $0: message. Then install a modern shell, or manually run
 $0: the script under such a shell if you do have one."
@@ -299,6 +300,7 @@
 }
 as_unset=as_fn_unset
 
+
 # as_fn_set_status STATUS
 # -----------------------
 # Set $? to STATUS, without forking.
@@ -316,6 +318,14 @@
   as_fn_set_status $1
   exit $1
 } # as_fn_exit
+# as_fn_nop
+# ---------
+# Do nothing but, unlike ":", preserve the value of $?.
+as_fn_nop ()
+{
+  return $?
+}
+as_nop=as_fn_nop
 
 # as_fn_mkdir_p
 # -------------
@@ -330,7 +340,7 @@
     as_dirs=
     while :; do
       case $as_dir in #(
-      *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
+      *\'*) as_qdir=`printf "%s\n" "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
       *) as_qdir=$as_dir;;
       esac
       as_dirs="'$as_qdir' $as_dirs"
@@ -339,7 +349,7 @@
 	 X"$as_dir" : 'X\(//\)[^/]' \| \
 	 X"$as_dir" : 'X\(//\)$' \| \
 	 X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_dir" |
+printf "%s\n" X"$as_dir" |
     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
 	    s//\1/
 	    q
@@ -378,12 +388,13 @@
 # advantage of any shell optimizations that allow amortized linear growth over
 # repeated appends, instead of the typical quadratic growth present in naive
 # implementations.
-if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
+if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null
+then :
   eval 'as_fn_append ()
   {
     eval $1+=\$2
   }'
-else
+else $as_nop
   as_fn_append ()
   {
     eval $1=\$$1\$2
@@ -395,18 +406,27 @@
 # Perform arithmetic evaluation on the ARGs, and store the result in the
 # global $as_val. Take advantage of shells that can avoid forks. The arguments
 # must be portable across $(()) and expr.
-if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
+if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null
+then :
   eval 'as_fn_arith ()
   {
     as_val=$(( $* ))
   }'
-else
+else $as_nop
   as_fn_arith ()
   {
     as_val=`expr "$@" || test $? -eq 1`
   }
 fi # as_fn_arith
 
+# as_fn_nop
+# ---------
+# Do nothing but, unlike ":", preserve the value of $?.
+as_fn_nop ()
+{
+  return $?
+}
+as_nop=as_fn_nop
 
 # as_fn_error STATUS ERROR [LINENO LOG_FD]
 # ----------------------------------------
@@ -418,9 +438,9 @@
   as_status=$1; test $as_status -eq 0 && as_status=1
   if test "$4"; then
     as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-    $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
   fi
-  $as_echo "$as_me: error: $2" >&2
+  printf "%s\n" "$as_me: error: $2" >&2
   as_fn_exit $as_status
 } # as_fn_error
 
@@ -447,7 +467,7 @@
 $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
 	 X"$0" : 'X\(//\)$' \| \
 	 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$0" |
+printf "%s\n" X/"$0" |
     sed '/^.*\/\([^/][^/]*\)\/*$/{
 	    s//\1/
 	    q
@@ -491,7 +511,7 @@
       s/-\n.*//
     ' >$as_me.lineno &&
   chmod +x "$as_me.lineno" ||
-    { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
+    { printf "%s\n" "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
 
   # If we had to re-execute with $CONFIG_SHELL, we're ensured to have
   # already done that, so ensure we don't try to do so again and fall
@@ -505,6 +525,10 @@
   exit
 }
 
+
+# Determine whether it's possible to make 'echo' print without a newline.
+# These variables are no longer used directly by Autoconf, but are AC_SUBSTed
+# for compatibility with existing Makefiles.
 ECHO_C= ECHO_N= ECHO_T=
 case `echo -n x` in #(((((
 -n*)
@@ -518,6 +542,13 @@
   ECHO_N='-n';;
 esac
 
+# For backward compatibility with old third-party macros, we provide
+# the shell variables $as_echo and $as_echo_n.  New code should use
+# AS_ECHO(["message"]) and AS_ECHO_N(["message"]), respectively.
+as_echo='printf %s\n'
+as_echo_n='printf %s'
+
+
 rm -f conf$$ conf$$.exe conf$$.file
 if test -d conf$$.dir; then
   rm -f conf$$.dir/conf$$.file
@@ -587,48 +618,44 @@
 # Identity of this package.
 PACKAGE_NAME='lirc'
 PACKAGE_TARNAME='lirc'
-PACKAGE_VERSION='0.10.1'
-PACKAGE_STRING='lirc 0.10.1'
+PACKAGE_VERSION='0.10.2'
+PACKAGE_STRING='lirc 0.10.2'
 PACKAGE_BUGREPORT=''
 PACKAGE_URL=''
 
 ac_unique_file="daemons/lircd.cpp"
 # Factoring default headers for most tests.
 ac_includes_default="\
-#include 
-#ifdef HAVE_SYS_TYPES_H
-# include 
-#endif
-#ifdef HAVE_SYS_STAT_H
-# include 
+#include 
+#ifdef HAVE_STDIO_H
+# include 
 #endif
-#ifdef STDC_HEADERS
+#ifdef HAVE_STDLIB_H
 # include 
-# include 
-#else
-# ifdef HAVE_STDLIB_H
-#  include 
-# endif
 #endif
 #ifdef HAVE_STRING_H
-# if !defined STDC_HEADERS && defined HAVE_MEMORY_H
-#  include 
-# endif
 # include 
 #endif
-#ifdef HAVE_STRINGS_H
-# include 
-#endif
 #ifdef HAVE_INTTYPES_H
 # include 
 #endif
 #ifdef HAVE_STDINT_H
 # include 
 #endif
+#ifdef HAVE_STRINGS_H
+# include 
+#endif
+#ifdef HAVE_SYS_TYPES_H
+# include 
+#endif
+#ifdef HAVE_SYS_STAT_H
+# include 
+#endif
 #ifdef HAVE_UNISTD_H
 # include 
 #endif"
 
+ac_header_c_list=
 ac_subst_vars='am__EXEEXT_FALSE
 am__EXEEXT_TRUE
 LTLIBOBJS
@@ -641,6 +668,7 @@
 IS_CROSS_COMPILE_TRUE
 DEVEL_FALSE
 DEVEL_TRUE
+SETUPTOOLS_ENV
 HAVE_WORKING_POLL
 DEVINPUT_HEADER
 INSTALL_ETC_FALSE
@@ -662,8 +690,6 @@
 BUILD_HIDDEV_TRUE
 HAVE_IOKIT_FALSE
 HAVE_IOKIT_TRUE
-kernel_header_flags
-DRIVER_FLAGS
 BUILD_ALSA_SB_RC_FALSE
 BUILD_ALSA_SB_RC_TRUE
 BUILD_LIBALSA_FALSE
@@ -689,6 +715,7 @@
 LINUX_KERNEL_TRUE
 HAVE_PYMOD_YAML_FALSE
 HAVE_PYMOD_YAML_TRUE
+CPP
 HAVE_PYTHON35_FALSE
 HAVE_PYTHON35_TRUE
 PYTHON_LIBS
@@ -700,13 +727,12 @@
 pyexecdir
 pkgpythondir
 pythondir
-PYTHON_PLATFORM
 PYTHON_EXEC_PREFIX
 PYTHON_PREFIX
+PYTHON_PLATFORM
 PYTHON_VERSION
 PYTHON
 CXXCPP
-CPP
 LT_SYS_LIBRARY_PATH
 OTOOL64
 OTOOL
@@ -719,6 +745,7 @@
 AR
 DLLTOOL
 OBJDUMP
+FILECMD
 LN_S
 NM
 ac_ct_DUMPBIN
@@ -742,7 +769,6 @@
 DOXYGEN
 HAVE_MAN2HTML_FALSE
 HAVE_MAN2HTML_TRUE
-MAN2HTML
 XSLTPROC
 PKGCONFIG
 MODINFO
@@ -760,7 +786,6 @@
 AMDEPBACKSLASH
 AMDEP_FALSE
 AMDEP_TRUE
-am__quote
 am__include
 DEPDIR
 OBJEXT
@@ -776,6 +801,9 @@
 AM_DEFAULT_VERBOSITY
 AM_DEFAULT_V
 AM_V
+CSCOPE
+ETAGS
+CTAGS
 am__untar
 am__tar
 AMTAR
@@ -799,7 +827,6 @@
 INSTALL_DATA
 INSTALL_SCRIPT
 INSTALL_PROGRAM
-runstatedir
 target_alias
 host_alias
 build_alias
@@ -819,6 +846,7 @@
 docdir
 oldincludedir
 includedir
+runstatedir
 localstatedir
 sharedstatedir
 sysconfdir
@@ -837,7 +865,8 @@
 PACKAGE_TARNAME
 PACKAGE_NAME
 PATH_SEPARATOR
-SHELL'
+SHELL
+am__quote'
 ac_subst_files=''
 ac_user_opts='
 enable_option_checking
@@ -851,6 +880,9 @@
 with_gnu_ld
 with_sysroot
 enable_libtool_lock
+with_python_sys_prefix
+with_python_prefix
+with_python_exec_prefix
 with_x
 with_systemdsystemunitdir
 with_lockdir
@@ -870,7 +902,6 @@
 CXXFLAGS
 CCC
 LT_SYS_LIBRARY_PATH
-CPP
 CXXCPP
 PYTHON
 PKG_CONFIG
@@ -878,6 +909,7 @@
 PKG_CONFIG_LIBDIR
 PYTHON_CFLAGS
 PYTHON_LIBS
+CPP
 XMKMF
 FTDI_CFLAGS
 FTDI_LIBS
@@ -889,7 +921,8 @@
 LIBUDEV_LIBS
 DEVINPUT_HEADER
 HAVE_WORKING_POLL
-SH_PATH'
+SH_PATH
+SETUPTOOLS_ENV'
 
 
 # Initialize some variables set by options.
@@ -928,6 +961,7 @@
 sysconfdir='${prefix}/etc'
 sharedstatedir='${prefix}/com'
 localstatedir='${prefix}/var'
+runstatedir='${localstatedir}/run'
 includedir='${prefix}/include'
 oldincludedir='/usr/include'
 docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
@@ -957,8 +991,6 @@
   *)    ac_optarg=yes ;;
   esac
 
-  # Accept the important Cygnus configure options, so we can diagnose typos.
-
   case $ac_dashdash$ac_option in
   --)
     ac_dashdash=yes ;;
@@ -999,9 +1031,9 @@
     ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
     # Reject names that are not valid shell variable names.
     expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      as_fn_error $? "invalid feature name: $ac_useropt"
+      as_fn_error $? "invalid feature name: \`$ac_useropt'"
     ac_useropt_orig=$ac_useropt
-    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+    ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'`
     case $ac_user_opts in
       *"
 "enable_$ac_useropt"
@@ -1025,9 +1057,9 @@
     ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
     # Reject names that are not valid shell variable names.
     expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      as_fn_error $? "invalid feature name: $ac_useropt"
+      as_fn_error $? "invalid feature name: \`$ac_useropt'"
     ac_useropt_orig=$ac_useropt
-    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+    ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'`
     case $ac_user_opts in
       *"
 "enable_$ac_useropt"
@@ -1180,6 +1212,15 @@
   | -silent | --silent | --silen | --sile | --sil)
     silent=yes ;;
 
+  -runstatedir | --runstatedir | --runstatedi | --runstated \
+  | --runstate | --runstat | --runsta | --runst | --runs \
+  | --run | --ru | --r)
+    ac_prev=runstatedir ;;
+  -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \
+  | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \
+  | --run=* | --ru=* | --r=*)
+    runstatedir=$ac_optarg ;;
+
   -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
     ac_prev=sbindir ;;
   -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
@@ -1229,9 +1270,9 @@
     ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
     # Reject names that are not valid shell variable names.
     expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      as_fn_error $? "invalid package name: $ac_useropt"
+      as_fn_error $? "invalid package name: \`$ac_useropt'"
     ac_useropt_orig=$ac_useropt
-    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+    ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'`
     case $ac_user_opts in
       *"
 "with_$ac_useropt"
@@ -1245,9 +1286,9 @@
     ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'`
     # Reject names that are not valid shell variable names.
     expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      as_fn_error $? "invalid package name: $ac_useropt"
+      as_fn_error $? "invalid package name: \`$ac_useropt'"
     ac_useropt_orig=$ac_useropt
-    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+    ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'`
     case $ac_user_opts in
       *"
 "with_$ac_useropt"
@@ -1291,9 +1332,9 @@
 
   *)
     # FIXME: should be removed in autoconf 3.0.
-    $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2
+    printf "%s\n" "$as_me: WARNING: you should use --build, --host, --target" >&2
     expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
-      $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2
+      printf "%s\n" "$as_me: WARNING: invalid host type: $ac_option" >&2
     : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}"
     ;;
 
@@ -1309,7 +1350,7 @@
   case $enable_option_checking in
     no) ;;
     fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;;
-    *)     $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;
+    *)     printf "%s\n" "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;
   esac
 fi
 
@@ -1317,7 +1358,7 @@
 for ac_var in	exec_prefix prefix bindir sbindir libexecdir datarootdir \
 		datadir sysconfdir sharedstatedir localstatedir includedir \
 		oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
-		libdir localedir mandir
+		libdir localedir mandir runstatedir
 do
   eval ac_val=\$$ac_var
   # Remove trailing slashes.
@@ -1373,7 +1414,7 @@
 	 X"$as_myself" : 'X\(//\)[^/]' \| \
 	 X"$as_myself" : 'X\(//\)$' \| \
 	 X"$as_myself" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_myself" |
+printf "%s\n" X"$as_myself" |
     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
 	    s//\1/
 	    q
@@ -1430,7 +1471,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 lirc 0.10.1 to adapt to many kinds of systems.
+\`configure' configures lirc 0.10.2 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1470,6 +1511,7 @@
   --sysconfdir=DIR        read-only single-machine data [PREFIX/etc]
   --sharedstatedir=DIR    modifiable architecture-independent data [PREFIX/com]
   --localstatedir=DIR     modifiable single-machine data [PREFIX/var]
+  --runstatedir=DIR       modifiable per-process data [LOCALSTATEDIR/run]
   --libdir=DIR            object code libraries [EPREFIX/lib]
   --includedir=DIR        C header files [PREFIX/include]
   --oldincludedir=DIR     C header files for non-gcc [/usr/include]
@@ -1504,7 +1546,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of lirc 0.10.1:";;
+     short | recursive ) echo "Configuration of lirc 0.10.2:";;
    esac
   cat <<\_ACEOF
 
@@ -1538,6 +1580,11 @@
   --with-gnu-ld           assume the C compiler uses GNU ld [default=no]
   --with-sysroot[=DIR]    Search for dependent libraries within DIR (or the
                           compiler's sysroot if not specified).
+  --with-python-sys-prefix
+                          use Python's sys.prefix and sys.exec_prefix values
+  --with-python_prefix    override the default PYTHON_PREFIX
+  --with-python_exec_prefix
+                          override the default PYTHON_EXEC_PREFIX
   --with-x                use the X Window System
   --with-systemdsystemunitdir=DIR
                           Directory for systemd system unit (default:
@@ -1556,7 +1603,6 @@
   CXXFLAGS    C++ compiler flags
   LT_SYS_LIBRARY_PATH
               User-defined run-time library search path.
-  CPP         C preprocessor
   CXXCPP      C++ preprocessor
   PYTHON      the Python interpreter
   PKG_CONFIG  path to pkg-config utility
@@ -1567,6 +1613,7 @@
   PYTHON_CFLAGS
               C compiler flags for PYTHON, overriding pkg-config
   PYTHON_LIBS linker flags for PYTHON, overriding pkg-config
+  CPP         C preprocessor
   XMKMF       Path to xmkmf, Makefile generator for X Window System
   FTDI_CFLAGS C compiler flags for FTDI, overriding pkg-config
   FTDI_LIBS   linker flags for FTDI, overriding pkg-config
@@ -1588,6 +1635,9 @@
   HAVE_WORKING_POLL
               On cross-compile: Target has a working poll(2) [yes/no]
   SH_PATH     On cross-compile: Path to shell, typically /bin/sh
+  SETUPTOOLS_ENV
+              On cross-compile: Python setuptools wrapper environment
+              variables
 
 Use these variables to override the choices made by `configure' or to help
 it to find libraries and programs with nonstandard names/locations.
@@ -1608,9 +1658,9 @@
 case "$ac_dir" in
 .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
 *)
-  ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
+  ac_dir_suffix=/`printf "%s\n" "$ac_dir" | sed 's|^\.[\\/]||'`
   # A ".." for each directory in $ac_dir_suffix.
-  ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
+  ac_top_builddir_sub=`printf "%s\n" "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
   case $ac_top_builddir_sub in
   "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
   *)  ac_top_build_prefix=$ac_top_builddir_sub/ ;;
@@ -1638,7 +1688,8 @@
 ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
 
     cd "$ac_dir" || { ac_status=$?; continue; }
-    # Check for guested configure.
+    # Check for configure.gnu first; this name is used for a wrapper for
+    # Metaconfig's "Configure" on case-insensitive file systems.
     if test -f "$ac_srcdir/configure.gnu"; then
       echo &&
       $SHELL "$ac_srcdir/configure.gnu" --help=recursive
@@ -1646,7 +1697,7 @@
       echo &&
       $SHELL "$ac_srcdir/configure" --help=recursive
     else
-      $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
+      printf "%s\n" "$as_me: WARNING: no configuration information is in $ac_dir" >&2
     fi || ac_status=$?
     cd "$ac_pwd" || { ac_status=$?; break; }
   done
@@ -1655,10 +1706,10 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-lirc configure 0.10.1
-generated by GNU Autoconf 2.69
+lirc configure 0.10.2
+generated by GNU Autoconf 2.71
 
-Copyright (C) 2012 Free Software Foundation, Inc.
+Copyright (C) 2021 Free Software Foundation, Inc.
 This configure script is free software; the Free Software Foundation
 gives unlimited permission to copy, distribute and modify it.
 _ACEOF
@@ -1675,14 +1726,14 @@
 ac_fn_c_try_compile ()
 {
   as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  rm -f conftest.$ac_objext
+  rm -f conftest.$ac_objext conftest.beam
   if { { ac_try="$ac_compile"
 case "(($ac_try" in
   *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_compile") 2>conftest.err
   ac_status=$?
   if test -s conftest.err; then
@@ -1690,14 +1741,15 @@
     cat conftest.er1 >&5
     mv -f conftest.er1 conftest.err
   fi
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; } && {
 	 test -z "$ac_c_werror_flag" ||
 	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then :
+       } && test -s conftest.$ac_objext
+then :
   ac_retval=0
-else
-  $as_echo "$as_me: failed program was:" >&5
+else $as_nop
+  printf "%s\n" "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
 
 	ac_retval=1
@@ -1713,14 +1765,14 @@
 ac_fn_cxx_try_compile ()
 {
   as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  rm -f conftest.$ac_objext
+  rm -f conftest.$ac_objext conftest.beam
   if { { ac_try="$ac_compile"
 case "(($ac_try" in
   *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_compile") 2>conftest.err
   ac_status=$?
   if test -s conftest.err; then
@@ -1728,14 +1780,15 @@
     cat conftest.er1 >&5
     mv -f conftest.er1 conftest.err
   fi
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; } && {
 	 test -z "$ac_cxx_werror_flag" ||
 	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then :
+       } && test -s conftest.$ac_objext
+then :
   ac_retval=0
-else
-  $as_echo "$as_me: failed program was:" >&5
+else $as_nop
+  printf "%s\n" "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
 
 	ac_retval=1
@@ -1751,14 +1804,14 @@
 ac_fn_c_try_link ()
 {
   as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  rm -f conftest.$ac_objext conftest$ac_exeext
+  rm -f conftest.$ac_objext conftest.beam conftest$ac_exeext
   if { { ac_try="$ac_link"
 case "(($ac_try" in
   *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_link") 2>conftest.err
   ac_status=$?
   if test -s conftest.err; then
@@ -1766,17 +1819,18 @@
     cat conftest.er1 >&5
     mv -f conftest.er1 conftest.err
   fi
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; } && {
 	 test -z "$ac_c_werror_flag" ||
 	 test ! -s conftest.err
        } && test -s conftest$ac_exeext && {
 	 test "$cross_compiling" = yes ||
 	 test -x conftest$ac_exeext
-       }; then :
+       }
+then :
   ac_retval=0
-else
-  $as_echo "$as_me: failed program was:" >&5
+else $as_nop
+  printf "%s\n" "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
 
 	ac_retval=1
@@ -1798,120 +1852,44 @@
 ac_fn_c_check_header_compile ()
 {
   as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+printf %s "checking for $2... " >&6; }
+if eval test \${$3+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 $4
 #include <$2>
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   eval "$3=yes"
-else
+else $as_nop
   eval "$3=no"
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 eval ac_res=\$$3
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
+	       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
   eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
 
 } # ac_fn_c_check_header_compile
 
-# ac_fn_c_try_cpp LINENO
-# ----------------------
-# Try to preprocess conftest.$ac_ext, and return whether this succeeded.
-ac_fn_c_try_cpp ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  if { { ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err
-  ac_status=$?
-  if test -s conftest.err; then
-    grep -v '^ *+' conftest.err >conftest.er1
-    cat conftest.er1 >&5
-    mv -f conftest.er1 conftest.err
-  fi
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } > conftest.i && {
-	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       }; then :
-  ac_retval=0
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-    ac_retval=1
-fi
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-  as_fn_set_status $ac_retval
-
-} # ac_fn_c_try_cpp
-
-# ac_fn_c_try_run LINENO
-# ----------------------
-# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes
-# that executables *can* be run.
-ac_fn_c_try_run ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  if { { ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_link") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
-  { { case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_try") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; }; then :
-  ac_retval=0
-else
-  $as_echo "$as_me: program exited with status $ac_status" >&5
-       $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       ac_retval=$ac_status
-fi
-  rm -rf conftest.dSYM conftest_ipa8_conftest.oo
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-  as_fn_set_status $ac_retval
-
-} # ac_fn_c_try_run
-
 # ac_fn_c_check_func LINENO FUNC VAR
 # ----------------------------------
 # Tests whether FUNC exists, setting the cache variable VAR accordingly
 ac_fn_c_check_func ()
 {
   as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+printf %s "checking for $2... " >&6; }
+if eval test \${$3+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 /* Define $2 to an innocuous variant, in case  declares $2.
@@ -1919,16 +1897,9 @@
 #define $2 innocuous_$2
 
 /* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $2 (); below.
-    Prefer  to  if __STDC__ is defined, since
-     exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include 
-#else
-# include 
-#endif
+   which can conflict with char $2 (); below.  */
 
+#include 
 #undef $2
 
 /* Override any GCC internal prototype to avoid an error.
@@ -1946,24 +1917,25 @@
 #endif
 
 int
-main ()
+main (void)
 {
 return $2 ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   eval "$3=yes"
-else
+else $as_nop
   eval "$3=no"
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 fi
 eval ac_res=\$$3
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
+	       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
   eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
 
 } # ac_fn_c_check_func
@@ -1980,7 +1952,7 @@
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err
   ac_status=$?
   if test -s conftest.err; then
@@ -1988,14 +1960,15 @@
     cat conftest.er1 >&5
     mv -f conftest.er1 conftest.err
   fi
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; } > conftest.i && {
 	 test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" ||
 	 test ! -s conftest.err
-       }; then :
+       }
+then :
   ac_retval=0
-else
-  $as_echo "$as_me: failed program was:" >&5
+else $as_nop
+  printf "%s\n" "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
 
     ac_retval=1
@@ -2011,14 +1984,14 @@
 ac_fn_cxx_try_link ()
 {
   as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  rm -f conftest.$ac_objext conftest$ac_exeext
+  rm -f conftest.$ac_objext conftest.beam conftest$ac_exeext
   if { { ac_try="$ac_link"
 case "(($ac_try" in
   *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_link") 2>conftest.err
   ac_status=$?
   if test -s conftest.err; then
@@ -2026,17 +1999,18 @@
     cat conftest.er1 >&5
     mv -f conftest.er1 conftest.err
   fi
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; } && {
 	 test -z "$ac_cxx_werror_flag" ||
 	 test ! -s conftest.err
        } && test -s conftest$ac_exeext && {
 	 test "$cross_compiling" = yes ||
 	 test -x conftest$ac_exeext
-       }; then :
+       }
+then :
   ac_retval=0
-else
-  $as_echo "$as_me: failed program was:" >&5
+else $as_nop
+  printf "%s\n" "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
 
 	ac_retval=1
@@ -2051,92 +2025,43 @@
 
 } # ac_fn_cxx_try_link
 
-# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES
-# -------------------------------------------------------
-# Tests whether HEADER exists, giving a warning if it cannot be compiled using
-# the include files in INCLUDES and setting the cache variable VAR
-# accordingly.
-ac_fn_c_check_header_mongrel ()
+# ac_fn_c_try_cpp LINENO
+# ----------------------
+# Try to preprocess conftest.$ac_ext, and return whether this succeeded.
+ac_fn_c_try_cpp ()
 {
   as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  if eval \${$3+:} false; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-fi
-eval ac_res=\$$3
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-else
-  # Is the header compilable?
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5
-$as_echo_n "checking $2 usability... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-#include <$2>
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_header_compiler=yes
-else
-  ac_header_compiler=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5
-$as_echo "$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5
-$as_echo_n "checking $2 presence... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <$2>
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-  ac_header_preproc=yes
-else
-  ac_header_preproc=no
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5
-$as_echo "$ac_header_preproc" >&6; }
+  if { { ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+printf "%s\n" "$ac_try_echo"; } >&5
+  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err
+  ac_status=$?
+  if test -s conftest.err; then
+    grep -v '^ *+' conftest.err >conftest.er1
+    cat conftest.er1 >&5
+    mv -f conftest.er1 conftest.err
+  fi
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; } > conftest.i && {
+	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+	 test ! -s conftest.err
+       }
+then :
+  ac_retval=0
+else $as_nop
+  printf "%s\n" "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
 
-# So?  What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #((
-  yes:no: )
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5
-$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
-$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
-    ;;
-  no:yes:* )
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5
-$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2:     check for missing prerequisite headers?" >&5
-$as_echo "$as_me: WARNING: $2:     check for missing prerequisite headers?" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5
-$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2:     section \"Present But Cannot Be Compiled\"" >&5
-$as_echo "$as_me: WARNING: $2:     section \"Present But Cannot Be Compiled\"" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
-$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
-    ;;
-esac
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  eval "$3=\$ac_header_compiler"
-fi
-eval ac_res=\$$3
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
+    ac_retval=1
 fi
   eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+  as_fn_set_status $ac_retval
 
-} # ac_fn_c_check_header_mongrel
+} # ac_fn_c_try_cpp
 
 # ac_fn_c_check_type LINENO TYPE VAR INCLUDES
 # -------------------------------------------
@@ -2145,17 +2070,18 @@
 ac_fn_c_check_type ()
 {
   as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+printf %s "checking for $2... " >&6; }
+if eval test \${$3+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   eval "$3=no"
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 $4
 int
-main ()
+main (void)
 {
 if (sizeof ($2))
 	 return 0;
@@ -2163,12 +2089,13 @@
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 $4
 int
-main ()
+main (void)
 {
 if (sizeof (($2)))
 	    return 0;
@@ -2176,18 +2103,19 @@
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-else
+else $as_nop
   eval "$3=yes"
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 eval ac_res=\$$3
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
+	       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
   eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
 
 } # ac_fn_c_check_type
@@ -2199,11 +2127,12 @@
 ac_fn_c_find_intX_t ()
 {
   as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for int$2_t" >&5
-$as_echo_n "checking for int$2_t... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for int$2_t" >&5
+printf %s "checking for int$2_t... " >&6; }
+if eval test \${$3+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   eval "$3=no"
      # Order is important - never check a type that is potentially smaller
      # than half of the expected target width.
@@ -2214,7 +2143,7 @@
 $ac_includes_default
 	     enum { N = $2 / 2 - 1 };
 int
-main ()
+main (void)
 {
 static int test_array [1 - 2 * !(0 < ($ac_type) ((((($ac_type) 1 << N) << N) - 1) * 2 + 1))];
 test_array [0] = 0;
@@ -2224,13 +2153,14 @@
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 $ac_includes_default
 	        enum { N = $2 / 2 - 1 };
 int
-main ()
+main (void)
 {
 static int test_array [1 - 2 * !(($ac_type) ((((($ac_type) 1 << N) << N) - 1) * 2 + 1)
 		 < ($ac_type) ((((($ac_type) 1 << N) << N) - 1) * 2 + 2))];
@@ -2241,9 +2171,10 @@
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-else
+else $as_nop
   case $ac_type in #(
   int$2_t) :
     eval "$3=yes" ;; #(
@@ -2251,19 +2182,20 @@
     eval "$3=\$ac_type" ;;
 esac
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-       if eval test \"x\$"$3"\" = x"no"; then :
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
+       if eval test \"x\$"$3"\" = x"no"
+then :
 
-else
+else $as_nop
   break
 fi
      done
 fi
 eval ac_res=\$$3
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
+	       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
   eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
 
 } # ac_fn_c_find_intX_t
@@ -2275,11 +2207,12 @@
 ac_fn_c_find_uintX_t ()
 {
   as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for uint$2_t" >&5
-$as_echo_n "checking for uint$2_t... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for uint$2_t" >&5
+printf %s "checking for uint$2_t... " >&6; }
+if eval test \${$3+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   eval "$3=no"
      # Order is important - never check a type that is potentially smaller
      # than half of the expected target width.
@@ -2289,7 +2222,7 @@
 /* end confdefs.h.  */
 $ac_includes_default
 int
-main ()
+main (void)
 {
 static int test_array [1 - 2 * !((($ac_type) -1 >> ($2 / 2 - 1)) >> ($2 / 2 - 1) == 3)];
 test_array [0] = 0;
@@ -2299,7 +2232,8 @@
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   case $ac_type in #(
   uint$2_t) :
     eval "$3=yes" ;; #(
@@ -2307,28 +2241,92 @@
     eval "$3=\$ac_type" ;;
 esac
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-       if eval test \"x\$"$3"\" = x"no"; then :
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
+       if eval test \"x\$"$3"\" = x"no"
+then :
 
-else
+else $as_nop
   break
 fi
      done
 fi
 eval ac_res=\$$3
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
+	       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
   eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
 
 } # ac_fn_c_find_uintX_t
+
+# ac_fn_c_try_run LINENO
+# ----------------------
+# Try to run conftest.$ac_ext, and return whether this succeeded. Assumes that
+# executables *can* be run.
+ac_fn_c_try_run ()
+{
+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+  if { { ac_try="$ac_link"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+printf "%s\n" "$ac_try_echo"; } >&5
+  (eval "$ac_link") 2>&5
+  ac_status=$?
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
+  { { case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+printf "%s\n" "$ac_try_echo"; } >&5
+  (eval "$ac_try") 2>&5
+  ac_status=$?
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; }
+then :
+  ac_retval=0
+else $as_nop
+  printf "%s\n" "$as_me: program exited with status $ac_status" >&5
+       printf "%s\n" "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+       ac_retval=$ac_status
+fi
+  rm -rf conftest.dSYM conftest_ipa8_conftest.oo
+  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+  as_fn_set_status $ac_retval
+
+} # ac_fn_c_try_run
+ac_configure_args_raw=
+for ac_arg
+do
+  case $ac_arg in
+  *\'*)
+    ac_arg=`printf "%s\n" "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
+  esac
+  as_fn_append ac_configure_args_raw " '$ac_arg'"
+done
+
+case $ac_configure_args_raw in
+  *$as_nl*)
+    ac_safe_unquote= ;;
+  *)
+    ac_unsafe_z='|&;<>()$`\\"*?[ ''	' # This string ends in space, tab.
+    ac_unsafe_a="$ac_unsafe_z#~"
+    ac_safe_unquote="s/ '\\([^$ac_unsafe_a][^$ac_unsafe_z]*\\)'/ \\1/g"
+    ac_configure_args_raw=`      printf "%s\n" "$ac_configure_args_raw" | sed "$ac_safe_unquote"`;;
+esac
+
 cat >config.log <<_ACEOF
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by lirc $as_me 0.10.1, which was
-generated by GNU Autoconf 2.69.  Invocation command line was
+It was created by lirc $as_me 0.10.2, which was
+generated by GNU Autoconf 2.71.  Invocation command line was
 
-  $ $0 $@
+  $ $0$ac_configure_args_raw
 
 _ACEOF
 exec 5>>config.log
@@ -2361,8 +2359,12 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    $as_echo "PATH: $as_dir"
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    printf "%s\n" "PATH: $as_dir"
   done
 IFS=$as_save_IFS
 
@@ -2397,7 +2399,7 @@
     | -silent | --silent | --silen | --sile | --sil)
       continue ;;
     *\'*)
-      ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
+      ac_arg=`printf "%s\n" "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
     esac
     case $ac_pass in
     1) as_fn_append ac_configure_args0 " '$ac_arg'" ;;
@@ -2432,11 +2434,13 @@
 # WARNING: Use '\'' to represent an apostrophe within the trap.
 # WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug.
 trap 'exit_status=$?
+  # Sanitize IFS.
+  IFS=" ""	$as_nl"
   # Save into config.log some information that might help in debugging.
   {
     echo
 
-    $as_echo "## ---------------- ##
+    printf "%s\n" "## ---------------- ##
 ## Cache variables. ##
 ## ---------------- ##"
     echo
@@ -2447,8 +2451,8 @@
     case $ac_val in #(
     *${as_nl}*)
       case $ac_var in #(
-      *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
-$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
+      *_cv_*) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
+printf "%s\n" "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
       esac
       case $ac_var in #(
       _ | IFS | as_nl) ;; #(
@@ -2472,7 +2476,7 @@
 )
     echo
 
-    $as_echo "## ----------------- ##
+    printf "%s\n" "## ----------------- ##
 ## Output variables. ##
 ## ----------------- ##"
     echo
@@ -2480,14 +2484,14 @@
     do
       eval ac_val=\$$ac_var
       case $ac_val in
-      *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
+      *\'\''*) ac_val=`printf "%s\n" "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
       esac
-      $as_echo "$ac_var='\''$ac_val'\''"
+      printf "%s\n" "$ac_var='\''$ac_val'\''"
     done | sort
     echo
 
     if test -n "$ac_subst_files"; then
-      $as_echo "## ------------------- ##
+      printf "%s\n" "## ------------------- ##
 ## File substitutions. ##
 ## ------------------- ##"
       echo
@@ -2495,15 +2499,15 @@
       do
 	eval ac_val=\$$ac_var
 	case $ac_val in
-	*\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
+	*\'\''*) ac_val=`printf "%s\n" "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
 	esac
-	$as_echo "$ac_var='\''$ac_val'\''"
+	printf "%s\n" "$ac_var='\''$ac_val'\''"
       done | sort
       echo
     fi
 
     if test -s confdefs.h; then
-      $as_echo "## ----------- ##
+      printf "%s\n" "## ----------- ##
 ## confdefs.h. ##
 ## ----------- ##"
       echo
@@ -2511,8 +2515,8 @@
       echo
     fi
     test "$ac_signal" != 0 &&
-      $as_echo "$as_me: caught signal $ac_signal"
-    $as_echo "$as_me: exit $exit_status"
+      printf "%s\n" "$as_me: caught signal $ac_signal"
+    printf "%s\n" "$as_me: exit $exit_status"
   } >&5
   rm -f core *.core core.conftest.* &&
     rm -f -r conftest* confdefs* conf$$* $ac_clean_files &&
@@ -2526,63 +2530,48 @@
 # confdefs.h avoids OS command line length limits that DEFS can exceed.
 rm -f -r conftest* confdefs.h
 
-$as_echo "/* confdefs.h */" > confdefs.h
+printf "%s\n" "/* confdefs.h */" > confdefs.h
 
 # Predefined preprocessor variables.
 
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_NAME "$PACKAGE_NAME"
-_ACEOF
+printf "%s\n" "#define PACKAGE_NAME \"$PACKAGE_NAME\"" >>confdefs.h
 
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_TARNAME "$PACKAGE_TARNAME"
-_ACEOF
+printf "%s\n" "#define PACKAGE_TARNAME \"$PACKAGE_TARNAME\"" >>confdefs.h
 
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_VERSION "$PACKAGE_VERSION"
-_ACEOF
+printf "%s\n" "#define PACKAGE_VERSION \"$PACKAGE_VERSION\"" >>confdefs.h
 
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_STRING "$PACKAGE_STRING"
-_ACEOF
+printf "%s\n" "#define PACKAGE_STRING \"$PACKAGE_STRING\"" >>confdefs.h
 
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
-_ACEOF
+printf "%s\n" "#define PACKAGE_BUGREPORT \"$PACKAGE_BUGREPORT\"" >>confdefs.h
 
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_URL "$PACKAGE_URL"
-_ACEOF
+printf "%s\n" "#define PACKAGE_URL \"$PACKAGE_URL\"" >>confdefs.h
 
 
 # Let the site file select an alternate cache file if it wants to.
 # Prefer an explicitly selected file to automatically selected ones.
-ac_site_file1=NONE
-ac_site_file2=NONE
 if test -n "$CONFIG_SITE"; then
-  # We do not want a PATH search for config.site.
-  case $CONFIG_SITE in #((
-    -*)  ac_site_file1=./$CONFIG_SITE;;
-    */*) ac_site_file1=$CONFIG_SITE;;
-    *)   ac_site_file1=./$CONFIG_SITE;;
-  esac
+  ac_site_files="$CONFIG_SITE"
 elif test "x$prefix" != xNONE; then
-  ac_site_file1=$prefix/share/config.site
-  ac_site_file2=$prefix/etc/config.site
+  ac_site_files="$prefix/share/config.site $prefix/etc/config.site"
 else
-  ac_site_file1=$ac_default_prefix/share/config.site
-  ac_site_file2=$ac_default_prefix/etc/config.site
+  ac_site_files="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
 fi
-for ac_site_file in "$ac_site_file1" "$ac_site_file2"
+
+for ac_site_file in $ac_site_files
 do
-  test "x$ac_site_file" = xNONE && continue
-  if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5
-$as_echo "$as_me: loading site script $ac_site_file" >&6;}
+  case $ac_site_file in #(
+  */*) :
+     ;; #(
+  *) :
+    ac_site_file=./$ac_site_file ;;
+esac
+  if test -f "$ac_site_file" && test -r "$ac_site_file"; then
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5
+printf "%s\n" "$as_me: loading site script $ac_site_file" >&6;}
     sed 's/^/| /' "$ac_site_file" >&5
     . "$ac_site_file" \
-      || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+      || { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "failed to load site script $ac_site_file
 See \`config.log' for more details" "$LINENO" 5; }
   fi
@@ -2592,19 +2581,651 @@
   # Some versions of bash will fail to source /dev/null (special files
   # actually), so we avoid doing that.  DJGPP emulates it as a regular file.
   if test /dev/null != "$cache_file" && test -f "$cache_file"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5
-$as_echo "$as_me: loading cache $cache_file" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5
+printf "%s\n" "$as_me: loading cache $cache_file" >&6;}
     case $cache_file in
       [\\/]* | ?:[\\/]* ) . "$cache_file";;
       *)                      . "./$cache_file";;
     esac
   fi
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5
-$as_echo "$as_me: creating cache $cache_file" >&6;}
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5
+printf "%s\n" "$as_me: creating cache $cache_file" >&6;}
   >$cache_file
 fi
 
+# Test code for whether the C compiler supports C89 (global declarations)
+ac_c_conftest_c89_globals='
+/* Does the compiler advertise C89 conformance?
+   Do not test the value of __STDC__, because some compilers set it to 0
+   while being otherwise adequately conformant. */
+#if !defined __STDC__
+# error "Compiler does not advertise C89 conformance"
+#endif
+
+#include 
+#include 
+struct stat;
+/* Most of the following tests are stolen from RCS 5.7 src/conf.sh.  */
+struct buf { int x; };
+struct buf * (*rcsopen) (struct buf *, struct stat *, int);
+static char *e (p, i)
+     char **p;
+     int i;
+{
+  return p[i];
+}
+static char *f (char * (*g) (char **, int), char **p, ...)
+{
+  char *s;
+  va_list v;
+  va_start (v,p);
+  s = g (p, va_arg (v,int));
+  va_end (v);
+  return s;
+}
+
+/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default.  It has
+   function prototypes and stuff, but not \xHH hex character constants.
+   These do not provoke an error unfortunately, instead are silently treated
+   as an "x".  The following induces an error, until -std is added to get
+   proper ANSI mode.  Curiously \x00 != x always comes out true, for an
+   array size at least.  It is necessary to write \x00 == 0 to get something
+   that is true only with -std.  */
+int osf4_cc_array ['\''\x00'\'' == 0 ? 1 : -1];
+
+/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
+   inside strings and character constants.  */
+#define FOO(x) '\''x'\''
+int xlc6_cc_array[FOO(a) == '\''x'\'' ? 1 : -1];
+
+int test (int i, double x);
+struct s1 {int (*f) (int a);};
+struct s2 {int (*f) (double a);};
+int pairnames (int, char **, int *(*)(struct buf *, struct stat *, int),
+               int, int);'
+
+# Test code for whether the C compiler supports C89 (body of main).
+ac_c_conftest_c89_main='
+ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
+'
+
+# Test code for whether the C compiler supports C99 (global declarations)
+ac_c_conftest_c99_globals='
+// Does the compiler advertise C99 conformance?
+#if !defined __STDC_VERSION__ || __STDC_VERSION__ < 199901L
+# error "Compiler does not advertise C99 conformance"
+#endif
+
+#include 
+extern int puts (const char *);
+extern int printf (const char *, ...);
+extern int dprintf (int, const char *, ...);
+extern void *malloc (size_t);
+
+// Check varargs macros.  These examples are taken from C99 6.10.3.5.
+// dprintf is used instead of fprintf to avoid needing to declare
+// FILE and stderr.
+#define debug(...) dprintf (2, __VA_ARGS__)
+#define showlist(...) puts (#__VA_ARGS__)
+#define report(test,...) ((test) ? puts (#test) : printf (__VA_ARGS__))
+static void
+test_varargs_macros (void)
+{
+  int x = 1234;
+  int y = 5678;
+  debug ("Flag");
+  debug ("X = %d\n", x);
+  showlist (The first, second, and third items.);
+  report (x>y, "x is %d but y is %d", x, y);
+}
+
+// Check long long types.
+#define BIG64 18446744073709551615ull
+#define BIG32 4294967295ul
+#define BIG_OK (BIG64 / BIG32 == 4294967297ull && BIG64 % BIG32 == 0)
+#if !BIG_OK
+  #error "your preprocessor is broken"
+#endif
+#if BIG_OK
+#else
+  #error "your preprocessor is broken"
+#endif
+static long long int bignum = -9223372036854775807LL;
+static unsigned long long int ubignum = BIG64;
+
+struct incomplete_array
+{
+  int datasize;
+  double data[];
+};
+
+struct named_init {
+  int number;
+  const wchar_t *name;
+  double average;
+};
+
+typedef const char *ccp;
+
+static inline int
+test_restrict (ccp restrict text)
+{
+  // See if C++-style comments work.
+  // Iterate through items via the restricted pointer.
+  // Also check for declarations in for loops.
+  for (unsigned int i = 0; *(text+i) != '\''\0'\''; ++i)
+    continue;
+  return 0;
+}
+
+// Check varargs and va_copy.
+static bool
+test_varargs (const char *format, ...)
+{
+  va_list args;
+  va_start (args, format);
+  va_list args_copy;
+  va_copy (args_copy, args);
+
+  const char *str = "";
+  int number = 0;
+  float fnumber = 0;
+
+  while (*format)
+    {
+      switch (*format++)
+	{
+	case '\''s'\'': // string
+	  str = va_arg (args_copy, const char *);
+	  break;
+	case '\''d'\'': // int
+	  number = va_arg (args_copy, int);
+	  break;
+	case '\''f'\'': // float
+	  fnumber = va_arg (args_copy, double);
+	  break;
+	default:
+	  break;
+	}
+    }
+  va_end (args_copy);
+  va_end (args);
+
+  return *str && number && fnumber;
+}
+'
+
+# Test code for whether the C compiler supports C99 (body of main).
+ac_c_conftest_c99_main='
+  // Check bool.
+  _Bool success = false;
+  success |= (argc != 0);
+
+  // Check restrict.
+  if (test_restrict ("String literal") == 0)
+    success = true;
+  char *restrict newvar = "Another string";
+
+  // Check varargs.
+  success &= test_varargs ("s, d'\'' f .", "string", 65, 34.234);
+  test_varargs_macros ();
+
+  // Check flexible array members.
+  struct incomplete_array *ia =
+    malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10));
+  ia->datasize = 10;
+  for (int i = 0; i < ia->datasize; ++i)
+    ia->data[i] = i * 1.234;
+
+  // Check named initializers.
+  struct named_init ni = {
+    .number = 34,
+    .name = L"Test wide string",
+    .average = 543.34343,
+  };
+
+  ni.number = 58;
+
+  int dynamic_array[ni.number];
+  dynamic_array[0] = argv[0][0];
+  dynamic_array[ni.number - 1] = 543;
+
+  // work around unused variable warnings
+  ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == '\''x'\''
+	 || dynamic_array[ni.number - 1] != 543);
+'
+
+# Test code for whether the C compiler supports C11 (global declarations)
+ac_c_conftest_c11_globals='
+// Does the compiler advertise C11 conformance?
+#if !defined __STDC_VERSION__ || __STDC_VERSION__ < 201112L
+# error "Compiler does not advertise C11 conformance"
+#endif
+
+// Check _Alignas.
+char _Alignas (double) aligned_as_double;
+char _Alignas (0) no_special_alignment;
+extern char aligned_as_int;
+char _Alignas (0) _Alignas (int) aligned_as_int;
+
+// Check _Alignof.
+enum
+{
+  int_alignment = _Alignof (int),
+  int_array_alignment = _Alignof (int[100]),
+  char_alignment = _Alignof (char)
+};
+_Static_assert (0 < -_Alignof (int), "_Alignof is signed");
+
+// Check _Noreturn.
+int _Noreturn does_not_return (void) { for (;;) continue; }
+
+// Check _Static_assert.
+struct test_static_assert
+{
+  int x;
+  _Static_assert (sizeof (int) <= sizeof (long int),
+                  "_Static_assert does not work in struct");
+  long int y;
+};
+
+// Check UTF-8 literals.
+#define u8 syntax error!
+char const utf8_literal[] = u8"happens to be ASCII" "another string";
+
+// Check duplicate typedefs.
+typedef long *long_ptr;
+typedef long int *long_ptr;
+typedef long_ptr long_ptr;
+
+// Anonymous structures and unions -- taken from C11 6.7.2.1 Example 1.
+struct anonymous
+{
+  union {
+    struct { int i; int j; };
+    struct { int k; long int l; } w;
+  };
+  int m;
+} v1;
+'
+
+# Test code for whether the C compiler supports C11 (body of main).
+ac_c_conftest_c11_main='
+  _Static_assert ((offsetof (struct anonymous, i)
+		   == offsetof (struct anonymous, w.k)),
+		  "Anonymous union alignment botch");
+  v1.i = 2;
+  v1.w.k = 5;
+  ok |= v1.i != 5;
+'
+
+# Test code for whether the C compiler supports C11 (complete).
+ac_c_conftest_c11_program="${ac_c_conftest_c89_globals}
+${ac_c_conftest_c99_globals}
+${ac_c_conftest_c11_globals}
+
+int
+main (int argc, char **argv)
+{
+  int ok = 0;
+  ${ac_c_conftest_c89_main}
+  ${ac_c_conftest_c99_main}
+  ${ac_c_conftest_c11_main}
+  return ok;
+}
+"
+
+# Test code for whether the C compiler supports C99 (complete).
+ac_c_conftest_c99_program="${ac_c_conftest_c89_globals}
+${ac_c_conftest_c99_globals}
+
+int
+main (int argc, char **argv)
+{
+  int ok = 0;
+  ${ac_c_conftest_c89_main}
+  ${ac_c_conftest_c99_main}
+  return ok;
+}
+"
+
+# Test code for whether the C compiler supports C89 (complete).
+ac_c_conftest_c89_program="${ac_c_conftest_c89_globals}
+
+int
+main (int argc, char **argv)
+{
+  int ok = 0;
+  ${ac_c_conftest_c89_main}
+  return ok;
+}
+"
+
+# Test code for whether the C++ compiler supports C++98 (global declarations)
+ac_cxx_conftest_cxx98_globals='
+// Does the compiler advertise C++98 conformance?
+#if !defined __cplusplus || __cplusplus < 199711L
+# error "Compiler does not advertise C++98 conformance"
+#endif
+
+// These inclusions are to reject old compilers that
+// lack the unsuffixed header files.
+#include 
+#include 
+
+//  and  are *not* freestanding headers in C++98.
+extern void assert (int);
+namespace std {
+  extern int strcmp (const char *, const char *);
+}
+
+// Namespaces, exceptions, and templates were all added after "C++ 2.0".
+using std::exception;
+using std::strcmp;
+
+namespace {
+
+void test_exception_syntax()
+{
+  try {
+    throw "test";
+  } catch (const char *s) {
+    // Extra parentheses suppress a warning when building autoconf itself,
+    // due to lint rules shared with more typical C programs.
+    assert (!(strcmp) (s, "test"));
+  }
+}
+
+template  struct test_template
+{
+  T const val;
+  explicit test_template(T t) : val(t) {}
+  template  T add(U u) { return static_cast(u) + val; }
+};
+
+} // anonymous namespace
+'
+
+# Test code for whether the C++ compiler supports C++98 (body of main)
+ac_cxx_conftest_cxx98_main='
+  assert (argc);
+  assert (! argv[0]);
+{
+  test_exception_syntax ();
+  test_template tt (2.0);
+  assert (tt.add (4) == 6.0);
+  assert (true && !false);
+}
+'
+
+# Test code for whether the C++ compiler supports C++11 (global declarations)
+ac_cxx_conftest_cxx11_globals='
+// Does the compiler advertise C++ 2011 conformance?
+#if !defined __cplusplus || __cplusplus < 201103L
+# error "Compiler does not advertise C++11 conformance"
+#endif
+
+namespace cxx11test
+{
+  constexpr int get_val() { return 20; }
+
+  struct testinit
+  {
+    int i;
+    double d;
+  };
+
+  class delegate
+  {
+  public:
+    delegate(int n) : n(n) {}
+    delegate(): delegate(2354) {}
+
+    virtual int getval() { return this->n; };
+  protected:
+    int n;
+  };
+
+  class overridden : public delegate
+  {
+  public:
+    overridden(int n): delegate(n) {}
+    virtual int getval() override final { return this->n * 2; }
+  };
+
+  class nocopy
+  {
+  public:
+    nocopy(int i): i(i) {}
+    nocopy() = default;
+    nocopy(const nocopy&) = delete;
+    nocopy & operator=(const nocopy&) = delete;
+  private:
+    int i;
+  };
+
+  // for testing lambda expressions
+  template  Ret eval(Fn f, Ret v)
+  {
+    return f(v);
+  }
+
+  // for testing variadic templates and trailing return types
+  template  auto sum(V first) -> V
+  {
+    return first;
+  }
+  template  auto sum(V first, Args... rest) -> V
+  {
+    return first + sum(rest...);
+  }
+}
+'
+
+# Test code for whether the C++ compiler supports C++11 (body of main)
+ac_cxx_conftest_cxx11_main='
+{
+  // Test auto and decltype
+  auto a1 = 6538;
+  auto a2 = 48573953.4;
+  auto a3 = "String literal";
+
+  int total = 0;
+  for (auto i = a3; *i; ++i) { total += *i; }
+
+  decltype(a2) a4 = 34895.034;
+}
+{
+  // Test constexpr
+  short sa[cxx11test::get_val()] = { 0 };
+}
+{
+  // Test initializer lists
+  cxx11test::testinit il = { 4323, 435234.23544 };
+}
+{
+  // Test range-based for
+  int array[] = {9, 7, 13, 15, 4, 18, 12, 10, 5, 3,
+                 14, 19, 17, 8, 6, 20, 16, 2, 11, 1};
+  for (auto &x : array) { x += 23; }
+}
+{
+  // Test lambda expressions
+  using cxx11test::eval;
+  assert (eval ([](int x) { return x*2; }, 21) == 42);
+  double d = 2.0;
+  assert (eval ([&](double x) { return d += x; }, 3.0) == 5.0);
+  assert (d == 5.0);
+  assert (eval ([=](double x) mutable { return d += x; }, 4.0) == 9.0);
+  assert (d == 5.0);
+}
+{
+  // Test use of variadic templates
+  using cxx11test::sum;
+  auto a = sum(1);
+  auto b = sum(1, 2);
+  auto c = sum(1.0, 2.0, 3.0);
+}
+{
+  // Test constructor delegation
+  cxx11test::delegate d1;
+  cxx11test::delegate d2();
+  cxx11test::delegate d3(45);
+}
+{
+  // Test override and final
+  cxx11test::overridden o1(55464);
+}
+{
+  // Test nullptr
+  char *c = nullptr;
+}
+{
+  // Test template brackets
+  test_template<::test_template> v(test_template(12));
+}
+{
+  // Unicode literals
+  char const *utf8 = u8"UTF-8 string \u2500";
+  char16_t const *utf16 = u"UTF-8 string \u2500";
+  char32_t const *utf32 = U"UTF-32 string \u2500";
+}
+'
+
+# Test code for whether the C compiler supports C++11 (complete).
+ac_cxx_conftest_cxx11_program="${ac_cxx_conftest_cxx98_globals}
+${ac_cxx_conftest_cxx11_globals}
+
+int
+main (int argc, char **argv)
+{
+  int ok = 0;
+  ${ac_cxx_conftest_cxx98_main}
+  ${ac_cxx_conftest_cxx11_main}
+  return ok;
+}
+"
+
+# Test code for whether the C compiler supports C++98 (complete).
+ac_cxx_conftest_cxx98_program="${ac_cxx_conftest_cxx98_globals}
+int
+main (int argc, char **argv)
+{
+  int ok = 0;
+  ${ac_cxx_conftest_cxx98_main}
+  return ok;
+}
+"
+
+as_fn_append ac_header_c_list " stdio.h stdio_h HAVE_STDIO_H"
+as_fn_append ac_header_c_list " stdlib.h stdlib_h HAVE_STDLIB_H"
+as_fn_append ac_header_c_list " string.h string_h HAVE_STRING_H"
+as_fn_append ac_header_c_list " inttypes.h inttypes_h HAVE_INTTYPES_H"
+as_fn_append ac_header_c_list " stdint.h stdint_h HAVE_STDINT_H"
+as_fn_append ac_header_c_list " strings.h strings_h HAVE_STRINGS_H"
+as_fn_append ac_header_c_list " sys/stat.h sys_stat_h HAVE_SYS_STAT_H"
+as_fn_append ac_header_c_list " sys/types.h sys_types_h HAVE_SYS_TYPES_H"
+as_fn_append ac_header_c_list " unistd.h unistd_h HAVE_UNISTD_H"
+as_fn_append ac_header_c_list " sys/time.h sys_time_h HAVE_SYS_TIME_H"
+
+# Auxiliary files required by this configure script.
+ac_aux_files="config.guess config.sub ltmain.sh compile missing install-sh"
+
+# Locations in which to look for auxiliary files.
+ac_aux_dir_candidates="${srcdir}/."
+
+# Search for a directory containing all of the required auxiliary files,
+# $ac_aux_files, from the $PATH-style list $ac_aux_dir_candidates.
+# If we don't find one directory that contains all the files we need,
+# we report the set of missing files from the *first* directory in
+# $ac_aux_dir_candidates and give up.
+ac_missing_aux_files=""
+ac_first_candidate=:
+printf "%s\n" "$as_me:${as_lineno-$LINENO}: looking for aux files: $ac_aux_files" >&5
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+as_found=false
+for as_dir in $ac_aux_dir_candidates
+do
+  IFS=$as_save_IFS
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+  as_found=:
+
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}:  trying $as_dir" >&5
+  ac_aux_dir_found=yes
+  ac_install_sh=
+  for ac_aux in $ac_aux_files
+  do
+    # As a special case, if "install-sh" is required, that requirement
+    # can be satisfied by any of "install-sh", "install.sh", or "shtool",
+    # and $ac_install_sh is set appropriately for whichever one is found.
+    if test x"$ac_aux" = x"install-sh"
+    then
+      if test -f "${as_dir}install-sh"; then
+        printf "%s\n" "$as_me:${as_lineno-$LINENO}:   ${as_dir}install-sh found" >&5
+        ac_install_sh="${as_dir}install-sh -c"
+      elif test -f "${as_dir}install.sh"; then
+        printf "%s\n" "$as_me:${as_lineno-$LINENO}:   ${as_dir}install.sh found" >&5
+        ac_install_sh="${as_dir}install.sh -c"
+      elif test -f "${as_dir}shtool"; then
+        printf "%s\n" "$as_me:${as_lineno-$LINENO}:   ${as_dir}shtool found" >&5
+        ac_install_sh="${as_dir}shtool install -c"
+      else
+        ac_aux_dir_found=no
+        if $ac_first_candidate; then
+          ac_missing_aux_files="${ac_missing_aux_files} install-sh"
+        else
+          break
+        fi
+      fi
+    else
+      if test -f "${as_dir}${ac_aux}"; then
+        printf "%s\n" "$as_me:${as_lineno-$LINENO}:   ${as_dir}${ac_aux} found" >&5
+      else
+        ac_aux_dir_found=no
+        if $ac_first_candidate; then
+          ac_missing_aux_files="${ac_missing_aux_files} ${ac_aux}"
+        else
+          break
+        fi
+      fi
+    fi
+  done
+  if test "$ac_aux_dir_found" = yes; then
+    ac_aux_dir="$as_dir"
+    break
+  fi
+  ac_first_candidate=false
+
+  as_found=false
+done
+IFS=$as_save_IFS
+if $as_found
+then :
+
+else $as_nop
+  as_fn_error $? "cannot find required auxiliary files:$ac_missing_aux_files" "$LINENO" 5
+fi
+
+
+# These three variables are undocumented and unsupported,
+# and are intended to be withdrawn in a future Autoconf release.
+# They can cause serious problems if a builder's source tree is in a directory
+# whose full name contains unusual characters.
+if test -f "${ac_aux_dir}config.guess"; then
+  ac_config_guess="$SHELL ${ac_aux_dir}config.guess"
+fi
+if test -f "${ac_aux_dir}config.sub"; then
+  ac_config_sub="$SHELL ${ac_aux_dir}config.sub"
+fi
+if test -f "$ac_aux_dir/configure"; then
+  ac_configure="$SHELL ${ac_aux_dir}configure"
+fi
+
 # Check that the precious variables saved in the cache have kept the same
 # value.
 ac_cache_corrupted=false
@@ -2615,12 +3236,12 @@
   eval ac_new_val=\$ac_env_${ac_var}_value
   case $ac_old_set,$ac_new_set in
     set,)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
-$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
+printf "%s\n" "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
       ac_cache_corrupted=: ;;
     ,set)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5
-$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5
+printf "%s\n" "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
       ac_cache_corrupted=: ;;
     ,);;
     *)
@@ -2629,24 +3250,24 @@
 	ac_old_val_w=`echo x $ac_old_val`
 	ac_new_val_w=`echo x $ac_new_val`
 	if test "$ac_old_val_w" != "$ac_new_val_w"; then
-	  { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5
-$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
+	  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5
+printf "%s\n" "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
 	  ac_cache_corrupted=:
 	else
-	  { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
-$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;}
+	  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
+printf "%s\n" "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;}
 	  eval $ac_var=\$ac_old_val
 	fi
-	{ $as_echo "$as_me:${as_lineno-$LINENO}:   former value:  \`$ac_old_val'" >&5
-$as_echo "$as_me:   former value:  \`$ac_old_val'" >&2;}
-	{ $as_echo "$as_me:${as_lineno-$LINENO}:   current value: \`$ac_new_val'" >&5
-$as_echo "$as_me:   current value: \`$ac_new_val'" >&2;}
+	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}:   former value:  \`$ac_old_val'" >&5
+printf "%s\n" "$as_me:   former value:  \`$ac_old_val'" >&2;}
+	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}:   current value: \`$ac_new_val'" >&5
+printf "%s\n" "$as_me:   current value: \`$ac_new_val'" >&2;}
       fi;;
   esac
   # Pass precious variables to config.status.
   if test "$ac_new_set" = set; then
     case $ac_new_val in
-    *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
+    *\'*) ac_arg=$ac_var=`printf "%s\n" "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
     *) ac_arg=$ac_var=$ac_new_val ;;
     esac
     case " $ac_configure_args " in
@@ -2656,11 +3277,12 @@
   fi
 done
 if $ac_cache_corrupted; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-  { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5
-$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;}
-  as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5
+printf "%s\n" "$as_me: error: changes in the environment can compromise the build" >&2;}
+  as_fn_error $? "run \`${MAKE-make} distclean' and/or \`rm $cache_file'
+	    and start over" "$LINENO" 5
 fi
 ## -------------------- ##
 ## Main body of script. ##
@@ -2676,6 +3298,7 @@
 
 
 
+
 # support runstatedir
 
   if test "x$runstatedir" = x; then
@@ -2684,38 +3307,11 @@
  fi
 
 
-am__api_version='1.15'
-
-ac_aux_dir=
-for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
-  if test -f "$ac_dir/install-sh"; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/install-sh -c"
-    break
-  elif test -f "$ac_dir/install.sh"; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/install.sh -c"
-    break
-  elif test -f "$ac_dir/shtool"; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/shtool install -c"
-    break
-  fi
-done
-if test -z "$ac_aux_dir"; then
-  as_fn_error $? "cannot find install-sh, install.sh, or shtool in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" "$LINENO" 5
-fi
+am__api_version='1.16'
 
-# These three variables are undocumented and unsupported,
-# and are intended to be withdrawn in a future Autoconf release.
-# They can cause serious problems if a builder's source tree is in a directory
-# whose full name contains unusual characters.
-ac_config_guess="$SHELL $ac_aux_dir/config.guess"  # Please don't use this var.
-ac_config_sub="$SHELL $ac_aux_dir/config.sub"  # Please don't use this var.
-ac_configure="$SHELL $ac_aux_dir/configure"  # Please don't use this var.
 
 
-# Find a good install program.  We prefer a C program (faster),
+  # Find a good install program.  We prefer a C program (faster),
 # so one script is as good as another.  But avoid the broken or
 # incompatible versions:
 # SysV /etc/install, /usr/sbin/install
@@ -2729,20 +3325,25 @@
 # OS/2's system install, which has a completely different semantic
 # ./install, which can be erroneously created by make from ./install.sh.
 # Reject install programs that cannot install multiple files.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5
-$as_echo_n "checking for a BSD-compatible install... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5
+printf %s "checking for a BSD-compatible install... " >&6; }
 if test -z "$INSTALL"; then
-if ${ac_cv_path_install+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+if test ${ac_cv_path_install+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    # Account for people who put trailing slashes in PATH elements.
-case $as_dir/ in #((
-  ./ | .// | /[cC]/* | \
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    # Account for fact that we put trailing slashes in our PATH walk.
+case $as_dir in #((
+  ./ | /[cC]/* | \
   /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
   ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \
   /usr/ucb/* ) ;;
@@ -2752,13 +3353,13 @@
     # by default.
     for ac_prog in ginstall scoinst install; do
       for ac_exec_ext in '' $ac_executable_extensions; do
-	if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
+	if as_fn_executable_p "$as_dir$ac_prog$ac_exec_ext"; then
 	  if test $ac_prog = install &&
-	    grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
+	    grep dspmsg "$as_dir$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
 	    # AIX install.  It has an incompatible calling convention.
 	    :
 	  elif test $ac_prog = install &&
-	    grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
+	    grep pwplus "$as_dir$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
 	    # program-specific install script used by HP pwplus--don't use.
 	    :
 	  else
@@ -2766,12 +3367,12 @@
 	    echo one > conftest.one
 	    echo two > conftest.two
 	    mkdir conftest.dir
-	    if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" &&
+	    if "$as_dir$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir/" &&
 	      test -s conftest.one && test -s conftest.two &&
 	      test -s conftest.dir/conftest.one &&
 	      test -s conftest.dir/conftest.two
 	    then
-	      ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
+	      ac_cv_path_install="$as_dir$ac_prog$ac_exec_ext -c"
 	      break 3
 	    fi
 	  fi
@@ -2787,7 +3388,7 @@
 rm -rf conftest.one conftest.two conftest.dir
 
 fi
-  if test "${ac_cv_path_install+set}" = set; then
+  if test ${ac_cv_path_install+y}; then
     INSTALL=$ac_cv_path_install
   else
     # As a last resort, use the slow shell script.  Don't cache a
@@ -2797,8 +3398,8 @@
     INSTALL=$ac_install_sh
   fi
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5
-$as_echo "$INSTALL" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5
+printf "%s\n" "$INSTALL" >&6; }
 
 # Use test -z because SunOS4 sh mishandles braces in ${var-val}.
 # It thinks the first close brace ends the variable substitution.
@@ -2808,8 +3409,8 @@
 
 test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5
-$as_echo_n "checking whether build environment is sane... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5
+printf %s "checking whether build environment is sane... " >&6; }
 # Reject unsafe characters in $srcdir or the absolute working directory
 # name.  Accept space and tab only in the latter.
 am_lf='
@@ -2863,8 +3464,8 @@
    as_fn_error $? "newly created file is older than distributed files!
 Check your system clock" "$LINENO" 5
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 # If we didn't sleep, we still need to ensure time stamps of config.status and
 # generated files are strictly newer.
 am_sleep_pid=
@@ -2883,26 +3484,23 @@
 # Double any \ or $.
 # By default was `s,x,x', remove it if useless.
 ac_script='s/[\\$]/&&/g;s/;s,x,x,$//'
-program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"`
+program_transform_name=`printf "%s\n" "$program_transform_name" | sed "$ac_script"`
+
 
 # Expand $ac_aux_dir to an absolute path.
 am_aux_dir=`cd "$ac_aux_dir" && pwd`
 
-if test x"${MISSING+set}" != xset; then
-  case $am_aux_dir in
-  *\ * | *\	*)
-    MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
-  *)
-    MISSING="\${SHELL} $am_aux_dir/missing" ;;
-  esac
+
+  if test x"${MISSING+set}" != xset; then
+  MISSING="\${SHELL} '$am_aux_dir/missing'"
 fi
 # Use eval to expand $SHELL
 if eval "$MISSING --is-lightweight"; then
   am_missing_run="$MISSING "
 else
   am_missing_run=
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: 'missing' script is too old or missing" >&5
-$as_echo "$as_me: WARNING: 'missing' script is too old or missing" >&2;}
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: 'missing' script is too old or missing" >&5
+printf "%s\n" "$as_me: WARNING: 'missing' script is too old or missing" >&2;}
 fi
 
 if test x"${install_sh+set}" != xset; then
@@ -2922,11 +3520,12 @@
   if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
 set dummy ${ac_tool_prefix}strip; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_STRIP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_STRIP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$STRIP"; then
   ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
 else
@@ -2934,11 +3533,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_STRIP="${ac_tool_prefix}strip"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -2949,11 +3552,11 @@
 fi
 STRIP=$ac_cv_prog_STRIP
 if test -n "$STRIP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
-$as_echo "$STRIP" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
+printf "%s\n" "$STRIP" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -2962,11 +3565,12 @@
   ac_ct_STRIP=$STRIP
   # Extract the first word of "strip", so it can be a program name with args.
 set dummy strip; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_STRIP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_STRIP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_STRIP"; then
   ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
 else
@@ -2974,11 +3578,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_STRIP="strip"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -2989,11 +3597,11 @@
 fi
 ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
 if test -n "$ac_ct_STRIP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
-$as_echo "$ac_ct_STRIP" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
+printf "%s\n" "$ac_ct_STRIP" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_STRIP" = x; then
@@ -3001,8 +3609,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     STRIP=$ac_ct_STRIP
@@ -3014,25 +3622,31 @@
 fi
 INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5
-$as_echo_n "checking for a thread-safe mkdir -p... " >&6; }
+
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a race-free mkdir -p" >&5
+printf %s "checking for a race-free mkdir -p... " >&6; }
 if test -z "$MKDIR_P"; then
-  if ${ac_cv_path_mkdir+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  if test ${ac_cv_path_mkdir+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_prog in mkdir gmkdir; do
 	 for ac_exec_ext in '' $ac_executable_extensions; do
-	   as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext" || continue
-	   case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #(
-	     'mkdir (GNU coreutils) '* | \
-	     'mkdir (coreutils) '* | \
+	   as_fn_executable_p "$as_dir$ac_prog$ac_exec_ext" || continue
+	   case `"$as_dir$ac_prog$ac_exec_ext" --version 2>&1` in #(
+	     'mkdir ('*'coreutils) '* | \
+	     'BusyBox '* | \
 	     'mkdir (fileutils) '4.1*)
-	       ac_cv_path_mkdir=$as_dir/$ac_prog$ac_exec_ext
+	       ac_cv_path_mkdir=$as_dir$ac_prog$ac_exec_ext
 	       break 3;;
 	   esac
 	 done
@@ -3043,7 +3657,7 @@
 fi
 
   test -d ./--version && rmdir ./--version
-  if test "${ac_cv_path_mkdir+set}" = set; then
+  if test ${ac_cv_path_mkdir+y}; then
     MKDIR_P="$ac_cv_path_mkdir -p"
   else
     # As a last resort, use the slow shell script.  Don't cache a
@@ -3053,18 +3667,19 @@
     MKDIR_P="$ac_install_sh -d"
   fi
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5
-$as_echo "$MKDIR_P" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5
+printf "%s\n" "$MKDIR_P" >&6; }
 
 for ac_prog in gawk mawk nawk awk
 do
   # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_AWK+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_AWK+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$AWK"; then
   ac_cv_prog_AWK="$AWK" # Let the user override the test.
 else
@@ -3072,11 +3687,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_AWK="$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -3087,24 +3706,25 @@
 fi
 AWK=$ac_cv_prog_AWK
 if test -n "$AWK"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5
-$as_echo "$AWK" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5
+printf "%s\n" "$AWK" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
   test -n "$AWK" && break
 done
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
-$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
+printf %s "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
 set x ${MAKE-make}
-ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
-if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+ac_make=`printf "%s\n" "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
+if eval test \${ac_cv_prog_make_${ac_make}_set+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat >conftest.make <<\_ACEOF
 SHELL = /bin/sh
 all:
@@ -3120,12 +3740,12 @@
 rm -f conftest.make
 fi
 if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
   SET_MAKE=
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
   SET_MAKE="MAKE=${MAKE-make}"
 fi
 
@@ -3139,7 +3759,8 @@
 rmdir .tst 2>/dev/null
 
 # Check whether --enable-silent-rules was given.
-if test "${enable_silent_rules+set}" = set; then :
+if test ${enable_silent_rules+y}
+then :
   enableval=$enable_silent_rules;
 fi
 
@@ -3149,12 +3770,13 @@
     *) AM_DEFAULT_VERBOSITY=1;;
 esac
 am_make=${MAKE-make}
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5
-$as_echo_n "checking whether $am_make supports nested variables... " >&6; }
-if ${am_cv_make_support_nested_variables+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if $as_echo 'TRUE=$(BAR$(V))
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5
+printf %s "checking whether $am_make supports nested variables... " >&6; }
+if test ${am_cv_make_support_nested_variables+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  if printf "%s\n" 'TRUE=$(BAR$(V))
 BAR0=false
 BAR1=true
 V=1
@@ -3166,8 +3788,8 @@
   am_cv_make_support_nested_variables=no
 fi
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5
-$as_echo "$am_cv_make_support_nested_variables" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5
+printf "%s\n" "$am_cv_make_support_nested_variables" >&6; }
 if test $am_cv_make_support_nested_variables = yes; then
     AM_V='$(V)'
   AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
@@ -3199,17 +3821,13 @@
 
 # Define the identity of the package.
  PACKAGE='lirc'
- VERSION='0.10.1'
+ VERSION='0.10.2'
 
 
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE "$PACKAGE"
-_ACEOF
+printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h
 
 
-cat >>confdefs.h <<_ACEOF
-#define VERSION "$VERSION"
-_ACEOF
+printf "%s\n" "#define VERSION \"$VERSION\"" >>confdefs.h
 
 # Some tools Automake needs.
 
@@ -3229,8 +3847,8 @@
 
 # For better backward compatibility.  To be removed once Automake 1.9.x
 # dies out for good.  For more background, see:
-# 
-# 
+# 
+# 
 mkdir_p='$(MKDIR_P)'
 
 # We need awk for the "check" target (and possibly the TAP driver).  The
@@ -3249,6 +3867,20 @@
 
 
 
+# Variables for tags utilities; see am/tags.am
+if test -z "$CTAGS"; then
+  CTAGS=ctags
+fi
+
+if test -z "$ETAGS"; then
+  ETAGS=etags
+fi
+
+if test -z "$CSCOPE"; then
+  CSCOPE=cscope
+fi
+
+
 
 # POSIX will say in a future version that running "rm -f" with no argument
 # is OK; and we want to be able to make that assumption in our Makefile
@@ -3281,7 +3913,7 @@
 Aborting the configuration process, to ensure you take notice of the issue.
 
 You can download and install GNU coreutils to get an 'rm' implementation
-that behaves properly: .
+that behaves properly: .
 
 If you want to complete the configuration process using your problematic
 'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
@@ -3305,6 +3937,15 @@
 fi
 
 
+
+
+
+
+
+
+
+
+
 ac_ext=c
 ac_cpp='$CPP $CPPFLAGS'
 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@@ -3313,11 +3954,12 @@
 if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
 set dummy ${ac_tool_prefix}gcc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$CC"; then
   ac_cv_prog_CC="$CC" # Let the user override the test.
 else
@@ -3325,11 +3967,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_CC="${ac_tool_prefix}gcc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -3340,11 +3986,11 @@
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+printf "%s\n" "$CC" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -3353,11 +3999,12 @@
   ac_ct_CC=$CC
   # Extract the first word of "gcc", so it can be a program name with args.
 set dummy gcc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_CC"; then
   ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
 else
@@ -3365,11 +4012,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_CC="gcc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -3380,11 +4031,11 @@
 fi
 ac_ct_CC=$ac_cv_prog_ac_ct_CC
 if test -n "$ac_ct_CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
-$as_echo "$ac_ct_CC" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
+printf "%s\n" "$ac_ct_CC" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_CC" = x; then
@@ -3392,8 +4043,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     CC=$ac_ct_CC
@@ -3406,11 +4057,12 @@
           if test -n "$ac_tool_prefix"; then
     # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
 set dummy ${ac_tool_prefix}cc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$CC"; then
   ac_cv_prog_CC="$CC" # Let the user override the test.
 else
@@ -3418,11 +4070,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_CC="${ac_tool_prefix}cc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -3433,11 +4089,11 @@
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+printf "%s\n" "$CC" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -3446,11 +4102,12 @@
 if test -z "$CC"; then
   # Extract the first word of "cc", so it can be a program name with args.
 set dummy cc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$CC"; then
   ac_cv_prog_CC="$CC" # Let the user override the test.
 else
@@ -3459,15 +4116,19 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    if test "$as_dir$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
        ac_prog_rejected=yes
        continue
      fi
     ac_cv_prog_CC="cc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -3483,18 +4144,18 @@
     # However, it has the same basename, so the bogon will be chosen
     # first if we set CC to just the basename; use the full file name.
     shift
-    ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
+    ac_cv_prog_CC="$as_dir$ac_word${1+' '}$@"
   fi
 fi
 fi
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+printf "%s\n" "$CC" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -3505,11 +4166,12 @@
   do
     # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
 set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$CC"; then
   ac_cv_prog_CC="$CC" # Let the user override the test.
 else
@@ -3517,11 +4179,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -3532,11 +4198,11 @@
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+printf "%s\n" "$CC" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -3549,11 +4215,12 @@
 do
   # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_CC"; then
   ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
 else
@@ -3561,11 +4228,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_CC="$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -3576,11 +4247,11 @@
 fi
 ac_ct_CC=$ac_cv_prog_ac_ct_CC
 if test -n "$ac_ct_CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
-$as_echo "$ac_ct_CC" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
+printf "%s\n" "$ac_ct_CC" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -3592,34 +4263,138 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+    CC=$ac_ct_CC
+  fi
+fi
+
+fi
+if test -z "$CC"; then
+  if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}clang", so it can be a program name with args.
+set dummy ${ac_tool_prefix}clang; ac_word=$2
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  if test -n "$CC"; then
+  ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_prog_CC="${ac_tool_prefix}clang"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+printf "%s\n" "$CC" >&6; }
+else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_CC"; then
+  ac_ct_CC=$CC
+  # Extract the first word of "clang", so it can be a program name with args.
+set dummy clang; ac_word=$2
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  if test -n "$ac_ct_CC"; then
+  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_CC="clang"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
+printf "%s\n" "$ac_ct_CC" >&6; }
+else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+fi
+
+  if test "x$ac_ct_CC" = x; then
+    CC=""
+  else
+    case $cross_compiling:$ac_tool_warned in
+yes:)
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     CC=$ac_ct_CC
   fi
+else
+  CC="$ac_cv_prog_CC"
 fi
 
 fi
 
 
-test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+test -z "$CC" && { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "no acceptable C compiler found in \$PATH
 See \`config.log' for more details" "$LINENO" 5; }
 
 # Provide some information about the compiler.
-$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
+printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
 set X $ac_compile
 ac_compiler=$2
-for ac_option in --version -v -V -qversion; do
+for ac_option in --version -v -V -qversion -version; do
   { { ac_try="$ac_compiler $ac_option >&5"
 case "(($ac_try" in
   *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_compiler $ac_option >&5") 2>conftest.err
   ac_status=$?
   if test -s conftest.err; then
@@ -3629,7 +4404,7 @@
     cat conftest.er1 >&5
   fi
   rm -f conftest.er1 conftest.err
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }
 done
 
@@ -3637,7 +4412,7 @@
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
@@ -3649,9 +4424,9 @@
 # Try to create an executable without -o first, disregard a.out.
 # It will help us diagnose broken compilers, and finding out an intuition
 # of exeext.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5
-$as_echo_n "checking whether the C compiler works... " >&6; }
-ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5
+printf %s "checking whether the C compiler works... " >&6; }
+ac_link_default=`printf "%s\n" "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
 
 # The possible output files:
 ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*"
@@ -3672,11 +4447,12 @@
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_link_default") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then :
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }
+then :
   # Autoconf-2.13 could set the ac_cv_exeext variable to `no'.
 # So ignore a value of `no', otherwise this would lead to `EXEEXT = no'
 # in a Makefile.  We should not override ac_cv_exeext if it was cached,
@@ -3693,7 +4469,7 @@
 	# certainly right.
 	break;;
     *.* )
-	if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no;
+	if test ${ac_cv_exeext+y} && test "$ac_cv_exeext" != no;
 	then :; else
 	   ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
 	fi
@@ -3709,44 +4485,46 @@
 done
 test "$ac_cv_exeext" = no && ac_cv_exeext=
 
-else
+else $as_nop
   ac_file=''
 fi
-if test -z "$ac_file"; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-$as_echo "$as_me: failed program was:" >&5
+if test -z "$ac_file"
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+printf "%s\n" "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
 
-{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+{ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error 77 "C compiler cannot create executables
 See \`config.log' for more details" "$LINENO" 5; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5
-$as_echo_n "checking for C compiler default output file name... " >&6; }
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5
-$as_echo "$ac_file" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5
+printf %s "checking for C compiler default output file name... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5
+printf "%s\n" "$ac_file" >&6; }
 ac_exeext=$ac_cv_exeext
 
 rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out
 ac_clean_files=$ac_clean_files_save
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5
-$as_echo_n "checking for suffix of executables... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5
+printf %s "checking for suffix of executables... " >&6; }
 if { { ac_try="$ac_link"
 case "(($ac_try" in
   *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_link") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then :
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }
+then :
   # If both `conftest.exe' and `conftest' are `present' (well, observable)
 # catch `conftest.exe'.  For instance with Cygwin, `ls conftest' will
 # work properly (i.e., refer to `conftest.exe'), while it won't with
@@ -3760,15 +4538,15 @@
     * ) break;;
   esac
 done
-else
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+else $as_nop
+  { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "cannot compute suffix of executables: cannot compile and link
 See \`config.log' for more details" "$LINENO" 5; }
 fi
 rm -f conftest conftest$ac_cv_exeext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5
-$as_echo "$ac_cv_exeext" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5
+printf "%s\n" "$ac_cv_exeext" >&6; }
 
 rm -f conftest.$ac_ext
 EXEEXT=$ac_cv_exeext
@@ -3777,7 +4555,7 @@
 /* end confdefs.h.  */
 #include 
 int
-main ()
+main (void)
 {
 FILE *f = fopen ("conftest.out", "w");
  return ferror (f) || fclose (f) != 0;
@@ -3789,8 +4567,8 @@
 ac_clean_files="$ac_clean_files conftest.out"
 # Check that the compiler produces executables we can run.  If not, either
 # the compiler is broken, or we cross compile.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5
-$as_echo_n "checking whether we are cross compiling... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5
+printf %s "checking whether we are cross compiling... " >&6; }
 if test "$cross_compiling" != yes; then
   { { ac_try="$ac_link"
 case "(($ac_try" in
@@ -3798,10 +4576,10 @@
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_link") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }
   if { ac_try='./conftest$ac_cv_exeext'
   { { case "(($ac_try" in
@@ -3809,39 +4587,40 @@
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_try") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; }; then
     cross_compiling=no
   else
     if test "$cross_compiling" = maybe; then
 	cross_compiling=yes
     else
-	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run C compiled programs.
+	{ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error 77 "cannot run C compiled programs.
 If you meant to cross compile, use \`--host'.
 See \`config.log' for more details" "$LINENO" 5; }
     fi
   fi
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5
-$as_echo "$cross_compiling" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5
+printf "%s\n" "$cross_compiling" >&6; }
 
 rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out
 ac_clean_files=$ac_clean_files_save
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5
-$as_echo_n "checking for suffix of object files... " >&6; }
-if ${ac_cv_objext+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5
+printf %s "checking for suffix of object files... " >&6; }
+if test ${ac_cv_objext+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
@@ -3855,11 +4634,12 @@
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_compile") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then :
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }
+then :
   for ac_file in conftest.o conftest.obj conftest.*; do
   test -f "$ac_file" || continue;
   case $ac_file in
@@ -3868,31 +4648,32 @@
        break;;
   esac
 done
-else
-  $as_echo "$as_me: failed program was:" >&5
+else $as_nop
+  printf "%s\n" "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
 
-{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+{ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "cannot compute suffix of object files: cannot compile
 See \`config.log' for more details" "$LINENO" 5; }
 fi
 rm -f conftest.$ac_cv_objext conftest.$ac_ext
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5
-$as_echo "$ac_cv_objext" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5
+printf "%s\n" "$ac_cv_objext" >&6; }
 OBJEXT=$ac_cv_objext
 ac_objext=$OBJEXT
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5
-$as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
-if ${ac_cv_c_compiler_gnu+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports GNU C" >&5
+printf %s "checking whether the compiler supports GNU C... " >&6; }
+if test ${ac_cv_c_compiler_gnu+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 #ifndef __GNUC__
        choke me
@@ -3902,29 +4683,33 @@
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_compiler_gnu=yes
-else
+else $as_nop
   ac_compiler_gnu=no
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 ac_cv_c_compiler_gnu=$ac_compiler_gnu
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
-$as_echo "$ac_cv_c_compiler_gnu" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
+printf "%s\n" "$ac_cv_c_compiler_gnu" >&6; }
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
 if test $ac_compiler_gnu = yes; then
   GCC=yes
 else
   GCC=
 fi
-ac_test_CFLAGS=${CFLAGS+set}
+ac_test_CFLAGS=${CFLAGS+y}
 ac_save_CFLAGS=$CFLAGS
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
-$as_echo_n "checking whether $CC accepts -g... " >&6; }
-if ${ac_cv_prog_cc_g+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
+printf %s "checking whether $CC accepts -g... " >&6; }
+if test ${ac_cv_prog_cc_g+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_save_c_werror_flag=$ac_c_werror_flag
    ac_c_werror_flag=yes
    ac_cv_prog_cc_g=no
@@ -3933,57 +4718,60 @@
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_prog_cc_g=yes
-else
+else $as_nop
   CFLAGS=""
       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-else
+else $as_nop
   ac_c_werror_flag=$ac_save_c_werror_flag
 	 CFLAGS="-g"
 	 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_prog_cc_g=yes
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
    ac_c_werror_flag=$ac_save_c_werror_flag
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
-$as_echo "$ac_cv_prog_cc_g" >&6; }
-if test "$ac_test_CFLAGS" = set; then
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
+printf "%s\n" "$ac_cv_prog_cc_g" >&6; }
+if test $ac_test_CFLAGS; then
   CFLAGS=$ac_save_CFLAGS
 elif test $ac_cv_prog_cc_g = yes; then
   if test "$GCC" = yes; then
@@ -3998,94 +4786,144 @@
     CFLAGS=
   fi
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5
-$as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
-if ${ac_cv_prog_cc_c89+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_cv_prog_cc_c89=no
+ac_prog_cc_stdc=no
+if test x$ac_prog_cc_stdc = xno
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C11 features" >&5
+printf %s "checking for $CC option to enable C11 features... " >&6; }
+if test ${ac_cv_prog_cc_c11+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  ac_cv_prog_cc_c11=no
 ac_save_CC=$CC
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-#include 
-#include 
-struct stat;
-/* Most of the following tests are stolen from RCS 5.7's src/conf.sh.  */
-struct buf { int x; };
-FILE * (*rcsopen) (struct buf *, struct stat *, int);
-static char *e (p, i)
-     char **p;
-     int i;
-{
-  return p[i];
-}
-static char *f (char * (*g) (char **, int), char **p, ...)
-{
-  char *s;
-  va_list v;
-  va_start (v,p);
-  s = g (p, va_arg (v,int));
-  va_end (v);
-  return s;
-}
-
-/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default.  It has
-   function prototypes and stuff, but not '\xHH' hex character constants.
-   These don't provoke an error unfortunately, instead are silently treated
-   as 'x'.  The following induces an error, until -std is added to get
-   proper ANSI mode.  Curiously '\x00'!='x' always comes out true, for an
-   array size at least.  It's necessary to write '\x00'==0 to get something
-   that's true only with -std.  */
-int osf4_cc_array ['\x00' == 0 ? 1 : -1];
+$ac_c_conftest_c11_program
+_ACEOF
+for ac_arg in '' -std=gnu11
+do
+  CC="$ac_save_CC $ac_arg"
+  if ac_fn_c_try_compile "$LINENO"
+then :
+  ac_cv_prog_cc_c11=$ac_arg
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam
+  test "x$ac_cv_prog_cc_c11" != "xno" && break
+done
+rm -f conftest.$ac_ext
+CC=$ac_save_CC
+fi
 
-/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
-   inside strings and character constants.  */
-#define FOO(x) 'x'
-int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
+if test "x$ac_cv_prog_cc_c11" = xno
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
+printf "%s\n" "unsupported" >&6; }
+else $as_nop
+  if test "x$ac_cv_prog_cc_c11" = x
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
+printf "%s\n" "none needed" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c11" >&5
+printf "%s\n" "$ac_cv_prog_cc_c11" >&6; }
+     CC="$CC $ac_cv_prog_cc_c11"
+fi
+  ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c11
+  ac_prog_cc_stdc=c11
+fi
+fi
+if test x$ac_prog_cc_stdc = xno
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C99 features" >&5
+printf %s "checking for $CC option to enable C99 features... " >&6; }
+if test ${ac_cv_prog_cc_c99+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  ac_cv_prog_cc_c99=no
+ac_save_CC=$CC
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$ac_c_conftest_c99_program
+_ACEOF
+for ac_arg in '' -std=gnu99 -std=c99 -c99 -qlanglvl=extc1x -qlanglvl=extc99 -AC99 -D_STDC_C99=
+do
+  CC="$ac_save_CC $ac_arg"
+  if ac_fn_c_try_compile "$LINENO"
+then :
+  ac_cv_prog_cc_c99=$ac_arg
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam
+  test "x$ac_cv_prog_cc_c99" != "xno" && break
+done
+rm -f conftest.$ac_ext
+CC=$ac_save_CC
+fi
 
-int test (int i, double x);
-struct s1 {int (*f) (int a);};
-struct s2 {int (*f) (double a);};
-int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
-int argc;
-char **argv;
-int
-main ()
-{
-return f (e, argv, 0) != argv[0]  ||  f (e, argv, 1) != argv[1];
-  ;
-  return 0;
-}
+if test "x$ac_cv_prog_cc_c99" = xno
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
+printf "%s\n" "unsupported" >&6; }
+else $as_nop
+  if test "x$ac_cv_prog_cc_c99" = x
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
+printf "%s\n" "none needed" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c99" >&5
+printf "%s\n" "$ac_cv_prog_cc_c99" >&6; }
+     CC="$CC $ac_cv_prog_cc_c99"
+fi
+  ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c99
+  ac_prog_cc_stdc=c99
+fi
+fi
+if test x$ac_prog_cc_stdc = xno
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C89 features" >&5
+printf %s "checking for $CC option to enable C89 features... " >&6; }
+if test ${ac_cv_prog_cc_c89+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  ac_cv_prog_cc_c89=no
+ac_save_CC=$CC
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$ac_c_conftest_c89_program
 _ACEOF
-for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
-	-Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
+for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
 do
   CC="$ac_save_CC $ac_arg"
-  if ac_fn_c_try_compile "$LINENO"; then :
+  if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_prog_cc_c89=$ac_arg
 fi
-rm -f core conftest.err conftest.$ac_objext
+rm -f core conftest.err conftest.$ac_objext conftest.beam
   test "x$ac_cv_prog_cc_c89" != "xno" && break
 done
 rm -f conftest.$ac_ext
 CC=$ac_save_CC
-
 fi
-# AC_CACHE_VAL
-case "x$ac_cv_prog_cc_c89" in
-  x)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
-$as_echo "none needed" >&6; } ;;
-  xno)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
-$as_echo "unsupported" >&6; } ;;
-  *)
-    CC="$CC $ac_cv_prog_cc_c89"
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
-$as_echo "$ac_cv_prog_cc_c89" >&6; } ;;
-esac
-if test "x$ac_cv_prog_cc_c89" != xno; then :
 
+if test "x$ac_cv_prog_cc_c89" = xno
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
+printf "%s\n" "unsupported" >&6; }
+else $as_nop
+  if test "x$ac_cv_prog_cc_c89" = x
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
+printf "%s\n" "none needed" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
+printf "%s\n" "$ac_cv_prog_cc_c89" >&6; }
+     CC="$CC $ac_cv_prog_cc_c89"
+fi
+  ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c89
+  ac_prog_cc_stdc=c89
+fi
 fi
 
 ac_ext=c
@@ -4094,21 +4932,23 @@
 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
 ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
-ac_ext=c
+
+  ac_ext=c
 ac_cpp='$CPP $CPPFLAGS'
 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
 ac_compiler_gnu=$ac_cv_c_compiler_gnu
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5
-$as_echo_n "checking whether $CC understands -c and -o together... " >&6; }
-if ${am_cv_prog_cc_c_o+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5
+printf %s "checking whether $CC understands -c and -o together... " >&6; }
+if test ${am_cv_prog_cc_c_o+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
@@ -4136,8 +4976,8 @@
   rm -f core conftest*
   unset am_i
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5
-$as_echo "$am_cv_prog_cc_c_o" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5
+printf "%s\n" "$am_cv_prog_cc_c_o" >&6; }
 if test "$am_cv_prog_cc_c_o" != yes; then
    # Losing compiler, so override with the script.
    # FIXME: It is wrong to rewrite CC.
@@ -4156,48 +4996,49 @@
 
 ac_config_commands="$ac_config_commands depfiles"
 
-
-am_make=${MAKE-make}
-cat > confinc << 'END'
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} supports the include directive" >&5
+printf %s "checking whether ${MAKE-make} supports the include directive... " >&6; }
+cat > confinc.mk << 'END'
 am__doit:
-	@echo this is the am__doit target
+	@echo this is the am__doit target >confinc.out
 .PHONY: am__doit
 END
-# If we don't find an include directive, just comment out the code.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5
-$as_echo_n "checking for style of include used by $am_make... " >&6; }
 am__include="#"
 am__quote=
-_am_result=none
-# First try GNU make style include.
-echo "include confinc" > confmf
-# Ignore all kinds of additional output from 'make'.
-case `$am_make -s -f confmf 2> /dev/null` in #(
-*the\ am__doit\ target*)
-  am__include=include
-  am__quote=
-  _am_result=GNU
-  ;;
-esac
-# Now try BSD make style include.
-if test "$am__include" = "#"; then
-   echo '.include "confinc"' > confmf
-   case `$am_make -s -f confmf 2> /dev/null` in #(
-   *the\ am__doit\ target*)
-     am__include=.include
-     am__quote="\""
-     _am_result=BSD
+# BSD make does it like this.
+echo '.include "confinc.mk" # ignored' > confmf.BSD
+# Other make implementations (GNU, Solaris 10, AIX) do it like this.
+echo 'include confinc.mk # ignored' > confmf.GNU
+_am_result=no
+for s in GNU BSD; do
+  { echo "$as_me:$LINENO: ${MAKE-make} -f confmf.$s && cat confinc.out" >&5
+   (${MAKE-make} -f confmf.$s && cat confinc.out) >&5 2>&5
+   ac_status=$?
+   echo "$as_me:$LINENO: \$? = $ac_status" >&5
+   (exit $ac_status); }
+  case $?:`cat confinc.out 2>/dev/null` in #(
+  '0:this is the am__doit target') :
+    case $s in #(
+  BSD) :
+    am__include='.include' am__quote='"' ;; #(
+  *) :
+    am__include='include' am__quote='' ;;
+esac ;; #(
+  *) :
      ;;
-   esac
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5
-$as_echo "$_am_result" >&6; }
-rm -f confinc confmf
+esac
+  if test "$am__include" != "#"; then
+    _am_result="yes ($s style)"
+    break
+  fi
+done
+rm -f confinc.* confmf.*
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: ${_am_result}" >&5
+printf "%s\n" "${_am_result}" >&6; }
 
 # Check whether --enable-dependency-tracking was given.
-if test "${enable_dependency_tracking+set}" = set; then :
+if test ${enable_dependency_tracking+y}
+then :
   enableval=$enable_dependency_tracking;
 fi
 
@@ -4218,11 +5059,12 @@
 
 depcc="$CC"   am_compiler_list=
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
-$as_echo_n "checking dependency style of $depcc... " >&6; }
-if ${am_cv_CC_dependencies_compiler_type+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
+printf %s "checking dependency style of $depcc... " >&6; }
+if test ${am_cv_CC_dependencies_compiler_type+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
   # We make a subdir and do the tests there.  Otherwise we can end up
   # making bogus files that we don't know about and never remove.  For
@@ -4329,8 +5171,8 @@
 fi
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5
-$as_echo "$am_cv_CC_dependencies_compiler_type" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5
+printf "%s\n" "$am_cv_CC_dependencies_compiler_type" >&6; }
 CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type
 
  if
@@ -4345,6 +5187,12 @@
 
 
 
+
+
+
+
+
+
 ac_ext=cpp
 ac_cpp='$CXXCPP $CPPFLAGS'
 ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@@ -4355,15 +5203,16 @@
     CXX=$CCC
   else
     if test -n "$ac_tool_prefix"; then
-  for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC
+  for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC clang++
   do
     # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
 set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CXX+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_CXX+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$CXX"; then
   ac_cv_prog_CXX="$CXX" # Let the user override the test.
 else
@@ -4371,11 +5220,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_CXX="$ac_tool_prefix$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -4386,11 +5239,11 @@
 fi
 CXX=$ac_cv_prog_CXX
 if test -n "$CXX"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXX" >&5
-$as_echo "$CXX" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CXX" >&5
+printf "%s\n" "$CXX" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -4399,15 +5252,16 @@
 fi
 if test -z "$CXX"; then
   ac_ct_CXX=$CXX
-  for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC
+  for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC clang++
 do
   # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_CXX+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_CXX+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_CXX"; then
   ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test.
 else
@@ -4415,11 +5269,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_CXX="$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -4430,11 +5288,11 @@
 fi
 ac_ct_CXX=$ac_cv_prog_ac_ct_CXX
 if test -n "$ac_ct_CXX"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CXX" >&5
-$as_echo "$ac_ct_CXX" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CXX" >&5
+printf "%s\n" "$ac_ct_CXX" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -4446,8 +5304,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     CXX=$ac_ct_CXX
@@ -4457,7 +5315,7 @@
   fi
 fi
 # Provide some information about the compiler.
-$as_echo "$as_me:${as_lineno-$LINENO}: checking for C++ compiler version" >&5
+printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C++ compiler version" >&5
 set X $ac_compile
 ac_compiler=$2
 for ac_option in --version -v -V -qversion; do
@@ -4467,7 +5325,7 @@
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_compiler $ac_option >&5") 2>conftest.err
   ac_status=$?
   if test -s conftest.err; then
@@ -4477,20 +5335,21 @@
     cat conftest.er1 >&5
   fi
   rm -f conftest.er1 conftest.err
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }
 done
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C++ compiler" >&5
-$as_echo_n "checking whether we are using the GNU C++ compiler... " >&6; }
-if ${ac_cv_cxx_compiler_gnu+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports GNU C++" >&5
+printf %s "checking whether the compiler supports GNU C++... " >&6; }
+if test ${ac_cv_cxx_compiler_gnu+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 #ifndef __GNUC__
        choke me
@@ -4500,29 +5359,33 @@
   return 0;
 }
 _ACEOF
-if ac_fn_cxx_try_compile "$LINENO"; then :
+if ac_fn_cxx_try_compile "$LINENO"
+then :
   ac_compiler_gnu=yes
-else
+else $as_nop
   ac_compiler_gnu=no
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 ac_cv_cxx_compiler_gnu=$ac_compiler_gnu
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cxx_compiler_gnu" >&5
-$as_echo "$ac_cv_cxx_compiler_gnu" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cxx_compiler_gnu" >&5
+printf "%s\n" "$ac_cv_cxx_compiler_gnu" >&6; }
+ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
+
 if test $ac_compiler_gnu = yes; then
   GXX=yes
 else
   GXX=
 fi
-ac_test_CXXFLAGS=${CXXFLAGS+set}
+ac_test_CXXFLAGS=${CXXFLAGS+y}
 ac_save_CXXFLAGS=$CXXFLAGS
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX accepts -g" >&5
-$as_echo_n "checking whether $CXX accepts -g... " >&6; }
-if ${ac_cv_prog_cxx_g+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $CXX accepts -g" >&5
+printf %s "checking whether $CXX accepts -g... " >&6; }
+if test ${ac_cv_prog_cxx_g+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_save_cxx_werror_flag=$ac_cxx_werror_flag
    ac_cxx_werror_flag=yes
    ac_cv_prog_cxx_g=no
@@ -4531,57 +5394,60 @@
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_cxx_try_compile "$LINENO"; then :
+if ac_fn_cxx_try_compile "$LINENO"
+then :
   ac_cv_prog_cxx_g=yes
-else
+else $as_nop
   CXXFLAGS=""
       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_cxx_try_compile "$LINENO"; then :
+if ac_fn_cxx_try_compile "$LINENO"
+then :
 
-else
+else $as_nop
   ac_cxx_werror_flag=$ac_save_cxx_werror_flag
 	 CXXFLAGS="-g"
 	 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_cxx_try_compile "$LINENO"; then :
+if ac_fn_cxx_try_compile "$LINENO"
+then :
   ac_cv_prog_cxx_g=yes
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
    ac_cxx_werror_flag=$ac_save_cxx_werror_flag
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cxx_g" >&5
-$as_echo "$ac_cv_prog_cxx_g" >&6; }
-if test "$ac_test_CXXFLAGS" = set; then
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cxx_g" >&5
+printf "%s\n" "$ac_cv_prog_cxx_g" >&6; }
+if test $ac_test_CXXFLAGS; then
   CXXFLAGS=$ac_save_CXXFLAGS
 elif test $ac_cv_prog_cxx_g = yes; then
   if test "$GXX" = yes; then
@@ -4596,6 +5462,100 @@
     CXXFLAGS=
   fi
 fi
+ac_prog_cxx_stdcxx=no
+if test x$ac_prog_cxx_stdcxx = xno
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CXX option to enable C++11 features" >&5
+printf %s "checking for $CXX option to enable C++11 features... " >&6; }
+if test ${ac_cv_prog_cxx_11+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  ac_cv_prog_cxx_11=no
+ac_save_CXX=$CXX
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$ac_cxx_conftest_cxx11_program
+_ACEOF
+for ac_arg in '' -std=gnu++11 -std=gnu++0x -std=c++11 -std=c++0x -qlanglvl=extended0x -AA
+do
+  CXX="$ac_save_CXX $ac_arg"
+  if ac_fn_cxx_try_compile "$LINENO"
+then :
+  ac_cv_prog_cxx_cxx11=$ac_arg
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam
+  test "x$ac_cv_prog_cxx_cxx11" != "xno" && break
+done
+rm -f conftest.$ac_ext
+CXX=$ac_save_CXX
+fi
+
+if test "x$ac_cv_prog_cxx_cxx11" = xno
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
+printf "%s\n" "unsupported" >&6; }
+else $as_nop
+  if test "x$ac_cv_prog_cxx_cxx11" = x
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
+printf "%s\n" "none needed" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cxx_cxx11" >&5
+printf "%s\n" "$ac_cv_prog_cxx_cxx11" >&6; }
+     CXX="$CXX $ac_cv_prog_cxx_cxx11"
+fi
+  ac_cv_prog_cxx_stdcxx=$ac_cv_prog_cxx_cxx11
+  ac_prog_cxx_stdcxx=cxx11
+fi
+fi
+if test x$ac_prog_cxx_stdcxx = xno
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CXX option to enable C++98 features" >&5
+printf %s "checking for $CXX option to enable C++98 features... " >&6; }
+if test ${ac_cv_prog_cxx_98+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  ac_cv_prog_cxx_98=no
+ac_save_CXX=$CXX
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$ac_cxx_conftest_cxx98_program
+_ACEOF
+for ac_arg in '' -std=gnu++98 -std=c++98 -qlanglvl=extended -AA
+do
+  CXX="$ac_save_CXX $ac_arg"
+  if ac_fn_cxx_try_compile "$LINENO"
+then :
+  ac_cv_prog_cxx_cxx98=$ac_arg
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam
+  test "x$ac_cv_prog_cxx_cxx98" != "xno" && break
+done
+rm -f conftest.$ac_ext
+CXX=$ac_save_CXX
+fi
+
+if test "x$ac_cv_prog_cxx_cxx98" = xno
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
+printf "%s\n" "unsupported" >&6; }
+else $as_nop
+  if test "x$ac_cv_prog_cxx_cxx98" = x
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
+printf "%s\n" "none needed" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cxx_cxx98" >&5
+printf "%s\n" "$ac_cv_prog_cxx_cxx98" >&6; }
+     CXX="$CXX $ac_cv_prog_cxx_cxx98"
+fi
+  ac_cv_prog_cxx_stdcxx=$ac_cv_prog_cxx_cxx98
+  ac_prog_cxx_stdcxx=cxx98
+fi
+fi
+
 ac_ext=c
 ac_cpp='$CPP $CPPFLAGS'
 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@@ -4604,11 +5564,12 @@
 
 depcc="$CXX"  am_compiler_list=
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
-$as_echo_n "checking dependency style of $depcc... " >&6; }
-if ${am_cv_CXX_dependencies_compiler_type+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
+printf %s "checking dependency style of $depcc... " >&6; }
+if test ${am_cv_CXX_dependencies_compiler_type+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
   # We make a subdir and do the tests there.  Otherwise we can end up
   # making bogus files that we don't know about and never remove.  For
@@ -4715,8 +5676,8 @@
 fi
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CXX_dependencies_compiler_type" >&5
-$as_echo "$am_cv_CXX_dependencies_compiler_type" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_CXX_dependencies_compiler_type" >&5
+printf "%s\n" "$am_cv_CXX_dependencies_compiler_type" >&6; }
 CXXDEPMODE=depmode=$am_cv_CXX_dependencies_compiler_type
 
  if
@@ -4731,14 +5692,16 @@
 
 
 
-if test x$SH_PATH = x; then :
+if test x$SH_PATH = x
+then :
   # Extract the first word of "sh", so it can be a program name with args.
 set dummy sh; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_SH_PATH+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_SH_PATH+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $SH_PATH in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_SH_PATH="$SH_PATH" # Let the user override the test with a path.
@@ -4748,11 +5711,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_SH_PATH="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_SH_PATH="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -4764,11 +5731,11 @@
 fi
 SH_PATH=$ac_cv_path_SH_PATH
 if test -n "$SH_PATH"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $SH_PATH" >&5
-$as_echo "$SH_PATH" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $SH_PATH" >&5
+printf "%s\n" "$SH_PATH" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -4777,11 +5744,12 @@
 do
   # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_MODINFO+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_MODINFO+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$MODINFO"; then
   ac_cv_prog_MODINFO="$MODINFO" # Let the user override the test.
 else
@@ -4790,11 +5758,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_MODINFO="$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -4805,11 +5777,11 @@
 fi
 MODINFO=$ac_cv_prog_MODINFO
 if test -n "$MODINFO"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MODINFO" >&5
-$as_echo "$MODINFO" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MODINFO" >&5
+printf "%s\n" "$MODINFO" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -4818,8 +5790,8 @@
 test -n "$MODINFO" || MODINFO="no"
 
 if test x$MODINFO = xno; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \"No modinfo command found - skipping kernel drivers.\"" >&5
-$as_echo "$as_me: WARNING: \"No modinfo command found - skipping kernel drivers.\"" >&2;}
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: \"No modinfo command found - skipping kernel drivers.\"" >&5
+printf "%s\n" "$as_me: WARNING: \"No modinfo command found - skipping kernel drivers.\"" >&2;}
   MODINFO="false"
 else
   MODINFO=$( PATH=$PATH:/sbin:/usr/sbin which modinfo )
@@ -4827,11 +5799,12 @@
 
 # Extract the first word of "pkg-config", so it can be a program name with args.
 set dummy pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$PKGCONFIG"; then
   ac_cv_prog_PKGCONFIG="$PKGCONFIG" # Let the user override the test.
 else
@@ -4839,11 +5812,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_PKGCONFIG="yes"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -4855,11 +5832,11 @@
 fi
 PKGCONFIG=$ac_cv_prog_PKGCONFIG
 if test -n "$PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
-$as_echo "$PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
+printf "%s\n" "$PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -4868,11 +5845,12 @@
 fi
 # Extract the first word of "xsltproc", so it can be a program name with args.
 set dummy xsltproc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_XSLTPROC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_XSLTPROC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$XSLTPROC"; then
   ac_cv_prog_XSLTPROC="$XSLTPROC" # Let the user override the test.
 else
@@ -4880,11 +5858,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_XSLTPROC="yes"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -4896,56 +5878,22 @@
 fi
 XSLTPROC=$ac_cv_prog_XSLTPROC
 if test -n "$XSLTPROC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $XSLTPROC" >&5
-$as_echo "$XSLTPROC" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $XSLTPROC" >&5
+printf "%s\n" "$XSLTPROC" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
 if test x$XSLTPROC != "xyes"; then
     as_fn_error $? "xsltproc is required. It sometimes comes with libxml" "$LINENO" 5
 fi
-# Extract the first word of "man2html", so it can be a program name with args.
-set dummy man2html; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_MAN2HTML+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$MAN2HTML"; then
-  ac_cv_prog_MAN2HTML="$MAN2HTML" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_prog_MAN2HTML="yes"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-  test -z "$ac_cv_prog_MAN2HTML" && ac_cv_prog_MAN2HTML="no"
-fi
-fi
-MAN2HTML=$ac_cv_prog_MAN2HTML
-if test -n "$MAN2HTML"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAN2HTML" >&5
-$as_echo "$MAN2HTML" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- if test x$MAN2HTML = xyes; then
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking Checking for usable man2html" >&5
+printf %s "checking Checking for usable man2html... " >&6; }
+ if
+    man2html_cmd="man2html -r -M index.html doc/man-source/irexec.1"
+    test $($man2html_cmd 2>/dev/null | wc -l) -gt 100; then
   HAVE_MAN2HTML_TRUE=
   HAVE_MAN2HTML_FALSE='#'
 else
@@ -4953,13 +5901,22 @@
   HAVE_MAN2HTML_FALSE=
 fi
 
+if test x$HAVE_MAN2HTML_TRUE = x
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+fi
 # Extract the first word of "doxygen", so it can be a program name with args.
 set dummy doxygen; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_DOXYGEN+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_DOXYGEN+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$DOXYGEN"; then
   ac_cv_prog_DOXYGEN="$DOXYGEN" # Let the user override the test.
 else
@@ -4967,11 +5924,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_DOXYGEN="yes"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -4983,11 +5944,11 @@
 fi
 DOXYGEN=$ac_cv_prog_DOXYGEN
 if test -n "$DOXYGEN"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DOXYGEN" >&5
-$as_echo "$DOXYGEN" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $DOXYGEN" >&5
+printf "%s\n" "$DOXYGEN" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -5001,14 +5962,15 @@
 
 case `pwd` in
   *\ * | *\	*)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5
-$as_echo "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;;
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5
+printf "%s\n" "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;;
 esac
 
 
 
-macro_version='2.4.6'
-macro_revision='2.4.6'
+macro_version='2.4.7'
+macro_revision='2.4.7'
+
 
 
 
@@ -5024,26 +5986,29 @@
 
 ltmain=$ac_aux_dir/ltmain.sh
 
-# Make sure we can run config.sub.
-$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
-  as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5
-$as_echo_n "checking build system type... " >&6; }
-if ${ac_cv_build+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+
+
+  # Make sure we can run config.sub.
+$SHELL "${ac_aux_dir}config.sub" sun4 >/dev/null 2>&1 ||
+  as_fn_error $? "cannot run $SHELL ${ac_aux_dir}config.sub" "$LINENO" 5
+
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking build system type" >&5
+printf %s "checking build system type... " >&6; }
+if test ${ac_cv_build+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_build_alias=$build_alias
 test "x$ac_build_alias" = x &&
-  ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"`
+  ac_build_alias=`$SHELL "${ac_aux_dir}config.guess"`
 test "x$ac_build_alias" = x &&
   as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5
-ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` ||
-  as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5
+ac_cv_build=`$SHELL "${ac_aux_dir}config.sub" $ac_build_alias` ||
+  as_fn_error $? "$SHELL ${ac_aux_dir}config.sub $ac_build_alias failed" "$LINENO" 5
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5
-$as_echo "$ac_cv_build" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5
+printf "%s\n" "$ac_cv_build" >&6; }
 case $ac_cv_build in
 *-*-*) ;;
 *) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;;
@@ -5062,21 +6027,22 @@
 case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5
-$as_echo_n "checking host system type... " >&6; }
-if ${ac_cv_host+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking host system type" >&5
+printf %s "checking host system type... " >&6; }
+if test ${ac_cv_host+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test "x$host_alias" = x; then
   ac_cv_host=$ac_cv_build
 else
-  ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` ||
-    as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5
+  ac_cv_host=`$SHELL "${ac_aux_dir}config.sub" $host_alias` ||
+    as_fn_error $? "$SHELL ${ac_aux_dir}config.sub $host_alias failed" "$LINENO" 5
 fi
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5
-$as_echo "$ac_cv_host" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5
+printf "%s\n" "$ac_cv_host" >&6; }
 case $ac_cv_host in
 *-*-*) ;;
 *) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;;
@@ -5116,8 +6082,8 @@
 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5
-$as_echo_n "checking how to print strings... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5
+printf %s "checking how to print strings... " >&6; }
 # Test print first, because it will be a builtin if present.
 if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \
    test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
@@ -5143,12 +6109,12 @@
 }
 
 case $ECHO in
-  printf*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: printf" >&5
-$as_echo "printf" >&6; } ;;
-  print*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: print -r" >&5
-$as_echo "print -r" >&6; } ;;
-  *) { $as_echo "$as_me:${as_lineno-$LINENO}: result: cat" >&5
-$as_echo "cat" >&6; } ;;
+  printf*) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: printf" >&5
+printf "%s\n" "printf" >&6; } ;;
+  print*) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: print -r" >&5
+printf "%s\n" "print -r" >&6; } ;;
+  *) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: cat" >&5
+printf "%s\n" "cat" >&6; } ;;
 esac
 
 
@@ -5164,11 +6130,12 @@
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5
-$as_echo_n "checking for a sed that does not truncate output... " >&6; }
-if ${ac_cv_path_SED+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5
+printf %s "checking for a sed that does not truncate output... " >&6; }
+if test ${ac_cv_path_SED+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
             ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/
      for ac_i in 1 2 3 4 5 6 7; do
        ac_script="$ac_script$as_nl$ac_script"
@@ -5182,10 +6149,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_prog in sed gsed; do
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    for ac_prog in sed gsed
+   do
     for ac_exec_ext in '' $ac_executable_extensions; do
-      ac_path_SED="$as_dir/$ac_prog$ac_exec_ext"
+      ac_path_SED="$as_dir$ac_prog$ac_exec_ext"
       as_fn_executable_p "$ac_path_SED" || continue
 # Check for GNU ac_path_SED and select it if it is found.
   # Check for GNU $ac_path_SED
@@ -5194,13 +6166,13 @@
   ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;;
 *)
   ac_count=0
-  $as_echo_n 0123456789 >"conftest.in"
+  printf %s 0123456789 >"conftest.in"
   while :
   do
     cat "conftest.in" "conftest.in" >"conftest.tmp"
     mv "conftest.tmp" "conftest.in"
     cp "conftest.in" "conftest.nl"
-    $as_echo '' >> "conftest.nl"
+    printf "%s\n" '' >> "conftest.nl"
     "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break
     diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
     as_fn_arith $ac_count + 1 && ac_count=$as_val
@@ -5228,8 +6200,8 @@
 fi
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5
-$as_echo "$ac_cv_path_SED" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5
+printf "%s\n" "$ac_cv_path_SED" >&6; }
  SED="$ac_cv_path_SED"
   rm -f conftest.sed
 
@@ -5246,11 +6218,12 @@
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
-$as_echo_n "checking for grep that handles long lines and -e... " >&6; }
-if ${ac_cv_path_GREP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
+printf %s "checking for grep that handles long lines and -e... " >&6; }
+if test ${ac_cv_path_GREP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -z "$GREP"; then
   ac_path_GREP_found=false
   # Loop through the user's path and test for each of PROGNAME-LIST
@@ -5258,10 +6231,15 @@
 for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_prog in grep ggrep; do
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    for ac_prog in grep ggrep
+   do
     for ac_exec_ext in '' $ac_executable_extensions; do
-      ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
+      ac_path_GREP="$as_dir$ac_prog$ac_exec_ext"
       as_fn_executable_p "$ac_path_GREP" || continue
 # Check for GNU ac_path_GREP and select it if it is found.
   # Check for GNU $ac_path_GREP
@@ -5270,13 +6248,13 @@
   ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;
 *)
   ac_count=0
-  $as_echo_n 0123456789 >"conftest.in"
+  printf %s 0123456789 >"conftest.in"
   while :
   do
     cat "conftest.in" "conftest.in" >"conftest.tmp"
     mv "conftest.tmp" "conftest.in"
     cp "conftest.in" "conftest.nl"
-    $as_echo 'GREP' >> "conftest.nl"
+    printf "%s\n" 'GREP' >> "conftest.nl"
     "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
     diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
     as_fn_arith $ac_count + 1 && ac_count=$as_val
@@ -5304,16 +6282,17 @@
 fi
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5
-$as_echo "$ac_cv_path_GREP" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5
+printf "%s\n" "$ac_cv_path_GREP" >&6; }
  GREP="$ac_cv_path_GREP"
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
-$as_echo_n "checking for egrep... " >&6; }
-if ${ac_cv_path_EGREP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
+printf %s "checking for egrep... " >&6; }
+if test ${ac_cv_path_EGREP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
    then ac_cv_path_EGREP="$GREP -E"
    else
@@ -5324,10 +6303,15 @@
 for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_prog in egrep; do
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    for ac_prog in egrep
+   do
     for ac_exec_ext in '' $ac_executable_extensions; do
-      ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
+      ac_path_EGREP="$as_dir$ac_prog$ac_exec_ext"
       as_fn_executable_p "$ac_path_EGREP" || continue
 # Check for GNU ac_path_EGREP and select it if it is found.
   # Check for GNU $ac_path_EGREP
@@ -5336,13 +6320,13 @@
   ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
 *)
   ac_count=0
-  $as_echo_n 0123456789 >"conftest.in"
+  printf %s 0123456789 >"conftest.in"
   while :
   do
     cat "conftest.in" "conftest.in" >"conftest.tmp"
     mv "conftest.tmp" "conftest.in"
     cp "conftest.in" "conftest.nl"
-    $as_echo 'EGREP' >> "conftest.nl"
+    printf "%s\n" 'EGREP' >> "conftest.nl"
     "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
     diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
     as_fn_arith $ac_count + 1 && ac_count=$as_val
@@ -5371,16 +6355,17 @@
 
    fi
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5
-$as_echo "$ac_cv_path_EGREP" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5
+printf "%s\n" "$ac_cv_path_EGREP" >&6; }
  EGREP="$ac_cv_path_EGREP"
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for fgrep" >&5
-$as_echo_n "checking for fgrep... " >&6; }
-if ${ac_cv_path_FGREP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for fgrep" >&5
+printf %s "checking for fgrep... " >&6; }
+if test ${ac_cv_path_FGREP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if echo 'ab*c' | $GREP -F 'ab*c' >/dev/null 2>&1
    then ac_cv_path_FGREP="$GREP -F"
    else
@@ -5391,10 +6376,15 @@
 for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_prog in fgrep; do
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    for ac_prog in fgrep
+   do
     for ac_exec_ext in '' $ac_executable_extensions; do
-      ac_path_FGREP="$as_dir/$ac_prog$ac_exec_ext"
+      ac_path_FGREP="$as_dir$ac_prog$ac_exec_ext"
       as_fn_executable_p "$ac_path_FGREP" || continue
 # Check for GNU ac_path_FGREP and select it if it is found.
   # Check for GNU $ac_path_FGREP
@@ -5403,13 +6393,13 @@
   ac_cv_path_FGREP="$ac_path_FGREP" ac_path_FGREP_found=:;;
 *)
   ac_count=0
-  $as_echo_n 0123456789 >"conftest.in"
+  printf %s 0123456789 >"conftest.in"
   while :
   do
     cat "conftest.in" "conftest.in" >"conftest.tmp"
     mv "conftest.tmp" "conftest.in"
     cp "conftest.in" "conftest.nl"
-    $as_echo 'FGREP' >> "conftest.nl"
+    printf "%s\n" 'FGREP' >> "conftest.nl"
     "$ac_path_FGREP" FGREP < "conftest.nl" >"conftest.out" 2>/dev/null || break
     diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
     as_fn_arith $ac_count + 1 && ac_count=$as_val
@@ -5438,8 +6428,8 @@
 
    fi
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_FGREP" >&5
-$as_echo "$ac_cv_path_FGREP" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_FGREP" >&5
+printf "%s\n" "$ac_cv_path_FGREP" >&6; }
  FGREP="$ac_cv_path_FGREP"
 
 
@@ -5464,17 +6454,18 @@
 
 
 # Check whether --with-gnu-ld was given.
-if test "${with_gnu_ld+set}" = set; then :
+if test ${with_gnu_ld+y}
+then :
   withval=$with_gnu_ld; test no = "$withval" || with_gnu_ld=yes
-else
+else $as_nop
   with_gnu_ld=no
 fi
 
 ac_prog=ld
 if test yes = "$GCC"; then
   # Check if gcc -print-prog-name=ld gives a path.
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5
-$as_echo_n "checking for ld used by $CC... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5
+printf %s "checking for ld used by $CC... " >&6; }
   case $host in
   *-*-mingw*)
     # gcc leaves a trailing carriage return, which upsets mingw
@@ -5503,15 +6494,16 @@
     ;;
   esac
 elif test yes = "$with_gnu_ld"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
-$as_echo_n "checking for GNU ld... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
+printf %s "checking for GNU ld... " >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
-$as_echo_n "checking for non-GNU ld... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
+printf %s "checking for non-GNU ld... " >&6; }
 fi
-if ${lt_cv_path_LD+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+if test ${lt_cv_path_LD+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -z "$LD"; then
   lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
   for ac_dir in $PATH; do
@@ -5540,18 +6532,19 @@
 
 LD=$lt_cv_path_LD
 if test -n "$LD"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
-$as_echo "$LD" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
+printf "%s\n" "$LD" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
-$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }
-if ${lt_cv_prog_gnu_ld+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
+printf %s "checking if the linker ($LD) is GNU ld... " >&6; }
+if test ${lt_cv_prog_gnu_ld+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   # I'd rather use --version here, but apparently some GNU lds only accept -v.
 case `$LD -v 2>&1 &5
-$as_echo "$lt_cv_prog_gnu_ld" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_gnu_ld" >&5
+printf "%s\n" "$lt_cv_prog_gnu_ld" >&6; }
 with_gnu_ld=$lt_cv_prog_gnu_ld
 
 
@@ -5574,11 +6567,12 @@
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for BSD- or MS-compatible name lister (nm)" >&5
-$as_echo_n "checking for BSD- or MS-compatible name lister (nm)... " >&6; }
-if ${lt_cv_path_NM+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for BSD- or MS-compatible name lister (nm)" >&5
+printf %s "checking for BSD- or MS-compatible name lister (nm)... " >&6; }
+if test ${lt_cv_path_NM+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$NM"; then
   # Let the user override the test.
   lt_cv_path_NM=$NM
@@ -5603,13 +6597,13 @@
 	mingw*) lt_bad_file=conftest.nm/nofile ;;
 	*) lt_bad_file=/dev/null ;;
 	esac
-	case `"$tmp_nm" -B $lt_bad_file 2>&1 | sed '1q'` in
+	case `"$tmp_nm" -B $lt_bad_file 2>&1 | $SED '1q'` in
 	*$lt_bad_file* | *'Invalid file or object type'*)
 	  lt_cv_path_NM="$tmp_nm -B"
 	  break 2
 	  ;;
 	*)
-	  case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
+	  case `"$tmp_nm" -p /dev/null 2>&1 | $SED '1q'` in
 	  */dev/null*)
 	    lt_cv_path_NM="$tmp_nm -p"
 	    break 2
@@ -5628,8 +6622,8 @@
   : ${lt_cv_path_NM=no}
 fi
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5
-$as_echo "$lt_cv_path_NM" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5
+printf "%s\n" "$lt_cv_path_NM" >&6; }
 if test no != "$lt_cv_path_NM"; then
   NM=$lt_cv_path_NM
 else
@@ -5642,11 +6636,12 @@
   do
     # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
 set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_DUMPBIN+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_DUMPBIN+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$DUMPBIN"; then
   ac_cv_prog_DUMPBIN="$DUMPBIN" # Let the user override the test.
 else
@@ -5654,11 +6649,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_DUMPBIN="$ac_tool_prefix$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -5669,11 +6668,11 @@
 fi
 DUMPBIN=$ac_cv_prog_DUMPBIN
 if test -n "$DUMPBIN"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DUMPBIN" >&5
-$as_echo "$DUMPBIN" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $DUMPBIN" >&5
+printf "%s\n" "$DUMPBIN" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -5686,11 +6685,12 @@
 do
   # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_DUMPBIN+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_DUMPBIN+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_DUMPBIN"; then
   ac_cv_prog_ac_ct_DUMPBIN="$ac_ct_DUMPBIN" # Let the user override the test.
 else
@@ -5698,11 +6698,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_DUMPBIN="$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -5713,11 +6717,11 @@
 fi
 ac_ct_DUMPBIN=$ac_cv_prog_ac_ct_DUMPBIN
 if test -n "$ac_ct_DUMPBIN"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DUMPBIN" >&5
-$as_echo "$ac_ct_DUMPBIN" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DUMPBIN" >&5
+printf "%s\n" "$ac_ct_DUMPBIN" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -5729,15 +6733,15 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     DUMPBIN=$ac_ct_DUMPBIN
   fi
 fi
 
-    case `$DUMPBIN -symbols -headers /dev/null 2>&1 | sed '1q'` in
+    case `$DUMPBIN -symbols -headers /dev/null 2>&1 | $SED '1q'` in
     *COFF*)
       DUMPBIN="$DUMPBIN -symbols -headers"
       ;;
@@ -5758,11 +6762,12 @@
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the name lister ($NM) interface" >&5
-$as_echo_n "checking the name lister ($NM) interface... " >&6; }
-if ${lt_cv_nm_interface+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking the name lister ($NM) interface" >&5
+printf %s "checking the name lister ($NM) interface... " >&6; }
+if test ${lt_cv_nm_interface+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_nm_interface="BSD nm"
   echo "int some_variable = 0;" > conftest.$ac_ext
   (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&5)
@@ -5778,26 +6783,27 @@
   fi
   rm -f conftest*
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_nm_interface" >&5
-$as_echo "$lt_cv_nm_interface" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_nm_interface" >&5
+printf "%s\n" "$lt_cv_nm_interface" >&6; }
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5
-$as_echo_n "checking whether ln -s works... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5
+printf %s "checking whether ln -s works... " >&6; }
 LN_S=$as_ln_s
 if test "$LN_S" = "ln -s"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5
-$as_echo "no, using $LN_S" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5
+printf "%s\n" "no, using $LN_S" >&6; }
 fi
 
 # find the maximum length of command line arguments
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the maximum length of command line arguments" >&5
-$as_echo_n "checking the maximum length of command line arguments... " >&6; }
-if ${lt_cv_sys_max_cmd_len+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking the maximum length of command line arguments" >&5
+printf %s "checking the maximum length of command line arguments... " >&6; }
+if test ${lt_cv_sys_max_cmd_len+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
     i=0
   teststring=ABCD
 
@@ -5839,7 +6845,7 @@
     lt_cv_sys_max_cmd_len=8192;
     ;;
 
-  bitrig* | darwin* | dragonfly* | freebsd* | netbsd* | openbsd*)
+  bitrig* | darwin* | dragonfly* | freebsd* | midnightbsd* | netbsd* | openbsd*)
     # This has been around since 386BSD, at least.  Likely further.
     if test -x /sbin/sysctl; then
       lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
@@ -5882,7 +6888,7 @@
   sysv5* | sco5v6* | sysv4.2uw2*)
     kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
     if test -n "$kargmax"; then
-      lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[	 ]//'`
+      lt_cv_sys_max_cmd_len=`echo $kargmax | $SED 's/.*[	 ]//'`
     else
       lt_cv_sys_max_cmd_len=32768
     fi
@@ -5924,11 +6930,11 @@
 fi
 
 if test -n "$lt_cv_sys_max_cmd_len"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&5
-$as_echo "$lt_cv_sys_max_cmd_len" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&5
+printf "%s\n" "$lt_cv_sys_max_cmd_len" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: none" >&5
-$as_echo "none" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none" >&5
+printf "%s\n" "none" >&6; }
 fi
 max_cmd_len=$lt_cv_sys_max_cmd_len
 
@@ -5972,11 +6978,12 @@
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to $host format" >&5
-$as_echo_n "checking how to convert $build file names to $host format... " >&6; }
-if ${lt_cv_to_host_file_cmd+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to $host format" >&5
+printf %s "checking how to convert $build file names to $host format... " >&6; }
+if test ${lt_cv_to_host_file_cmd+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $host in
   *-*-mingw* )
     case $build in
@@ -6012,18 +7019,19 @@
 fi
 
 to_host_file_cmd=$lt_cv_to_host_file_cmd
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_host_file_cmd" >&5
-$as_echo "$lt_cv_to_host_file_cmd" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_host_file_cmd" >&5
+printf "%s\n" "$lt_cv_to_host_file_cmd" >&6; }
 
 
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to toolchain format" >&5
-$as_echo_n "checking how to convert $build file names to toolchain format... " >&6; }
-if ${lt_cv_to_tool_file_cmd+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to toolchain format" >&5
+printf %s "checking how to convert $build file names to toolchain format... " >&6; }
+if test ${lt_cv_to_tool_file_cmd+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   #assume ordinary cross tools, or native build.
 lt_cv_to_tool_file_cmd=func_convert_file_noop
 case $host in
@@ -6039,22 +7047,23 @@
 fi
 
 to_tool_file_cmd=$lt_cv_to_tool_file_cmd
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_tool_file_cmd" >&5
-$as_echo "$lt_cv_to_tool_file_cmd" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_tool_file_cmd" >&5
+printf "%s\n" "$lt_cv_to_tool_file_cmd" >&6; }
 
 
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5
-$as_echo_n "checking for $LD option to reload object files... " >&6; }
-if ${lt_cv_ld_reload_flag+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5
+printf %s "checking for $LD option to reload object files... " >&6; }
+if test ${lt_cv_ld_reload_flag+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_ld_reload_flag='-r'
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_reload_flag" >&5
-$as_echo "$lt_cv_ld_reload_flag" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_reload_flag" >&5
+printf "%s\n" "$lt_cv_ld_reload_flag" >&6; }
 reload_flag=$lt_cv_ld_reload_flag
 case $reload_flag in
 "" | " "*) ;;
@@ -6085,13 +7094,122 @@
 
 
 if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}file", so it can be a program name with args.
+set dummy ${ac_tool_prefix}file; ac_word=$2
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_FILECMD+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  if test -n "$FILECMD"; then
+  ac_cv_prog_FILECMD="$FILECMD" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_prog_FILECMD="${ac_tool_prefix}file"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+fi
+fi
+FILECMD=$ac_cv_prog_FILECMD
+if test -n "$FILECMD"; then
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $FILECMD" >&5
+printf "%s\n" "$FILECMD" >&6; }
+else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_FILECMD"; then
+  ac_ct_FILECMD=$FILECMD
+  # Extract the first word of "file", so it can be a program name with args.
+set dummy file; ac_word=$2
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_FILECMD+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  if test -n "$ac_ct_FILECMD"; then
+  ac_cv_prog_ac_ct_FILECMD="$ac_ct_FILECMD" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_FILECMD="file"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_FILECMD=$ac_cv_prog_ac_ct_FILECMD
+if test -n "$ac_ct_FILECMD"; then
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_FILECMD" >&5
+printf "%s\n" "$ac_ct_FILECMD" >&6; }
+else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+fi
+
+  if test "x$ac_ct_FILECMD" = x; then
+    FILECMD=":"
+  else
+    case $cross_compiling:$ac_tool_warned in
+yes:)
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+    FILECMD=$ac_ct_FILECMD
+  fi
+else
+  FILECMD="$ac_cv_prog_FILECMD"
+fi
+
+
+
+
+
+
+
+if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
 set dummy ${ac_tool_prefix}objdump; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_OBJDUMP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_OBJDUMP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$OBJDUMP"; then
   ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test.
 else
@@ -6099,11 +7217,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -6114,11 +7236,11 @@
 fi
 OBJDUMP=$ac_cv_prog_OBJDUMP
 if test -n "$OBJDUMP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5
-$as_echo "$OBJDUMP" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5
+printf "%s\n" "$OBJDUMP" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -6127,11 +7249,12 @@
   ac_ct_OBJDUMP=$OBJDUMP
   # Extract the first word of "objdump", so it can be a program name with args.
 set dummy objdump; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_OBJDUMP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_OBJDUMP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_OBJDUMP"; then
   ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test.
 else
@@ -6139,11 +7262,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_OBJDUMP="objdump"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -6154,11 +7281,11 @@
 fi
 ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP
 if test -n "$ac_ct_OBJDUMP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5
-$as_echo "$ac_ct_OBJDUMP" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5
+printf "%s\n" "$ac_ct_OBJDUMP" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_OBJDUMP" = x; then
@@ -6166,8 +7293,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     OBJDUMP=$ac_ct_OBJDUMP
@@ -6186,11 +7313,12 @@
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to recognize dependent libraries" >&5
-$as_echo_n "checking how to recognize dependent libraries... " >&6; }
-if ${lt_cv_deplibs_check_method+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to recognize dependent libraries" >&5
+printf %s "checking how to recognize dependent libraries... " >&6; }
+if test ${lt_cv_deplibs_check_method+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_file_magic_cmd='$MAGIC_CMD'
 lt_cv_file_magic_test_file=
 lt_cv_deplibs_check_method='unknown'
@@ -6216,7 +7344,7 @@
 
 bsdi[45]*)
   lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)'
-  lt_cv_file_magic_cmd='/usr/bin/file -L'
+  lt_cv_file_magic_cmd='$FILECMD -L'
   lt_cv_file_magic_test_file=/shlib/libc.so
   ;;
 
@@ -6250,14 +7378,14 @@
   lt_cv_deplibs_check_method=pass_all
   ;;
 
-freebsd* | dragonfly*)
+freebsd* | dragonfly* | midnightbsd*)
   if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
     case $host_cpu in
     i*86 )
       # Not sure whether the presence of OpenBSD here was a mistake.
       # Let's accept both of them until this is cleared up.
       lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[3-9]86 (compact )?demand paged shared library'
-      lt_cv_file_magic_cmd=/usr/bin/file
+      lt_cv_file_magic_cmd=$FILECMD
       lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
       ;;
     esac
@@ -6271,7 +7399,7 @@
   ;;
 
 hpux10.20* | hpux11*)
-  lt_cv_file_magic_cmd=/usr/bin/file
+  lt_cv_file_magic_cmd=$FILECMD
   case $host_cpu in
   ia64*)
     lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - IA64'
@@ -6318,7 +7446,7 @@
 
 newos6*)
   lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)'
-  lt_cv_file_magic_cmd=/usr/bin/file
+  lt_cv_file_magic_cmd=$FILECMD
   lt_cv_file_magic_test_file=/usr/lib/libnls.so
   ;;
 
@@ -6386,8 +7514,8 @@
 esac
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5
-$as_echo "$lt_cv_deplibs_check_method" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5
+printf "%s\n" "$lt_cv_deplibs_check_method" >&6; }
 
 file_magic_glob=
 want_nocaseglob=no
@@ -6431,11 +7559,12 @@
 if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
 set dummy ${ac_tool_prefix}dlltool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_DLLTOOL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_DLLTOOL+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$DLLTOOL"; then
   ac_cv_prog_DLLTOOL="$DLLTOOL" # Let the user override the test.
 else
@@ -6443,11 +7572,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -6458,11 +7591,11 @@
 fi
 DLLTOOL=$ac_cv_prog_DLLTOOL
 if test -n "$DLLTOOL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5
-$as_echo "$DLLTOOL" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5
+printf "%s\n" "$DLLTOOL" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -6471,11 +7604,12 @@
   ac_ct_DLLTOOL=$DLLTOOL
   # Extract the first word of "dlltool", so it can be a program name with args.
 set dummy dlltool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_DLLTOOL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_DLLTOOL+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_DLLTOOL"; then
   ac_cv_prog_ac_ct_DLLTOOL="$ac_ct_DLLTOOL" # Let the user override the test.
 else
@@ -6483,11 +7617,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_DLLTOOL="dlltool"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -6498,11 +7636,11 @@
 fi
 ac_ct_DLLTOOL=$ac_cv_prog_ac_ct_DLLTOOL
 if test -n "$ac_ct_DLLTOOL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5
-$as_echo "$ac_ct_DLLTOOL" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5
+printf "%s\n" "$ac_ct_DLLTOOL" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_DLLTOOL" = x; then
@@ -6510,8 +7648,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     DLLTOOL=$ac_ct_DLLTOOL
@@ -6531,11 +7669,12 @@
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to associate runtime and link libraries" >&5
-$as_echo_n "checking how to associate runtime and link libraries... " >&6; }
-if ${lt_cv_sharedlib_from_linklib_cmd+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to associate runtime and link libraries" >&5
+printf %s "checking how to associate runtime and link libraries... " >&6; }
+if test ${lt_cv_sharedlib_from_linklib_cmd+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_sharedlib_from_linklib_cmd='unknown'
 
 case $host_os in
@@ -6558,8 +7697,8 @@
 esac
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sharedlib_from_linklib_cmd" >&5
-$as_echo "$lt_cv_sharedlib_from_linklib_cmd" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sharedlib_from_linklib_cmd" >&5
+printf "%s\n" "$lt_cv_sharedlib_from_linklib_cmd" >&6; }
 sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd
 test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO
 
@@ -6575,11 +7714,12 @@
   do
     # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
 set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_AR+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_AR+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$AR"; then
   ac_cv_prog_AR="$AR" # Let the user override the test.
 else
@@ -6587,11 +7727,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_AR="$ac_tool_prefix$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -6602,11 +7746,11 @@
 fi
 AR=$ac_cv_prog_AR
 if test -n "$AR"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5
-$as_echo "$AR" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $AR" >&5
+printf "%s\n" "$AR" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -6619,11 +7763,12 @@
 do
   # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_AR+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_AR+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_AR"; then
   ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test.
 else
@@ -6631,11 +7776,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_AR="$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -6646,11 +7795,11 @@
 fi
 ac_ct_AR=$ac_cv_prog_ac_ct_AR
 if test -n "$ac_ct_AR"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5
-$as_echo "$ac_ct_AR" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5
+printf "%s\n" "$ac_ct_AR" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -6662,8 +7811,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     AR=$ac_ct_AR
@@ -6671,42 +7820,60 @@
 fi
 
 : ${AR=ar}
-: ${AR_FLAGS=cru}
 
 
 
 
 
 
+# Use ARFLAGS variable as AR's operation code to sync the variable naming with
+# Automake.  If both AR_FLAGS and ARFLAGS are specified, AR_FLAGS should have
+# higher priority because thats what people were doing historically (setting
+# ARFLAGS for automake and AR_FLAGS for libtool).  FIXME: Make the AR_FLAGS
+# variable obsoleted/removed.
 
+test ${AR_FLAGS+y} || AR_FLAGS=${ARFLAGS-cr}
+lt_ar_flags=$AR_FLAGS
 
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5
-$as_echo_n "checking for archiver @FILE support... " >&6; }
-if ${lt_cv_ar_at_file+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+
+
+# Make AR_FLAGS overridable by 'make ARFLAGS='.  Don't try to run-time override
+# by AR_FLAGS because that was never working and AR_FLAGS is about to die.
+
+
+
+
+
+
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5
+printf %s "checking for archiver @FILE support... " >&6; }
+if test ${lt_cv_ar_at_file+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_ar_at_file=no
    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   echo conftest.$ac_objext > conftest.lst
       lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&5'
       { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5
   (eval $lt_ar_try) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }
       if test 0 -eq "$ac_status"; then
 	# Ensure the archiver fails upon bogus file names.
@@ -6714,7 +7881,7 @@
 	{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5
   (eval $lt_ar_try) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }
 	if test 0 -ne "$ac_status"; then
           lt_cv_ar_at_file=@
@@ -6723,11 +7890,11 @@
       rm -f conftest.* libconftest.a
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5
-$as_echo "$lt_cv_ar_at_file" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5
+printf "%s\n" "$lt_cv_ar_at_file" >&6; }
 
 if test no = "$lt_cv_ar_at_file"; then
   archiver_list_spec=
@@ -6744,11 +7911,12 @@
 if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
 set dummy ${ac_tool_prefix}strip; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_STRIP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_STRIP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$STRIP"; then
   ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
 else
@@ -6756,11 +7924,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_STRIP="${ac_tool_prefix}strip"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -6771,11 +7943,11 @@
 fi
 STRIP=$ac_cv_prog_STRIP
 if test -n "$STRIP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
-$as_echo "$STRIP" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
+printf "%s\n" "$STRIP" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -6784,11 +7956,12 @@
   ac_ct_STRIP=$STRIP
   # Extract the first word of "strip", so it can be a program name with args.
 set dummy strip; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_STRIP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_STRIP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_STRIP"; then
   ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
 else
@@ -6796,11 +7969,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_STRIP="strip"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -6811,11 +7988,11 @@
 fi
 ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
 if test -n "$ac_ct_STRIP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
-$as_echo "$ac_ct_STRIP" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
+printf "%s\n" "$ac_ct_STRIP" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_STRIP" = x; then
@@ -6823,8 +8000,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     STRIP=$ac_ct_STRIP
@@ -6843,11 +8020,12 @@
 if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
 set dummy ${ac_tool_prefix}ranlib; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_RANLIB+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_RANLIB+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$RANLIB"; then
   ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
 else
@@ -6855,11 +8033,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -6870,11 +8052,11 @@
 fi
 RANLIB=$ac_cv_prog_RANLIB
 if test -n "$RANLIB"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5
-$as_echo "$RANLIB" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5
+printf "%s\n" "$RANLIB" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -6883,11 +8065,12 @@
   ac_ct_RANLIB=$RANLIB
   # Extract the first word of "ranlib", so it can be a program name with args.
 set dummy ranlib; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_RANLIB+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_RANLIB+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_RANLIB"; then
   ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.
 else
@@ -6895,11 +8078,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_RANLIB="ranlib"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -6910,11 +8097,11 @@
 fi
 ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
 if test -n "$ac_ct_RANLIB"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5
-$as_echo "$ac_ct_RANLIB" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5
+printf "%s\n" "$ac_ct_RANLIB" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_RANLIB" = x; then
@@ -6922,8 +8109,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     RANLIB=$ac_ct_RANLIB
@@ -7012,11 +8199,12 @@
 
 
 # Check for command to grab the raw symbol name followed by C symbol from nm.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking command to parse $NM output from $compiler object" >&5
-$as_echo_n "checking command to parse $NM output from $compiler object... " >&6; }
-if ${lt_cv_sys_global_symbol_pipe+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking command to parse $NM output from $compiler object" >&5
+printf %s "checking command to parse $NM output from $compiler object... " >&6; }
+if test ${lt_cv_sys_global_symbol_pipe+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
 # These are sane defaults that work on at least a few old systems.
 # [They come from Ultrix.  What could be older than Ultrix?!! ;)]
@@ -7071,7 +8259,7 @@
 
 if test "$lt_cv_nm_interface" = "MS dumpbin"; then
   # Gets list of data symbols to import.
-  lt_cv_sys_global_symbol_to_import="sed -n -e 's/^I .* \(.*\)$/\1/p'"
+  lt_cv_sys_global_symbol_to_import="$SED -n -e 's/^I .* \(.*\)$/\1/p'"
   # Adjust the below global symbol transforms to fixup imported variables.
   lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'"
   lt_c_name_hook=" -e 's/^I .* \(.*\)$/  {\"\1\", (void *) 0},/p'"
@@ -7089,20 +8277,20 @@
 # Transform an extracted symbol line into a proper C declaration.
 # Some systems (esp. on ia64) link data and code symbols differently,
 # so use this general approach.
-lt_cv_sys_global_symbol_to_cdecl="sed -n"\
+lt_cv_sys_global_symbol_to_cdecl="$SED -n"\
 $lt_cdecl_hook\
 " -e 's/^T .* \(.*\)$/extern int \1();/p'"\
 " -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'"
 
 # Transform an extracted symbol line into symbol name and symbol address
-lt_cv_sys_global_symbol_to_c_name_address="sed -n"\
+lt_cv_sys_global_symbol_to_c_name_address="$SED -n"\
 $lt_c_name_hook\
 " -e 's/^: \(.*\) .*$/  {\"\1\", (void *) 0},/p'"\
 " -e 's/^$symcode$symcode* .* \(.*\)$/  {\"\1\", (void *) \&\1},/p'"
 
 # Transform an extracted symbol line into symbol name with lib prefix and
 # symbol address.
-lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n"\
+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="$SED -n"\
 $lt_c_name_lib_hook\
 " -e 's/^: \(.*\) .*$/  {\"\1\", (void *) 0},/p'"\
 " -e 's/^$symcode$symcode* .* \(lib.*\)$/  {\"\1\", (void *) \&\1},/p'"\
@@ -7126,7 +8314,7 @@
   if test "$lt_cv_nm_interface" = "MS dumpbin"; then
     # Fake it for dumpbin and say T for any non-static function,
     # D for any global variable and I for any imported variable.
-    # Also find C++ and __fastcall symbols from MSVC++,
+    # Also find C++ and __fastcall symbols from MSVC++ or ICC,
     # which start with @ or ?.
     lt_cv_sys_global_symbol_pipe="$AWK '"\
 "     {last_section=section; section=\$ 3};"\
@@ -7144,9 +8332,9 @@
 "     s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\
 "     ' prfx=^$ac_symprfx"
   else
-    lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[	 ]\($symcode$symcode*\)[	 ][	 ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
+    lt_cv_sys_global_symbol_pipe="$SED -n -e 's/^.*[	 ]\($symcode$symcode*\)[	 ][	 ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
   fi
-  lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'"
+  lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | $SED '/ __gnu_lto/d'"
 
   # Check to see that the pipe works correctly.
   pipe_works=no
@@ -7168,14 +8356,14 @@
   if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
     # Now try to grab the symbols.
     nlist=conftest.nm
     if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist\""; } >&5
   (eval $NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; } && test -s "$nlist"; then
       # Try sorting and uniquifying the output.
       if sort "$nlist" | uniq > "$nlist"T; then
@@ -7244,7 +8432,7 @@
 	  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; } && test -s conftest$ac_exeext; then
 	    pipe_works=yes
 	  fi
@@ -7279,11 +8467,11 @@
   lt_cv_sys_global_symbol_to_cdecl=
 fi
 if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: failed" >&5
-$as_echo "failed" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: failed" >&5
+printf "%s\n" "failed" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5
-$as_echo "ok" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: ok" >&5
+printf "%s\n" "ok" >&6; }
 fi
 
 # Response file support.
@@ -7329,13 +8517,14 @@
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5
-$as_echo_n "checking for sysroot... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5
+printf %s "checking for sysroot... " >&6; }
 
 # Check whether --with-sysroot was given.
-if test "${with_sysroot+set}" = set; then :
+if test ${with_sysroot+y}
+then :
   withval=$with_sysroot;
-else
+else $as_nop
   with_sysroot=no
 fi
 
@@ -7348,29 +8537,30 @@
    fi
    ;; #(
  /*)
-   lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
+   lt_sysroot=`echo "$with_sysroot" | $SED -e "$sed_quote_subst"`
    ;; #(
  no|'')
    ;; #(
  *)
-   { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_sysroot" >&5
-$as_echo "$with_sysroot" >&6; }
+   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $with_sysroot" >&5
+printf "%s\n" "$with_sysroot" >&6; }
    as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5
    ;;
 esac
 
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5
-$as_echo "${lt_sysroot:-no}" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5
+printf "%s\n" "${lt_sysroot:-no}" >&6; }
 
 
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a working dd" >&5
-$as_echo_n "checking for a working dd... " >&6; }
-if ${ac_cv_path_lt_DD+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a working dd" >&5
+printf %s "checking for a working dd... " >&6; }
+if test ${ac_cv_path_lt_DD+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   printf 0123456789abcdef0123456789abcdef >conftest.i
 cat conftest.i conftest.i >conftest2.i
 : ${lt_DD:=$DD}
@@ -7381,10 +8571,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_prog in dd; do
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    for ac_prog in dd
+   do
     for ac_exec_ext in '' $ac_executable_extensions; do
-      ac_path_lt_DD="$as_dir/$ac_prog$ac_exec_ext"
+      ac_path_lt_DD="$as_dir$ac_prog$ac_exec_ext"
       as_fn_executable_p "$ac_path_lt_DD" || continue
 if "$ac_path_lt_DD" bs=32 count=1 conftest.out 2>/dev/null; then
   cmp -s conftest.i conftest.out \
@@ -7404,15 +8599,16 @@
 
 rm -f conftest.i conftest2.i conftest.out
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_lt_DD" >&5
-$as_echo "$ac_cv_path_lt_DD" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_lt_DD" >&5
+printf "%s\n" "$ac_cv_path_lt_DD" >&6; }
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to truncate binary pipes" >&5
-$as_echo_n "checking how to truncate binary pipes... " >&6; }
-if ${lt_cv_truncate_bin+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to truncate binary pipes" >&5
+printf %s "checking how to truncate binary pipes... " >&6; }
+if test ${lt_cv_truncate_bin+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   printf 0123456789abcdef0123456789abcdef >conftest.i
 cat conftest.i conftest.i >conftest2.i
 lt_cv_truncate_bin=
@@ -7423,8 +8619,8 @@
 rm -f conftest.i conftest2.i conftest.out
 test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q"
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_truncate_bin" >&5
-$as_echo "$lt_cv_truncate_bin" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_truncate_bin" >&5
+printf "%s\n" "$lt_cv_truncate_bin" >&6; }
 
 
 
@@ -7447,7 +8643,8 @@
 }
 
 # Check whether --enable-libtool-lock was given.
-if test "${enable_libtool_lock+set}" = set; then :
+if test ${enable_libtool_lock+y}
+then :
   enableval=$enable_libtool_lock;
 fi
 
@@ -7463,9 +8660,9 @@
   if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-    case `/usr/bin/file conftest.$ac_objext` in
+    case `$FILECMD conftest.$ac_objext` in
       *ELF-32*)
 	HPUX_IA64_MODE=32
 	;;
@@ -7483,10 +8680,10 @@
   if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
     if test yes = "$lt_cv_prog_gnu_ld"; then
-      case `/usr/bin/file conftest.$ac_objext` in
+      case `$FILECMD conftest.$ac_objext` in
 	*32-bit*)
 	  LD="${LD-ld} -melf32bsmip"
 	  ;;
@@ -7498,7 +8695,7 @@
 	;;
       esac
     else
-      case `/usr/bin/file conftest.$ac_objext` in
+      case `$FILECMD conftest.$ac_objext` in
 	*32-bit*)
 	  LD="${LD-ld} -32"
 	  ;;
@@ -7521,10 +8718,10 @@
   if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
     emul=elf
-    case `/usr/bin/file conftest.$ac_objext` in
+    case `$FILECMD conftest.$ac_objext` in
       *32-bit*)
 	emul="${emul}32"
 	;;
@@ -7532,7 +8729,7 @@
 	emul="${emul}64"
 	;;
     esac
-    case `/usr/bin/file conftest.$ac_objext` in
+    case `$FILECMD conftest.$ac_objext` in
       *MSB*)
 	emul="${emul}btsmip"
 	;;
@@ -7540,7 +8737,7 @@
 	emul="${emul}ltsmip"
 	;;
     esac
-    case `/usr/bin/file conftest.$ac_objext` in
+    case `$FILECMD conftest.$ac_objext` in
       *N32*)
 	emul="${emul}n32"
 	;;
@@ -7562,16 +8759,16 @@
   if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-    case `/usr/bin/file conftest.o` in
+    case `$FILECMD conftest.o` in
       *32-bit*)
 	case $host in
 	  x86_64-*kfreebsd*-gnu)
 	    LD="${LD-ld} -m elf_i386_fbsd"
 	    ;;
 	  x86_64-*linux*)
-	    case `/usr/bin/file conftest.o` in
+	    case `$FILECMD conftest.o` in
 	      *x86-64*)
 		LD="${LD-ld} -m elf32_x86_64"
 		;;
@@ -7625,11 +8822,12 @@
   # On SCO OpenServer 5, we need -belf to get full-featured binaries.
   SAVE_CFLAGS=$CFLAGS
   CFLAGS="$CFLAGS -belf"
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5
-$as_echo_n "checking whether the C compiler needs -belf... " >&6; }
-if ${lt_cv_cc_needs_belf+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5
+printf %s "checking whether the C compiler needs -belf... " >&6; }
+if test ${lt_cv_cc_needs_belf+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_ext=c
 ac_cpp='$CPP $CPPFLAGS'
 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@@ -7640,19 +8838,20 @@
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   lt_cv_cc_needs_belf=yes
-else
+else $as_nop
   lt_cv_cc_needs_belf=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
      ac_ext=c
 ac_cpp='$CPP $CPPFLAGS'
@@ -7661,8 +8860,8 @@
 ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&5
-$as_echo "$lt_cv_cc_needs_belf" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&5
+printf "%s\n" "$lt_cv_cc_needs_belf" >&6; }
   if test yes != "$lt_cv_cc_needs_belf"; then
     # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
     CFLAGS=$SAVE_CFLAGS
@@ -7675,9 +8874,9 @@
   if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-    case `/usr/bin/file conftest.o` in
+    case `$FILECMD conftest.o` in
     *64-bit*)
       case $lt_cv_prog_gnu_ld in
       yes*)
@@ -7712,11 +8911,12 @@
 if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}mt", so it can be a program name with args.
 set dummy ${ac_tool_prefix}mt; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_MANIFEST_TOOL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_MANIFEST_TOOL+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$MANIFEST_TOOL"; then
   ac_cv_prog_MANIFEST_TOOL="$MANIFEST_TOOL" # Let the user override the test.
 else
@@ -7724,11 +8924,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_MANIFEST_TOOL="${ac_tool_prefix}mt"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -7739,11 +8943,11 @@
 fi
 MANIFEST_TOOL=$ac_cv_prog_MANIFEST_TOOL
 if test -n "$MANIFEST_TOOL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MANIFEST_TOOL" >&5
-$as_echo "$MANIFEST_TOOL" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MANIFEST_TOOL" >&5
+printf "%s\n" "$MANIFEST_TOOL" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -7752,11 +8956,12 @@
   ac_ct_MANIFEST_TOOL=$MANIFEST_TOOL
   # Extract the first word of "mt", so it can be a program name with args.
 set dummy mt; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_MANIFEST_TOOL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_MANIFEST_TOOL+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_MANIFEST_TOOL"; then
   ac_cv_prog_ac_ct_MANIFEST_TOOL="$ac_ct_MANIFEST_TOOL" # Let the user override the test.
 else
@@ -7764,11 +8969,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_MANIFEST_TOOL="mt"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -7779,11 +8988,11 @@
 fi
 ac_ct_MANIFEST_TOOL=$ac_cv_prog_ac_ct_MANIFEST_TOOL
 if test -n "$ac_ct_MANIFEST_TOOL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_MANIFEST_TOOL" >&5
-$as_echo "$ac_ct_MANIFEST_TOOL" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_MANIFEST_TOOL" >&5
+printf "%s\n" "$ac_ct_MANIFEST_TOOL" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_MANIFEST_TOOL" = x; then
@@ -7791,8 +9000,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     MANIFEST_TOOL=$ac_ct_MANIFEST_TOOL
@@ -7802,11 +9011,12 @@
 fi
 
 test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $MANIFEST_TOOL is a manifest tool" >&5
-$as_echo_n "checking if $MANIFEST_TOOL is a manifest tool... " >&6; }
-if ${lt_cv_path_mainfest_tool+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $MANIFEST_TOOL is a manifest tool" >&5
+printf %s "checking if $MANIFEST_TOOL is a manifest tool... " >&6; }
+if test ${lt_cv_path_mainfest_tool+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_path_mainfest_tool=no
   echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&5
   $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out
@@ -7816,8 +9026,8 @@
   fi
   rm -f conftest*
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_mainfest_tool" >&5
-$as_echo "$lt_cv_path_mainfest_tool" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_mainfest_tool" >&5
+printf "%s\n" "$lt_cv_path_mainfest_tool" >&6; }
 if test yes != "$lt_cv_path_mainfest_tool"; then
   MANIFEST_TOOL=:
 fi
@@ -7832,11 +9042,12 @@
     if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}dsymutil", so it can be a program name with args.
 set dummy ${ac_tool_prefix}dsymutil; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_DSYMUTIL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_DSYMUTIL+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$DSYMUTIL"; then
   ac_cv_prog_DSYMUTIL="$DSYMUTIL" # Let the user override the test.
 else
@@ -7844,11 +9055,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -7859,11 +9074,11 @@
 fi
 DSYMUTIL=$ac_cv_prog_DSYMUTIL
 if test -n "$DSYMUTIL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DSYMUTIL" >&5
-$as_echo "$DSYMUTIL" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $DSYMUTIL" >&5
+printf "%s\n" "$DSYMUTIL" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -7872,11 +9087,12 @@
   ac_ct_DSYMUTIL=$DSYMUTIL
   # Extract the first word of "dsymutil", so it can be a program name with args.
 set dummy dsymutil; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_DSYMUTIL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_DSYMUTIL+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_DSYMUTIL"; then
   ac_cv_prog_ac_ct_DSYMUTIL="$ac_ct_DSYMUTIL" # Let the user override the test.
 else
@@ -7884,11 +9100,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_DSYMUTIL="dsymutil"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -7899,11 +9119,11 @@
 fi
 ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL
 if test -n "$ac_ct_DSYMUTIL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DSYMUTIL" >&5
-$as_echo "$ac_ct_DSYMUTIL" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DSYMUTIL" >&5
+printf "%s\n" "$ac_ct_DSYMUTIL" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_DSYMUTIL" = x; then
@@ -7911,8 +9131,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     DSYMUTIL=$ac_ct_DSYMUTIL
@@ -7924,11 +9144,12 @@
     if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}nmedit", so it can be a program name with args.
 set dummy ${ac_tool_prefix}nmedit; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_NMEDIT+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_NMEDIT+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$NMEDIT"; then
   ac_cv_prog_NMEDIT="$NMEDIT" # Let the user override the test.
 else
@@ -7936,11 +9157,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -7951,11 +9176,11 @@
 fi
 NMEDIT=$ac_cv_prog_NMEDIT
 if test -n "$NMEDIT"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NMEDIT" >&5
-$as_echo "$NMEDIT" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $NMEDIT" >&5
+printf "%s\n" "$NMEDIT" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -7964,11 +9189,12 @@
   ac_ct_NMEDIT=$NMEDIT
   # Extract the first word of "nmedit", so it can be a program name with args.
 set dummy nmedit; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_NMEDIT+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_NMEDIT+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_NMEDIT"; then
   ac_cv_prog_ac_ct_NMEDIT="$ac_ct_NMEDIT" # Let the user override the test.
 else
@@ -7976,11 +9202,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_NMEDIT="nmedit"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -7991,11 +9221,11 @@
 fi
 ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT
 if test -n "$ac_ct_NMEDIT"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_NMEDIT" >&5
-$as_echo "$ac_ct_NMEDIT" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_NMEDIT" >&5
+printf "%s\n" "$ac_ct_NMEDIT" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_NMEDIT" = x; then
@@ -8003,8 +9233,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     NMEDIT=$ac_ct_NMEDIT
@@ -8016,11 +9246,12 @@
     if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}lipo", so it can be a program name with args.
 set dummy ${ac_tool_prefix}lipo; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_LIPO+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_LIPO+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$LIPO"; then
   ac_cv_prog_LIPO="$LIPO" # Let the user override the test.
 else
@@ -8028,11 +9259,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_LIPO="${ac_tool_prefix}lipo"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -8043,11 +9278,11 @@
 fi
 LIPO=$ac_cv_prog_LIPO
 if test -n "$LIPO"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIPO" >&5
-$as_echo "$LIPO" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $LIPO" >&5
+printf "%s\n" "$LIPO" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -8056,11 +9291,12 @@
   ac_ct_LIPO=$LIPO
   # Extract the first word of "lipo", so it can be a program name with args.
 set dummy lipo; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_LIPO+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_LIPO+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_LIPO"; then
   ac_cv_prog_ac_ct_LIPO="$ac_ct_LIPO" # Let the user override the test.
 else
@@ -8068,11 +9304,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_LIPO="lipo"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -8083,11 +9323,11 @@
 fi
 ac_ct_LIPO=$ac_cv_prog_ac_ct_LIPO
 if test -n "$ac_ct_LIPO"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LIPO" >&5
-$as_echo "$ac_ct_LIPO" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LIPO" >&5
+printf "%s\n" "$ac_ct_LIPO" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_LIPO" = x; then
@@ -8095,8 +9335,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     LIPO=$ac_ct_LIPO
@@ -8108,11 +9348,12 @@
     if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}otool", so it can be a program name with args.
 set dummy ${ac_tool_prefix}otool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_OTOOL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_OTOOL+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$OTOOL"; then
   ac_cv_prog_OTOOL="$OTOOL" # Let the user override the test.
 else
@@ -8120,11 +9361,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_OTOOL="${ac_tool_prefix}otool"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -8135,11 +9380,11 @@
 fi
 OTOOL=$ac_cv_prog_OTOOL
 if test -n "$OTOOL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL" >&5
-$as_echo "$OTOOL" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OTOOL" >&5
+printf "%s\n" "$OTOOL" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -8148,11 +9393,12 @@
   ac_ct_OTOOL=$OTOOL
   # Extract the first word of "otool", so it can be a program name with args.
 set dummy otool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_OTOOL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_OTOOL+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_OTOOL"; then
   ac_cv_prog_ac_ct_OTOOL="$ac_ct_OTOOL" # Let the user override the test.
 else
@@ -8160,11 +9406,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_OTOOL="otool"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -8175,11 +9425,11 @@
 fi
 ac_ct_OTOOL=$ac_cv_prog_ac_ct_OTOOL
 if test -n "$ac_ct_OTOOL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL" >&5
-$as_echo "$ac_ct_OTOOL" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL" >&5
+printf "%s\n" "$ac_ct_OTOOL" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_OTOOL" = x; then
@@ -8187,8 +9437,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     OTOOL=$ac_ct_OTOOL
@@ -8200,11 +9450,12 @@
     if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}otool64", so it can be a program name with args.
 set dummy ${ac_tool_prefix}otool64; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_OTOOL64+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_OTOOL64+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$OTOOL64"; then
   ac_cv_prog_OTOOL64="$OTOOL64" # Let the user override the test.
 else
@@ -8212,11 +9463,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -8227,11 +9482,11 @@
 fi
 OTOOL64=$ac_cv_prog_OTOOL64
 if test -n "$OTOOL64"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL64" >&5
-$as_echo "$OTOOL64" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OTOOL64" >&5
+printf "%s\n" "$OTOOL64" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -8240,11 +9495,12 @@
   ac_ct_OTOOL64=$OTOOL64
   # Extract the first word of "otool64", so it can be a program name with args.
 set dummy otool64; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_OTOOL64+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_OTOOL64+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_OTOOL64"; then
   ac_cv_prog_ac_ct_OTOOL64="$ac_ct_OTOOL64" # Let the user override the test.
 else
@@ -8252,11 +9508,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_OTOOL64="otool64"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -8267,11 +9527,11 @@
 fi
 ac_ct_OTOOL64=$ac_cv_prog_ac_ct_OTOOL64
 if test -n "$ac_ct_OTOOL64"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL64" >&5
-$as_echo "$ac_ct_OTOOL64" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL64" >&5
+printf "%s\n" "$ac_ct_OTOOL64" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_OTOOL64" = x; then
@@ -8279,8 +9539,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     OTOOL64=$ac_ct_OTOOL64
@@ -8315,11 +9575,12 @@
 
 
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -single_module linker flag" >&5
-$as_echo_n "checking for -single_module linker flag... " >&6; }
-if ${lt_cv_apple_cc_single_mod+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for -single_module linker flag" >&5
+printf %s "checking for -single_module linker flag... " >&6; }
+if test ${lt_cv_apple_cc_single_mod+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_apple_cc_single_mod=no
       if test -z "$LT_MULTI_MODULE"; then
 	# By default we will add the -single_module flag. You can override
@@ -8348,14 +9609,15 @@
 	rm -f conftest.*
       fi
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_apple_cc_single_mod" >&5
-$as_echo "$lt_cv_apple_cc_single_mod" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_apple_cc_single_mod" >&5
+printf "%s\n" "$lt_cv_apple_cc_single_mod" >&6; }
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -exported_symbols_list linker flag" >&5
-$as_echo_n "checking for -exported_symbols_list linker flag... " >&6; }
-if ${lt_cv_ld_exported_symbols_list+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for -exported_symbols_list linker flag" >&5
+printf %s "checking for -exported_symbols_list linker flag... " >&6; }
+if test ${lt_cv_ld_exported_symbols_list+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_ld_exported_symbols_list=no
       save_LDFLAGS=$LDFLAGS
       echo "_main" > conftest.sym
@@ -8364,39 +9626,41 @@
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   lt_cv_ld_exported_symbols_list=yes
-else
+else $as_nop
   lt_cv_ld_exported_symbols_list=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 	LDFLAGS=$save_LDFLAGS
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&5
-$as_echo "$lt_cv_ld_exported_symbols_list" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&5
+printf "%s\n" "$lt_cv_ld_exported_symbols_list" >&6; }
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -force_load linker flag" >&5
-$as_echo_n "checking for -force_load linker flag... " >&6; }
-if ${lt_cv_ld_force_load+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for -force_load linker flag" >&5
+printf %s "checking for -force_load linker flag... " >&6; }
+if test ${lt_cv_ld_force_load+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_ld_force_load=no
       cat > conftest.c << _LT_EOF
 int forced_loaded() { return 2;}
 _LT_EOF
       echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&5
       $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5
-      echo "$AR cru libconftest.a conftest.o" >&5
-      $AR cru libconftest.a conftest.o 2>&5
+      echo "$AR $AR_FLAGS libconftest.a conftest.o" >&5
+      $AR $AR_FLAGS libconftest.a conftest.o 2>&5
       echo "$RANLIB libconftest.a" >&5
       $RANLIB libconftest.a 2>&5
       cat > conftest.c << _LT_EOF
@@ -8416,24 +9680,19 @@
         rm -rf conftest.dSYM
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_force_load" >&5
-$as_echo "$lt_cv_ld_force_load" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_force_load" >&5
+printf "%s\n" "$lt_cv_ld_force_load" >&6; }
     case $host_os in
     rhapsody* | darwin1.[012])
       _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;;
     darwin1.*)
       _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
-    darwin*) # darwin 5.x on
-      # if running on 10.5 or later, the deployment target defaults
-      # to the OS version, if on x86, and 10.4, the deployment
-      # target defaults to 10.4. Don't you love it?
-      case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
-	10.0,*86*-darwin8*|10.0,*-darwin[91]*)
-	  _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
-	10.[012][,.]*)
-	  _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
-	10.*)
-	  _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
+    darwin*)
+      case $MACOSX_DEPLOYMENT_TARGET,$host in
+        10.[012],*|,*powerpc*-darwin[5-8]*)
+          _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
+        *)
+          _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
       esac
     ;;
   esac
@@ -8488,286 +9747,43 @@
     esac
 }
 
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5
-$as_echo_n "checking how to run the C preprocessor... " >&6; }
-# On Suns, sometimes $CPP names a directory.
-if test -n "$CPP" && test -d "$CPP"; then
-  CPP=
-fi
-if test -z "$CPP"; then
-  if ${ac_cv_prog_CPP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-      # Double quotes because CPP needs to be expanded
-    for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
-    do
-      ac_preproc_ok=false
-for ac_c_preproc_warn_flag in '' yes
+ac_header= ac_cache=
+for ac_item in $ac_header_c_list
 do
-  # Use a header file that comes with gcc, so configuring glibc
-  # with a fresh cross-compiler works.
-  # Prefer  to  if __STDC__ is defined, since
-  #  exists even on freestanding compilers.
-  # On the NeXT, cc -E runs the code through the compiler's parser,
-  # not just through cpp. "Syntax error" is here to catch this case.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#ifdef __STDC__
-# include 
-#else
-# include 
-#endif
-		     Syntax error
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-else
-  # Broken: fails on valid input.
-continue
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-  # OK, works on sane cases.  Now check whether nonexistent headers
-  # can be detected and how.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include 
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-  # Broken: success on invalid input.
-continue
-else
-  # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
+  if test $ac_cache; then
+    ac_fn_c_check_header_compile "$LINENO" $ac_header ac_cv_header_$ac_cache "$ac_includes_default"
+    if eval test \"x\$ac_cv_header_$ac_cache\" = xyes; then
+      printf "%s\n" "#define $ac_item 1" >> confdefs.h
+    fi
+    ac_header= ac_cache=
+  elif test $ac_header; then
+    ac_cache=$ac_item
+  else
+    ac_header=$ac_item
+  fi
 done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
-  break
-fi
 
-    done
-    ac_cv_prog_CPP=$CPP
 
-fi
-  CPP=$ac_cv_prog_CPP
-else
-  ac_cv_prog_CPP=$CPP
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5
-$as_echo "$CPP" >&6; }
-ac_preproc_ok=false
-for ac_c_preproc_warn_flag in '' yes
-do
-  # Use a header file that comes with gcc, so configuring glibc
-  # with a fresh cross-compiler works.
-  # Prefer  to  if __STDC__ is defined, since
-  #  exists even on freestanding compilers.
-  # On the NeXT, cc -E runs the code through the compiler's parser,
-  # not just through cpp. "Syntax error" is here to catch this case.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#ifdef __STDC__
-# include 
-#else
-# include 
-#endif
-		     Syntax error
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
 
-else
-  # Broken: fails on valid input.
-continue
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
 
-  # OK, works on sane cases.  Now check whether nonexistent headers
-  # can be detected and how.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include 
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-  # Broken: success on invalid input.
-continue
-else
-  # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
 
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
 
-else
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "C preprocessor \"$CPP\" fails sanity check
-See \`config.log' for more details" "$LINENO" 5; }
-fi
 
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
+if test $ac_cv_header_stdlib_h = yes && test $ac_cv_header_string_h = yes
+then :
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
-$as_echo_n "checking for ANSI C header files... " >&6; }
-if ${ac_cv_header_stdc+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include 
-#include 
-#include 
-#include 
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_header_stdc=yes
-else
-  ac_cv_header_stdc=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-if test $ac_cv_header_stdc = yes; then
-  # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include 
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "memchr" >/dev/null 2>&1; then :
-
-else
-  ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
-  # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include 
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "free" >/dev/null 2>&1; then :
-
-else
-  ac_cv_header_stdc=no
-fi
-rm -f conftest*
+printf "%s\n" "#define STDC_HEADERS 1" >>confdefs.h
 
 fi
-
-if test $ac_cv_header_stdc = yes; then
-  # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
-  if test "$cross_compiling" = yes; then :
-  :
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include 
-#include 
-#if ((' ' & 0x0FF) == 0x020)
-# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
-# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
-#else
-# define ISLOWER(c) \
-		   (('a' <= (c) && (c) <= 'i') \
-		     || ('j' <= (c) && (c) <= 'r') \
-		     || ('s' <= (c) && (c) <= 'z'))
-# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
-#endif
-
-#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
-int
-main ()
-{
-  int i;
-  for (i = 0; i < 256; i++)
-    if (XOR (islower (i), ISLOWER (i))
-	|| toupper (i) != TOUPPER (i))
-      return 2;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-else
-  ac_cv_header_stdc=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5
-$as_echo "$ac_cv_header_stdc" >&6; }
-if test $ac_cv_header_stdc = yes; then
-
-$as_echo "#define STDC_HEADERS 1" >>confdefs.h
-
-fi
-
-# On IRIX 5.3, sys/types and inttypes.h are conflicting.
-for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
-		  inttypes.h stdint.h unistd.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default
+ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default
 "
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
+if test "x$ac_cv_header_dlfcn_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_DLFCN_H 1" >>confdefs.h
 
 fi
 
-done
-
-
-for ac_header in dlfcn.h
-do :
-  ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default
-"
-if test "x$ac_cv_header_dlfcn_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_DLFCN_H 1
-_ACEOF
-
-fi
-
-done
-
 
 
 
@@ -8785,7 +9801,8 @@
 
 # Set options
 # Check whether --enable-static was given.
-if test "${enable_static+set}" = set; then :
+if test ${enable_static+y}
+then :
   enableval=$enable_static; p=${PACKAGE-default}
     case $enableval in
     yes) enable_static=yes ;;
@@ -8803,7 +9820,7 @@
       IFS=$lt_save_ifs
       ;;
     esac
-else
+else $as_nop
   enable_static=no
 fi
 
@@ -8823,7 +9840,8 @@
 
 
             # Check whether --enable-shared was given.
-if test "${enable_shared+set}" = set; then :
+if test ${enable_shared+y}
+then :
   enableval=$enable_shared; p=${PACKAGE-default}
     case $enableval in
     yes) enable_shared=yes ;;
@@ -8841,7 +9859,7 @@
       IFS=$lt_save_ifs
       ;;
     esac
-else
+else $as_nop
   enable_shared=yes
 fi
 
@@ -8856,7 +9874,8 @@
 
 
 # Check whether --with-pic was given.
-if test "${with_pic+set}" = set; then :
+if test ${with_pic+y}
+then :
   withval=$with_pic; lt_p=${PACKAGE-default}
     case $withval in
     yes|no) pic_mode=$withval ;;
@@ -8873,7 +9892,7 @@
       IFS=$lt_save_ifs
       ;;
     esac
-else
+else $as_nop
   pic_mode=default
 fi
 
@@ -8885,7 +9904,8 @@
 
 
   # Check whether --enable-fast-install was given.
-if test "${enable_fast_install+set}" = set; then :
+if test ${enable_fast_install+y}
+then :
   enableval=$enable_fast_install; p=${PACKAGE-default}
     case $enableval in
     yes) enable_fast_install=yes ;;
@@ -8903,7 +9923,7 @@
       IFS=$lt_save_ifs
       ;;
     esac
-else
+else $as_nop
   enable_fast_install=yes
 fi
 
@@ -8917,11 +9937,12 @@
   shared_archive_member_spec=
 case $host,$enable_shared in
 power*-*-aix[5-9]*,yes)
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking which variant of shared library versioning to provide" >&5
-$as_echo_n "checking which variant of shared library versioning to provide... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking which variant of shared library versioning to provide" >&5
+printf %s "checking which variant of shared library versioning to provide... " >&6; }
 
 # Check whether --with-aix-soname was given.
-if test "${with_aix_soname+set}" = set; then :
+if test ${with_aix_soname+y}
+then :
   withval=$with_aix_soname; case $withval in
     aix|svr4|both)
       ;;
@@ -8930,18 +9951,19 @@
       ;;
     esac
     lt_cv_with_aix_soname=$with_aix_soname
-else
-  if ${lt_cv_with_aix_soname+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+else $as_nop
+  if test ${lt_cv_with_aix_soname+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_with_aix_soname=aix
 fi
 
     with_aix_soname=$lt_cv_with_aix_soname
 fi
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_aix_soname" >&5
-$as_echo "$with_aix_soname" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $with_aix_soname" >&5
+printf "%s\n" "$with_aix_soname" >&6; }
   if test aix != "$with_aix_soname"; then
     # For the AIX way of multilib, we name the shared archive member
     # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o',
@@ -9023,11 +10045,12 @@
    setopt NO_GLOB_SUBST
 fi
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5
-$as_echo_n "checking for objdir... " >&6; }
-if ${lt_cv_objdir+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5
+printf %s "checking for objdir... " >&6; }
+if test ${lt_cv_objdir+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   rm -f .libs 2>/dev/null
 mkdir .libs 2>/dev/null
 if test -d .libs; then
@@ -9038,17 +10061,15 @@
 fi
 rmdir .libs 2>/dev/null
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_objdir" >&5
-$as_echo "$lt_cv_objdir" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_objdir" >&5
+printf "%s\n" "$lt_cv_objdir" >&6; }
 objdir=$lt_cv_objdir
 
 
 
 
 
-cat >>confdefs.h <<_ACEOF
-#define LT_OBJDIR "$lt_cv_objdir/"
-_ACEOF
+printf "%s\n" "#define LT_OBJDIR \"$lt_cv_objdir/\"" >>confdefs.h
 
 
 
@@ -9069,8 +10090,8 @@
 ofile=libtool
 can_build_shared=yes
 
-# All known linkers require a '.a' archive for static linking (except MSVC,
-# which needs '.lib').
+# All known linkers require a '.a' archive for static linking (except MSVC and
+# ICC, which need '.lib').
 libext=a
 
 with_gnu_ld=$lt_cv_prog_gnu_ld
@@ -9094,11 +10115,12 @@
 case $deplibs_check_method in
 file_magic*)
   if test "$file_magic_cmd" = '$MAGIC_CMD'; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${ac_tool_prefix}file" >&5
-$as_echo_n "checking for ${ac_tool_prefix}file... " >&6; }
-if ${lt_cv_path_MAGIC_CMD+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ac_tool_prefix}file" >&5
+printf %s "checking for ${ac_tool_prefix}file... " >&6; }
+if test ${lt_cv_path_MAGIC_CMD+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $MAGIC_CMD in
 [\\/*] |  ?:[\\/]*)
   lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.
@@ -9147,11 +10169,11 @@
 
 MAGIC_CMD=$lt_cv_path_MAGIC_CMD
 if test -n "$MAGIC_CMD"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
-$as_echo "$MAGIC_CMD" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
+printf "%s\n" "$MAGIC_CMD" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -9160,11 +10182,12 @@
 
 if test -z "$lt_cv_path_MAGIC_CMD"; then
   if test -n "$ac_tool_prefix"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for file" >&5
-$as_echo_n "checking for file... " >&6; }
-if ${lt_cv_path_MAGIC_CMD+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for file" >&5
+printf %s "checking for file... " >&6; }
+if test ${lt_cv_path_MAGIC_CMD+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $MAGIC_CMD in
 [\\/*] |  ?:[\\/]*)
   lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.
@@ -9213,11 +10236,11 @@
 
 MAGIC_CMD=$lt_cv_path_MAGIC_CMD
 if test -n "$MAGIC_CMD"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
-$as_echo "$MAGIC_CMD" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
+printf "%s\n" "$MAGIC_CMD" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -9302,11 +10325,12 @@
     lt_prog_compiler_no_builtin_flag=' -fno-builtin' ;;
   esac
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&5
-$as_echo_n "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; }
-if ${lt_cv_prog_compiler_rtti_exceptions+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&5
+printf %s "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; }
+if test ${lt_cv_prog_compiler_rtti_exceptions+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_prog_compiler_rtti_exceptions=no
    ac_outfile=conftest.$ac_objext
    echo "$lt_simple_compile_test_code" > conftest.$ac_ext
@@ -9337,8 +10361,8 @@
    $RM conftest*
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5
-$as_echo "$lt_cv_prog_compiler_rtti_exceptions" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5
+printf "%s\n" "$lt_cv_prog_compiler_rtti_exceptions" >&6; }
 
 if test yes = "$lt_cv_prog_compiler_rtti_exceptions"; then
     lt_prog_compiler_no_builtin_flag="$lt_prog_compiler_no_builtin_flag -fno-rtti -fno-exceptions"
@@ -9579,7 +10603,7 @@
 	lt_prog_compiler_static='-qstaticlink'
 	;;
       *)
-	case `$CC -V 2>&1 | sed 5q` in
+	case `$CC -V 2>&1 | $SED 5q` in
 	*Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [1-7].* | *Sun*Fortran*\ 8.[0-3]*)
 	  # Sun Fortran 8.3 passes all unrecognized flags to the linker
 	  lt_prog_compiler_pic='-KPIC'
@@ -9695,26 +10719,28 @@
     ;;
 esac
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5
-$as_echo_n "checking for $compiler option to produce PIC... " >&6; }
-if ${lt_cv_prog_compiler_pic+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5
+printf %s "checking for $compiler option to produce PIC... " >&6; }
+if test ${lt_cv_prog_compiler_pic+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_prog_compiler_pic=$lt_prog_compiler_pic
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic" >&5
-$as_echo "$lt_cv_prog_compiler_pic" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic" >&5
+printf "%s\n" "$lt_cv_prog_compiler_pic" >&6; }
 lt_prog_compiler_pic=$lt_cv_prog_compiler_pic
 
 #
 # Check to make sure the PIC flag actually works.
 #
 if test -n "$lt_prog_compiler_pic"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5
-$as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; }
-if ${lt_cv_prog_compiler_pic_works+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5
+printf %s "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; }
+if test ${lt_cv_prog_compiler_pic_works+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_prog_compiler_pic_works=no
    ac_outfile=conftest.$ac_objext
    echo "$lt_simple_compile_test_code" > conftest.$ac_ext
@@ -9745,8 +10771,8 @@
    $RM conftest*
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&5
-$as_echo "$lt_cv_prog_compiler_pic_works" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&5
+printf "%s\n" "$lt_cv_prog_compiler_pic_works" >&6; }
 
 if test yes = "$lt_cv_prog_compiler_pic_works"; then
     case $lt_prog_compiler_pic in
@@ -9774,11 +10800,12 @@
 # Check to make sure the static flag actually works.
 #
 wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5
-$as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; }
-if ${lt_cv_prog_compiler_static_works+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5
+printf %s "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; }
+if test ${lt_cv_prog_compiler_static_works+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_prog_compiler_static_works=no
    save_LDFLAGS=$LDFLAGS
    LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
@@ -9802,8 +10829,8 @@
    LDFLAGS=$save_LDFLAGS
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&5
-$as_echo "$lt_cv_prog_compiler_static_works" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&5
+printf "%s\n" "$lt_cv_prog_compiler_static_works" >&6; }
 
 if test yes = "$lt_cv_prog_compiler_static_works"; then
     :
@@ -9817,11 +10844,12 @@
 
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
-$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
-if ${lt_cv_prog_compiler_c_o+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
+printf %s "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
+if test ${lt_cv_prog_compiler_c_o+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_prog_compiler_c_o=no
    $RM -r conftest 2>/dev/null
    mkdir conftest
@@ -9864,19 +10892,20 @@
    $RM conftest*
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5
-$as_echo "$lt_cv_prog_compiler_c_o" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5
+printf "%s\n" "$lt_cv_prog_compiler_c_o" >&6; }
 
 
 
 
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
-$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
-if ${lt_cv_prog_compiler_c_o+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
+printf %s "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
+if test ${lt_cv_prog_compiler_c_o+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_prog_compiler_c_o=no
    $RM -r conftest 2>/dev/null
    mkdir conftest
@@ -9919,8 +10948,8 @@
    $RM conftest*
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5
-$as_echo "$lt_cv_prog_compiler_c_o" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5
+printf "%s\n" "$lt_cv_prog_compiler_c_o" >&6; }
 
 
 
@@ -9928,19 +10957,19 @@
 hard_links=nottested
 if test no = "$lt_cv_prog_compiler_c_o" && test no != "$need_locks"; then
   # do not overwrite the value of need_locks provided by the user
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5
-$as_echo_n "checking if we can lock with hard links... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5
+printf %s "checking if we can lock with hard links... " >&6; }
   hard_links=yes
   $RM conftest*
   ln conftest.a conftest.b 2>/dev/null && hard_links=no
   touch conftest.a
   ln conftest.a conftest.b 2>&5 || hard_links=no
   ln conftest.a conftest.b 2>/dev/null && hard_links=no
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5
-$as_echo "$hard_links" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5
+printf "%s\n" "$hard_links" >&6; }
   if test no = "$hard_links"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&5
-$as_echo "$as_me: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&2;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&5
+printf "%s\n" "$as_me: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&2;}
     need_locks=warn
   fi
 else
@@ -9952,8 +10981,8 @@
 
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5
-$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5
+printf %s "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
 
   runpath_var=
   allow_undefined_flag=
@@ -9997,15 +11026,15 @@
 
   case $host_os in
   cygwin* | mingw* | pw32* | cegcc*)
-    # FIXME: the MSVC++ port hasn't been tested in a loooong time
+    # FIXME: the MSVC++ and ICC port hasn't been tested in a loooong time
     # When not using gcc, we currently assume that we are using
-    # Microsoft Visual C++.
+    # Microsoft Visual C++ or Intel C++ Compiler.
     if test yes != "$GCC"; then
       with_gnu_ld=no
     fi
     ;;
   interix*)
-    # we just hope/assume this is gcc and not c89 (= MSVC++)
+    # we just hope/assume this is gcc and not c89 (= MSVC++ or ICC)
     with_gnu_ld=yes
     ;;
   openbsd* | bitrig*)
@@ -10057,7 +11086,7 @@
       whole_archive_flag_spec=
     fi
     supports_anon_versioning=no
-    case `$LD -v | $SED -e 's/(^)\+)\s\+//' 2>&1` in
+    case `$LD -v | $SED -e 's/([^)]\+)\s\+//' 2>&1` in
       *GNU\ gold*) supports_anon_versioning=yes ;;
       *\ [01].* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.11
       *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
@@ -10169,6 +11198,7 @@
 	emximp -o $lib $output_objdir/$libname.def'
       old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
       enable_shared_with_static_runtimes=yes
+      file_list_spec='@'
       ;;
 
     interix[3-9]*)
@@ -10183,7 +11213,7 @@
       # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
       # time.  Moving up from 0x10000000 also allows more sbrk(2) space.
       archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
-      archive_expsym_cmds='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+      archive_expsym_cmds='$SED "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
       ;;
 
     gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
@@ -10226,7 +11256,7 @@
 	  compiler_needs_object=yes
 	  ;;
 	esac
-	case `$CC -V 2>&1 | sed 5q` in
+	case `$CC -V 2>&1 | $SED 5q` in
 	*Sun\ C*)			# Sun C 5.9
 	  whole_archive_flag_spec='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
 	  compiler_needs_object=yes
@@ -10238,7 +11268,7 @@
 
         if test yes = "$supports_anon_versioning"; then
           archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
-            cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+            cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
             echo "local: *; };" >> $output_objdir/$libname.ver~
             $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
         fi
@@ -10254,7 +11284,7 @@
 	  archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
 	  if test yes = "$supports_anon_versioning"; then
 	    archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
-              cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+              cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
               echo "local: *; };" >> $output_objdir/$libname.ver~
               $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
 	  fi
@@ -10386,7 +11416,7 @@
 	if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
 	  export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && (substr(\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols'
 	else
-	  export_symbols_cmds='`func_echo_all $NM | $SED -e '\''s/B\([^B]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && (substr(\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols'
+	  export_symbols_cmds='`func_echo_all $NM | $SED -e '\''s/B\([^B]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "L") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && (substr(\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols'
 	fi
 	aix_use_runtimelinking=no
 
@@ -10508,21 +11538,23 @@
         if test set = "${lt_cv_aix_libpath+set}"; then
   aix_libpath=$lt_cv_aix_libpath
 else
-  if ${lt_cv_aix_libpath_+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  if test ${lt_cv_aix_libpath_+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
   lt_aix_libpath_sed='
       /Import File Strings/,/^$/ {
@@ -10537,7 +11569,7 @@
     lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
   fi
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   if test -z "$lt_cv_aix_libpath_"; then
     lt_cv_aix_libpath_=/usr/lib:/lib
@@ -10561,21 +11593,23 @@
 	 if test set = "${lt_cv_aix_libpath+set}"; then
   aix_libpath=$lt_cv_aix_libpath
 else
-  if ${lt_cv_aix_libpath_+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  if test ${lt_cv_aix_libpath_+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
   lt_aix_libpath_sed='
       /Import File Strings/,/^$/ {
@@ -10590,7 +11624,7 @@
     lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
   fi
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   if test -z "$lt_cv_aix_libpath_"; then
     lt_cv_aix_libpath_=/usr/lib:/lib
@@ -10653,12 +11687,12 @@
 
     cygwin* | mingw* | pw32* | cegcc*)
       # When not using gcc, we currently assume that we are using
-      # Microsoft Visual C++.
+      # Microsoft Visual C++ or Intel C++ Compiler.
       # hardcode_libdir_flag_spec is actually meaningless, as there is
       # no search path for DLLs.
       case $cc_basename in
-      cl*)
-	# Native MSVC
+      cl* | icl*)
+	# Native MSVC or ICC
 	hardcode_libdir_flag_spec=' '
 	allow_undefined_flag=unsupported
 	always_export_symbols=yes
@@ -10699,7 +11733,7 @@
           fi'
 	;;
       *)
-	# Assume MSVC wrapper
+	# Assume MSVC and ICC wrapper
 	hardcode_libdir_flag_spec=' '
 	allow_undefined_flag=unsupported
 	# Tell ltmain to make .lib files, not .a files.
@@ -10740,8 +11774,8 @@
     output_verbose_link_cmd=func_echo_all
     archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil"
     module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil"
-    archive_expsym_cmds="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil"
-    module_expsym_cmds="sed -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil"
+    archive_expsym_cmds="$SED 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil"
+    module_expsym_cmds="$SED -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil"
 
   else
   ld_shlibs=no
@@ -10775,7 +11809,7 @@
       ;;
 
     # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
-    freebsd* | dragonfly*)
+    freebsd* | dragonfly* | midnightbsd*)
       archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
       hardcode_libdir_flag_spec='-R$libdir'
       hardcode_direct=yes
@@ -10841,11 +11875,12 @@
 
 	  # Older versions of the 11.00 compiler do not understand -b yet
 	  # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)
-	  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC understands -b" >&5
-$as_echo_n "checking if $CC understands -b... " >&6; }
-if ${lt_cv_prog_compiler__b+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+	  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $CC understands -b" >&5
+printf %s "checking if $CC understands -b... " >&6; }
+if test ${lt_cv_prog_compiler__b+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_prog_compiler__b=no
    save_LDFLAGS=$LDFLAGS
    LDFLAGS="$LDFLAGS -b"
@@ -10869,8 +11904,8 @@
    LDFLAGS=$save_LDFLAGS
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler__b" >&5
-$as_echo "$lt_cv_prog_compiler__b" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler__b" >&5
+printf "%s\n" "$lt_cv_prog_compiler__b" >&6; }
 
 if test yes = "$lt_cv_prog_compiler__b"; then
     archive_cmds='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
@@ -10910,28 +11945,30 @@
 	# work, assume that -exports_file does not work either and
 	# implicitly export all symbols.
 	# This should be the same for all languages, so no per-tag cache variable.
-	{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $host_os linker accepts -exported_symbol" >&5
-$as_echo_n "checking whether the $host_os linker accepts -exported_symbol... " >&6; }
-if ${lt_cv_irix_exported_symbol+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the $host_os linker accepts -exported_symbol" >&5
+printf %s "checking whether the $host_os linker accepts -exported_symbol... " >&6; }
+if test ${lt_cv_irix_exported_symbol+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   save_LDFLAGS=$LDFLAGS
 	   LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null"
 	   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 int foo (void) { return 0; }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   lt_cv_irix_exported_symbol=yes
-else
+else $as_nop
   lt_cv_irix_exported_symbol=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
            LDFLAGS=$save_LDFLAGS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_irix_exported_symbol" >&5
-$as_echo "$lt_cv_irix_exported_symbol" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_irix_exported_symbol" >&5
+printf "%s\n" "$lt_cv_irix_exported_symbol" >&6; }
 	if test yes = "$lt_cv_irix_exported_symbol"; then
           archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations $wl-exports_file $wl$export_symbols -o $lib'
 	fi
@@ -11023,6 +12060,7 @@
 	emximp -o $lib $output_objdir/$libname.def'
       old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
       enable_shared_with_static_runtimes=yes
+      file_list_spec='@'
       ;;
 
     osf3*)
@@ -11211,8 +12249,8 @@
     fi
   fi
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&5
-$as_echo "$ld_shlibs" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&5
+printf "%s\n" "$ld_shlibs" >&6; }
 test no = "$ld_shlibs" && can_build_shared=no
 
 with_gnu_ld=$with_gnu_ld
@@ -11248,18 +12286,19 @@
       # Test whether the compiler implicitly links with -lc since on some
       # systems, -lgcc has to come before -lc. If gcc already passes -lc
       # to ld, don't add -lc before -lgcc.
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5
-$as_echo_n "checking whether -lc should be explicitly linked in... " >&6; }
-if ${lt_cv_archive_cmds_need_lc+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5
+printf %s "checking whether -lc should be explicitly linked in... " >&6; }
+if test ${lt_cv_archive_cmds_need_lc+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   $RM conftest*
 	echo "$lt_simple_compile_test_code" > conftest.$ac_ext
 
 	if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; } 2>conftest.err; then
 	  soname=conftest
 	  lib=conftest
@@ -11277,7 +12316,7 @@
 	  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5
   (eval $archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }
 	  then
 	    lt_cv_archive_cmds_need_lc=no
@@ -11291,8 +12330,8 @@
 	$RM conftest*
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc" >&5
-$as_echo "$lt_cv_archive_cmds_need_lc" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc" >&5
+printf "%s\n" "$lt_cv_archive_cmds_need_lc" >&6; }
       archive_cmds_need_lc=$lt_cv_archive_cmds_need_lc
       ;;
     esac
@@ -11451,8 +12490,8 @@
 
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5
-$as_echo_n "checking dynamic linker characteristics... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5
+printf %s "checking dynamic linker characteristics... " >&6; }
 
 if test yes = "$GCC"; then
   case $host_os in
@@ -11714,7 +12753,7 @@
     case $host_os in
     cygwin*)
       # Cygwin DLLs use 'cyg' prefix rather than 'lib'
-      soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
+      soname_spec='`echo $libname | $SED -e 's/^lib/cyg/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
 
       sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"
       ;;
@@ -11724,14 +12763,14 @@
       ;;
     pw32*)
       # pw32 DLLs use 'pw' prefix rather than 'lib'
-      library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
+      library_names_spec='`echo $libname | $SED -e 's/^lib/pw/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
       ;;
     esac
     dynamic_linker='Win32 ld.exe'
     ;;
 
-  *,cl*)
-    # Native MSVC
+  *,cl* | *,icl*)
+    # Native MSVC or ICC
     libname_spec='$name'
     soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
     library_names_spec='$libname.dll.lib'
@@ -11750,7 +12789,7 @@
       done
       IFS=$lt_save_ifs
       # Convert to MSYS style.
-      sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'`
+      sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'`
       ;;
     cygwin*)
       # Convert to unix form, then to dos form, then back to unix form
@@ -11787,7 +12826,7 @@
     ;;
 
   *)
-    # Assume MSVC wrapper
+    # Assume MSVC and ICC wrapper
     library_names_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext $libname.lib'
     dynamic_linker='Win32 ld.exe'
     ;;
@@ -11820,7 +12859,7 @@
   shlibpath_var=LD_LIBRARY_PATH
   ;;
 
-freebsd* | dragonfly*)
+freebsd* | dragonfly* | midnightbsd*)
   # DragonFly does not have aout.  When/if they implement a new
   # versioning mechanism, adjust this.
   if test -x /usr/bin/objformat; then
@@ -12013,9 +13052,10 @@
   shlibpath_overrides_runpath=no
 
   # Some binutils ld are patched to set DT_RUNPATH
-  if ${lt_cv_shlibpath_overrides_runpath+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  if test ${lt_cv_shlibpath_overrides_runpath+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_shlibpath_overrides_runpath=no
     save_LDFLAGS=$LDFLAGS
     save_libdir=$libdir
@@ -12025,19 +13065,21 @@
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  if  ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then :
+if ac_fn_c_try_link "$LINENO"
+then :
+  if  ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null
+then :
   lt_cv_shlibpath_overrides_runpath=yes
 fi
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
     LDFLAGS=$save_LDFLAGS
     libdir=$save_libdir
@@ -12272,8 +13314,8 @@
   dynamic_linker=no
   ;;
 esac
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5
-$as_echo "$dynamic_linker" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5
+printf "%s\n" "$dynamic_linker" >&6; }
 test no = "$dynamic_linker" && can_build_shared=no
 
 variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
@@ -12394,8 +13436,8 @@
 
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5
-$as_echo_n "checking how to hardcode library paths into programs... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5
+printf %s "checking how to hardcode library paths into programs... " >&6; }
 hardcode_action=
 if test -n "$hardcode_libdir_flag_spec" ||
    test -n "$runpath_var" ||
@@ -12419,8 +13461,8 @@
   # directories.
   hardcode_action=unsupported
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&5
-$as_echo "$hardcode_action" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&5
+printf "%s\n" "$hardcode_action" >&6; }
 
 if test relink = "$hardcode_action" ||
    test yes = "$inherit_rpath"; then
@@ -12464,11 +13506,12 @@
 
   darwin*)
     # if libdl is installed we need to link against it
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
-$as_echo_n "checking for dlopen in -ldl... " >&6; }
-if ${ac_cv_lib_dl_dlopen+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
+printf %s "checking for dlopen in -ldl... " >&6; }
+if test ${ac_cv_lib_dl_dlopen+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-ldl  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -12477,32 +13520,31 @@
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char dlopen ();
 int
-main ()
+main (void)
 {
 return dlopen ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_dl_dlopen=yes
-else
+else $as_nop
   ac_cv_lib_dl_dlopen=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
-$as_echo "$ac_cv_lib_dl_dlopen" >&6; }
-if test "x$ac_cv_lib_dl_dlopen" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
+printf "%s\n" "$ac_cv_lib_dl_dlopen" >&6; }
+if test "x$ac_cv_lib_dl_dlopen" = xyes
+then :
   lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl
-else
+else $as_nop
 
     lt_cv_dlopen=dyld
     lt_cv_dlopen_libs=
@@ -12522,14 +13564,16 @@
 
   *)
     ac_fn_c_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load"
-if test "x$ac_cv_func_shl_load" = xyes; then :
+if test "x$ac_cv_func_shl_load" = xyes
+then :
   lt_cv_dlopen=shl_load
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5
-$as_echo_n "checking for shl_load in -ldld... " >&6; }
-if ${ac_cv_lib_dld_shl_load+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5
+printf %s "checking for shl_load in -ldld... " >&6; }
+if test ${ac_cv_lib_dld_shl_load+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-ldld  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -12538,41 +13582,42 @@
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char shl_load ();
 int
-main ()
+main (void)
 {
 return shl_load ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_dld_shl_load=yes
-else
+else $as_nop
   ac_cv_lib_dld_shl_load=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5
-$as_echo "$ac_cv_lib_dld_shl_load" >&6; }
-if test "x$ac_cv_lib_dld_shl_load" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5
+printf "%s\n" "$ac_cv_lib_dld_shl_load" >&6; }
+if test "x$ac_cv_lib_dld_shl_load" = xyes
+then :
   lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld
-else
+else $as_nop
   ac_fn_c_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen"
-if test "x$ac_cv_func_dlopen" = xyes; then :
+if test "x$ac_cv_func_dlopen" = xyes
+then :
   lt_cv_dlopen=dlopen
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
-$as_echo_n "checking for dlopen in -ldl... " >&6; }
-if ${ac_cv_lib_dl_dlopen+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
+printf %s "checking for dlopen in -ldl... " >&6; }
+if test ${ac_cv_lib_dl_dlopen+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-ldl  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -12581,37 +13626,37 @@
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char dlopen ();
 int
-main ()
+main (void)
 {
 return dlopen ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_dl_dlopen=yes
-else
+else $as_nop
   ac_cv_lib_dl_dlopen=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
-$as_echo "$ac_cv_lib_dl_dlopen" >&6; }
-if test "x$ac_cv_lib_dl_dlopen" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
+printf "%s\n" "$ac_cv_lib_dl_dlopen" >&6; }
+if test "x$ac_cv_lib_dl_dlopen" = xyes
+then :
   lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5
-$as_echo_n "checking for dlopen in -lsvld... " >&6; }
-if ${ac_cv_lib_svld_dlopen+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5
+printf %s "checking for dlopen in -lsvld... " >&6; }
+if test ${ac_cv_lib_svld_dlopen+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lsvld  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -12620,37 +13665,37 @@
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char dlopen ();
 int
-main ()
+main (void)
 {
 return dlopen ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_svld_dlopen=yes
-else
+else $as_nop
   ac_cv_lib_svld_dlopen=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5
-$as_echo "$ac_cv_lib_svld_dlopen" >&6; }
-if test "x$ac_cv_lib_svld_dlopen" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5
+printf "%s\n" "$ac_cv_lib_svld_dlopen" >&6; }
+if test "x$ac_cv_lib_svld_dlopen" = xyes
+then :
   lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5
-$as_echo_n "checking for dld_link in -ldld... " >&6; }
-if ${ac_cv_lib_dld_dld_link+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5
+printf %s "checking for dld_link in -ldld... " >&6; }
+if test ${ac_cv_lib_dld_dld_link+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-ldld  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -12659,30 +13704,29 @@
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char dld_link ();
 int
-main ()
+main (void)
 {
 return dld_link ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_dld_dld_link=yes
-else
+else $as_nop
   ac_cv_lib_dld_dld_link=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5
-$as_echo "$ac_cv_lib_dld_dld_link" >&6; }
-if test "x$ac_cv_lib_dld_dld_link" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5
+printf "%s\n" "$ac_cv_lib_dld_dld_link" >&6; }
+if test "x$ac_cv_lib_dld_dld_link" = xyes
+then :
   lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld
 fi
 
@@ -12721,11 +13765,12 @@
     save_LIBS=$LIBS
     LIBS="$lt_cv_dlopen_libs $LIBS"
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5
-$as_echo_n "checking whether a program can dlopen itself... " >&6; }
-if ${lt_cv_dlopen_self+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5
+printf %s "checking whether a program can dlopen itself... " >&6; }
+if test ${lt_cv_dlopen_self+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   	  if test yes = "$cross_compiling"; then :
   lt_cv_dlopen_self=cross
 else
@@ -12804,7 +13849,7 @@
   if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then
     (./conftest; exit; ) >&5 2>/dev/null
     lt_status=$?
@@ -12822,16 +13867,17 @@
 
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5
-$as_echo "$lt_cv_dlopen_self" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5
+printf "%s\n" "$lt_cv_dlopen_self" >&6; }
 
     if test yes = "$lt_cv_dlopen_self"; then
       wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5
-$as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; }
-if ${lt_cv_dlopen_self_static+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5
+printf %s "checking whether a statically linked program can dlopen itself... " >&6; }
+if test ${lt_cv_dlopen_self_static+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   	  if test yes = "$cross_compiling"; then :
   lt_cv_dlopen_self_static=cross
 else
@@ -12910,7 +13956,7 @@
   if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then
     (./conftest; exit; ) >&5 2>/dev/null
     lt_status=$?
@@ -12928,8 +13974,8 @@
 
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&5
-$as_echo "$lt_cv_dlopen_self_static" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&5
+printf "%s\n" "$lt_cv_dlopen_self_static" >&6; }
     fi
 
     CPPFLAGS=$save_CPPFLAGS
@@ -12967,32 +14013,43 @@
 
 striplib=
 old_striplib=
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5
-$as_echo_n "checking whether stripping libraries is possible... " >&6; }
-if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
-  test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
-  test -z "$striplib" && striplib="$STRIP --strip-unneeded"
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-else
-# FIXME - insert some real tests, host_os isn't really good enough
-  case $host_os in
-  darwin*)
-    if test -n "$STRIP"; then
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5
+printf %s "checking whether stripping libraries is possible... " >&6; }
+if test -z "$STRIP"; then
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+else
+  if $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
+    old_striplib="$STRIP --strip-debug"
+    striplib="$STRIP --strip-unneeded"
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
+  else
+    case $host_os in
+    darwin*)
+      # FIXME - insert some real tests, host_os isn't really good enough
       striplib="$STRIP -x"
       old_striplib="$STRIP -S"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    fi
-    ;;
-  *)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ;;
-  esac
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
+      ;;
+    freebsd*)
+      if $STRIP -V 2>&1 | $GREP "elftoolchain" >/dev/null; then
+        old_striplib="$STRIP --strip-debug"
+        striplib="$STRIP --strip-unneeded"
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
+      else
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+      fi
+      ;;
+    *)
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+      ;;
+    esac
+  fi
 fi
 
 
@@ -13007,13 +14064,13 @@
 
 
   # Report what library types will actually be built
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5
-$as_echo_n "checking if libtool supports shared libraries... " >&6; }
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5
-$as_echo "$can_build_shared" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5
+printf %s "checking if libtool supports shared libraries... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5
+printf "%s\n" "$can_build_shared" >&6; }
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5
-$as_echo_n "checking whether to build shared libraries... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5
+printf %s "checking whether to build shared libraries... " >&6; }
   test no = "$can_build_shared" && enable_shared=no
 
   # On AIX, shared libraries and static libraries use the same namespace, and
@@ -13037,15 +14094,15 @@
     fi
     ;;
   esac
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_shared" >&5
-$as_echo "$enable_shared" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $enable_shared" >&5
+printf "%s\n" "$enable_shared" >&6; }
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5
-$as_echo_n "checking whether to build static libraries... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5
+printf %s "checking whether to build static libraries... " >&6; }
   # Make sure either enable_shared or enable_static is yes.
   test yes = "$enable_shared" || enable_static=yes
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5
-$as_echo "$enable_static" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5
+printf "%s\n" "$enable_static" >&6; }
 
 
 
@@ -13067,36 +14124,32 @@
 ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
 ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
 ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C++ preprocessor" >&5
-$as_echo_n "checking how to run the C++ preprocessor... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to run the C++ preprocessor" >&5
+printf %s "checking how to run the C++ preprocessor... " >&6; }
 if test -z "$CXXCPP"; then
-  if ${ac_cv_prog_CXXCPP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-      # Double quotes because CXXCPP needs to be expanded
-    for CXXCPP in "$CXX -E" "/lib/cpp"
+  if test ${ac_cv_prog_CXXCPP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+      # Double quotes because $CXX needs to be expanded
+    for CXXCPP in "$CXX -E" cpp /lib/cpp
     do
       ac_preproc_ok=false
 for ac_cxx_preproc_warn_flag in '' yes
 do
   # Use a header file that comes with gcc, so configuring glibc
   # with a fresh cross-compiler works.
-  # Prefer  to  if __STDC__ is defined, since
-  #  exists even on freestanding compilers.
   # On the NeXT, cc -E runs the code through the compiler's parser,
   # not just through cpp. "Syntax error" is here to catch this case.
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-#ifdef __STDC__
-# include 
-#else
-# include 
-#endif
+#include 
 		     Syntax error
 _ACEOF
-if ac_fn_cxx_try_cpp "$LINENO"; then :
+if ac_fn_cxx_try_cpp "$LINENO"
+then :
 
-else
+else $as_nop
   # Broken: fails on valid input.
 continue
 fi
@@ -13108,10 +14161,11 @@
 /* end confdefs.h.  */
 #include 
 _ACEOF
-if ac_fn_cxx_try_cpp "$LINENO"; then :
+if ac_fn_cxx_try_cpp "$LINENO"
+then :
   # Broken: success on invalid input.
 continue
-else
+else $as_nop
   # Passes both tests.
 ac_preproc_ok=:
 break
@@ -13121,7 +14175,8 @@
 done
 # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
 rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
+if $ac_preproc_ok
+then :
   break
 fi
 
@@ -13133,29 +14188,24 @@
 else
   ac_cv_prog_CXXCPP=$CXXCPP
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXXCPP" >&5
-$as_echo "$CXXCPP" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CXXCPP" >&5
+printf "%s\n" "$CXXCPP" >&6; }
 ac_preproc_ok=false
 for ac_cxx_preproc_warn_flag in '' yes
 do
   # Use a header file that comes with gcc, so configuring glibc
   # with a fresh cross-compiler works.
-  # Prefer  to  if __STDC__ is defined, since
-  #  exists even on freestanding compilers.
   # On the NeXT, cc -E runs the code through the compiler's parser,
   # not just through cpp. "Syntax error" is here to catch this case.
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-#ifdef __STDC__
-# include 
-#else
-# include 
-#endif
+#include 
 		     Syntax error
 _ACEOF
-if ac_fn_cxx_try_cpp "$LINENO"; then :
+if ac_fn_cxx_try_cpp "$LINENO"
+then :
 
-else
+else $as_nop
   # Broken: fails on valid input.
 continue
 fi
@@ -13167,10 +14217,11 @@
 /* end confdefs.h.  */
 #include 
 _ACEOF
-if ac_fn_cxx_try_cpp "$LINENO"; then :
+if ac_fn_cxx_try_cpp "$LINENO"
+then :
   # Broken: success on invalid input.
 continue
-else
+else $as_nop
   # Passes both tests.
 ac_preproc_ok=:
 break
@@ -13180,11 +14231,12 @@
 done
 # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
 rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
+if $ac_preproc_ok
+then :
 
-else
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+else $as_nop
+  { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "C++ preprocessor \"$CXXCPP\" fails sanity check
 See \`config.log' for more details" "$LINENO" 5; }
 fi
@@ -13320,17 +14372,18 @@
 
 
 # Check whether --with-gnu-ld was given.
-if test "${with_gnu_ld+set}" = set; then :
+if test ${with_gnu_ld+y}
+then :
   withval=$with_gnu_ld; test no = "$withval" || with_gnu_ld=yes
-else
+else $as_nop
   with_gnu_ld=no
 fi
 
 ac_prog=ld
 if test yes = "$GCC"; then
   # Check if gcc -print-prog-name=ld gives a path.
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5
-$as_echo_n "checking for ld used by $CC... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5
+printf %s "checking for ld used by $CC... " >&6; }
   case $host in
   *-*-mingw*)
     # gcc leaves a trailing carriage return, which upsets mingw
@@ -13359,15 +14412,16 @@
     ;;
   esac
 elif test yes = "$with_gnu_ld"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
-$as_echo_n "checking for GNU ld... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
+printf %s "checking for GNU ld... " >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
-$as_echo_n "checking for non-GNU ld... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
+printf %s "checking for non-GNU ld... " >&6; }
 fi
-if ${lt_cv_path_LD+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+if test ${lt_cv_path_LD+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -z "$LD"; then
   lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
   for ac_dir in $PATH; do
@@ -13396,18 +14450,19 @@
 
 LD=$lt_cv_path_LD
 if test -n "$LD"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
-$as_echo "$LD" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
+printf "%s\n" "$LD" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
-$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }
-if ${lt_cv_prog_gnu_ld+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
+printf %s "checking if the linker ($LD) is GNU ld... " >&6; }
+if test ${lt_cv_prog_gnu_ld+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   # I'd rather use --version here, but apparently some GNU lds only accept -v.
 case `$LD -v 2>&1 &5
-$as_echo "$lt_cv_prog_gnu_ld" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_gnu_ld" >&5
+printf "%s\n" "$lt_cv_prog_gnu_ld" >&6; }
 with_gnu_ld=$lt_cv_prog_gnu_ld
 
 
@@ -13473,8 +14528,8 @@
     fi
 
     # PORTME: fill in a description of your system's C++ link characteristics
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5
-$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5
+printf %s "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
     ld_shlibs_CXX=yes
     case $host_os in
       aix3*)
@@ -13612,21 +14667,23 @@
           if test set = "${lt_cv_aix_libpath+set}"; then
   aix_libpath=$lt_cv_aix_libpath
 else
-  if ${lt_cv_aix_libpath__CXX+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  if test ${lt_cv_aix_libpath__CXX+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
+if ac_fn_cxx_try_link "$LINENO"
+then :
 
   lt_aix_libpath_sed='
       /Import File Strings/,/^$/ {
@@ -13641,7 +14698,7 @@
     lt_cv_aix_libpath__CXX=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
   fi
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   if test -z "$lt_cv_aix_libpath__CXX"; then
     lt_cv_aix_libpath__CXX=/usr/lib:/lib
@@ -13666,21 +14723,23 @@
 	    if test set = "${lt_cv_aix_libpath+set}"; then
   aix_libpath=$lt_cv_aix_libpath
 else
-  if ${lt_cv_aix_libpath__CXX+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  if test ${lt_cv_aix_libpath__CXX+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
+if ac_fn_cxx_try_link "$LINENO"
+then :
 
   lt_aix_libpath_sed='
       /Import File Strings/,/^$/ {
@@ -13695,7 +14754,7 @@
     lt_cv_aix_libpath__CXX=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
   fi
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   if test -z "$lt_cv_aix_libpath__CXX"; then
     lt_cv_aix_libpath__CXX=/usr/lib:/lib
@@ -13760,8 +14819,8 @@
 
       cygwin* | mingw* | pw32* | cegcc*)
 	case $GXX,$cc_basename in
-	,cl* | no,cl*)
-	  # Native MSVC
+	,cl* | no,cl* | ,icl* | no,icl*)
+	  # Native MSVC or ICC
 	  # hardcode_libdir_flag_spec is actually meaningless, as there is
 	  # no search path for DLLs.
 	  hardcode_libdir_flag_spec_CXX=' '
@@ -13852,11 +14911,11 @@
     output_verbose_link_cmd=func_echo_all
     archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil"
     module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil"
-    archive_expsym_cmds_CXX="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil"
-    module_expsym_cmds_CXX="sed -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil"
+    archive_expsym_cmds_CXX="$SED 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil"
+    module_expsym_cmds_CXX="$SED -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil"
        if test yes != "$lt_cv_apple_cc_single_mod"; then
       archive_cmds_CXX="\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dsymutil"
-      archive_expsym_cmds_CXX="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dar_export_syms$_lt_dsymutil"
+      archive_expsym_cmds_CXX="$SED 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dar_export_syms$_lt_dsymutil"
     fi
 
   else
@@ -13891,6 +14950,7 @@
 	  emximp -o $lib $output_objdir/$libname.def'
 	old_archive_From_new_cmds_CXX='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
 	enable_shared_with_static_runtimes_CXX=yes
+	file_list_spec_CXX='@'
 	;;
 
       dgux*)
@@ -13921,7 +14981,7 @@
         archive_cmds_need_lc_CXX=no
         ;;
 
-      freebsd* | dragonfly*)
+      freebsd* | dragonfly* | midnightbsd*)
         # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
         # conventions
         ld_shlibs_CXX=yes
@@ -14058,7 +15118,7 @@
 	# 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
 	# time.  Moving up from 0x10000000 also allows more sbrk(2) space.
 	archive_cmds_CXX='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
-	archive_expsym_cmds_CXX='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+	archive_expsym_cmds_CXX='$SED "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
 	;;
       irix5* | irix6*)
         case $cc_basename in
@@ -14198,13 +15258,13 @@
 	    archive_cmds_CXX='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
 	    if test yes = "$supports_anon_versioning"; then
 	      archive_expsym_cmds_CXX='echo "{ global:" > $output_objdir/$libname.ver~
-                cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+                cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
                 echo "local: *; };" >> $output_objdir/$libname.ver~
                 $CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
 	    fi
 	    ;;
 	  *)
-	    case `$CC -V 2>&1 | sed 5q` in
+	    case `$CC -V 2>&1 | $SED 5q` in
 	    *Sun\ C*)
 	      # Sun C++ 5.9
 	      no_undefined_flag_CXX=' -zdefs'
@@ -14546,8 +15606,8 @@
         ;;
     esac
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_CXX" >&5
-$as_echo "$ld_shlibs_CXX" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_CXX" >&5
+printf "%s\n" "$ld_shlibs_CXX" >&6; }
     test no = "$ld_shlibs_CXX" && can_build_shared=no
 
     GCC_CXX=$GXX
@@ -14585,7 +15645,7 @@
 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   # Parse the compiler output and extract the necessary
   # objects, libraries and library flags.
@@ -14861,7 +15921,7 @@
 	    ;;
 	esac
 	;;
-      freebsd* | dragonfly*)
+      freebsd* | dragonfly* | midnightbsd*)
 	# FreeBSD uses GNU C++
 	;;
       hpux9* | hpux10* | hpux11*)
@@ -14944,7 +16004,7 @@
 	    lt_prog_compiler_static_CXX='-qstaticlink'
 	    ;;
 	  *)
-	    case `$CC -V 2>&1 | sed 5q` in
+	    case `$CC -V 2>&1 | $SED 5q` in
 	    *Sun\ C*)
 	      # Sun C++ 5.9
 	      lt_prog_compiler_pic_CXX='-KPIC'
@@ -15066,26 +16126,28 @@
     ;;
 esac
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5
-$as_echo_n "checking for $compiler option to produce PIC... " >&6; }
-if ${lt_cv_prog_compiler_pic_CXX+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5
+printf %s "checking for $compiler option to produce PIC... " >&6; }
+if test ${lt_cv_prog_compiler_pic_CXX+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_prog_compiler_pic_CXX=$lt_prog_compiler_pic_CXX
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_CXX" >&5
-$as_echo "$lt_cv_prog_compiler_pic_CXX" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_CXX" >&5
+printf "%s\n" "$lt_cv_prog_compiler_pic_CXX" >&6; }
 lt_prog_compiler_pic_CXX=$lt_cv_prog_compiler_pic_CXX
 
 #
 # Check to make sure the PIC flag actually works.
 #
 if test -n "$lt_prog_compiler_pic_CXX"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works" >&5
-$as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works... " >&6; }
-if ${lt_cv_prog_compiler_pic_works_CXX+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works" >&5
+printf %s "checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works... " >&6; }
+if test ${lt_cv_prog_compiler_pic_works_CXX+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_prog_compiler_pic_works_CXX=no
    ac_outfile=conftest.$ac_objext
    echo "$lt_simple_compile_test_code" > conftest.$ac_ext
@@ -15116,8 +16178,8 @@
    $RM conftest*
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works_CXX" >&5
-$as_echo "$lt_cv_prog_compiler_pic_works_CXX" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works_CXX" >&5
+printf "%s\n" "$lt_cv_prog_compiler_pic_works_CXX" >&6; }
 
 if test yes = "$lt_cv_prog_compiler_pic_works_CXX"; then
     case $lt_prog_compiler_pic_CXX in
@@ -15139,11 +16201,12 @@
 # Check to make sure the static flag actually works.
 #
 wl=$lt_prog_compiler_wl_CXX eval lt_tmp_static_flag=\"$lt_prog_compiler_static_CXX\"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5
-$as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; }
-if ${lt_cv_prog_compiler_static_works_CXX+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5
+printf %s "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; }
+if test ${lt_cv_prog_compiler_static_works_CXX+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_prog_compiler_static_works_CXX=no
    save_LDFLAGS=$LDFLAGS
    LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
@@ -15167,8 +16230,8 @@
    LDFLAGS=$save_LDFLAGS
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works_CXX" >&5
-$as_echo "$lt_cv_prog_compiler_static_works_CXX" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works_CXX" >&5
+printf "%s\n" "$lt_cv_prog_compiler_static_works_CXX" >&6; }
 
 if test yes = "$lt_cv_prog_compiler_static_works_CXX"; then
     :
@@ -15179,11 +16242,12 @@
 
 
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
-$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
-if ${lt_cv_prog_compiler_c_o_CXX+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
+printf %s "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
+if test ${lt_cv_prog_compiler_c_o_CXX+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_prog_compiler_c_o_CXX=no
    $RM -r conftest 2>/dev/null
    mkdir conftest
@@ -15226,16 +16290,17 @@
    $RM conftest*
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o_CXX" >&5
-$as_echo "$lt_cv_prog_compiler_c_o_CXX" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o_CXX" >&5
+printf "%s\n" "$lt_cv_prog_compiler_c_o_CXX" >&6; }
 
 
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
-$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
-if ${lt_cv_prog_compiler_c_o_CXX+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
+printf %s "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
+if test ${lt_cv_prog_compiler_c_o_CXX+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_prog_compiler_c_o_CXX=no
    $RM -r conftest 2>/dev/null
    mkdir conftest
@@ -15278,8 +16343,8 @@
    $RM conftest*
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o_CXX" >&5
-$as_echo "$lt_cv_prog_compiler_c_o_CXX" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o_CXX" >&5
+printf "%s\n" "$lt_cv_prog_compiler_c_o_CXX" >&6; }
 
 
 
@@ -15287,19 +16352,19 @@
 hard_links=nottested
 if test no = "$lt_cv_prog_compiler_c_o_CXX" && test no != "$need_locks"; then
   # do not overwrite the value of need_locks provided by the user
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5
-$as_echo_n "checking if we can lock with hard links... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5
+printf %s "checking if we can lock with hard links... " >&6; }
   hard_links=yes
   $RM conftest*
   ln conftest.a conftest.b 2>/dev/null && hard_links=no
   touch conftest.a
   ln conftest.a conftest.b 2>&5 || hard_links=no
   ln conftest.a conftest.b 2>/dev/null && hard_links=no
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5
-$as_echo "$hard_links" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5
+printf "%s\n" "$hard_links" >&6; }
   if test no = "$hard_links"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&5
-$as_echo "$as_me: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&2;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&5
+printf "%s\n" "$as_me: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&2;}
     need_locks=warn
   fi
 else
@@ -15308,8 +16373,8 @@
 
 
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5
-$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5
+printf %s "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
 
   export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
   exclude_expsyms_CXX='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'
@@ -15326,7 +16391,7 @@
     if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
       export_symbols_cmds_CXX='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && (substr(\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols'
     else
-      export_symbols_cmds_CXX='`func_echo_all $NM | $SED -e '\''s/B\([^B]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && (substr(\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols'
+      export_symbols_cmds_CXX='`func_echo_all $NM | $SED -e '\''s/B\([^B]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "L") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && (substr(\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols'
     fi
     ;;
   pw32*)
@@ -15334,7 +16399,7 @@
     ;;
   cygwin* | mingw* | cegcc*)
     case $cc_basename in
-    cl*)
+    cl* | icl*)
       exclude_expsyms_CXX='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
       ;;
     *)
@@ -15348,8 +16413,8 @@
     ;;
   esac
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_CXX" >&5
-$as_echo "$ld_shlibs_CXX" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_CXX" >&5
+printf "%s\n" "$ld_shlibs_CXX" >&6; }
 test no = "$ld_shlibs_CXX" && can_build_shared=no
 
 with_gnu_ld_CXX=$with_gnu_ld
@@ -15376,18 +16441,19 @@
       # Test whether the compiler implicitly links with -lc since on some
       # systems, -lgcc has to come before -lc. If gcc already passes -lc
       # to ld, don't add -lc before -lgcc.
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5
-$as_echo_n "checking whether -lc should be explicitly linked in... " >&6; }
-if ${lt_cv_archive_cmds_need_lc_CXX+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5
+printf %s "checking whether -lc should be explicitly linked in... " >&6; }
+if test ${lt_cv_archive_cmds_need_lc_CXX+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   $RM conftest*
 	echo "$lt_simple_compile_test_code" > conftest.$ac_ext
 
 	if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; } 2>conftest.err; then
 	  soname=conftest
 	  lib=conftest
@@ -15405,7 +16471,7 @@
 	  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds_CXX 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5
   (eval $archive_cmds_CXX 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }
 	  then
 	    lt_cv_archive_cmds_need_lc_CXX=no
@@ -15419,8 +16485,8 @@
 	$RM conftest*
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc_CXX" >&5
-$as_echo "$lt_cv_archive_cmds_need_lc_CXX" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc_CXX" >&5
+printf "%s\n" "$lt_cv_archive_cmds_need_lc_CXX" >&6; }
       archive_cmds_need_lc_CXX=$lt_cv_archive_cmds_need_lc_CXX
       ;;
     esac
@@ -15489,8 +16555,8 @@
 
 
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5
-$as_echo_n "checking dynamic linker characteristics... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5
+printf %s "checking dynamic linker characteristics... " >&6; }
 
 library_names_spec=
 libname_spec='lib$name'
@@ -15681,7 +16747,7 @@
     case $host_os in
     cygwin*)
       # Cygwin DLLs use 'cyg' prefix rather than 'lib'
-      soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
+      soname_spec='`echo $libname | $SED -e 's/^lib/cyg/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
 
       ;;
     mingw* | cegcc*)
@@ -15690,14 +16756,14 @@
       ;;
     pw32*)
       # pw32 DLLs use 'pw' prefix rather than 'lib'
-      library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
+      library_names_spec='`echo $libname | $SED -e 's/^lib/pw/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
       ;;
     esac
     dynamic_linker='Win32 ld.exe'
     ;;
 
-  *,cl*)
-    # Native MSVC
+  *,cl* | *,icl*)
+    # Native MSVC or ICC
     libname_spec='$name'
     soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
     library_names_spec='$libname.dll.lib'
@@ -15716,7 +16782,7 @@
       done
       IFS=$lt_save_ifs
       # Convert to MSYS style.
-      sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'`
+      sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'`
       ;;
     cygwin*)
       # Convert to unix form, then to dos form, then back to unix form
@@ -15753,7 +16819,7 @@
     ;;
 
   *)
-    # Assume MSVC wrapper
+    # Assume MSVC and ICC wrapper
     library_names_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext $libname.lib'
     dynamic_linker='Win32 ld.exe'
     ;;
@@ -15785,7 +16851,7 @@
   shlibpath_var=LD_LIBRARY_PATH
   ;;
 
-freebsd* | dragonfly*)
+freebsd* | dragonfly* | midnightbsd*)
   # DragonFly does not have aout.  When/if they implement a new
   # versioning mechanism, adjust this.
   if test -x /usr/bin/objformat; then
@@ -15978,9 +17044,10 @@
   shlibpath_overrides_runpath=no
 
   # Some binutils ld are patched to set DT_RUNPATH
-  if ${lt_cv_shlibpath_overrides_runpath+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  if test ${lt_cv_shlibpath_overrides_runpath+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_shlibpath_overrides_runpath=no
     save_LDFLAGS=$LDFLAGS
     save_libdir=$libdir
@@ -15990,19 +17057,21 @@
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
-  if  ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then :
+if ac_fn_cxx_try_link "$LINENO"
+then :
+  if  ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null
+then :
   lt_cv_shlibpath_overrides_runpath=yes
 fi
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
     LDFLAGS=$save_LDFLAGS
     libdir=$save_libdir
@@ -16237,8 +17306,8 @@
   dynamic_linker=no
   ;;
 esac
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5
-$as_echo "$dynamic_linker" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5
+printf "%s\n" "$dynamic_linker" >&6; }
 test no = "$dynamic_linker" && can_build_shared=no
 
 variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
@@ -16302,8 +17371,8 @@
 
 
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5
-$as_echo_n "checking how to hardcode library paths into programs... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5
+printf %s "checking how to hardcode library paths into programs... " >&6; }
 hardcode_action_CXX=
 if test -n "$hardcode_libdir_flag_spec_CXX" ||
    test -n "$runpath_var_CXX" ||
@@ -16327,8 +17396,8 @@
   # directories.
   hardcode_action_CXX=unsupported
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action_CXX" >&5
-$as_echo "$hardcode_action_CXX" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $hardcode_action_CXX" >&5
+printf "%s\n" "$hardcode_action_CXX" >&6; }
 
 if test relink = "$hardcode_action_CXX" ||
    test yes = "$inherit_rpath_CXX"; then
@@ -16397,8 +17466,8 @@
 
         if test -n "$PYTHON"; then
       # If the user set $PYTHON, use it and don't search something else.
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $PYTHON version is >= 3.1" >&5
-$as_echo_n "checking whether $PYTHON version is >= 3.1... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $PYTHON version is >= 3.1" >&5
+printf %s "checking whether $PYTHON version is >= 3.1... " >&6; }
       prog="import sys
 # split strings by '.' and convert to numeric.  Append some zeros
 # because we need at least 4 digits for the hex conversion.
@@ -16412,25 +17481,27 @@
    ($PYTHON -c "$prog") >&5 2>&5
    ac_status=$?
    echo "$as_me:$LINENO: \$? = $ac_status" >&5
-   (exit $ac_status); }; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+   (exit $ac_status); }
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 			       as_fn_error $? "Python interpreter is too old" "$LINENO" 5
 fi
       am_display_PYTHON=$PYTHON
     else
       # Otherwise, try each interpreter until we find one that satisfies
       # VERSION.
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a Python interpreter with version >= 3.1" >&5
-$as_echo_n "checking for a Python interpreter with version >= 3.1... " >&6; }
-if ${am_cv_pathless_PYTHON+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a Python interpreter with version >= 3.1" >&5
+printf %s "checking for a Python interpreter with version >= 3.1... " >&6; }
+if test ${am_cv_pathless_PYTHON+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
-	for am_cv_pathless_PYTHON in python python2 python3 python3.3 python3.2 python3.1 python3.0 python2.7  python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0 none; do
+	for am_cv_pathless_PYTHON in python python2 python3  python3.9 python3.8 python3.7 python3.6 python3.5 python3.4 python3.3  python3.2 python3.1 python3.0  python2.7 python2.6 python2.5 python2.4 python2.3 python2.2 python2.1  python2.0 none; do
 	  test "$am_cv_pathless_PYTHON" = none && break
 	  prog="import sys
 # split strings by '.' and convert to numeric.  Append some zeros
@@ -16445,24 +17516,26 @@
    ($am_cv_pathless_PYTHON -c "$prog") >&5 2>&5
    ac_status=$?
    echo "$as_me:$LINENO: \$? = $ac_status" >&5
-   (exit $ac_status); }; then :
+   (exit $ac_status); }
+then :
   break
 fi
 	done
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_pathless_PYTHON" >&5
-$as_echo "$am_cv_pathless_PYTHON" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_pathless_PYTHON" >&5
+printf "%s\n" "$am_cv_pathless_PYTHON" >&6; }
       # Set $PYTHON to the absolute path of $am_cv_pathless_PYTHON.
       if test "$am_cv_pathless_PYTHON" = none; then
 	PYTHON=:
       else
         # Extract the first word of "$am_cv_pathless_PYTHON", so it can be a program name with args.
 set dummy $am_cv_pathless_PYTHON; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PYTHON+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_PYTHON+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $PYTHON in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_PYTHON="$PYTHON" # Let the user override the test with a path.
@@ -16472,11 +17545,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_PYTHON="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_PYTHON="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -16488,11 +17565,11 @@
 fi
 PYTHON=$ac_cv_path_PYTHON
 if test -n "$PYTHON"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PYTHON" >&5
-$as_echo "$PYTHON" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PYTHON" >&5
+printf "%s\n" "$PYTHON" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -16502,42 +17579,172 @@
 
 
   if test "$PYTHON" = :; then
-      as_fn_error $? "no suitable Python interpreter found" "$LINENO" 5
+        as_fn_error $? "no suitable Python interpreter found" "$LINENO" 5
   else
 
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON version" >&5
-$as_echo_n "checking for $am_display_PYTHON version... " >&6; }
-if ${am_cv_python_version+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  am_cv_python_version=`$PYTHON -c "import sys; sys.stdout.write(sys.version[:3])"`
+              { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON version" >&5
+printf %s "checking for $am_display_PYTHON version... " >&6; }
+if test ${am_cv_python_version+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  am_cv_python_version=`$PYTHON -c "import sys; print ('%u.%u' % sys.version_info[:2])"`
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_version" >&5
-$as_echo "$am_cv_python_version" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_version" >&5
+printf "%s\n" "$am_cv_python_version" >&6; }
   PYTHON_VERSION=$am_cv_python_version
 
 
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON platform" >&5
+printf %s "checking for $am_display_PYTHON platform... " >&6; }
+if test ${am_cv_python_platform+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  am_cv_python_platform=`$PYTHON -c "import sys; sys.stdout.write(sys.platform)"`
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_platform" >&5
+printf "%s\n" "$am_cv_python_platform" >&6; }
+  PYTHON_PLATFORM=$am_cv_python_platform
 
-  PYTHON_PREFIX='${prefix}'
 
-  PYTHON_EXEC_PREFIX='${exec_prefix}'
+                            if test "x$prefix" = xNONE; then
+    am__usable_prefix=$ac_default_prefix
+  else
+    am__usable_prefix=$prefix
+  fi
 
+  # Allow user to request using sys.* values from Python,
+  # instead of the GNU $prefix values.
 
+# Check whether --with-python-sys-prefix was given.
+if test ${with_python_sys_prefix+y}
+then :
+  withval=$with_python_sys_prefix; am_use_python_sys=:
+else $as_nop
+  am_use_python_sys=false
+fi
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON platform" >&5
-$as_echo_n "checking for $am_display_PYTHON platform... " >&6; }
-if ${am_cv_python_platform+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  am_cv_python_platform=`$PYTHON -c "import sys; sys.stdout.write(sys.platform)"`
+
+  # Allow user to override whatever the default Python prefix is.
+
+# Check whether --with-python_prefix was given.
+if test ${with_python_prefix+y}
+then :
+  withval=$with_python_prefix; am_python_prefix_subst=$withval
+   am_cv_python_prefix=$withval
+   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for explicit $am_display_PYTHON prefix" >&5
+printf %s "checking for explicit $am_display_PYTHON prefix... " >&6; }
+   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_prefix" >&5
+printf "%s\n" "$am_cv_python_prefix" >&6; }
+else $as_nop
+
+   if $am_use_python_sys; then
+     # using python sys.prefix value, not GNU
+     { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for python default $am_display_PYTHON prefix" >&5
+printf %s "checking for python default $am_display_PYTHON prefix... " >&6; }
+if test ${am_cv_python_prefix+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  am_cv_python_prefix=`$PYTHON -c "import sys; sys.stdout.write(sys.prefix)"`
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_prefix" >&5
+printf "%s\n" "$am_cv_python_prefix" >&6; }
+
+               case $am_cv_python_prefix in
+     $am__usable_prefix*)
+       am__strip_prefix=`echo "$am__usable_prefix" | sed 's|.|.|g'`
+       am_python_prefix_subst=`echo "$am_cv_python_prefix" | sed "s,^$am__strip_prefix,\\${prefix},"`
+       ;;
+     *)
+       am_python_prefix_subst=$am_cv_python_prefix
+       ;;
+     esac
+   else # using GNU prefix value, not python sys.prefix
+     am_python_prefix_subst='${prefix}'
+     am_python_prefix=$am_python_prefix_subst
+     { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GNU default $am_display_PYTHON prefix" >&5
+printf %s "checking for GNU default $am_display_PYTHON prefix... " >&6; }
+     { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_python_prefix" >&5
+printf "%s\n" "$am_python_prefix" >&6; }
+   fi
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_platform" >&5
-$as_echo "$am_cv_python_platform" >&6; }
-  PYTHON_PLATFORM=$am_cv_python_platform
+
+  # Substituting python_prefix_subst value.
+  PYTHON_PREFIX=$am_python_prefix_subst
+
+
+  # emacs-page Now do it all over again for Python exec_prefix, but with yet
+  # another conditional: fall back to regular prefix if that was specified.
+
+# Check whether --with-python_exec_prefix was given.
+if test ${with_python_exec_prefix+y}
+then :
+  withval=$with_python_exec_prefix; am_python_exec_prefix_subst=$withval
+   am_cv_python_exec_prefix=$withval
+   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for explicit $am_display_PYTHON exec_prefix" >&5
+printf %s "checking for explicit $am_display_PYTHON exec_prefix... " >&6; }
+   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_exec_prefix" >&5
+printf "%s\n" "$am_cv_python_exec_prefix" >&6; }
+else $as_nop
+
+   # no explicit --with-python_exec_prefix, but if
+   # --with-python_prefix was given, use its value for python_exec_prefix too.
+   if test -n "$with_python_prefix"
+then :
+  am_python_exec_prefix_subst=$with_python_prefix
+    am_cv_python_exec_prefix=$with_python_prefix
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for python_prefix-given $am_display_PYTHON exec_prefix" >&5
+printf %s "checking for python_prefix-given $am_display_PYTHON exec_prefix... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_exec_prefix" >&5
+printf "%s\n" "$am_cv_python_exec_prefix" >&6; }
+else $as_nop
+
+    # Set am__usable_exec_prefix whether using GNU or Python values,
+    # since we use that variable for pyexecdir.
+    if test "x$exec_prefix" = xNONE; then
+      am__usable_exec_prefix=$am__usable_prefix
+    else
+      am__usable_exec_prefix=$exec_prefix
+    fi
+    #
+    if $am_use_python_sys; then # using python sys.exec_prefix, not GNU
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for python default $am_display_PYTHON exec_prefix" >&5
+printf %s "checking for python default $am_display_PYTHON exec_prefix... " >&6; }
+if test ${am_cv_python_exec_prefix+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  am_cv_python_exec_prefix=`$PYTHON -c "import sys; sys.stdout.write(sys.exec_prefix)"`
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_exec_prefix" >&5
+printf "%s\n" "$am_cv_python_exec_prefix" >&6; }
+                        case $am_cv_python_exec_prefix in
+      $am__usable_exec_prefix*)
+        am__strip_prefix=`echo "$am__usable_exec_prefix" | sed 's|.|.|g'`
+        am_python_exec_prefix_subst=`echo "$am_cv_python_exec_prefix" | sed "s,^$am__strip_prefix,\\${exec_prefix},"`
+        ;;
+      *)
+        am_python_exec_prefix_subst=$am_cv_python_exec_prefix
+        ;;
+     esac
+   else # using GNU $exec_prefix, not python sys.exec_prefix
+     am_python_exec_prefix_subst='${exec_prefix}'
+     am_python_exec_prefix=$am_python_exec_prefix_subst
+     { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GNU default $am_display_PYTHON exec_prefix" >&5
+printf %s "checking for GNU default $am_display_PYTHON exec_prefix... " >&6; }
+     { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_python_exec_prefix" >&5
+printf "%s\n" "$am_python_exec_prefix" >&6; }
+   fi
+fi
+fi
+
+  # Substituting python_exec_prefix_subst.
+  PYTHON_EXEC_PREFIX=$am_python_exec_prefix_subst
 
 
-  # Just factor out some code duplication.
+  # Factor out some code duplication into this shell variable.
   am_python_setup_sysconfig="\
 import sys
 # Prefer sysconfig over distutils.sysconfig, for better compatibility
@@ -16558,92 +17765,90 @@
     pass"
 
 
-            { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON script directory" >&5
-$as_echo_n "checking for $am_display_PYTHON script directory... " >&6; }
-if ${am_cv_python_pythondir+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "x$prefix" = xNONE
-     then
-       am_py_prefix=$ac_default_prefix
-     else
-       am_py_prefix=$prefix
-     fi
-     am_cv_python_pythondir=`$PYTHON -c "
+              { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON script directory (pythondir)" >&5
+printf %s "checking for $am_display_PYTHON script directory (pythondir)... " >&6; }
+if test ${am_cv_python_pythondir+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  if test "x$am_cv_python_prefix" = x; then
+     am_py_prefix=$am__usable_prefix
+   else
+     am_py_prefix=$am_cv_python_prefix
+   fi
+   am_cv_python_pythondir=`$PYTHON -c "
 $am_python_setup_sysconfig
 if can_use_sysconfig:
-    sitedir = sysconfig.get_path('purelib', vars={'base':'$am_py_prefix'})
+  sitedir = sysconfig.get_path('purelib', vars={'base':'$am_py_prefix'})
 else:
-    from distutils import sysconfig
-    sitedir = sysconfig.get_python_lib(0, 0, prefix='$am_py_prefix')
+  from distutils import sysconfig
+  sitedir = sysconfig.get_python_lib(0, 0, prefix='$am_py_prefix')
 sys.stdout.write(sitedir)"`
-     case $am_cv_python_pythondir in
-     $am_py_prefix*)
-       am__strip_prefix=`echo "$am_py_prefix" | sed 's|.|.|g'`
-       am_cv_python_pythondir=`echo "$am_cv_python_pythondir" | sed "s,^$am__strip_prefix,$PYTHON_PREFIX,"`
-       ;;
-     *)
-       case $am_py_prefix in
-         /usr|/System*) ;;
-         *)
-	  am_cv_python_pythondir=$PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages
-	  ;;
-       esac
-       ;;
+   #
+   case $am_cv_python_pythondir in
+   $am_py_prefix*)
+     am__strip_prefix=`echo "$am_py_prefix" | sed 's|.|.|g'`
+     am_cv_python_pythondir=`echo "$am_cv_python_pythondir" | sed "s,^$am__strip_prefix,\\${PYTHON_PREFIX},"`
+     ;;
+   *)
+     case $am_py_prefix in
+       /usr|/System*) ;;
+       *) am_cv_python_pythondir="\${PYTHON_PREFIX}/lib/python$PYTHON_VERSION/site-packages"
+          ;;
      esac
+     ;;
+   esac
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_pythondir" >&5
-$as_echo "$am_cv_python_pythondir" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_pythondir" >&5
+printf "%s\n" "$am_cv_python_pythondir" >&6; }
   pythondir=$am_cv_python_pythondir
 
 
-
-  pkgpythondir=\${pythondir}/$PACKAGE
+          pkgpythondir=\${pythondir}/$PACKAGE
 
 
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON extension module directory" >&5
-$as_echo_n "checking for $am_display_PYTHON extension module directory... " >&6; }
-if ${am_cv_python_pyexecdir+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "x$exec_prefix" = xNONE
-     then
-       am_py_exec_prefix=$am_py_prefix
-     else
-       am_py_exec_prefix=$exec_prefix
-     fi
-     am_cv_python_pyexecdir=`$PYTHON -c "
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON extension module directory (pyexecdir)" >&5
+printf %s "checking for $am_display_PYTHON extension module directory (pyexecdir)... " >&6; }
+if test ${am_cv_python_pyexecdir+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  if test "x$am_cv_python_exec_prefix" = x; then
+     am_py_exec_prefix=$am__usable_exec_prefix
+   else
+     am_py_exec_prefix=$am_cv_python_exec_prefix
+   fi
+   am_cv_python_pyexecdir=`$PYTHON -c "
 $am_python_setup_sysconfig
 if can_use_sysconfig:
-    sitedir = sysconfig.get_path('platlib', vars={'platbase':'$am_py_prefix'})
+  sitedir = sysconfig.get_path('platlib', vars={'platbase':'$am_py_exec_prefix'})
 else:
-    from distutils import sysconfig
-    sitedir = sysconfig.get_python_lib(1, 0, prefix='$am_py_prefix')
+  from distutils import sysconfig
+  sitedir = sysconfig.get_python_lib(1, 0, prefix='$am_py_exec_prefix')
 sys.stdout.write(sitedir)"`
-     case $am_cv_python_pyexecdir in
-     $am_py_exec_prefix*)
-       am__strip_prefix=`echo "$am_py_exec_prefix" | sed 's|.|.|g'`
-       am_cv_python_pyexecdir=`echo "$am_cv_python_pyexecdir" | sed "s,^$am__strip_prefix,$PYTHON_EXEC_PREFIX,"`
-       ;;
-     *)
-       case $am_py_exec_prefix in
-         /usr|/System*) ;;
-         *)
-	   am_cv_python_pyexecdir=$PYTHON_EXEC_PREFIX/lib/python$PYTHON_VERSION/site-packages
-	   ;;
-       esac
-       ;;
+   #
+   case $am_cv_python_pyexecdir in
+   $am_py_exec_prefix*)
+     am__strip_prefix=`echo "$am_py_exec_prefix" | sed 's|.|.|g'`
+     am_cv_python_pyexecdir=`echo "$am_cv_python_pyexecdir" | sed "s,^$am__strip_prefix,\\${PYTHON_EXEC_PREFIX},"`
+     ;;
+   *)
+     case $am_py_exec_prefix in
+       /usr|/System*) ;;
+       *) am_cv_python_pyexecdir="\${PYTHON_EXEC_PREFIX}/lib/python$PYTHON_VERSION/site-packages"
+          ;;
      esac
+     ;;
+   esac
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_pyexecdir" >&5
-$as_echo "$am_cv_python_pyexecdir" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_pyexecdir" >&5
+printf "%s\n" "$am_cv_python_pyexecdir" >&6; }
   pyexecdir=$am_cv_python_pyexecdir
 
 
-
-  pkgpyexecdir=\${pyexecdir}/$PACKAGE
+      pkgpyexecdir=\${pyexecdir}/$PACKAGE
 
 
 
@@ -16656,16 +17861,16 @@
 
 
 
-
 if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
 	if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
 set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PKG_CONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_PKG_CONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $PKG_CONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path.
@@ -16675,11 +17880,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_PKG_CONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -16691,11 +17900,11 @@
 fi
 PKG_CONFIG=$ac_cv_path_PKG_CONFIG
 if test -n "$PKG_CONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5
-$as_echo "$PKG_CONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5
+printf "%s\n" "$PKG_CONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -16704,11 +17913,12 @@
   ac_pt_PKG_CONFIG=$PKG_CONFIG
   # Extract the first word of "pkg-config", so it can be a program name with args.
 set dummy pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_ac_pt_PKG_CONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_ac_pt_PKG_CONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $ac_pt_PKG_CONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path.
@@ -16718,11 +17928,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_ac_pt_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_ac_pt_PKG_CONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -16734,11 +17948,11 @@
 fi
 ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG
 if test -n "$ac_pt_PKG_CONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKG_CONFIG" >&5
-$as_echo "$ac_pt_PKG_CONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKG_CONFIG" >&5
+printf "%s\n" "$ac_pt_PKG_CONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_pt_PKG_CONFIG" = x; then
@@ -16746,8 +17960,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     PKG_CONFIG=$ac_pt_PKG_CONFIG
@@ -16759,30 +17973,30 @@
 fi
 if test -n "$PKG_CONFIG"; then
 	_pkg_min_version=0.9.0
-	{ $as_echo "$as_me:${as_lineno-$LINENO}: checking pkg-config is at least version $_pkg_min_version" >&5
-$as_echo_n "checking pkg-config is at least version $_pkg_min_version... " >&6; }
+	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking pkg-config is at least version $_pkg_min_version" >&5
+printf %s "checking pkg-config is at least version $_pkg_min_version... " >&6; }
 	if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then
-		{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+		{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 	else
-		{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+		{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 		PKG_CONFIG=""
 	fi
 fi
 
 pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for PYTHON" >&5
-$as_echo_n "checking for PYTHON... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for PYTHON" >&5
+printf %s "checking for PYTHON... " >&6; }
 
 if test -n "$PYTHON_CFLAGS"; then
     pkg_cv_PYTHON_CFLAGS="$PYTHON_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"python-\${PYTHON_VERSION}m\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"python-\${PYTHON_VERSION}m\""; } >&5
   ($PKG_CONFIG --exists --print-errors "python-${PYTHON_VERSION}m") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_PYTHON_CFLAGS=`$PKG_CONFIG --cflags "python-${PYTHON_VERSION}m" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
@@ -16796,10 +18010,10 @@
     pkg_cv_PYTHON_LIBS="$PYTHON_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"python-\${PYTHON_VERSION}m\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"python-\${PYTHON_VERSION}m\""; } >&5
   ($PKG_CONFIG --exists --print-errors "python-${PYTHON_VERSION}m") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_PYTHON_LIBS=`$PKG_CONFIG --libs "python-${PYTHON_VERSION}m" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
@@ -16813,8 +18027,8 @@
 
 
 if test $pkg_failed = yes; then
-   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+   	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -16831,30 +18045,30 @@
 
 	true
 elif test $pkg_failed = untried; then
-     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+     	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 	true
 else
 	PYTHON_CFLAGS=$pkg_cv_PYTHON_CFLAGS
 	PYTHON_LIBS=$pkg_cv_PYTHON_LIBS
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
-test -z "$PYTHON_LIBS" && \
+test -z "$PYTHON_CFLAGS" && \
 
 pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for PYTHON" >&5
-$as_echo_n "checking for PYTHON... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for PYTHON" >&5
+printf %s "checking for PYTHON... " >&6; }
 
 if test -n "$PYTHON_CFLAGS"; then
     pkg_cv_PYTHON_CFLAGS="$PYTHON_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"python-\$PYTHON_VERSION\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"python-\$PYTHON_VERSION\""; } >&5
   ($PKG_CONFIG --exists --print-errors "python-$PYTHON_VERSION") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_PYTHON_CFLAGS=`$PKG_CONFIG --cflags "python-$PYTHON_VERSION" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
@@ -16868,10 +18082,10 @@
     pkg_cv_PYTHON_LIBS="$PYTHON_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"python-\$PYTHON_VERSION\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"python-\$PYTHON_VERSION\""; } >&5
   ($PKG_CONFIG --exists --print-errors "python-$PYTHON_VERSION") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_PYTHON_LIBS=`$PKG_CONFIG --libs "python-$PYTHON_VERSION" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
@@ -16885,8 +18099,8 @@
 
 
 if test $pkg_failed = yes; then
-   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+   	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -16903,21 +18117,22 @@
 
 	true
 elif test $pkg_failed = untried; then
-     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+     	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 	true
 else
 	PYTHON_CFLAGS=$pkg_cv_PYTHON_CFLAGS
 	PYTHON_LIBS=$pkg_cv_PYTHON_LIBS
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
-test -n "$PYTHON_LIBS" || \
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: No python package found (missing devel package?)" >&5
-$as_echo "$as_me: WARNING: No python package found (missing devel package?)" >&2;}
+test -n "$PYTHON_CFLAGS" || \
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: No python package found (missing devel package?)" >&5
+printf "%s\n" "$as_me: WARNING: No python package found (missing devel package?)" >&2;}
 python_version_nodots=$(echo $PYTHON_VERSION | tr -d '.')
- if test $python_version_nodots -ge 35; then
+ if test -n "$PYTHON_CFLAGS" && \
+			       test $python_version_nodots -ge 35; then
   HAVE_PYTHON35_TRUE=
   HAVE_PYTHON35_FALSE='#'
 else
@@ -16928,158 +18143,232 @@
 CFLAGS="$CFLAGS $PYTHON_CFLAGS"
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
-$as_echo_n "checking for ANSI C header files... " >&6; }
-if ${ac_cv_header_stdc+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include 
-#include 
-#include 
-#include 
+# Autoupdate added the next two lines to ensure that your configure
+# script's behavior did not change.  They are probably safe to remove.
 
-int
-main ()
-{
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
+printf %s "checking for egrep... " >&6; }
+if test ${ac_cv_path_EGREP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
+   then ac_cv_path_EGREP="$GREP -E"
+   else
+     if test -z "$EGREP"; then
+  ac_path_EGREP_found=false
+  # Loop through the user's path and test for each of PROGNAME-LIST
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
+do
+  IFS=$as_save_IFS
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    for ac_prog in egrep
+   do
+    for ac_exec_ext in '' $ac_executable_extensions; do
+      ac_path_EGREP="$as_dir$ac_prog$ac_exec_ext"
+      as_fn_executable_p "$ac_path_EGREP" || continue
+# Check for GNU ac_path_EGREP and select it if it is found.
+  # Check for GNU $ac_path_EGREP
+case `"$ac_path_EGREP" --version 2>&1` in
+*GNU*)
+  ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
+*)
+  ac_count=0
+  printf %s 0123456789 >"conftest.in"
+  while :
+  do
+    cat "conftest.in" "conftest.in" >"conftest.tmp"
+    mv "conftest.tmp" "conftest.in"
+    cp "conftest.in" "conftest.nl"
+    printf "%s\n" 'EGREP' >> "conftest.nl"
+    "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
+    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
+    as_fn_arith $ac_count + 1 && ac_count=$as_val
+    if test $ac_count -gt ${ac_path_EGREP_max-0}; then
+      # Best one so far, save it but keep looking for a better one
+      ac_cv_path_EGREP="$ac_path_EGREP"
+      ac_path_EGREP_max=$ac_count
+    fi
+    # 10*(2^10) chars as input seems more than enough
+    test $ac_count -gt 10 && break
+  done
+  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
+esac
 
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_header_stdc=yes
+      $ac_path_EGREP_found && break 3
+    done
+  done
+  done
+IFS=$as_save_IFS
+  if test -z "$ac_cv_path_EGREP"; then
+    as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
+  fi
 else
-  ac_cv_header_stdc=no
+  ac_cv_path_EGREP=$EGREP
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 
-if test $ac_cv_header_stdc = yes; then
-  # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include 
+   fi
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5
+printf "%s\n" "$ac_cv_path_EGREP" >&6; }
+ EGREP="$ac_cv_path_EGREP"
 
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "memchr" >/dev/null 2>&1; then :
 
-else
-  ac_cv_header_stdc=no
-fi
-rm -f conftest*
 
-fi
 
-if test $ac_cv_header_stdc = yes; then
-  # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include 
 
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "free" >/dev/null 2>&1; then :
+# Obsolete code to be removed.
+if test $ac_cv_header_sys_time_h = yes; then
 
-else
-  ac_cv_header_stdc=no
-fi
-rm -f conftest*
+printf "%s\n" "#define TIME_WITH_SYS_TIME 1" >>confdefs.h
 
 fi
+# End of obsolete code.
 
-if test $ac_cv_header_stdc = yes; then
-  # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
-  if test "$cross_compiling" = yes; then :
-  :
-else
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5
+printf %s "checking how to run the C preprocessor... " >&6; }
+# On Suns, sometimes $CPP names a directory.
+if test -n "$CPP" && test -d "$CPP"; then
+  CPP=
+fi
+if test -z "$CPP"; then
+  if test ${ac_cv_prog_CPP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+      # Double quotes because $CC needs to be expanded
+    for CPP in "$CC -E" "$CC -E -traditional-cpp" cpp /lib/cpp
+    do
+      ac_preproc_ok=false
+for ac_c_preproc_warn_flag in '' yes
+do
+  # Use a header file that comes with gcc, so configuring glibc
+  # with a fresh cross-compiler works.
+  # On the NeXT, cc -E runs the code through the compiler's parser,
+  # not just through cpp. "Syntax error" is here to catch this case.
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-#include 
-#include 
-#if ((' ' & 0x0FF) == 0x020)
-# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
-# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
-#else
-# define ISLOWER(c) \
-		   (('a' <= (c) && (c) <= 'i') \
-		     || ('j' <= (c) && (c) <= 'r') \
-		     || ('s' <= (c) && (c) <= 'z'))
-# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
-#endif
-
-#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
-int
-main ()
-{
-  int i;
-  for (i = 0; i < 256; i++)
-    if (XOR (islower (i), ISLOWER (i))
-	|| toupper (i) != TOUPPER (i))
-      return 2;
-  return 0;
-}
+#include 
+		     Syntax error
 _ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_cpp "$LINENO"
+then :
 
-else
-  ac_cv_header_stdc=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
+else $as_nop
+  # Broken: fails on valid input.
+continue
 fi
+rm -f conftest.err conftest.i conftest.$ac_ext
 
+  # OK, works on sane cases.  Now check whether nonexistent headers
+  # can be detected and how.
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include 
+_ACEOF
+if ac_fn_c_try_cpp "$LINENO"
+then :
+  # Broken: success on invalid input.
+continue
+else $as_nop
+  # Passes both tests.
+ac_preproc_ok=:
+break
 fi
+rm -f conftest.err conftest.i conftest.$ac_ext
+
+done
+# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
+rm -f conftest.i conftest.err conftest.$ac_ext
+if $ac_preproc_ok
+then :
+  break
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5
-$as_echo "$ac_cv_header_stdc" >&6; }
-if test $ac_cv_header_stdc = yes; then
 
-$as_echo "#define STDC_HEADERS 1" >>confdefs.h
+    done
+    ac_cv_prog_CPP=$CPP
 
 fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether time.h and sys/time.h may both be included" >&5
-$as_echo_n "checking whether time.h and sys/time.h may both be included... " >&6; }
-if ${ac_cv_header_time+:} false; then :
-  $as_echo_n "(cached) " >&6
+  CPP=$ac_cv_prog_CPP
 else
+  ac_cv_prog_CPP=$CPP
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5
+printf "%s\n" "$CPP" >&6; }
+ac_preproc_ok=false
+for ac_c_preproc_warn_flag in '' yes
+do
+  # Use a header file that comes with gcc, so configuring glibc
+  # with a fresh cross-compiler works.
+  # On the NeXT, cc -E runs the code through the compiler's parser,
+  # not just through cpp. "Syntax error" is here to catch this case.
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-#include 
-#include 
-#include 
-
-int
-main ()
-{
-if ((struct tm *) 0)
-return 0;
-  ;
-  return 0;
-}
+#include 
+		     Syntax error
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_header_time=yes
-else
-  ac_cv_header_time=no
+if ac_fn_c_try_cpp "$LINENO"
+then :
+
+else $as_nop
+  # Broken: fails on valid input.
+continue
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f conftest.err conftest.i conftest.$ac_ext
+
+  # OK, works on sane cases.  Now check whether nonexistent headers
+  # can be detected and how.
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include 
+_ACEOF
+if ac_fn_c_try_cpp "$LINENO"
+then :
+  # Broken: success on invalid input.
+continue
+else $as_nop
+  # Passes both tests.
+ac_preproc_ok=:
+break
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_time" >&5
-$as_echo "$ac_cv_header_time" >&6; }
-if test $ac_cv_header_time = yes; then
+rm -f conftest.err conftest.i conftest.$ac_ext
 
-$as_echo "#define TIME_WITH_SYS_TIME 1" >>confdefs.h
+done
+# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
+rm -f conftest.i conftest.err conftest.$ac_ext
+if $ac_preproc_ok
+then :
 
+else $as_nop
+  { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "C preprocessor \"$CPP\" fails sanity check
+See \`config.log' for more details" "$LINENO" 5; }
 fi
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether termios.h defines TIOCGWINSZ" >&5
-$as_echo_n "checking whether termios.h defines TIOCGWINSZ... " >&6; }
-if ${ac_cv_sys_tiocgwinsz_in_termios_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether termios.h defines TIOCGWINSZ" >&5
+printf %s "checking whether termios.h defines TIOCGWINSZ... " >&6; }
+if test ${ac_cv_sys_tiocgwinsz_in_termios_h+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include 
@@ -17090,23 +18379,25 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "yes" >/dev/null 2>&1; then :
+  $EGREP "yes" >/dev/null 2>&1
+then :
   ac_cv_sys_tiocgwinsz_in_termios_h=yes
-else
+else $as_nop
   ac_cv_sys_tiocgwinsz_in_termios_h=no
 fi
-rm -f conftest*
+rm -rf conftest*
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_tiocgwinsz_in_termios_h" >&5
-$as_echo "$ac_cv_sys_tiocgwinsz_in_termios_h" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_tiocgwinsz_in_termios_h" >&5
+printf "%s\n" "$ac_cv_sys_tiocgwinsz_in_termios_h" >&6; }
 
 if test $ac_cv_sys_tiocgwinsz_in_termios_h != yes; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether sys/ioctl.h defines TIOCGWINSZ" >&5
-$as_echo_n "checking whether sys/ioctl.h defines TIOCGWINSZ... " >&6; }
-if ${ac_cv_sys_tiocgwinsz_in_sys_ioctl_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether sys/ioctl.h defines TIOCGWINSZ" >&5
+printf %s "checking whether sys/ioctl.h defines TIOCGWINSZ... " >&6; }
+if test ${ac_cv_sys_tiocgwinsz_in_sys_ioctl_h+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include 
@@ -17117,66 +18408,133 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "yes" >/dev/null 2>&1; then :
+  $EGREP "yes" >/dev/null 2>&1
+then :
   ac_cv_sys_tiocgwinsz_in_sys_ioctl_h=yes
-else
+else $as_nop
   ac_cv_sys_tiocgwinsz_in_sys_ioctl_h=no
 fi
-rm -f conftest*
+rm -rf conftest*
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_tiocgwinsz_in_sys_ioctl_h" >&5
-$as_echo "$ac_cv_sys_tiocgwinsz_in_sys_ioctl_h" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_tiocgwinsz_in_sys_ioctl_h" >&5
+printf "%s\n" "$ac_cv_sys_tiocgwinsz_in_sys_ioctl_h" >&6; }
 
   if test $ac_cv_sys_tiocgwinsz_in_sys_ioctl_h = yes; then
 
-$as_echo "#define GWINSZ_IN_SYS_IOCTL 1" >>confdefs.h
+printf "%s\n" "#define GWINSZ_IN_SYS_IOCTL 1" >>confdefs.h
 
   fi
 fi
 
-for ac_header in fcntl.h libutil.h limits.h linux/ioctl.h \
-		  linux/sched.h poll.h sys/ioctl.h sys/poll.h sys/time.h \
-		  syslog.h unistd.h util.h pty.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
+ac_fn_c_check_header_compile "$LINENO" "fcntl.h" "ac_cv_header_fcntl_h" "$ac_includes_default"
+if test "x$ac_cv_header_fcntl_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_FCNTL_H 1" >>confdefs.h
 
 fi
+ac_fn_c_check_header_compile "$LINENO" "libutil.h" "ac_cv_header_libutil_h" "$ac_includes_default"
+if test "x$ac_cv_header_libutil_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_LIBUTIL_H 1" >>confdefs.h
 
-done
+fi
+ac_fn_c_check_header_compile "$LINENO" "limits.h" "ac_cv_header_limits_h" "$ac_includes_default"
+if test "x$ac_cv_header_limits_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_LIMITS_H 1" >>confdefs.h
 
+fi
+ac_fn_c_check_header_compile "$LINENO" "linux/ioctl.h" "ac_cv_header_linux_ioctl_h" "$ac_includes_default"
+if test "x$ac_cv_header_linux_ioctl_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_LINUX_IOCTL_H 1" >>confdefs.h
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for inline" >&5
-$as_echo_n "checking for inline... " >&6; }
-if ${ac_cv_c_inline+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+fi
+ac_fn_c_check_header_compile "$LINENO" "linux/sched.h" "ac_cv_header_linux_sched_h" "$ac_includes_default"
+if test "x$ac_cv_header_linux_sched_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_LINUX_SCHED_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "poll.h" "ac_cv_header_poll_h" "$ac_includes_default"
+if test "x$ac_cv_header_poll_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_POLL_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "sys/ioctl.h" "ac_cv_header_sys_ioctl_h" "$ac_includes_default"
+if test "x$ac_cv_header_sys_ioctl_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_IOCTL_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "sys/poll.h" "ac_cv_header_sys_poll_h" "$ac_includes_default"
+if test "x$ac_cv_header_sys_poll_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_POLL_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "sys/time.h" "ac_cv_header_sys_time_h" "$ac_includes_default"
+if test "x$ac_cv_header_sys_time_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_TIME_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "syslog.h" "ac_cv_header_syslog_h" "$ac_includes_default"
+if test "x$ac_cv_header_syslog_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYSLOG_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "unistd.h" "ac_cv_header_unistd_h" "$ac_includes_default"
+if test "x$ac_cv_header_unistd_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_UNISTD_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "util.h" "ac_cv_header_util_h" "$ac_includes_default"
+if test "x$ac_cv_header_util_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_UTIL_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "pty.h" "ac_cv_header_pty_h" "$ac_includes_default"
+if test "x$ac_cv_header_pty_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_PTY_H 1" >>confdefs.h
+
+fi
+
+
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for inline" >&5
+printf %s "checking for inline... " >&6; }
+if test ${ac_cv_c_inline+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_cv_c_inline=no
 for ac_kw in inline __inline__ __inline; do
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #ifndef __cplusplus
 typedef int foo_t;
-static $ac_kw foo_t static_foo () {return 0; }
-$ac_kw foo_t foo () {return 0; }
+static $ac_kw foo_t static_foo (void) {return 0; }
+$ac_kw foo_t foo (void) {return 0; }
 #endif
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_c_inline=$ac_kw
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   test "$ac_cv_c_inline" != no && break
 done
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_inline" >&5
-$as_echo "$ac_cv_c_inline" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_inline" >&5
+printf "%s\n" "$ac_cv_c_inline" >&6; }
 
 case $ac_cv_c_inline in
   inline | yes) ;;
@@ -17193,25 +18551,50 @@
     ;;
 esac
 
-ac_fn_c_check_type "$LINENO" "pid_t" "ac_cv_type_pid_t" "$ac_includes_default"
-if test "x$ac_cv_type_pid_t" = xyes; then :
 
-else
+  ac_fn_c_check_type "$LINENO" "pid_t" "ac_cv_type_pid_t" "$ac_includes_default
+"
+if test "x$ac_cv_type_pid_t" = xyes
+then :
+
+else $as_nop
+                                          cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+          #if defined _WIN64 && !defined __CYGWIN__
+          LLP64
+          #endif
+
+int
+main (void)
+{
+
+  ;
+  return 0;
+}
 
-cat >>confdefs.h <<_ACEOF
-#define pid_t int
 _ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+  ac_pid_type='int'
+else $as_nop
+  ac_pid_type='__int64'
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
+
+printf "%s\n" "#define pid_t $ac_pid_type" >>confdefs.h
+
 
 fi
 
+
 ac_fn_c_check_type "$LINENO" "size_t" "ac_cv_type_size_t" "$ac_includes_default"
-if test "x$ac_cv_type_size_t" = xyes; then :
+if test "x$ac_cv_type_size_t" = xyes
+then :
 
-else
+else $as_nop
 
-cat >>confdefs.h <<_ACEOF
-#define size_t unsigned int
-_ACEOF
+printf "%s\n" "#define size_t unsigned int" >>confdefs.h
 
 fi
 
@@ -17220,9 +18603,7 @@
   no|yes) ;; #(
   *)
 
-cat >>confdefs.h <<_ACEOF
-#define int8_t $ac_cv_c_int8_t
-_ACEOF
+printf "%s\n" "#define int8_t $ac_cv_c_int8_t" >>confdefs.h
 ;;
 esac
 
@@ -17231,9 +18612,7 @@
   no|yes) ;; #(
   *)
 
-cat >>confdefs.h <<_ACEOF
-#define int16_t $ac_cv_c_int16_t
-_ACEOF
+printf "%s\n" "#define int16_t $ac_cv_c_int16_t" >>confdefs.h
 ;;
 esac
 
@@ -17242,9 +18621,7 @@
   no|yes) ;; #(
   *)
 
-cat >>confdefs.h <<_ACEOF
-#define int32_t $ac_cv_c_int32_t
-_ACEOF
+printf "%s\n" "#define int32_t $ac_cv_c_int32_t" >>confdefs.h
 ;;
 esac
 
@@ -17253,9 +18630,7 @@
   no|yes) ;; #(
   *)
 
-cat >>confdefs.h <<_ACEOF
-#define int64_t $ac_cv_c_int64_t
-_ACEOF
+printf "%s\n" "#define int64_t $ac_cv_c_int64_t" >>confdefs.h
 ;;
 esac
 
@@ -17264,12 +18639,10 @@
   no|yes) ;; #(
   *)
 
-$as_echo "#define _UINT8_T 1" >>confdefs.h
+printf "%s\n" "#define _UINT8_T 1" >>confdefs.h
 
 
-cat >>confdefs.h <<_ACEOF
-#define uint8_t $ac_cv_c_uint8_t
-_ACEOF
+printf "%s\n" "#define uint8_t $ac_cv_c_uint8_t" >>confdefs.h
 ;;
   esac
 
@@ -17279,9 +18652,7 @@
   *)
 
 
-cat >>confdefs.h <<_ACEOF
-#define uint16_t $ac_cv_c_uint16_t
-_ACEOF
+printf "%s\n" "#define uint16_t $ac_cv_c_uint16_t" >>confdefs.h
 ;;
   esac
 
@@ -17290,12 +18661,10 @@
   no|yes) ;; #(
   *)
 
-$as_echo "#define _UINT32_T 1" >>confdefs.h
+printf "%s\n" "#define _UINT32_T 1" >>confdefs.h
 
 
-cat >>confdefs.h <<_ACEOF
-#define uint32_t $ac_cv_c_uint32_t
-_ACEOF
+printf "%s\n" "#define uint32_t $ac_cv_c_uint32_t" >>confdefs.h
 ;;
   esac
 
@@ -17304,18 +18673,16 @@
   no|yes) ;; #(
   *)
 
-$as_echo "#define _UINT64_T 1" >>confdefs.h
+printf "%s\n" "#define _UINT64_T 1" >>confdefs.h
 
 
-cat >>confdefs.h <<_ACEOF
-#define uint64_t $ac_cv_c_uint64_t
-_ACEOF
+printf "%s\n" "#define uint64_t $ac_cv_c_uint64_t" >>confdefs.h
 ;;
   esac
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking Figure out if getgrouplist() needs gid_t or int" >&5
-$as_echo_n "checking Figure out if getgrouplist() needs gid_t or int... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking Figure out if getgrouplist() needs gid_t or int" >&5
+printf %s "checking Figure out if getgrouplist() needs gid_t or int... " >&6; }
 oldcflags="$CFLAGS"
 export CFLAGS=-Werror
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -17325,7 +18692,7 @@
 #include 
 
 int
-main ()
+main (void)
 {
 
 gid_t groups[32]; int ngroups; const char* user = "root";
@@ -17335,43 +18702,99 @@
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: gid_t" >&5
-$as_echo "gid_t" >&6; }
-    $as_echo "#define GETGROUPS_T gid_t" >>confdefs.h
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: gid_t" >&5
+printf "%s\n" "gid_t" >&6; }
+    printf "%s\n" "#define GETGROUPS_T gid_t" >>confdefs.h
 
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: int" >&5
-$as_echo "int" >&6; }
-    $as_echo "#define GETGROUPS_T int" >>confdefs.h
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: int" >&5
+printf "%s\n" "int" >&6; }
+    printf "%s\n" "#define GETGROUPS_T int" >>confdefs.h
 
 
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 export CFLAGS="$oldcflags"
 
-for ac_func in gethostname gettimeofday mkfifo select socket strdup \
-        strerror strtoul snprintf strsep vsyslog
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
+ac_fn_c_check_func "$LINENO" "gethostname" "ac_cv_func_gethostname"
+if test "x$ac_cv_func_gethostname" = xyes
+then :
+  printf "%s\n" "#define HAVE_GETHOSTNAME 1" >>confdefs.h
 
 fi
-done
+ac_fn_c_check_func "$LINENO" "gettimeofday" "ac_cv_func_gettimeofday"
+if test "x$ac_cv_func_gettimeofday" = xyes
+then :
+  printf "%s\n" "#define HAVE_GETTIMEOFDAY 1" >>confdefs.h
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing dlopen" >&5
-$as_echo_n "checking for library containing dlopen... " >&6; }
-if ${ac_cv_search_dlopen+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+fi
+ac_fn_c_check_func "$LINENO" "mkfifo" "ac_cv_func_mkfifo"
+if test "x$ac_cv_func_mkfifo" = xyes
+then :
+  printf "%s\n" "#define HAVE_MKFIFO 1" >>confdefs.h
+
+fi
+ac_fn_c_check_func "$LINENO" "select" "ac_cv_func_select"
+if test "x$ac_cv_func_select" = xyes
+then :
+  printf "%s\n" "#define HAVE_SELECT 1" >>confdefs.h
+
+fi
+ac_fn_c_check_func "$LINENO" "socket" "ac_cv_func_socket"
+if test "x$ac_cv_func_socket" = xyes
+then :
+  printf "%s\n" "#define HAVE_SOCKET 1" >>confdefs.h
+
+fi
+ac_fn_c_check_func "$LINENO" "strdup" "ac_cv_func_strdup"
+if test "x$ac_cv_func_strdup" = xyes
+then :
+  printf "%s\n" "#define HAVE_STRDUP 1" >>confdefs.h
+
+fi
+ac_fn_c_check_func "$LINENO" "strerror" "ac_cv_func_strerror"
+if test "x$ac_cv_func_strerror" = xyes
+then :
+  printf "%s\n" "#define HAVE_STRERROR 1" >>confdefs.h
+
+fi
+ac_fn_c_check_func "$LINENO" "strtoul" "ac_cv_func_strtoul"
+if test "x$ac_cv_func_strtoul" = xyes
+then :
+  printf "%s\n" "#define HAVE_STRTOUL 1" >>confdefs.h
+
+fi
+ac_fn_c_check_func "$LINENO" "snprintf" "ac_cv_func_snprintf"
+if test "x$ac_cv_func_snprintf" = xyes
+then :
+  printf "%s\n" "#define HAVE_SNPRINTF 1" >>confdefs.h
+
+fi
+ac_fn_c_check_func "$LINENO" "strsep" "ac_cv_func_strsep"
+if test "x$ac_cv_func_strsep" = xyes
+then :
+  printf "%s\n" "#define HAVE_STRSEP 1" >>confdefs.h
+
+fi
+ac_fn_c_check_func "$LINENO" "vsyslog" "ac_cv_func_vsyslog"
+if test "x$ac_cv_func_vsyslog" = xyes
+then :
+  printf "%s\n" "#define HAVE_VSYSLOG 1" >>confdefs.h
+
+fi
+
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for library containing dlopen" >&5
+printf %s "checking for library containing dlopen... " >&6; }
+if test ${ac_cv_search_dlopen+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_func_search_save_LIBS=$LIBS
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -17379,72 +18802,71 @@
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char dlopen ();
 int
-main ()
+main (void)
 {
 return dlopen ();
   ;
   return 0;
 }
 _ACEOF
-for ac_lib in '' dl dld; do
+for ac_lib in '' dl dld
+do
   if test -z "$ac_lib"; then
     ac_res="none required"
   else
     ac_res=-l$ac_lib
     LIBS="-l$ac_lib  $ac_func_search_save_LIBS"
   fi
-  if ac_fn_c_try_link "$LINENO"; then :
+  if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_search_dlopen=$ac_res
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext
-  if ${ac_cv_search_dlopen+:} false; then :
+  if test ${ac_cv_search_dlopen+y}
+then :
   break
 fi
 done
-if ${ac_cv_search_dlopen+:} false; then :
+if test ${ac_cv_search_dlopen+y}
+then :
 
-else
+else $as_nop
   ac_cv_search_dlopen=no
 fi
 rm conftest.$ac_ext
 LIBS=$ac_func_search_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_dlopen" >&5
-$as_echo "$ac_cv_search_dlopen" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_dlopen" >&5
+printf "%s\n" "$ac_cv_search_dlopen" >&6; }
 ac_res=$ac_cv_search_dlopen
-if test "$ac_res" != no; then :
+if test "$ac_res" != no
+then :
   test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
 
-else
+else $as_nop
 
   as_fn_error $? "unable to find the dlopen() function" "$LINENO" 5
 
 fi
 
-for ac_func in daemon
-do :
-  ac_fn_c_check_func "$LINENO" "daemon" "ac_cv_func_daemon"
-if test "x$ac_cv_func_daemon" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_DAEMON 1
-_ACEOF
+ac_fn_c_check_func "$LINENO" "daemon" "ac_cv_func_daemon"
+if test "x$ac_cv_func_daemon" = xyes
+then :
+  printf "%s\n" "#define HAVE_DAEMON 1" >>confdefs.h
 
 fi
-done
 
 if test "$ac_cv_func_daemon" != yes; then
   daemon=""
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for daemon in -lbsd" >&5
-$as_echo_n "checking for daemon in -lbsd... " >&6; }
-if ${ac_cv_lib_bsd_daemon+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for daemon in -lbsd" >&5
+printf %s "checking for daemon in -lbsd... " >&6; }
+if test ${ac_cv_lib_bsd_daemon+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lbsd  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -17453,30 +18875,29 @@
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char daemon ();
 int
-main ()
+main (void)
 {
 return daemon ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_bsd_daemon=yes
-else
+else $as_nop
   ac_cv_lib_bsd_daemon=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_bsd_daemon" >&5
-$as_echo "$ac_cv_lib_bsd_daemon" >&6; }
-if test "x$ac_cv_lib_bsd_daemon" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_bsd_daemon" >&5
+printf "%s\n" "$ac_cv_lib_bsd_daemon" >&6; }
+if test "x$ac_cv_lib_bsd_daemon" = xyes
+then :
   daemon="-lbsd"
 fi
 
@@ -17484,23 +18905,20 @@
     as_fn_error $? "*** daemon() function not available on this system, giving up" "$LINENO" 5
   fi
 fi
-for ac_func in clock_gettime
-do :
-  ac_fn_c_check_func "$LINENO" "clock_gettime" "ac_cv_func_clock_gettime"
-if test "x$ac_cv_func_clock_gettime" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_CLOCK_GETTIME 1
-_ACEOF
+ac_fn_c_check_func "$LINENO" "clock_gettime" "ac_cv_func_clock_gettime"
+if test "x$ac_cv_func_clock_gettime" = xyes
+then :
+  printf "%s\n" "#define HAVE_CLOCK_GETTIME 1" >>confdefs.h
 
 fi
-done
 
 if test x$ac_cv_func_clock_gettime = xno; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for clock_gettime in -lrt" >&5
-$as_echo_n "checking for clock_gettime in -lrt... " >&6; }
-if ${ac_cv_lib_rt_clock_gettime+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for clock_gettime in -lrt" >&5
+printf %s "checking for clock_gettime in -lrt... " >&6; }
+if test ${ac_cv_lib_rt_clock_gettime+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lrt  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -17509,66 +18927,66 @@
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char clock_gettime ();
 int
-main ()
+main (void)
 {
 return clock_gettime ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_rt_clock_gettime=yes
-else
+else $as_nop
   ac_cv_lib_rt_clock_gettime=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_rt_clock_gettime" >&5
-$as_echo "$ac_cv_lib_rt_clock_gettime" >&6; }
-if test "x$ac_cv_lib_rt_clock_gettime" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_rt_clock_gettime" >&5
+printf "%s\n" "$ac_cv_lib_rt_clock_gettime" >&6; }
+if test "x$ac_cv_lib_rt_clock_gettime" = xyes
+then :
   ac_cv_func_clock_gettime="yes"
 fi
 
-  if test x$ac_cv_func_clock_gettime = xyes; then :
+  if test x$ac_cv_func_clock_gettime = xyes
+then :
   LIBS="-lrt $LIBS"
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: Function clock_gettime() not found" >&5
-$as_echo "$as_me: Function clock_gettime() not found" >&6;}
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Function clock_gettime() not found" >&5
+printf "%s\n" "$as_me: Function clock_gettime() not found" >&6;}
 
 fi
 fi
 
-    if test -z $PYTHON;
-    then
-        PYTHON="python"
-    fi
-    PYTHON_NAME=`basename $PYTHON`
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking $PYTHON_NAME module: yaml" >&5
-$as_echo_n "checking $PYTHON_NAME module: yaml... " >&6; }
-	$PYTHON -c "import yaml" 2>/dev/null
-	if test $? -eq 0;
-	then
-		{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-		eval HAVE_PYMOD_YAML=yes
-	else
-		{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-		eval HAVE_PYMOD_YAML=no
-		#
-		if test -n ""
-		then
-			as_fn_error $? "failed to find required python module yaml" "$LINENO" 5
-			exit 1
-		fi
-	fi
+    PYTHON=${PYTHON:-"python3"}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking $(basename $PYTHON) module: yaml" >&5
+printf %s "checking $(basename $PYTHON) module: yaml... " >&6; }
+    if $PYTHON -c "import yaml" 2>/dev/null
+then :
+
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
+        HAVE_PYMOD_YAML='yes'
+
+else $as_nop
+
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+        eval HAVE_PYMOD_YAML='no'
+        if test x != x
+then :
+
+            as_fn_error $? "failed to find required python module yaml" "$LINENO" 5
+            exit 1
+
+fi
+
+fi
 
  if test $HAVE_PYMOD_YAML = "yes"; then
   HAVE_PYMOD_YAML_TRUE=
@@ -17579,23 +18997,20 @@
 fi
 
 forkpty=""
-for ac_func in forkpty
-do :
-  ac_fn_c_check_func "$LINENO" "forkpty" "ac_cv_func_forkpty"
-if test "x$ac_cv_func_forkpty" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_FORKPTY 1
-_ACEOF
+ac_fn_c_check_func "$LINENO" "forkpty" "ac_cv_func_forkpty"
+if test "x$ac_cv_func_forkpty" = xyes
+then :
+  printf "%s\n" "#define HAVE_FORKPTY 1" >>confdefs.h
 
 fi
-done
 
 if test "$ac_cv_func_forkpty" != yes; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for forkpty in -lutil" >&5
-$as_echo_n "checking for forkpty in -lutil... " >&6; }
-if ${ac_cv_lib_util_forkpty+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for forkpty in -lutil" >&5
+printf %s "checking for forkpty in -lutil... " >&6; }
+if test ${ac_cv_lib_util_forkpty+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lutil  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -17604,33 +19019,32 @@
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char forkpty ();
 int
-main ()
+main (void)
 {
 return forkpty ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_util_forkpty=yes
-else
+else $as_nop
   ac_cv_lib_util_forkpty=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_util_forkpty" >&5
-$as_echo "$ac_cv_lib_util_forkpty" >&6; }
-if test "x$ac_cv_lib_util_forkpty" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_util_forkpty" >&5
+printf "%s\n" "$ac_cv_lib_util_forkpty" >&6; }
+if test "x$ac_cv_lib_util_forkpty" = xyes
+then :
 
     forkpty="-lutil"
-    $as_echo "#define HAVE_FORKPTY 1" >>confdefs.h
+    printf "%s\n" "#define HAVE_FORKPTY 1" >>confdefs.h
 
 fi
 
@@ -17647,18 +19061,16 @@
 print(int(v.pop(0)) * 10000 + int(v.pop(0)) * 100 + int(v.pop(0)))
 EOF
 )
-cat >>confdefs.h <<_ACEOF
-#define VERSION_NODOTS $version_nodots
-_ACEOF
+printf "%s\n" "#define VERSION_NODOTS $version_nodots" >>confdefs.h
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for linux kernel" >&5
-$as_echo_n "checking for linux kernel... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for linux kernel" >&5
+printf %s "checking for linux kernel... " >&6; }
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
     #ifndef __linux__
@@ -17669,10 +19081,11 @@
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
      if true; then
   LINUX_KERNEL_TRUE=
   LINUX_KERNEL_FALSE='#'
@@ -17682,10 +19095,10 @@
 fi
 
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
      if false; then
   LINUX_KERNEL_TRUE=
   LINUX_KERNEL_FALSE='#'
@@ -17697,14 +19110,15 @@
 
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for X" >&5
-$as_echo_n "checking for X... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for X" >&5
+printf %s "checking for X... " >&6; }
 
 
 # Check whether --with-x was given.
-if test "${with_x+set}" = set; then :
+if test ${with_x+y}
+then :
   withval=$with_x;
 fi
 
@@ -17715,12 +19129,41 @@
 else
   case $x_includes,$x_libraries in #(
     *\'*) as_fn_error $? "cannot use X directory names containing '" "$LINENO" 5;; #(
-    *,NONE | NONE,*) if ${ac_cv_have_x+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    *,NONE | NONE,*) if test ${ac_cv_have_x+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   # One or both of the vars are not set, and there is no cached value.
-ac_x_includes=no ac_x_libraries=no
-rm -f -r conftest.dir
+ac_x_includes=no
+ac_x_libraries=no
+# Do we need to do anything special at all?
+ac_save_LIBS=$LIBS
+LIBS="-lX11 $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include 
+int
+main (void)
+{
+XrmInitialize ()
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"
+then :
+  # We can compile and link X programs with no special options.
+  ac_x_includes=
+  ac_x_libraries=
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
+    conftest$ac_exeext conftest.$ac_ext
+LIBS="$ac_save_LIBS"
+# If that didn't work, only try xmkmf and file system searches
+# for native compilation.
+if test x"$ac_x_includes" = xno && test "$cross_compiling" = no
+then :
+  rm -f -r conftest.dir
 if mkdir conftest.dir; then
   cd conftest.dir
   cat >Imakefile <<'_ACEOF'
@@ -17759,7 +19202,7 @@
   rm -f -r conftest.dir
 fi
 
-# Standard set of common directories for X headers.
+  # Standard set of common directories for X headers.
 # Check X11 before X11Rn because it is often a symlink to the current release.
 ac_x_header_dirs='
 /usr/X11/include
@@ -17786,6 +19229,8 @@
 /usr/local/include/X11R5
 /usr/local/include/X11R4
 
+/opt/X11/include
+
 /usr/X386/include
 /usr/x386/include
 /usr/XFree86/include/X11
@@ -17807,10 +19252,11 @@
 /* end confdefs.h.  */
 #include 
 _ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
+if ac_fn_c_try_cpp "$LINENO"
+then :
   # We can compile using X headers with no special include directory.
 ac_x_includes=
-else
+else $as_nop
   for ac_dir in $ac_x_header_dirs; do
   if test -r "$ac_dir/X11/Xlib.h"; then
     ac_x_includes=$ac_dir
@@ -17831,20 +19277,21 @@
 /* end confdefs.h.  */
 #include 
 int
-main ()
+main (void)
 {
 XrmInitialize ()
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   LIBS=$ac_save_LIBS
 # We can link X programs with no special library path.
 ac_x_libraries=
-else
+else $as_nop
   LIBS=$ac_save_LIBS
-for ac_dir in `$as_echo "$ac_x_includes $ac_x_header_dirs" | sed s/include/lib/g`
+for ac_dir in `printf "%s\n" "$ac_x_includes $ac_x_header_dirs" | sed s/include/lib/g`
 do
   # Don't even attempt the hair of trying to link an X program!
   for ac_extension in a so sl dylib la dll; do
@@ -17855,19 +19302,21 @@
   done
 done
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 fi # $ac_x_libraries = no
 
+fi
+# Record the results.
 case $ac_x_includes,$ac_x_libraries in #(
-  no,* | *,no | *\'*)
+  no,* | *,no | *\'*) :
     # Didn't find X, or a directory has "'" in its name.
-    ac_cv_have_x="have_x=no";; #(
-  *)
+    ac_cv_have_x="have_x=no" ;; #(
+  *) :
     # Record where we found X for the cache.
     ac_cv_have_x="have_x=yes\
 	ac_x_includes='$ac_x_includes'\
-	ac_x_libraries='$ac_x_libraries'"
+	ac_x_libraries='$ac_x_libraries'" ;;
 esac
 fi
 ;; #(
@@ -17877,8 +19326,8 @@
 fi # $with_x != no
 
 if test "$have_x" != yes; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $have_x" >&5
-$as_echo "$have_x" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $have_x" >&5
+printf "%s\n" "$have_x" >&6; }
   no_x=yes
 else
   # If each of the values was on the command line, it overrides each guess.
@@ -17888,14 +19337,14 @@
   ac_cv_have_x="have_x=yes\
 	ac_x_includes='$x_includes'\
 	ac_x_libraries='$x_libraries'"
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: libraries $x_libraries, headers $x_includes" >&5
-$as_echo "libraries $x_libraries, headers $x_includes" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: libraries $x_libraries, headers $x_includes" >&5
+printf "%s\n" "libraries $x_libraries, headers $x_includes" >&6; }
 fi
 
 if test "$no_x" = yes; then
   # Not all programs may use this symbol, but it does not hurt to define it.
 
-$as_echo "#define X_DISPLAY_MISSING 1" >>confdefs.h
+printf "%s\n" "#define X_DISPLAY_MISSING 1" >>confdefs.h
 
   X_CFLAGS= X_PRE_LIBS= X_LIBS= X_EXTRA_LIBS=
 else
@@ -17908,8 +19357,8 @@
     X_LIBS="$X_LIBS -L$x_libraries"
     # For Solaris; some versions of Sun CC require a space after -R and
     # others require no space.  Words are not sufficient . . . .
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -R must be followed by a space" >&5
-$as_echo_n "checking whether -R must be followed by a space... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether -R must be followed by a space" >&5
+printf %s "checking whether -R must be followed by a space... " >&6; }
     ac_xsave_LIBS=$LIBS; LIBS="$LIBS -R$x_libraries"
     ac_xsave_c_werror_flag=$ac_c_werror_flag
     ac_c_werror_flag=yes
@@ -17917,42 +19366,44 @@
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+if ac_fn_c_try_link "$LINENO"
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
        X_LIBS="$X_LIBS -R$x_libraries"
-else
+else $as_nop
   LIBS="$ac_xsave_LIBS -R $x_libraries"
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+if ac_fn_c_try_link "$LINENO"
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 	  X_LIBS="$X_LIBS -R $x_libraries"
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: neither works" >&5
-$as_echo "neither works" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: neither works" >&5
+printf "%s\n" "neither works" >&6; }
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
     ac_c_werror_flag=$ac_xsave_c_werror_flag
     LIBS=$ac_xsave_LIBS
@@ -17975,26 +19426,25 @@
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char XOpenDisplay ();
 int
-main ()
+main (void)
 {
 return XOpenDisplay ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dnet_ntoa in -ldnet" >&5
-$as_echo_n "checking for dnet_ntoa in -ldnet... " >&6; }
-if ${ac_cv_lib_dnet_dnet_ntoa+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dnet_ntoa in -ldnet" >&5
+printf %s "checking for dnet_ntoa in -ldnet... " >&6; }
+if test ${ac_cv_lib_dnet_dnet_ntoa+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-ldnet  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -18003,39 +19453,39 @@
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char dnet_ntoa ();
 int
-main ()
+main (void)
 {
 return dnet_ntoa ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_dnet_dnet_ntoa=yes
-else
+else $as_nop
   ac_cv_lib_dnet_dnet_ntoa=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dnet_dnet_ntoa" >&5
-$as_echo "$ac_cv_lib_dnet_dnet_ntoa" >&6; }
-if test "x$ac_cv_lib_dnet_dnet_ntoa" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dnet_dnet_ntoa" >&5
+printf "%s\n" "$ac_cv_lib_dnet_dnet_ntoa" >&6; }
+if test "x$ac_cv_lib_dnet_dnet_ntoa" = xyes
+then :
   X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet"
 fi
 
     if test $ac_cv_lib_dnet_dnet_ntoa = no; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dnet_ntoa in -ldnet_stub" >&5
-$as_echo_n "checking for dnet_ntoa in -ldnet_stub... " >&6; }
-if ${ac_cv_lib_dnet_stub_dnet_ntoa+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dnet_ntoa in -ldnet_stub" >&5
+printf %s "checking for dnet_ntoa in -ldnet_stub... " >&6; }
+if test ${ac_cv_lib_dnet_stub_dnet_ntoa+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-ldnet_stub  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -18044,36 +19494,35 @@
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char dnet_ntoa ();
 int
-main ()
+main (void)
 {
 return dnet_ntoa ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_dnet_stub_dnet_ntoa=yes
-else
+else $as_nop
   ac_cv_lib_dnet_stub_dnet_ntoa=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dnet_stub_dnet_ntoa" >&5
-$as_echo "$ac_cv_lib_dnet_stub_dnet_ntoa" >&6; }
-if test "x$ac_cv_lib_dnet_stub_dnet_ntoa" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dnet_stub_dnet_ntoa" >&5
+printf "%s\n" "$ac_cv_lib_dnet_stub_dnet_ntoa" >&6; }
+if test "x$ac_cv_lib_dnet_stub_dnet_ntoa" = xyes
+then :
   X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet_stub"
 fi
 
     fi
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
     LIBS="$ac_xsave_LIBS"
 
@@ -18086,16 +19535,18 @@
     # The functions gethostbyname, getservbyname, and inet_addr are
     # in -lbsd on LynxOS 3.0.1/i386, according to Lars Hecking.
     ac_fn_c_check_func "$LINENO" "gethostbyname" "ac_cv_func_gethostbyname"
-if test "x$ac_cv_func_gethostbyname" = xyes; then :
+if test "x$ac_cv_func_gethostbyname" = xyes
+then :
 
 fi
 
     if test $ac_cv_func_gethostbyname = no; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in -lnsl" >&5
-$as_echo_n "checking for gethostbyname in -lnsl... " >&6; }
-if ${ac_cv_lib_nsl_gethostbyname+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in -lnsl" >&5
+printf %s "checking for gethostbyname in -lnsl... " >&6; }
+if test ${ac_cv_lib_nsl_gethostbyname+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lnsl  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -18104,39 +19555,39 @@
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char gethostbyname ();
 int
-main ()
+main (void)
 {
 return gethostbyname ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_nsl_gethostbyname=yes
-else
+else $as_nop
   ac_cv_lib_nsl_gethostbyname=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_nsl_gethostbyname" >&5
-$as_echo "$ac_cv_lib_nsl_gethostbyname" >&6; }
-if test "x$ac_cv_lib_nsl_gethostbyname" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_nsl_gethostbyname" >&5
+printf "%s\n" "$ac_cv_lib_nsl_gethostbyname" >&6; }
+if test "x$ac_cv_lib_nsl_gethostbyname" = xyes
+then :
   X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl"
 fi
 
       if test $ac_cv_lib_nsl_gethostbyname = no; then
-	{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in -lbsd" >&5
-$as_echo_n "checking for gethostbyname in -lbsd... " >&6; }
-if ${ac_cv_lib_bsd_gethostbyname+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in -lbsd" >&5
+printf %s "checking for gethostbyname in -lbsd... " >&6; }
+if test ${ac_cv_lib_bsd_gethostbyname+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lbsd  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -18145,30 +19596,29 @@
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char gethostbyname ();
 int
-main ()
+main (void)
 {
 return gethostbyname ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_bsd_gethostbyname=yes
-else
+else $as_nop
   ac_cv_lib_bsd_gethostbyname=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_bsd_gethostbyname" >&5
-$as_echo "$ac_cv_lib_bsd_gethostbyname" >&6; }
-if test "x$ac_cv_lib_bsd_gethostbyname" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_bsd_gethostbyname" >&5
+printf "%s\n" "$ac_cv_lib_bsd_gethostbyname" >&6; }
+if test "x$ac_cv_lib_bsd_gethostbyname" = xyes
+then :
   X_EXTRA_LIBS="$X_EXTRA_LIBS -lbsd"
 fi
 
@@ -18183,16 +19633,18 @@
     # must be given before -lnsl if both are needed.  We assume that
     # if connect needs -lnsl, so does gethostbyname.
     ac_fn_c_check_func "$LINENO" "connect" "ac_cv_func_connect"
-if test "x$ac_cv_func_connect" = xyes; then :
+if test "x$ac_cv_func_connect" = xyes
+then :
 
 fi
 
     if test $ac_cv_func_connect = no; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for connect in -lsocket" >&5
-$as_echo_n "checking for connect in -lsocket... " >&6; }
-if ${ac_cv_lib_socket_connect+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for connect in -lsocket" >&5
+printf %s "checking for connect in -lsocket... " >&6; }
+if test ${ac_cv_lib_socket_connect+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lsocket $X_EXTRA_LIBS $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -18201,30 +19653,29 @@
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char connect ();
 int
-main ()
+main (void)
 {
 return connect ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_socket_connect=yes
-else
+else $as_nop
   ac_cv_lib_socket_connect=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_socket_connect" >&5
-$as_echo "$ac_cv_lib_socket_connect" >&6; }
-if test "x$ac_cv_lib_socket_connect" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_socket_connect" >&5
+printf "%s\n" "$ac_cv_lib_socket_connect" >&6; }
+if test "x$ac_cv_lib_socket_connect" = xyes
+then :
   X_EXTRA_LIBS="-lsocket $X_EXTRA_LIBS"
 fi
 
@@ -18232,16 +19683,18 @@
 
     # Guillermo Gomez says -lposix is necessary on A/UX.
     ac_fn_c_check_func "$LINENO" "remove" "ac_cv_func_remove"
-if test "x$ac_cv_func_remove" = xyes; then :
+if test "x$ac_cv_func_remove" = xyes
+then :
 
 fi
 
     if test $ac_cv_func_remove = no; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for remove in -lposix" >&5
-$as_echo_n "checking for remove in -lposix... " >&6; }
-if ${ac_cv_lib_posix_remove+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for remove in -lposix" >&5
+printf %s "checking for remove in -lposix... " >&6; }
+if test ${ac_cv_lib_posix_remove+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lposix  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -18250,30 +19703,29 @@
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char remove ();
 int
-main ()
+main (void)
 {
 return remove ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_posix_remove=yes
-else
+else $as_nop
   ac_cv_lib_posix_remove=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_posix_remove" >&5
-$as_echo "$ac_cv_lib_posix_remove" >&6; }
-if test "x$ac_cv_lib_posix_remove" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_posix_remove" >&5
+printf "%s\n" "$ac_cv_lib_posix_remove" >&6; }
+if test "x$ac_cv_lib_posix_remove" = xyes
+then :
   X_EXTRA_LIBS="$X_EXTRA_LIBS -lposix"
 fi
 
@@ -18281,16 +19733,18 @@
 
     # BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay.
     ac_fn_c_check_func "$LINENO" "shmat" "ac_cv_func_shmat"
-if test "x$ac_cv_func_shmat" = xyes; then :
+if test "x$ac_cv_func_shmat" = xyes
+then :
 
 fi
 
     if test $ac_cv_func_shmat = no; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shmat in -lipc" >&5
-$as_echo_n "checking for shmat in -lipc... " >&6; }
-if ${ac_cv_lib_ipc_shmat+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for shmat in -lipc" >&5
+printf %s "checking for shmat in -lipc... " >&6; }
+if test ${ac_cv_lib_ipc_shmat+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lipc  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -18299,30 +19753,29 @@
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char shmat ();
 int
-main ()
+main (void)
 {
 return shmat ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_ipc_shmat=yes
-else
+else $as_nop
   ac_cv_lib_ipc_shmat=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ipc_shmat" >&5
-$as_echo "$ac_cv_lib_ipc_shmat" >&6; }
-if test "x$ac_cv_lib_ipc_shmat" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ipc_shmat" >&5
+printf "%s\n" "$ac_cv_lib_ipc_shmat" >&6; }
+if test "x$ac_cv_lib_ipc_shmat" = xyes
+then :
   X_EXTRA_LIBS="$X_EXTRA_LIBS -lipc"
 fi
 
@@ -18338,11 +19791,12 @@
   # These have to be linked with before -lX11, unlike the other
   # libraries we check for below, so use a different variable.
   # John Interrante, Karl Berry
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for IceConnectionNumber in -lICE" >&5
-$as_echo_n "checking for IceConnectionNumber in -lICE... " >&6; }
-if ${ac_cv_lib_ICE_IceConnectionNumber+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for IceConnectionNumber in -lICE" >&5
+printf %s "checking for IceConnectionNumber in -lICE... " >&6; }
+if test ${ac_cv_lib_ICE_IceConnectionNumber+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lICE $X_EXTRA_LIBS $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -18351,30 +19805,29 @@
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char IceConnectionNumber ();
 int
-main ()
+main (void)
 {
 return IceConnectionNumber ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_ICE_IceConnectionNumber=yes
-else
+else $as_nop
   ac_cv_lib_ICE_IceConnectionNumber=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ICE_IceConnectionNumber" >&5
-$as_echo "$ac_cv_lib_ICE_IceConnectionNumber" >&6; }
-if test "x$ac_cv_lib_ICE_IceConnectionNumber" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ICE_IceConnectionNumber" >&5
+printf "%s\n" "$ac_cv_lib_ICE_IceConnectionNumber" >&6; }
+if test "x$ac_cv_lib_ICE_IceConnectionNumber" = xyes
+then :
   X_PRE_LIBS="$X_PRE_LIBS -lSM -lICE"
 fi
 
@@ -18382,9 +19835,10 @@
 
 fi
 
-if test x$no_x = xyes; then :
+if test x$no_x = xyes
+then :
   x_progs=
-else
+else $as_nop
   x_progs="irxevent xmode2"
 fi
 
@@ -18455,28 +19909,31 @@
 
 
 
+ac_fn_c_check_header_compile "$LINENO" "usb.h" "ac_cv_header_usb_h" "$ac_includes_default"
+if test "x$ac_cv_header_usb_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_USB_H 1" >>confdefs.h
 
-
-
-
-for ac_header in usb.h libusb-1.0/libusb.h libusb.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
+fi
+ac_fn_c_check_header_compile "$LINENO" "libusb-1.0/libusb.h" "ac_cv_header_libusb_1_0_libusb_h" "$ac_includes_default"
+if test "x$ac_cv_header_libusb_1_0_libusb_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_LIBUSB_1_0_LIBUSB_H 1" >>confdefs.h
 
 fi
+ac_fn_c_check_header_compile "$LINENO" "libusb.h" "ac_cv_header_libusb_h" "$ac_includes_default"
+if test "x$ac_cv_header_libusb_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_LIBUSB_H 1" >>confdefs.h
 
-done
+fi
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for usb_get_string in -lusb" >&5
-$as_echo_n "checking for usb_get_string in -lusb... " >&6; }
-if ${ac_cv_lib_usb_usb_get_string+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for usb_get_string in -lusb" >&5
+printf %s "checking for usb_get_string in -lusb... " >&6; }
+if test ${ac_cv_lib_usb_usb_get_string+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lusb  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -18485,30 +19942,29 @@
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char usb_get_string ();
 int
-main ()
+main (void)
 {
 return usb_get_string ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_usb_usb_get_string=yes
-else
+else $as_nop
   ac_cv_lib_usb_usb_get_string=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_usb_usb_get_string" >&5
-$as_echo "$ac_cv_lib_usb_usb_get_string" >&6; }
-if test "x$ac_cv_lib_usb_usb_get_string" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_usb_usb_get_string" >&5
+printf "%s\n" "$ac_cv_lib_usb_usb_get_string" >&6; }
+if test "x$ac_cv_lib_usb_usb_get_string" = xyes
+then :
   LIBUSB_LIBS="-lusb"
 fi
 
@@ -18520,11 +19976,12 @@
   BUILD_USB_FALSE=
 fi
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for libusb_get_port_number in -lusb-1.0" >&5
-$as_echo_n "checking for libusb_get_port_number in -lusb-1.0... " >&6; }
-if ${ac_cv_lib_usb_1_0_libusb_get_port_number+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libusb_get_port_number in -lusb-1.0" >&5
+printf %s "checking for libusb_get_port_number in -lusb-1.0... " >&6; }
+if test ${ac_cv_lib_usb_1_0_libusb_get_port_number+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lusb-1.0  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -18533,47 +19990,46 @@
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char libusb_get_port_number ();
 int
-main ()
+main (void)
 {
 return libusb_get_port_number ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_usb_1_0_libusb_get_port_number=yes
-else
+else $as_nop
   ac_cv_lib_usb_1_0_libusb_get_port_number=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_usb_1_0_libusb_get_port_number" >&5
-$as_echo "$ac_cv_lib_usb_1_0_libusb_get_port_number" >&6; }
-if test "x$ac_cv_lib_usb_1_0_libusb_get_port_number" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_usb_1_0_libusb_get_port_number" >&5
+printf "%s\n" "$ac_cv_lib_usb_1_0_libusb_get_port_number" >&6; }
+if test "x$ac_cv_lib_usb_1_0_libusb_get_port_number" = xyes
+then :
   LIBUSB_LIBS="$LIBUSB_LIBS -lusb-1.0"
 fi
 
 
 
 pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for FTDI" >&5
-$as_echo_n "checking for FTDI... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for FTDI" >&5
+printf %s "checking for FTDI... " >&6; }
 
 if test -n "$FTDI_CFLAGS"; then
     pkg_cv_FTDI_CFLAGS="$FTDI_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libftdi >= 1.0\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libftdi >= 1.0\""; } >&5
   ($PKG_CONFIG --exists --print-errors "libftdi >= 1.0") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_FTDI_CFLAGS=`$PKG_CONFIG --cflags "libftdi >= 1.0" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
@@ -18587,10 +20043,10 @@
     pkg_cv_FTDI_LIBS="$FTDI_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libftdi >= 1.0\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libftdi >= 1.0\""; } >&5
   ($PKG_CONFIG --exists --print-errors "libftdi >= 1.0") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_FTDI_LIBS=`$PKG_CONFIG --libs "libftdi >= 1.0" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
@@ -18604,8 +20060,8 @@
 
 
 if test $pkg_failed = yes; then
-   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+   	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -18622,29 +20078,29 @@
 
 	true
 elif test $pkg_failed = untried; then
-     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+     	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 	true
 else
 	FTDI_CFLAGS=$pkg_cv_FTDI_CFLAGS
 	FTDI_LIBS=$pkg_cv_FTDI_LIBS
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
 test -z "$FTDI_LIBS" &&
 pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for FTDI" >&5
-$as_echo_n "checking for FTDI... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for FTDI" >&5
+printf %s "checking for FTDI... " >&6; }
 
 if test -n "$FTDI_CFLAGS"; then
     pkg_cv_FTDI_CFLAGS="$FTDI_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libftdi1 >= 1.0\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libftdi1 >= 1.0\""; } >&5
   ($PKG_CONFIG --exists --print-errors "libftdi1 >= 1.0") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_FTDI_CFLAGS=`$PKG_CONFIG --cflags "libftdi1 >= 1.0" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
@@ -18658,10 +20114,10 @@
     pkg_cv_FTDI_LIBS="$FTDI_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libftdi1 >= 1.0\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libftdi1 >= 1.0\""; } >&5
   ($PKG_CONFIG --exists --print-errors "libftdi1 >= 1.0") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_FTDI_LIBS=`$PKG_CONFIG --libs "libftdi1 >= 1.0" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
@@ -18675,8 +20131,8 @@
 
 
 if test $pkg_failed = yes; then
-   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+   	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -18693,18 +20149,18 @@
 
 	true
 elif test $pkg_failed = untried; then
-     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+     	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 	true
 else
 	FTDI_CFLAGS=$pkg_cv_FTDI_CFLAGS
 	FTDI_LIBS=$pkg_cv_FTDI_LIBS
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
 if test -n "$FTDI_LIBS" -a x$ac_cv_lib_usb_1_0_libusb_get_port_number =  xyes; then
-  $as_echo "#define HAVE_FTDI 1" >>confdefs.h
+  printf "%s\n" "#define HAVE_FTDI 1" >>confdefs.h
 
    if true; then
   BUILD_FTDI_TRUE=
@@ -18729,17 +20185,17 @@
 
 
 pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for PORTAUDIO" >&5
-$as_echo_n "checking for PORTAUDIO... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for PORTAUDIO" >&5
+printf %s "checking for PORTAUDIO... " >&6; }
 
 if test -n "$PORTAUDIO_CFLAGS"; then
     pkg_cv_PORTAUDIO_CFLAGS="$PORTAUDIO_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"portaudio-2.0\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"portaudio-2.0\""; } >&5
   ($PKG_CONFIG --exists --print-errors "portaudio-2.0") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_PORTAUDIO_CFLAGS=`$PKG_CONFIG --cflags "portaudio-2.0" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
@@ -18753,10 +20209,10 @@
     pkg_cv_PORTAUDIO_LIBS="$PORTAUDIO_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"portaudio-2.0\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"portaudio-2.0\""; } >&5
   ($PKG_CONFIG --exists --print-errors "portaudio-2.0") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_PORTAUDIO_LIBS=`$PKG_CONFIG --libs "portaudio-2.0" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
@@ -18770,8 +20226,8 @@
 
 
 if test $pkg_failed = yes; then
-   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+   	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -18788,14 +20244,14 @@
 
 	portaudio=no
 elif test $pkg_failed = untried; then
-     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+     	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 	portaudio=no
 else
 	PORTAUDIO_CFLAGS=$pkg_cv_PORTAUDIO_CFLAGS
 	PORTAUDIO_LIBS=$pkg_cv_PORTAUDIO_LIBS
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 	portaudio=yes
 fi
  if test x$portaudio = xyes; then
@@ -18808,19 +20264,19 @@
 
 
 have_alsa=no
-for ac_header in alsa/asoundlib.h
+       for ac_header in alsa/asoundlib.h
 do :
-  ac_fn_c_check_header_mongrel "$LINENO" "alsa/asoundlib.h" "ac_cv_header_alsa_asoundlib_h" "$ac_includes_default"
-if test "x$ac_cv_header_alsa_asoundlib_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_ALSA_ASOUNDLIB_H 1
-_ACEOF
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for snd_async_del_handler in -lasound" >&5
-$as_echo_n "checking for snd_async_del_handler in -lasound... " >&6; }
-if ${ac_cv_lib_asound_snd_async_del_handler+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  ac_fn_c_check_header_compile "$LINENO" "alsa/asoundlib.h" "ac_cv_header_alsa_asoundlib_h" "$ac_includes_default"
+if test "x$ac_cv_header_alsa_asoundlib_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_ALSA_ASOUNDLIB_H 1" >>confdefs.h
+
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for snd_async_del_handler in -lasound" >&5
+printf %s "checking for snd_async_del_handler in -lasound... " >&6; }
+if test ${ac_cv_lib_asound_snd_async_del_handler+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lasound  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -18829,30 +20285,29 @@
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char snd_async_del_handler ();
 int
-main ()
+main (void)
 {
 return snd_async_del_handler ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_asound_snd_async_del_handler=yes
-else
+else $as_nop
   ac_cv_lib_asound_snd_async_del_handler=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_asound_snd_async_del_handler" >&5
-$as_echo "$ac_cv_lib_asound_snd_async_del_handler" >&6; }
-if test "x$ac_cv_lib_asound_snd_async_del_handler" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_asound_snd_async_del_handler" >&5
+printf "%s\n" "$ac_cv_lib_asound_snd_async_del_handler" >&6; }
+if test "x$ac_cv_lib_asound_snd_async_del_handler" = xyes
+then :
 
      if true; then
   BUILD_LIBALSA_TRUE=
@@ -18862,11 +20317,11 @@
   BUILD_LIBALSA_FALSE=
 fi
 
-    $as_echo "#define HAVE_LIBALSA 1" >>confdefs.h
+    printf "%s\n" "#define HAVE_LIBALSA 1" >>confdefs.h
 
     have_alsa=yes
 
-else
+else $as_nop
 
      if false; then
   BUILD_LIBALSA_TRUE=
@@ -18879,7 +20334,7 @@
 fi
 
 
-else
+else $as_nop
 
    if false; then
   BUILD_LIBALSA_TRUE=
@@ -18894,17 +20349,16 @@
 
 done
 
-
 if test "$have_alsa" = "yes"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ALSA SB RC hwdep support" >&5
-$as_echo_n "checking for ALSA SB RC hwdep support... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ALSA SB RC hwdep support" >&5
+printf %s "checking for ALSA SB RC hwdep support... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 #include 
 
 int
-main ()
+main (void)
 {
 
   if (snd_hwdep_info_get_iface(NULL) == SND_HWDEP_IFACE_SB_RC) {}
@@ -18913,11 +20367,12 @@
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    $as_echo "#define HAVE_ALSA_SB_RC 1" >>confdefs.h
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
+    printf "%s\n" "#define HAVE_ALSA_SB_RC 1" >>confdefs.h
 
      if true; then
   BUILD_ALSA_SB_RC_TRUE=
@@ -18928,10 +20383,10 @@
 fi
 
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
      if false; then
   BUILD_ALSA_SB_RC_TRUE=
   BUILD_ALSA_SB_RC_FALSE='#'
@@ -18942,7 +20397,7 @@
 
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 else
    if false; then
   BUILD_ALSA_SB_RC_TRUE=
@@ -18954,11 +20409,13 @@
 
 fi
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for devinput" >&5
-$as_echo_n "checking for devinput... " >&6; }
-if test "$cross_compiling" = yes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for devinput" >&5
+printf %s "checking for devinput... " >&6; }
+if test "$cross_compiling" = yes
+then :
 
-  if test x$DEVINPUT_HEADER = x -a x$enable_devinput = xyes; then :
+  if test x$DEVINPUT_HEADER = x -a x$enable_devinput = xyes
+then :
 
     as_fn_error $? "
       cannot cross-compile with devinput without DEVINPUT_HEADER
@@ -18971,17 +20428,17 @@
   else
     have_devinput="no"
   fi
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-else
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
   #include 
 
 int
-main ()
+main (void)
 {
 
   return access("/dev/input", R_OK) == 0 ? 0 : 1;
@@ -18990,16 +20447,17 @@
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
 
   have_devinput="yes"
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-else
+else $as_nop
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
   have_devinput="no"
 
 fi
@@ -19009,22 +20467,23 @@
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working poll(2)" >&5
-$as_echo_n "checking for working poll(2)... " >&6; }
-if test "$cross_compiling" = yes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working poll(2)" >&5
+printf %s "checking for working poll(2)... " >&6; }
+if test "$cross_compiling" = yes
+then :
 
     case x$HAVE_WORKING_POLL in #(
   xyes) :
 
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-        $as_echo "#define HAVE_POLL_FINE 1" >>confdefs.h
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
+        printf "%s\n" "#define HAVE_POLL_FINE 1" >>confdefs.h
 
        ;; #(
   xno) :
 
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
        ;; #(
   *) :
 
@@ -19036,7 +20495,7 @@
 esac
 
 
-else
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -19047,7 +20506,7 @@
     #include 
 
 int
-main ()
+main (void)
 {
 
     int fd = open("/dev/tty", O_RDONLY);
@@ -19069,17 +20528,18 @@
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
 
-    $as_echo "#define HAVE_POLL_FINE 1" >>confdefs.h
+    printf "%s\n" "#define HAVE_POLL_FINE 1" >>confdefs.h
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 fi
 rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
@@ -19088,76 +20548,45 @@
 
 
 
-for ac_header in linux/input.h
+       for ac_header in linux/input.h
 do :
-  ac_fn_c_check_header_mongrel "$LINENO" "linux/input.h" "ac_cv_header_linux_input_h" "$ac_includes_default"
-if test "x$ac_cv_header_linux_input_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_LINUX_INPUT_H 1
-_ACEOF
+  ac_fn_c_check_header_compile "$LINENO" "linux/input.h" "ac_cv_header_linux_input_h" "$ac_includes_default"
+if test "x$ac_cv_header_linux_input_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_LINUX_INPUT_H 1" >>confdefs.h
  :
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Cannot find kernel headers" >&5
-$as_echo "$as_me: WARNING: Cannot find kernel headers" >&2;}
-fi
-
-done
-
-
-kernel_header_flags='-I$(top_srcdir)/include'
-for ac_header in linux/lirc.h
-do :
-  ac_fn_c_check_header_mongrel "$LINENO" "linux/lirc.h" "ac_cv_header_linux_lirc_h" "$ac_includes_default"
-if test "x$ac_cv_header_linux_lirc_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_LINUX_LIRC_H 1
-_ACEOF
-
-  $as_echo "#define HAVE_KERNEL_LIRC_H 1" >>confdefs.h
-
-  DRIVER_FLAGS=-DHAVE_KERNEL_LIRC_H
-
-  kernel_header_flags=''
-
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: Cannot find kernel headers" >&5
+printf "%s\n" "$as_me: WARNING: Cannot find kernel headers" >&2;}
 fi
 
 done
 
-
-
-for ac_header in scsi/sg.h
+       for ac_header in scsi/sg.h
 do :
-  ac_fn_c_check_header_mongrel "$LINENO" "scsi/sg.h" "ac_cv_header_scsi_sg_h" "$ac_includes_default"
-if test "x$ac_cv_header_scsi_sg_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_SCSI_SG_H 1
-_ACEOF
-  $as_echo "#define HAVE_SCSI 1" >>confdefs.h
+  ac_fn_c_check_header_compile "$LINENO" "scsi/sg.h" "ac_cv_header_scsi_sg_h" "$ac_includes_default"
+if test "x$ac_cv_header_scsi_sg_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SCSI_SG_H 1" >>confdefs.h
+  printf "%s\n" "#define HAVE_SCSI 1" >>confdefs.h
 
 fi
 
 done
 
-
-for ac_header in mach/mach_time.h
-do :
-  ac_fn_c_check_header_mongrel "$LINENO" "mach/mach_time.h" "ac_cv_header_mach_mach_time_h" "$ac_includes_default"
-if test "x$ac_cv_header_mach_mach_time_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_MACH_MACH_TIME_H 1
-_ACEOF
+ac_fn_c_check_header_compile "$LINENO" "mach/mach_time.h" "ac_cv_header_mach_mach_time_h" "$ac_includes_default"
+if test "x$ac_cv_header_mach_mach_time_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_MACH_MACH_TIME_H 1" >>confdefs.h
 
 fi
 
-done
-
-for ac_header in IOKit/IOCFPlugIn.h
+       for ac_header in IOKit/IOCFPlugIn.h
 do :
-  ac_fn_c_check_header_mongrel "$LINENO" "IOKit/IOCFPlugIn.h" "ac_cv_header_IOKit_IOCFPlugIn_h" "$ac_includes_default"
-if test "x$ac_cv_header_IOKit_IOCFPlugIn_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_IOKIT_IOCFPLUGIN_H 1
-_ACEOF
+  ac_fn_c_check_header_compile "$LINENO" "IOKit/IOCFPlugIn.h" "ac_cv_header_IOKit_IOCFPlugIn_h" "$ac_includes_default"
+if test "x$ac_cv_header_IOKit_IOCFPlugIn_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_IOKIT_IOCFPLUGIN_H 1" >>confdefs.h
 
    if true; then
   HAVE_IOKIT_TRUE=
@@ -19168,7 +20597,7 @@
 fi
 
 
-else
+else $as_nop
 
    if false; then
   HAVE_IOKIT_TRUE=
@@ -19184,34 +20613,26 @@
 
 done
 
-
-for ac_header in linux/input.h
+       for ac_header in linux/input.h
 do :
-  ac_fn_c_check_header_mongrel "$LINENO" "linux/input.h" "ac_cv_header_linux_input_h" "$ac_includes_default"
-if test "x$ac_cv_header_linux_input_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_LINUX_INPUT_H 1
-_ACEOF
-  $as_echo "#define HAVE_LINUX_DEVINPUT 1" >>confdefs.h
+  ac_fn_c_check_header_compile "$LINENO" "linux/input.h" "ac_cv_header_linux_input_h" "$ac_includes_default"
+if test "x$ac_cv_header_linux_input_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_LINUX_INPUT_H 1" >>confdefs.h
+  printf "%s\n" "#define HAVE_LINUX_DEVINPUT 1" >>confdefs.h
 
 fi
 
 done
 
-
-for ac_header in linux/types.h
-do :
-  ac_fn_c_check_header_mongrel "$LINENO" "linux/types.h" "ac_cv_header_linux_types_h" "$ac_includes_default"
-if test "x$ac_cv_header_linux_types_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_LINUX_TYPES_H 1
-_ACEOF
+ac_fn_c_check_header_compile "$LINENO" "linux/types.h" "ac_cv_header_linux_types_h" "$ac_includes_default"
+if test "x$ac_cv_header_linux_types_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_LINUX_TYPES_H 1" >>confdefs.h
 
 fi
 
-done
-
-for ac_header in linux/hiddev.h
+       for ac_header in linux/hiddev.h
 do :
   ac_fn_c_check_header_compile "$LINENO" "linux/hiddev.h" "ac_cv_header_linux_hiddev_h" "#ifdef HAVE_LINUX_TYPES_H
 #include 
@@ -19219,13 +20640,12 @@
 
 
 "
-if test "x$ac_cv_header_linux_hiddev_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_LINUX_HIDDEV_H 1
-_ACEOF
+if test "x$ac_cv_header_linux_hiddev_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_LINUX_HIDDEV_H 1" >>confdefs.h
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for HIDDEV_FLAG_UREF support" >&5
-$as_echo_n "checking for HIDDEV_FLAG_UREF support... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for HIDDEV_FLAG_UREF support" >&5
+printf %s "checking for HIDDEV_FLAG_UREF support... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -19233,7 +20653,7 @@
 #include 
 
 int
-main ()
+main (void)
 {
 
       int flag = HIDDEV_FLAG_UREF;
@@ -19242,11 +20662,12 @@
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    $as_echo "#define HAVE_LINUX_HIDDEV_FLAG_UREF 1" >>confdefs.h
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
+    printf "%s\n" "#define HAVE_LINUX_HIDDEV_FLAG_UREF 1" >>confdefs.h
 
      if true; then
   BUILD_HIDDEV_TRUE=
@@ -19257,10 +20678,10 @@
 fi
 
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
      if false; then
   BUILD_HIDDEV_TRUE=
   BUILD_HIDDEV_FALSE='#'
@@ -19271,9 +20692,9 @@
 
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 
-else
+else $as_nop
 
    if false; then
   BUILD_HIDDEV_TRUE=
@@ -19288,15 +20709,13 @@
 
 done
 
-
 #dnl dsp driver requires linux soundcard api
-for ac_header in sys/soundcard.h
+       for ac_header in sys/soundcard.h
 do :
-  ac_fn_c_check_header_mongrel "$LINENO" "sys/soundcard.h" "ac_cv_header_sys_soundcard_h" "$ac_includes_default"
-if test "x$ac_cv_header_sys_soundcard_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_SYS_SOUNDCARD_H 1
-_ACEOF
+  ac_fn_c_check_header_compile "$LINENO" "sys/soundcard.h" "ac_cv_header_sys_soundcard_h" "$ac_includes_default"
+if test "x$ac_cv_header_sys_soundcard_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_SOUNDCARD_H 1" >>confdefs.h
 
    if true; then
   BUILD_DSP_TRUE=
@@ -19306,10 +20725,10 @@
   BUILD_DSP_FALSE=
 fi
 
-  $as_echo "#define HAVE_SOUNDCARD 1" >>confdefs.h
+  printf "%s\n" "#define HAVE_SOUNDCARD 1" >>confdefs.h
 
 
-else
+else $as_nop
 
    if false; then
   BUILD_DSP_TRUE=
@@ -19324,14 +20743,12 @@
 
 done
 
-
-for ac_header in linux/i2c-dev.h
+       for ac_header in linux/i2c-dev.h
 do :
-  ac_fn_c_check_header_mongrel "$LINENO" "linux/i2c-dev.h" "ac_cv_header_linux_i2c_dev_h" "$ac_includes_default"
-if test "x$ac_cv_header_linux_i2c_dev_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_LINUX_I2C_DEV_H 1
-_ACEOF
+  ac_fn_c_check_header_compile "$LINENO" "linux/i2c-dev.h" "ac_cv_header_linux_i2c_dev_h" "$ac_includes_default"
+if test "x$ac_cv_header_linux_i2c_dev_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_LINUX_I2C_DEV_H 1" >>confdefs.h
 
    if true; then
   BUILD_I2CUSER_TRUE=
@@ -19342,7 +20759,7 @@
 fi
 
 
-else
+else $as_nop
 
    if false; then
   BUILD_I2CUSER_TRUE=
@@ -19358,19 +20775,18 @@
 done
 
 
-
 pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for SYSTEMD" >&5
-$as_echo_n "checking for SYSTEMD... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for SYSTEMD" >&5
+printf %s "checking for SYSTEMD... " >&6; }
 
 if test -n "$SYSTEMD_CFLAGS"; then
     pkg_cv_SYSTEMD_CFLAGS="$SYSTEMD_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd-daemon\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd-daemon\""; } >&5
   ($PKG_CONFIG --exists --print-errors "libsystemd-daemon") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_SYSTEMD_CFLAGS=`$PKG_CONFIG --cflags "libsystemd-daemon" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
@@ -19384,10 +20800,10 @@
     pkg_cv_SYSTEMD_LIBS="$SYSTEMD_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd-daemon\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd-daemon\""; } >&5
   ($PKG_CONFIG --exists --print-errors "libsystemd-daemon") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_SYSTEMD_LIBS=`$PKG_CONFIG --libs "libsystemd-daemon" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
@@ -19401,8 +20817,8 @@
 
 
 if test $pkg_failed = yes; then
-   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+   	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -19419,29 +20835,29 @@
 
 	true
 elif test $pkg_failed = untried; then
-     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+     	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 	true
 else
 	SYSTEMD_CFLAGS=$pkg_cv_SYSTEMD_CFLAGS
 	SYSTEMD_LIBS=$pkg_cv_SYSTEMD_LIBS
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
 test -n "$SYSTEMD_LIBS" ||
 pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for SYSTEMD" >&5
-$as_echo_n "checking for SYSTEMD... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for SYSTEMD" >&5
+printf %s "checking for SYSTEMD... " >&6; }
 
 if test -n "$SYSTEMD_CFLAGS"; then
     pkg_cv_SYSTEMD_CFLAGS="$SYSTEMD_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd\""; } >&5
   ($PKG_CONFIG --exists --print-errors "libsystemd") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_SYSTEMD_CFLAGS=`$PKG_CONFIG --cflags "libsystemd" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
@@ -19455,10 +20871,10 @@
     pkg_cv_SYSTEMD_LIBS="$SYSTEMD_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd\""; } >&5
   ($PKG_CONFIG --exists --print-errors "libsystemd") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_SYSTEMD_LIBS=`$PKG_CONFIG --libs "libsystemd" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
@@ -19472,8 +20888,8 @@
 
 
 if test $pkg_failed = yes; then
-   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+   	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -19490,27 +20906,28 @@
 
 	true
 elif test $pkg_failed = untried; then
-     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+     	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 	true
 else
 	SYSTEMD_CFLAGS=$pkg_cv_SYSTEMD_CFLAGS
 	SYSTEMD_LIBS=$pkg_cv_SYSTEMD_LIBS
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
 if test -n "$SYSTEMD_LIBS"; then
   CFLAGS="$CFLAGS $SYSTEMD_CFLAGS"
-  $as_echo "#define HAVE_SYSTEMD 1" >>confdefs.h
+  printf "%s\n" "#define HAVE_SYSTEMD 1" >>confdefs.h
 
 fi
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for udev_device_new_from_device_id in -ludev" >&5
-$as_echo_n "checking for udev_device_new_from_device_id in -ludev... " >&6; }
-if ${ac_cv_lib_udev_udev_device_new_from_device_id+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for udev_device_new_from_device_id in -ludev" >&5
+printf %s "checking for udev_device_new_from_device_id in -ludev... " >&6; }
+if test ${ac_cv_lib_udev_udev_device_new_from_device_id+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-ludev  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -19519,56 +20936,50 @@
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char udev_device_new_from_device_id ();
 int
-main ()
+main (void)
 {
 return udev_device_new_from_device_id ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_udev_udev_device_new_from_device_id=yes
-else
+else $as_nop
   ac_cv_lib_udev_udev_device_new_from_device_id=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_udev_udev_device_new_from_device_id" >&5
-$as_echo "$ac_cv_lib_udev_udev_device_new_from_device_id" >&6; }
-if test "x$ac_cv_lib_udev_udev_device_new_from_device_id" = xyes; then :
-
-  for ac_header in libudev.h
-do :
-  ac_fn_c_check_header_mongrel "$LINENO" "libudev.h" "ac_cv_header_libudev_h" "$ac_includes_default"
-if test "x$ac_cv_header_libudev_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBUDEV_H 1
-_ACEOF
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_udev_udev_device_new_from_device_id" >&5
+printf "%s\n" "$ac_cv_lib_udev_udev_device_new_from_device_id" >&6; }
+if test "x$ac_cv_lib_udev_udev_device_new_from_device_id" = xyes
+then :
+
+  ac_fn_c_check_header_compile "$LINENO" "libudev.h" "ac_cv_header_libudev_h" "$ac_includes_default"
+if test "x$ac_cv_header_libudev_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_LIBUDEV_H 1" >>confdefs.h
 
 fi
 
-done
-
 
 pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIBUDEV" >&5
-$as_echo_n "checking for LIBUDEV... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for LIBUDEV" >&5
+printf %s "checking for LIBUDEV... " >&6; }
 
 if test -n "$LIBUDEV_CFLAGS"; then
     pkg_cv_LIBUDEV_CFLAGS="$LIBUDEV_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libudev\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libudev\""; } >&5
   ($PKG_CONFIG --exists --print-errors "libudev") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_LIBUDEV_CFLAGS=`$PKG_CONFIG --cflags "libudev" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
@@ -19582,10 +20993,10 @@
     pkg_cv_LIBUDEV_LIBS="$LIBUDEV_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libudev\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libudev\""; } >&5
   ($PKG_CONFIG --exists --print-errors "libudev") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_LIBUDEV_LIBS=`$PKG_CONFIG --libs "libudev" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
@@ -19599,8 +21010,8 @@
 
 
 if test $pkg_failed = yes; then
-   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+   	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -19617,14 +21028,14 @@
 
 	true
 elif test $pkg_failed = untried; then
-     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+     	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 	true
 else
 	LIBUDEV_CFLAGS=$pkg_cv_LIBUDEV_CFLAGS
 	LIBUDEV_LIBS=$pkg_cv_LIBUDEV_LIBS
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
   CFLAGS="$CFLAGS $LIBUDEV_CFLAGS"
@@ -19640,28 +21051,32 @@
 
 
 # Check whether --with-systemdsystemunitdir was given.
-if test "${with_systemdsystemunitdir+set}" = set; then :
+if test ${with_systemdsystemunitdir+y}
+then :
   withval=$with_systemdsystemunitdir;
 fi
 
 
-	{ $as_echo "$as_me:${as_lineno-$LINENO}: checking systemd system unit directory" >&5
-$as_echo_n "checking systemd system unit directory... " >&6; }
+	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking systemd system unit directory" >&5
+printf %s "checking systemd system unit directory... " >&6; }
 
-	if test x"$with_systemdsystemunitdir" = x"yes" -o x"$with_systemdsystemunitdir" = x""; then :
+	if test x"$with_systemdsystemunitdir" = x"yes" -o x"$with_systemdsystemunitdir" = x""
+then :
 
 		ac_systemd_pkgconfig_dir=`$PKG_CONFIG --variable=systemdsystemunitdir systemd`
 
-		if test x"$ac_systemd_pkgconfig_dir" = x""; then :
+		if test x"$ac_systemd_pkgconfig_dir" = x""
+then :
 
-			if test x"$with_systemdsystemunitdir" = x"yes"; then :
+			if test x"$with_systemdsystemunitdir" = x"yes"
+then :
 
 				as_fn_error $? "systemd support requested but pkg-config unable to query systemd package" "$LINENO" 5
 
 fi
 			with_systemdsystemunitdir=no
 
-else
+else $as_nop
 
 			with_systemdsystemunitdir=$ac_systemd_pkgconfig_dir
 
@@ -19669,10 +21084,11 @@
 
 fi
 
-	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_systemdsystemunitdir" >&5
-$as_echo "$with_systemdsystemunitdir" >&6; }
+	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $with_systemdsystemunitdir" >&5
+printf "%s\n" "$with_systemdsystemunitdir" >&6; }
 
-	if test x"$with_systemdsystemunitdir" != x"no"; then :
+	if test x"$with_systemdsystemunitdir" != x"no"
+then :
 
 		systemdsystemunitdir=$with_systemdsystemunitdir
 
@@ -19683,8 +21099,8 @@
 case $kernelversion in #(
   *Ubuntu*) :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: Hardwiring Ubuntu systemd setup" >&5
-$as_echo "$as_me: Hardwiring Ubuntu systemd setup" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Hardwiring Ubuntu systemd setup" >&5
+printf "%s\n" "$as_me: Hardwiring Ubuntu systemd setup" >&6;}
     systemdsystemunitdir=/lib/systemd/system
 
      if true; then
@@ -19720,21 +21136,21 @@
 
 
 # Check whether --with-lockdir was given.
-if test "${with_lockdir+set}" = set; then :
+if test ${with_lockdir+y}
+then :
   withval=$with_lockdir; lockdir=${withval}
-else
+else $as_nop
   lockdir=${lockdir_default}
 fi
 
-cat >>confdefs.h <<_ACEOF
-#define LIRC_LOCKDIR "$lockdir"
-_ACEOF
+printf "%s\n" "#define LIRC_LOCKDIR \"$lockdir\"" >>confdefs.h
 
 
 # Check whether --enable-uinput was given.
-if test "${enable_uinput+set}" = set; then :
+if test ${enable_uinput+y}
+then :
   enableval=$enable_uinput;  enable_uinput="${enableval}"
-else
+else $as_nop
    enable_uinput="${enable_uinput_default}"
 fi
 
@@ -19748,9 +21164,10 @@
 
 
 # Check whether --enable-install_etc was given.
-if test "${enable_install_etc+set}" = set; then :
+if test ${enable_install_etc+y}
+then :
   enableval=$enable_install_etc;  install_etc="${enableval}"
-else
+else $as_nop
    install_etc="yes"
 fi
 
@@ -19765,9 +21182,10 @@
 
 
 # Check whether --enable-devinput was given.
-if test "${enable_devinput+set}" = set; then :
+if test ${enable_devinput+y}
+then :
   enableval=$enable_devinput;  enable_devinput="${enableval}"
-else
+else $as_nop
    enable_devinput="${have_devinput}"
 
 fi
@@ -19787,6 +21205,9 @@
 
 
 
+
+
+
 suffix=$(echo "$VERSION" | sed 's/.*-//')
  if test x$suffix = xdevel; then
   DEVEL_TRUE=
@@ -19812,20 +21233,14 @@
 
 
 
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE "$PACKAGE"
-_ACEOF
+printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h
 
-cat >>confdefs.h <<_ACEOF
-#define VERSION "$VERSION"
-_ACEOF
+printf "%s\n" "#define VERSION \"$VERSION\"" >>confdefs.h
 
-cat >>confdefs.h <<_ACEOF
-#define SH_PATH "$SH_PATH"
-_ACEOF
+printf "%s\n" "#define SH_PATH \"$SH_PATH\"" >>confdefs.h
 
 
-$as_echo "#define LIRC_OPTIONS_VAR \"LIRC_OPTIONS_PATH\"" >>confdefs.h
+printf "%s\n" "#define LIRC_OPTIONS_VAR \"LIRC_OPTIONS_PATH\"" >>confdefs.h
 
 
 
@@ -19861,8 +21276,8 @@
     case $ac_val in #(
     *${as_nl}*)
       case $ac_var in #(
-      *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
-$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
+      *_cv_*) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
+printf "%s\n" "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
       esac
       case $ac_var in #(
       _ | IFS | as_nl) ;; #(
@@ -19892,15 +21307,15 @@
      /^ac_cv_env_/b end
      t clear
      :clear
-     s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
+     s/^\([^=]*\)=\(.*[{}].*\)$/test ${\1+y} || &/
      t end
      s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
      :end' >>confcache
 if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
   if test -w "$cache_file"; then
     if test "x$cache_file" != "x/dev/null"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5
-$as_echo "$as_me: updating cache $cache_file" >&6;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5
+printf "%s\n" "$as_me: updating cache $cache_file" >&6;}
       if test ! -f "$cache_file" || test -h "$cache_file"; then
 	cat confcache >"$cache_file"
       else
@@ -19914,8 +21329,8 @@
       fi
     fi
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5
-$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5
+printf "%s\n" "$as_me: not updating unwritable cache $cache_file" >&6;}
   fi
 fi
 rm -f confcache
@@ -19932,7 +21347,7 @@
 for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
   # 1. Remove the extension, and $U if already installed.
   ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
-  ac_i=`$as_echo "$ac_i" | sed "$ac_script"`
+  ac_i=`printf "%s\n" "$ac_i" | sed "$ac_script"`
   # 2. Prepend LIBOBJDIR.  When used with automake>=1.10 LIBOBJDIR
   #    will be set to the directory where LIBOBJS objects are built.
   as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext"
@@ -19943,14 +21358,14 @@
 LTLIBOBJS=$ac_ltlibobjs
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking that generated files are newer than configure" >&5
-$as_echo_n "checking that generated files are newer than configure... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking that generated files are newer than configure" >&5
+printf %s "checking that generated files are newer than configure... " >&6; }
    if test -n "$am_sleep_pid"; then
      # Hide warnings about reused PIDs.
      wait $am_sleep_pid 2>/dev/null
    fi
-   { $as_echo "$as_me:${as_lineno-$LINENO}: result: done" >&5
-$as_echo "done" >&6; }
+   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: done" >&5
+printf "%s\n" "done" >&6; }
  if test -n "$EXEEXT"; then
   am__EXEEXT_TRUE=
   am__EXEEXT_FALSE='#'
@@ -20112,8 +21527,8 @@
 ac_write_fail=0
 ac_clean_files_save=$ac_clean_files
 ac_clean_files="$ac_clean_files $CONFIG_STATUS"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5
-$as_echo "$as_me: creating $CONFIG_STATUS" >&6;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5
+printf "%s\n" "$as_me: creating $CONFIG_STATUS" >&6;}
 as_write_fail=0
 cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1
 #! $SHELL
@@ -20136,14 +21551,16 @@
 
 # Be more Bourne compatible
 DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
+as_nop=:
+if test ${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1
+then :
   emulate sh
   NULLCMD=:
   # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
   # is contrary to our usage.  Disable this feature.
   alias -g '${1+"$@"}'='"$@"'
   setopt NO_GLOB_SUBST
-else
+else $as_nop
   case `(set -o) 2>/dev/null` in #(
   *posix*) :
     set -o posix ;; #(
@@ -20153,46 +21570,46 @@
 fi
 
 
+
+# Reset variables that may have inherited troublesome values from
+# the environment.
+
+# IFS needs to be set, to space, tab, and newline, in precisely that order.
+# (If _AS_PATH_WALK were called with IFS unset, it would have the
+# side effect of setting IFS to empty, thus disabling word splitting.)
+# Quoting is to prevent editors from complaining about space-tab.
 as_nl='
 '
 export as_nl
-# Printing a long string crashes Solaris 7 /usr/bin/printf.
-as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-# Prefer a ksh shell builtin over an external printf program on Solaris,
-# but without wasting forks for bash or zsh.
-if test -z "$BASH_VERSION$ZSH_VERSION" \
-    && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
-  as_echo='print -r --'
-  as_echo_n='print -rn --'
-elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
-  as_echo='printf %s\n'
-  as_echo_n='printf %s'
-else
-  if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
-    as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
-    as_echo_n='/usr/ucb/echo -n'
-  else
-    as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
-    as_echo_n_body='eval
-      arg=$1;
-      case $arg in #(
-      *"$as_nl"*)
-	expr "X$arg" : "X\\(.*\\)$as_nl";
-	arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
-      esac;
-      expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
-    '
-    export as_echo_n_body
-    as_echo_n='sh -c $as_echo_n_body as_echo'
-  fi
-  export as_echo_body
-  as_echo='sh -c $as_echo_body as_echo'
-fi
+IFS=" ""	$as_nl"
+
+PS1='$ '
+PS2='> '
+PS4='+ '
+
+# Ensure predictable behavior from utilities with locale-dependent output.
+LC_ALL=C
+export LC_ALL
+LANGUAGE=C
+export LANGUAGE
+
+# We cannot yet rely on "unset" to work, but we need these variables
+# to be unset--not just set to an empty or harmless value--now, to
+# avoid bugs in old shells (e.g. pre-3.0 UWIN ksh).  This construct
+# also avoids known problems related to "unset" and subshell syntax
+# in other old shells (e.g. bash 2.01 and pdksh 5.2.14).
+for as_var in BASH_ENV ENV MAIL MAILPATH CDPATH
+do eval test \${$as_var+y} \
+  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
+done
+
+# Ensure that fds 0, 1, and 2 are open.
+if (exec 3>&0) 2>/dev/null; then :; else exec 0&1) 2>/dev/null; then :; else exec 1>/dev/null; fi
+if (exec 3>&2)            ; then :; else exec 2>/dev/null; fi
 
 # The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
+if ${PATH_SEPARATOR+false} :; then
   PATH_SEPARATOR=:
   (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
     (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
@@ -20201,13 +21618,6 @@
 fi
 
 
-# IFS
-# We need space, tab and new line, in precisely that order.  Quoting is
-# there to prevent editors from complaining about space-tab.
-# (If _AS_PATH_WALK were called with IFS unset, it would disable word
-# splitting by setting IFS to empty value.)
-IFS=" ""	$as_nl"
-
 # Find who we are.  Look in the path if we contain no directory separator.
 as_myself=
 case $0 in #((
@@ -20216,8 +21626,12 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    test -r "$as_dir$0" && as_myself=$as_dir$0 && break
   done
 IFS=$as_save_IFS
 
@@ -20229,30 +21643,10 @@
   as_myself=$0
 fi
 if test ! -f "$as_myself"; then
-  $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
+  printf "%s\n" "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
   exit 1
 fi
 
-# Unset variables that we do not need and which cause bugs (e.g. in
-# pre-3.0 UWIN ksh).  But do not cause bugs in bash 2.01; the "|| exit 1"
-# suppresses any "Segmentation fault" message there.  '((' could
-# trigger a bug in pdksh 5.2.14.
-for as_var in BASH_ENV ENV MAIL MAILPATH
-do eval test x\${$as_var+set} = xset \
-  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
-done
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-LC_ALL=C
-export LC_ALL
-LANGUAGE=C
-export LANGUAGE
-
-# CDPATH.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
 
 
 # as_fn_error STATUS ERROR [LINENO LOG_FD]
@@ -20265,13 +21659,14 @@
   as_status=$1; test $as_status -eq 0 && as_status=1
   if test "$4"; then
     as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-    $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
   fi
-  $as_echo "$as_me: error: $2" >&2
+  printf "%s\n" "$as_me: error: $2" >&2
   as_fn_exit $as_status
 } # as_fn_error
 
 
+
 # as_fn_set_status STATUS
 # -----------------------
 # Set $? to STATUS, without forking.
@@ -20298,18 +21693,20 @@
   { eval $1=; unset $1;}
 }
 as_unset=as_fn_unset
+
 # as_fn_append VAR VALUE
 # ----------------------
 # Append the text in VALUE to the end of the definition contained in VAR. Take
 # advantage of any shell optimizations that allow amortized linear growth over
 # repeated appends, instead of the typical quadratic growth present in naive
 # implementations.
-if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
+if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null
+then :
   eval 'as_fn_append ()
   {
     eval $1+=\$2
   }'
-else
+else $as_nop
   as_fn_append ()
   {
     eval $1=\$$1\$2
@@ -20321,12 +21718,13 @@
 # Perform arithmetic evaluation on the ARGs, and store the result in the
 # global $as_val. Take advantage of shells that can avoid forks. The arguments
 # must be portable across $(()) and expr.
-if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
+if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null
+then :
   eval 'as_fn_arith ()
   {
     as_val=$(( $* ))
   }'
-else
+else $as_nop
   as_fn_arith ()
   {
     as_val=`expr "$@" || test $? -eq 1`
@@ -20357,7 +21755,7 @@
 $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
 	 X"$0" : 'X\(//\)$' \| \
 	 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$0" |
+printf "%s\n" X/"$0" |
     sed '/^.*\/\([^/][^/]*\)\/*$/{
 	    s//\1/
 	    q
@@ -20379,6 +21777,10 @@
 as_cr_digits='0123456789'
 as_cr_alnum=$as_cr_Letters$as_cr_digits
 
+
+# Determine whether it's possible to make 'echo' print without a newline.
+# These variables are no longer used directly by Autoconf, but are AC_SUBSTed
+# for compatibility with existing Makefiles.
 ECHO_C= ECHO_N= ECHO_T=
 case `echo -n x` in #(((((
 -n*)
@@ -20392,6 +21794,12 @@
   ECHO_N='-n';;
 esac
 
+# For backward compatibility with old third-party macros, we provide
+# the shell variables $as_echo and $as_echo_n.  New code should use
+# AS_ECHO(["message"]) and AS_ECHO_N(["message"]), respectively.
+as_echo='printf %s\n'
+as_echo_n='printf %s'
+
 rm -f conf$$ conf$$.exe conf$$.file
 if test -d conf$$.dir; then
   rm -f conf$$.dir/conf$$.file
@@ -20433,7 +21841,7 @@
     as_dirs=
     while :; do
       case $as_dir in #(
-      *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
+      *\'*) as_qdir=`printf "%s\n" "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
       *) as_qdir=$as_dir;;
       esac
       as_dirs="'$as_qdir' $as_dirs"
@@ -20442,7 +21850,7 @@
 	 X"$as_dir" : 'X\(//\)[^/]' \| \
 	 X"$as_dir" : 'X\(//\)$' \| \
 	 X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_dir" |
+printf "%s\n" X"$as_dir" |
     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
 	    s//\1/
 	    q
@@ -20504,8 +21912,8 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by lirc $as_me 0.10.1, which was
-generated by GNU Autoconf 2.69.  Invocation command line was
+This file was extended by lirc $as_me 0.10.2, which was
+generated by GNU Autoconf 2.71.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
   CONFIG_HEADERS  = $CONFIG_HEADERS
@@ -20567,14 +21975,16 @@
 Report bugs to the package provider."
 
 _ACEOF
+ac_cs_config=`printf "%s\n" "$ac_configure_args" | sed "$ac_safe_unquote"`
+ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\''/g"`
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
+ac_cs_config='$ac_cs_config_escaped'
 ac_cs_version="\\
-lirc config.status 0.10.1
-configured by $0, generated by GNU Autoconf 2.69,
+lirc config.status 0.10.2
+configured by $0, generated by GNU Autoconf 2.71,
   with options \\"\$ac_cs_config\\"
 
-Copyright (C) 2012 Free Software Foundation, Inc.
+Copyright (C) 2021 Free Software Foundation, Inc.
 This config.status script is free software; the Free Software Foundation
 gives unlimited permission to copy, distribute and modify it."
 
@@ -20614,15 +22024,15 @@
   -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
     ac_cs_recheck=: ;;
   --version | --versio | --versi | --vers | --ver | --ve | --v | -V )
-    $as_echo "$ac_cs_version"; exit ;;
+    printf "%s\n" "$ac_cs_version"; exit ;;
   --config | --confi | --conf | --con | --co | --c )
-    $as_echo "$ac_cs_config"; exit ;;
+    printf "%s\n" "$ac_cs_config"; exit ;;
   --debug | --debu | --deb | --de | --d | -d )
     debug=: ;;
   --file | --fil | --fi | --f )
     $ac_shift
     case $ac_optarg in
-    *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
+    *\'*) ac_optarg=`printf "%s\n" "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
     '') as_fn_error $? "missing file argument" ;;
     esac
     as_fn_append CONFIG_FILES " '$ac_optarg'"
@@ -20630,7 +22040,7 @@
   --header | --heade | --head | --hea )
     $ac_shift
     case $ac_optarg in
-    *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
+    *\'*) ac_optarg=`printf "%s\n" "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
     esac
     as_fn_append CONFIG_HEADERS " '$ac_optarg'"
     ac_need_defaults=false;;
@@ -20639,7 +22049,7 @@
     as_fn_error $? "ambiguous option: \`$1'
 Try \`$0 --help' for more information.";;
   --help | --hel | -h )
-    $as_echo "$ac_cs_usage"; exit ;;
+    printf "%s\n" "$ac_cs_usage"; exit ;;
   -q | -quiet | --quiet | --quie | --qui | --qu | --q \
   | -silent | --silent | --silen | --sile | --sil | --si | --s)
     ac_cs_silent=: ;;
@@ -20667,7 +22077,7 @@
 if \$ac_cs_recheck; then
   set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
   shift
-  \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
+  \printf "%s\n" "running CONFIG_SHELL=$SHELL \$*" >&6
   CONFIG_SHELL='$SHELL'
   export CONFIG_SHELL
   exec "\$@"
@@ -20681,7 +22091,7 @@
   sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
 ## Running $as_me. ##
 _ASBOX
-  $as_echo "$ac_log"
+  printf "%s\n" "$ac_log"
 } >&5
 
 _ACEOF
@@ -20689,7 +22099,7 @@
 #
 # INIT-COMMANDS
 #
-AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"
+AMDEP_TRUE="$AMDEP_TRUE" MAKE="${MAKE-make}"
 
 
 # The HP-UX ksh and POSIX shell print the target directory to stdout
@@ -20733,6 +22143,7 @@
 lt_cv_to_tool_file_cmd='`$ECHO "$lt_cv_to_tool_file_cmd" | $SED "$delay_single_quote_subst"`'
 reload_flag='`$ECHO "$reload_flag" | $SED "$delay_single_quote_subst"`'
 reload_cmds='`$ECHO "$reload_cmds" | $SED "$delay_single_quote_subst"`'
+FILECMD='`$ECHO "$FILECMD" | $SED "$delay_single_quote_subst"`'
 OBJDUMP='`$ECHO "$OBJDUMP" | $SED "$delay_single_quote_subst"`'
 deplibs_check_method='`$ECHO "$deplibs_check_method" | $SED "$delay_single_quote_subst"`'
 file_magic_cmd='`$ECHO "$file_magic_cmd" | $SED "$delay_single_quote_subst"`'
@@ -20741,6 +22152,7 @@
 DLLTOOL='`$ECHO "$DLLTOOL" | $SED "$delay_single_quote_subst"`'
 sharedlib_from_linklib_cmd='`$ECHO "$sharedlib_from_linklib_cmd" | $SED "$delay_single_quote_subst"`'
 AR='`$ECHO "$AR" | $SED "$delay_single_quote_subst"`'
+lt_ar_flags='`$ECHO "$lt_ar_flags" | $SED "$delay_single_quote_subst"`'
 AR_FLAGS='`$ECHO "$AR_FLAGS" | $SED "$delay_single_quote_subst"`'
 archiver_list_spec='`$ECHO "$archiver_list_spec" | $SED "$delay_single_quote_subst"`'
 STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`'
@@ -20915,6 +22327,7 @@
 lt_SP2NL \
 lt_NL2SP \
 reload_flag \
+FILECMD \
 OBJDUMP \
 deplibs_check_method \
 file_magic_cmd \
@@ -20923,7 +22336,6 @@
 DLLTOOL \
 sharedlib_from_linklib_cmd \
 AR \
-AR_FLAGS \
 archiver_list_spec \
 STRIP \
 RANLIB \
@@ -21106,9 +22518,9 @@
 # We use the long form for the default assignment because of an extremely
 # bizarre bug on SunOS 4.1.3.
 if $ac_need_defaults; then
-  test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
-  test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
-  test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands
+  test ${CONFIG_FILES+y} || CONFIG_FILES=$config_files
+  test ${CONFIG_HEADERS+y} || CONFIG_HEADERS=$config_headers
+  test ${CONFIG_COMMANDS+y} || CONFIG_COMMANDS=$config_commands
 fi
 
 # Have a temporary directory for convenience.  Make it in the build tree
@@ -21444,7 +22856,7 @@
 	   esac ||
 	   as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;;
       esac
-      case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
+      case $ac_f in *\'*) ac_f=`printf "%s\n" "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
       as_fn_append ac_file_inputs " '$ac_f'"
     done
 
@@ -21452,17 +22864,17 @@
     # use $as_me), people would be surprised to read:
     #    /* config.h.  Generated by config.status.  */
     configure_input='Generated from '`
-	  $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g'
+	  printf "%s\n" "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g'
 	`' by configure.'
     if test x"$ac_file" != x-; then
       configure_input="$ac_file.  $configure_input"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5
-$as_echo "$as_me: creating $ac_file" >&6;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5
+printf "%s\n" "$as_me: creating $ac_file" >&6;}
     fi
     # Neutralize special characters interpreted by sed in replacement strings.
     case $configure_input in #(
     *\&* | *\|* | *\\* )
-       ac_sed_conf_input=`$as_echo "$configure_input" |
+       ac_sed_conf_input=`printf "%s\n" "$configure_input" |
        sed 's/[\\\\&|]/\\\\&/g'`;; #(
     *) ac_sed_conf_input=$configure_input;;
     esac
@@ -21479,7 +22891,7 @@
 	 X"$ac_file" : 'X\(//\)[^/]' \| \
 	 X"$ac_file" : 'X\(//\)$' \| \
 	 X"$ac_file" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$ac_file" |
+printf "%s\n" X"$ac_file" |
     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
 	    s//\1/
 	    q
@@ -21503,9 +22915,9 @@
 case "$ac_dir" in
 .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
 *)
-  ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
+  ac_dir_suffix=/`printf "%s\n" "$ac_dir" | sed 's|^\.[\\/]||'`
   # A ".." for each directory in $ac_dir_suffix.
-  ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
+  ac_top_builddir_sub=`printf "%s\n" "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
   case $ac_top_builddir_sub in
   "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
   *)  ac_top_build_prefix=$ac_top_builddir_sub/ ;;
@@ -21567,8 +22979,8 @@
 case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in
 *datarootdir*) ac_datarootdir_seen=yes;;
 *@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*)
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
-$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
+printf "%s\n" "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
 _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
   ac_datarootdir_hack='
@@ -21612,9 +23024,9 @@
   { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } &&
   { ac_out=`sed -n '/^[	 ]*datarootdir[	 ]*:*=/p' \
       "$ac_tmp/out"`; test -z "$ac_out"; } &&
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'
 which seems to be undefined.  Please make sure it is defined" >&5
-$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
+printf "%s\n" "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
 which seems to be undefined.  Please make sure it is defined" >&2;}
 
   rm -f "$ac_tmp/stdin"
@@ -21630,20 +23042,20 @@
   #
   if test x"$ac_file" != x-; then
     {
-      $as_echo "/* $configure_input  */" \
+      printf "%s\n" "/* $configure_input  */" >&1 \
       && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs"
     } >"$ac_tmp/config.h" \
       || as_fn_error $? "could not create $ac_file" "$LINENO" 5
     if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5
-$as_echo "$as_me: $ac_file is unchanged" >&6;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5
+printf "%s\n" "$as_me: $ac_file is unchanged" >&6;}
     else
       rm -f "$ac_file"
       mv "$ac_tmp/config.h" "$ac_file" \
 	|| as_fn_error $? "could not create $ac_file" "$LINENO" 5
     fi
   else
-    $as_echo "/* $configure_input  */" \
+    printf "%s\n" "/* $configure_input  */" >&1 \
       && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \
       || as_fn_error $? "could not create -" "$LINENO" 5
   fi
@@ -21663,7 +23075,7 @@
 	 X"$_am_arg" : 'X\(//\)[^/]' \| \
 	 X"$_am_arg" : 'X\(//\)$' \| \
 	 X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$_am_arg" |
+printf "%s\n" X"$_am_arg" |
     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
 	    s//\1/
 	    q
@@ -21683,8 +23095,8 @@
 	  s/.*/./; q'`/stamp-h$_am_stamp_count
  ;;
 
-  :C)  { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5
-$as_echo "$as_me: executing $ac_file commands" >&6;}
+  :C)  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5
+printf "%s\n" "$as_me: executing $ac_file commands" >&6;}
  ;;
   esac
 
@@ -21694,29 +23106,35 @@
   # Older Autoconf quotes --file arguments for eval, but not when files
   # are listed without --file.  Let's play safe and only enable the eval
   # if we detect the quoting.
-  case $CONFIG_FILES in
-  *\'*) eval set x "$CONFIG_FILES" ;;
-  *)   set x $CONFIG_FILES ;;
-  esac
+  # TODO: see whether this extra hack can be removed once we start
+  # requiring Autoconf 2.70 or later.
+  case $CONFIG_FILES in #(
+  *\'*) :
+    eval set x "$CONFIG_FILES" ;; #(
+  *) :
+    set x $CONFIG_FILES ;; #(
+  *) :
+     ;;
+esac
   shift
-  for mf
+  # Used to flag and report bootstrapping failures.
+  am_rc=0
+  for am_mf
   do
     # Strip MF so we end up with the name of the file.
-    mf=`echo "$mf" | sed -e 's/:.*$//'`
-    # Check whether this is an Automake generated Makefile or not.
-    # We used to match only the files named 'Makefile.in', but
-    # some people rename them; so instead we look at the file content.
-    # Grep'ing the first line is not enough: some people post-process
-    # each Makefile.in and add a new line on top of each file to say so.
-    # Grep'ing the whole file is not good either: AIX grep has a line
+    am_mf=`printf "%s\n" "$am_mf" | sed -e 's/:.*$//'`
+    # Check whether this is an Automake generated Makefile which includes
+    # dependency-tracking related rules and includes.
+    # Grep'ing the whole file directly is not great: AIX grep has a line
     # limit of 2048, but all sed's we know have understand at least 4000.
-    if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
-      dirpart=`$as_dirname -- "$mf" ||
-$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-	 X"$mf" : 'X\(//\)[^/]' \| \
-	 X"$mf" : 'X\(//\)$' \| \
-	 X"$mf" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$mf" |
+    sed -n 's,^am--depfiles:.*,X,p' "$am_mf" | grep X >/dev/null 2>&1 \
+      || continue
+    am_dirpart=`$as_dirname -- "$am_mf" ||
+$as_expr X"$am_mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+	 X"$am_mf" : 'X\(//\)[^/]' \| \
+	 X"$am_mf" : 'X\(//\)$' \| \
+	 X"$am_mf" : 'X\(/\)' \| . 2>/dev/null ||
+printf "%s\n" X"$am_mf" |
     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
 	    s//\1/
 	    q
@@ -21734,53 +23152,50 @@
 	    q
 	  }
 	  s/.*/./; q'`
-    else
-      continue
-    fi
-    # Extract the definition of DEPDIR, am__include, and am__quote
-    # from the Makefile without running 'make'.
-    DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
-    test -z "$DEPDIR" && continue
-    am__include=`sed -n 's/^am__include = //p' < "$mf"`
-    test -z "$am__include" && continue
-    am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
-    # Find all dependency output files, they are included files with
-    # $(DEPDIR) in their names.  We invoke sed twice because it is the
-    # simplest approach to changing $(DEPDIR) to its actual value in the
-    # expansion.
-    for file in `sed -n "
-      s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
-	 sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do
-      # Make sure the directory exists.
-      test -f "$dirpart/$file" && continue
-      fdir=`$as_dirname -- "$file" ||
-$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-	 X"$file" : 'X\(//\)[^/]' \| \
-	 X"$file" : 'X\(//\)$' \| \
-	 X"$file" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$file" |
-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\(\/\/\)[^/].*/{
+    am_filepart=`$as_basename -- "$am_mf" ||
+$as_expr X/"$am_mf" : '.*/\([^/][^/]*\)/*$' \| \
+	 X"$am_mf" : 'X\(//\)$' \| \
+	 X"$am_mf" : 'X\(/\)' \| . 2>/dev/null ||
+printf "%s\n" X/"$am_mf" |
+    sed '/^.*\/\([^/][^/]*\)\/*$/{
 	    s//\1/
 	    q
 	  }
-	  /^X\(\/\/\)$/{
+	  /^X\/\(\/\/\)$/{
 	    s//\1/
 	    q
 	  }
-	  /^X\(\/\).*/{
+	  /^X\/\(\/\).*/{
 	    s//\1/
 	    q
 	  }
 	  s/.*/./; q'`
-      as_dir=$dirpart/$fdir; as_fn_mkdir_p
-      # echo "creating $dirpart/$file"
-      echo '# dummy' > "$dirpart/$file"
-    done
+    { echo "$as_me:$LINENO: cd "$am_dirpart" \
+      && sed -e '/# am--include-marker/d' "$am_filepart" \
+        | $MAKE -f - am--depfiles" >&5
+   (cd "$am_dirpart" \
+      && sed -e '/# am--include-marker/d' "$am_filepart" \
+        | $MAKE -f - am--depfiles) >&5 2>&5
+   ac_status=$?
+   echo "$as_me:$LINENO: \$? = $ac_status" >&5
+   (exit $ac_status); } || am_rc=$?
   done
+  if test $am_rc -ne 0; then
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "Something went wrong bootstrapping makefile fragments
+    for automatic dependency tracking.  If GNU make was not used, consider
+    re-running the configure script with MAKE=\"gmake\" (or whatever is
+    necessary).  You can also try re-running configure with the
+    '--disable-dependency-tracking' option to at least be able to build
+    the package (albeit without support for automatic dependency tracking).
+See \`config.log' for more details" "$LINENO" 5; }
+  fi
+  { am_dirpart=; unset am_dirpart;}
+  { am_filepart=; unset am_filepart;}
+  { am_mf=; unset am_mf;}
+  { am_rc=; unset am_rc;}
+  rm -f conftest-deps.mk
 }
  ;;
     "libtool":C)
@@ -21918,6 +23333,9 @@
 # convert \$build files to toolchain format.
 to_tool_file_cmd=$lt_cv_to_tool_file_cmd
 
+# A file(cmd) program that detects file types.
+FILECMD=$lt_FILECMD
+
 # An object symbol dumper.
 OBJDUMP=$lt_OBJDUMP
 
@@ -21942,8 +23360,11 @@
 # The archiver.
 AR=$lt_AR
 
+# Flags to create an archive (by configure).
+lt_ar_flags=$lt_ar_flags
+
 # Flags to create an archive.
-AR_FLAGS=$lt_AR_FLAGS
+AR_FLAGS=\${ARFLAGS-"\$lt_ar_flags"}
 
 # How to feed a file listing to the archiver.
 archiver_list_spec=$lt_archiver_list_spec
@@ -22325,6 +23746,7 @@
   esac
 
 
+
 ltmain=$ac_aux_dir/ltmain.sh
 
 
@@ -22332,7 +23754,7 @@
   # if finds mixed CR/LF and LF-only lines.  Since sed operates in
   # text mode, it properly converts lines to CR/LF.  This bash problem
   # is reportedly fixed, but why not run on old versions too?
-  sed '$q' "$ltmain" >> "$cfgfile" \
+  $SED '$q' "$ltmain" >> "$cfgfile" \
      || (rm -f "$cfgfile"; exit 1)
 
    mv -f "$cfgfile" "$ofile" ||
@@ -22527,14 +23949,14 @@
   $ac_cs_success || as_fn_exit 1
 fi
 if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
-$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
+printf "%s\n" "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
 fi
 
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result:
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result:
 Summary of selected options:
 ----------------------------------------
 prefix:                         $prefix
@@ -22549,7 +23971,7 @@
 
 Conditionals:
 " >&5
-$as_echo "
+printf "%s\n" "
 Summary of selected options:
 ----------------------------------------
 prefix:                         $prefix
@@ -22566,9 +23988,10 @@
 " >&6; }
 
 
-  if test -z $BUILD_ALSA_SB_RC_TRUE; then :
+  if test -z $BUILD_ALSA_SB_RC_TRUE
+then :
   enabled="yes"
-else
+else $as_nop
   enabled="no"
 fi
   printf "%-27s%-12s" BUILD_ALSA_SB_RC: $enabled
@@ -22580,14 +24003,16 @@
   *) :
      ;;
 esac
-  if test x$report_col = x2; then :
-  $as_echo
+  if test x$report_col = x2
+then :
+  printf "%s\n"
 fi
 
 
-  if test -z $BUILD_DSP_TRUE; then :
+  if test -z $BUILD_DSP_TRUE
+then :
   enabled="yes"
-else
+else $as_nop
   enabled="no"
 fi
   printf "%-27s%-12s" BUILD_DSP: $enabled
@@ -22599,14 +24024,16 @@
   *) :
      ;;
 esac
-  if test x$report_col = x2; then :
-  $as_echo
+  if test x$report_col = x2
+then :
+  printf "%s\n"
 fi
 
 
-  if test -z $BUILD_FTDI_TRUE; then :
+  if test -z $BUILD_FTDI_TRUE
+then :
   enabled="yes"
-else
+else $as_nop
   enabled="no"
 fi
   printf "%-27s%-12s" BUILD_FTDI: $enabled
@@ -22618,14 +24045,16 @@
   *) :
      ;;
 esac
-  if test x$report_col = x2; then :
-  $as_echo
+  if test x$report_col = x2
+then :
+  printf "%s\n"
 fi
 
 
-  if test -z $BUILD_HIDDEV_TRUE; then :
+  if test -z $BUILD_HIDDEV_TRUE
+then :
   enabled="yes"
-else
+else $as_nop
   enabled="no"
 fi
   printf "%-27s%-12s" BUILD_HIDDEV: $enabled
@@ -22637,14 +24066,16 @@
   *) :
      ;;
 esac
-  if test x$report_col = x2; then :
-  $as_echo
+  if test x$report_col = x2
+then :
+  printf "%s\n"
 fi
 
 
-  if test -z $BUILD_I2CUSER_TRUE; then :
+  if test -z $BUILD_I2CUSER_TRUE
+then :
   enabled="yes"
-else
+else $as_nop
   enabled="no"
 fi
   printf "%-27s%-12s" BUILD_I2CUSER: $enabled
@@ -22656,14 +24087,16 @@
   *) :
      ;;
 esac
-  if test x$report_col = x2; then :
-  $as_echo
+  if test x$report_col = x2
+then :
+  printf "%s\n"
 fi
 
 
-  if test -z $BUILD_LIBALSA_TRUE; then :
+  if test -z $BUILD_LIBALSA_TRUE
+then :
   enabled="yes"
-else
+else $as_nop
   enabled="no"
 fi
   printf "%-27s%-12s" BUILD_LIBALSA: $enabled
@@ -22675,14 +24108,16 @@
   *) :
      ;;
 esac
-  if test x$report_col = x2; then :
-  $as_echo
+  if test x$report_col = x2
+then :
+  printf "%s\n"
 fi
 
 
-  if test -z $BUILD_LIBPORTAUDIO_TRUE; then :
+  if test -z $BUILD_LIBPORTAUDIO_TRUE
+then :
   enabled="yes"
-else
+else $as_nop
   enabled="no"
 fi
   printf "%-27s%-12s" BUILD_LIBPORTAUDIO: $enabled
@@ -22694,14 +24129,16 @@
   *) :
      ;;
 esac
-  if test x$report_col = x2; then :
-  $as_echo
+  if test x$report_col = x2
+then :
+  printf "%s\n"
 fi
 
 
-  if test -z $BUILD_USB_TRUE; then :
+  if test -z $BUILD_USB_TRUE
+then :
   enabled="yes"
-else
+else $as_nop
   enabled="no"
 fi
   printf "%-27s%-12s" BUILD_USB: $enabled
@@ -22713,14 +24150,16 @@
   *) :
      ;;
 esac
-  if test x$report_col = x2; then :
-  $as_echo
+  if test x$report_col = x2
+then :
+  printf "%s\n"
 fi
 
 
-  if test -z $BUILD_XTOOLS_TRUE; then :
+  if test -z $BUILD_XTOOLS_TRUE
+then :
   enabled="yes"
-else
+else $as_nop
   enabled="no"
 fi
   printf "%-27s%-12s" BUILD_XTOOLS: $enabled
@@ -22732,14 +24171,16 @@
   *) :
      ;;
 esac
-  if test x$report_col = x2; then :
-  $as_echo
+  if test x$report_col = x2
+then :
+  printf "%s\n"
 fi
 
 
-  if test -z $HAVE_DOXYGEN_TRUE; then :
+  if test -z $HAVE_DOXYGEN_TRUE
+then :
   enabled="yes"
-else
+else $as_nop
   enabled="no"
 fi
   printf "%-27s%-12s" HAVE_DOXYGEN: $enabled
@@ -22751,14 +24192,16 @@
   *) :
      ;;
 esac
-  if test x$report_col = x2; then :
-  $as_echo
+  if test x$report_col = x2
+then :
+  printf "%s\n"
 fi
 
 
-  if test -z $HAVE_MAN2HTML_TRUE; then :
+  if test -z $HAVE_MAN2HTML_TRUE
+then :
   enabled="yes"
-else
+else $as_nop
   enabled="no"
 fi
   printf "%-27s%-12s" HAVE_MAN2HTML: $enabled
@@ -22770,14 +24213,16 @@
   *) :
      ;;
 esac
-  if test x$report_col = x2; then :
-  $as_echo
+  if test x$report_col = x2
+then :
+  printf "%s\n"
 fi
 
 
-  if test -z $HAVE_PYMOD_YAML_TRUE; then :
+  if test -z $HAVE_PYMOD_YAML_TRUE
+then :
   enabled="yes"
-else
+else $as_nop
   enabled="no"
 fi
   printf "%-27s%-12s" HAVE_PYMOD_YAML: $enabled
@@ -22789,14 +24234,16 @@
   *) :
      ;;
 esac
-  if test x$report_col = x2; then :
-  $as_echo
+  if test x$report_col = x2
+then :
+  printf "%s\n"
 fi
 
 
-  if test -z $ENABLE_UINPUT_TRUE; then :
+  if test -z $ENABLE_UINPUT_TRUE
+then :
   enabled="yes"
-else
+else $as_nop
   enabled="no"
 fi
   printf "%-27s%-12s" ENABLE_UINPUT: $enabled
@@ -22808,14 +24255,16 @@
   *) :
      ;;
 esac
-  if test x$report_col = x2; then :
-  $as_echo
+  if test x$report_col = x2
+then :
+  printf "%s\n"
 fi
 
 
-  if test -z $INSTALL_ETC_TRUE; then :
+  if test -z $INSTALL_ETC_TRUE
+then :
   enabled="yes"
-else
+else $as_nop
   enabled="no"
 fi
   printf "%-27s%-12s" INSTALL_ETC: $enabled
@@ -22827,14 +24276,16 @@
   *) :
      ;;
 esac
-  if test x$report_col = x2; then :
-  $as_echo
+  if test x$report_col = x2
+then :
+  printf "%s\n"
 fi
 
 
-  if test -z $IS_CROSS_COMPILE_TRUE; then :
+  if test -z $IS_CROSS_COMPILE_TRUE
+then :
   enabled="yes"
-else
+else $as_nop
   enabled="no"
 fi
   printf "%-27s%-12s" IS_CROSS_COMPILE: $enabled
@@ -22846,14 +24297,16 @@
   *) :
      ;;
 esac
-  if test x$report_col = x2; then :
-  $as_echo
+  if test x$report_col = x2
+then :
+  printf "%s\n"
 fi
 
 
-  if test -z $DEVEL_TRUE; then :
+  if test -z $DEVEL_TRUE
+then :
   enabled="yes"
-else
+else $as_nop
   enabled="no"
 fi
   printf "%-27s%-12s" DEVEL: $enabled
@@ -22865,14 +24318,16 @@
   *) :
      ;;
 esac
-  if test x$report_col = x2; then :
-  $as_echo
+  if test x$report_col = x2
+then :
+  printf "%s\n"
 fi
 
 
-  if test -z $LINUX_KERNEL_TRUE; then :
+  if test -z $LINUX_KERNEL_TRUE
+then :
   enabled="yes"
-else
+else $as_nop
   enabled="no"
 fi
   printf "%-27s%-12s" LINUX_KERNEL: $enabled
@@ -22884,14 +24339,16 @@
   *) :
      ;;
 esac
-  if test x$report_col = x2; then :
-  $as_echo
+  if test x$report_col = x2
+then :
+  printf "%s\n"
 fi
 
 
-  if test -z $HAVE_DEVINPUT_TRUE; then :
+  if test -z $HAVE_DEVINPUT_TRUE
+then :
   enabled="yes"
-else
+else $as_nop
   enabled="no"
 fi
   printf "%-27s%-12s" HAVE_DEVINPUT: $enabled
@@ -22903,14 +24360,16 @@
   *) :
      ;;
 esac
-  if test x$report_col = x2; then :
-  $as_echo
+  if test x$report_col = x2
+then :
+  printf "%s\n"
 fi
 
 
-  if test -z $WITH_SYSTEMDSYSTEMUNITDIR_TRUE; then :
+  if test -z $WITH_SYSTEMDSYSTEMUNITDIR_TRUE
+then :
   enabled="yes"
-else
+else $as_nop
   enabled="no"
 fi
   printf "%-27s%-12s" WITH_SYSTEMDSYSTEMUNITDIR: $enabled
@@ -22922,14 +24381,16 @@
   *) :
      ;;
 esac
-  if test x$report_col = x2; then :
-  $as_echo
+  if test x$report_col = x2
+then :
+  printf "%s\n"
 fi
 
 
-  if test -z $HAVE_PYTHON35_TRUE; then :
+  if test -z $HAVE_PYTHON35_TRUE
+then :
   enabled="yes"
-else
+else $as_nop
   enabled="no"
 fi
   printf "%-27s%-12s" HAVE_PYTHON35: $enabled
@@ -22941,31 +24402,27 @@
   *) :
      ;;
 esac
-  if test x$report_col = x2; then :
-  $as_echo
+  if test x$report_col = x2
+then :
+  printf "%s\n"
 fi
 
 
-echo
-
-if test x$HAVE_PYMOD_YAML != xyes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING:
+if test x$HAVE_PYMOD_YAML != xyes
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING:
   python3-yaml is missing. lirc-setup will not work
 elif table.html
-  and lirc.hwdb will not be created.
+  will not be created.
 " >&5
-$as_echo "$as_me: WARNING:
-  python3-yaml is missing. lirc-setup will not work; then :
+printf "%s\n" "$as_me: WARNING:
+  python3-yaml is missing. lirc-setup will not work
+then :
   table.html
-  and lirc.hwdb will not be created.
+  will not be created.
 " >&2;}
 fi
+echo
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: Don't forget to run lirc-postinstall after \"make install\"" >&5
+printf "%s\n" "$as_me: Don't forget to run lirc-postinstall after \"make install\"" >&6;}
 
-if test $host != $build; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}:
-  Cross-compilation requires running lirc-init-db post-install script
-" >&5
-$as_echo "$as_me:
-  Cross-compilation requires running lirc-init-db post-install script
-" >&6;}
-fi
diff -Nru lirc-0.10.1/configure.ac lirc-0.10.2/configure.ac
--- lirc-0.10.1/configure.ac	2017-09-10 08:52:19.000000000 +0000
+++ lirc-0.10.2/configure.ac	2022-10-04 08:01:25.000000000 +0000
@@ -1,9 +1,10 @@
 dnl Process this file with autoconf to produce a configure script.
 dnl configure.ac, (c)1999 Tom Wheeley 
 
-AC_INIT([lirc], [0.10.1])
+AC_INIT([lirc], [0.10.2])
 AC_CONFIG_SRCDIR([daemons/lircd.cpp])
 AC_CONFIG_MACRO_DIR([m4])
+AC_CONFIG_AUX_DIR([.])
 
 # support runstatedir
 DEFINE_RUNSTATEDIR
@@ -37,20 +38,24 @@
 if test x$XSLTPROC != "xyes"; then
     AC_MSG_ERROR([xsltproc is required. It sometimes comes with libxml])
 fi
-AC_CHECK_PROG([MAN2HTML],[man2html],[yes],[no])
-AM_CONDITIONAL(HAVE_MAN2HTML, test x$MAN2HTML = xyes)
+AC_MSG_CHECKING([Checking for usable man2html])
+AM_CONDITIONAL(HAVE_MAN2HTML,[
+    man2html_cmd="man2html -r -M index.html doc/man-source/irexec.1"
+    test $($man2html_cmd 2>/dev/null | wc -l) -gt 100])
+AS_IF([test x$HAVE_MAN2HTML_TRUE = x],AC_MSG_RESULT([yes]),AC_MSG_RESULT([no]))
 AC_CHECK_PROG([DOXYGEN],[doxygen],[yes],[no])
 AM_CONDITIONAL(HAVE_DOXYGEN, test x$DOXYGEN = xyes)
 LT_INIT([disable-static])
 
 AM_PATH_PYTHON([3.1],,)
 PKG_CHECK_MODULES([PYTHON],[python-${PYTHON_VERSION}m],,[true])
-test -z "$PYTHON_LIBS" && \
+test -z "$PYTHON_CFLAGS" && \
     PKG_CHECK_MODULES([PYTHON], [python-$PYTHON_VERSION],,[true])
-test -n "$PYTHON_LIBS" || \
+test -n "$PYTHON_CFLAGS" || \
     AC_MSG_WARN([No python package found (missing devel package?)])
 python_version_nodots=$(echo $PYTHON_VERSION | tr -d '.')
-AM_CONDITIONAL(HAVE_PYTHON35, [test $python_version_nodots -ge 35])
+AM_CONDITIONAL(HAVE_PYTHON35, [test -n "$PYTHON_CFLAGS" && \
+			       test $python_version_nodots -ge 35])
 CFLAGS="$CFLAGS $PYTHON_CFLAGS"
 
 
@@ -198,8 +203,6 @@
 
 AH_TEMPLATE([HAVE_SCSI], [defined if SCSI API is available])
 
-AH_TEMPLATE([HAVE_SCSI], [defined if SCSI API is available])
-
 AH_TEMPLATE([HAVE_SELECT], [defined if select(2) is available])
 
 AH_TEMPLATE([HAVE_SOUNDCARD], [defined if soundcard API is available])
@@ -208,8 +211,6 @@
 
 AH_TEMPLATE([GETGROUPS_T], [type of argument 3 in getgrouplist()])
 
-AH_TEMPLATE([HAVE_KERNEL_LIRC_H], [define if kernel-headers contains lirc.h])
-
 AH_TEMPLATE([HAVE_MACH_MACH_TIME_H],
 	    [define if mach/mach_time.h is available (MacOS)])
 
@@ -222,11 +223,9 @@
 
 AH_TEMPLATE([HAVE_UTIL_H], [Define if util.h is installed])
 
-AH_TEMPLATE([HAVE_USB_H],
-        [Define if usb.h is installed])
+AH_TEMPLATE([HAVE_USB_H], [Define if usb.h is installed])
 
-AH_TEMPLATE([HAVE_LIBUSB_H],
-        [Define if libusb.h is installed])
+AH_TEMPLATE([HAVE_LIBUSB_H], [Define if libusb.h is installed])
 
 AH_TEMPLATE([VERSION_NODOTS],
         [Numeric version, m.v.r => 10000 * m + 100 * v + r])
@@ -364,15 +363,6 @@
                  [:],
                  [AC_MSG_WARN([Cannot find kernel headers])])
 
-dnl check if kernel-headers has lirc.h
-kernel_header_flags='-I$(top_srcdir)/include'
-AC_CHECK_HEADERS([linux/lirc.h], [
-  AC_DEFINE(HAVE_KERNEL_LIRC_H)
-  AC_SUBST(DRIVER_FLAGS, [-DHAVE_KERNEL_LIRC_H])
-  kernel_header_flags=''
-])
-AC_SUBST(kernel_header_flags)
-
 dnl creative_infracd driver requires linux scsi api
 AC_CHECK_HEADERS(scsi/sg.h,[ AC_DEFINE(HAVE_SCSI) ])
 
@@ -491,6 +481,11 @@
 
 AC_ARG_VAR(SH_PATH, [On cross-compile: Path to shell, typically /bin/sh])
 
+AC_ARG_VAR(SETUPTOOLS_ENV,
+  [On cross-compile: Python setuptools wrapper environment variables]
+)
+
+
 suffix=$(echo "$VERSION" | sed 's/.*-//')
 AM_CONDITIONAL(DEVEL, [test x$suffix = xdevel])
 
@@ -511,14 +506,11 @@
         Environment variable overriding options file path])
 
 AH_TOP([
-#ifndef ROOT_CONFIG_H
-#define ROOT_CONFIG_H
 #include     "paths.h"
 ])
 
 AH_BOTTOM([
 #include     "lirc/lirc_config.h"
-#endif // ROOT_CONFIG_H
 ])
 
 dnl write these decisions out to the Makefiles
@@ -582,13 +574,9 @@
 AX_REPORT_CONDITIONAL([WITH_SYSTEMDSYSTEMUNITDIR])
 AX_REPORT_CONDITIONAL([HAVE_PYTHON35])
 
-echo
-
 AS_IF([test x$HAVE_PYMOD_YAML != xyes], AC_MSG_WARN([
   python3-yaml is missing. lirc-setup will not work, table.html
-  and lirc.hwdb will not be created.
-]))
-
-AS_IF([test $host != $build], AC_MSG_NOTICE([
-  Cross-compilation requires running lirc-init-db post-install script
+  will not be created.
 ]))
+echo
+AC_MSG_NOTICE([Don't forget to run lirc-postinstall after "make install"])
diff -Nru lirc-0.10.1/contrib/release-process.txt lirc-0.10.2/contrib/release-process.txt
--- lirc-0.10.1/contrib/release-process.txt	2017-09-10 08:52:19.000000000 +0000
+++ lirc-0.10.2/contrib/release-process.txt	2022-09-25 10:03:38.000000000 +0000
@@ -10,7 +10,7 @@
 - Python bindings test pass:
     + cd python-pkg/test
     + python3 -m unittest discover
-- 'make distcheck' pass
+- 'make distcheck' without lirc-devel installed pass
 - Build in separate clone is OK.
 - VPATH build in separate clone is OK.
 - Encoder/decoder regression tests all pass
@@ -49,8 +49,7 @@
 4) Update version number in:
         README, NEWS, configure.ac
         Makefile.am (ChangeLog entries)
-        doc/lirc.org/index.html (Add NEWS entry, update download link)
-   Update driver_version in  plugins/*.c.
+        Update driver_version in  plugins/*.c.
    Update the news entry in README.
    Remove the attic/ directory
 
diff -Nru lirc-0.10.1/daemons/Makefile.am lirc-0.10.2/daemons/Makefile.am
--- lirc-0.10.1/daemons/Makefile.am	2017-09-10 08:52:19.000000000 +0000
+++ lirc-0.10.2/daemons/Makefile.am	2022-10-03 15:33:48.000000000 +0000
@@ -2,9 +2,9 @@
 ACLOCAL_AMFLAGS         = -I m4
 
 AM_CPPFLAGS             = -I$(top_builddir) -I$(top_builddir)/lib  \
-			  -I$(top_srcdir)/lib
+			  -I$(top_srcdir)/lib -I$(top_builddir)/include \
+			  -I$(top_srcdir)/include
 AM_CPPFLAGS             += -std=c++11 -Wp,-D_FORTIFY_SOURCE=2 -Wall
-AM_CPPFLAGS             += @kernel_header_flags@
 AM_LDFLAGS              = -lpthread $(SYSTEMD_LIBS)
 
 CLEANFILES              = *~
diff -Nru lirc-0.10.1/daemons/Makefile.in lirc-0.10.2/daemons/Makefile.in
--- lirc-0.10.1/daemons/Makefile.in	2017-09-10 08:52:38.000000000 +0000
+++ lirc-0.10.2/daemons/Makefile.in	2022-10-04 08:02:31.000000000 +0000
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.16.5 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2021 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -140,7 +140,9 @@
 am__v_at_1 = 
 DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
 depcomp = $(SHELL) $(top_srcdir)/depcomp
-am__depfiles_maybe = depfiles
+am__maybe_remake_depfiles = depfiles
+am__depfiles_remade = ./$(DEPDIR)/lircd-uinput.Po ./$(DEPDIR)/lircd.Po \
+	./$(DEPDIR)/lircmd-lircmd.Po ./$(DEPDIR)/lircrcd.Po
 am__mv = mv -f
 CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
 	$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
@@ -186,8 +188,6 @@
   unique=`for i in $$list; do \
     if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
   done | $(am__uniquify_input)`
-ETAGS = etags
-CTAGS = ctags
 am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
@@ -203,6 +203,8 @@
 CFLAGS = @CFLAGS@
 CPP = @CPP@
 CPPFLAGS = @CPPFLAGS@
+CSCOPE = @CSCOPE@
+CTAGS = @CTAGS@
 CXX = @CXX@
 CXXCPP = @CXXCPP@
 CXXDEPMODE = @CXXDEPMODE@
@@ -213,15 +215,16 @@
 DEVINPUT_HEADER = @DEVINPUT_HEADER@
 DLLTOOL = @DLLTOOL@
 DOXYGEN = @DOXYGEN@
-DRIVER_FLAGS = @DRIVER_FLAGS@
 DSYMUTIL = @DSYMUTIL@
 DUMPBIN = @DUMPBIN@
 ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
+ETAGS = @ETAGS@
 EXEEXT = @EXEEXT@
 FGREP = @FGREP@
+FILECMD = @FILECMD@
 FTDI_CFLAGS = @FTDI_CFLAGS@
 FTDI_LIBS = @FTDI_LIBS@
 GREP = @GREP@
@@ -244,7 +247,6 @@
 LTLIBOBJS = @LTLIBOBJS@
 LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
 MAKEINFO = @MAKEINFO@
-MAN2HTML = @MAN2HTML@
 MANIFEST_TOOL = @MANIFEST_TOOL@
 MKDIR_P = @MKDIR_P@
 MODINFO = @MODINFO@
@@ -277,6 +279,7 @@
 PYTHON_VERSION = @PYTHON_VERSION@
 RANLIB = @RANLIB@
 SED = @SED@
+SETUPTOOLS_ENV = @SETUPTOOLS_ENV@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
 SH_PATH = @SH_PATH@
@@ -326,7 +329,6 @@
 includedir = @includedir@
 infodir = @infodir@
 install_sh = @install_sh@
-kernel_header_flags = @kernel_header_flags@
 libdir = @libdir@
 libexecdir = @libexecdir@
 localedir = @localedir@
@@ -355,8 +357,9 @@
 x_progs = @x_progs@
 ACLOCAL_AMFLAGS = -I m4
 AM_CPPFLAGS = -I$(top_builddir) -I$(top_builddir)/lib \
-	-I$(top_srcdir)/lib -std=c++11 -Wp,-D_FORTIFY_SOURCE=2 -Wall \
-	@kernel_header_flags@ $(am__empty)
+	-I$(top_srcdir)/lib -I$(top_builddir)/include \
+	-I$(top_srcdir)/include -std=c++11 -Wp,-D_FORTIFY_SOURCE=2 \
+	-Wall
 AM_LDFLAGS = -lpthread $(SYSTEMD_LIBS)
 CLEANFILES = *~
 varrundir = $(localstatedir)/run
@@ -390,8 +393,8 @@
 	  *config.status*) \
 	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
 	  *) \
-	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
-	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
+	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
 	esac;
 
 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
@@ -523,10 +526,16 @@
 distclean-compile:
 	-rm -f *.tab.c
 
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lircd-uinput.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lircd.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lircmd-lircmd.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lircrcd.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lircd-uinput.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lircd.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lircmd-lircmd.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lircrcd.Po@am__quote@ # am--include-marker
+
+$(am__depfiles_remade):
+	@$(MKDIR_P) $(@D)
+	@echo '# dummy' >$@-t && $(am__mv) $@-t $@
+
+am--depfiles: $(am__depfiles_remade)
 
 .cpp.o:
 @am__fastdepCXX_TRUE@	$(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -620,8 +629,10 @@
 
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+distdir: $(BUILT_SOURCES)
+	$(MAKE) $(AM_MAKEFLAGS) distdir-am
 
-distdir: $(DISTFILES)
+distdir-am: $(DISTFILES)
 	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 	list='$(DISTFILES)'; \
@@ -695,7 +706,10 @@
 	clean-sbinPROGRAMS mostlyclean-am
 
 distclean: distclean-am
-	-rm -rf ./$(DEPDIR)
+		-rm -f ./$(DEPDIR)/lircd-uinput.Po
+	-rm -f ./$(DEPDIR)/lircd.Po
+	-rm -f ./$(DEPDIR)/lircmd-lircmd.Po
+	-rm -f ./$(DEPDIR)/lircrcd.Po
 	-rm -f Makefile
 distclean-am: clean-am distclean-compile distclean-generic \
 	distclean-tags
@@ -742,7 +756,10 @@
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
-	-rm -rf ./$(DEPDIR)
+		-rm -f ./$(DEPDIR)/lircd-uinput.Po
+	-rm -f ./$(DEPDIR)/lircd.Po
+	-rm -f ./$(DEPDIR)/lircmd-lircmd.Po
+	-rm -f ./$(DEPDIR)/lircrcd.Po
 	-rm -f Makefile
 maintainer-clean-am: distclean-am maintainer-clean-generic
 
@@ -764,7 +781,7 @@
 
 .MAKE: install-am install-strip
 
-.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean \
+.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \
 	clean-binPROGRAMS clean-generic clean-libtool \
 	clean-sbinPROGRAMS cscopelist-am ctags ctags-am distclean \
 	distclean-compile distclean-generic distclean-libtool \
diff -Nru lirc-0.10.1/daemons/lircd-uinput.cpp lirc-0.10.2/daemons/lircd-uinput.cpp
--- lirc-0.10.1/daemons/lircd-uinput.cpp	2017-09-10 08:52:19.000000000 +0000
+++ lirc-0.10.2/daemons/lircd-uinput.cpp	2022-09-25 10:03:38.000000000 +0000
@@ -403,7 +403,7 @@
 
 
 /** Given a button, format and send struct input_events to /dev/uinput. */
-static void send_message(const struct options* opts, const char* button)
+static void send_message(const struct options* opts, const char* button, int reps)
 {
 	linux_input_code code;
 	bool is_release;
@@ -418,8 +418,9 @@
 		log_info("Dropping non-standard symbol %s", button);
 		return;
 	}
-	// event.value: 0 => release, 1 => press, 2 => autorepeat (not used).
-	const int value = is_release ? 0 : 1;
+	// event.value: 0 => release, 1 => press, 2 => repeat
+	//       reps: -1 => release, 0 => press, > 0 => repeat
+	const int value = reps + 1 > 2 ? 2 : reps + 1;
 	log_debug("Sending %s as %d:%d", button, code, value);
 
 	if (!write_event(opts->uinputfd, EV_KEY, code, value))
@@ -450,7 +451,7 @@
 	if (opts->disabled_path && opts->disabled_buttons.count(button) == 1)
 		log_debug("Skipping disabled key %s", button)
 	else
-		send_message(opts, button);
+		send_message(opts, button, reps);
 }
 
 
@@ -478,7 +479,7 @@
 	if (last_button_press == "")
 		return;
 	std::string button_name = last_button_press + opts->release_suffix;
-	send_message(opts, button_name.c_str());
+	send_message(opts, button_name.c_str(), -1);
 	last_button_press = "";
 }
 
diff -Nru lirc-0.10.1/daemons/lircd.cpp lirc-0.10.2/daemons/lircd.cpp
--- lirc-0.10.1/daemons/lircd.cpp	2017-09-10 08:52:19.000000000 +0000
+++ lirc-0.10.2/daemons/lircd.cpp	2022-10-02 20:23:10.000000000 +0000
@@ -131,26 +131,25 @@
 	"Usage: lircd [options] \n"
 	"\t -h --help\t\t\tDisplay this message\n"
 	"\t -v --version\t\t\tDisplay version\n"
-	"\t -O --options-file\t\tOptions file\n"
+	"\t -O --options-file\t\tOptions file path\n"
         "\t -i --immediate-init\t\tInitialize the device immediately at start\n"
 	"\t -n --nodaemon\t\t\tDon't fork to background\n"
 	"\t -p --permission=mode\t\tFile permissions for " LIRCD "\n"
 	"\t -H --driver=driver\t\tUse given driver (-H help lists drivers)\n"
 	"\t -d --device=device\t\tRead from given device\n"
 	"\t -U --plugindir=dir\t\tDir where drivers are loaded from\n"
-	"\t -l --listen[=[address:]port]\tListen for network connections\n"
+	"\t -l --listen[=[[address:]port]\tListen for network connections\n"
 	"\t -c --connect=host[:port]\tConnect to remote lircd server\n"
 	"\t -o --output=socket\t\tOutput socket filename\n"
 	"\t -P --pidfile=file\t\tDaemon pid file\n"
 	"\t -L --logfile=file\t\tLog file path (default: use syslog)'\n"
 	"\t -D[level] --loglevel[=level]\t'info', 'warning', 'notice', etc., or 3..10.\n"
-	"\t -r --release[=suffix]\t\tDEPRECATED: Auto-generate release events\n"
 	"\t -a --allow-simulate\t\tAccept SIMULATE command\n"
 	"\t -Y --dynamic-codes\t\tEnable dynamic code generation\n"
 	"\t -A --driver-options=key:value[|key:value...]\n"
 	"\t\t\t\t\tSet driver options\n"
-	"\t -e --effective-user=uid\t\tRun as uid after init as root\n"
-	"\t -R --repeat-max=limit\t\tallow at most this many repeats\n";
+	"\t -e --effective-user=uid\tRun as uid after init as root\n"
+	"\t -R --repeat-max=limit\t\tAllow at most this many repeats\n";
 
 
 static const struct option lircd_options[] = {
@@ -170,7 +169,6 @@
 	{ "logfile",	    required_argument, NULL, 'L' },
 	{ "debug",	    optional_argument, NULL, 'D' }, // compatibility
 	{ "loglevel",	    optional_argument, NULL, 'D' },
-	{ "release",	    optional_argument, NULL, 'r' },
 	{ "allow-simulate", no_argument,       NULL, 'a' },
 	{ "dynamic-codes",  no_argument,       NULL, 'Y' },
 	{ "driver-options", required_argument, NULL, 'A' },
@@ -287,7 +285,6 @@
 
 static int daemonized = 0;
 static int allow_simulate = 0;
-static int userelease = 0;
 
 static sig_atomic_t term = 0, hup = 0, alrm = 0;
 static int termsig;
@@ -415,8 +412,12 @@
 		setup_min_freq = DEFAULT_FREQ;
 		setup_max_freq = DEFAULT_FREQ;
 	}
-	if (curr_driver->features & LIRC_CAN_SET_REC_CARRIER_RANGE && setup_min_freq != setup_max_freq) {
-		if (curr_driver->drvctl_func(LIRC_SET_REC_CARRIER_RANGE, &setup_min_freq) == -1) {
+	if (curr_driver->features & LIRC_CAN_SET_REC_CARRIER_RANGE
+	    && setup_min_freq != setup_max_freq
+	) {
+		if (curr_driver->drvctl_func(LIRC_SET_REC_CARRIER_RANGE,
+					     &setup_min_freq) == -1
+		) {
 			log_error("could not set receive carrier");
 			log_perror_err(__func__);
 			return 0;
@@ -451,8 +452,10 @@
 	if (setup_max_space == 0)
 		return 1;
 	if (curr_driver->drvctl_func(LIRC_GET_MIN_TIMEOUT, &min_timeout) != 0
-	    || curr_driver->drvctl_func(LIRC_GET_MAX_TIMEOUT, &max_timeout) != 0)
+	    || curr_driver->drvctl_func(LIRC_GET_MAX_TIMEOUT, &max_timeout) != 0
+	) {
 		return 0;
+	}
 	if ((uint32_t) setup_max_gap >= min_timeout &&
 	    (uint32_t) setup_max_gap <= max_timeout
 	) {
@@ -485,8 +488,7 @@
 
 	if (curr_driver->fd != -1 && curr_driver->drvctl_func) {
 		if ((curr_driver->features & LIRC_CAN_SET_REC_CARRIER)
-		    || (curr_driver->features & LIRC_CAN_SET_REC_TIMEOUT)
-		    || (curr_driver->features & LIRC_CAN_SET_REC_FILTER)) {
+		    || (curr_driver->features & LIRC_CAN_SET_REC_TIMEOUT)) {
 				ret = setup_frequency() && setup_timeout();
 		}
 	}
@@ -557,7 +559,8 @@
 		remotes = config_remotes;
 
 		get_frequency_range(remotes, &setup_min_freq, &setup_max_freq);
-		get_filter_parameters(remotes, &setup_max_gap, &setup_min_pulse, &setup_min_space, &setup_max_pulse,
+		get_filter_parameters(remotes, &setup_max_gap, &setup_min_pulse,
+				      &setup_min_space, &setup_max_pulse,
 				      &setup_max_space);
 
 		setup_hardware();
@@ -761,8 +764,11 @@
 		log_notice("accepted new client on %s", lircdfile);
 	} else if (client_addr.sa_family == AF_INET) {
 		cli_type[clin] = CT_REMOTE;
-		log_notice("accepted new client from %s",
-			  inet_ntoa(((struct sockaddr_in*)&client_addr)->sin_addr));
+		log_notice(
+			"accepted new client from %s",
+			inet_ntoa(
+				((struct sockaddr_in*)&client_addr)->sin_addr)
+		);
 	} else {
 		cli_type[clin] = 0;     /* what? */
 	}
@@ -790,7 +796,7 @@
 	struct servent* service;
 	char server[strlen(server_arg) + 1];
 
-	strncpy(server, server_arg, sizeof(server) - 1);
+	strncpy(server, server_arg, sizeof(server));
 
 	if (peern < MAX_PEERS) {
 		peers[peern] = (struct peer_connection*) malloc(sizeof(
@@ -805,25 +811,32 @@
 				peers[peern]->host = strdup(server);
 				service = getservbyname(sep, "tcp");
 				if (service) {
-					peers[peern]->port = ntohs(service->s_port);
+					peers[peern]->port =
+						ntohs(service->s_port);
 				} else {
 					long p;
 					char* endptr;
 
 					p = strtol(sep, &endptr, 10);
-					if (!*sep || *endptr || p < 1 || p > USHRT_MAX) {
-						fprintf(stderr, "%s: bad port number \"%s\"\n", progname, sep);
+					if (!*sep || *endptr || p < 1
+					    || p > USHRT_MAX
+					) {
+						fprintf(stderr,
+							"%s: bad port number \"%s\"\n",
+							progname, sep);
 						return 0;
 					}
 
-					peers[peern]->port = (unsigned short int)p;
+					peers[peern]->port =
+						(unsigned short int)p;
 				}
 			} else {
 				peers[peern]->host = strdup(server);
 				peers[peern]->port = LIRC_INET_PORT;
 			}
 			if (peers[peern]->host == NULL)
-				fprintf(stderr, "%s: out of memory\n", progname);
+				fprintf(stderr,
+					"%s: out of memory\n", progname);
 		} else {
 			fprintf(stderr, "%s: out of memory\n", progname);
 			return 0;
@@ -960,11 +973,15 @@
 		pid_t otherpid;
 
 		if (fscanf(pidf, "%d\n", &otherpid) > 0) {
-			fprintf(stderr, "%s: there seems to already be a lircd process with pid %d\n", progname,
-				otherpid);
-			fprintf(stderr, "%s: otherwise delete stale lockfile %s\n", progname, pidfile);
+			fprintf(stderr,
+				"%s: there seems to be a lircd process with pid %d\n",
+				progname, otherpid);
+			fprintf(stderr,
+				"%s: otherwise delete stale lockfile %s\n",
+				progname, pidfile);
 		} else {
-			fprintf(stderr, "%s: invalid %s encountered\n", progname, pidfile);
+			fprintf(stderr, "%s: invalid %s encountered\n",
+				progname, pidfile);
 		}
 		exit(EXIT_FAILURE);
 	}
@@ -1020,18 +1037,22 @@
 
 		serv_addr.sun_family = AF_UNIX;
 		strcpy(serv_addr.sun_path, lircdfile);
-		if (bind(sockfd, (struct sockaddr*)&serv_addr, sizeof(serv_addr)) == -1) {
-			perrorf("Could not assign address to socket%s", lircdfile);
+		if (bind(sockfd,
+			 (struct sockaddr*)&serv_addr, sizeof(serv_addr)) == -1
+		) {
+			perrorf("Could not assign address to socket%s",
+				lircdfile);
 			goto start_server_failed1;
 		}
 
 		if (new_socket ? chmod(lircdfile, permission)
-		    : (chmod(lircdfile, s.st_mode) == -1 || chown(lircdfile, s.st_uid, s.st_gid) == -1)
-		    ) {
-			perrorf("Could not set file permissions on %s", lircdfile);
+		    : (chmod(lircdfile, s.st_mode) == -1
+			  || chown(lircdfile, s.st_uid, s.st_gid) == -1)
+		) {
+			perrorf("Could not set file permissions on %s",
+				lircdfile);
 			goto start_server_failed1;
 		}
-
 		listen(sockfd, 3);
 	}
 	nolinger(sockfd);
@@ -1046,14 +1067,20 @@
 			perror("Could not create TCP/IP socket");
 			goto start_server_failed1;
 		}
-		(void)setsockopt(sockinet, SOL_SOCKET, SO_REUSEADDR, &enable, sizeof(enable));
+		(void)setsockopt(sockinet,
+				 SOL_SOCKET, SO_REUSEADDR,
+				 &enable, sizeof(enable));
 		serv_addr_in.sin_family = AF_INET;
 		serv_addr_in.sin_addr = address;
 		serv_addr_in.sin_port = htons(port);
 
-		if (bind(sockinet, (struct sockaddr*)&serv_addr_in, sizeof(serv_addr_in)) == -1) {
+		if (bind(sockinet,
+			 (struct sockaddr*)&serv_addr_in,
+			 sizeof(serv_addr_in)) == -1
+		) {
 			perror("could not assign address to socket");
 			goto start_server_failed2;
+
 		}
 
 		listen(sockinet, 3);
@@ -1093,10 +1120,13 @@
 int send_success(int fd, char* message)
 {
 	log_debug("Sending success");
-	if (!
-	    (write_socket_len(fd, protocol_string[P_BEGIN]) && write_socket_len(fd, message)
-	     && write_socket_len(fd, protocol_string[P_SUCCESS]) && write_socket_len(fd, protocol_string[P_END])))
+	if (!(write_socket_len(fd, protocol_string[P_BEGIN])
+	      && write_socket_len(fd, message)
+	      && write_socket_len(fd, protocol_string[P_SUCCESS])
+	      && write_socket_len(fd, protocol_string[P_END]))
+	) {
 		return 0;
+	}
 	return 1;
 }
 
@@ -1181,7 +1211,8 @@
 		 * remote control we could repeat the wrong code so
 		 * better stop repeating */
 		if (repeat_fd != -1)
-			send_error(repeat_fd, repeat_message, "repeating interrupted\n");
+			send_error(repeat_fd, repeat_message,
+				   "repeating interrupted\n");
 
 		repeat_remote = NULL;
 		repeat_code = NULL;
@@ -1195,11 +1226,16 @@
 		return;
 	}
 	if (repeat_code->next == NULL
-	    || (repeat_code->transmit_state != NULL && repeat_code->transmit_state->next == NULL))
+	    || (repeat_code->transmit_state != NULL
+		&& repeat_code->transmit_state->next == NULL)
+	) {
 		repeat_remote->repeat_countdown--;
+	}
 	struct timespec before_send;
 	clock_gettime (CLOCK_MONOTONIC, &before_send);
-	if (send_ir_ncode(repeat_remote, repeat_code, 1) && repeat_remote->repeat_countdown > 0) {
+	if (send_ir_ncode(repeat_remote, repeat_code, 1)
+	    && repeat_remote->repeat_countdown > 0
+	) {
 		schedule_repeat_timer(&before_send);
 		return;
 	}
@@ -1236,29 +1272,42 @@
 	if (name == NULL)
 		goto arg_check;
 	*remote = get_ir_remote(remotes, name);
-	if (*remote == NULL)
-		return send_error(fd, message, "unknown remote: \"%s\"\n", name);
+	if (*remote == NULL) {
+		return send_error(fd, message,
+				  "unknown remote: \"%s\"\n",
+				  name);
+	}
 	command = strtok(NULL, WHITE_SPACE);
 	if (command == NULL)
 		goto arg_check;
 	*code = get_code_by_name(*remote, command);
-	if (*code == NULL)
-		return send_error(fd, message, "unknown command: \"%s\"\n", command);
+	if (*code == NULL) {
+		return send_error(fd, message,
+				  "unknown command: \"%s\"\n",
+				  command);
+	}
 	if (reps != NULL) {
 		repeats = strtok(NULL, WHITE_SPACE);
 		if (repeats != NULL) {
 			*reps = strtol(repeats, &end_ptr, 10);
-			if (*end_ptr || *reps < 0)
-				return send_error(fd, message, "bad send packet (reps/eol)\n");
-			if (*reps > repeat_max)
-				return send_error
-					       (fd, message, "too many repeats: \"%d\" > \"%u\"\n", *reps, repeat_max);
+			if (*end_ptr || *reps < 0) {
+				return send_error(
+					fd, message,
+					"bad send packet (reps/eol)\n");
+			}
+			if (*reps > repeat_max) {
+				return send_error(
+					fd, message,
+					"too many repeats: \"%d\" > \"%u\"\n",
+					*reps, repeat_max);
+			}
 		} else {
 			*reps = -1;
 		}
 	}
 	if (strtok(NULL, WHITE_SPACE) != NULL)
-		return send_error(fd, message, "bad send packet (trailing ws)\n");
+		return send_error(fd, message,
+				  "bad send packet (trailing ws)\n");
 arg_check:
 	if (n > 0 && *remote == NULL)
 		return send_error(fd, message, "remote missing\n");
@@ -1282,17 +1331,20 @@
 		all = all->next;
 	}
 
-	if (!
-	    (write_socket_len(fd, protocol_string[P_BEGIN]) && write_socket_len(fd, message)
-	     && write_socket_len(fd, protocol_string[P_SUCCESS])))
+	if (!(write_socket_len(fd, protocol_string[P_BEGIN])
+	      && write_socket_len(fd, message)
+	      && write_socket_len(fd, protocol_string[P_SUCCESS]))
+	) {
 		return 0;
-
+	}
 	if (n == 0)
 		return write_socket_len(fd, protocol_string[P_END]);
 	sprintf(buffer, "%d\n", n);
-	if (!(write_socket_len(fd, protocol_string[P_DATA]) && write_socket_len(fd, buffer)))
+	if (!(write_socket_len(fd, protocol_string[P_DATA])
+	      && write_socket_len(fd, buffer))
+	) {
 		return 0;
-
+	}
 	all = remotes;
 	while (all) {
 		len = snprintf(buffer, PACKET_SIZE + 1, "%s\n", all->name);
@@ -1320,19 +1372,25 @@
 		}
 	}
 
-	if (!
-	    (write_socket_len(fd, protocol_string[P_BEGIN]) && write_socket_len(fd, message)
-	     && write_socket_len(fd, protocol_string[P_SUCCESS])))
+	if (!(write_socket_len(fd, protocol_string[P_BEGIN])
+	      && write_socket_len(fd, message)
+	      && write_socket_len(fd, protocol_string[P_SUCCESS]))
+	) {
 		return 0;
+	}
 	if (n == 0)
 		return write_socket_len(fd, protocol_string[P_END]);
 	sprintf(buffer, "%d\n", n);
-	if (!(write_socket_len(fd, protocol_string[P_DATA]) && write_socket_len(fd, buffer)))
+	if (!(write_socket_len(fd, protocol_string[P_DATA])
+	      && write_socket_len(fd, buffer))
+	) {
 		return 0;
+	}
 
 	codes = remote->codes;
 	while (codes->name != NULL) {
-		len = snprintf(buffer, PACKET_SIZE, "%016llx %s\n", (unsigned long long)codes->code, codes->name);
+		len = snprintf(buffer, PACKET_SIZE, "%016llx %s\n",
+			       (unsigned long long)codes->code, codes->name);
 		if (len >= PACKET_SIZE + 1)
 			len = sprintf(buffer, "code_too_long\n");
 		if (write_socket(fd, buffer, len) < len)
@@ -1347,11 +1405,15 @@
 	char buffer[PACKET_SIZE + 1];
 	int len;
 
-	if (!
-	    (write_socket_len(fd, protocol_string[P_BEGIN]) && write_socket_len(fd, message)
-	     && write_socket_len(fd, protocol_string[P_SUCCESS]) && write_socket_len(fd, protocol_string[P_DATA])))
+	if (!(write_socket_len(fd, protocol_string[P_BEGIN])
+	     && write_socket_len(fd, message)
+	     && write_socket_len(fd, protocol_string[P_SUCCESS])
+	     && write_socket_len(fd, protocol_string[P_DATA]))
+	) {
 		return 0;
-	len = snprintf(buffer, PACKET_SIZE, "1\n%016llx %s\n", (unsigned long long)code->code, code->name);
+	}
+	len = snprintf(buffer, PACKET_SIZE, "1\n%016llx %s\n",
+		       (unsigned long long)code->code, code->name);
 	if (len >= PACKET_SIZE + 1)
 		len = sprintf(buffer, "1\ncode_too_long\n");
 	if (write_socket(fd, buffer, len) < len)
@@ -1389,31 +1451,51 @@
 
 	if (arguments == NULL)
 		goto string_error;
-	if (curr_driver->send_mode == 0)
-		return send_error(fd, message, "hardware does not support sending\n");
-	if (curr_driver->drvctl_func == NULL || !(curr_driver->features & LIRC_CAN_SET_TRANSMITTER_MASK))
-		return send_error(fd, message, "hardware does not support multiple transmitters\n");
-
+	if (curr_driver->send_mode == 0) {
+		return send_error(fd,
+				  message,
+				  "hardware does not support sending\n");
+	}
+	if (curr_driver->drvctl_func == NULL
+	    || !(curr_driver->features & LIRC_CAN_SET_TRANSMITTER_MASK)
+	) {
+		return send_error(
+			fd,
+			message,
+			"hardware does not support multiple transmitters\n");
+	}
 	next_arg = strtok(arguments, WHITE_SPACE);
 	if (next_arg == NULL)
 		goto string_error;
 	do {
 		next_tx_int = strtoul(next_arg, &end_ptr, 10);
-		if (*end_ptr || next_tx_int == 0 || (next_tx_int == ULONG_MAX && errno == ERANGE))
+		if (*end_ptr || next_tx_int == 0
+		    || (next_tx_int == ULONG_MAX && errno == ERANGE)
+		) {
 			return send_error(fd, message, "invalid argument\n");
+		}
 		if (next_tx_int > MAX_TX)
-			return send_error(fd, message, "cannot support more than %d transmitters\n", MAX_TX);
+			return send_error(
+				fd, message,
+				"cannot support more than %d transmitters\n",
+				MAX_TX);
 		next_tx_hex = 1;
 		for (i = 1; i < next_tx_int; i++)
 			next_tx_hex = next_tx_hex << 1;
 		channels |= next_tx_hex;
 	} while ((next_arg = strtok(NULL, WHITE_SPACE)) != NULL);
 
-	retval = curr_driver->drvctl_func(LIRC_SET_TRANSMITTER_MASK, &channels);
-	if (retval < 0)
-		return send_error(fd, message, "error - could not set transmitters\n");
-	if (retval > 0)
-		return send_error(fd, message, "error - maximum of %d transmitters\n", retval);
+	retval = curr_driver->drvctl_func(LIRC_SET_TRANSMITTER_MASK,
+					  &channels);
+	if (retval < 0) {
+		return send_error(fd, message,
+				  "error - could not set transmitters\n");
+	}
+	if (retval > 0) {
+		return send_error(fd, message,
+				  "error - maximum of %d transmitters\n",
+				  retval);
+	}
 	return send_success(fd, message);
 
 string_error:
@@ -1447,7 +1529,8 @@
 	log_debug("simulate: enter");
 
 	if (!allow_simulate)
-		return send_error(fd, message, "SIMULATE command is disabled\n");
+		return send_error(fd, message,
+				  "SIMULATE command is disabled\n");
 	if (arguments == NULL)
 		return send_error(fd, message, "no arguments given\n");
 
@@ -1505,10 +1588,14 @@
 	log_debug("Sending once, msg: %s, args: %s, once: %d",
 		  message, arguments, once);
 	if (curr_driver->send_mode == 0)
-		return send_error(fd, message, "hardware does not support sending\n");
+		return send_error(fd, message,
+				  "hardware does not support sending\n");
 
-	if (parse_rc(fd, message, arguments, &remote, &code, once ? &reps : NULL, 2, &err) == 0)
+	if (parse_rc(fd, message, arguments,
+		     &remote, &code, once ? &reps : NULL, 2, &err) == 0
+	) {
 		return 0;
+	}
 	if (err)
 		return 1;
 
@@ -1522,7 +1609,9 @@
 	if (has_toggle_mask(remote))
 		remote->toggle_mask_state = 0;
 	if (has_toggle_bit_mask(remote))
-		remote->toggle_bit_mask_state = (remote->toggle_bit_mask_state ^ remote->toggle_bit_mask);
+		remote->toggle_bit_mask_state =
+			(remote->toggle_bit_mask_state
+				^ remote->toggle_bit_mask);
 	code->transmit_state = NULL;
 	struct timespec before_send;
 	clock_gettime (CLOCK_MONOTONIC, &before_send);
@@ -1543,7 +1632,8 @@
 			if (repeat_message == NULL) {
 				repeat_remote = NULL;
 				repeat_code = NULL;
-				return send_error(fd, message, "out of memory\n");
+				return send_error(fd, message,
+						  "out of memory\n");
 			}
 			repeat_fd = fd;
 		} else if (!send_success(fd, message)) {
@@ -1573,15 +1663,21 @@
 	if (repeat_remote && repeat_code) {
 		int done;
 
-		if (remote && strcasecmp(remote->name, repeat_remote->name) != 0)
-			return send_error(fd, message, "specified remote does not match\n");
+		if (remote && strcasecmp(remote->name,
+					 repeat_remote->name) != 0
+		) {
+			return send_error(fd, message,
+					  "specified remote does not match\n");
+		}
 		if (code && strcasecmp(code->name, repeat_code->name) != 0)
-			return send_error(fd, message, "specified code does not match\n");
+			return send_error(fd, message,
+					  "specified code does not match\n");
 
 		done = repeat_max - repeat_remote->repeat_countdown;
 		if (done < repeat_remote->min_repeat) {
 			/* we still have some repeats to do */
-			repeat_remote->repeat_countdown = repeat_remote->min_repeat - done;
+			repeat_remote->repeat_countdown =
+				repeat_remote->min_repeat - done;
 			return send_success(fd, message);
 		}
 		repeat_timer.it_value.tv_sec = 0;
@@ -1609,9 +1705,11 @@
 
 	sprintf(buffer, "1\n%s\n", VERSION);
 	if (!(write_socket_len(fd, protocol_string[P_BEGIN]) &&
-	      write_socket_len(fd, message) && write_socket_len(fd, protocol_string[P_SUCCESS])
-	      && write_socket_len(fd, protocol_string[P_DATA]) && write_socket_len(fd, buffer)
-	      && write_socket_len(fd, protocol_string[P_END])))
+	      write_socket_len(fd, message)
+			&& write_socket_len(fd, protocol_string[P_SUCCESS])
+			&& write_socket_len(fd, protocol_string[P_DATA])
+			&& write_socket_len(fd, buffer)
+			&& write_socket_len(fd, protocol_string[P_END])))
 		return 0;
 	return 1;
 }
@@ -1708,25 +1806,38 @@
 		}
 		for (i = 0; directives[i].name != NULL; i++) {
 			if (strcasecmp(directive, directives[i].name) == 0) {
-				if (!directives[i].function(fd, backup, strtok(NULL, "")))
+				if (!directives[i].function(fd,
+							    backup,
+							    strtok(NULL, ""))
+				) {
 					return 0;
+				}
 				goto skip;
 			}
 		}
 
-		if (!send_error(fd, backup, "unknown directive: \"%s\"\n", directive))
+		if (!send_error(fd, backup,
+			        "unknown directive: \"%s\"\n", directive)
+		) {
 			return 0;
+		}
 skip:
 		if (length > packet_length) {
 			int new_length;
 
-			memmove(buffer, buffer + packet_length, length - packet_length + 1);
+			memmove(buffer,
+				buffer + packet_length,
+				length - packet_length + 1);
 			if (strchr(buffer, '\n') == NULL) {
-				new_length =
-					read_timeout(fd, buffer + length - packet_length,
-						     PACKET_SIZE - (length - packet_length), 5);
+				new_length = read_timeout(
+					fd,
+					buffer + length - packet_length,
+					PACKET_SIZE
+						- (length - packet_length),
+					5);
 				if (new_length > 0)
-					length = length - packet_length + new_length;
+					length = length - packet_length
+						+ new_length;
 				else
 					length = new_length;
 			} else {
@@ -1741,18 +1852,11 @@
 	return 1;
 }
 
-void input_message(const char* message, const char* remote_name, const char* button_name, int reps, int release)
+static void input_message(const char* message,
+			  const char* remote_name,
+			  const char* button_name, int reps)
 {
-	const char* release_message;
-	const char* release_remote_name;
-	const char* release_button_name;
-
-	release_message = check_release_event(&release_remote_name, &release_button_name);
-	if (release_message)
-		input_message(release_message, release_remote_name, release_button_name, 0, 1);
-
-	if (!release || userelease)
-		broadcast_message(message);
+	broadcast_message(message);
 }
 
 
@@ -1761,28 +1865,28 @@
 	struct ir_remote* scan_remotes;
 	struct ir_remote* found;
 	struct ir_ncode* code;
-	const char* release_event;
-	const char* release_remote_name;
-	const char* release_button_name;
 
 	if (get_decoding() == free_remotes)
 		return;
 
-	release_event = release_map_remotes(free_remotes, remotes, &release_remote_name, &release_button_name);
-	if (release_event != NULL)
-		input_message(release_event, release_remote_name, release_button_name, 0, 1);
 	if (last_remote != NULL) {
 		if (is_in_remotes(free_remotes, last_remote)) {
 			log_info("last_remote found");
 			found = get_ir_remote(remotes, last_remote->name);
 			if (found != NULL) {
-				code = get_code_by_name(found, last_remote->last_code->name);
+				code = get_code_by_name(
+						found,
+						last_remote->last_code->name);
 				if (code != NULL) {
 					found->reps = last_remote->reps;
-					found->toggle_bit_mask_state = last_remote->toggle_bit_mask_state;
-					found->min_remaining_gap = last_remote->min_remaining_gap;
-					found->max_remaining_gap = last_remote->max_remaining_gap;
-					found->last_send = last_remote->last_send;
+					found->toggle_bit_mask_state =
+						last_remote->toggle_bit_mask_state;
+					found->min_remaining_gap =
+						last_remote->min_remaining_gap;
+					found->max_remaining_gap =
+						last_remote->max_remaining_gap;
+					found->last_send =
+						last_remote->last_send;
 					last_remote = found;
 					last_remote->last_code = code;
 					log_info("mapped last_remote");
@@ -1806,7 +1910,8 @@
 		if (found != NULL) {
 			found = get_ir_remote(remotes, repeat_remote->name);
 			if (found != NULL) {
-				code = get_code_by_name(found, repeat_code->name);
+				code = get_code_by_name(found,
+							repeat_code->name);
 				if (code != NULL) {
 					struct itimerval repeat_timer;
 
@@ -1816,12 +1921,18 @@
 					repeat_timer.it_interval.tv_usec = 0;
 
 					found->last_code = code;
-					found->last_send = repeat_remote->last_send;
-					found->toggle_bit_mask_state = repeat_remote->toggle_bit_mask_state;
-					found->min_remaining_gap = repeat_remote->min_remaining_gap;
-					found->max_remaining_gap = repeat_remote->max_remaining_gap;
-
-					setitimer(ITIMER_REAL, &repeat_timer, &repeat_timer);
+					found->last_send =
+						repeat_remote->last_send;
+					found->toggle_bit_mask_state =
+						repeat_remote->toggle_bit_mask_state;
+					found->min_remaining_gap =
+						repeat_remote->min_remaining_gap;
+					found->max_remaining_gap =
+						repeat_remote->max_remaining_gap;
+
+					setitimer(ITIMER_REAL,
+						  &repeat_timer,
+						  &repeat_timer);
 					/* "atomic" (shouldn't be necessary any more) */
 					repeat_remote = found;
 					repeat_code = code;
@@ -1870,7 +1981,7 @@
 			/* handle signals */
 			if (term)
 				dosigterm(termsig);
-			/* never reached */
+				/* never reached */
 			if (hup) {
 				dosighup(SIGHUP);
 				hup = 0;
@@ -1890,9 +2001,13 @@
 				poll_fds.byname.sockinet.fd = sockinet;
 				poll_fds.byname.sockinet.events = POLLIN;
 			}
-			if (use_hw() && curr_driver->rec_mode != 0 && curr_driver->fd != -1) {
-				poll_fds.byname.curr_driver.fd = curr_driver->fd;
-				poll_fds.byname.curr_driver.events = POLLIN;
+			if (use_hw() && curr_driver->rec_mode != 0
+			    && curr_driver->fd != -1
+			) {
+				poll_fds.byname.curr_driver.fd =
+					curr_driver->fd;
+				poll_fds.byname.curr_driver.events =
+					POLLIN;
 			}
 
 			for (i = 0; i < clin; i++) {
@@ -1902,18 +2017,24 @@
 				 * them back in the wrong order. */
 				if (clis[i] != repeat_fd) {
 					poll_fds.byname.clis[i].fd = clis[i];
-					poll_fds.byname.clis[i].events = POLLIN;
+					poll_fds.byname.clis[i].events =
+						POLLIN;
 				}
 			}
 			timerclear(&tv);
 			reconnect = 0;
 			for (i = 0; i < peern; i++) {
 				if (peers[i]->socket != -1) {
-					poll_fds.byname.peers[i].fd = peers[i]->socket;
-					poll_fds.byname.peers[i].events = POLLIN;
+					poll_fds.byname.peers[i].fd =
+						peers[i]->socket;
+					poll_fds.byname.peers[i].events =
+						POLLIN;
 				} else if (timerisset(&tv)) {
-					if (timercmp(&tv, &peers[i]->reconnect, >))
+					if (timercmp(&tv,
+						     &peers[i]->reconnect, >)
+					) {
 						tv = peers[i]->reconnect;
+					}
 				} else {
 					tv = peers[i]->reconnect;
 				}
@@ -1957,36 +2078,23 @@
 						tv = gap;
 				}
 			}
-			if (timerisset(&tv) || timerisset(&release_time) || reconnect)
-				ret = curl_poll((struct pollfd *) &poll_fds.byindex,
-					         POLLFDS_SIZE,
-					         tv.tv_sec * 1000 + tv.tv_usec / 1000);
-			else
-				ret = curl_poll((struct pollfd*)&poll_fds.byindex,
-					         POLLFDS_SIZE,
-						 -1);
-
+			if (timerisset(&tv) || reconnect) {
+				ret = curl_poll((
+					struct pollfd *) &poll_fds.byindex,
+					POLLFDS_SIZE,
+					tv.tv_sec * 1000 + tv.tv_usec / 1000);
+			} else {
+				ret = curl_poll((
+					struct pollfd*)&poll_fds.byindex,
+					POLLFDS_SIZE,
+					-1);
+			}
 			if (ret == -1 && errno != EINTR) {
 				log_perror_err("curl_poll()() failed");
 				raise(SIGTERM);
 				continue;
 			}
 			gettimeofday(&now, NULL);
-			if (timerisset(&release_time) && timercmp(&now, &release_time, >)) {
-				const char* release_message;
-				const char* release_remote_name;
-				const char* release_button_name;
-
-				release_message =
-					trigger_release_event(&release_remote_name,
-							      &release_button_name);
-				if (release_message) {
-					input_message(release_message,
-						      release_remote_name,
-						      release_button_name,
-						      0, 1);
-				}
-			}
 			if (free_remotes != NULL)
 				free_old_remotes();
 			if (maxusec > 0) {
@@ -2000,7 +2108,9 @@
 				connect_to_peers();
 		} while (ret == -1 && errno == EINTR);
 
-		if (curr_driver->fd == -1 && use_hw() && curr_driver->init_func) {
+		if (curr_driver->fd == -1 && use_hw()
+		    && curr_driver->init_func
+		) {
 			oldlevel = loglevel;
 			lirc_log_setlevel(LIRC_ERROR);
 			curr_driver->init_func();
@@ -2017,19 +2127,20 @@
 			}
 		}
 		for (i = 0; i < peern; i++) {
-			if (peers[i]->socket != -1 && poll_fds.byname.peers[i].revents & POLLIN) {
+			if (peers[i]->socket != -1
+			    && poll_fds.byname.peers[i].revents & POLLIN) {
 				poll_fds.byname.peers[i].revents = 0;
 				if (get_peer_message(peers[i]) == 0) {
 					shutdown(peers[i]->socket, 2);
 					close(peers[i]->socket);
 					peers[i]->socket = -1;
 					peers[i]->connection_failure = 1;
-					gettimeofday(&peers[i]->reconnect, NULL);
+					gettimeofday(&peers[i]->reconnect,
+						     NULL);
 					peers[i]->reconnect.tv_sec += 5;
 				}
 			}
 		}
-
 		if (poll_fds.byname.sockfd.revents & POLLIN) {
 			poll_fds.byname.sockfd.revents = 0;
 			log_trace("registering local client");
@@ -2042,8 +2153,8 @@
 		}
 		if (use_hw() && curr_driver->rec_mode != 0
 		    && curr_driver->fd != -1
-		    && poll_fds.byname.curr_driver.revents & POLLIN) {
-			register_input();
+		    && poll_fds.byname.curr_driver.revents & POLLIN
+		) {
 			/* we will read later */
 			return 1;
 		}
@@ -2066,12 +2177,9 @@
 			const char* button_name;
 			int reps;
 
-			if (curr_driver->drvctl_func && (curr_driver->features & LIRC_CAN_NOTIFY_DECODE))
-				curr_driver->drvctl_func(DRVCTL_NOTIFY_DECODE, NULL);
-
 			get_release_data(&remote_name, &button_name, &reps);
 
-			input_message(message, remote_name, button_name, reps, 0);
+			input_message(message, remote_name, button_name, reps);
 		}
 	}
 }
@@ -2126,8 +2234,6 @@
 		"lircd:pidfile",	PIDFILE,
 		"lircd:logfile",	"syslog",
 		"lircd:debug",		level,
-		"lircd:release",	"False",
-		"lircd:release_suffix",	LIRC_RELEASE_SUFFIX,
 		"lircd:allow-simulate",	"False",
 		"lircd:dynamic-codes",	"False",
 		"lircd:plugindir",	PLUGINDIR,
@@ -2162,7 +2268,7 @@
 static void lircd_parse_options(int argc, char** const argv)
 {
 	int c;
-	const char* optstring = "A:e:O:hvnp:iH:d:o:U:P:l::L:c:r::aR:D::Yu";
+	const char* optstring = "A:e:O:hvnp:iH:d:o:U:P:l::L:c:aR:D::Yu";
 
 	strncpy(progname, "lircd", sizeof(progname));
 	optind = 1;
@@ -2227,11 +2333,6 @@
 		case 'a':
 			options_set_opt("lircd:allow-simulate", "True");
 			break;
-		case 'r':
-			options_set_opt("lircd:release", "True");
-			if (optarg)
-				options_set_opt("lircd:release_suffix", optarg);
-			break;
 		case 'U':
 			options_set_opt("lircd:plugindir", optarg);
 			break;
@@ -2248,7 +2349,8 @@
 			options_set_opt("lircd:driver-options", optarg);
 			break;
 		default:
-			printf("Usage: %s [options] [config-file]\n", progname);
+			printf("Usage: %s [options] [config-file]\n",
+			       progname);
 			exit(EXIT_FAILURE);
 		}
 	}
@@ -2309,11 +2411,8 @@
 		log_notice("Options: listen address: %s", buff);
 	}
 	log_notice("Options: connect: %s", optvalue("lircd:connect"));
-	log_notice("Options: userelease: %d", userelease);
 	log_notice("Options: effective_user: %s",
 		   optvalue("lircd:effective_user"));
-	log_notice("Options: release_suffix: %s",
-		   optvalue("lircd:release_suffix"));
 	log_notice("Options: allow_simulate: %d", allow_simulate);
 	log_notice("Options: repeat_max: %d", repeat_max);
 	log_notice("Options: configfile: %s", optvalue("lircd:configfile"));
@@ -2379,7 +2478,12 @@
 		return EXIT_FAILURE;
 	}
 	curr_driver->open_func(device);
-	drv_handle_options(options_getstring("lircd:driver-options"));
+	if (drv_handle_options(options_getstring("lircd:driver-options")) != 0
+	) {
+		fprintf(stderr, "Error when setting driver options: \"%s\"\n",
+			options_getstring("lircd:driver-options"));
+		return EXIT_FAILURE;
+	}
 	pidfile = options_getstring("lircd:pidfile");
 	lircdfile = options_getstring("lircd:output");
 	opt = options_getstring("lircd:logfile");
@@ -2389,7 +2493,8 @@
 		listen_tcpip = 1;
 		opt = options_getstring("lircd:listen");
 		if (opt) {
-			if (opt2host_port(opt, &address, &port, errmsg) != 0) {
+			if (opt2host_port(opt, &address, &port, errmsg) != 0
+			) {
 				fputs(errmsg, stderr);
 				return EXIT_FAILURE;
 			}
@@ -2401,19 +2506,23 @@
 	if (!parse_peer_connections(opt))
 		return(EXIT_FAILURE);
 	loglevel_opt = (loglevel_t) options_getint("lircd:debug");
-	userelease = options_getboolean("lircd:release");
-	set_release_suffix(options_getstring("lircd:release_suffix"));
 	allow_simulate = options_getboolean("lircd:allow-simulate");
 	repeat_max = options_getint("lircd:repeat-max");
 	configfile = options_getstring("lircd:configfile");
 	curr_driver->open_func(device);
 	if (strcmp(curr_driver->name, "null") == 0 && peern == 0) {
-		fprintf(stderr, "%s: there's no hardware I can use and no peers are specified\n", progname);
+		fprintf(stderr,
+			"%s: there's no hardware I can use and no peers are specified\n",
+			progname);
 		return EXIT_FAILURE;
 	}
-	if (curr_driver->device != NULL && strcmp(curr_driver->device, lircdfile) == 0) {
-		fprintf(stderr, "%s: refusing to connect to myself\n", progname);
-		fprintf(stderr, "%s: device and output must not be the same file: %s\n",
+	if (curr_driver->device != NULL
+	    && strcmp(curr_driver->device,lircdfile) == 0
+	) {
+		fprintf(stderr,
+			"%s: refusing to connect to myself\n", progname);
+		fprintf(stderr,
+			"%s: device and output cannot be same file: %s\n",
 			progname, lircdfile);
 		return EXIT_FAILURE;
 	}
@@ -2469,6 +2578,11 @@
 	if (!nodaemon)
 		daemonize();
 
+#ifdef HAVE_SYSTEMD
+	/* Tell systemd that we started up correctly */
+	sd_notify(0, "READY=1");
+#endif
+
 	loop();
 
 	/* never reached */
diff -Nru lirc-0.10.1/debian/changelog lirc-0.10.2/debian/changelog
--- lirc-0.10.1/debian/changelog	2021-06-23 23:14:02.000000000 +0000
+++ lirc-0.10.2/debian/changelog	2024-03-03 20:32:25.000000000 +0000
@@ -1,8 +1,128 @@
-lirc (0.10.1-6.3~20.04.sav0) focal; urgency=medium
+lirc (0.10.2-0.3~20.04.sav1) focal; urgency=medium
+
+  * debian/rules: Change override_dh_install -> override_dh_missing
+
+ -- Rob Savoury   Sun, 03 Mar 2024 12:32:25 -0800
+
+lirc (0.10.2-0.3~20.04.sav0) focal; urgency=medium
 
   * Backport to Focal
+  * Revert "Drop transitional packages"
+  * Revert "Drop --fail-missing" (compat level < 13)
+  * debian/control: Set debhelper-compat (= 12) BD
+
+ -- Rob Savoury   Sun, 03 Mar 2024 11:37:22 -0800
+
+lirc (0.10.2-0.3) unstable; urgency=medium
+
+  * Non-maintainer upload.
+  * Add back libusb-dev, some plugins are not libusb-1.0 compatible
+    yet (Closes: #1060039)
+  * Update doc-file location
+
+ -- Gianfranco Costamagna   Mon, 08 Jan 2024 13:57:04 +0100
+
+lirc (0.10.2-0.2) unstable; urgency=medium
+
+  * Non-maintainer upload.
+  * Add symlink during tests helping test
+    code find _client.so library
+
+ -- Gianfranco Costamagna   Tue, 02 Jan 2024 18:18:12 +0100
+
+lirc (0.10.2-0.1) unstable; urgency=medium
+
+  * Non-maintainer upload.
+  * New upstream release
+    (Closes: #1056311, Closes: #1025002, Closes: #1022021).
+  * Switch everywhere to libusb-1.0 (Closes: #810445)
+  * Drop patches now part of upstream codebase:
+    - 0003-logging-Don-t-use-broken-LOG_CONS-syslog-flag.patch
+    - 0004-lircd-Fix-connect-option-parsing-error-343.patch
+    - 0005-systemd-support-Notify-systemd-on-successful-startup.patch
+    - 0007-lirc-gpio-ir-0.10.patch
+    - 0008-python3.8.diff
+    - 0009-Replace-the-obsolete-get_event_loop-with-get_running.patch
+    - 0011-yaml.load.diff
+  * Refresh patches:
+    - 0001-lirc.org-Remove-non-free-advertising.patch
+    - 0002-lirc-setup-Fix-crash-on-start-on-missing-lirc.config.patch
+    - 0010-Patch-configure.ac-to-support-passing-MODINFO.patch
+    - check-for-devinput-using-ac_check_file.patch
+    - drop-ubuntu-hack.patch
+  * Add new binaries to lirc
+    - lirc-data2table
+    - lirc-postinstall
+  * Drop Break/Replaces, and transitional packages
+  * Drop old debian/lirc.maintscript script
+  * Mark -doc package as multiarch: foreign
+  * Rename patches
+  * Add proposed patch to fix zotac poll (Closes: #1014760)
+
+ -- Gianfranco Costamagna   Sun, 17 Dec 2023 08:47:03 +0100
+
+lirc (0.10.1-7.4) unstable; urgency=medium
+
+  * Drop lsb-base dependency, useless now
+  * Drop Ubuntu systemd hack, now the systemd pkgconf in Ubuntu is
+    fixed
+  * Drop wl-asneeded, now default
+  * Bump compat level to 13 and std-version to 4.6.2
+  * Add R^3: no
+  * Make sure dh_install is run with -a (Fixes FTBFS on arch:all)
+  * Drop --fail-missing
+
+ -- Gianfranco Costamagna   Sat, 16 Dec 2023 18:35:11 +0100
+
+lirc (0.10.1-7.3) unstable; urgency=medium
+
+  [ Vagrant Cascadian ]
+  * Non-maintainer upload.
+  * tools: Do not embed build date and kernel version in various files.
+    (Closes: #979019)
+  * debian/rules: Run build in the C.UTF-8 locale. (Closes: #979023)
+
+  [ Helmut Grohne ]
+  * Build verbosely by default. (Closes: #988907)
+
+  [ Vagrant Cascadian ]
+  * debian/rules: Normalize shipped tarball of python source code.
+    (Closes: #979024)
+
+  [ Helmut Grohne ]
+  * Fix FTBFS when systemdsystemunitdir changes in systemd.pc.
+    (Closes: #1052309)
+  * Fix build vs host confusion. (Closes: #1052309)
+  * Check for /dev/input using AC_CHECK_FILE. (Closes: #989304)
+  * Multiarchify python Build-Depends. (Closes: #989304)
+  * Export _PYTHON_SYSCONFIGDATA_NAME for setup.py. (Closes: #989304)
+
+ -- Vagrant Cascadian   Tue, 05 Dec 2023 15:52:45 -0800
+
+lirc (0.10.1-7.2) unstable; urgency=medium
+
+  * Non-maintainer upload.
+  * Add patch to fix FTBFS with new yaml (Closes: #1026505)
+
+ -- Nilesh Patra   Wed, 28 Dec 2022 16:55:42 +0530
+
+lirc (0.10.1-7.1) unstable; urgency=medium
+
+  * Non-maintainer upload.
+  * debian/patches: Add patch to support passing MODINFO to configure.
+  * debian/rules: Pass MODINFO and SH_PATH to configure. The paths to "modinfo"
+    and "sh" may vary as either located in /bin and /sbin or in /usr/bin and
+    /usr/sbin if the system is configured as a usrmerge system. Use the
+    non-usrmerge paths for the most compatible location (closes: #979021).
+
+ -- Micha Lenk   Sun, 16 Oct 2022 13:31:28 +0200
+
+lirc (0.10.1-7) unstable; urgency=medium
+
+  * Add patch from Fedora for failing tests. Closes: #1009389
+  * Add patch avoiding build path in docs. Closes: #961954
 
- -- Rob Savoury   Wed, 23 Jun 2021 16:14:02 -0700
+ -- Alec Leamas   Thu, 12 May 2022 21:29:00 +0200
 
 lirc (0.10.1-6.3) unstable; urgency=medium
 
diff -Nru lirc-0.10.1/debian/compat lirc-0.10.2/debian/compat
--- lirc-0.10.1/debian/compat	2021-03-18 21:21:31.000000000 +0000
+++ lirc-0.10.2/debian/compat	1970-01-01 00:00:00.000000000 +0000
@@ -1 +0,0 @@
-11
diff -Nru lirc-0.10.1/debian/control lirc-0.10.2/debian/control
--- lirc-0.10.1/debian/control	2021-03-18 21:21:31.000000000 +0000
+++ lirc-0.10.2/debian/control	2024-03-03 19:41:36.000000000 +0000
@@ -2,15 +2,16 @@
 Section: utils
 Priority: optional
 Homepage: https://sf.net/p/lirc
-Standards-Version: 4.3.0
+Standards-Version: 4.6.2
 Maintainer: Debian Lirc Team 
 Uploaders:
   Stefan Lippers-Hollmann ,
   Alec Leamas 
+Rules-Requires-Root: no
 Vcs-Git: https://gitlab.com/leamas/lirc.git
 Vcs-Browser: https://gitlab.com/leamas/lirc
 Build-Depends:
- debhelper (>= 11),
+ debhelper-compat (= 12),
  dh-exec,
  dh-python,
  doxygen,
@@ -18,28 +19,27 @@
  kmod [linux-any],
  libasound2-dev [linux-any kfreebsd-any],
  libftdi1-dev,
+ libpython3-dev (>= 3.5),
  libsystemd-dev [linux-any],
  libudev-dev [linux-any],
- libusb-1.0-0-dev [!kfreebsd-any],
- libusb-dev[!kfreebsd-any],
+ libusb-dev,
+ libusb-1.0-0-dev,
  libx11-dev,
  man2html-base,
- pkg-config,
+ pkgconf,
  portaudio19-dev,
- python3-dev (>= 3.5),
+ python3-dev:any (>= 3.5),
  python3-setuptools,
- python3-yaml,
+ python3-yaml:native,
  socat [!hurd-any],
  systemd [linux-any],
  xsltproc
 # libjs-jquery
 
-
 Package: lirc
 Architecture: any
 Depends:
  liblirc0 (= ${binary:Version}),
- lsb-base (>= 3.0-6),
  python3,
  ${misc:Depends},
  ${python3:Depends},
@@ -56,47 +56,32 @@
  lirc-x,
  setserial,
  ir-keytable
-Breaks:
- lirc-modules-source (<<0.9~),
- lirc-svga (<<0.9~),
- inputlirc (<<19)
 Description: Infra-red remote control support - daemons and utils
  LIRC stands for 'Linux Infra-red Remote Control'.
  .
  This package provides the daemons and some utilities to support infra-red
  remote controls under Linux.
 
-
 Package: lirc-doc
 Architecture: all
+Multi-Arch: foreign
 Section: doc
 Depends:
  ${misc:Depends},
- lsb-base
 # libjs-jquery
-Replaces:
- lirc (<< 0.9.1)
-Breaks:
- lirc (<< 0.9.1)
 Description: Infra-red remote control support - website and manual docs
  LIRC stands for 'Linux Infra-red Remote Control'.
  .
  This package provides the documentation including manual, manpages and
  the public website.
 
-
 Package: liblirc0
 Architecture: any
 Multi-Arch: same
 Section: libs
-Replaces:
- lirc (<< 0.9.1)
 Depends:
  ${misc:Depends},
- ${shlibs:Depends},
- lsb-base
-Breaks:
- lirc (<< 0.9.1)
+ ${shlibs:Depends}
 Description: Infra-red remote control support - Run-time libraries
  LIRC stands for 'Linux Infra-red Remote Control'.
  .
@@ -104,7 +89,6 @@
  (liblirc_client.so*), drivers (liblirc_driver.so*) and also internal
  LIRC applications (lirc_private.so*)
 
-
 Package: liblircclient0
 Architecture: any
 Section: libs
@@ -113,7 +97,6 @@
  Virtual, empty package used in the process of renaming liblircclient0
  to liblirc-client0.
 
-
 Package: liblircclient-dev
 Architecture: any
 Section: libdevel
@@ -122,19 +105,15 @@
  Virtual, empty package used in the process of incorporating
  liblircclient-dev in new package liblirc-dev.
 
-
 Package: liblirc-dev
 Architecture: any
 #Multi-Arch: same
 Section: libdevel
 Provides: liblircclient-dev
-Breaks: liblircclient-dev (<< 0.9.1)
-Replaces: liblircclient-dev (<< 0.9.1)
 Depends:
  liblirc0 (= ${binary:Version}),
  liblirc-client0 (= ${binary:Version}),
- ${misc:Depends},
- lsb-base
+ ${misc:Depends}
 Description: Infra-red remote control support - development files
  LIRC stands for 'Linux Infra-red Remote Control'.
  .
@@ -143,26 +122,18 @@
  software. See the User Space Driver API and  Lirc Client API sections
  in the lirc manual available in lirc-doc.
 
-
 Package: liblirc-client0
 Architecture: any
 Multi-Arch: same
 Section: libs
 Depends: ${shlibs:Depends}, ${misc:Depends}
 Suggests: lirc
-Pre-Depends: ${misc:Pre-Depends}
-Breaks:
- inputlirc (<< 19),
- kradio (<< 4),
- liblircclient0 (<=0.9.4~pre1)
-Replaces: liblircclient0 (<=0.9.4~pre1)
 Description: infra-red remote control support - client library
  LIRC stands for 'Linux Infra-red Remote Control'.
  .
  This package provides a library with functions to support remote
  controls via LIRC in programs such as xawtv.
 
-
 Package: lirc-x
 Architecture: any
 Depends:
diff -Nru lirc-0.10.1/debian/install lirc-0.10.2/debian/install
--- lirc-0.10.1/debian/install	2021-03-18 21:21:31.000000000 +0000
+++ lirc-0.10.2/debian/install	2024-01-02 17:18:12.000000000 +0000
@@ -1,7 +1,7 @@
-#! /usr/bin/dh-exec
+#!/usr/bin/dh-exec
 
 etc/lirc
-[linux-any] lib/systemd/*
+[linux-any] ${systemdsystemunitdir}
 [linux-any] usr/lib/tmpfiles.d/*
 [linux-any] usr/bin/lirc-make-devinput
 [linux-any] usr/bin/irpipe
@@ -17,9 +17,11 @@
 usr/bin/irpty
 usr/bin/irdb-get
 usr/bin/lircrcd
+usr/bin/lirc-data2table
 usr/bin/lirc-config-tool
 usr/bin/lirc-init-db
 usr/bin/lirc-lsremotes
+usr/bin/lirc-postinstall
 usr/bin/lirc-setup
 usr/bin/mode2
 usr/bin/irw
@@ -42,8 +44,9 @@
 usr/share/man/man1/irrecord.1*
 usr/share/man/man1/pronto2lirc.1*
 usr/share/man/man1/irsimreceive.1*
-usr/share/man/man1/lirc-setup.1*
 usr/share/man/man1/lirc-lsremotes.1*
+usr/share/man/man1/lirc-postinstall.1*
+usr/share/man/man1/lirc-setup.1*
 [linux-any] usr/share/man/man1/lirc-make-devinput.1*
 usr/share/man/man1/mode2.1*
 usr/share/man/man1/irtestcase.1*
diff -Nru lirc-0.10.1/debian/lirc-doc.doc-base lirc-0.10.2/debian/lirc-doc.doc-base
--- lirc-0.10.1/debian/lirc-doc.doc-base	2021-03-18 21:21:31.000000000 +0000
+++ lirc-0.10.2/debian/lirc-doc.doc-base	2024-01-08 12:57:04.000000000 +0000
@@ -5,5 +5,5 @@
 Section: Help
 
 Format: HTML
-Index: /usr/share/doc/lirc/lirc.org/html/index.html
+Index: /usr/share/doc/lirc/lirc.org/api-docs/html/index.html
 Files: /usr/share/doc/lirc/lirc.org/html/*.html /usr/share/doc/lirc/lirc.org/api-docs/html/*
diff -Nru lirc-0.10.1/debian/lirc.maintscript lirc-0.10.2/debian/lirc.maintscript
--- lirc-0.10.1/debian/lirc.maintscript	2021-03-18 21:21:31.000000000 +0000
+++ lirc-0.10.2/debian/lirc.maintscript	1970-01-01 00:00:00.000000000 +0000
@@ -1,4 +0,0 @@
-rm_conffile /etc/lirc/lircd.conf.dist 0.10.1-6.2~
-rm_conffile /etc/lirc/lircmd.conf.dist 0.10.1-6.2~
-rm_conffile /etc/lirc/irexec.lircrc.dist 0.10.1-6.2~
-rm_conffile /etc/lirc/lirc_options.conf.dist 0.10.1-6.2~
diff -Nru lirc-0.10.1/debian/patches/0001-lirc.org-Remove-non-free-advertising.patch lirc-0.10.2/debian/patches/0001-lirc.org-Remove-non-free-advertising.patch
--- lirc-0.10.1/debian/patches/0001-lirc.org-Remove-non-free-advertising.patch	2021-03-18 21:21:31.000000000 +0000
+++ lirc-0.10.2/debian/patches/0001-lirc.org-Remove-non-free-advertising.patch	2024-01-02 17:18:12.000000000 +0000
@@ -13,7 +13,7 @@
 index caa8ae9..0dd9619 100644
 --- a/doc/lirc.org/index.html
 +++ b/doc/lirc.org/index.html
-@@ -435,20 +435,6 @@
+@@ -437,20 +437,6 @@
                the complete list in the left pane.
              



diff -Nru lirc-0.10.1/debian/patches/0002-lirc-setup-Fix-crash-on-start-on-missing-lirc.config.patch lirc-0.10.2/debian/patches/0002-lirc-setup-Fix-crash-on-start-on-missing-lirc.config.patch --- lirc-0.10.1/debian/patches/0002-lirc-setup-Fix-crash-on-start-on-missing-lirc.config.patch 2021-03-18 21:21:31.000000000 +0000 +++ lirc-0.10.2/debian/patches/0002-lirc-setup-Fix-crash-on-start-on-missing-lirc.config.patch 2024-01-02 17:18:12.000000000 +0000 @@ -10,7 +10,7 @@ index 9f3dd14..7eeb1cf 100644 --- a/Makefile.am +++ b/Makefile.am -@@ -80,6 +80,7 @@ py_PYTHON = python-pkg/lirc/__init__.py \ +@@ -87,6 +87,7 @@ py_PYTHON = python-pkg/lirc/__init__.py \ python-pkg/lirc/database.py \ python-pkg/lirc/paths.py diff -Nru lirc-0.10.1/debian/patches/0003-logging-Don-t-use-broken-LOG_CONS-syslog-flag.patch lirc-0.10.2/debian/patches/0003-logging-Don-t-use-broken-LOG_CONS-syslog-flag.patch --- lirc-0.10.1/debian/patches/0003-logging-Don-t-use-broken-LOG_CONS-syslog-flag.patch 2021-03-18 21:21:31.000000000 +0000 +++ lirc-0.10.2/debian/patches/0003-logging-Don-t-use-broken-LOG_CONS-syslog-flag.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,24 +0,0 @@ -From: Alec Leamas -Date: Fri, 23 Nov 2018 23:04:35 -0500 -Subject: [PATCH] logging: Don't use broken LOG_CONS syslog flag. - ---- - lib/lirc_log.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/lib/lirc_log.c b/lib/lirc_log.c -index bea357b..900beb3 100644 ---- a/lib/lirc_log.c -+++ b/lib/lirc_log.c -@@ -102,9 +102,9 @@ int lirc_log_open(const char* _progname, int _nodaemon, loglevel_t level) - - if (use_syslog) { - if (nodaemon) -- openlog(syslogident, LOG_CONS | LOG_PID | LOG_PERROR, LOG_LOCAL0); -+ openlog(syslogident, LOG_PID | LOG_PERROR, LOG_LOCAL0); - else -- openlog(syslogident, LOG_CONS | LOG_PID, LOG_LOCAL0); -+ openlog(syslogident, LOG_PID, LOG_LOCAL0); - } else { - lf = fopen(logfile, "a"); - if (lf == NULL) { diff -Nru lirc-0.10.1/debian/patches/0004-lircd-Fix-connect-option-parsing-error-343.patch lirc-0.10.2/debian/patches/0004-lircd-Fix-connect-option-parsing-error-343.patch --- lirc-0.10.1/debian/patches/0004-lircd-Fix-connect-option-parsing-error-343.patch 2021-03-18 21:21:31.000000000 +0000 +++ lirc-0.10.2/debian/patches/0004-lircd-Fix-connect-option-parsing-error-343.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,22 +0,0 @@ -From: Alec Leamas -Date: Sun, 30 Dec 2018 21:26:15 +0100 -Subject: [PATCH] lircd: Fix --connect option parsing error (#343). - -Bug: https://sourceforge.net/p/lirc/tickets/343/ ---- - daemons/lircd.cpp | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/daemons/lircd.cpp b/daemons/lircd.cpp -index d5be708..ad8dde9 100644 ---- a/daemons/lircd.cpp -+++ b/daemons/lircd.cpp -@@ -790,7 +790,7 @@ int add_peer_connection(const char* server_arg) - struct servent* service; - char server[strlen(server_arg) + 1]; - -- strncpy(server, server_arg, sizeof(server) - 1); -+ strncpy(server, server_arg, sizeof(server)); - - if (peern < MAX_PEERS) { - peers[peern] = (struct peer_connection*) malloc(sizeof( diff -Nru lirc-0.10.1/debian/patches/0005-systemd-support-Notify-systemd-on-successful-startup.patch lirc-0.10.2/debian/patches/0005-systemd-support-Notify-systemd-on-successful-startup.patch --- lirc-0.10.1/debian/patches/0005-systemd-support-Notify-systemd-on-successful-startup.patch 2021-03-18 21:21:31.000000000 +0000 +++ lirc-0.10.2/debian/patches/0005-systemd-support-Notify-systemd-on-successful-startup.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,43 +0,0 @@ -From: William Manley -Date: Thu, 9 Aug 2018 18:26:44 +0100 -Subject: [PATCH] systemd support: Notify systemd on successful startup - -This allows systemd to detect the case where we've failed to startup -due to a failure to parse our config files. - -Origin: upstream, https://sourceforge.net/p/lirc/git/ci/b78df9b2950cf4 -Applied-Upstream: 0.11.0 ---- - daemons/lircd.cpp | 5 +++++ - systemd/lircd.service | 2 +- - 2 files changed, 6 insertions(+), 1 deletion(-) - -diff --git a/daemons/lircd.cpp b/daemons/lircd.cpp -index ad8dde9..f559b62 100644 ---- a/daemons/lircd.cpp -+++ b/daemons/lircd.cpp -@@ -2469,6 +2469,11 @@ int main(int argc, char** argv) - if (!nodaemon) - daemonize(); - -+#ifdef HAVE_SYSTEMD -+ /* Tell systemd that we started up correctly */ -+ sd_notify(0, "READY=1"); -+#endif -+ - loop(); - - /* never reached */ -diff --git a/systemd/lircd.service b/systemd/lircd.service -index 7f75805..6af049b 100644 ---- a/systemd/lircd.service -+++ b/systemd/lircd.service -@@ -6,7 +6,7 @@ Wants=lircd-setup.service - After=network.target lircd-setup.service - - [Service] --Type=simple -+Type=notify - ExecStart=/usr/sbin/lircd --nodaemon - ; User=lirc - ; Group=lirc diff -Nru lirc-0.10.1/debian/patches/0006-doxyfile-Don-t-include-full-pathname-961954.patch lirc-0.10.2/debian/patches/0006-doxyfile-Don-t-include-full-pathname-961954.patch --- lirc-0.10.1/debian/patches/0006-doxyfile-Don-t-include-full-pathname-961954.patch 1970-01-01 00:00:00.000000000 +0000 +++ lirc-0.10.2/debian/patches/0006-doxyfile-Don-t-include-full-pathname-961954.patch 2024-01-02 17:18:12.000000000 +0000 @@ -0,0 +1,21 @@ +From: Alec Leamas +Date: Tue, 27 Oct 2020 09:43:54 +0100 +Subject: doxyfile: Don't include full pathname (#961954). + +--- + doc/Doxyfile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/doc/Doxyfile b/doc/Doxyfile +index 1960b07..7997407 100644 +--- a/doc/Doxyfile ++++ b/doc/Doxyfile +@@ -119,7 +119,7 @@ INLINE_INHERITED_MEMB = NO + # path before files name in the file list and in the header files. If set + # to NO the shortest path that makes the file name unique will be used. + +-FULL_PATH_NAMES = YES ++FULL_PATH_NAMES = NO + + # If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag + # can be used to strip a user-defined part of the path. Stripping is diff -Nru lirc-0.10.1/debian/patches/0010-Patch-configure.ac-to-support-passing-MODINFO.patch lirc-0.10.2/debian/patches/0010-Patch-configure.ac-to-support-passing-MODINFO.patch --- lirc-0.10.1/debian/patches/0010-Patch-configure.ac-to-support-passing-MODINFO.patch 1970-01-01 00:00:00.000000000 +0000 +++ lirc-0.10.2/debian/patches/0010-Patch-configure.ac-to-support-passing-MODINFO.patch 2024-01-02 17:18:12.000000000 +0000 @@ -0,0 +1,28 @@ +From: Vagrant Cascadian +Date: Sat, 2 Jan 2021 01:03:10 +0000 +Subject: Patch configure.ac to support passing MODINFO. +Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=979021 +Bug: https://sourceforge.net/p/lirc/tickets/374/ +Reviewed-by: Simon McVittie +Last-Update: 2022-10-16 + +--- + configure.ac | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 58347d8..1d910b0 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -26,8 +26,6 @@ AC_CHECK_PROGS([MODINFO], [modinfo], [no], [$PATH:/sbin:/usr/sbin]) + if test x$MODINFO = xno; then + AC_MSG_WARN(["No modinfo command found - skipping kernel drivers."]) + MODINFO="false" +-else +- MODINFO=$( PATH=$PATH:/sbin:/usr/sbin which modinfo ) + fi + AC_SUBST(MODINFO) + AC_CHECK_PROG([PKGCONFIG],[pkg-config],[yes],[no]) +-- +2.20.1 + diff -Nru lirc-0.10.1/debian/patches/0011-tools-do-not-embed-build-date-and-kernel.patch lirc-0.10.2/debian/patches/0011-tools-do-not-embed-build-date-and-kernel.patch --- lirc-0.10.1/debian/patches/0011-tools-do-not-embed-build-date-and-kernel.patch 1970-01-01 00:00:00.000000000 +0000 +++ lirc-0.10.2/debian/patches/0011-tools-do-not-embed-build-date-and-kernel.patch 2024-01-02 17:18:12.000000000 +0000 @@ -0,0 +1,45 @@ +From: Vagrant Cascadian +Date: Sat, 2 Jan 2021 00:01:20 +0000 +X-Dgit-Generated: 0.10.1-7.3 1f430917c5ab786478d575d9714dd4e19defd8e1 +Subject: tools: Do not embed build date and kernel version in various files. + +(Closes: #979019) + +https://reproducible-builds.org/docs/timestamps/ +https://tests.reproducible-builds.org/debian/issues/unstable/captures_kernel_version_issue.html + +Partially fixed upstream: +https://sourceforge.net/p/lirc/git/merge-requests/36/ + +--- + +diff --git a/tools/irdb-get b/tools/irdb-get +index e4e0a26..7688475 100755 +--- a/tools/irdb-get ++++ b/tools/irdb-get +@@ -198,7 +198,7 @@ def do_yaml_config(): + lircmd_by_driver[driver].append("%s/%s" % (tokens[0], tokens[2])) + + print("#") +- print("# Created by 'irdb-get yaml-config' as of " + CACHE_ID) ++ print("# Created by 'irdb-get yaml-config' ") + print("#") + print("\nlircd_by_driver:") + print_yaml_dict(lircd_by_driver) +diff --git a/tools/lirc-lsplugins.cpp b/tools/lirc-lsplugins.cpp +index ba67a3c..d38087f 100644 +--- a/tools/lirc-lsplugins.cpp ++++ b/tools/lirc-lsplugins.cpp +@@ -413,10 +413,9 @@ static void print_header(void) + static void print_yaml_header(void) + { + static const char* const YAML_HEADER = +- "#\n# Generated by lirc-lsplugins --yaml (%s) at %s#\n "; +- const time_t now = time(NULL); ++ "#\n# Generated by lirc-lsplugins --yaml (%s)\n "; + +- printf(YAML_HEADER, VERSION, ctime(&now)); ++ printf(YAML_HEADER, VERSION); + printf("\ndrivers:\n"); + } + diff -Nru lirc-0.10.1/debian/patches/0012-check-for-devinput-using-ac_check_file.patch lirc-0.10.2/debian/patches/0012-check-for-devinput-using-ac_check_file.patch --- lirc-0.10.1/debian/patches/0012-check-for-devinput-using-ac_check_file.patch 1970-01-01 00:00:00.000000000 +0000 +++ lirc-0.10.2/debian/patches/0012-check-for-devinput-using-ac_check_file.patch 2024-01-02 17:18:12.000000000 +0000 @@ -0,0 +1,44 @@ +From: Helmut Grohne +Date: Mon, 31 May 2021 13:09:56 +0200 +X-Dgit-Generated: 0.10.1-7.3 54cb42673c340f60f85764753d13da093aad4baf +Subject: Check for /dev/input using AC_CHECK_FILE. + +(Closes: #989304) + +--- + +diff --git a/configure.ac b/configure.ac +index 1d910b0..66f96aa 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -288,29 +288,12 @@ else + fi + + AC_MSG_CHECKING(for devinput) +-AC_RUN_IFELSE([AC_LANG_PROGRAM([[ +- #include +-]],[[ +- return access("/dev/input", R_OK) == 0 ? 0 : 1; +-]])],[ ++AC_CHECK_FILE([/dev/input],[ + have_devinput="yes" + AC_MSG_RESULT(yes) + ],[ + AC_MSG_RESULT(no) + have_devinput="no" +-],[ +- AS_IF([test x$DEVINPUT_HEADER = x -a x$enable_devinput = xyes], [ +- AC_MSG_ERROR([ +- cannot cross-compile with devinput without DEVINPUT_HEADER +- defined, giving up +- ]) +- ]) +- if test -n "$DEVINPUT_HEADER" ; then +- have_devinput="yes" +- else +- have_devinput="no" +- fi +- AC_MSG_RESULT(yes) + ]) + + diff -Nru lirc-0.10.1/debian/patches/0013-drop-ubuntu-hack.patch lirc-0.10.2/debian/patches/0013-drop-ubuntu-hack.patch --- lirc-0.10.1/debian/patches/0013-drop-ubuntu-hack.patch 1970-01-01 00:00:00.000000000 +0000 +++ lirc-0.10.2/debian/patches/0013-drop-ubuntu-hack.patch 2024-01-02 17:18:12.000000000 +0000 @@ -0,0 +1,20 @@ +Description: This hack is not needed anymore with newer systemd +Forwarded: +Reviewed-By: Gianfranco Costamagna +Last-Update: 2023-12-16 + +--- lirc-0.10.1.orig/configure.ac ++++ lirc-0.10.1/configure.ac +@@ -418,11 +418,7 @@ AC_CHECK_LIB([udev], [udev_device_new_fr + dnl Ubuntu's systemd pkg-config seems broken beyond repair. So: + kernelversion=`cat /proc/version || echo "non-linux"` + AS_CASE([$kernelversion], +- [*Ubuntu*],[ +- AC_MSG_NOTICE([Hardwiring Ubuntu systemd setup]) +- AC_SUBST([systemdsystemunitdir], [/lib/systemd/system]) +- AM_CONDITIONAL([WITH_SYSTEMDSYSTEMUNITDIR], [true]) +- ],[*],[ ++ [*],[ + SYSTEMD_SYSTEMUNITDIR + ]) + diff -Nru lirc-0.10.1/debian/patches/0014-fix-zotac-poll.patch lirc-0.10.2/debian/patches/0014-fix-zotac-poll.patch --- lirc-0.10.1/debian/patches/0014-fix-zotac-poll.patch 1970-01-01 00:00:00.000000000 +0000 +++ lirc-0.10.2/debian/patches/0014-fix-zotac-poll.patch 2024-01-02 17:18:12.000000000 +0000 @@ -0,0 +1,29 @@ +From 79e2494e4880d0446bf837c8bbca0b01baac4ed4 Mon Sep 17 00:00:00 2001 +From: Matthias Reichl +Date: Wed, 8 Apr 2020 11:27:11 +0200 +Subject: [PATCH] plugins/zotac: fix poll timeout + +poll requires a negative timeout value for infinite waits. +See https://sourceforge.net/p/lirc/tickets/327/ + +Signed-off-by: Matthias Reichl +--- + plugins/zotac.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/plugins/zotac.c b/plugins/zotac.c +index ac528c67..4a66acf5 100644 +--- a/plugins/zotac.c ++++ b/plugins/zotac.c +@@ -352,7 +352,7 @@ static void* zotac_repeat(void* arg) + if (pressed) + sel = curl_poll(&pfd, 1, delay_ms); + else +- sel = curl_poll(&pfd, 1, 0); ++ sel = curl_poll(&pfd, 1, -1); + switch (sel) { + case 1: + // Data ready in device's file +-- +2.20.1 + diff -Nru lirc-0.10.1/debian/patches/lirc-gpio-ir-0.10.patch lirc-0.10.2/debian/patches/lirc-gpio-ir-0.10.patch --- lirc-0.10.1/debian/patches/lirc-gpio-ir-0.10.patch 2021-03-18 21:21:31.000000000 +0000 +++ lirc-0.10.2/debian/patches/lirc-gpio-ir-0.10.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,178 +0,0 @@ -Origin: https://github.com/neuralassembly/raspi/blob/master/lirc-gpio-ir-0.10.patch -Bug-Debian: bugs.debian.org/931078 - -diff -ruN lirc-0.10.1.orig/lib/config_file.c lirc-0.10.1/lib/config_file.c ---- lirc-0.10.1.orig/lib/config_file.c 2017-09-10 17:52:19.000000000 +0900 -+++ lirc-0.10.1/lib/config_file.c 2019-06-26 00:39:45.734320696 +0900 -@@ -71,7 +71,7 @@ - typedef void* (*array_guest_func)(void* item, void* arg); - - --#define LINE_LEN 1024 -+#define LINE_LEN 4096 - #define MAX_INCLUDES 10 - - const char* whitespace = " \t"; -diff -ruN lirc-0.10.1.orig/lib/ir_remote.h lirc-0.10.1/lib/ir_remote.h ---- lirc-0.10.1.orig/lib/ir_remote.h 2017-09-10 17:52:19.000000000 +0900 -+++ lirc-0.10.1/lib/ir_remote.h 2019-06-26 00:39:45.714321224 +0900 -@@ -110,12 +110,17 @@ - - static inline int is_pulse(lirc_t data) - { -- return data & PULSE_BIT ? 1 : 0; -+ return ((data & LIRC_MODE2_MASK)==LIRC_MODE2_PULSE) ? 1 : 0; - } - - static inline int is_space(lirc_t data) - { -- return !is_pulse(data); -+ return ((data & LIRC_MODE2_MASK)==LIRC_MODE2_SPACE) ? 1 : 0; -+} -+ -+static inline int is_timeout(lirc_t data) -+{ -+ return ((data & LIRC_MODE2_MASK)==LIRC_MODE2_TIMEOUT) ? 1 : 0; - } - - static inline int has_repeat(const struct ir_remote* remote) -diff -ruN lirc-0.10.1.orig/lib/irrecord.c lirc-0.10.1/lib/irrecord.c ---- lirc-0.10.1.orig/lib/irrecord.c 2017-09-10 17:52:19.000000000 +0900 -+++ lirc-0.10.1/lib/irrecord.c 2019-06-26 00:39:45.724320960 +0900 -@@ -1398,9 +1398,16 @@ - state->retval = 0; - return STS_LEN_TIMEOUT; - } -+ if (is_timeout(state->data)) { -+ return STS_LEN_AGAIN; -+ } - state->count++; - if (state->mode == MODE_GET_GAP) { -- state->sum += state->data & PULSE_MASK; -+ if (state->sum != 0 || is_pulse(state->data)) { -+ state->sum += state->data & PULSE_MASK; -+ }else{ -+ return STS_LEN_AGAIN; -+ } - if (state->average == 0 && is_space(state->data)) { - if (state->data > 100000) { - state->sum = 0; -@@ -1472,6 +1479,10 @@ - state->keypresses = lastmaxcount; - return STS_LEN_AGAIN; - } else if (state->mode == MODE_HAVE_GAP) { -+ if (state->count==1 && is_space(state->data)) { -+ state->count = 0; -+ return STS_LEN_AGAIN; -+ } - if (state->count <= MAX_SIGNALS) { - signals[state->count - 1] = state->data & PULSE_MASK; - } else { -@@ -1510,7 +1521,7 @@ - /* such long pulses may appear with - * crappy hardware (receiver? / remote?) - */ -- else { -+ else if(is_pulse(state->data)) { - remote->gap = 0; - return STS_LEN_NO_GAP_FOUND; - } -@@ -1811,22 +1822,24 @@ - - static int raw_data_ok(struct button_state* btn_state) - { -- int r; -+ int r = 0; - int ref; - -- if (!is_space(btn_state->data)) { -+ if (is_pulse(btn_state->data)) { - r = 0; -- } else if (is_const(&remote)) { -- if (remote.gap > btn_state->sum) { -- ref = (remote.gap - btn_state->sum); -- ref *= (100 - remote.eps); -- ref /= 100; -+ } else if (is_space(btn_state->data)) { -+ if (is_const(&remote)) { -+ if (remote.gap > btn_state->sum) { -+ ref = (remote.gap - btn_state->sum); -+ ref *= (100 - remote.eps); -+ ref /= 100; -+ } else { -+ ref = 0; -+ } -+ r = btn_state->data > ref; - } else { -- ref = 0; -+ r = btn_state->data > (remote.gap * (100 - remote.eps)) / 100; - } -- r = btn_state->data > ref; -- } else { -- r = btn_state->data > (remote.gap * (100 - remote.eps)) / 100; - } - return r; - } -@@ -1970,7 +1983,7 @@ - btn_state->data = remote.gap; - } - if (btn_state->count == 0) { -- if (!is_space(btn_state->data) -+ if (is_pulse(btn_state->data) - || btn_state->data < - remote.gap - remote.gap * remote.eps / - 100) { -diff -ruN lirc-0.10.1.orig/lib/lirc/ir_remote.h lirc-0.10.1/lib/lirc/ir_remote.h ---- lirc-0.10.1.orig/lib/lirc/ir_remote.h 2017-09-10 17:52:58.000000000 +0900 -+++ lirc-0.10.1/lib/lirc/ir_remote.h 2019-06-26 00:39:45.724320960 +0900 -@@ -110,12 +110,17 @@ - - static inline int is_pulse(lirc_t data) - { -- return data & PULSE_BIT ? 1 : 0; -+ return ((data & LIRC_MODE2_MASK)==LIRC_MODE2_PULSE) ? 1 : 0; - } - - static inline int is_space(lirc_t data) - { -- return !is_pulse(data); -+ return ((data & LIRC_MODE2_MASK)==LIRC_MODE2_SPACE) ? 1 : 0; -+} -+ -+static inline int is_timeout(lirc_t data) -+{ -+ return ((data & LIRC_MODE2_MASK)==LIRC_MODE2_TIMEOUT) ? 1 : 0; - } - - static inline int has_repeat(const struct ir_remote* remote) -diff -ruN lirc-0.10.1.orig/tools/mode2.cpp lirc-0.10.1/tools/mode2.cpp ---- lirc-0.10.1.orig/tools/mode2.cpp 2017-09-10 17:52:19.000000000 +0900 -+++ lirc-0.10.1/tools/mode2.cpp 2019-06-26 00:45:38.840404976 +0900 -@@ -326,12 +326,24 @@ - void print_mode2_data(unsigned int data) - { - static int bitno = 1; -+ static bool leading_space = true; -+ unsigned int msg = data & LIRC_MODE2_MASK; - - switch (opt_dmode) { - case 0: -- printf("%s %u\n", ( -- data & PULSE_BIT) ? "pulse" : "space", -- (uint32_t)(data & PULSE_MASK)); -+ if (leading_space && msg == LIRC_MODE2_SPACE ) { -+ break; -+ } else { -+ leading_space = false; -+ } -+ if (msg == LIRC_MODE2_PULSE) { -+ printf("pulse %u\n", (__u32)(data & PULSE_MASK)); -+ } else if (msg == LIRC_MODE2_SPACE) { -+ printf("space %u\n", (__u32)(data & PULSE_MASK)); -+ } else if (msg == LIRC_MODE2_TIMEOUT) { -+ printf("timeout %u\n", (__u32)(data & PULSE_MASK)); -+ leading_space = true; -+ } - break; - case 1: { - /* print output like irrecord raw config file data */ diff -Nru lirc-0.10.1/debian/patches/python3.8.diff lirc-0.10.2/debian/patches/python3.8.diff --- lirc-0.10.1/debian/patches/python3.8.diff 2021-03-18 21:21:31.000000000 +0000 +++ lirc-0.10.2/debian/patches/python3.8.diff 1970-01-01 00:00:00.000000000 +0000 @@ -1,17 +0,0 @@ -Index: b/python-pkg/lirc/client.py -=================================================================== ---- a/python-pkg/lirc/client.py -+++ b/python-pkg/lirc/client.py -@@ -219,10 +219,10 @@ class RawConnection(AbstractConnection): - def readline(self, timeout: float = None) -> str: - ''' Implements AbstractConnection.readline(). ''' - if timeout: -- start = time.clock() -+ start = time.perf_counter() - while b'\n' not in self._buffer: - ready = self._select.select( -- start + timeout - time.clock() if timeout else timeout) -+ start + timeout - time.perf_counter() if timeout else timeout) - if ready == []: - if timeout: - raise TimeoutException( diff -Nru lirc-0.10.1/debian/patches/series lirc-0.10.2/debian/patches/series --- lirc-0.10.1/debian/patches/series 2021-03-18 21:21:31.000000000 +0000 +++ lirc-0.10.2/debian/patches/series 2024-01-08 12:57:04.000000000 +0000 @@ -1,7 +1,8 @@ 0001-lirc.org-Remove-non-free-advertising.patch 0002-lirc-setup-Fix-crash-on-start-on-missing-lirc.config.patch -0003-logging-Don-t-use-broken-LOG_CONS-syslog-flag.patch -0004-lircd-Fix-connect-option-parsing-error-343.patch -0005-systemd-support-Notify-systemd-on-successful-startup.patch -lirc-gpio-ir-0.10.patch -python3.8.diff +0006-doxyfile-Don-t-include-full-pathname-961954.patch +0010-Patch-configure.ac-to-support-passing-MODINFO.patch +0011-tools-do-not-embed-build-date-and-kernel.patch +0012-check-for-devinput-using-ac_check_file.patch +0013-drop-ubuntu-hack.patch +0014-fix-zotac-poll.patch diff -Nru lirc-0.10.1/debian/rules lirc-0.10.2/debian/rules --- lirc-0.10.1/debian/rules 2021-03-18 21:21:31.000000000 +0000 +++ lirc-0.10.2/debian/rules 2024-03-03 19:59:16.000000000 +0000 @@ -1,9 +1,14 @@ #!/usr/bin/make -f include /usr/share/dpkg/architecture.mk +include /usr/share/dpkg/pkg-info.mk export DEB_BUILD_MAINT_OPTIONS = hardening=+all -export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed +export _PYTHON_SYSCONFIGDATA_NAME=_sysconfigdata__$(DEB_HOST_ARCH_OS)_$(DEB_HOST_MULTIARCH) + +export LC_ALL=C.UTF-8 + +export systemdsystemunitdir=$(shell pkg-config --variable=systemdsystemunitdir systemd | sed s,^/,,) %: dh $@ --with python3 @@ -20,14 +25,16 @@ override_dh_auto_configure: debian/lirc.preinst override_dh_auto_configure: -ifeq ($(DEB_BUILD_ARCH_OS), linux) +ifeq ($(DEB_HOST_ARCH_OS), linux) dh_auto_configure -- \ - --enable-uinput --enable-devinput \ - --enable-silent-rules + SH_PATH=/bin/sh \ + MODINFO=/sbin/modinfo \ + --enable-uinput --enable-devinput else dh_auto_configure -- \ - --disable-uinput --disable-devinput \ - --enable-silent-rules + SH_PATH=/bin/sh \ + MODINFO=/sbin/modinfo \ + --disable-uinput --disable-devinput endif @@ -40,7 +47,7 @@ find debian/tmp -name *.la -delete rm -f debian/tmp/usr/share/doc/lirc/lirc.org/api-docs/api-docs chmod 755 debian/tmp/usr/share/lirc/python-pkg/lirc/lirctool -ifeq ($(DEB_BUILD_ARCH_OS), linux) +ifeq ($(DEB_HOST_ARCH_OS), linux) mkdir -p debian/tmp/usr/lib/tmpfiles.d echo "d /run/lirc 0755 root root 10d" \ > debian/tmp/usr/lib/tmpfiles.d/lirc.conf @@ -56,6 +63,9 @@ kfreebsd* | gnu) \ : ;; \ *) \ + cd python-pkg/lirc; \ + ln -s ../lib/.libs/_client.so .; \ + cd ../..; \ cd python-pkg/tests; \ python3 -m unittest discover && rm backend.log \ ;; \ @@ -63,7 +73,7 @@ endif override_dh_installsystemd: -ifeq ($(DEB_BUILD_ARCH_OS), linux) +ifeq ($(DEB_HOST_ARCH_OS), linux) dh_installsystemd -p lirc lircd.socket dh_installsystemd -p lirc --no-enable --no-start lircd.service dh_installsystemd -p lirc --no-enable --no-start irexec.service @@ -71,8 +81,23 @@ dh_installsystemd -p lirc --no-enable --no-start lircd-uinput.service endif -override_dh_install: - dh_install --fail-missing +override_dh_install-arch: + dh_install -a + # Normalize python tarball + tar --extract --file debian/lirc/usr/share/lirc/lirc-$(DEB_VERSION_UPSTREAM).tar.gz + rm -v debian/lirc/usr/share/lirc/lirc-$(DEB_VERSION_UPSTREAM).tar.gz + tar --sort=name \ + --mtime="@$(SOURCE_DATE_EPOCH)" \ + --owner=0 --group=0 --numeric-owner \ + --mode=u=rwX,go=rX \ + --create \ + --file debian/lirc/usr/share/lirc/lirc-$(DEB_VERSION_UPSTREAM).tar \ + lirc-$(DEB_VERSION_UPSTREAM) + gzip --best --no-name debian/lirc/usr/share/lirc/lirc-$(DEB_VERSION_UPSTREAM).tar + rm -rvf lirc-$(DEB_VERSION_UPSTREAM) + +override_dh_missing: + dh_missing --fail-missing override_dh_installinit: dh_installinit --package=lirc --name=lircd diff -Nru lirc-0.10.1/depcomp lirc-0.10.2/depcomp --- lirc-0.10.1/depcomp 2017-09-10 08:52:38.000000000 +0000 +++ lirc-0.10.2/depcomp 2022-10-04 08:02:31.000000000 +0000 @@ -1,9 +1,9 @@ #! /bin/sh # depcomp - compile a program generating dependencies as side-effects -scriptversion=2013-05-30.07; # UTC +scriptversion=2018-03-07.03; # UTC -# Copyright (C) 1999-2014 Free Software Foundation, Inc. +# Copyright (C) 1999-2021 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -16,7 +16,7 @@ # GNU General Public License for more details. # You should have received a copy of the GNU General Public License -# along with this program. If not, see . +# along with this program. If not, see . # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a @@ -783,9 +783,9 @@ # Local Variables: # mode: shell-script # sh-indentation: 2 -# eval: (add-hook 'write-file-hooks 'time-stamp) +# eval: (add-hook 'before-save-hook 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-time-zone: "UTC" +# time-stamp-time-zone: "UTC0" # time-stamp-end: "; # UTC" # End: diff -Nru lirc-0.10.1/doc/Makefile.am lirc-0.10.2/doc/Makefile.am --- lirc-0.10.1/doc/Makefile.am 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/doc/Makefile.am 2022-09-25 10:03:38.000000000 +0000 @@ -1,8 +1,8 @@ ## Process this file with automake to produce Makefile.in ACLOCAL_AMFLAGS = -I m4 -CLEANFILES = man/* html/* man-html/* driver-toc.xsl table.html \ - api-docs.tar.gz NEWS.txt lirc.hwdb table.html \ +CLEANFILES = man/* html/* man-html/* driver-toc.xsl \ + api-docs.tar.gz NEWS.txt \ doxygen*warning* ext-driver-toc.xsl EXTRA_DIST = Doxyfile manpage.xsl make-driver-toc.sh \ @@ -23,7 +23,10 @@ $(LIB_SRC)/*.dox \ $(LIB_SRC)/*.doxhead -dist_noinst_SCRIPTS = data2table data2hwdb +dist_bin_SCRIPTS = lirc-data2table + +datadocdir = $(pkgdatadir)/doc +datadoc_DATA = docpage.xsl manpage_html = man_sources = @@ -49,19 +52,15 @@ dist_plugindocs_DATA = README $(pluginfiles) website_htmldir = $(docdir)/lirc.org/html -nodist_website_html_DATA = $(generated_html) \ - $(generated_plugindocs) \ - NEWS.txt html-source/lirc.css - +dist_website_html_DATA = table.html +nodist_website_html_DATA \ + = $(generated_html) \ + $(generated_plugindocs) \ + NEWS.txt html-source/lirc.css if HAVE_MAN2HTML -nodist_website_html_DATA += $(manpage_html) -endif - -if !IS_CROSS_COMPILE -if HAVE_PYMOD_YAML -nodist_website_html_DATA += table.html -endif +nodist_website_html_DATA \ + += $(manpage_html) endif vardocsdir = $(localstatedir)/lib/lirc/plugins @@ -76,28 +75,15 @@ htmldir = $(docdir)/html -dist_html_DATA = html-source/lirc.css +dist_html_DATA = html-source/lirc.css table.html nodist_html_DATA = -if !IS_CROSS_COMPILE - -if HAVE_PYMOD_YAML -nodist_html_DATA += table.html -endif - -if HAVE_PYMOD_YAML -nodist_pkgdata_DATA = lirc.hwdb -endif - -endif ## CROSS_COMPILE - dist_noinst_DATA = $(man_sources) $(html_sources) $(plugindocs) all: $(nodist_man_MANS) $(nodist_html_DATA) - -install-data-hook: +install-apidocs: if HAVE_DOXYGEN tar -C $(DESTDIR)$(websitedir) \ -xf $(DESTDIR)$(docdir)/api-docs.tar.gz && \ @@ -109,6 +95,9 @@ else ln -sf html/no-api-docs.html $(DESTDIR)$(websitedir)/api-docs endif + + +install-data-hook: install-apidocs cd $(DESTDIR)$(websitedir)/api-docs; ln -sf html/index.html . $(SED) -i '/class="footer"/,/p>/d' $(DESTDIR)$(plugindocsdir)/page.xsl $(PYTHON) $(srcdir)/make_rel_symlink.py \ @@ -117,6 +106,9 @@ $(DESTDIR)$(vardocsdir)/index.html \ $(DESTDIR)$(website_htmldir)/plugins-index.html cp $(srcdir)/plugindocs.mk $(DESTDIR)$(plugindocsdir)/Makefile + $(SED) -e 's|$(abs_srcdir)|$(datadocdir)|' \ + -e 's|$(abs_builddir)|$(docdir)/plugindocs|' \ + -i $(DESTDIR)$(datadocdir)/docpage.xsl fix-urls: .phony sh $(srcdir)/fix-urls.sh $(DESTDIR)$(websitedir) @@ -146,20 +138,6 @@ $(srcdir)/manpage.xsl: $(abs_builddir)/driver-toc.xsl -table.html: docpage.xsl - test -e lirc || \ - ln -s $(top_srcdir)/tools/lirc-setup lirc 2>/dev/null || : - PYTHONPATH=$(top_builddir)/python-pkg/lirc \ - $(PYTHON) $(srcdir)/data2table $(top_srcdir)/configs ../configs \ - | xsltproc --html docpage.xsl - > table.html - -lirc.hwdb: - test -e lirc || \ - ln -s $(top_srcdir)/tools/lirc-setup lirc 2>/dev/null || : - PYTHONPATH=$(top_builddir)/python-pkg/lirc \ - $(PYTHON) $(srcdir)/data2hwdb $(top_srcdir)/configs ../configs \ - > lirc.hwdb - NEWS.txt: $(top_srcdir)/NEWS cp -a $(top_srcdir)/NEWS $@ @@ -224,6 +202,7 @@ $(srcdir)/man-source/lirc-config-tool.1 \ $(srcdir)/man-source/lirc-lsplugins.1 \ $(srcdir)/man-source/lirc-lsremotes.1 \ + $(srcdir)/man-source/lirc-postinstall.1 \ $(srcdir)/man-source/lirc-setup.1 \ $(srcdir)/man-source/lircd-setup.8 \ $(srcdir)/man-source/lircd.8 \ @@ -301,6 +280,7 @@ man/lirc-config-tool.1 \ man/lirc-lsplugins.1 \ man/lirc-lsremotes.1 \ + man/lirc-postinstall.1 \ man/lirc-setup.1 \ man/lircd.8 \ man/lircd-setup.8 \ @@ -339,6 +319,7 @@ man-html/lirc.html \ man-html/lirc-lsplugins.html \ man-html/lirc-lsremotes.html \ + man-html/lirc-postinstall.html \ man-html/lirc-setup.html \ man-html/lircd-setup.html \ man-html/lircd.html \ diff -Nru lirc-0.10.1/doc/Makefile.in lirc-0.10.2/doc/Makefile.in --- lirc-0.10.1/doc/Makefile.in 2017-09-10 08:52:38.000000000 +0000 +++ lirc-0.10.2/doc/Makefile.in 2022-10-04 08:02:31.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.5 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2021 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -95,18 +95,15 @@ @BUILD_XTOOLS_TRUE@am__append_2 = man/xmode2.1 man/irxevent.1 @BUILD_XTOOLS_TRUE@am__append_3 = man-html/irxevent.html man-html/xmode2.html @HAVE_DOXYGEN_TRUE@am__append_4 = api-docs.tar.gz -@HAVE_MAN2HTML_TRUE@am__append_5 = $(manpage_html) -@HAVE_PYMOD_YAML_TRUE@@IS_CROSS_COMPILE_FALSE@am__append_6 = table.html -@HAVE_PYMOD_YAML_TRUE@@IS_CROSS_COMPILE_FALSE@am__append_7 = table.html -@LINUX_KERNEL_TRUE@am__append_8 = $(srcdir)/man-source/irpipe.1 -@HAVE_DEVINPUT_TRUE@am__append_9 = $(srcdir)/man-source/lirc-make-devinput.1 -@ENABLE_UINPUT_TRUE@am__append_10 = $(srcdir)/man-source/lircd-uinput.8 -@LINUX_KERNEL_TRUE@am__append_11 = man/irpipe.1 -@HAVE_DEVINPUT_TRUE@am__append_12 = man/lirc-make-devinput.1 -@ENABLE_UINPUT_TRUE@am__append_13 = man/lircd-uinput.8 -@LINUX_KERNEL_TRUE@am__append_14 = man-html/irpipe.html -@HAVE_DEVINPUT_TRUE@am__append_15 = man-html/lirc-make-devinput.html -@ENABLE_UINPUT_TRUE@am__append_16 = man-html/lircd-uinput.html +@LINUX_KERNEL_TRUE@am__append_5 = $(srcdir)/man-source/irpipe.1 +@HAVE_DEVINPUT_TRUE@am__append_6 = $(srcdir)/man-source/lirc-make-devinput.1 +@ENABLE_UINPUT_TRUE@am__append_7 = $(srcdir)/man-source/lircd-uinput.8 +@LINUX_KERNEL_TRUE@am__append_8 = man/irpipe.1 +@HAVE_DEVINPUT_TRUE@am__append_9 = man/lirc-make-devinput.1 +@ENABLE_UINPUT_TRUE@am__append_10 = man/lircd-uinput.8 +@LINUX_KERNEL_TRUE@am__append_11 = man-html/irpipe.html +@HAVE_DEVINPUT_TRUE@am__append_12 = man-html/lirc-make-devinput.html +@ENABLE_UINPUT_TRUE@am__append_13 = man-html/lircd-uinput.html subdir = doc ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/ax_python_module.m4 \ @@ -117,35 +114,15 @@ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) -DIST_COMMON = $(srcdir)/Makefile.am $(dist_noinst_SCRIPTS) \ +DIST_COMMON = $(srcdir)/Makefile.am $(dist_bin_SCRIPTS) \ $(am__dist_doc_DATA_DIST) $(dist_html_DATA) $(dist_image_DATA) \ $(am__dist_noinst_DATA_DIST) $(dist_plugindocs_DATA) \ - $(dist_website_DATA) $(dist_website_image_DATA) \ - $(am__DIST_COMMON) + $(dist_website_DATA) $(dist_website_html_DATA) \ + $(dist_website_image_DATA) $(am__DIST_COMMON) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = docpage.xsl CONFIG_CLEAN_VPATH_FILES = -SCRIPTS = $(dist_noinst_SCRIPTS) -AM_V_P = $(am__v_P_@AM_V@) -am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) -am__v_P_0 = false -am__v_P_1 = : -AM_V_GEN = $(am__v_GEN_@AM_V@) -am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) -am__v_GEN_0 = @echo " GEN " $@; -am__v_GEN_1 = -AM_V_at = $(am__v_at_@AM_V@) -am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) -am__v_at_0 = @ -am__v_at_1 = -SOURCES = -DIST_SOURCES = -am__can_run_installinfo = \ - case $$AM_UPDATE_INFO_DIR in \ - n|no|NO) false;; \ - *) (install-info --version) >/dev/null 2>&1;; \ - esac am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ @@ -173,14 +150,35 @@ || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ $(am__cd) "$$dir" && rm -f $$files; }; \ } -man1dir = $(mandir)/man1 -am__installdirs = "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man5dir)" \ - "$(DESTDIR)$(man8dir)" "$(DESTDIR)$(docdir)" \ +am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(man1dir)" \ + "$(DESTDIR)$(man5dir)" "$(DESTDIR)$(man8dir)" \ + "$(DESTDIR)$(datadocdir)" "$(DESTDIR)$(docdir)" \ "$(DESTDIR)$(htmldir)" "$(DESTDIR)$(imagedir)" \ "$(DESTDIR)$(plugindocsdir)" "$(DESTDIR)$(websitedir)" \ - "$(DESTDIR)$(website_imagedir)" "$(DESTDIR)$(htmldir)" \ - "$(DESTDIR)$(pkgdatadir)" "$(DESTDIR)$(website_htmldir)" \ - "$(DESTDIR)$(vardocsdir)" "$(DESTDIR)$(varimagedir)" + "$(DESTDIR)$(website_htmldir)" "$(DESTDIR)$(website_imagedir)" \ + "$(DESTDIR)$(htmldir)" "$(DESTDIR)$(vardocsdir)" \ + "$(DESTDIR)$(varimagedir)" +SCRIPTS = $(dist_bin_SCRIPTS) +AM_V_P = $(am__v_P_@AM_V@) +am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) +am__v_P_0 = false +am__v_P_1 = : +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) +am__v_GEN_0 = @echo " GEN " $@; +am__v_GEN_1 = +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) +am__v_at_0 = @ +am__v_at_1 = +SOURCES = +DIST_SOURCES = +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +man1dir = $(mandir)/man1 man5dir = $(mandir)/man5 man8dir = $(mandir)/man8 NROFF = nroff @@ -197,6 +195,7 @@ $(srcdir)/man-source/lirc-config-tool.1 \ $(srcdir)/man-source/lirc-lsplugins.1 \ $(srcdir)/man-source/lirc-lsremotes.1 \ + $(srcdir)/man-source/lirc-postinstall.1 \ $(srcdir)/man-source/lirc-setup.1 \ $(srcdir)/man-source/lircd-setup.8 \ $(srcdir)/man-source/lircd.8 $(srcdir)/man-source/lircd.conf.5 \ @@ -233,11 +232,11 @@ $(srcdir)/plugindocs/imon.html $(srcdir)/plugindocs/irtoy.html \ $(srcdir)/plugindocs/srm7500atilibusb.html \ $(srcdir)/plugindocs/tira.html $(srcdir)/plugindocs/udp.html -DATA = $(dist_doc_DATA) $(dist_html_DATA) $(dist_image_DATA) \ - $(dist_noinst_DATA) $(dist_plugindocs_DATA) \ - $(dist_website_DATA) $(dist_website_image_DATA) \ - $(nodist_html_DATA) $(nodist_pkgdata_DATA) \ - $(nodist_website_html_DATA) $(vardocs_DATA) $(varimage_DATA) +DATA = $(datadoc_DATA) $(dist_doc_DATA) $(dist_html_DATA) \ + $(dist_image_DATA) $(dist_noinst_DATA) $(dist_plugindocs_DATA) \ + $(dist_website_DATA) $(dist_website_html_DATA) \ + $(dist_website_image_DATA) $(nodist_html_DATA) $(vardocs_DATA) \ + $(varimage_DATA) am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/docpage.xsl.in \ README @@ -255,6 +254,8 @@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ +CSCOPE = @CSCOPE@ +CTAGS = @CTAGS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ @@ -265,15 +266,16 @@ DEVINPUT_HEADER = @DEVINPUT_HEADER@ DLLTOOL = @DLLTOOL@ DOXYGEN = @DOXYGEN@ -DRIVER_FLAGS = @DRIVER_FLAGS@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ +ETAGS = @ETAGS@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ +FILECMD = @FILECMD@ FTDI_CFLAGS = @FTDI_CFLAGS@ FTDI_LIBS = @FTDI_LIBS@ GREP = @GREP@ @@ -296,7 +298,6 @@ LTLIBOBJS = @LTLIBOBJS@ LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAKEINFO = @MAKEINFO@ -MAN2HTML = @MAN2HTML@ MANIFEST_TOOL = @MANIFEST_TOOL@ MKDIR_P = @MKDIR_P@ MODINFO = @MODINFO@ @@ -329,6 +330,7 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ SED = @SED@ +SETUPTOOLS_ENV = @SETUPTOOLS_ENV@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SH_PATH = @SH_PATH@ @@ -378,7 +380,6 @@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ -kernel_header_flags = @kernel_header_flags@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ @@ -406,8 +407,8 @@ top_srcdir = @top_srcdir@ x_progs = @x_progs@ ACLOCAL_AMFLAGS = -I m4 -CLEANFILES = man/* html/* man-html/* driver-toc.xsl table.html \ - api-docs.tar.gz NEWS.txt lirc.hwdb table.html \ +CLEANFILES = man/* html/* man-html/* driver-toc.xsl \ + api-docs.tar.gz NEWS.txt \ doxygen*warning* ext-driver-toc.xsl EXTRA_DIST = Doxyfile manpage.xsl make-driver-toc.sh \ @@ -424,7 +425,9 @@ $(LIB_SRC)/*.dox \ $(LIB_SRC)/*.doxhead -dist_noinst_SCRIPTS = data2table data2hwdb +dist_bin_SCRIPTS = lirc-data2table +datadocdir = $(pkgdatadir)/doc +datadoc_DATA = docpage.xsl manpage_html = $(am__append_3) man-html/ircat.html \ man-html/irdb-get.html man-html/irexec.html \ man-html/irpty.html man-html/irrecord.html \ @@ -433,12 +436,12 @@ man-html/irtext2udp.html man-html/irw.html \ man-html/lirc-config-tool.html man-html/lirc.html \ man-html/lirc-lsplugins.html man-html/lirc-lsremotes.html \ - man-html/lirc-setup.html man-html/lircd-setup.html \ - man-html/lircd.html man-html/lircd.conf.html \ - man-html/lircmd.html man-html/lircrcd.html \ - man-html/lircrc.html man-html/mode2.html \ - man-html/pronto2lirc.html $(am__append_14) $(am__append_15) \ - $(am__append_16) + man-html/lirc-postinstall.html man-html/lirc-setup.html \ + man-html/lircd-setup.html man-html/lircd.html \ + man-html/lircd.conf.html man-html/lircmd.html \ + man-html/lircrcd.html man-html/lircrc.html man-html/mode2.html \ + man-html/pronto2lirc.html $(am__append_11) $(am__append_12) \ + $(am__append_13) man_sources = $(am__append_1) $(srcdir)/man-source/ircat.1 \ $(srcdir)/man-source/irdb-get.1 $(srcdir)/man-source/irexec.1 \ $(srcdir)/man-source/irpty.1 $(srcdir)/man-source/irrecord.1 \ @@ -449,38 +452,37 @@ $(srcdir)/man-source/lirc-config-tool.1 \ $(srcdir)/man-source/lirc-lsplugins.1 \ $(srcdir)/man-source/lirc-lsremotes.1 \ + $(srcdir)/man-source/lirc-postinstall.1 \ $(srcdir)/man-source/lirc-setup.1 \ $(srcdir)/man-source/lircd-setup.8 \ $(srcdir)/man-source/lircd.8 $(srcdir)/man-source/lircd.conf.5 \ $(srcdir)/man-source/lircmd.8 $(srcdir)/man-source/lircrcd.8 \ $(srcdir)/man-source/lircrc.5 $(srcdir)/man-source/mode2.1 \ - $(srcdir)/man-source/pronto2lirc.1 $(am__append_8) \ - $(am__append_9) $(am__append_10) + $(srcdir)/man-source/pronto2lirc.1 $(am__append_5) \ + $(am__append_6) $(am__append_7) nodist_man_MANS = $(am__append_2) man/ircat.1 man/irdb-get.1 \ man/irexec.1 man/irpty.1 man/irrecord.1 man/irsimreceive.1 \ man/irsimsend.1 man/irsend.1 man/irtext2udp.1 man/irtestcase.1 \ man/irw.1 man/lirc-config-tool.1 man/lirc-lsplugins.1 \ - man/lirc-lsremotes.1 man/lirc-setup.1 man/lircd.8 \ - man/lircd-setup.8 man/lircd.conf.5 man/lircmd.8 man/lircrcd.8 \ - man/lircrc.5 man/mode2.1 man/pronto2lirc.1 $(am__append_11) \ - $(am__append_12) $(am__append_13) + man/lirc-lsremotes.1 man/lirc-postinstall.1 man/lirc-setup.1 \ + man/lircd.8 man/lircd-setup.8 man/lircd.conf.5 man/lircmd.8 \ + man/lircrcd.8 man/lircrc.5 man/mode2.1 man/pronto2lirc.1 \ + $(am__append_8) $(am__append_9) $(am__append_10) dist_doc_DATA = irxevent.keys $(am__append_4) websitedir = $(docdir)/lirc.org dist_website_DATA = $(website_files) plugindocsdir = $(docdir)/plugindocs dist_plugindocs_DATA = README $(pluginfiles) website_htmldir = $(docdir)/lirc.org/html -nodist_website_html_DATA = $(generated_html) $(generated_plugindocs) \ - NEWS.txt html-source/lirc.css $(am__append_5) $(am__append_6) +dist_website_html_DATA = table.html vardocsdir = $(localstatedir)/lib/lirc/plugins vardocs_DATA = index.html html-source/lirc.css varimagedir = $(localstatedir)/lib/lirc/images varimage_DATA = $(dist_image_DATA) website_imagedir = $(docdir)/lirc.org/images imagedir = $(docdir)/images -dist_html_DATA = html-source/lirc.css -nodist_html_DATA = $(am__append_7) -@HAVE_PYMOD_YAML_TRUE@@IS_CROSS_COMPILE_FALSE@nodist_pkgdata_DATA = lirc.hwdb +dist_html_DATA = html-source/lirc.css table.html +nodist_html_DATA = dist_noinst_DATA = $(man_sources) $(html_sources) $(plugindocs) plugindocs = $(srcdir)/plugindocs/alsa-usb.html \ $(srcdir)/plugindocs/atilibusb.html \ @@ -634,8 +636,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -648,6 +650,41 @@ $(am__aclocal_m4_deps): docpage.xsl: $(top_builddir)/config.status $(srcdir)/docpage.xsl.in cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ +install-dist_binSCRIPTS: $(dist_bin_SCRIPTS) + @$(NORMAL_INSTALL) + @list='$(dist_bin_SCRIPTS)'; test -n "$(bindir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \ + done | \ + sed -e 'p;s,.*/,,;n' \ + -e 'h;s|.*|.|' \ + -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \ + $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \ + { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ + if ($$2 == $$4) { files[d] = files[d] " " $$1; \ + if (++n[d] == $(am__install_max)) { \ + print "f", d, files[d]; n[d] = 0; files[d] = "" } } \ + else { print "f", d "/" $$4, $$1 } } \ + END { for (d in files) print "f", d, files[d] }' | \ + while read type dir files; do \ + if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ + test -z "$$files" || { \ + echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(bindir)$$dir'"; \ + $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \ + } \ + ; done + +uninstall-dist_binSCRIPTS: + @$(NORMAL_UNINSTALL) + @list='$(dist_bin_SCRIPTS)'; test -n "$(bindir)" || exit 0; \ + files=`for p in $$list; do echo "$$p"; done | \ + sed -e 's,.*/,,;$(transform)'`; \ + dir='$(DESTDIR)$(bindir)'; $(am__uninstall_files_from_dir) mostlyclean-libtool: -rm -f *.lo @@ -783,6 +820,27 @@ } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^8][0-9a-z]*$$,8,;x' \ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \ dir='$(DESTDIR)$(man8dir)'; $(am__uninstall_files_from_dir) +install-datadocDATA: $(datadoc_DATA) + @$(NORMAL_INSTALL) + @list='$(datadoc_DATA)'; test -n "$(datadocdir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(datadocdir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(datadocdir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(datadocdir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(datadocdir)" || exit $$?; \ + done + +uninstall-datadocDATA: + @$(NORMAL_UNINSTALL) + @list='$(datadoc_DATA)'; test -n "$(datadocdir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(datadocdir)'; $(am__uninstall_files_from_dir) install-dist_docDATA: $(dist_doc_DATA) @$(NORMAL_INSTALL) @list='$(dist_doc_DATA)'; test -n "$(docdir)" || list=; \ @@ -888,6 +946,27 @@ @list='$(dist_website_DATA)'; test -n "$(websitedir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ dir='$(DESTDIR)$(websitedir)'; $(am__uninstall_files_from_dir) +install-dist_website_htmlDATA: $(dist_website_html_DATA) + @$(NORMAL_INSTALL) + @list='$(dist_website_html_DATA)'; test -n "$(website_htmldir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(website_htmldir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(website_htmldir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(website_htmldir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(website_htmldir)" || exit $$?; \ + done + +uninstall-dist_website_htmlDATA: + @$(NORMAL_UNINSTALL) + @list='$(dist_website_html_DATA)'; test -n "$(website_htmldir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(website_htmldir)'; $(am__uninstall_files_from_dir) install-dist_website_imageDATA: $(dist_website_image_DATA) @$(NORMAL_INSTALL) @list='$(dist_website_image_DATA)'; test -n "$(website_imagedir)" || list=; \ @@ -930,48 +1009,6 @@ @list='$(nodist_html_DATA)'; test -n "$(htmldir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ dir='$(DESTDIR)$(htmldir)'; $(am__uninstall_files_from_dir) -install-nodist_pkgdataDATA: $(nodist_pkgdata_DATA) - @$(NORMAL_INSTALL) - @list='$(nodist_pkgdata_DATA)'; test -n "$(pkgdatadir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(pkgdatadir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(pkgdatadir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pkgdatadir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(pkgdatadir)" || exit $$?; \ - done - -uninstall-nodist_pkgdataDATA: - @$(NORMAL_UNINSTALL) - @list='$(nodist_pkgdata_DATA)'; test -n "$(pkgdatadir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(pkgdatadir)'; $(am__uninstall_files_from_dir) -install-nodist_website_htmlDATA: $(nodist_website_html_DATA) - @$(NORMAL_INSTALL) - @list='$(nodist_website_html_DATA)'; test -n "$(website_htmldir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(website_htmldir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(website_htmldir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(website_htmldir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(website_htmldir)" || exit $$?; \ - done - -uninstall-nodist_website_htmlDATA: - @$(NORMAL_UNINSTALL) - @list='$(nodist_website_html_DATA)'; test -n "$(website_htmldir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(website_htmldir)'; $(am__uninstall_files_from_dir) install-vardocsDATA: $(vardocs_DATA) @$(NORMAL_INSTALL) @list='$(vardocs_DATA)'; test -n "$(vardocsdir)" || list=; \ @@ -1020,8 +1057,10 @@ cscope cscopelist: +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am -distdir: $(DISTFILES) +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -1055,7 +1094,7 @@ check: check-am all-am: Makefile $(SCRIPTS) $(MANS) $(DATA) installdirs: - for dir in "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man5dir)" "$(DESTDIR)$(man8dir)" "$(DESTDIR)$(docdir)" "$(DESTDIR)$(htmldir)" "$(DESTDIR)$(imagedir)" "$(DESTDIR)$(plugindocsdir)" "$(DESTDIR)$(websitedir)" "$(DESTDIR)$(website_imagedir)" "$(DESTDIR)$(htmldir)" "$(DESTDIR)$(pkgdatadir)" "$(DESTDIR)$(website_htmldir)" "$(DESTDIR)$(vardocsdir)" "$(DESTDIR)$(varimagedir)"; do \ + for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man5dir)" "$(DESTDIR)$(man8dir)" "$(DESTDIR)$(datadocdir)" "$(DESTDIR)$(docdir)" "$(DESTDIR)$(htmldir)" "$(DESTDIR)$(imagedir)" "$(DESTDIR)$(plugindocsdir)" "$(DESTDIR)$(websitedir)" "$(DESTDIR)$(website_htmldir)" "$(DESTDIR)$(website_imagedir)" "$(DESTDIR)$(htmldir)" "$(DESTDIR)$(vardocsdir)" "$(DESTDIR)$(varimagedir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am @@ -1109,11 +1148,11 @@ info-am: -install-data-am: install-dist_docDATA install-dist_htmlDATA \ - install-dist_imageDATA install-dist_plugindocsDATA \ - install-dist_websiteDATA install-dist_website_imageDATA \ - install-man install-nodist_htmlDATA install-nodist_pkgdataDATA \ - install-nodist_website_htmlDATA install-vardocsDATA \ +install-data-am: install-datadocDATA install-dist_docDATA \ + install-dist_htmlDATA install-dist_imageDATA \ + install-dist_plugindocsDATA install-dist_websiteDATA \ + install-dist_website_htmlDATA install-dist_website_imageDATA \ + install-man install-nodist_htmlDATA install-vardocsDATA \ install-varimageDATA @$(NORMAL_INSTALL) $(MAKE) $(AM_MAKEFLAGS) install-data-hook @@ -1121,7 +1160,7 @@ install-dvi-am: -install-exec-am: +install-exec-am: install-dist_binSCRIPTS install-html: install-html-am @@ -1159,12 +1198,13 @@ ps-am: -uninstall-am: uninstall-dist_docDATA uninstall-dist_htmlDATA \ +uninstall-am: uninstall-datadocDATA uninstall-dist_binSCRIPTS \ + uninstall-dist_docDATA uninstall-dist_htmlDATA \ uninstall-dist_imageDATA uninstall-dist_plugindocsDATA \ - uninstall-dist_websiteDATA uninstall-dist_website_imageDATA \ - uninstall-man uninstall-nodist_htmlDATA \ - uninstall-nodist_pkgdataDATA uninstall-nodist_website_htmlDATA \ - uninstall-vardocsDATA uninstall-varimageDATA + uninstall-dist_websiteDATA uninstall-dist_website_htmlDATA \ + uninstall-dist_website_imageDATA uninstall-man \ + uninstall-nodist_htmlDATA uninstall-vardocsDATA \ + uninstall-varimageDATA @$(NORMAL_INSTALL) $(MAKE) $(AM_MAKEFLAGS) uninstall-hook uninstall-man: uninstall-man1 uninstall-man5 uninstall-man8 @@ -1175,33 +1215,41 @@ clean-local cscopelist-am ctags-am distclean distclean-generic \ distclean-libtool distdir dvi dvi-am html html-am info info-am \ install install-am install-data install-data-am \ - install-data-hook install-dist_docDATA install-dist_htmlDATA \ + install-data-hook install-datadocDATA install-dist_binSCRIPTS \ + install-dist_docDATA install-dist_htmlDATA \ install-dist_imageDATA install-dist_plugindocsDATA \ - install-dist_websiteDATA install-dist_website_imageDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-man1 install-man5 install-man8 \ - install-nodist_htmlDATA install-nodist_pkgdataDATA \ - install-nodist_website_htmlDATA install-pdf install-pdf-am \ - install-ps install-ps-am install-strip install-vardocsDATA \ - install-varimageDATA installcheck installcheck-am installdirs \ - maintainer-clean maintainer-clean-generic mostlyclean \ - mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ - tags-am uninstall uninstall-am uninstall-dist_docDATA \ - uninstall-dist_htmlDATA uninstall-dist_imageDATA \ - uninstall-dist_plugindocsDATA uninstall-dist_websiteDATA \ + install-dist_websiteDATA install-dist_website_htmlDATA \ + install-dist_website_imageDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-man1 \ + install-man5 install-man8 install-nodist_htmlDATA install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-vardocsDATA install-varimageDATA installcheck \ + installcheck-am installdirs maintainer-clean \ + maintainer-clean-generic mostlyclean mostlyclean-generic \ + mostlyclean-libtool pdf pdf-am ps ps-am tags-am uninstall \ + uninstall-am uninstall-datadocDATA uninstall-dist_binSCRIPTS \ + uninstall-dist_docDATA uninstall-dist_htmlDATA \ + uninstall-dist_imageDATA uninstall-dist_plugindocsDATA \ + uninstall-dist_websiteDATA uninstall-dist_website_htmlDATA \ uninstall-dist_website_imageDATA uninstall-hook uninstall-man \ uninstall-man1 uninstall-man5 uninstall-man8 \ - uninstall-nodist_htmlDATA uninstall-nodist_pkgdataDATA \ - uninstall-nodist_website_htmlDATA uninstall-vardocsDATA \ + uninstall-nodist_htmlDATA uninstall-vardocsDATA \ uninstall-varimageDATA .PRECIOUS: Makefile +nodist_website_html_DATA \ + = $(generated_html) \ + $(generated_plugindocs) \ + NEWS.txt html-source/lirc.css + +@HAVE_MAN2HTML_TRUE@nodist_website_html_DATA \ +@HAVE_MAN2HTML_TRUE@ += $(manpage_html) all: $(nodist_man_MANS) $(nodist_html_DATA) -install-data-hook: +install-apidocs: @HAVE_DOXYGEN_TRUE@ tar -C $(DESTDIR)$(websitedir) \ @HAVE_DOXYGEN_TRUE@ -xf $(DESTDIR)$(docdir)/api-docs.tar.gz && \ @HAVE_DOXYGEN_TRUE@ rm $(DESTDIR)$(docdir)/api-docs.tar.gz @@ -1210,6 +1258,8 @@ @HAVE_DOXYGEN_TRUE@ $(DESTDIR)$(website_htmldir)/api-docs @HAVE_DOXYGEN_TRUE@ cd $(DESTDIR)$(websitedir)/api-docs; ln -sf ../api-docs . @HAVE_DOXYGEN_FALSE@ ln -sf html/no-api-docs.html $(DESTDIR)$(websitedir)/api-docs + +install-data-hook: install-apidocs cd $(DESTDIR)$(websitedir)/api-docs; ln -sf html/index.html . $(SED) -i '/class="footer"/,/p>/d' $(DESTDIR)$(plugindocsdir)/page.xsl $(PYTHON) $(srcdir)/make_rel_symlink.py \ @@ -1218,6 +1268,9 @@ $(DESTDIR)$(vardocsdir)/index.html \ $(DESTDIR)$(website_htmldir)/plugins-index.html cp $(srcdir)/plugindocs.mk $(DESTDIR)$(plugindocsdir)/Makefile + $(SED) -e 's|$(abs_srcdir)|$(datadocdir)|' \ + -e 's|$(abs_builddir)|$(docdir)/plugindocs|' \ + -i $(DESTDIR)$(datadocdir)/docpage.xsl fix-urls: .phony sh $(srcdir)/fix-urls.sh $(DESTDIR)$(websitedir) @@ -1246,20 +1299,6 @@ $(srcdir)/manpage.xsl: $(abs_builddir)/driver-toc.xsl -table.html: docpage.xsl - test -e lirc || \ - ln -s $(top_srcdir)/tools/lirc-setup lirc 2>/dev/null || : - PYTHONPATH=$(top_builddir)/python-pkg/lirc \ - $(PYTHON) $(srcdir)/data2table $(top_srcdir)/configs ../configs \ - | xsltproc --html docpage.xsl - > table.html - -lirc.hwdb: - test -e lirc || \ - ln -s $(top_srcdir)/tools/lirc-setup lirc 2>/dev/null || : - PYTHONPATH=$(top_builddir)/python-pkg/lirc \ - $(PYTHON) $(srcdir)/data2hwdb $(top_srcdir)/configs ../configs \ - > lirc.hwdb - NEWS.txt: $(top_srcdir)/NEWS cp -a $(top_srcdir)/NEWS $@ Binary files /tmp/tmpzuk34oly/tkqm_HcVeW/lirc-0.10.1/doc/api-docs.tar.gz and /tmp/tmpzuk34oly/SWDc4oY7Yn/lirc-0.10.2/doc/api-docs.tar.gz differ diff -Nru lirc-0.10.1/doc/data2hwdb lirc-0.10.2/doc/data2hwdb --- lirc-0.10.1/doc/data2hwdb 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/doc/data2hwdb 1970-01-01 00:00:00.000000000 +0000 @@ -1,115 +0,0 @@ -''' Create the legacy hwdb table using data in config files ''' - -import glob -import os -import sys -import yaml - -import database - -HEADER = ''' -# LIRC - Hardware DataBase -# -# THIS FILE IS DEPRECATED AND WILL BE REMOVED IN NEXT RELEASE. -# -# This is a generated file. Do not edit. -# -# The file lists all the remote controls supported by LIRC -# in a parseable form. It's legacy file kept for compatiblity. -# The current yaml files configs/*.conf should be a better -# source in most cases. -# -# The format is: -# -# [remote controls type] -# description;driver;lirc driver;HW_DEFAULT;lircd_conf; -# -# The HW_DEFAULT field is always empty. -# -# - -''' - -MENUS = {'home_brew': 'Home-brew serial and parallel devices', - 'irda': 'IRDA/Cir hardware', - 'other': 'Other (MIDI, Bluetooth, udp, etc.)', - 'other_serial': 'Other serial port devices', - 'pda': 'PDAs', - 'soundcard': 'Home-brew (soundcard input)', - 'tv_card': 'TV cards', - 'usb': 'USB devices' -} - - -def here(path): - ' Return path added to current dir for __file__. ' - return os.path.join(os.path.dirname(os.path.abspath(__file__)), path) - - -def _add_submenu(menu, configs, db): - ''' Return all entries for a submenu as a string of table rows. ''' - - def getit(remote, what, driver, _default=''): - ''' Get a value from a remote, use default if not existing. ''' - try: - value = remote[what] - except KeyError: - if not driver: - return _default - try: - value = driver[what] - except KeyError: - return _default - if isinstance(value, list): - return ' '.join(value) - return value - - s = '[' + MENUS[menu] + ']\n' - for remote in configs: - try: - driver = db.drivers[remote['driver']] - except KeyError: - driver = None - if getit(remote, 'driver', driver) == "none": - continue - s += getit(remote, 'label', driver) + ';' - s += getit(remote, 'modinit', driver).replace(';', ',') + ';' - s += getit(remote, 'driver', driver) + ';;' - files = [getit(remote, 'lircd_conf', driver), - getit(remote, 'lircmd.conf', driver)] - remotes = db.remotes_by_driver(driver) - if remotes: - files.extend(remotes) - files = [f for f in files if f] - s += ' '.join(files).replace('run_select_any_config', '') + ';\n' - return s - -def main(): - yamldir = None - if len(sys.argv) == 3: - configdir = sys.argv[1] - yamldir = sys.argv[2] - elif len(sys.argv) == 2: - configdir = sys.argv[1] - elif len(sys.argv) == 1: - configdir = None - else: - print("Usage: data2hwd [configuration directory]") - sys.exit(1) - - db = database.Database(configdir, yamldir) - print(HEADER) - for menu in MENUS.keys(): - try: - menuconfigs = [cf for cf in db.configs.values() - if cf['menu'] == menu] - print(_add_submenu(menu, menuconfigs, db)) - except KeyError: - print("No menu in " + db.configs['id']) - - -if __name__ == '__main__': - main() - - -# vim: set expandtab ts=4 sw=4: diff -Nru lirc-0.10.1/doc/data2table lirc-0.10.2/doc/data2table --- lirc-0.10.1/doc/data2table 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/doc/data2table 1970-01-01 00:00:00.000000000 +0000 @@ -1,118 +0,0 @@ -''' Create the lirc Supported Devices Table using data in hardware.yaml ''' - -import glob -import os -import sys -import yaml - -import database - - -MENUS = {'home_brew': 'Home-brew serial and parallel devices', - 'irda': 'IRDA/Cir hardware', - 'other': 'Other (MIDI, Bluetooth, udp, etc.)', - 'other_serial': 'Other serial port devices', - 'pda': 'PDAs', - 'soundcard': 'Home-brew (soundcard input)', - 'tv_card': 'TV cards', - 'usb': 'USB devices' -} - - -_TEMPLATE = ''' - - - - - - - - " -@TABLE_ROWS@ -
HardwareRequired LIRC kernel setuplircd driverDefault lircd and lircmd config filesSupported remotes
-''' - - -def here(path): - ' Return path added to current dir for __file__. ' - return os.path.join(os.path.dirname(os.path.abspath(__file__)), path) - - -def _add_submenu(menu, configs, db): - ''' Return all entries for a submenu as a string of html table rows. ''' - - def getit(remote, what, _default=' '): - ''' Get an item from a remote, using default if not existing. ''' - try: - driver = db.drivers[remote['driver']] - except KeyError: - driver = None - try: - value = remote[what] - except KeyError: - if not driver: - return _default - try: - value = driver[what] - except KeyError: - return _default - if isinstance(value, list): - return ' '.join(value) - return value - - s = '\n' % menu - s += MENUS[menu] + ' \n' - if not configs: - return "" - for remote in sorted(configs, key=lambda r: getit(r, 'label', '')): - if remote['id'] == 'irlink': - pass - if remote['id'] == 'none': - continue - s += '' - s += '' + getit(remote, 'label') + '' - s += '' + getit(remote, 'modinit') + '' - s += '' + getit(remote, 'driver') + '' - s += '' - files = getit(remote, 'lircd_conf') + ' ' + getit(remote, 'lircmd_conf') - driver = remote['driver'] - files += ' '.join(db.remotes_by_driver(driver)) - files += ' '.join(db.lircmd_by_driver(driver)) - s += files - s += '' - s += '' + getit(remote, 'type') + '' - s += '' - return s.replace('& ', '& ') - - -def main(): - yamldir = None - if len(sys.argv) == 3: - configdir = sys.argv[1] - yamldir = sys.argv[2] - elif len(sys.argv) == 2: - configdir = sys.argv[1] - elif len(sys.argv) == 1: - configdir = None - else: - print("Usage: data2hwdb [configuration directory]") - sys.exit(1) - - db = database.Database(configdir, yamldir) - template = _TEMPLATE - - text = '' - for menu in MENUS.keys(): - text += '%s\n' % \ - (menu, MENUS[menu]) - text += '
\n' - for menu in MENUS.keys(): - menuconfigs = [cf for cf in db.configs.values() - if cf['menu'] == menu] - text += _add_submenu(menu, menuconfigs, db) - - template = template.replace('@TABLE_ROWS@', text) - print(template) - - -main() diff -Nru lirc-0.10.1/doc/lirc-data2table lirc-0.10.2/doc/lirc-data2table --- lirc-0.10.1/doc/lirc-data2table 1970-01-01 00:00:00.000000000 +0000 +++ lirc-0.10.2/doc/lirc-data2table 2022-09-25 10:03:38.000000000 +0000 @@ -0,0 +1,118 @@ +''' Create the lirc Supported Devices Table using data in hardware.yaml ''' + +import glob +import os +import sys +import yaml + +import database + + +MENUS = {'home_brew': 'Home-brew serial and parallel devices', + 'irda': 'IRDA/Cir hardware', + 'other': 'Other (MIDI, Bluetooth, udp, etc.)', + 'other_serial': 'Other serial port devices', + 'pda': 'PDAs', + 'soundcard': 'Home-brew (soundcard input)', + 'tv_card': 'TV cards', + 'usb': 'USB devices' +} + + +_TEMPLATE = ''' + + + + + + + + " +@TABLE_ROWS@ +
HardwareRequired LIRC kernel setuplircd driverDefault lircd and lircmd config filesSupported remotes
+''' + + +def here(path): + ' Return path added to current dir for __file__. ' + return os.path.join(os.path.dirname(os.path.abspath(__file__)), path) + + +def _add_submenu(menu, configs, db): + ''' Return all entries for a submenu as a string of html table rows. ''' + + def getit(remote, what, _default=' '): + ''' Get an item from a remote, using default if not existing. ''' + try: + driver = db.drivers[remote['driver']] + except KeyError: + driver = None + try: + value = remote[what] + except KeyError: + if not driver: + return _default + try: + value = driver[what] + except KeyError: + return _default + if isinstance(value, list): + return ' '.join(value) + return value + + s = '\n' % menu + s += MENUS[menu] + ' \n' + if not configs: + return "" + for remote in sorted(configs, key=lambda r: getit(r, 'label', '')): + if remote['id'] == 'irlink': + pass + if remote['id'] == 'none': + continue + s += '' + s += '' + getit(remote, 'label') + '' + s += '' + getit(remote, 'modinit') + '' + s += '' + getit(remote, 'driver') + '' + s += '' + files = getit(remote, 'lircd_conf') + ' ' + getit(remote, 'lircmd_conf') + driver = remote['driver'] + files += ' '.join(db.remotes_by_driver(driver)) + files += ' '.join(db.lircmd_by_driver(driver)) + s += files + s += '' + s += '' + getit(remote, 'type') + '' + s += '' + return s.replace('& ', '& ') + + +def main(): + yamldir = None + if len(sys.argv) == 3: + configdir = sys.argv[1] + yamldir = sys.argv[2] + elif len(sys.argv) == 2: + configdir = sys.argv[1] + elif len(sys.argv) == 1: + configdir = None + else: + print("Usage: data2table [configuration directory]") + sys.exit(1) + + db = database.Database(configdir, yamldir) + template = _TEMPLATE + + text = '' + for menu in MENUS.keys(): + text += '%s\n' % \ + (menu, MENUS[menu]) + text += '
\n' + for menu in MENUS.keys(): + menuconfigs = [cf for cf in db.configs.values() + if cf['menu'] == menu] + text += _add_submenu(menu, menuconfigs, db) + + template = template.replace('@TABLE_ROWS@', text) + print(template) + + +main() diff -Nru lirc-0.10.1/doc/lirc.org/index.html lirc-0.10.2/doc/lirc.org/index.html --- lirc-0.10.1/doc/lirc.org/index.html 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/doc/lirc.org/index.html 2022-09-25 10:03:38.000000000 +0000 @@ -96,7 +96,7 @@

@@ -456,24 +458,6 @@

  • - [10-Sep 2017] -

    - lirc-0.10.1 released. -

    -
  • -
  • - [12-Aug 2017] -

    - lirc-0.10.0 released. -

    -
  • -
  • - [21-Jun 2017] -

    - lirc-0.10.0-rc3 released. -

    -
  • -
  • [13-Jun 2017]

    lirc-0.10.0-rc2 released. @@ -482,10 +466,8 @@

  • [28-May 2017]

    - lirc-0.10.0rc1 released. + lirc-0.10.0 released.

    -
  • -
  • [2-Feb 2017]

    lirc-0.9.4d released. diff -Nru lirc-0.10.1/doc/man-source/irdb-get.1 lirc-0.10.2/doc/man-source/irdb-get.1 --- lirc-0.10.1/doc/man-source/irdb-get.1 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/doc/man-source/irdb-get.1 2022-09-25 10:03:38.000000000 +0000 @@ -1,4 +1,4 @@ -.TH irdb-get "1" "Last change: Sep 2015" "irdb-get @version@" "User Commands" +.TH irdb-get "1" "Last change: Aug 2017" "irdb-get @version@" "User Commands" .SH NAME .P \fBirdb-get\fR - list, search and download lirc configuration files. @@ -99,6 +99,11 @@ Defaults to \fIhttp://lirc-remotes.sourceforge.net/remotes.list\fR. .TP 4 +\fBLIRC_IRDB_CACHE_ID\fR +If defined, replaces the date otherwise printed in the yaml-config +output. Ignored for other commands. Useful for reproducible builds +together with \fIXDG_CACHE_HOME\fR. +.TP 4 \fBXDG_CACHE_HOME\fR If defined, relocates the cached, downloaded remotes listing file to \fI$XDG_CACHE_HOME/remotes.list\fR, see FILES. diff -Nru lirc-0.10.1/doc/man-source/lirc-postinstall.1 lirc-0.10.2/doc/man-source/lirc-postinstall.1 --- lirc-0.10.1/doc/man-source/lirc-postinstall.1 1970-01-01 00:00:00.000000000 +0000 +++ lirc-0.10.2/doc/man-source/lirc-postinstall.1 2022-09-25 10:03:38.000000000 +0000 @@ -0,0 +1,30 @@ +.TH LIRC_POSTINSTALL "1" "Last change: Sep 2017" "lirc-postinstall @version@" "User Commands" +.SH NAME +lirc-postinstall - lirc postinstall configuration +.SH SYNOPSIS +.B lirc-postinstall <\fIconfig.py\fR> +.SH ARGUMENTS +.TP +.B config.py +Normally, the lirc config.py file typically installed in +/usr/share/lirc/python-pkg/lirc/config.py. This file contains +the lirc installation paths. + +.SH DESCRIPTION +\fBlirc-postinstall\fR performs various tasks which must be done either on +the target system and/or using the final installation paths. +Generated data includes driver table and external plugins documentation. + +.SH ENVIRONMENT +.TP +PYTHON +Python interpreter, defaults to \fIpython3\fR +.TP +DESTDIR +Common prefix for all installation paths, typically as given to +\fImake install\fR. + +.SH NOTES +This script patches some files with absolute configuration paths. +As a consequence, the installed package cannot be relocated to another +location after running \fBlirc-postinstall\fR. diff -Nru lirc-0.10.1/doc/man-source/lircd.8 lirc-0.10.2/doc/man-source/lircd.8 --- lirc-0.10.1/doc/man-source/lircd.8 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/doc/man-source/lircd.8 2022-09-25 10:03:38.000000000 +0000 @@ -150,18 +150,6 @@ userspace drivers. These are *.so files, by default found as described under DRIVER LOADING. The argument is a :-separated search path. .TP 4 -\fB-r, --release\fR [\fIsuffix\fR] -This option is deprecated and will be removed in an upcoming release. See -lircd-uinput(8) for a replacement. -.IP -Enables automatic generation of release events for each button press. -lircd will append the given suffix to the button name for each release -event. If no suffix is given the default suffix is '_EVUP'. -.IP -Note the suffix _UP, which was used by -.B lircd -prior to 0.10.0, is used by the linux kernel for other purposes since 4.7. -.TP \fB-R, --repeat-max\fR <\fIlimit\fR> Sets an upper limit to the number of repeats when sending a signal. The current default is 600. A SEND_START request will repeat the signal this diff -Nru lirc-0.10.1/doc/man-source/lircd.conf.5 lirc-0.10.2/doc/man-source/lircd.conf.5 --- lirc-0.10.1/doc/man-source/lircd.conf.5 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/doc/man-source/lircd.conf.5 2022-09-25 10:03:38.000000000 +0000 @@ -1,4 +1,4 @@ -.TH LIRCD.CONF "5" "Last change: Apr 2017" "lircd.conf @version@" "File Formats Manual" +.TH LIRCD.CONF "5" "Last change: Feb 2018" "lircd.conf @version@" "File Formats Manual" .SH NAME lircd.conf \- lirc main configuration file .SH DESCRIPTION @@ -159,7 +159,8 @@ following the post signal. .TP 4 .B pre -A pulse and space immediately following the pre_data. +A pulse and space immediately following the pre_data, used as delimiter +between \fIpre data\fR and \fIdata\fR. .TP 4 .B post A pulse and space immediately following the button code. diff -Nru lirc-0.10.1/doc/plugindocs/girs.html lirc-0.10.2/doc/plugindocs/girs.html --- lirc-0.10.1/doc/plugindocs/girs.html 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/doc/plugindocs/girs.html 2022-09-25 10:03:38.000000000 +0000 @@ -31,6 +31,18 @@ The next chapter covers the firmware; in Arduino lingo, the "sketch" GirsLite. The chapter following deals with the Lirc driver. +

    Atomic operation

    +

    As opposed to most other drivers, sending and receiving of IR sequences are atomic operations + (in the sense that there is one send/receive command for each sent/received IR sequence). + When sending, a one-line command is sent from the driver to the firmware, + containing the complete timing data for the full sequence. + Correspondingly, when a receive command is received by the firmware, + it collects IR gaps and flashes, + up until a gap of length receiveendingtimeout (default 25 milliseconds) has + been received. (This should be short enough to split "different" IR signals, as well as splitting + between the intro sequence and subsequent repeats.) Only then, the received IR sequence is sent to + the driver, as one single line. +

    The firmware GirsLite

    GirsLite is a light-weight configuration of AGirs, intended for usage with IrScrutinizer, @@ -143,6 +155,10 @@ making the first connect, causing most Arduinos to reset (see Arduino documentaton, paragraph "Automatic (Software) Reset"). +

    ending_timeout
    +
    Sets the parameter receiveendingtimeout, + (as described here) to the value of the parameter, interpreted as milliseconds. + (Default is 25 milliseconds. The firmware's own default is overwritten.)

    The device name

    @@ -227,16 +243,20 @@ It is hosted on Github. API documentation is found here. It is known to the Arduino library manager, so it can/should be installed using it (Sketch -> Include library -> Manage libraries; - select Topic "Other" and Type "Contributed!, scroll down to "Infrared"). + select Topic "Other" and Type "Contributed", scroll down to "Infrared").

    Why is the Arduino taking so long on its start?

    -

    Recently (2017-03-11), the selftest time was reduced from 2 seconds to 0.2 seconds. - You may also disable the Arduino bootloader by programming the sketch +

    Recently (2017-03-11), the self test time in the firmware was reduced from 2 seconds to 0.2 seconds. +

    + If the hardware has a ICSP header (which excludes for example this,) + you may also disable the Arduino bootloader by programming the sketch using an external programmer connected to the ICSP header. (It can easily be restored from the Arduino IDE, using the programmer.) +

    Also, consider adding the flag --immediate-init to the options to lircd.

    I have seen a document saying that I should use "Girs4Lirc"; what is that?

    Girs4Lirc has been replaced by GirsLite, which now works with both Lirc and IrScrutinizer.

    How is "Girs" to be pronounced?

    -

    Who cares? +

    It is pronounced like in "girl". + The "language" Girs is written capitalized, the name of an implementation is usually written in lower case.

    Run the lirc-postinstall script to populate this file with data + for all drivers. +

    + + diff -Nru lirc-0.10.1/include/media/lirc.h lirc-0.10.2/include/media/lirc.h --- lirc-0.10.1/include/media/lirc.h 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/include/media/lirc.h 2022-09-25 10:03:38.000000000 +0000 @@ -1,35 +1,13 @@ +/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ /* * lirc.h - linux infrared remote control header file - * last modified 2010/07/13 by Jarod Wilson - * - * This file is a bundled copy of /usr/include/linux/lirc.h. On linux - * systems, the configure script checks for the system header and uses - * it if it exists in favor of this file. Using the system header is - * preferred. */ #ifndef _LINUX_LIRC_H #define _LINUX_LIRC_H -#include - -#include - -#ifdef HAVE_LINUX_TYPES_H #include -#else -#include -#endif - -#ifdef HAVE_LINUX_IOCTL_H #include -#else -#include -#endif - -#if defined(_IOT_SIMPLE) && !defined(_IOT__IOTBASE___u32) -#define _IOT__IOTBASE___u32 _IOT_SIMPLE(__u32) -#endif #define PULSE_BIT 0x01000000 #define PULSE_MASK 0x00FFFFFF @@ -38,14 +16,16 @@ #define LIRC_MODE2_PULSE 0x01000000 #define LIRC_MODE2_FREQUENCY 0x02000000 #define LIRC_MODE2_TIMEOUT 0x03000000 +#define LIRC_MODE2_OVERFLOW 0x04000000 #define LIRC_VALUE_MASK 0x00FFFFFF #define LIRC_MODE2_MASK 0xFF000000 -#define LIRC_SPACE(val) (((val)&LIRC_VALUE_MASK) | LIRC_MODE2_SPACE) -#define LIRC_PULSE(val) (((val)&LIRC_VALUE_MASK) | LIRC_MODE2_PULSE) -#define LIRC_FREQUENCY(val) (((val)&LIRC_VALUE_MASK) | LIRC_MODE2_FREQUENCY) -#define LIRC_TIMEOUT(val) (((val)&LIRC_VALUE_MASK) | LIRC_MODE2_TIMEOUT) +#define LIRC_SPACE(val) (((val) & LIRC_VALUE_MASK) | LIRC_MODE2_SPACE) +#define LIRC_PULSE(val) (((val) & LIRC_VALUE_MASK) | LIRC_MODE2_PULSE) +#define LIRC_FREQUENCY(val) (((val) & LIRC_VALUE_MASK) | LIRC_MODE2_FREQUENCY) +#define LIRC_TIMEOUT(val) (((val) & LIRC_VALUE_MASK) | LIRC_MODE2_TIMEOUT) +#define LIRC_OVERFLOW(val) (((val) & LIRC_VALUE_MASK) | LIRC_MODE2_OVERFLOW) #define LIRC_VALUE(val) ((val)&LIRC_VALUE_MASK) #define LIRC_MODE2(val) ((val)&LIRC_MODE2_MASK) @@ -54,6 +34,7 @@ #define LIRC_IS_PULSE(val) (LIRC_MODE2(val) == LIRC_MODE2_PULSE) #define LIRC_IS_FREQUENCY(val) (LIRC_MODE2(val) == LIRC_MODE2_FREQUENCY) #define LIRC_IS_TIMEOUT(val) (LIRC_MODE2(val) == LIRC_MODE2_TIMEOUT) +#define LIRC_IS_OVERFLOW(val) (LIRC_MODE2(val) == LIRC_MODE2_OVERFLOW) /* used heavily by lirc userspace */ #define lirc_t int @@ -68,6 +49,7 @@ #define LIRC_MODE_RAW 0x00000001 #define LIRC_MODE_PULSE 0x00000002 #define LIRC_MODE_MODE2 0x00000004 +#define LIRC_MODE_SCANCODE 0x00000008 #define LIRC_MODE_LIRCCODE 0x00000010 @@ -85,18 +67,16 @@ #define LIRC_CAN_REC_RAW LIRC_MODE2REC(LIRC_MODE_RAW) #define LIRC_CAN_REC_PULSE LIRC_MODE2REC(LIRC_MODE_PULSE) #define LIRC_CAN_REC_MODE2 LIRC_MODE2REC(LIRC_MODE_MODE2) +#define LIRC_CAN_REC_SCANCODE LIRC_MODE2REC(LIRC_MODE_SCANCODE) #define LIRC_CAN_REC_LIRCCODE LIRC_MODE2REC(LIRC_MODE_LIRCCODE) #define LIRC_CAN_REC_MASK LIRC_MODE2REC(LIRC_CAN_SEND_MASK) #define LIRC_CAN_SET_REC_CARRIER (LIRC_CAN_SET_SEND_CARRIER << 16) -#define LIRC_CAN_SET_REC_DUTY_CYCLE (LIRC_CAN_SET_SEND_DUTY_CYCLE << 16) -#define LIRC_CAN_SET_REC_DUTY_CYCLE_RANGE 0x40000000 #define LIRC_CAN_SET_REC_CARRIER_RANGE 0x80000000 #define LIRC_CAN_GET_REC_RESOLUTION 0x20000000 #define LIRC_CAN_SET_REC_TIMEOUT 0x10000000 -#define LIRC_CAN_SET_REC_FILTER 0x08000000 #define LIRC_CAN_MEASURE_CARRIER 0x02000000 #define LIRC_CAN_USE_WIDEBAND_RECEIVER 0x04000000 @@ -104,52 +84,154 @@ #define LIRC_CAN_SEND(x) ((x)&LIRC_CAN_SEND_MASK) #define LIRC_CAN_REC(x) ((x)&LIRC_CAN_REC_MASK) -#define LIRC_CAN_NOTIFY_DECODE 0x01000000 +/* + * Unused features. These features were never implemented, in tree or + * out of tree. These definitions are here so not to break the lircd build. + */ +#define LIRC_CAN_SET_REC_FILTER 0 +#define LIRC_CAN_NOTIFY_DECODE 0 /*** IOCTL commands for lirc driver ***/ -#define LIRC_GET_FEATURES _IOR('i', 0x00000000, uint32_t) +#define LIRC_GET_FEATURES _IOR('i', 0x00000000, __u32) -#define LIRC_GET_SEND_MODE _IOR('i', 0x00000001, uint32_t) -#define LIRC_GET_REC_MODE _IOR('i', 0x00000002, uint32_t) -#define LIRC_GET_REC_RESOLUTION _IOR('i', 0x00000007, uint32_t) +#define LIRC_GET_SEND_MODE _IOR('i', 0x00000001, __u32) +#define LIRC_GET_REC_MODE _IOR('i', 0x00000002, __u32) +#define LIRC_GET_REC_RESOLUTION _IOR('i', 0x00000007, __u32) -#define LIRC_GET_MIN_TIMEOUT _IOR('i', 0x00000008, uint32_t) -#define LIRC_GET_MAX_TIMEOUT _IOR('i', 0x00000009, uint32_t) +#define LIRC_GET_MIN_TIMEOUT _IOR('i', 0x00000008, __u32) +#define LIRC_GET_MAX_TIMEOUT _IOR('i', 0x00000009, __u32) /* code length in bits, currently only for LIRC_MODE_LIRCCODE */ -#define LIRC_GET_LENGTH _IOR('i', 0x0000000f, uint32_t) +#define LIRC_GET_LENGTH _IOR('i', 0x0000000f, __u32) -#define LIRC_SET_SEND_MODE _IOW('i', 0x00000011, uint32_t) -#define LIRC_SET_REC_MODE _IOW('i', 0x00000012, uint32_t) +#define LIRC_SET_SEND_MODE _IOW('i', 0x00000011, __u32) +#define LIRC_SET_REC_MODE _IOW('i', 0x00000012, __u32) /* Note: these can reset the according pulse_width */ -#define LIRC_SET_SEND_CARRIER _IOW('i', 0x00000013, uint32_t) -#define LIRC_SET_REC_CARRIER _IOW('i', 0x00000014, uint32_t) -#define LIRC_SET_SEND_DUTY_CYCLE _IOW('i', 0x00000015, uint32_t) -#define LIRC_SET_TRANSMITTER_MASK _IOW('i', 0x00000017, uint32_t) +#define LIRC_SET_SEND_CARRIER _IOW('i', 0x00000013, __u32) +#define LIRC_SET_REC_CARRIER _IOW('i', 0x00000014, __u32) +#define LIRC_SET_SEND_DUTY_CYCLE _IOW('i', 0x00000015, __u32) +#define LIRC_SET_TRANSMITTER_MASK _IOW('i', 0x00000017, __u32) /* * when a timeout != 0 is set the driver will send a * LIRC_MODE2_TIMEOUT data packet, otherwise LIRC_MODE2_TIMEOUT is * never sent, timeout is disabled by default */ -#define LIRC_SET_REC_TIMEOUT _IOW('i', 0x00000018, uint32_t) +#define LIRC_SET_REC_TIMEOUT _IOW('i', 0x00000018, __u32) /* 1 enables, 0 disables timeout reports in MODE2 */ -#define LIRC_SET_REC_TIMEOUT_REPORTS _IOW('i', 0x00000019, uint32_t) +#define LIRC_SET_REC_TIMEOUT_REPORTS _IOW('i', 0x00000019, __u32) /* * if enabled from the next key press on the driver will send * LIRC_MODE2_FREQUENCY packets */ -#define LIRC_SET_MEASURE_CARRIER_MODE _IOW('i', 0x0000001d, uint32_t) +#define LIRC_SET_MEASURE_CARRIER_MODE _IOW('i', 0x0000001d, __u32) /* * to set a range use LIRC_SET_REC_CARRIER_RANGE with the * lower bound first and later LIRC_SET_REC_CARRIER with the upper bound */ -#define LIRC_SET_REC_CARRIER_RANGE _IOW('i', 0x0000001f, uint32_t) +#define LIRC_SET_REC_CARRIER_RANGE _IOW('i', 0x0000001f, __u32) -#define LIRC_SET_WIDEBAND_RECEIVER _IOW('i', 0x00000023, uint32_t) +#define LIRC_SET_WIDEBAND_RECEIVER _IOW('i', 0x00000023, __u32) + +/* + * Return the recording timeout, which is either set by + * the ioctl LIRC_SET_REC_TIMEOUT or by the kernel after setting the protocols. + */ +#define LIRC_GET_REC_TIMEOUT _IOR('i', 0x00000024, __u32) + +/** + * struct lirc_scancode - decoded scancode with protocol for use with + * LIRC_MODE_SCANCODE + * + * @timestamp: Timestamp in nanoseconds using CLOCK_MONOTONIC when IR + * was decoded. + * @flags: should be 0 for transmit. When receiving scancodes, + * LIRC_SCANCODE_FLAG_TOGGLE or LIRC_SCANCODE_FLAG_REPEAT can be set + * depending on the protocol + * @rc_proto: see enum rc_proto + * @keycode: the translated keycode. Set to 0 for transmit. + * @scancode: the scancode received or to be sent + */ +struct lirc_scancode { + __u64 timestamp; + __u16 flags; + __u16 rc_proto; + __u32 keycode; + __u64 scancode; +}; + +/* Set if the toggle bit of rc-5 or rc-6 is enabled */ +#define LIRC_SCANCODE_FLAG_TOGGLE 1 +/* Set if this is a nec or sanyo repeat */ +#define LIRC_SCANCODE_FLAG_REPEAT 2 + +/** + * enum rc_proto - the Remote Controller protocol + * + * @RC_PROTO_UNKNOWN: Protocol not known + * @RC_PROTO_OTHER: Protocol known but proprietary + * @RC_PROTO_RC5: Philips RC5 protocol + * @RC_PROTO_RC5X_20: Philips RC5x 20 bit protocol + * @RC_PROTO_RC5_SZ: StreamZap variant of RC5 + * @RC_PROTO_JVC: JVC protocol + * @RC_PROTO_SONY12: Sony 12 bit protocol + * @RC_PROTO_SONY15: Sony 15 bit protocol + * @RC_PROTO_SONY20: Sony 20 bit protocol + * @RC_PROTO_NEC: NEC protocol + * @RC_PROTO_NECX: Extended NEC protocol + * @RC_PROTO_NEC32: NEC 32 bit protocol + * @RC_PROTO_SANYO: Sanyo protocol + * @RC_PROTO_MCIR2_KBD: RC6-ish MCE keyboard + * @RC_PROTO_MCIR2_MSE: RC6-ish MCE mouse + * @RC_PROTO_RC6_0: Philips RC6-0-16 protocol + * @RC_PROTO_RC6_6A_20: Philips RC6-6A-20 protocol + * @RC_PROTO_RC6_6A_24: Philips RC6-6A-24 protocol + * @RC_PROTO_RC6_6A_32: Philips RC6-6A-32 protocol + * @RC_PROTO_RC6_MCE: MCE (Philips RC6-6A-32 subtype) protocol + * @RC_PROTO_SHARP: Sharp protocol + * @RC_PROTO_XMP: XMP protocol + * @RC_PROTO_CEC: CEC protocol + * @RC_PROTO_IMON: iMon Pad protocol + * @RC_PROTO_RCMM12: RC-MM protocol 12 bits + * @RC_PROTO_RCMM24: RC-MM protocol 24 bits + * @RC_PROTO_RCMM32: RC-MM protocol 32 bits + * @RC_PROTO_XBOX_DVD: Xbox DVD Movie Playback Kit protocol + * @RC_PROTO_MAX: Maximum value of enum rc_proto + */ +enum rc_proto { + RC_PROTO_UNKNOWN = 0, + RC_PROTO_OTHER = 1, + RC_PROTO_RC5 = 2, + RC_PROTO_RC5X_20 = 3, + RC_PROTO_RC5_SZ = 4, + RC_PROTO_JVC = 5, + RC_PROTO_SONY12 = 6, + RC_PROTO_SONY15 = 7, + RC_PROTO_SONY20 = 8, + RC_PROTO_NEC = 9, + RC_PROTO_NECX = 10, + RC_PROTO_NEC32 = 11, + RC_PROTO_SANYO = 12, + RC_PROTO_MCIR2_KBD = 13, + RC_PROTO_MCIR2_MSE = 14, + RC_PROTO_RC6_0 = 15, + RC_PROTO_RC6_6A_20 = 16, + RC_PROTO_RC6_6A_24 = 17, + RC_PROTO_RC6_6A_32 = 18, + RC_PROTO_RC6_MCE = 19, + RC_PROTO_SHARP = 20, + RC_PROTO_XMP = 21, + RC_PROTO_CEC = 22, + RC_PROTO_IMON = 23, + RC_PROTO_RCMM12 = 24, + RC_PROTO_RCMM24 = 25, + RC_PROTO_RCMM32 = 26, + RC_PROTO_XBOX_DVD = 27, + RC_PROTO_MAX = RC_PROTO_XBOX_DVD, +}; #endif diff -Nru lirc-0.10.1/install-sh lirc-0.10.2/install-sh --- lirc-0.10.1/install-sh 2017-09-10 08:52:38.000000000 +0000 +++ lirc-0.10.2/install-sh 2022-10-04 08:02:31.000000000 +0000 @@ -1,7 +1,7 @@ #!/bin/sh # install - install a program, script, or datafile -scriptversion=2013-12-25.23; # UTC +scriptversion=2020-11-14.01; # UTC # This originates from X11R5 (mit/util/scripts/install.sh), which was # later released in X11R6 (xc/config/util/install.sh) with the @@ -69,6 +69,11 @@ # Desired mode of installed file. mode=0755 +# Create dirs (including intermediate dirs) using mode 755. +# This is like GNU 'install' as of coreutils 8.32 (2020). +mkdir_umask=22 + +backupsuffix= chgrpcmd= chmodcmd=$chmodprog chowncmd= @@ -99,18 +104,28 @@ --version display version info and exit. -c (ignored) - -C install only if different (preserve the last data modification time) + -C install only if different (preserve data modification time) -d create directories instead of installing files. -g GROUP $chgrpprog installed files to GROUP. -m MODE $chmodprog installed files to MODE. -o USER $chownprog installed files to USER. + -p pass -p to $cpprog. -s $stripprog installed files. + -S SUFFIX attempt to back up existing files, with suffix SUFFIX. -t DIRECTORY install into DIRECTORY. -T report an error if DSTFILE is a directory. Environment variables override the default commands: CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG RMPROG STRIPPROG + +By default, rm is invoked with -f; when overridden with RMPROG, +it's up to you to specify -f if you want it. + +If -S is not specified, no backups are attempted. + +Email bug reports to bug-automake@gnu.org. +Automake home page: https://www.gnu.org/software/automake/ " while test $# -ne 0; do @@ -137,8 +152,13 @@ -o) chowncmd="$chownprog $2" shift;; + -p) cpprog="$cpprog -p";; + -s) stripcmd=$stripprog;; + -S) backupsuffix="$2" + shift;; + -t) is_target_a_directory=always dst_arg=$2 @@ -255,6 +275,10 @@ dstdir=$dst test -d "$dstdir" dstdir_status=$? + # Don't chown directories that already exist. + if test $dstdir_status = 0; then + chowncmd="" + fi else # Waiting for this to be detected by the "$cpprog $src $dsttmp" command @@ -271,15 +295,18 @@ fi dst=$dst_arg - # If destination is a directory, append the input filename; won't work - # if double slashes aren't ignored. + # If destination is a directory, append the input filename. if test -d "$dst"; then if test "$is_target_a_directory" = never; then echo "$0: $dst_arg: Is a directory" >&2 exit 1 fi dstdir=$dst - dst=$dstdir/`basename "$src"` + dstbase=`basename "$src"` + case $dst in + */) dst=$dst$dstbase;; + *) dst=$dst/$dstbase;; + esac dstdir_status=0 else dstdir=`dirname "$dst"` @@ -288,27 +315,16 @@ fi fi + case $dstdir in + */) dstdirslash=$dstdir;; + *) dstdirslash=$dstdir/;; + esac + obsolete_mkdir_used=false if test $dstdir_status != 0; then case $posix_mkdir in '') - # Create intermediate dirs using mode 755 as modified by the umask. - # This is like FreeBSD 'install' as of 1997-10-28. - umask=`umask` - case $stripcmd.$umask in - # Optimize common cases. - *[2367][2367]) mkdir_umask=$umask;; - .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;; - - *[0-7]) - mkdir_umask=`expr $umask + 22 \ - - $umask % 100 % 40 + $umask % 20 \ - - $umask % 10 % 4 + $umask % 2 - `;; - *) mkdir_umask=$umask,go-w;; - esac - # With -d, create the new directory with the user-specified mode. # Otherwise, rely on $mkdir_umask. if test -n "$dir_arg"; then @@ -318,43 +334,49 @@ fi posix_mkdir=false - case $umask in - *[123567][0-7][0-7]) - # POSIX mkdir -p sets u+wx bits regardless of umask, which - # is incompatible with FreeBSD 'install' when (umask & 300) != 0. - ;; - *) - tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$ - trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0 - - if (umask $mkdir_umask && - exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1 - then - if test -z "$dir_arg" || { - # Check for POSIX incompatibilities with -m. - # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or - # other-writable bit of parent directory when it shouldn't. - # FreeBSD 6.1 mkdir -m -p sets mode of existing directory. - ls_ld_tmpdir=`ls -ld "$tmpdir"` - case $ls_ld_tmpdir in - d????-?r-*) different_mode=700;; - d????-?--*) different_mode=755;; - *) false;; - esac && - $mkdirprog -m$different_mode -p -- "$tmpdir" && { - ls_ld_tmpdir_1=`ls -ld "$tmpdir"` - test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1" - } - } - then posix_mkdir=: - fi - rmdir "$tmpdir/d" "$tmpdir" - else - # Remove any dirs left behind by ancient mkdir implementations. - rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null - fi - trap '' 0;; - esac;; + # The $RANDOM variable is not portable (e.g., dash). Use it + # here however when possible just to lower collision chance. + tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$ + + trap ' + ret=$? + rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null + exit $ret + ' 0 + + # Because "mkdir -p" follows existing symlinks and we likely work + # directly in world-writeable /tmp, make sure that the '$tmpdir' + # directory is successfully created first before we actually test + # 'mkdir -p'. + if (umask $mkdir_umask && + $mkdirprog $mkdir_mode "$tmpdir" && + exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1 + then + if test -z "$dir_arg" || { + # Check for POSIX incompatibilities with -m. + # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or + # other-writable bit of parent directory when it shouldn't. + # FreeBSD 6.1 mkdir -m -p sets mode of existing directory. + test_tmpdir="$tmpdir/a" + ls_ld_tmpdir=`ls -ld "$test_tmpdir"` + case $ls_ld_tmpdir in + d????-?r-*) different_mode=700;; + d????-?--*) different_mode=755;; + *) false;; + esac && + $mkdirprog -m$different_mode -p -- "$test_tmpdir" && { + ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"` + test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1" + } + } + then posix_mkdir=: + fi + rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" + else + # Remove any dirs left behind by ancient mkdir implementations. + rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null + fi + trap '' 0;; esac if @@ -365,7 +387,7 @@ then : else - # The umask is ridiculous, or mkdir does not conform to POSIX, + # mkdir does not conform to POSIX, # or it failed possibly due to a race condition. Create the # directory the slow way, step by step, checking for races as we go. @@ -394,7 +416,7 @@ prefixes= else if $posix_mkdir; then - (umask=$mkdir_umask && + (umask $mkdir_umask && $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break # Don't fail if two instances are running concurrently. test -d "$prefix" || exit 1 @@ -427,14 +449,25 @@ else # Make a couple of temp file names in the proper directory. - dsttmp=$dstdir/_inst.$$_ - rmtmp=$dstdir/_rm.$$_ + dsttmp=${dstdirslash}_inst.$$_ + rmtmp=${dstdirslash}_rm.$$_ # Trap to clean up those temp files at exit. trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0 # Copy the file name to the temp name. - (umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") && + (umask $cp_umask && + { test -z "$stripcmd" || { + # Create $dsttmp read-write so that cp doesn't create it read-only, + # which would cause strip to fail. + if test -z "$doit"; then + : >"$dsttmp" # No need to fork-exec 'touch'. + else + $doit touch "$dsttmp" + fi + } + } && + $doit_exec $cpprog "$src" "$dsttmp") && # and set any options; do chmod last to preserve setuid bits. # @@ -460,6 +493,13 @@ then rm -f "$dsttmp" else + # If $backupsuffix is set, and the file being installed + # already exists, attempt a backup. Don't worry if it fails, + # e.g., if mv doesn't support -f. + if test -n "$backupsuffix" && test -f "$dst"; then + $doit $mvcmd -f "$dst" "$dst$backupsuffix" 2>/dev/null + fi + # Rename the file to the real destination. $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null || @@ -474,9 +514,9 @@ # file should still install successfully. { test ! -f "$dst" || - $doit $rmcmd -f "$dst" 2>/dev/null || + $doit $rmcmd "$dst" 2>/dev/null || { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null && - { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; } + { $doit $rmcmd "$rmtmp" 2>/dev/null; :; } } || { echo "$0: cannot unlink or rename $dst" >&2 (exit 1); exit 1 @@ -493,9 +533,9 @@ done # Local variables: -# eval: (add-hook 'write-file-hooks 'time-stamp) +# eval: (add-hook 'before-save-hook 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-time-zone: "UTC" +# time-stamp-time-zone: "UTC0" # time-stamp-end: "; # UTC" # End: diff -Nru lirc-0.10.1/lib/Makefile.am lirc-0.10.2/lib/Makefile.am --- lirc-0.10.1/lib/Makefile.am 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/lib/Makefile.am 2022-09-25 10:03:38.000000000 +0000 @@ -11,7 +11,7 @@ AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/lib \ -Wall \ - -Wp,-D_FORTIFY_SOURCE=2 @kernel_header_flags@ + -Wp,-D_FORTIFY_SOURCE=2 -I$(top_srcdir)/include lib_LTLIBRARIES = liblirc.la liblirc_client.la liblirc_driver.la \ libirrecord.la @@ -140,7 +140,6 @@ lirc/paths.h: ../paths.h | lirc -cp ../paths.h $@ - input_map.lo: lirc/input_map.inc input_map.inc: lirc/input_map.inc diff -Nru lirc-0.10.1/lib/Makefile.in lirc-0.10.2/lib/Makefile.in --- lirc-0.10.1/lib/Makefile.in 2017-09-10 08:52:38.000000000 +0000 +++ lirc-0.10.2/lib/Makefile.in 2022-10-04 08:02:31.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.5 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2021 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -180,7 +180,18 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/ciniparser.Plo \ + ./$(DEPDIR)/config_file.Plo ./$(DEPDIR)/curl_poll.Plo \ + ./$(DEPDIR)/dictionary.Plo ./$(DEPDIR)/driver.Plo \ + ./$(DEPDIR)/drv_admin.Plo ./$(DEPDIR)/drv_enum.Plo \ + ./$(DEPDIR)/dump_config.Plo ./$(DEPDIR)/input_map.Plo \ + ./$(DEPDIR)/ir_remote.Plo ./$(DEPDIR)/irrecord.Plo \ + ./$(DEPDIR)/line_buffer.Plo ./$(DEPDIR)/lirc-utils.Plo \ + ./$(DEPDIR)/lirc_client.Plo ./$(DEPDIR)/lirc_log.Plo \ + ./$(DEPDIR)/lirc_options.Plo ./$(DEPDIR)/receive.Plo \ + ./$(DEPDIR)/release.Plo ./$(DEPDIR)/serial.Plo \ + ./$(DEPDIR)/transmit.Plo am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) @@ -252,8 +263,6 @@ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | $(am__uniquify_input)` -ETAGS = etags -CTAGS = ctags am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ @@ -269,6 +278,8 @@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ +CSCOPE = @CSCOPE@ +CTAGS = @CTAGS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ @@ -279,15 +290,16 @@ DEVINPUT_HEADER = @DEVINPUT_HEADER@ DLLTOOL = @DLLTOOL@ DOXYGEN = @DOXYGEN@ -DRIVER_FLAGS = @DRIVER_FLAGS@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ +ETAGS = @ETAGS@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ +FILECMD = @FILECMD@ FTDI_CFLAGS = @FTDI_CFLAGS@ FTDI_LIBS = @FTDI_LIBS@ GREP = @GREP@ @@ -310,7 +322,6 @@ LTLIBOBJS = @LTLIBOBJS@ LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAKEINFO = @MAKEINFO@ -MAN2HTML = @MAN2HTML@ MANIFEST_TOOL = @MANIFEST_TOOL@ MKDIR_P = @MKDIR_P@ MODINFO = @MODINFO@ @@ -343,6 +354,7 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ SED = @SED@ +SETUPTOOLS_ENV = @SETUPTOOLS_ENV@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SH_PATH = @SH_PATH@ @@ -392,7 +404,6 @@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ -kernel_header_flags = @kernel_header_flags@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ @@ -431,7 +442,7 @@ AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/lib \ -Wall \ - -Wp,-D_FORTIFY_SOURCE=2 @kernel_header_flags@ + -Wp,-D_FORTIFY_SOURCE=2 -I$(top_srcdir)/include lib_LTLIBRARIES = liblirc.la liblirc_client.la liblirc_driver.la \ libirrecord.la @@ -519,8 +530,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -585,26 +596,32 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ciniparser.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/config_file.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl_poll.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dictionary.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/driver.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/drv_admin.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/drv_enum.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dump_config.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/input_map.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ir_remote.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/irrecord.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/line_buffer.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lirc-utils.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lirc_client.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lirc_log.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lirc_options.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/receive.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/release.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/serial.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/transmit.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ciniparser.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/config_file.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl_poll.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dictionary.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/driver.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/drv_admin.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/drv_enum.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dump_config.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/input_map.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ir_remote.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/irrecord.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/line_buffer.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lirc-utils.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lirc_client.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lirc_log.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lirc_options.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/receive.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/release.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/serial.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/transmit.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .c.o: @am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -768,8 +785,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am -distdir: $(DISTFILES) +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -812,7 +831,8 @@ done install: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) install-am -install-exec: install-exec-am +install-exec: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data: install-data-am uninstall: uninstall-am @@ -849,7 +869,26 @@ mostlyclean-am distclean: distclean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/ciniparser.Plo + -rm -f ./$(DEPDIR)/config_file.Plo + -rm -f ./$(DEPDIR)/curl_poll.Plo + -rm -f ./$(DEPDIR)/dictionary.Plo + -rm -f ./$(DEPDIR)/driver.Plo + -rm -f ./$(DEPDIR)/drv_admin.Plo + -rm -f ./$(DEPDIR)/drv_enum.Plo + -rm -f ./$(DEPDIR)/dump_config.Plo + -rm -f ./$(DEPDIR)/input_map.Plo + -rm -f ./$(DEPDIR)/ir_remote.Plo + -rm -f ./$(DEPDIR)/irrecord.Plo + -rm -f ./$(DEPDIR)/line_buffer.Plo + -rm -f ./$(DEPDIR)/lirc-utils.Plo + -rm -f ./$(DEPDIR)/lirc_client.Plo + -rm -f ./$(DEPDIR)/lirc_log.Plo + -rm -f ./$(DEPDIR)/lirc_options.Plo + -rm -f ./$(DEPDIR)/receive.Plo + -rm -f ./$(DEPDIR)/release.Plo + -rm -f ./$(DEPDIR)/serial.Plo + -rm -f ./$(DEPDIR)/transmit.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -897,7 +936,26 @@ installcheck-am: maintainer-clean: maintainer-clean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/ciniparser.Plo + -rm -f ./$(DEPDIR)/config_file.Plo + -rm -f ./$(DEPDIR)/curl_poll.Plo + -rm -f ./$(DEPDIR)/dictionary.Plo + -rm -f ./$(DEPDIR)/driver.Plo + -rm -f ./$(DEPDIR)/drv_admin.Plo + -rm -f ./$(DEPDIR)/drv_enum.Plo + -rm -f ./$(DEPDIR)/dump_config.Plo + -rm -f ./$(DEPDIR)/input_map.Plo + -rm -f ./$(DEPDIR)/ir_remote.Plo + -rm -f ./$(DEPDIR)/irrecord.Plo + -rm -f ./$(DEPDIR)/line_buffer.Plo + -rm -f ./$(DEPDIR)/lirc-utils.Plo + -rm -f ./$(DEPDIR)/lirc_client.Plo + -rm -f ./$(DEPDIR)/lirc_log.Plo + -rm -f ./$(DEPDIR)/lirc_options.Plo + -rm -f ./$(DEPDIR)/receive.Plo + -rm -f ./$(DEPDIR)/release.Plo + -rm -f ./$(DEPDIR)/serial.Plo + -rm -f ./$(DEPDIR)/transmit.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -918,11 +976,11 @@ uninstall-dist_lircincludeHEADERS uninstall-libLTLIBRARIES \ uninstall-nodist_lircincludeHEADERS -.MAKE: all check install install-am install-strip +.MAKE: all check install install-am install-exec install-strip -.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \ - clean-libLTLIBRARIES clean-libtool cscopelist-am ctags \ - ctags-am dist-hook distclean distclean-compile \ +.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \ + clean-generic clean-libLTLIBRARIES clean-libtool cscopelist-am \ + ctags ctags-am dist-hook distclean distclean-compile \ distclean-generic distclean-libtool distclean-tags distdir dvi \ dvi-am html html-am info info-am install install-am \ install-data install-data-am install-dist_includeHEADERS \ diff -Nru lirc-0.10.1/lib/config_file.c lirc-0.10.2/lib/config_file.c --- lirc-0.10.1/lib/config_file.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/lib/config_file.c 2022-09-25 10:03:38.000000000 +0000 @@ -35,11 +35,7 @@ #include #include -#ifdef HAVE_KERNEL_LIRC_H -#include -#else #include "media/lirc.h" -#endif #include "lirc/lirc_log.h" #include "lirc/lirc_options.h" @@ -71,7 +67,7 @@ typedef void* (*array_guest_func)(void* item, void* arg); -#define LINE_LEN 1024 +#define LINE_LEN 4096 #define MAX_INCLUDES 10 const char* whitespace = " \t"; @@ -104,7 +100,6 @@ { "RCMM", RCMM }, { "SPACE_ENC", SPACE_ENC }, { "SPACE_FIRST", SPACE_FIRST }, - { "GOLDSTAR", GOLDSTAR }, { "GRUNDIG", GRUNDIG }, { "BO", BO }, { "SERIAL", SERIAL }, diff -Nru lirc-0.10.1/lib/driver.h lirc-0.10.2/lib/driver.h --- lirc-0.10.1/lib/driver.h 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/lib/driver.h 2022-09-25 10:03:38.000000000 +0000 @@ -23,11 +23,7 @@ #include #include -#ifdef HAVE_KERNEL_LIRC_H -#include -#else #include "media/lirc.h" -#endif #include "lirc/ir_remote_types.h" #include "lirc/curl_poll.h" diff -Nru lirc-0.10.1/lib/drv_admin.c lirc-0.10.2/lib/drv_admin.c --- lirc-0.10.1/lib/drv_admin.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/lib/drv_admin.c 2022-10-01 11:35:46.000000000 +0000 @@ -68,7 +68,7 @@ .open_func = default_open, .close_func = default_close, .api_version = 2, - .driver_version = "0.9.2" + .driver_version = "0.10.2" }; diff -Nru lirc-0.10.1/lib/drv_enum.h lirc-0.10.2/lib/drv_enum.h --- lirc-0.10.1/lib/drv_enum.h 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/lib/drv_enum.h 2022-09-25 10:03:38.000000000 +0000 @@ -18,8 +18,6 @@ * on device, usable in user interfaces. * * Return codes are DRV_ERR_ constants as of driver.h, or 0 for no errors. - * - * @since 0.10.0 */ #include diff -Nru lirc-0.10.1/lib/dump_config.c lirc-0.10.2/lib/dump_config.c --- lirc-0.10.1/lib/dump_config.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/lib/dump_config.c 2022-09-25 10:03:38.000000000 +0000 @@ -31,11 +31,7 @@ #include #include -#ifdef HAVE_KERNEL_LIRC_H -#include -#else #include "media/lirc.h" -#endif #include "lirc/config_file.h" #include "lirc/dump_config.h" diff -Nru lirc-0.10.1/lib/input_map.inc lirc-0.10.2/lib/input_map.inc --- lirc-0.10.1/lib/input_map.inc 2017-09-10 08:52:58.000000000 +0000 +++ lirc-0.10.2/lib/input_map.inc 2022-10-04 08:03:49.000000000 +0000 @@ -16,17 +16,21 @@ {"KEY_AB", 0x196}, {"KEY_ADDRESSBOOK", 0x1ad}, {"KEY_AGAIN", 129}, +{"KEY_ALL_APPLICATIONS", 204}, {"KEY_ALS_TOGGLE", 0x230}, {"KEY_ALTERASE", 222}, {"KEY_ANGLE", 0x173}, {"KEY_APOSTROPHE", 40}, {"KEY_APPSELECT", 0x244}, {"KEY_ARCHIVE", 0x169}, +{"KEY_ASPECT_RATIO", 0x177}, +{"KEY_ASSISTANT", 0x247}, {"KEY_ATTENDANT_OFF", 0x21c}, {"KEY_ATTENDANT_ON", 0x21b}, {"KEY_ATTENDANT_TOGGLE", 0x21d}, {"KEY_AUDIO", 0x188}, {"KEY_AUDIO_DESC", 0x26e}, +{"KEY_AUTOPILOT_ENGAGE_TOGGLE", 0x27d}, {"KEY_AUX", 0x186}, {"KEY_B", 48}, {"KEY_BACK", 158}, @@ -42,6 +46,7 @@ {"KEY_BRIGHTNESS_CYCLE", 243}, {"KEY_BRIGHTNESSDOWN", 224}, {"KEY_BRIGHTNESS_MAX", 0x251}, +{"KEY_BRIGHTNESS_MENU", 0x289}, {"KEY_BRIGHTNESS_MIN", 0x250}, {"KEY_BRIGHTNESSUP", 225}, {"KEY_BRL_DOT10", 0x1fa}, @@ -74,6 +79,7 @@ {"KEY_CHANNELUP", 0x192}, {"KEY_CHAT", 216}, {"KEY_CLEAR", 0x163}, +{"KEY_CLEARVU_SONAR", 0x286}, {"KEY_CLOSE", 206}, {"KEY_CLOSECD", 160}, {"KEY_COFFEE", 152}, @@ -88,7 +94,6 @@ {"KEY_CUT", 137}, {"KEY_CYCLEWINDOWS", 154}, {"KEY_D", 32}, -{"KEY_DASHBOARD", 204}, {"KEY_DATA", 0x277}, {"KEY_DATABASE", 0x1aa}, {"KEY_DEL_EOL", 0x1c0}, @@ -96,6 +101,7 @@ {"KEY_DELETE", 111}, {"KEY_DELETEFILE", 146}, {"KEY_DEL_LINE", 0x1c3}, +{"KEY_DICTATE", 0x24a}, {"KEY_DIGITS", 0x19d}, {"KEY_DIRECTORY", 0x18a}, {"KEY_DISPLAY_OFF", 245}, @@ -104,6 +110,7 @@ {"KEY_DOLLAR", 0x1b2}, {"KEY_DOT", 52}, {"KEY_DOWN", 108}, +{"KEY_DUAL_RANGE_RADAR", 0x283}, {"KEY_DVD", 0x185}, {"KEY_E", 18}, {"KEY_EDIT", 176}, @@ -111,6 +118,7 @@ {"KEY_EJECTCD", 161}, {"KEY_EJECTCLOSECD", 162}, {"KEY_EMAIL", 215}, +{"KEY_EMOJI_PICKER", 0x249}, {"KEY_END", 107}, {"KEY_ENTER", 28}, {"KEY_EPG", 0x16d}, @@ -150,6 +158,7 @@ {"KEY_FINANCE", 219}, {"KEY_FIND", 136}, {"KEY_FIRST", 0x194}, +{"KEY_FISHING_CHART", 0x281}, {"KEY_FN", 0x1d0}, {"KEY_FN_1", 0x1de}, {"KEY_FN_2", 0x1df}, @@ -170,12 +179,14 @@ {"KEY_FN_F7", 0x1d8}, {"KEY_FN_F8", 0x1d9}, {"KEY_FN_F9", 0x1da}, +{"KEY_FN_RIGHT_SHIFT", 0x1e5}, {"KEY_FN_S", 0x1e3}, {"KEY_FORWARD", 159}, {"KEY_FORWARDMAIL", 233}, {"KEY_FRAMEBACK", 0x1b4}, {"KEY_FRAMEFORWARD", 0x1b5}, {"KEY_FRONT", 132}, +{"KEY_FULL_SCREEN", 0x174}, {"KEY_G", 34}, {"KEY_GAMES", 0x1a1}, {"KEY_GOTO", 0x162}, @@ -184,6 +195,7 @@ {"KEY_GREEN", 0x18f}, {"KEY_H", 35}, {"KEY_HANGEUL", 122}, +{"KEY_HANGUP_PHONE", 0x1be}, {"KEY_HANJA", 123}, {"KEY_HELP", 138}, {"KEY_HENKAN", 92}, @@ -211,6 +223,12 @@ {"KEY_KBDINPUTASSIST_NEXTGROUP", 0x263}, {"KEY_KBDINPUTASSIST_PREV", 0x260}, {"KEY_KBDINPUTASSIST_PREVGROUP", 0x262}, +{"KEY_KBD_LAYOUT_NEXT", 0x248}, +{"KEY_KBD_LCD_MENU1", 0x2b8}, +{"KEY_KBD_LCD_MENU2", 0x2b9}, +{"KEY_KBD_LCD_MENU3", 0x2ba}, +{"KEY_KBD_LCD_MENU4", 0x2bb}, +{"KEY_KBD_LCD_MENU5", 0x2bc}, {"KEY_KEYBOARD", 0x176}, {"KEY_KP0", 82}, {"KEY_KP1", 79}, @@ -250,8 +268,45 @@ {"KEY_LIST", 0x18b}, {"KEY_LOGOFF", 0x1b1}, {"KEY_M", 50}, +{"KEY_MACRO10", 0x299}, +{"KEY_MACRO1", 0x290}, +{"KEY_MACRO11", 0x29a}, {"KEY_MACRO", 112}, +{"KEY_MACRO12", 0x29b}, +{"KEY_MACRO13", 0x29c}, +{"KEY_MACRO14", 0x29d}, +{"KEY_MACRO15", 0x29e}, +{"KEY_MACRO16", 0x29f}, +{"KEY_MACRO17", 0x2a0}, +{"KEY_MACRO18", 0x2a1}, +{"KEY_MACRO19", 0x2a2}, +{"KEY_MACRO20", 0x2a3}, +{"KEY_MACRO2", 0x291}, +{"KEY_MACRO21", 0x2a4}, +{"KEY_MACRO22", 0x2a5}, +{"KEY_MACRO23", 0x2a6}, +{"KEY_MACRO24", 0x2a7}, +{"KEY_MACRO25", 0x2a8}, +{"KEY_MACRO26", 0x2a9}, +{"KEY_MACRO27", 0x2aa}, +{"KEY_MACRO28", 0x2ab}, +{"KEY_MACRO29", 0x2ac}, +{"KEY_MACRO30", 0x2ad}, +{"KEY_MACRO3", 0x292}, +{"KEY_MACRO4", 0x293}, +{"KEY_MACRO5", 0x294}, +{"KEY_MACRO6", 0x295}, +{"KEY_MACRO7", 0x296}, +{"KEY_MACRO8", 0x297}, +{"KEY_MACRO9", 0x298}, +{"KEY_MACRO_PRESET1", 0x2b3}, +{"KEY_MACRO_PRESET2", 0x2b4}, +{"KEY_MACRO_PRESET3", 0x2b5}, +{"KEY_MACRO_PRESET_CYCLE", 0x2b2}, +{"KEY_MACRO_RECORD_START", 0x2b0}, +{"KEY_MACRO_RECORD_STOP", 0x2b1}, {"KEY_MAIL", 155}, +{"KEY_MARK_WAYPOINT", 0x27e}, {"KEY_MAX", 0x2ff}, {"KEY_MEDIA", 226}, {"KEY_MEDIA_REPEAT", 0x1b7}, @@ -269,11 +324,15 @@ {"KEY_MUHENKAN", 94}, {"KEY_MUTE", 113}, {"KEY_N", 49}, +{"KEY_NAV_CHART", 0x280}, +{"KEY_NAV_INFO", 0x288}, {"KEY_NEW", 181}, {"KEY_NEWS", 0x1ab}, {"KEY_NEXT", 0x197}, +{"KEY_NEXT_ELEMENT", 0x27b}, {"KEY_NEXT_FAVORITE", 0x270}, {"KEY_NEXTSONG", 163}, +{"KEY_NOTIFICATION_CENTER", 0x1bc}, {"KEY_NUMERIC_0", 0x200}, {"KEY_NUMERIC_1", 0x201}, {"KEY_NUMERIC_11", 0x26c}, @@ -295,6 +354,7 @@ {"KEY_NUMLOCK", 69}, {"KEY_O", 24}, {"KEY_OK", 0x160}, +{"KEY_ONSCREEN_KEYBOARD", 0x278}, {"KEY_OPEN", 134}, {"KEY_OPTION", 0x165}, {"KEY_P", 25}, @@ -306,6 +366,7 @@ {"KEY_PAUSE_RECORD", 0x272}, {"KEY_PC", 0x178}, {"KEY_PHONE", 169}, +{"KEY_PICKUP_PHONE", 0x1bd}, {"KEY_PLAY", 207}, {"KEY_PLAYCD", 200}, {"KEY_PLAYER", 0x183}, @@ -314,8 +375,10 @@ {"KEY_POWER2", 0x164}, {"KEY_PRESENTATION", 0x1a9}, {"KEY_PREVIOUS", 0x19c}, +{"KEY_PREVIOUS_ELEMENT", 0x27c}, {"KEY_PREVIOUSSONG", 165}, {"KEY_PRINT", 210}, +{"KEY_PRIVACY_SCREEN_TOGGLE", 0x279}, {"KEY_PROG1", 148}, {"KEY_PROG2", 149}, {"KEY_PROG3", 202}, @@ -326,6 +389,7 @@ {"KEY_Q", 16}, {"KEY_QUESTION", 214}, {"KEY_R", 19}, +{"KEY_RADAR_OVERLAY", 0x284}, {"KEY_RADIO", 0x181}, {"KEY_RECORD", 167}, {"KEY_RED", 0x18e}, @@ -347,28 +411,32 @@ {"KEY_RO", 89}, {"KEY_ROOT_MENU", 0x26a}, {"KEY_ROTATE_DISPLAY", 153}, +{"KEY_ROTATE_LOCK_TOGGLE", 0x231}, {"KEY_S", 31}, {"KEY_SAT", 0x17d}, {"KEY_SAT2", 0x17e}, {"KEY_SAVE", 234}, {"KEY_SCALE", 120}, -{"KEY_SCREEN", 0x177}, {"KEY_SCREENSAVER", 0x245}, {"KEY_SCROLLDOWN", 178}, {"KEY_SCROLLLOCK", 70}, {"KEY_SCROLLUP", 177}, {"KEY_SEARCH", 217}, {"KEY_SELECT", 0x161}, +{"KEY_SELECTIVE_SCREENSHOT", 0x27a}, {"KEY_SEMICOLON", 39}, {"KEY_SEND", 231}, {"KEY_SENDFILE", 145}, {"KEY_SETUP", 141}, {"KEY_SHOP", 221}, {"KEY_SHUFFLE", 0x19a}, +{"KEY_SIDEVU_SONAR", 0x287}, +{"KEY_SINGLE_RANGE_RADAR", 0x282}, {"KEY_SLASH", 53}, {"KEY_SLEEP", 142}, {"KEY_SLOW", 0x199}, {"KEY_SLOWREVERSE", 0x276}, +{"KEY_SOS", 0x27f}, {"KEY_SOUND", 213}, {"KEY_SPACE", 57}, {"KEY_SPELLCHECK", 0x1b0}, @@ -392,6 +460,7 @@ {"KEY_TOUCHPAD_OFF", 0x214}, {"KEY_TOUCHPAD_ON", 0x213}, {"KEY_TOUCHPAD_TOGGLE", 0x212}, +{"KEY_TRADITIONAL_SONAR", 0x285}, {"KEY_TUNER", 0x182}, {"KEY_TV", 0x179}, {"KEY_TV2", 0x17a}, @@ -429,7 +498,6 @@ {"KEY_YEN", 124}, {"KEY_Z", 44}, {"KEY_ZENKAKUHANKAKU", 85}, -{"KEY_ZOOM", 0x174}, {"KEY_ZOOMIN", 0x1a2}, {"KEY_ZOOMOUT", 0x1a3}, {"KEY_ZOOMRESET", 0x1a4}, @@ -478,6 +546,7 @@ {"BTN_START", 0x13b}, {"BTN_STYLUS", 0x14b}, {"BTN_STYLUS2", 0x14c}, +{"BTN_STYLUS3", 0x149}, {"BTN_TASK", 0x117}, {"BTN_THUMB", 0x121}, {"BTN_THUMB2", 0x122}, diff -Nru lirc-0.10.1/lib/ir_remote.c lirc-0.10.2/lib/ir_remote.c --- lirc-0.10.1/lib/ir_remote.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/lib/ir_remote.c 2022-09-25 10:03:38.000000000 +0000 @@ -30,11 +30,7 @@ #include -#ifdef HAVE_KERNEL_LIRC_H -#include -#else #include "media/lirc.h" -#endif #include "lirc/ir_remote.h" #include "lirc/driver.h" diff -Nru lirc-0.10.1/lib/ir_remote.h lirc-0.10.2/lib/ir_remote.h --- lirc-0.10.1/lib/ir_remote.h 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/lib/ir_remote.h 2022-09-25 10:03:38.000000000 +0000 @@ -110,12 +110,22 @@ static inline int is_pulse(lirc_t data) { - return data & PULSE_BIT ? 1 : 0; + return ((data & LIRC_MODE2_MASK)==LIRC_MODE2_PULSE) ? 1 : 0; } static inline int is_space(lirc_t data) { - return !is_pulse(data); + return ((data & LIRC_MODE2_MASK)==LIRC_MODE2_SPACE) ? 1 : 0; +} + +static inline int is_timeout(lirc_t data) +{ + return ((data & LIRC_MODE2_MASK)==LIRC_MODE2_TIMEOUT) ? 1 : 0; +} + +static inline int is_overflow(lirc_t data) +{ + return ((data & LIRC_MODE2_MASK)==LIRC_MODE2_OVERFLOW) ? 1 : 0; } static inline int has_repeat(const struct ir_remote* remote) @@ -186,14 +196,6 @@ return 1; else return 0; -} - -static inline int is_goldstar(const struct ir_remote* remote) -{ - if ((remote->flags & IR_PROTOCOL_MASK) == GOLDSTAR) - return 1; - else - return 0; } static inline int is_grundig(const struct ir_remote* remote) diff -Nru lirc-0.10.1/lib/ir_remote_types.h lirc-0.10.2/lib/ir_remote_types.h --- lirc-0.10.1/lib/ir_remote_types.h 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/lib/ir_remote_types.h 2022-09-25 10:03:38.000000000 +0000 @@ -34,11 +34,7 @@ #include #endif -#ifdef HAVE_KERNEL_LIRC_H -#include -#else #include "media/lirc.h" -#endif /** * Denotes an internal coded representation for an IR transmission. @@ -112,7 +108,6 @@ #define RCMM 0x0008 /**< IR data follows RC-MM protocol */ #define SPACE_ENC 0x0010 /**< IR data is space encoded */ #define SPACE_FIRST 0x0020 /**< bits are encoded as space+pulse */ -#define GOLDSTAR 0x0040 /**< encoding found on Goldstar remote */ #define GRUNDIG 0x0080 /**< encoding found on Grundig remote */ #define BO 0x0100 /**< encoding found on Bang & Olufsen remote */ #define SERIAL 0x0200 /**< serial protocol */ diff -Nru lirc-0.10.1/lib/irrecord.c lirc-0.10.2/lib/irrecord.c --- lirc-0.10.1/lib/irrecord.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/lib/irrecord.c 2022-10-01 11:35:46.000000000 +0000 @@ -51,7 +51,7 @@ .open_func = default_open, .close_func = default_close, .api_version = 2, - .driver_version = "0.9.2" + .driver_version = "0.10.2" }; static const int IR_CODE_NODE_SIZE = sizeof(struct ir_code_node); @@ -1398,9 +1398,16 @@ state->retval = 0; return STS_LEN_TIMEOUT; } + if (is_timeout(state->data) || is_overflow(state->data)) { + return STS_LEN_AGAIN; + } state->count++; if (state->mode == MODE_GET_GAP) { - state->sum += state->data & PULSE_MASK; + if (state->sum != 0 || is_pulse(state->data)) { + state->sum += state->data & PULSE_MASK; + }else{ + return STS_LEN_AGAIN; + } if (state->average == 0 && is_space(state->data)) { if (state->data > 100000) { state->sum = 0; @@ -1472,6 +1479,10 @@ state->keypresses = lastmaxcount; return STS_LEN_AGAIN; } else if (state->mode == MODE_HAVE_GAP) { + if (state->count==1 && is_space(state->data)) { + state->count = 0; + return STS_LEN_AGAIN; + } if (state->count <= MAX_SIGNALS) { signals[state->count - 1] = state->data & PULSE_MASK; } else { @@ -1510,7 +1521,7 @@ /* such long pulses may appear with * crappy hardware (receiver? / remote?) */ - else { + else if(is_pulse(state->data)) { remote->gap = 0; return STS_LEN_NO_GAP_FOUND; } @@ -1811,22 +1822,24 @@ static int raw_data_ok(struct button_state* btn_state) { - int r; + int r = 0; int ref; - if (!is_space(btn_state->data)) { + if (is_pulse(btn_state->data)) { r = 0; - } else if (is_const(&remote)) { - if (remote.gap > btn_state->sum) { - ref = (remote.gap - btn_state->sum); - ref *= (100 - remote.eps); - ref /= 100; + } else if (is_space(btn_state->data)) { + if (is_const(&remote)) { + if (remote.gap > btn_state->sum) { + ref = (remote.gap - btn_state->sum); + ref *= (100 - remote.eps); + ref /= 100; + } else { + ref = 0; + } + r = btn_state->data > ref; } else { - ref = 0; + r = btn_state->data > (remote.gap * (100 - remote.eps)) / 100; } - r = btn_state->data > ref; - } else { - r = btn_state->data > (remote.gap * (100 - remote.eps)) / 100; } return r; } @@ -1970,7 +1983,7 @@ btn_state->data = remote.gap; } if (btn_state->count == 0) { - if (!is_space(btn_state->data) + if (is_pulse(btn_state->data) || btn_state->data < remote.gap - remote.gap * remote.eps / 100) { diff -Nru lirc-0.10.1/lib/lirc/config.h lirc-0.10.2/lib/lirc/config.h --- lirc-0.10.1/lib/lirc/config.h 1970-01-01 00:00:00.000000000 +0000 +++ lirc-0.10.2/lib/lirc/config.h 2022-10-04 08:01:58.000000000 +0000 @@ -0,0 +1,309 @@ +/* config.h. Generated from config.h.in by configure. */ +/* config.h.in. Generated from configure.ac by autoheader. */ + + +#include "paths.h" + + +/* type of argument 3 in getgrouplist() */ +#define GETGROUPS_T gid_t + +/* Define to 1 if `TIOCGWINSZ' requires . */ +#define GWINSZ_IN_SYS_IOCTL 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_ALSA_ASOUNDLIB_H 1 + +/* Define if the ALSA library with SB RC support is installed */ +#define HAVE_ALSA_SB_RC 1 + +/* Define to 1 if you have the `clock_gettime' function. */ +#define HAVE_CLOCK_GETTIME 1 + +/* Define to 1 if you have the `daemon' function. */ +#define HAVE_DAEMON 1 + +/* Define if the Linux input framwework is available */ +/* #undef HAVE_DEVINPUT */ + +/* Define to 1 if you have the header file. */ +#define HAVE_DLFCN_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_FCNTL_H 1 + +/* Define if forkpty is available */ +#define HAVE_FORKPTY 1 + +/* Define if the libftdi library is installed */ +#define HAVE_FTDI 1 + +/* Define to 1 if you have the `gethostname' function. */ +#define HAVE_GETHOSTNAME 1 + +/* Define to 1 if you have the `gettimeofday' function. */ +#define HAVE_GETTIMEOFDAY 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_INTTYPES_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_IOKIT_IOCFPLUGIN_H */ + +/* Define if the ALSA library is installed */ +#define HAVE_LIBALSA 1 + +/* Define if the portaudio library is installed */ +/* #undef HAVE_LIBPORTAUDIO */ + +/* Define to 1 if you have the header file. */ +#define HAVE_LIBUDEV_H 1 + +/* Define if libusb is installed */ +/* #undef HAVE_LIBUSB */ + +/* Define to 1 if you have the header file. */ +#define HAVE_LIBUSB_1_0_LIBUSB_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_LIBUSB_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_LIBUTIL_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_LIMITS_H 1 + +/* defined if Linux input interface is available */ +#define HAVE_LINUX_DEVINPUT 1 + +/* defined if Linux hiddev HIDDEV_FLAG_UREF flag is available */ +#define HAVE_LINUX_HIDDEV_FLAG_UREF 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_LINUX_HIDDEV_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_LINUX_I2C_DEV_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_LINUX_INPUT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_LINUX_IOCTL_H 1 + +/* defined if linux/sched.h is available */ +#define HAVE_LINUX_SCHED_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_LINUX_TYPES_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_MACH_MACH_TIME_H */ + +/* Define to 1 if you have the `mkfifo' function. */ +#define HAVE_MKFIFO 1 + +/* defined if poll() is available and seemingly without bugs */ +#define HAVE_POLL_FINE 1 + +/* defined if poll.h is available */ +#define HAVE_POLL_H 1 + +/* defined if pty.h is available */ +#define HAVE_PTY_H 1 + +/* defined if SCSI API is available */ +#define HAVE_SCSI 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SCSI_SG_H 1 + +/* defined if select(2) is available */ +#define HAVE_SELECT 1 + +/* Define to 1 if you have the `snprintf' function. */ +#define HAVE_SNPRINTF 1 + +/* Define to 1 if you have the `socket' function. */ +#define HAVE_SOCKET 1 + +/* defined if soundcard API is available */ +#define HAVE_SOUNDCARD 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDINT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDIO_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDLIB_H 1 + +/* Define to 1 if you have the `strdup' function. */ +#define HAVE_STRDUP 1 + +/* Define to 1 if you have the `strerror' function. */ +#define HAVE_STRERROR 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRINGS_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRING_H 1 + +/* Define to 1 if you have the `strsep' function. */ +#define HAVE_STRSEP 1 + +/* Define to 1 if you have the `strtoul' function. */ +#define HAVE_STRTOUL 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYSLOG_H 1 + +/* defined if systemd API is available */ +#define HAVE_SYSTEMD 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_IOCTL_H 1 + +/* defined if sys/poll.h is available */ +#define HAVE_SYS_POLL_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_SOUNDCARD_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_STAT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TIME_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TYPES_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_UNISTD_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_USB_H 1 + +/* Define if util.h is installed */ +/* #undef HAVE_UTIL_H */ + +/* Define to 1 if you have the `vsyslog' function. */ +#define HAVE_VSYSLOG 1 + +/* Directory for device locks (usually /var/lock or /var/lock/lockdev) */ +#define LIRC_LOCKDIR "/var/lock/lockdev" + +/* Environment variable overriding options file path */ +#define LIRC_OPTIONS_VAR "LIRC_OPTIONS_PATH" + +/* Define to the sub-directory where libtool stores uninstalled libraries. */ +#define LT_OBJDIR ".libs/" + +/* Name of package */ +#define PACKAGE "lirc" + +/* Define to the address where bug reports for this package should be sent. */ +#define PACKAGE_BUGREPORT "" + +/* Define to the full name of this package. */ +#define PACKAGE_NAME "lirc" + +/* Define to the full name and version of this package. */ +#define PACKAGE_STRING "lirc 0.10.2" + +/* Define to the one symbol short name of this package. */ +#define PACKAGE_TARNAME "lirc" + +/* Define to the home page for this package. */ +#define PACKAGE_URL "" + +/* Define to the version of this package. */ +#define PACKAGE_VERSION "0.10.2" + +/* Path to shell, usually /bin/sh or /usr/bin/sh */ +#define SH_PATH "/usr/bin/sh" + +/* Define to 1 if all of the C90 standard headers exist (not just the ones + required in a freestanding environment). This macro is provided for + backward compatibility; new code need not use it. */ +#define STDC_HEADERS 1 + +/* Define to 1 if you can safely include both and . This + macro is obsolete. */ +#define TIME_WITH_SYS_TIME 1 + +/* Version number of package */ +#define VERSION "0.10.2" + +/* Numeric version, m.v.r => 10000 * m + 100 * v + r */ +#define VERSION_NODOTS 1002 + +/* Define to 1 if the X Window System is missing or not being used. */ +/* #undef X_DISPLAY_MISSING */ + +/* Define for Solaris 2.5.1 so the uint32_t typedef from , + , or is not used. If the typedef were allowed, the + #define below would cause a syntax error. */ +/* #undef _UINT32_T */ + +/* Define for Solaris 2.5.1 so the uint64_t typedef from , + , or is not used. If the typedef were allowed, the + #define below would cause a syntax error. */ +/* #undef _UINT64_T */ + +/* Define for Solaris 2.5.1 so the uint8_t typedef from , + , or is not used. If the typedef were allowed, the + #define below would cause a syntax error. */ +/* #undef _UINT8_T */ + +/* Define to `__inline__' or `__inline' if that's what the C compiler + calls it, or to nothing if 'inline' is not supported under any name. */ +#ifndef __cplusplus +/* #undef inline */ +#endif + +/* Define to the type of a signed integer type of width exactly 16 bits if + such a type exists and the standard includes do not define it. */ +/* #undef int16_t */ + +/* Define to the type of a signed integer type of width exactly 32 bits if + such a type exists and the standard includes do not define it. */ +/* #undef int32_t */ + +/* Define to the type of a signed integer type of width exactly 64 bits if + such a type exists and the standard includes do not define it. */ +/* #undef int64_t */ + +/* Define to the type of a signed integer type of width exactly 8 bits if such + a type exists and the standard includes do not define it. */ +/* #undef int8_t */ + +/* Define as a signed integer type capable of holding a process identifier. */ +/* #undef pid_t */ + +/* Define to `unsigned int' if does not define. */ +/* #undef size_t */ + +/* Define to the type of an unsigned integer type of width exactly 16 bits if + such a type exists and the standard includes do not define it. */ +/* #undef uint16_t */ + +/* Define to the type of an unsigned integer type of width exactly 32 bits if + such a type exists and the standard includes do not define it. */ +/* #undef uint32_t */ + +/* Define to the type of an unsigned integer type of width exactly 64 bits if + such a type exists and the standard includes do not define it. */ +/* #undef uint64_t */ + +/* Define to the type of an unsigned integer type of width exactly 8 bits if + such a type exists and the standard includes do not define it. */ +/* #undef uint8_t */ + + +#include "lirc/lirc_config.h" + diff -Nru lirc-0.10.1/lib/lirc/driver.h lirc-0.10.2/lib/lirc/driver.h --- lirc-0.10.1/lib/lirc/driver.h 2017-09-10 08:52:58.000000000 +0000 +++ lirc-0.10.2/lib/lirc/driver.h 2022-10-04 08:01:58.000000000 +0000 @@ -23,11 +23,7 @@ #include #include -#ifdef HAVE_KERNEL_LIRC_H -#include -#else #include "media/lirc.h" -#endif #include "lirc/ir_remote_types.h" #include "lirc/curl_poll.h" diff -Nru lirc-0.10.1/lib/lirc/drv_enum.h lirc-0.10.2/lib/lirc/drv_enum.h --- lirc-0.10.1/lib/lirc/drv_enum.h 2017-09-10 08:52:58.000000000 +0000 +++ lirc-0.10.2/lib/lirc/drv_enum.h 2022-10-04 08:01:58.000000000 +0000 @@ -18,8 +18,6 @@ * on device, usable in user interfaces. * * Return codes are DRV_ERR_ constants as of driver.h, or 0 for no errors. - * - * @since 0.10.0 */ #include diff -Nru lirc-0.10.1/lib/lirc/ir_remote.h lirc-0.10.2/lib/lirc/ir_remote.h --- lirc-0.10.1/lib/lirc/ir_remote.h 2017-09-10 08:52:58.000000000 +0000 +++ lirc-0.10.2/lib/lirc/ir_remote.h 2022-10-04 08:01:58.000000000 +0000 @@ -110,12 +110,22 @@ static inline int is_pulse(lirc_t data) { - return data & PULSE_BIT ? 1 : 0; + return ((data & LIRC_MODE2_MASK)==LIRC_MODE2_PULSE) ? 1 : 0; } static inline int is_space(lirc_t data) { - return !is_pulse(data); + return ((data & LIRC_MODE2_MASK)==LIRC_MODE2_SPACE) ? 1 : 0; +} + +static inline int is_timeout(lirc_t data) +{ + return ((data & LIRC_MODE2_MASK)==LIRC_MODE2_TIMEOUT) ? 1 : 0; +} + +static inline int is_overflow(lirc_t data) +{ + return ((data & LIRC_MODE2_MASK)==LIRC_MODE2_OVERFLOW) ? 1 : 0; } static inline int has_repeat(const struct ir_remote* remote) @@ -186,14 +196,6 @@ return 1; else return 0; -} - -static inline int is_goldstar(const struct ir_remote* remote) -{ - if ((remote->flags & IR_PROTOCOL_MASK) == GOLDSTAR) - return 1; - else - return 0; } static inline int is_grundig(const struct ir_remote* remote) diff -Nru lirc-0.10.1/lib/lirc/ir_remote_types.h lirc-0.10.2/lib/lirc/ir_remote_types.h --- lirc-0.10.1/lib/lirc/ir_remote_types.h 2017-09-10 08:52:58.000000000 +0000 +++ lirc-0.10.2/lib/lirc/ir_remote_types.h 2022-10-04 08:01:58.000000000 +0000 @@ -34,11 +34,7 @@ #include #endif -#ifdef HAVE_KERNEL_LIRC_H -#include -#else #include "media/lirc.h" -#endif /** * Denotes an internal coded representation for an IR transmission. @@ -112,7 +108,6 @@ #define RCMM 0x0008 /**< IR data follows RC-MM protocol */ #define SPACE_ENC 0x0010 /**< IR data is space encoded */ #define SPACE_FIRST 0x0020 /**< bits are encoded as space+pulse */ -#define GOLDSTAR 0x0040 /**< encoding found on Goldstar remote */ #define GRUNDIG 0x0080 /**< encoding found on Grundig remote */ #define BO 0x0100 /**< encoding found on Bang & Olufsen remote */ #define SERIAL 0x0200 /**< serial protocol */ diff -Nru lirc-0.10.1/lib/lirc/lirc_client.h lirc-0.10.2/lib/lirc/lirc_client.h --- lirc-0.10.1/lib/lirc/lirc_client.h 2017-09-10 08:52:58.000000000 +0000 +++ lirc-0.10.2/lib/lirc/lirc_client.h 2022-10-04 08:01:58.000000000 +0000 @@ -203,6 +203,9 @@ */ int lirc_init(const char* prog, int verbose); +/** Dynamically change the verbose level defined by lirc_init(). */ +void lirc_set_verbose(int verbose); + /** * Release resources allocated by lirc_init(), basically disconnect * from socket. diff -Nru lirc-0.10.1/lib/lirc/lirc_private.h lirc-0.10.2/lib/lirc/lirc_private.h --- lirc-0.10.1/lib/lirc/lirc_private.h 2017-09-10 08:52:58.000000000 +0000 +++ lirc-0.10.2/lib/lirc/lirc_private.h 2022-10-04 08:01:58.000000000 +0000 @@ -13,11 +13,7 @@ #ifndef _LIRC_PRIVATE_H #define _LIRC_PRIVATE_H -#ifdef HAVE_KERNEL_LIRC_H -#include -#else #include "media/lirc.h" -#endif #include "ir_remote_types.h" #include "lirc_log.h" diff -Nru lirc-0.10.1/lib/lirc/release.h lirc-0.10.2/lib/lirc/release.h --- lirc-0.10.1/lib/lirc/release.h 2017-09-10 08:52:58.000000000 +0000 +++ lirc-0.10.2/lib/lirc/release.h 2022-10-04 08:01:58.000000000 +0000 @@ -21,50 +21,24 @@ #include "ir_remote_types.h" /** - * If there is a pending release event, set timer to current time + - * release_gap. - */ -void register_input(void); - -/** - * Set up pending release events for given button, including the - * release_gap. + * Set up pending events for given button, including the + * release_gap. Data is saved to be retrieved using get_release_data(). */ void register_button_press(struct ir_remote* remote, struct ir_ncode* ncode, ir_code code, int reps); + +/** Get data from saved from last call to register_button_press(). */ void get_release_data(const char** remote_name, const char** button_name, int* reps); -void set_release_suffix(const char* s); - -/** Get time for pending release event if it exists, else a noop. */ -void get_release_time(struct timeval* tv); - -const char* check_release_event(const char** remote_name, - const char** button_name); - /** - * If there is a release event pending clears the - * release timer and formats a complete client message. - * - * @param remote name Name of remote for the release message. - * @param button name Name of button for the release message. - * - * @return Pointer to static formatted message + updated remote_name and - * button_name if there is a repeat message pending, else NULL. - * + * Get time for last call to register_button_press() if defined, else a noop. */ -const char* trigger_release_event(const char** remote_name, - const char** button_name); - -const char* release_map_remotes(struct ir_remote* old, - struct ir_remote* new_remote, - const char** remote_name, - const char** button_name); +void get_release_time(struct timeval* tv); #ifdef __cplusplus diff -Nru lirc-0.10.1/lib/lirc_client.c lirc-0.10.2/lib/lirc_client.c --- lirc-0.10.1/lib/lirc_client.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/lib/lirc_client.c 2022-09-25 10:03:38.000000000 +0000 @@ -381,6 +381,8 @@ return r == 0 ? 1 : 0; } +void lirc_set_verbose(int v) { lirc_verbose = v; } + static int lirc_readline(char** line, FILE* f) { diff -Nru lirc-0.10.1/lib/lirc_client.h lirc-0.10.2/lib/lirc_client.h --- lirc-0.10.1/lib/lirc_client.h 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/lib/lirc_client.h 2022-09-25 10:03:38.000000000 +0000 @@ -203,6 +203,9 @@ */ int lirc_init(const char* prog, int verbose); +/** Dynamically change the verbose level defined by lirc_init(). */ +void lirc_set_verbose(int verbose); + /** * Release resources allocated by lirc_init(), basically disconnect * from socket. diff -Nru lirc-0.10.1/lib/lirc_log.c lirc-0.10.2/lib/lirc_log.c --- lirc-0.10.1/lib/lirc_log.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/lib/lirc_log.c 2022-09-25 10:03:38.000000000 +0000 @@ -102,9 +102,9 @@ if (use_syslog) { if (nodaemon) - openlog(syslogident, LOG_CONS | LOG_PID | LOG_PERROR, LOG_LOCAL0); + openlog(syslogident, LOG_PID | LOG_PERROR, LOG_LOCAL0); else - openlog(syslogident, LOG_CONS | LOG_PID, LOG_LOCAL0); + openlog(syslogident, LOG_PID, LOG_LOCAL0); } else { lf = fopen(logfile, "a"); if (lf == NULL) { diff -Nru lirc-0.10.1/lib/lirc_private.h lirc-0.10.2/lib/lirc_private.h --- lirc-0.10.1/lib/lirc_private.h 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/lib/lirc_private.h 2022-10-03 13:02:47.000000000 +0000 @@ -13,11 +13,7 @@ #ifndef _LIRC_PRIVATE_H #define _LIRC_PRIVATE_H -#ifdef HAVE_KERNEL_LIRC_H -#include -#else #include "media/lirc.h" -#endif #include "ir_remote_types.h" #include "lirc_log.h" diff -Nru lirc-0.10.1/lib/receive.c lirc-0.10.2/lib/receive.c --- lirc-0.10.1/lib/receive.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/lib/receive.c 2022-09-25 10:03:38.000000000 +0000 @@ -23,11 +23,7 @@ #include #include -#ifdef HAVE_KERNEL_LIRC_H -#include -#else #include "media/lirc.h" -#endif #include "lirc/driver.h" #include "lirc/lirc_log.h" @@ -970,18 +966,6 @@ for (i = 0; i < bits; i++) { code = code << 1; - if (is_goldstar(remote)) { - if ((done + i) % 2) { - log_trace1("$1"); - remote->pone = remote->ptwo; - remote->sone = remote->stwo; - } else { - log_trace1("$2"); - remote->pone = remote->pthree; - remote->sone = remote->sthree; - } - } - if (expectone(remote, done + i)) { log_trace1("1"); code |= 1; diff -Nru lirc-0.10.1/lib/release.c lirc-0.10.2/lib/release.c --- lirc-0.10.1/lib/release.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/lib/release.c 2022-09-25 10:03:38.000000000 +0000 @@ -22,11 +22,7 @@ #include #include -#ifdef HAVE_KERNEL_LIRC_H -#include -#else #include "media/lirc.h" -#endif #include "lirc/release.h" #include "lirc/receive.h" @@ -44,10 +40,8 @@ static struct ir_remote* release_remote2; static struct ir_ncode* release_ncode2; static ir_code release_code2; -static const char* release_suffix = LIRC_RELEASE_SUFFIX; -static char message[PACKET_SIZE + 1]; -void register_input(void) +static void register_input(void) { struct timeval gap; @@ -101,100 +95,8 @@ } } -void set_release_suffix(const char* s) -{ - release_suffix = s; -} void get_release_time(struct timeval* tv) { *tv = release_time; } - -const char* check_release_event(const char** remote_name, - const char** button_name) -{ - int len = 0; - - if (release_remote2 != NULL) { - *remote_name = release_remote2->name; - *button_name = release_ncode2->name; - len = write_message(message, - PACKET_SIZE + 1, - release_remote2->name, - release_ncode2->name, - release_suffix, - release_code2, - 0); - release_remote2 = NULL; - release_ncode2 = NULL; - release_code2 = 0; - - if (len >= PACKET_SIZE + 1) { - log_error("message buffer overflow"); - return NULL; - } - - log_trace2("check"); - return message; - } - return NULL; -} - -const char* trigger_release_event(const char** remote_name, - const char** button_name) -{ - int len = 0; - - if (release_remote != NULL) { - release_remote->release_detected = 1; - *remote_name = release_remote->name; - *button_name = release_ncode->name; - len = write_message(message, - PACKET_SIZE + 1, - release_remote->name, - release_ncode->name, - release_suffix, - release_code, - 0); - timerclear(&release_time); - release_remote = NULL; - release_ncode = NULL; - release_code = 0; - - if (len >= PACKET_SIZE + 1) { - log_error("message buffer overflow"); - return NULL; - } - log_trace2("trigger"); - return message; - } - return NULL; -} - -const char* release_map_remotes(struct ir_remote* old, - struct ir_remote* new, - const char** remote_name, - const char** button_name) -{ - struct ir_remote* remote; - struct ir_ncode* ncode = NULL; - - if (release_remote2 != NULL) { - /* should not happen */ - log_error("release_remote2 still in use"); - release_remote2 = NULL; - } - if (release_remote && is_in_remotes(old, release_remote)) { - remote = get_ir_remote(new, release_remote->name); - if (remote) - ncode = get_code_by_name(remote, release_ncode->name); - if (remote && ncode) { - release_remote = remote; - release_ncode = ncode; - } else { - return trigger_release_event(remote_name, button_name); - } - } - return NULL; -} diff -Nru lirc-0.10.1/lib/release.h lirc-0.10.2/lib/release.h --- lirc-0.10.1/lib/release.h 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/lib/release.h 2022-09-25 10:03:38.000000000 +0000 @@ -21,50 +21,24 @@ #include "ir_remote_types.h" /** - * If there is a pending release event, set timer to current time + - * release_gap. - */ -void register_input(void); - -/** - * Set up pending release events for given button, including the - * release_gap. + * Set up pending events for given button, including the + * release_gap. Data is saved to be retrieved using get_release_data(). */ void register_button_press(struct ir_remote* remote, struct ir_ncode* ncode, ir_code code, int reps); + +/** Get data from saved from last call to register_button_press(). */ void get_release_data(const char** remote_name, const char** button_name, int* reps); -void set_release_suffix(const char* s); - -/** Get time for pending release event if it exists, else a noop. */ -void get_release_time(struct timeval* tv); - -const char* check_release_event(const char** remote_name, - const char** button_name); - /** - * If there is a release event pending clears the - * release timer and formats a complete client message. - * - * @param remote name Name of remote for the release message. - * @param button name Name of button for the release message. - * - * @return Pointer to static formatted message + updated remote_name and - * button_name if there is a repeat message pending, else NULL. - * + * Get time for last call to register_button_press() if defined, else a noop. */ -const char* trigger_release_event(const char** remote_name, - const char** button_name); - -const char* release_map_remotes(struct ir_remote* old, - struct ir_remote* new_remote, - const char** remote_name, - const char** button_name); +void get_release_time(struct timeval* tv); #ifdef __cplusplus diff -Nru lirc-0.10.1/lib/transmit.c lirc-0.10.2/lib/transmit.c --- lirc-0.10.1/lib/transmit.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/lib/transmit.c 2022-09-25 10:03:38.000000000 +0000 @@ -22,11 +22,7 @@ * signals and send the signal chain at a single blow */ #define LIRCD_EXACT_GAP_THRESHOLD 10000 -#ifdef HAVE_KERNEL_LIRC_H -#include -#else #include "media/lirc.h" -#endif #include "lirc/lirc_log.h" #include "lirc/transmit.h" @@ -390,7 +386,7 @@ { int i, repeat = repeat_preset; - if (is_grundig(remote) || is_goldstar(remote) || is_serial(remote) || is_bo(remote)) { + if (is_grundig(remote) || is_serial(remote) || is_bo(remote)) { if (!sim) log_error("sorry, can't send this protocol yet"); return 0; diff -Nru lirc-0.10.1/lirc-driver.pc lirc-0.10.2/lirc-driver.pc --- lirc-0.10.1/lirc-driver.pc 2017-09-10 08:52:56.000000000 +0000 +++ lirc-0.10.2/lirc-driver.pc 2022-10-04 08:03:33.000000000 +0000 @@ -1,6 +1,6 @@ Name: lirc Description: LIRC Linux Infrared Control userspace driver lib. -Version: 0.10.1 +Version: 0.10.2 PACKAGE_TARNAME=lirc prefix=/usr/local diff -Nru lirc-0.10.1/lirc.pc lirc-0.10.2/lirc.pc --- lirc-0.10.1/lirc.pc 2017-09-10 08:52:56.000000000 +0000 +++ lirc-0.10.2/lirc.pc 2022-10-04 08:03:33.000000000 +0000 @@ -1,6 +1,6 @@ Name: lirc Description: LIRC Linux Infrared Control client libs. -Version: 0.10.1 +Version: 0.10.2 prefix=/usr/local datarootdir=${prefix}/share diff -Nru lirc-0.10.1/ltmain.sh lirc-0.10.2/ltmain.sh --- lirc-0.10.1/ltmain.sh 2017-09-10 08:52:31.000000000 +0000 +++ lirc-0.10.2/ltmain.sh 2022-10-04 08:02:27.000000000 +0000 @@ -1,12 +1,12 @@ -#! /bin/sh +#! /usr/bin/env sh ## DO NOT EDIT - This file generated from ./build-aux/ltmain.in -## by inline-source v2014-01-03.01 +## by inline-source v2019-02-19.15 -# libtool (GNU libtool) 2.4.6 +# libtool (GNU libtool) 2.4.7 # Provide generalized library-building support services. # Written by Gordon Matzigkeit , 1996 -# Copyright (C) 1996-2015 Free Software Foundation, Inc. +# Copyright (C) 1996-2019, 2021-2022 Free Software Foundation, Inc. # This is free software; see the source for copying conditions. There is NO # warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. @@ -31,8 +31,8 @@ PROGRAM=libtool PACKAGE=libtool -VERSION=2.4.6 -package_revision=2.4.6 +VERSION=2.4.7 +package_revision=2.4.7 ## ------ ## @@ -64,34 +64,25 @@ # libraries, which are installed to $pkgauxdir. # Set a version string for this script. -scriptversion=2015-01-20.17; # UTC +scriptversion=2019-02-19.15; # UTC # General shell script boiler plate, and helper functions. # Written by Gary V. Vaughan, 2004 -# Copyright (C) 2004-2015 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. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or -# (at your option) any later version. - -# As a special exception to the GNU General Public License, if you distribute -# this file as part of a program or library that is built using GNU Libtool, -# you may include this file under the same distribution terms that you use -# for the rest of that program. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNES FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . +# This is free software. There is NO warranty; not even for +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +# +# Copyright (C) 2004-2019, 2021 Bootstrap Authors +# +# This file is dual licensed under the terms of the MIT license +# , and GPL version 2 or later +# . You must apply one of +# these licenses when using or redistributing this software or any of +# the files within it. See the URLs above, or the file `LICENSE` +# included in the Bootstrap distribution for the full license texts. -# Please report bugs or propose patches to gary@gnu.org. +# Please report bugs or propose patches to: +# ## ------ ## @@ -139,9 +130,12 @@ _G_safe_locale=\"$_G_var=C; \$_G_safe_locale\" fi" done - -# CDPATH. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH +# These NLS vars are set unconditionally (bootstrap issue #24). Unset those +# in case the environment reset is needed later and the $save_* variant is not +# defined (see the code above). +LC_ALL=C +LANGUAGE=C +export LANGUAGE LC_ALL # Make sure IFS has a sensible default sp=' ' @@ -159,6 +153,26 @@ fi +# func_unset VAR +# -------------- +# Portably unset VAR. +# In some shells, an 'unset VAR' statement leaves a non-zero return +# status if VAR is already unset, which might be problematic if the +# statement is used at the end of a function (thus poisoning its return +# value) or when 'set -e' is active (causing even a spurious abort of +# the script in this case). +func_unset () +{ + { eval $1=; (eval unset $1) >/dev/null 2>&1 && eval unset $1 || : ; } +} + + +# Make sure CDPATH doesn't cause `cd` commands to output the target dir. +func_unset CDPATH + +# Make sure ${,E,F}GREP behave sanely. +func_unset GREP_OPTIONS + ## ------------------------- ## ## Locate command utilities. ## @@ -259,7 +273,7 @@ rm -f conftest.in conftest.tmp conftest.nl conftest.out } - func_path_progs "sed gsed" func_check_prog_sed $PATH:/usr/xpg4/bin + func_path_progs "sed gsed" func_check_prog_sed "$PATH:/usr/xpg4/bin" rm -f conftest.sed SED=$func_path_progs_result } @@ -295,7 +309,7 @@ rm -f conftest.in conftest.tmp conftest.nl conftest.out } - func_path_progs "grep ggrep" func_check_prog_grep $PATH:/usr/xpg4/bin + func_path_progs "grep ggrep" func_check_prog_grep "$PATH:/usr/xpg4/bin" GREP=$func_path_progs_result } @@ -360,6 +374,35 @@ s/\\([^$_G_bs]\\)$_G_bs2$_G_dollar/\\1$_G_bs2$_G_bs$_G_dollar/g s/\n//g" +# require_check_ifs_backslash +# --------------------------- +# Check if we can use backslash as IFS='\' separator, and set +# $check_ifs_backshlash_broken to ':' or 'false'. +require_check_ifs_backslash=func_require_check_ifs_backslash +func_require_check_ifs_backslash () +{ + _G_save_IFS=$IFS + IFS='\' + _G_check_ifs_backshlash='a\\b' + for _G_i in $_G_check_ifs_backshlash + do + case $_G_i in + a) + check_ifs_backshlash_broken=false + ;; + '') + break + ;; + *) + check_ifs_backshlash_broken=: + break + ;; + esac + done + IFS=$_G_save_IFS + require_check_ifs_backslash=: +} + ## ----------------- ## ## Global variables. ## @@ -580,16 +623,16 @@ { $debug_cmd - func_quote_for_eval "$2" - eval "$1+=\\ \$func_quote_for_eval_result" + func_quote_arg pretty "$2" + eval "$1+=\\ \$func_quote_arg_result" }' else func_append_quoted () { $debug_cmd - func_quote_for_eval "$2" - eval "$1=\$$1\\ \$func_quote_for_eval_result" + func_quote_arg pretty "$2" + eval "$1=\$$1\\ \$func_quote_arg_result" } fi @@ -1091,85 +1134,203 @@ } -# func_quote_for_eval ARG... -# -------------------------- -# Aesthetically quote ARGs to be evaled later. -# This function returns two values: -# i) func_quote_for_eval_result -# double-quoted, suitable for a subsequent eval -# ii) func_quote_for_eval_unquoted_result -# has all characters that are still active within double -# quotes backslashified. -func_quote_for_eval () +# func_quote_portable EVAL ARG +# ---------------------------- +# Internal function to portably implement func_quote_arg. Note that we still +# keep attention to performance here so we as much as possible try to avoid +# calling sed binary (so far O(N) complexity as long as func_append is O(1)). +func_quote_portable () { $debug_cmd - func_quote_for_eval_unquoted_result= - func_quote_for_eval_result= - while test 0 -lt $#; do - case $1 in - *[\\\`\"\$]*) - _G_unquoted_arg=`printf '%s\n' "$1" |$SED "$sed_quote_subst"` ;; - *) - _G_unquoted_arg=$1 ;; - esac - if test -n "$func_quote_for_eval_unquoted_result"; then - func_append func_quote_for_eval_unquoted_result " $_G_unquoted_arg" - else - func_append func_quote_for_eval_unquoted_result "$_G_unquoted_arg" + $require_check_ifs_backslash + + func_quote_portable_result=$2 + + # one-time-loop (easy break) + while true + do + if $1; then + func_quote_portable_result=`$ECHO "$2" | $SED \ + -e "$sed_double_quote_subst" -e "$sed_double_backslash"` + break fi - case $_G_unquoted_arg in - # Double-quote args containing shell metacharacters to delay - # word splitting, command substitution and variable expansion - # for a subsequent eval. - # Many Bourne shells cannot handle close brackets correctly - # in scan sets, so we specify it separately. - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - _G_quoted_arg=\"$_G_unquoted_arg\" + # Quote for eval. + case $func_quote_portable_result in + *[\\\`\"\$]*) + # Fallback to sed for $func_check_bs_ifs_broken=:, or when the string + # contains the shell wildcard characters. + case $check_ifs_backshlash_broken$func_quote_portable_result in + :*|*[\[\*\?]*) + func_quote_portable_result=`$ECHO "$func_quote_portable_result" \ + | $SED "$sed_quote_subst"` + break + ;; + esac + + func_quote_portable_old_IFS=$IFS + for _G_char in '\' '`' '"' '$' + do + # STATE($1) PREV($2) SEPARATOR($3) + set start "" "" + func_quote_portable_result=dummy"$_G_char$func_quote_portable_result$_G_char"dummy + IFS=$_G_char + for _G_part in $func_quote_portable_result + do + case $1 in + quote) + func_append func_quote_portable_result "$3$2" + set quote "$_G_part" "\\$_G_char" + ;; + start) + set first "" "" + func_quote_portable_result= + ;; + first) + set quote "$_G_part" "" + ;; + esac + done + done + IFS=$func_quote_portable_old_IFS ;; - *) - _G_quoted_arg=$_G_unquoted_arg - ;; + *) ;; esac - - if test -n "$func_quote_for_eval_result"; then - func_append func_quote_for_eval_result " $_G_quoted_arg" - else - func_append func_quote_for_eval_result "$_G_quoted_arg" - fi - shift + break done + + func_quote_portable_unquoted_result=$func_quote_portable_result + case $func_quote_portable_result in + # double-quote args containing shell metacharacters to delay + # word splitting, command substitution and variable expansion + # for a subsequent eval. + # many bourne shells cannot handle close brackets correctly + # in scan sets, so we specify it separately. + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + func_quote_portable_result=\"$func_quote_portable_result\" + ;; + esac } -# func_quote_for_expand ARG -# ------------------------- -# Aesthetically quote ARG to be evaled later; same as above, -# but do not quote variable references. -func_quote_for_expand () -{ - $debug_cmd +# func_quotefast_eval ARG +# ----------------------- +# Quote one ARG (internal). This is equivalent to 'func_quote_arg eval ARG', +# but optimized for speed. Result is stored in $func_quotefast_eval. +if test xyes = `(x=; printf -v x %q yes; echo x"$x") 2>/dev/null`; then + printf -v _GL_test_printf_tilde %q '~' + if test '\~' = "$_GL_test_printf_tilde"; then + func_quotefast_eval () + { + printf -v func_quotefast_eval_result %q "$1" + } + else + # Broken older Bash implementations. Make those faster too if possible. + func_quotefast_eval () + { + case $1 in + '~'*) + func_quote_portable false "$1" + func_quotefast_eval_result=$func_quote_portable_result + ;; + *) + printf -v func_quotefast_eval_result %q "$1" + ;; + esac + } + fi +else + func_quotefast_eval () + { + func_quote_portable false "$1" + func_quotefast_eval_result=$func_quote_portable_result + } +fi - case $1 in - *[\\\`\"]*) - _G_arg=`$ECHO "$1" | $SED \ - -e "$sed_double_quote_subst" -e "$sed_double_backslash"` ;; - *) - _G_arg=$1 ;; + +# func_quote_arg MODEs ARG +# ------------------------ +# Quote one ARG to be evaled later. MODEs argument may contain zero or more +# specifiers listed below separated by ',' character. This function returns two +# values: +# i) func_quote_arg_result +# double-quoted (when needed), suitable for a subsequent eval +# ii) func_quote_arg_unquoted_result +# has all characters that are still active within double +# quotes backslashified. Available only if 'unquoted' is specified. +# +# Available modes: +# ---------------- +# 'eval' (default) +# - escape shell special characters +# 'expand' +# - the same as 'eval'; but do not quote variable references +# 'pretty' +# - request aesthetic output, i.e. '"a b"' instead of 'a\ b'. This might +# be used later in func_quote to get output like: 'echo "a b"' instead +# of 'echo a\ b'. This is slower than default on some shells. +# 'unquoted' +# - produce also $func_quote_arg_unquoted_result which does not contain +# wrapping double-quotes. +# +# Examples for 'func_quote_arg pretty,unquoted string': +# +# string | *_result | *_unquoted_result +# ------------+-----------------------+------------------- +# " | \" | \" +# a b | "a b" | a b +# "a b" | "\"a b\"" | \"a b\" +# * | "*" | * +# z="${x-$y}" | "z=\"\${x-\$y}\"" | z=\"\${x-\$y}\" +# +# Examples for 'func_quote_arg pretty,unquoted,expand string': +# +# string | *_result | *_unquoted_result +# --------------+---------------------+-------------------- +# z="${x-$y}" | "z=\"${x-$y}\"" | z=\"${x-$y}\" +func_quote_arg () +{ + _G_quote_expand=false + case ,$1, in + *,expand,*) + _G_quote_expand=: + ;; esac - case $_G_arg in - # Double-quote args containing shell metacharacters to delay - # word splitting and command substitution for a subsequent eval. - # Many Bourne shells cannot handle close brackets correctly - # in scan sets, so we specify it separately. - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - _G_arg=\"$_G_arg\" + case ,$1, in + *,pretty,*|*,expand,*|*,unquoted,*) + func_quote_portable $_G_quote_expand "$2" + func_quote_arg_result=$func_quote_portable_result + func_quote_arg_unquoted_result=$func_quote_portable_unquoted_result + ;; + *) + # Faster quote-for-eval for some shells. + func_quotefast_eval "$2" + func_quote_arg_result=$func_quotefast_eval_result ;; esac +} + - func_quote_for_expand_result=$_G_arg +# func_quote MODEs ARGs... +# ------------------------ +# Quote all ARGs to be evaled later and join them into single command. See +# func_quote_arg's description for more info. +func_quote () +{ + $debug_cmd + _G_func_quote_mode=$1 ; shift + func_quote_result= + while test 0 -lt $#; do + func_quote_arg "$_G_func_quote_mode" "$1" + if test -n "$func_quote_result"; then + func_append func_quote_result " $func_quote_arg_result" + else + func_append func_quote_result "$func_quote_arg_result" + fi + shift + done } @@ -1215,8 +1376,8 @@ _G_cmd=$1 _G_fail_exp=${2-':'} - func_quote_for_expand "$_G_cmd" - eval "func_notquiet $func_quote_for_expand_result" + func_quote_arg pretty,expand "$_G_cmd" + eval "func_notquiet $func_quote_arg_result" $opt_dry_run || { eval "$_G_cmd" @@ -1241,8 +1402,8 @@ _G_fail_exp=${2-':'} $opt_quiet || { - func_quote_for_expand "$_G_cmd" - eval "func_echo $func_quote_for_expand_result" + func_quote_arg expand,pretty "$_G_cmd" + eval "func_echo $func_quote_arg_result" } $opt_dry_run || { @@ -1369,30 +1530,26 @@ # End: #! /bin/sh -# Set a version string for this script. -scriptversion=2014-01-07.03; # UTC - # A portable, pluggable option parser for Bourne shell. # Written by Gary V. Vaughan, 2010 -# Copyright (C) 2010-2015 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. - -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# This is free software. There is NO warranty; not even for +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +# +# Copyright (C) 2010-2019, 2021 Bootstrap Authors +# +# This file is dual licensed under the terms of the MIT license +# , and GPL version 2 or later +# . You must apply one of +# these licenses when using or redistributing this software or any of +# the files within it. See the URLs above, or the file `LICENSE` +# included in the Bootstrap distribution for the full license texts. -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . +# Please report bugs or propose patches to: +# -# Please report bugs or propose patches to gary@gnu.org. +# Set a version string for this script. +scriptversion=2019-02-19.15; # UTC ## ------ ## @@ -1415,7 +1572,7 @@ # # In order for the '--version' option to work, you will need to have a # suitably formatted comment like the one at the top of this file -# starting with '# Written by ' and ending with '# warranty; '. +# starting with '# Written by ' and ending with '# Copyright'. # # For '-h' and '--help' to work, you will also need a one line # description of your script's purpose in a comment directly above the @@ -1427,7 +1584,7 @@ # to display verbose messages only when your user has specified # '--verbose'. # -# After sourcing this file, you can plug processing for additional +# After sourcing this file, you can plug in processing for additional # options by amending the variables from the 'Configuration' section # below, and following the instructions in the 'Option parsing' # section further down. @@ -1476,8 +1633,8 @@ ## ------------------------- ## # This section contains functions for adding, removing, and running hooks -# to the main code. A hook is just a named list of of function, that can -# be run in order later on. +# in the main code. A hook is just a list of function names that can be +# run in order later on. # func_hookable FUNC_NAME # ----------------------- @@ -1510,7 +1667,8 @@ # func_remove_hook FUNC_NAME HOOK_FUNC # ------------------------------------ -# Remove HOOK_FUNC from the list of functions called by FUNC_NAME. +# Remove HOOK_FUNC from the list of hook functions to be called by +# FUNC_NAME. func_remove_hook () { $debug_cmd @@ -1519,10 +1677,28 @@ } +# func_propagate_result FUNC_NAME_A FUNC_NAME_B +# --------------------------------------------- +# If the *_result variable of FUNC_NAME_A _is set_, assign its value to +# *_result variable of FUNC_NAME_B. +func_propagate_result () +{ + $debug_cmd + + func_propagate_result_result=: + if eval "test \"\${${1}_result+set}\" = set" + then + eval "${2}_result=\$${1}_result" + else + func_propagate_result_result=false + fi +} + + # func_run_hooks FUNC_NAME [ARG]... # --------------------------------- # Run all hook functions registered to FUNC_NAME. -# It is assumed that the list of hook functions contains nothing more +# It's assumed that the list of hook functions contains nothing more # than a whitespace-delimited list of legal shell function names, and # no effort is wasted trying to catch shell meta-characters or preserve # whitespace. @@ -1532,22 +1708,19 @@ case " $hookable_fns " in *" $1 "*) ;; - *) func_fatal_error "'$1' does not support hook funcions.n" ;; + *) func_fatal_error "'$1' does not support hook functions." ;; esac eval _G_hook_fns=\$$1_hooks; shift for _G_hook in $_G_hook_fns; do - eval $_G_hook '"$@"' - - # store returned options list back into positional - # parameters for next 'cmd' execution. - eval _G_hook_result=\$${_G_hook}_result - eval set dummy "$_G_hook_result"; shift + func_unset "${_G_hook}_result" + eval $_G_hook '${1+"$@"}' + func_propagate_result $_G_hook func_run_hooks + if $func_propagate_result_result; then + eval set dummy "$func_run_hooks_result"; shift + fi done - - func_quote_for_eval ${1+"$@"} - func_run_hooks_result=$func_quote_for_eval_result } @@ -1557,10 +1730,18 @@ ## --------------- ## # In order to add your own option parsing hooks, you must accept the -# full positional parameter list in your hook function, remove any -# options that you action, and then pass back the remaining unprocessed -# options in '_result', escaped suitably for -# 'eval'. Like this: +# full positional parameter list from your hook function. You may remove +# or edit any options that you action, and then pass back the remaining +# unprocessed options in '_result', escaped +# suitably for 'eval'. +# +# The '_result' variable is automatically unset +# before your hook gets called; for best performance, only set the +# *_result variable when necessary (i.e. don't call the 'func_quote' +# function unnecessarily because it can be an expensive operation on some +# machines). +# +# Like this: # # my_options_prep () # { @@ -1570,9 +1751,8 @@ # usage_message=$usage_message' # -s, --silent don'\''t print informational messages # ' -# -# func_quote_for_eval ${1+"$@"} -# my_options_prep_result=$func_quote_for_eval_result +# # No change in '$@' (ignored completely by this hook). Leave +# # my_options_prep_result variable intact. # } # func_add_hook func_options_prep my_options_prep # @@ -1581,25 +1761,36 @@ # { # $debug_cmd # -# # Note that for efficiency, we parse as many options as we can +# args_changed=false +# +# # Note that, for efficiency, we parse as many options as we can # # recognise in a loop before passing the remainder back to the # # caller on the first unrecognised argument we encounter. # while test $# -gt 0; do # opt=$1; shift # case $opt in -# --silent|-s) opt_silent=: ;; +# --silent|-s) opt_silent=: +# args_changed=: +# ;; # # Separate non-argument short options: # -s*) func_split_short_opt "$_G_opt" # set dummy "$func_split_short_opt_name" \ # "-$func_split_short_opt_arg" ${1+"$@"} # shift +# args_changed=: # ;; -# *) set dummy "$_G_opt" "$*"; shift; break ;; +# *) # Make sure the first unrecognised option "$_G_opt" +# # is added back to "$@" in case we need it later, +# # if $args_changed was set to 'true'. +# set dummy "$_G_opt" ${1+"$@"}; shift; break ;; # esac # done # -# func_quote_for_eval ${1+"$@"} -# my_silent_option_result=$func_quote_for_eval_result +# # Only call 'func_quote' here if we processed at least one argument. +# if $args_changed; then +# func_quote eval ${1+"$@"} +# my_silent_option_result=$func_quote_result +# fi # } # func_add_hook func_parse_options my_silent_option # @@ -1610,17 +1801,26 @@ # # $opt_silent && $opt_verbose && func_fatal_help "\ # '--silent' and '--verbose' options are mutually exclusive." -# -# func_quote_for_eval ${1+"$@"} -# my_option_validation_result=$func_quote_for_eval_result # } # func_add_hook func_validate_options my_option_validation # -# You'll alse need to manually amend $usage_message to reflect the extra +# You'll also need to manually amend $usage_message to reflect the extra # options you parse. It's preferable to append if you can, so that # multiple option parsing hooks can be added safely. +# func_options_finish [ARG]... +# ---------------------------- +# Finishing the option parse loop (call 'func_options' hooks ATM). +func_options_finish () +{ + $debug_cmd + + func_run_hooks func_options ${1+"$@"} + func_propagate_result func_run_hooks func_options_finish +} + + # func_options [ARG]... # --------------------- # All the functions called inside func_options are hookable. See the @@ -1630,17 +1830,27 @@ { $debug_cmd - func_options_prep ${1+"$@"} - eval func_parse_options \ - ${func_options_prep_result+"$func_options_prep_result"} - eval func_validate_options \ - ${func_parse_options_result+"$func_parse_options_result"} + _G_options_quoted=false - eval func_run_hooks func_options \ - ${func_validate_options_result+"$func_validate_options_result"} + for my_func in options_prep parse_options validate_options options_finish + do + func_unset func_${my_func}_result + func_unset func_run_hooks_result + eval func_$my_func '${1+"$@"}' + func_propagate_result func_$my_func func_options + if $func_propagate_result_result; then + eval set dummy "$func_options_result"; shift + _G_options_quoted=: + fi + done - # save modified positional parameters for caller - func_options_result=$func_run_hooks_result + $_G_options_quoted || { + # As we (func_options) are top-level options-parser function and + # nobody quoted "$@" for us yet, we need to do it explicitly for + # caller. + func_quote eval ${1+"$@"} + func_options_result=$func_quote_result + } } @@ -1649,9 +1859,8 @@ # All initialisations required before starting the option parse loop. # Note that when calling hook functions, we pass through the list of # positional parameters. If a hook function modifies that list, and -# needs to propogate that back to rest of this script, then the complete -# modified list must be put in 'func_run_hooks_result' before -# returning. +# needs to propagate that back to rest of this script, then the complete +# modified list must be put in 'func_run_hooks_result' before returning. func_hookable func_options_prep func_options_prep () { @@ -1662,9 +1871,7 @@ opt_warning_types= func_run_hooks func_options_prep ${1+"$@"} - - # save modified positional parameters for caller - func_options_prep_result=$func_run_hooks_result + func_propagate_result func_run_hooks func_options_prep } @@ -1676,25 +1883,32 @@ { $debug_cmd - func_parse_options_result= - + _G_parse_options_requote=false # this just eases exit handling while test $# -gt 0; do # Defer to hook functions for initial option parsing, so they # get priority in the event of reusing an option name. func_run_hooks func_parse_options ${1+"$@"} - - # Adjust func_parse_options positional parameters to match - eval set dummy "$func_run_hooks_result"; shift + func_propagate_result func_run_hooks func_parse_options + if $func_propagate_result_result; then + eval set dummy "$func_parse_options_result"; shift + # Even though we may have changed "$@", we passed the "$@" array + # down into the hook and it quoted it for us (because we are in + # this if-branch). No need to quote it again. + _G_parse_options_requote=false + fi # Break out of the loop if we already parsed every option. test $# -gt 0 || break + # We expect that one of the options parsed in this function matches + # and thus we remove _G_opt from "$@" and need to re-quote. + _G_match_parse_options=: _G_opt=$1 shift case $_G_opt in --debug|-x) debug_cmd='set -x' - func_echo "enabling shell trace mode" + func_echo "enabling shell trace mode" >&2 $debug_cmd ;; @@ -1704,7 +1918,10 @@ ;; --warnings|--warning|-W) - test $# = 0 && func_missing_arg $_G_opt && break + if test $# = 0 && func_missing_arg $_G_opt; then + _G_parse_options_requote=: + break + fi case " $warning_categories $1" in *" $1 "*) # trailing space prevents matching last $1 above @@ -1757,15 +1974,24 @@ shift ;; - --) break ;; + --) _G_parse_options_requote=: ; break ;; -*) func_fatal_help "unrecognised option: '$_G_opt'" ;; - *) set dummy "$_G_opt" ${1+"$@"}; shift; break ;; + *) set dummy "$_G_opt" ${1+"$@"}; shift + _G_match_parse_options=false + break + ;; esac + + if $_G_match_parse_options; then + _G_parse_options_requote=: + fi done - # save modified positional parameters for caller - func_quote_for_eval ${1+"$@"} - func_parse_options_result=$func_quote_for_eval_result + if $_G_parse_options_requote; then + # save modified positional parameters for caller + func_quote eval ${1+"$@"} + func_parse_options_result=$func_quote_result + fi } @@ -1782,12 +2008,10 @@ test -n "$opt_warning_types" || opt_warning_types=" $warning_categories" func_run_hooks func_validate_options ${1+"$@"} + func_propagate_result func_run_hooks func_validate_options # Bail if the options were screwed! $exit_cmd $EXIT_FAILURE - - # save modified positional parameters for caller - func_validate_options_result=$func_run_hooks_result } @@ -1843,8 +2067,8 @@ # func_split_equals STRING # ------------------------ -# Set func_split_equals_lhs and func_split_equals_rhs shell variables after -# splitting STRING at the '=' sign. +# Set func_split_equals_lhs and func_split_equals_rhs shell variables +# after splitting STRING at the '=' sign. test -z "$_G_HAVE_XSI_OPS" \ && (eval 'x=a/b/c; test 5aa/bb/cc = "${#x}${x%%/*}${x%/*}${x#*/}${x##*/}"') 2>/dev/null \ @@ -1859,8 +2083,9 @@ func_split_equals_lhs=${1%%=*} func_split_equals_rhs=${1#*=} - test "x$func_split_equals_lhs" = "x$1" \ - && func_split_equals_rhs= + if test "x$func_split_equals_lhs" = "x$1"; then + func_split_equals_rhs= + fi }' else # ...otherwise fall back to using expr, which is often a shell builtin. @@ -1870,7 +2095,7 @@ func_split_equals_lhs=`expr "x$1" : 'x\([^=]*\)'` func_split_equals_rhs= - test "x$func_split_equals_lhs" = "x$1" \ + test "x$func_split_equals_lhs=" = "x$1" \ || func_split_equals_rhs=`expr "x$1" : 'x[^=]*=\(.*\)$'` } fi #func_split_equals @@ -1896,7 +2121,7 @@ { $debug_cmd - func_split_short_opt_name=`expr "x$1" : 'x-\(.\)'` + func_split_short_opt_name=`expr "x$1" : 'x\(-.\)'` func_split_short_opt_arg=`expr "x$1" : 'x-.\(.*\)$'` } fi #func_split_short_opt @@ -1938,31 +2163,44 @@ # func_version # ------------ # Echo version message to standard output and exit. +# The version message is extracted from the calling file's header +# comments, with leading '# ' stripped: +# 1. First display the progname and version +# 2. Followed by the header comment line matching /^# Written by / +# 3. Then a blank line followed by the first following line matching +# /^# Copyright / +# 4. Immediately followed by any lines between the previous matches, +# except lines preceding the intervening completely blank line. +# For example, see the header comments of this file. func_version () { $debug_cmd printf '%s\n' "$progname $scriptversion" $SED -n ' - /(C)/!b go - :more - /\./!{ - N - s|\n# | | - b more - } - :go - /^# Written by /,/# warranty; / { - s|^# || - s|^# *$|| - s|\((C)\)[ 0-9,-]*[ ,-]\([1-9][0-9]* \)|\1 \2| - p + /^# Written by /!b + s|^# ||; p; n + + :fwd2blnk + /./ { + n + b fwd2blnk } - /^# Written by / { - s|^# || - p + p; n + + :holdwrnt + s|^# || + s|^# *$|| + /^Copyright /!{ + /./H + n + b holdwrnt } - /^warranty; /q' < "$progpath" + + s|\((C)\)[ 0-9,-]*[ ,-]\([1-9][0-9]* \)|\1 \2| + G + s|\(\n\)\n*|\1|g + p; q' < "$progpath" exit $? } @@ -1972,12 +2210,12 @@ # mode: shell-script # sh-indentation: 2 # eval: (add-hook 'before-save-hook 'time-stamp) -# time-stamp-pattern: "10/scriptversion=%:y-%02m-%02d.%02H; # UTC" +# time-stamp-pattern: "30/scriptversion=%:y-%02m-%02d.%02H; # UTC" # time-stamp-time-zone: "UTC" # End: # Set a version string. -scriptversion='(GNU libtool) 2.4.6' +scriptversion='(GNU libtool) 2.4.7' # func_echo ARG... @@ -2068,7 +2306,7 @@ compiler: $LTCC compiler flags: $LTCFLAGS linker: $LD (gnu? $with_gnu_ld) - version: $progname (GNU libtool) 2.4.6 + version: $progname (GNU libtool) 2.4.7 automake: `($AUTOMAKE --version) 2>/dev/null |$SED 1q` autoconf: `($AUTOCONF --version) 2>/dev/null |$SED 1q` @@ -2124,7 +2362,7 @@ # a configuration failure hint, and exit. func_fatal_configuration () { - func__fatal_error ${1+"$@"} \ + func_fatal_error ${1+"$@"} \ "See the $PACKAGE documentation for more information." \ "Fatal configuration error." } @@ -2270,6 +2508,8 @@ nonopt= preserve_args= + _G_rc_lt_options_prep=: + # Shorthand for --mode=foo, only valid as the first argument case $1 in clean|clea|cle|cl) @@ -2293,11 +2533,16 @@ uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u) shift; set dummy --mode uninstall ${1+"$@"}; shift ;; + *) + _G_rc_lt_options_prep=false + ;; esac - # Pass back the list of options. - func_quote_for_eval ${1+"$@"} - libtool_options_prep_result=$func_quote_for_eval_result + if $_G_rc_lt_options_prep; then + # Pass back the list of options. + func_quote eval ${1+"$@"} + libtool_options_prep_result=$func_quote_result + fi } func_add_hook func_options_prep libtool_options_prep @@ -2309,9 +2554,12 @@ { $debug_cmd + _G_rc_lt_parse_options=false + # Perform our own loop to consume as many options as possible in # each iteration. while test $# -gt 0; do + _G_match_lt_parse_options=: _G_opt=$1 shift case $_G_opt in @@ -2386,15 +2634,20 @@ func_append preserve_args " $_G_opt" ;; - # An option not handled by this hook function: - *) set dummy "$_G_opt" ${1+"$@"}; shift; break ;; + # An option not handled by this hook function: + *) set dummy "$_G_opt" ${1+"$@"} ; shift + _G_match_lt_parse_options=false + break + ;; esac + $_G_match_lt_parse_options && _G_rc_lt_parse_options=: done - - # save modified positional parameters for caller - func_quote_for_eval ${1+"$@"} - libtool_parse_options_result=$func_quote_for_eval_result + if $_G_rc_lt_parse_options; then + # save modified positional parameters for caller + func_quote eval ${1+"$@"} + libtool_parse_options_result=$func_quote_result + fi } func_add_hook func_parse_options libtool_parse_options @@ -2415,17 +2668,10 @@ # preserve --debug test : = "$debug_cmd" || func_append preserve_args " --debug" - case $host in - # Solaris2 added to fix http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16452 - # see also: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59788 - *cygwin* | *mingw* | *pw32* | *cegcc* | *solaris2* | *os2*) - # don't eliminate duplications in $postdeps and $predeps - opt_duplicate_compiler_generated_deps=: - ;; - *) - opt_duplicate_compiler_generated_deps=$opt_preserve_dup_deps - ;; - esac + # Keeping compiler generated duplicates in $postdeps and $predeps is not + # harmful, and is necessary in a majority of systems that use it to satisfy + # symbol dependencies. + opt_duplicate_compiler_generated_deps=: $opt_help || { # Sanity checks first: @@ -2451,8 +2697,8 @@ } # Pass back the unparsed argument list - func_quote_for_eval ${1+"$@"} - libtool_validate_options_result=$func_quote_for_eval_result + func_quote eval ${1+"$@"} + libtool_validate_options_result=$func_quote_result } func_add_hook func_validate_options libtool_validate_options @@ -3418,8 +3664,8 @@ esac done - func_quote_for_eval "$libobj" - test "X$libobj" != "X$func_quote_for_eval_result" \ + func_quote_arg pretty "$libobj" + test "X$libobj" != "X$func_quote_arg_result" \ && $ECHO "X$libobj" | $GREP '[]~#^*{};<>?"'"'"' &()|`$[]' \ && func_warning "libobj name '$libobj' may not contain shell special characters." func_dirname_and_basename "$obj" "/" "" @@ -3492,8 +3738,8 @@ func_to_tool_file "$srcfile" func_convert_file_msys_to_w32 srcfile=$func_to_tool_file_result - func_quote_for_eval "$srcfile" - qsrcfile=$func_quote_for_eval_result + func_quote_arg pretty "$srcfile" + qsrcfile=$func_quote_arg_result # Only build a PIC object if we are building libtool libraries. if test yes = "$build_libtool_libs"; then @@ -3648,7 +3894,8 @@ -prefer-non-pic try to build non-PIC objects only -shared do not build a '.o' file suitable for static linking -static only build a '.o' file suitable for static linking - -Wc,FLAG pass FLAG directly to the compiler + -Wc,FLAG + -Xcompiler FLAG pass FLAG directly to the compiler COMPILE-COMMAND is a command to be used in creating a 'standard' object file from the given SOURCEFILE. @@ -3754,6 +4001,8 @@ -weak LIBNAME declare that the target provides the LIBNAME interface -Wc,FLAG -Xcompiler FLAG pass linker-specific FLAG directly to the compiler + -Wa,FLAG + -Xassembler FLAG pass linker-specific FLAG directly to the assembler -Wl,FLAG -Xlinker FLAG pass linker-specific FLAG directly to the linker -XCClinker FLAG pass link-specific FLAG to the compiler driver (CC) @@ -4096,8 +4345,8 @@ case $nonopt in *shtool*) :;; *) false;; esac then # Aesthetically quote it. - func_quote_for_eval "$nonopt" - install_prog="$func_quote_for_eval_result " + func_quote_arg pretty "$nonopt" + install_prog="$func_quote_arg_result " arg=$1 shift else @@ -4107,8 +4356,8 @@ # The real first argument should be the name of the installation program. # Aesthetically quote it. - func_quote_for_eval "$arg" - func_append install_prog "$func_quote_for_eval_result" + func_quote_arg pretty "$arg" + func_append install_prog "$func_quote_arg_result" install_shared_prog=$install_prog case " $install_prog " in *[\\\ /]cp\ *) install_cp=: ;; @@ -4165,12 +4414,12 @@ esac # Aesthetically quote the argument. - func_quote_for_eval "$arg" - func_append install_prog " $func_quote_for_eval_result" + func_quote_arg pretty "$arg" + func_append install_prog " $func_quote_arg_result" if test -n "$arg2"; then - func_quote_for_eval "$arg2" + func_quote_arg pretty "$arg2" fi - func_append install_shared_prog " $func_quote_for_eval_result" + func_append install_shared_prog " $func_quote_arg_result" done test -z "$install_prog" && \ @@ -4181,8 +4430,8 @@ if test -n "$install_override_mode" && $no_mode; then if $install_cp; then :; else - func_quote_for_eval "$install_override_mode" - func_append install_shared_prog " -m $func_quote_for_eval_result" + func_quote_arg pretty "$install_override_mode" + func_append install_shared_prog " -m $func_quote_arg_result" fi fi @@ -4478,8 +4727,8 @@ relink_command=`$ECHO "$relink_command" | $SED 's%@OUTPUT@%'"$outputname"'%g'` $opt_quiet || { - func_quote_for_expand "$relink_command" - eval "func_echo $func_quote_for_expand_result" + func_quote_arg expand,pretty "$relink_command" + eval "func_echo $func_quote_arg_result" } if eval "$relink_command"; then : else @@ -5258,7 +5507,8 @@ if test \"\$libtool_execute_magic\" != \"$magic\"; then file=\"\$0\"" - qECHO=`$ECHO "$ECHO" | $SED "$sed_quote_subst"` + func_quote_arg pretty "$ECHO" + qECHO=$func_quote_arg_result $ECHO "\ # A function that is used when there is no print builtin or printf. @@ -5268,7 +5518,7 @@ \$1 _LTECHO_EOF' } - ECHO=\"$qECHO\" + ECHO=$qECHO fi # Very basic option parsing. These options are (a) specific to @@ -6611,9 +6861,9 @@ while test "$#" -gt 0; do arg=$1 shift - func_quote_for_eval "$arg" - qarg=$func_quote_for_eval_unquoted_result - func_append libtool_args " $func_quote_for_eval_result" + func_quote_arg pretty,unquoted "$arg" + qarg=$func_quote_arg_unquoted_result + func_append libtool_args " $func_quote_arg_result" # If the previous option needs an argument, assign it. if test -n "$prev"; then @@ -6849,6 +7099,13 @@ prev= continue ;; + xassembler) + func_append compiler_flags " -Xassembler $qarg" + prev= + func_append compile_command " -Xassembler $qarg" + func_append finalize_command " -Xassembler $qarg" + continue + ;; xcclinker) func_append linker_flags " $qarg" func_append compiler_flags " $qarg" @@ -7019,7 +7276,7 @@ # These systems don't actually have a C library (as such) test X-lc = "X$arg" && continue ;; - *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig*) + *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig* | *-*-midnightbsd*) # Do not include libc due to us having libc/libc_r. test X-lc = "X$arg" && continue ;; @@ -7039,7 +7296,7 @@ esac elif test X-lc_r = "X$arg"; then case $host in - *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig*) + *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig* | *-*-midnightbsd*) # Do not include libc_r directly, use -pthread flag. continue ;; @@ -7069,8 +7326,20 @@ prev=xcompiler continue ;; - - -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe \ + # Solaris ld rejects as of 11.4. Refer to Oracle bug 22985199. + -pthread) + case $host in + *solaris2*) ;; + *) + case "$new_inherited_linker_flags " in + *" $arg "*) ;; + * ) func_append new_inherited_linker_flags " $arg" ;; + esac + ;; + esac + continue + ;; + -mt|-mthreads|-kthread|-Kthread|-pthreads|--thread-safe \ |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*) func_append compiler_flags " $arg" func_append compile_command " $arg" @@ -7211,9 +7480,9 @@ save_ifs=$IFS; IFS=, for flag in $args; do IFS=$save_ifs - func_quote_for_eval "$flag" - func_append arg " $func_quote_for_eval_result" - func_append compiler_flags " $func_quote_for_eval_result" + func_quote_arg pretty "$flag" + func_append arg " $func_quote_arg_result" + func_append compiler_flags " $func_quote_arg_result" done IFS=$save_ifs func_stripname ' ' '' "$arg" @@ -7227,16 +7496,21 @@ save_ifs=$IFS; IFS=, for flag in $args; do IFS=$save_ifs - func_quote_for_eval "$flag" - func_append arg " $wl$func_quote_for_eval_result" - func_append compiler_flags " $wl$func_quote_for_eval_result" - func_append linker_flags " $func_quote_for_eval_result" + func_quote_arg pretty "$flag" + func_append arg " $wl$func_quote_arg_result" + func_append compiler_flags " $wl$func_quote_arg_result" + func_append linker_flags " $func_quote_arg_result" done IFS=$save_ifs func_stripname ' ' '' "$arg" arg=$func_stripname_result ;; + -Xassembler) + prev=xassembler + continue + ;; + -Xcompiler) prev=xcompiler continue @@ -7254,8 +7528,8 @@ # -msg_* for osf cc -msg_*) - func_quote_for_eval "$arg" - arg=$func_quote_for_eval_result + func_quote_arg pretty "$arg" + arg=$func_quote_arg_result ;; # Flags to be passed through unchanged, with rationale: @@ -7272,12 +7546,17 @@ # -tp=* Portland pgcc target processor selection # --sysroot=* for sysroot support # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization + # -specs=* GCC specs files # -stdlib=* select c++ std lib with clang + # -fsanitize=* Clang/GCC memory and address sanitizer + # -fuse-ld=* Linker select flags for GCC + # -Wa,* Pass flags directly to the assembler -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \ -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \ - -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*) - func_quote_for_eval "$arg" - arg=$func_quote_for_eval_result + -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*| \ + -specs=*|-fsanitize=*|-fuse-ld=*|-Wa,*) + func_quote_arg pretty "$arg" + arg=$func_quote_arg_result func_append compile_command " $arg" func_append finalize_command " $arg" func_append compiler_flags " $arg" @@ -7298,15 +7577,15 @@ continue else # Otherwise treat like 'Some other compiler flag' below - func_quote_for_eval "$arg" - arg=$func_quote_for_eval_result + func_quote_arg pretty "$arg" + arg=$func_quote_arg_result fi ;; # Some other compiler flag. -* | +*) - func_quote_for_eval "$arg" - arg=$func_quote_for_eval_result + func_quote_arg pretty "$arg" + arg=$func_quote_arg_result ;; *.$objext) @@ -7426,8 +7705,8 @@ *) # Unknown arguments in both finalize_command and compile_command need # to be aesthetically quoted because they are evaled later. - func_quote_for_eval "$arg" - arg=$func_quote_for_eval_result + func_quote_arg pretty "$arg" + arg=$func_quote_arg_result ;; esac # arg @@ -8632,7 +8911,7 @@ test CXX = "$tagname" && { case $host_os in linux*) - case `$CC -V 2>&1 | sed 5q` in + case `$CC -V 2>&1 | $SED 5q` in *Sun\ C*) # Sun C++ 5.9 func_suncc_cstd_abi @@ -8805,7 +9084,7 @@ # case $version_type in # correct linux to gnu/linux during the next big refactor - darwin|freebsd-elf|linux|osf|windows|none) + darwin|freebsd-elf|linux|midnightbsd-elf|osf|windows|none) func_arith $number_major + $number_minor current=$func_arith_result age=$number_minor @@ -8896,7 +9175,7 @@ versuffix=.$current.$revision ;; - freebsd-elf) + freebsd-elf | midnightbsd-elf) func_arith $current - $age major=.$func_arith_result versuffix=$major.$age.$revision @@ -9122,7 +9401,7 @@ *-*-netbsd*) # Don't link with libc until the a.out ld.so is fixed. ;; - *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) + *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-midnightbsd*) # Do not include libc due to us having libc/libc_r. ;; *-*-sco3.2v5* | *-*-sco5v6*) @@ -9933,8 +10212,8 @@ for cmd in $concat_cmds; do IFS=$save_ifs $opt_quiet || { - func_quote_for_expand "$cmd" - eval "func_echo $func_quote_for_expand_result" + func_quote_arg expand,pretty "$cmd" + eval "func_echo $func_quote_arg_result" } $opt_dry_run || eval "$cmd" || { lt_exit=$? @@ -10027,8 +10306,8 @@ eval cmd=\"$cmd\" IFS=$save_ifs $opt_quiet || { - func_quote_for_expand "$cmd" - eval "func_echo $func_quote_for_expand_result" + func_quote_arg expand,pretty "$cmd" + eval "func_echo $func_quote_arg_result" } $opt_dry_run || eval "$cmd" || { lt_exit=$? @@ -10502,12 +10781,13 @@ elif eval var_value=\$$var; test -z "$var_value"; then relink_command="$var=; export $var; $relink_command" else - func_quote_for_eval "$var_value" - relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command" + func_quote_arg pretty "$var_value" + relink_command="$var=$func_quote_arg_result; export $var; $relink_command" fi done - relink_command="(cd `pwd`; $relink_command)" - relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"` + func_quote eval cd "`pwd`" + func_quote_arg pretty,unquoted "($func_quote_result; $relink_command)" + relink_command=$func_quote_arg_unquoted_result fi # Only actually do things if not in dry run mode. @@ -10747,13 +11027,15 @@ elif eval var_value=\$$var; test -z "$var_value"; then relink_command="$var=; export $var; $relink_command" else - func_quote_for_eval "$var_value" - relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command" + func_quote_arg pretty,unquoted "$var_value" + relink_command="$var=$func_quote_arg_unquoted_result; export $var; $relink_command" fi done # Quote the link command for shipping. - relink_command="(cd `pwd`; $SHELL \"$progpath\" $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)" - relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"` + func_quote eval cd "`pwd`" + relink_command="($func_quote_result; $SHELL \"$progpath\" $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)" + func_quote_arg pretty,unquoted "$relink_command" + relink_command=$func_quote_arg_unquoted_result if test yes = "$hardcode_automatic"; then relink_command= fi diff -Nru lirc-0.10.1/m4/ax_python_module.m4 lirc-0.10.2/m4/ax_python_module.m4 --- lirc-0.10.1/m4/ax_python_module.m4 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/m4/ax_python_module.m4 2022-09-25 10:03:38.000000000 +0000 @@ -25,26 +25,17 @@ AU_ALIAS([AC_PYTHON_MODULE], [AX_PYTHON_MODULE]) AC_DEFUN([AX_PYTHON_MODULE],[ - if test -z $PYTHON; - then - PYTHON="python" - fi - PYTHON_NAME=`basename $PYTHON` - AC_MSG_CHECKING($PYTHON_NAME module: $1) - $PYTHON -c "import $1" 2>/dev/null - if test $? -eq 0; - then - AC_MSG_RESULT(yes) - eval AS_TR_CPP(HAVE_PYMOD_$1)=yes - else - AC_MSG_RESULT(no) - eval AS_TR_CPP(HAVE_PYMOD_$1)=no - # - if test -n "$2" - then - AC_MSG_ERROR(failed to find required python module $1) - exit 1 - fi - fi + PYTHON=${PYTHON:-"python3"} + AC_MSG_CHECKING([$(basename $PYTHON) module: $1]) + AS_IF([$PYTHON -c "import $1" 2>/dev/null], [ + AC_MSG_RESULT(yes) + AS_TR_CPP(HAVE_PYMOD_$1)='yes' + ], [ + AC_MSG_RESULT(no) + eval AS_TR_CPP(HAVE_PYMOD_$1)='no' + AS_IF([test x$2 != x],[ + AC_MSG_ERROR([failed to find required python module $1]) + exit 1 + ]) + ]) ]) - diff -Nru lirc-0.10.1/m4/libtool.m4 lirc-0.10.2/m4/libtool.m4 --- lirc-0.10.1/m4/libtool.m4 2017-09-10 08:52:31.000000000 +0000 +++ lirc-0.10.2/m4/libtool.m4 2022-10-04 08:02:27.000000000 +0000 @@ -1,6 +1,7 @@ # libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- # -# Copyright (C) 1996-2001, 2003-2015 Free Software Foundation, Inc. +# Copyright (C) 1996-2001, 2003-2019, 2021-2022 Free Software +# Foundation, Inc. # Written by Gordon Matzigkeit, 1996 # # This file is free software; the Free Software Foundation gives @@ -31,7 +32,7 @@ # along with this program. If not, see . ]) -# serial 58 LT_INIT +# serial 59 LT_INIT # LT_PREREQ(VERSION) @@ -181,6 +182,7 @@ m4_require([_LT_CHECK_SHELL_FEATURES])dnl m4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl m4_require([_LT_CMD_RELOAD])dnl +m4_require([_LT_DECL_FILECMD])dnl m4_require([_LT_CHECK_MAGIC_METHOD])dnl m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl m4_require([_LT_CMD_OLD_ARCHIVE])dnl @@ -219,8 +221,8 @@ ofile=libtool can_build_shared=yes -# All known linkers require a '.a' archive for static linking (except MSVC, -# which needs '.lib'). +# All known linkers require a '.a' archive for static linking (except MSVC and +# ICC, which need '.lib'). libext=a with_gnu_ld=$lt_cv_prog_gnu_ld @@ -778,7 +780,7 @@ # if finds mixed CR/LF and LF-only lines. Since sed operates in # text mode, it properly converts lines to CR/LF. This bash problem # is reportedly fixed, but why not run on old versions too? - sed '$q' "$ltmain" >> "$cfgfile" \ + $SED '$q' "$ltmain" >> "$cfgfile" \ || (rm -f "$cfgfile"; exit 1) mv -f "$cfgfile" "$ofile" || @@ -1042,8 +1044,8 @@ _LT_EOF echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD - echo "$AR cru libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD - $AR cru libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD + echo "$AR $AR_FLAGS libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD + $AR $AR_FLAGS libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD cat > conftest.c << _LT_EOF @@ -1067,17 +1069,12 @@ _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;; darwin1.*) _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; - darwin*) # darwin 5.x on - # if running on 10.5 or later, the deployment target defaults - # to the OS version, if on x86, and 10.4, the deployment - # target defaults to 10.4. Don't you love it? - case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in - 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*) - _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; - 10.[[012]][[,.]]*) - _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; - 10.*) - _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; + darwin*) + case $MACOSX_DEPLOYMENT_TARGET,$host in + 10.[[012]],*|,*powerpc*-darwin[[5-8]]*) + _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; + *) + _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; esac ;; esac @@ -1126,12 +1123,12 @@ output_verbose_link_cmd=func_echo_all _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil" _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil" - _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil" - _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil" + _LT_TAGVAR(archive_expsym_cmds, $1)="$SED 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil" + _LT_TAGVAR(module_expsym_cmds, $1)="$SED -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil" m4_if([$1], [CXX], [ if test yes != "$lt_cv_apple_cc_single_mod"; then _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dsymutil" - _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dar_export_syms$_lt_dsymutil" + _LT_TAGVAR(archive_expsym_cmds, $1)="$SED 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dar_export_syms$_lt_dsymutil" fi ],[]) else @@ -1245,7 +1242,8 @@ # _LT_WITH_SYSROOT # ---------------- AC_DEFUN([_LT_WITH_SYSROOT], -[AC_MSG_CHECKING([for sysroot]) +[m4_require([_LT_DECL_SED])dnl +AC_MSG_CHECKING([for sysroot]) AC_ARG_WITH([sysroot], [AS_HELP_STRING([--with-sysroot@<:@=DIR@:>@], [Search for dependent libraries within DIR (or the compiler's sysroot @@ -1262,7 +1260,7 @@ fi ;; #( /*) - lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"` + lt_sysroot=`echo "$with_sysroot" | $SED -e "$sed_quote_subst"` ;; #( no|'') ;; #( @@ -1292,7 +1290,7 @@ # options accordingly. echo 'int i;' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then - case `/usr/bin/file conftest.$ac_objext` in + case `$FILECMD conftest.$ac_objext` in *ELF-32*) HPUX_IA64_MODE=32 ;; @@ -1309,7 +1307,7 @@ echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then if test yes = "$lt_cv_prog_gnu_ld"; then - case `/usr/bin/file conftest.$ac_objext` in + case `$FILECMD conftest.$ac_objext` in *32-bit*) LD="${LD-ld} -melf32bsmip" ;; @@ -1321,7 +1319,7 @@ ;; esac else - case `/usr/bin/file conftest.$ac_objext` in + case `$FILECMD conftest.$ac_objext` in *32-bit*) LD="${LD-ld} -32" ;; @@ -1343,7 +1341,7 @@ echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then emul=elf - case `/usr/bin/file conftest.$ac_objext` in + case `$FILECMD conftest.$ac_objext` in *32-bit*) emul="${emul}32" ;; @@ -1351,7 +1349,7 @@ emul="${emul}64" ;; esac - case `/usr/bin/file conftest.$ac_objext` in + case `$FILECMD conftest.$ac_objext` in *MSB*) emul="${emul}btsmip" ;; @@ -1359,7 +1357,7 @@ emul="${emul}ltsmip" ;; esac - case `/usr/bin/file conftest.$ac_objext` in + case `$FILECMD conftest.$ac_objext` in *N32*) emul="${emul}n32" ;; @@ -1379,14 +1377,14 @@ # not appear in the list. echo 'int i;' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then - case `/usr/bin/file conftest.o` in + case `$FILECMD conftest.o` in *32-bit*) case $host in x86_64-*kfreebsd*-gnu) LD="${LD-ld} -m elf_i386_fbsd" ;; x86_64-*linux*) - case `/usr/bin/file conftest.o` in + case `$FILECMD conftest.o` in *x86-64*) LD="${LD-ld} -m elf32_x86_64" ;; @@ -1454,7 +1452,7 @@ # options accordingly. echo 'int i;' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then - case `/usr/bin/file conftest.o` in + case `$FILECMD conftest.o` in *64-bit*) case $lt_cv_prog_gnu_ld in yes*) @@ -1493,9 +1491,22 @@ m4_defun([_LT_PROG_AR], [AC_CHECK_TOOLS(AR, [ar], false) : ${AR=ar} -: ${AR_FLAGS=cru} _LT_DECL([], [AR], [1], [The archiver]) -_LT_DECL([], [AR_FLAGS], [1], [Flags to create an archive]) + +# Use ARFLAGS variable as AR's operation code to sync the variable naming with +# Automake. If both AR_FLAGS and ARFLAGS are specified, AR_FLAGS should have +# higher priority because thats what people were doing historically (setting +# ARFLAGS for automake and AR_FLAGS for libtool). FIXME: Make the AR_FLAGS +# variable obsoleted/removed. + +test ${AR_FLAGS+y} || AR_FLAGS=${ARFLAGS-cr} +lt_ar_flags=$AR_FLAGS +_LT_DECL([], [lt_ar_flags], [0], [Flags to create an archive (by configure)]) + +# Make AR_FLAGS overridable by 'make ARFLAGS='. Don't try to run-time override +# by AR_FLAGS because that was never working and AR_FLAGS is about to die. +_LT_DECL([], [AR_FLAGS], [\@S|@{ARFLAGS-"\@S|@lt_ar_flags"}], + [Flags to create an archive]) AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file], [lt_cv_ar_at_file=no @@ -1714,7 +1725,7 @@ lt_cv_sys_max_cmd_len=8192; ;; - bitrig* | darwin* | dragonfly* | freebsd* | netbsd* | openbsd*) + bitrig* | darwin* | dragonfly* | freebsd* | midnightbsd* | netbsd* | openbsd*) # This has been around since 386BSD, at least. Likely further. if test -x /sbin/sysctl; then lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax` @@ -1757,7 +1768,7 @@ sysv5* | sco5v6* | sysv4.2uw2*) kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null` if test -n "$kargmax"; then - lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'` + lt_cv_sys_max_cmd_len=`echo $kargmax | $SED 's/.*[[ ]]//'` else lt_cv_sys_max_cmd_len=32768 fi @@ -2207,26 +2218,35 @@ striplib= old_striplib= AC_MSG_CHECKING([whether stripping libraries is possible]) -if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then - test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" - test -z "$striplib" && striplib="$STRIP --strip-unneeded" - AC_MSG_RESULT([yes]) +if test -z "$STRIP"; then + AC_MSG_RESULT([no]) else -# FIXME - insert some real tests, host_os isn't really good enough - case $host_os in - darwin*) - if test -n "$STRIP"; then + if $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then + old_striplib="$STRIP --strip-debug" + striplib="$STRIP --strip-unneeded" + AC_MSG_RESULT([yes]) + else + case $host_os in + darwin*) + # FIXME - insert some real tests, host_os isn't really good enough striplib="$STRIP -x" old_striplib="$STRIP -S" AC_MSG_RESULT([yes]) - else + ;; + freebsd*) + if $STRIP -V 2>&1 | $GREP "elftoolchain" >/dev/null; then + old_striplib="$STRIP --strip-debug" + striplib="$STRIP --strip-unneeded" + AC_MSG_RESULT([yes]) + else + AC_MSG_RESULT([no]) + fi + ;; + *) AC_MSG_RESULT([no]) - fi - ;; - *) - AC_MSG_RESULT([no]) - ;; - esac + ;; + esac + fi fi _LT_DECL([], [old_striplib], [1], [Commands to strip libraries]) _LT_DECL([], [striplib], [1]) @@ -2549,7 +2569,7 @@ case $host_os in cygwin*) # Cygwin DLLs use 'cyg' prefix rather than 'lib' - soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' + soname_spec='`echo $libname | $SED -e 's/^lib/cyg/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' m4_if([$1], [],[ sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"]) ;; @@ -2559,14 +2579,14 @@ ;; pw32*) # pw32 DLLs use 'pw' prefix rather than 'lib' - library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' + library_names_spec='`echo $libname | $SED -e 's/^lib/pw/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' ;; esac dynamic_linker='Win32 ld.exe' ;; - *,cl*) - # Native MSVC + *,cl* | *,icl*) + # Native MSVC or ICC libname_spec='$name' soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' library_names_spec='$libname.dll.lib' @@ -2585,7 +2605,7 @@ done IFS=$lt_save_ifs # Convert to MSYS style. - sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'` + sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'` ;; cygwin*) # Convert to unix form, then to dos form, then back to unix form @@ -2622,7 +2642,7 @@ ;; *) - # Assume MSVC wrapper + # Assume MSVC and ICC wrapper library_names_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext $libname.lib' dynamic_linker='Win32 ld.exe' ;; @@ -2655,7 +2675,7 @@ shlibpath_var=LD_LIBRARY_PATH ;; -freebsd* | dragonfly*) +freebsd* | dragonfly* | midnightbsd*) # DragonFly does not have aout. When/if they implement a new # versioning mechanism, adjust this. if test -x /usr/bin/objformat; then @@ -3457,7 +3477,7 @@ bsdi[[45]]*) lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)' - lt_cv_file_magic_cmd='/usr/bin/file -L' + lt_cv_file_magic_cmd='$FILECMD -L' lt_cv_file_magic_test_file=/shlib/libc.so ;; @@ -3491,14 +3511,14 @@ lt_cv_deplibs_check_method=pass_all ;; -freebsd* | dragonfly*) +freebsd* | dragonfly* | midnightbsd*) if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then case $host_cpu in i*86 ) # Not sure whether the presence of OpenBSD here was a mistake. # Let's accept both of them until this is cleared up. lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library' - lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_cmd=$FILECMD lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` ;; esac @@ -3512,7 +3532,7 @@ ;; hpux10.20* | hpux11*) - lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_cmd=$FILECMD case $host_cpu in ia64*) lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64' @@ -3559,7 +3579,7 @@ newos6*) lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)' - lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_cmd=$FILECMD lt_cv_file_magic_test_file=/usr/lib/libnls.so ;; @@ -3686,13 +3706,13 @@ mingw*) lt_bad_file=conftest.nm/nofile ;; *) lt_bad_file=/dev/null ;; esac - case `"$tmp_nm" -B $lt_bad_file 2>&1 | sed '1q'` in + case `"$tmp_nm" -B $lt_bad_file 2>&1 | $SED '1q'` in *$lt_bad_file* | *'Invalid file or object type'*) lt_cv_path_NM="$tmp_nm -B" break 2 ;; *) - case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in + case `"$tmp_nm" -p /dev/null 2>&1 | $SED '1q'` in */dev/null*) lt_cv_path_NM="$tmp_nm -p" break 2 @@ -3718,7 +3738,7 @@ # Let the user override the test. else AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :) - case `$DUMPBIN -symbols -headers /dev/null 2>&1 | sed '1q'` in + case `$DUMPBIN -symbols -headers /dev/null 2>&1 | $SED '1q'` in *COFF*) DUMPBIN="$DUMPBIN -symbols -headers" ;; @@ -3958,7 +3978,7 @@ if test "$lt_cv_nm_interface" = "MS dumpbin"; then # Gets list of data symbols to import. - lt_cv_sys_global_symbol_to_import="sed -n -e 's/^I .* \(.*\)$/\1/p'" + lt_cv_sys_global_symbol_to_import="$SED -n -e 's/^I .* \(.*\)$/\1/p'" # Adjust the below global symbol transforms to fixup imported variables. lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'" lt_c_name_hook=" -e 's/^I .* \(.*\)$/ {\"\1\", (void *) 0},/p'" @@ -3976,20 +3996,20 @@ # Transform an extracted symbol line into a proper C declaration. # Some systems (esp. on ia64) link data and code symbols differently, # so use this general approach. -lt_cv_sys_global_symbol_to_cdecl="sed -n"\ +lt_cv_sys_global_symbol_to_cdecl="$SED -n"\ $lt_cdecl_hook\ " -e 's/^T .* \(.*\)$/extern int \1();/p'"\ " -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'" # Transform an extracted symbol line into symbol name and symbol address -lt_cv_sys_global_symbol_to_c_name_address="sed -n"\ +lt_cv_sys_global_symbol_to_c_name_address="$SED -n"\ $lt_c_name_hook\ " -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ " -e 's/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/p'" # Transform an extracted symbol line into symbol name with lib prefix and # symbol address. -lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n"\ +lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="$SED -n"\ $lt_c_name_lib_hook\ " -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ " -e 's/^$symcode$symcode* .* \(lib.*\)$/ {\"\1\", (void *) \&\1},/p'"\ @@ -4013,7 +4033,7 @@ if test "$lt_cv_nm_interface" = "MS dumpbin"; then # Fake it for dumpbin and say T for any non-static function, # D for any global variable and I for any imported variable. - # Also find C++ and __fastcall symbols from MSVC++, + # Also find C++ and __fastcall symbols from MSVC++ or ICC, # which start with @ or ?. lt_cv_sys_global_symbol_pipe="$AWK ['"\ " {last_section=section; section=\$ 3};"\ @@ -4031,9 +4051,9 @@ " s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\ " ' prfx=^$ac_symprfx]" else - lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" + lt_cv_sys_global_symbol_pipe="$SED -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" fi - lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'" + lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | $SED '/ __gnu_lto/d'" # Check to see that the pipe works correctly. pipe_works=no @@ -4320,7 +4340,7 @@ ;; esac ;; - freebsd* | dragonfly*) + freebsd* | dragonfly* | midnightbsd*) # FreeBSD uses GNU C++ ;; hpux9* | hpux10* | hpux11*) @@ -4403,7 +4423,7 @@ _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink' ;; *) - case `$CC -V 2>&1 | sed 5q` in + case `$CC -V 2>&1 | $SED 5q` in *Sun\ C*) # Sun C++ 5.9 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' @@ -4739,7 +4759,7 @@ _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink' ;; *) - case `$CC -V 2>&1 | sed 5q` in + case `$CC -V 2>&1 | $SED 5q` in *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*) # Sun Fortran 8.3 passes all unrecognized flags to the linker _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' @@ -4922,7 +4942,7 @@ if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols' else - _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' + _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "L") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' fi ;; pw32*) @@ -4930,7 +4950,7 @@ ;; cygwin* | mingw* | cegcc*) case $cc_basename in - cl*) + cl* | icl*) _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*' ;; *) @@ -4987,15 +5007,15 @@ case $host_os in cygwin* | mingw* | pw32* | cegcc*) - # FIXME: the MSVC++ port hasn't been tested in a loooong time + # FIXME: the MSVC++ and ICC port hasn't been tested in a loooong time # When not using gcc, we currently assume that we are using - # Microsoft Visual C++. + # Microsoft Visual C++ or Intel C++ Compiler. if test yes != "$GCC"; then with_gnu_ld=no fi ;; interix*) - # we just hope/assume this is gcc and not c89 (= MSVC++) + # we just hope/assume this is gcc and not c89 (= MSVC++ or ICC) with_gnu_ld=yes ;; openbsd* | bitrig*) @@ -5047,7 +5067,7 @@ _LT_TAGVAR(whole_archive_flag_spec, $1)= fi supports_anon_versioning=no - case `$LD -v | $SED -e 's/([^)]\+)\s\+//' 2>&1` in + case `$LD -v | $SED -e 's/([[^)]]\+)\s\+//' 2>&1` in *GNU\ gold*) supports_anon_versioning=yes ;; *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... @@ -5159,6 +5179,7 @@ emximp -o $lib $output_objdir/$libname.def' _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes + _LT_TAGVAR(file_list_spec, $1)='@' ;; interix[[3-9]]*) @@ -5173,7 +5194,7 @@ # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link # time. Moving up from 0x10000000 also allows more sbrk(2) space. _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$SED "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' ;; gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu) @@ -5216,7 +5237,7 @@ _LT_TAGVAR(compiler_needs_object, $1)=yes ;; esac - case `$CC -V 2>&1 | sed 5q` in + case `$CC -V 2>&1 | $SED 5q` in *Sun\ C*) # Sun C 5.9 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' _LT_TAGVAR(compiler_needs_object, $1)=yes @@ -5228,7 +5249,7 @@ if test yes = "$supports_anon_versioning"; then _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ - cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ + cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ echo "local: *; };" >> $output_objdir/$libname.ver~ $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib' fi @@ -5244,7 +5265,7 @@ _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib' if test yes = "$supports_anon_versioning"; then _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ - cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ + cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ echo "local: *; };" >> $output_objdir/$libname.ver~ $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' fi @@ -5376,7 +5397,7 @@ if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols' else - _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' + _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "L") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' fi aix_use_runtimelinking=no @@ -5559,12 +5580,12 @@ cygwin* | mingw* | pw32* | cegcc*) # When not using gcc, we currently assume that we are using - # Microsoft Visual C++. + # Microsoft Visual C++ or Intel C++ Compiler. # hardcode_libdir_flag_spec is actually meaningless, as there is # no search path for DLLs. case $cc_basename in - cl*) - # Native MSVC + cl* | icl*) + # Native MSVC or ICC _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' _LT_TAGVAR(allow_undefined_flag, $1)=unsupported _LT_TAGVAR(always_export_symbols, $1)=yes @@ -5605,7 +5626,7 @@ fi' ;; *) - # Assume MSVC wrapper + # Assume MSVC and ICC wrapper _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' _LT_TAGVAR(allow_undefined_flag, $1)=unsupported # Tell ltmain to make .lib files, not .a files. @@ -5653,7 +5674,7 @@ ;; # FreeBSD 3 and greater uses gcc -shared to do shared libraries. - freebsd* | dragonfly*) + freebsd* | dragonfly* | midnightbsd*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_TAGVAR(hardcode_direct, $1)=yes @@ -5864,6 +5885,7 @@ emximp -o $lib $output_objdir/$libname.def' _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes + _LT_TAGVAR(file_list_spec, $1)='@' ;; osf3*) @@ -6634,8 +6656,8 @@ cygwin* | mingw* | pw32* | cegcc*) case $GXX,$cc_basename in - ,cl* | no,cl*) - # Native MSVC + ,cl* | no,cl* | ,icl* | no,icl*) + # Native MSVC or ICC # hardcode_libdir_flag_spec is actually meaningless, as there is # no search path for DLLs. _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' @@ -6733,6 +6755,7 @@ emximp -o $lib $output_objdir/$libname.def' _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes + _LT_TAGVAR(file_list_spec, $1)='@' ;; dgux*) @@ -6763,7 +6786,7 @@ _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;; - freebsd* | dragonfly*) + freebsd* | dragonfly* | midnightbsd*) # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF # conventions _LT_TAGVAR(ld_shlibs, $1)=yes @@ -6900,7 +6923,7 @@ # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link # time. Moving up from 0x10000000 also allows more sbrk(2) space. _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$SED "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' ;; irix5* | irix6*) case $cc_basename in @@ -7040,13 +7063,13 @@ _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' if test yes = "$supports_anon_versioning"; then _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ - cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ + cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ echo "local: *; };" >> $output_objdir/$libname.ver~ $CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib' fi ;; *) - case `$CC -V 2>&1 | sed 5q` in + case `$CC -V 2>&1 | $SED 5q` in *Sun\ C*) # Sun C++ 5.9 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs' @@ -8192,6 +8215,14 @@ AC_SUBST([DLLTOOL]) ]) +# _LT_DECL_FILECMD +# ---------------- +# Check for a file(cmd) program that can be used to detect file type and magic +m4_defun([_LT_DECL_FILECMD], +[AC_CHECK_TOOL([FILECMD], [file], [:]) +_LT_DECL([], [FILECMD], [1], [A file(cmd) program that detects file types]) +])# _LD_DECL_FILECMD + # _LT_DECL_SED # ------------ # Check for a fully-functional sed program, that truncates diff -Nru lirc-0.10.1/m4/ltoptions.m4 lirc-0.10.2/m4/ltoptions.m4 --- lirc-0.10.1/m4/ltoptions.m4 2017-09-10 08:52:31.000000000 +0000 +++ lirc-0.10.2/m4/ltoptions.m4 2022-10-04 08:02:28.000000000 +0000 @@ -1,7 +1,7 @@ # Helper functions for option handling. -*- Autoconf -*- # -# Copyright (C) 2004-2005, 2007-2009, 2011-2015 Free Software -# Foundation, Inc. +# Copyright (C) 2004-2005, 2007-2009, 2011-2019, 2021-2022 Free +# Software Foundation, Inc. # Written by Gary V. Vaughan, 2004 # # This file is free software; the Free Software Foundation gives diff -Nru lirc-0.10.1/m4/ltsugar.m4 lirc-0.10.2/m4/ltsugar.m4 --- lirc-0.10.1/m4/ltsugar.m4 2017-09-10 08:52:31.000000000 +0000 +++ lirc-0.10.2/m4/ltsugar.m4 2022-10-04 08:02:28.000000000 +0000 @@ -1,6 +1,6 @@ # ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*- # -# Copyright (C) 2004-2005, 2007-2008, 2011-2015 Free Software +# Copyright (C) 2004-2005, 2007-2008, 2011-2019, 2021-2022 Free Software # Foundation, Inc. # Written by Gary V. Vaughan, 2004 # diff -Nru lirc-0.10.1/m4/ltversion.m4 lirc-0.10.2/m4/ltversion.m4 --- lirc-0.10.1/m4/ltversion.m4 2017-09-10 08:52:31.000000000 +0000 +++ lirc-0.10.2/m4/ltversion.m4 2022-10-04 08:02:28.000000000 +0000 @@ -1,6 +1,7 @@ # ltversion.m4 -- version numbers -*- Autoconf -*- # -# Copyright (C) 2004, 2011-2015 Free Software Foundation, Inc. +# Copyright (C) 2004, 2011-2019, 2021-2022 Free Software Foundation, +# Inc. # Written by Scott James Remnant, 2004 # # This file is free software; the Free Software Foundation gives @@ -9,15 +10,15 @@ # @configure_input@ -# serial 4179 ltversion.m4 +# serial 4245 ltversion.m4 # This file is part of GNU Libtool -m4_define([LT_PACKAGE_VERSION], [2.4.6]) -m4_define([LT_PACKAGE_REVISION], [2.4.6]) +m4_define([LT_PACKAGE_VERSION], [2.4.7]) +m4_define([LT_PACKAGE_REVISION], [2.4.7]) AC_DEFUN([LTVERSION_VERSION], -[macro_version='2.4.6' -macro_revision='2.4.6' +[macro_version='2.4.7' +macro_revision='2.4.7' _LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?]) _LT_DECL(, macro_revision, 0) ]) diff -Nru lirc-0.10.1/m4/lt~obsolete.m4 lirc-0.10.2/m4/lt~obsolete.m4 --- lirc-0.10.1/m4/lt~obsolete.m4 2017-09-10 08:52:31.000000000 +0000 +++ lirc-0.10.2/m4/lt~obsolete.m4 2022-10-04 08:02:28.000000000 +0000 @@ -1,7 +1,7 @@ # lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*- # -# Copyright (C) 2004-2005, 2007, 2009, 2011-2015 Free Software -# Foundation, Inc. +# Copyright (C) 2004-2005, 2007, 2009, 2011-2019, 2021-2022 Free +# Software Foundation, Inc. # Written by Scott James Remnant, 2004. # # This file is free software; the Free Software Foundation gives diff -Nru lirc-0.10.1/missing lirc-0.10.2/missing --- lirc-0.10.1/missing 2017-09-10 08:52:38.000000000 +0000 +++ lirc-0.10.2/missing 2022-10-04 08:02:31.000000000 +0000 @@ -1,9 +1,9 @@ #! /bin/sh # Common wrapper for a few potentially missing GNU programs. -scriptversion=2013-10-28.13; # UTC +scriptversion=2018-03-07.03; # UTC -# Copyright (C) 1996-2014 Free Software Foundation, Inc. +# Copyright (C) 1996-2021 Free Software Foundation, Inc. # Originally written by Fran,cois Pinard , 1996. # This program is free software; you can redistribute it and/or modify @@ -17,7 +17,7 @@ # GNU General Public License for more details. # You should have received a copy of the GNU General Public License -# along with this program. If not, see . +# along with this program. If not, see . # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a @@ -101,9 +101,9 @@ exit $st fi -perl_URL=http://www.perl.org/ -flex_URL=http://flex.sourceforge.net/ -gnu_software_URL=http://www.gnu.org/software +perl_URL=https://www.perl.org/ +flex_URL=https://github.com/westes/flex +gnu_software_URL=https://www.gnu.org/software program_details () { @@ -207,9 +207,9 @@ exit $st # Local variables: -# eval: (add-hook 'write-file-hooks 'time-stamp) +# eval: (add-hook 'before-save-hook 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-time-zone: "UTC" +# time-stamp-time-zone: "UTC0" # time-stamp-end: "; # UTC" # End: diff -Nru lirc-0.10.1/plugins/Makefile.am lirc-0.10.2/plugins/Makefile.am --- lirc-0.10.1/plugins/Makefile.am 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/Makefile.am 2022-09-25 10:03:38.000000000 +0000 @@ -6,10 +6,10 @@ AM_LDFLAGS += @LIBUSB_LIBS@ endif -AM_CFLAGS = -pthread -Wall @DRIVER_FLAGS@ +AM_CFLAGS = -pthread -Wall AM_CFLAGS += -DPLUGINDOCS=\"$(docdir)/plugindocs\" AM_CPPFLAGS = -I../lib -I$(top_srcdir)/lib -I$(top_srcdir) \ - @kernel_header_flags@ + -I$(top_srcdir)/include AM_CPPFLAGS += -Wall -Wp,-D_FORTIFY_SOURCE=2 DISTCLEANFILES = pluginlist.am diff -Nru lirc-0.10.1/plugins/Makefile.in lirc-0.10.2/plugins/Makefile.in --- lirc-0.10.1/plugins/Makefile.in 2017-09-10 08:52:38.000000000 +0000 +++ lirc-0.10.2/plugins/Makefile.in 2022-10-04 08:02:31.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.5 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2021 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -361,7 +361,30 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/accent.Plo ./$(DEPDIR)/alsa_usb.Plo \ + ./$(DEPDIR)/atilibusb_la-atilibusb.Plo ./$(DEPDIR)/atwf83.Plo \ + ./$(DEPDIR)/audio_alsa.Plo ./$(DEPDIR)/audio_la-audio.Plo \ + ./$(DEPDIR)/awlibusb_la-awlibusb.Plo ./$(DEPDIR)/bte.Plo \ + ./$(DEPDIR)/commandir_la-commandir.Plo \ + ./$(DEPDIR)/creative.Plo ./$(DEPDIR)/creative_infracd.Plo \ + ./$(DEPDIR)/default.Plo ./$(DEPDIR)/devinput.Plo \ + ./$(DEPDIR)/dfclibusb_la-dfclibusb.Plo ./$(DEPDIR)/dsp.Plo \ + ./$(DEPDIR)/ea65.Plo ./$(DEPDIR)/file.Plo \ + ./$(DEPDIR)/ftdi_la-ftdi.Plo ./$(DEPDIR)/girs.Plo \ + ./$(DEPDIR)/hiddev.Plo ./$(DEPDIR)/i2cuser.Plo \ + ./$(DEPDIR)/irlink.Plo ./$(DEPDIR)/irtoy.Plo \ + ./$(DEPDIR)/livedrive_common.Plo \ + ./$(DEPDIR)/livedrive_midi.Plo ./$(DEPDIR)/livedrive_seq.Plo \ + ./$(DEPDIR)/logitech.Plo ./$(DEPDIR)/mouseremote.Plo \ + ./$(DEPDIR)/mp3anywhere.Plo ./$(DEPDIR)/mplay.Plo \ + ./$(DEPDIR)/osx_usbraw.Plo ./$(DEPDIR)/pcmak.Plo \ + ./$(DEPDIR)/pinsys.Plo ./$(DEPDIR)/pixelview.Plo \ + ./$(DEPDIR)/silitek.Plo \ + ./$(DEPDIR)/srm7500libusb_la-srm7500libusb.Plo \ + ./$(DEPDIR)/tira.Plo ./$(DEPDIR)/udp.Plo ./$(DEPDIR)/uirt2.Plo \ + ./$(DEPDIR)/uirt2_common.Plo ./$(DEPDIR)/uirt2_raw.Plo \ + ./$(DEPDIR)/usbx.Plo ./$(DEPDIR)/zotac.Plo am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) @@ -442,8 +465,6 @@ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | $(am__uniquify_input)` -ETAGS = etags -CTAGS = ctags am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/pluginlist.am \ $(top_srcdir)/depcomp DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) @@ -460,6 +481,8 @@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ +CSCOPE = @CSCOPE@ +CTAGS = @CTAGS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ @@ -470,15 +493,16 @@ DEVINPUT_HEADER = @DEVINPUT_HEADER@ DLLTOOL = @DLLTOOL@ DOXYGEN = @DOXYGEN@ -DRIVER_FLAGS = @DRIVER_FLAGS@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ +ETAGS = @ETAGS@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ +FILECMD = @FILECMD@ FTDI_CFLAGS = @FTDI_CFLAGS@ FTDI_LIBS = @FTDI_LIBS@ GREP = @GREP@ @@ -501,7 +525,6 @@ LTLIBOBJS = @LTLIBOBJS@ LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAKEINFO = @MAKEINFO@ -MAN2HTML = @MAN2HTML@ MANIFEST_TOOL = @MANIFEST_TOOL@ MKDIR_P = @MKDIR_P@ MODINFO = @MODINFO@ @@ -534,6 +557,7 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ SED = @SED@ +SETUPTOOLS_ENV = @SETUPTOOLS_ENV@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SH_PATH = @SH_PATH@ @@ -583,7 +607,6 @@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ -kernel_header_flags = @kernel_header_flags@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ @@ -613,10 +636,9 @@ ACLOCAL_AMFLAGS = -I m4 AM_LDFLAGS = -module -avoid-version -L../lib -llirc_driver \ -export-symbols-regex hardwares $(am__append_1) -AM_CFLAGS = -pthread -Wall @DRIVER_FLAGS@ \ - -DPLUGINDOCS=\"$(docdir)/plugindocs\" +AM_CFLAGS = -pthread -Wall -DPLUGINDOCS=\"$(docdir)/plugindocs\" AM_CPPFLAGS = -I../lib -I$(top_srcdir)/lib -I$(top_srcdir) \ - @kernel_header_flags@ -Wall -Wp,-D_FORTIFY_SOURCE=2 + -I$(top_srcdir)/include -Wall -Wp,-D_FORTIFY_SOURCE=2 DISTCLEANFILES = pluginlist.am plugindir = $(pkglibdir)/plugins EXTRA_DIST = pluginlist.am make-pluginlist.sh @@ -714,8 +736,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(srcdir)/pluginlist.am $(am__empty): @@ -892,49 +914,55 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/accent.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alsa_usb.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/atilibusb_la-atilibusb.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/atwf83.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/audio_alsa.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/audio_la-audio.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/awlibusb_la-awlibusb.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bte.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/commandir_la-commandir.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/creative.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/creative_infracd.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/default.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/devinput.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dfclibusb_la-dfclibusb.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dsp.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ea65.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/file.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ftdi_la-ftdi.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/girs.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hiddev.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/i2cuser.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/irlink.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/irtoy.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/livedrive_common.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/livedrive_midi.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/livedrive_seq.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/logitech.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mouseremote.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mp3anywhere.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mplay.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/osx_usbraw.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pcmak.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pinsys.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pixelview.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/silitek.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/srm7500libusb_la-srm7500libusb.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tira.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/udp.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/uirt2.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/uirt2_common.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/uirt2_raw.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/usbx.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/zotac.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/accent.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alsa_usb.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/atilibusb_la-atilibusb.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/atwf83.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/audio_alsa.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/audio_la-audio.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/awlibusb_la-awlibusb.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bte.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/commandir_la-commandir.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/creative.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/creative_infracd.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/default.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/devinput.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dfclibusb_la-dfclibusb.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dsp.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ea65.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/file.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ftdi_la-ftdi.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/girs.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hiddev.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/i2cuser.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/irlink.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/irtoy.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/livedrive_common.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/livedrive_midi.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/livedrive_seq.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/logitech.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mouseremote.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mp3anywhere.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mplay.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/osx_usbraw.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pcmak.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pinsys.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pixelview.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/silitek.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/srm7500libusb_la-srm7500libusb.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tira.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/udp.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/uirt2.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/uirt2_common.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/uirt2_raw.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/usbx.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/zotac.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .c.o: @am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -1063,8 +1091,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am -distdir: $(DISTFILES) +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -1138,7 +1168,49 @@ mostlyclean-am distclean: distclean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/accent.Plo + -rm -f ./$(DEPDIR)/alsa_usb.Plo + -rm -f ./$(DEPDIR)/atilibusb_la-atilibusb.Plo + -rm -f ./$(DEPDIR)/atwf83.Plo + -rm -f ./$(DEPDIR)/audio_alsa.Plo + -rm -f ./$(DEPDIR)/audio_la-audio.Plo + -rm -f ./$(DEPDIR)/awlibusb_la-awlibusb.Plo + -rm -f ./$(DEPDIR)/bte.Plo + -rm -f ./$(DEPDIR)/commandir_la-commandir.Plo + -rm -f ./$(DEPDIR)/creative.Plo + -rm -f ./$(DEPDIR)/creative_infracd.Plo + -rm -f ./$(DEPDIR)/default.Plo + -rm -f ./$(DEPDIR)/devinput.Plo + -rm -f ./$(DEPDIR)/dfclibusb_la-dfclibusb.Plo + -rm -f ./$(DEPDIR)/dsp.Plo + -rm -f ./$(DEPDIR)/ea65.Plo + -rm -f ./$(DEPDIR)/file.Plo + -rm -f ./$(DEPDIR)/ftdi_la-ftdi.Plo + -rm -f ./$(DEPDIR)/girs.Plo + -rm -f ./$(DEPDIR)/hiddev.Plo + -rm -f ./$(DEPDIR)/i2cuser.Plo + -rm -f ./$(DEPDIR)/irlink.Plo + -rm -f ./$(DEPDIR)/irtoy.Plo + -rm -f ./$(DEPDIR)/livedrive_common.Plo + -rm -f ./$(DEPDIR)/livedrive_midi.Plo + -rm -f ./$(DEPDIR)/livedrive_seq.Plo + -rm -f ./$(DEPDIR)/logitech.Plo + -rm -f ./$(DEPDIR)/mouseremote.Plo + -rm -f ./$(DEPDIR)/mp3anywhere.Plo + -rm -f ./$(DEPDIR)/mplay.Plo + -rm -f ./$(DEPDIR)/osx_usbraw.Plo + -rm -f ./$(DEPDIR)/pcmak.Plo + -rm -f ./$(DEPDIR)/pinsys.Plo + -rm -f ./$(DEPDIR)/pixelview.Plo + -rm -f ./$(DEPDIR)/silitek.Plo + -rm -f ./$(DEPDIR)/srm7500libusb_la-srm7500libusb.Plo + -rm -f ./$(DEPDIR)/tira.Plo + -rm -f ./$(DEPDIR)/udp.Plo + -rm -f ./$(DEPDIR)/uirt2.Plo + -rm -f ./$(DEPDIR)/uirt2_common.Plo + -rm -f ./$(DEPDIR)/uirt2_raw.Plo + -rm -f ./$(DEPDIR)/usbx.Plo + -rm -f ./$(DEPDIR)/zotac.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -1184,7 +1256,49 @@ installcheck-am: maintainer-clean: maintainer-clean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/accent.Plo + -rm -f ./$(DEPDIR)/alsa_usb.Plo + -rm -f ./$(DEPDIR)/atilibusb_la-atilibusb.Plo + -rm -f ./$(DEPDIR)/atwf83.Plo + -rm -f ./$(DEPDIR)/audio_alsa.Plo + -rm -f ./$(DEPDIR)/audio_la-audio.Plo + -rm -f ./$(DEPDIR)/awlibusb_la-awlibusb.Plo + -rm -f ./$(DEPDIR)/bte.Plo + -rm -f ./$(DEPDIR)/commandir_la-commandir.Plo + -rm -f ./$(DEPDIR)/creative.Plo + -rm -f ./$(DEPDIR)/creative_infracd.Plo + -rm -f ./$(DEPDIR)/default.Plo + -rm -f ./$(DEPDIR)/devinput.Plo + -rm -f ./$(DEPDIR)/dfclibusb_la-dfclibusb.Plo + -rm -f ./$(DEPDIR)/dsp.Plo + -rm -f ./$(DEPDIR)/ea65.Plo + -rm -f ./$(DEPDIR)/file.Plo + -rm -f ./$(DEPDIR)/ftdi_la-ftdi.Plo + -rm -f ./$(DEPDIR)/girs.Plo + -rm -f ./$(DEPDIR)/hiddev.Plo + -rm -f ./$(DEPDIR)/i2cuser.Plo + -rm -f ./$(DEPDIR)/irlink.Plo + -rm -f ./$(DEPDIR)/irtoy.Plo + -rm -f ./$(DEPDIR)/livedrive_common.Plo + -rm -f ./$(DEPDIR)/livedrive_midi.Plo + -rm -f ./$(DEPDIR)/livedrive_seq.Plo + -rm -f ./$(DEPDIR)/logitech.Plo + -rm -f ./$(DEPDIR)/mouseremote.Plo + -rm -f ./$(DEPDIR)/mp3anywhere.Plo + -rm -f ./$(DEPDIR)/mplay.Plo + -rm -f ./$(DEPDIR)/osx_usbraw.Plo + -rm -f ./$(DEPDIR)/pcmak.Plo + -rm -f ./$(DEPDIR)/pinsys.Plo + -rm -f ./$(DEPDIR)/pixelview.Plo + -rm -f ./$(DEPDIR)/silitek.Plo + -rm -f ./$(DEPDIR)/srm7500libusb_la-srm7500libusb.Plo + -rm -f ./$(DEPDIR)/tira.Plo + -rm -f ./$(DEPDIR)/udp.Plo + -rm -f ./$(DEPDIR)/uirt2.Plo + -rm -f ./$(DEPDIR)/uirt2_common.Plo + -rm -f ./$(DEPDIR)/uirt2_raw.Plo + -rm -f ./$(DEPDIR)/usbx.Plo + -rm -f ./$(DEPDIR)/zotac.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -1205,20 +1319,20 @@ .MAKE: install-am install-strip -.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \ - clean-libtool clean-pluginLTLIBRARIES cscopelist-am ctags \ - ctags-am distclean distclean-compile distclean-generic \ - distclean-libtool distclean-tags distdir dvi dvi-am html \ - html-am info info-am install install-am install-data \ - install-data-am install-dvi install-dvi-am install-exec \ - install-exec-am install-html install-html-am install-info \ - install-info-am install-man install-pdf install-pdf-am \ - install-pluginLTLIBRARIES install-ps install-ps-am \ - install-strip installcheck installcheck-am installdirs \ - maintainer-clean maintainer-clean-generic mostlyclean \ - mostlyclean-compile mostlyclean-generic mostlyclean-libtool \ - pdf pdf-am ps ps-am tags tags-am uninstall uninstall-am \ - uninstall-pluginLTLIBRARIES +.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \ + clean-generic clean-libtool clean-pluginLTLIBRARIES \ + cscopelist-am ctags ctags-am distclean distclean-compile \ + distclean-generic distclean-libtool distclean-tags distdir dvi \ + dvi-am html html-am info info-am install install-am \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-pluginLTLIBRARIES install-ps \ + install-ps-am install-strip installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool pdf pdf-am ps ps-am tags tags-am uninstall \ + uninstall-am uninstall-pluginLTLIBRARIES .PRECIOUS: Makefile diff -Nru lirc-0.10.1/plugins/accent.c lirc-0.10.2/plugins/accent.c --- lirc-0.10.1/plugins/accent.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/accent.c 2022-10-01 11:35:46.000000000 +0000 @@ -130,7 +130,7 @@ .readdata = NULL, .resolution = 300, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "No info available", .device_hint = "/dev/tty[0-9]*", }; diff -Nru lirc-0.10.1/plugins/alsa_usb.c lirc-0.10.2/plugins/alsa_usb.c --- lirc-0.10.1/plugins/alsa_usb.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/alsa_usb.c 2022-10-01 11:35:46.000000000 +0000 @@ -47,7 +47,7 @@ .drvctl_func = drvctl_func, .readdata = NULL, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "See file://" PLUGINDOCS "/alsa-usb.html", .device_hint = "drvctl" }; diff -Nru lirc-0.10.1/plugins/atilibusb.c lirc-0.10.2/plugins/atilibusb.c --- lirc-0.10.1/plugins/atilibusb.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/atilibusb.c 2022-10-01 11:35:46.000000000 +0000 @@ -66,7 +66,7 @@ .drvctl_func = drvctl_func, .readdata = NULL, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "See file://" PLUGINDOCS "/atilibusb.html", .device_hint = "auto", }; diff -Nru lirc-0.10.1/plugins/atwf83.c lirc-0.10.2/plugins/atwf83.c --- lirc-0.10.1/plugins/atwf83.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/atwf83.c 2022-10-01 11:35:46.000000000 +0000 @@ -109,7 +109,7 @@ .drvctl_func = drvctl_func, .readdata = NULL, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "See file://" PLUGINDOCS "/atwf83.html", .device_hint = "drvctl" }; diff -Nru lirc-0.10.1/plugins/audio.c lirc-0.10.2/plugins/audio.c --- lirc-0.10.1/plugins/audio.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/audio.c 2022-10-01 11:35:46.000000000 +0000 @@ -696,7 +696,7 @@ .drvctl_func = drvctl_func, .readdata = audio_readdata, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "See file://" PLUGINDOCS "/audio.html", .device_hint = "drvctl" }; diff -Nru lirc-0.10.1/plugins/audio_alsa.c lirc-0.10.2/plugins/audio_alsa.c --- lirc-0.10.1/plugins/audio_alsa.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/audio_alsa.c 2022-10-01 11:35:46.000000000 +0000 @@ -590,7 +590,7 @@ .drvctl_func = drvctl_func, .readdata = audio_alsa_readdata, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "See file://" PLUGINDOCS "/audio-alsa.html", .device_hint = "drvctl" }; diff -Nru lirc-0.10.1/plugins/awlibusb.c lirc-0.10.2/plugins/awlibusb.c --- lirc-0.10.1/plugins/awlibusb.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/awlibusb.c 2022-10-01 11:35:46.000000000 +0000 @@ -86,7 +86,7 @@ .drvctl_func = drvctl_func, .readdata = NULL, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "No info available.", .device_hint = "drvctl", }; diff -Nru lirc-0.10.1/plugins/bte.c lirc-0.10.2/plugins/bte.c --- lirc-0.10.1/plugins/bte.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/bte.c 2022-10-01 11:36:45.000000000 +0000 @@ -90,7 +90,7 @@ .drvctl_func = NULL, .readdata = NULL, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "No info available.", .device_hint = "/dev/btty*", }; diff -Nru lirc-0.10.1/plugins/commandir.c lirc-0.10.2/plugins/commandir.c --- lirc-0.10.1/plugins/commandir.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/commandir.c 2022-10-01 11:35:46.000000000 +0000 @@ -392,7 +392,7 @@ .drvctl_func = commandir_ioctl, .readdata = commandir_readdata, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "No info available.", .device_hint = "drvctl", }; diff -Nru lirc-0.10.1/plugins/creative.c lirc-0.10.2/plugins/creative.c --- lirc-0.10.1/plugins/creative.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/creative.c 2022-10-01 11:35:46.000000000 +0000 @@ -64,7 +64,7 @@ .drvctl_func = NULL, .readdata = NULL, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "No info available.", .device_hint = "/dev/tty[0-9]*", }; diff -Nru lirc-0.10.1/plugins/creative_infracd.c lirc-0.10.2/plugins/creative_infracd.c --- lirc-0.10.1/plugins/creative_infracd.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/creative_infracd.c 2022-10-01 11:35:46.000000000 +0000 @@ -76,7 +76,7 @@ .drvctl_func = NULL, .readdata = NULL, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "No info available", .device_hint = "/dev/sg*", }; diff -Nru lirc-0.10.1/plugins/default.c lirc-0.10.2/plugins/default.c --- lirc-0.10.1/plugins/default.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/default.c 2022-10-02 15:11:00.000000000 +0000 @@ -31,11 +31,7 @@ #include #include -#ifdef HAVE_KERNEL_LIRC_H -#include -#else #include "media/lirc.h" -#endif #include "lirc_driver.h" @@ -88,7 +84,7 @@ .drvctl_func = drvctl, .readdata = default_readdata, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "See file://" PLUGINDOCS "/default.html", .device_hint = "drvctl", }; @@ -123,7 +119,7 @@ * Given a directory in /sys/class/rc, check if it contains * a file called device. If so, write "lirc" to the protocols * file in same directory unless the 'lirc' protocol already - * is enabled. + * is enabled, or the protocol is not present. * * rc_dir: directory specification like rc0, rc1, etc. * device: Device given to lirc, like 'lirc0' (or /dev/lirc0). @@ -133,10 +129,10 @@ static int visit_rc(const char* rc_dir, const char* device) { char path[512]; - char buff[128]; - char* enabled = NULL; + char buff[256]; int fd; int r; + const char *protocol = "none\n"; snprintf(path, sizeof(path), "/sys/class/rc/%s", rc_dir); if (access(path, F_OK) != 0) { @@ -156,30 +152,25 @@ return -1; } r = read(fd, buff, sizeof(buff)); + close(fd); if (r < 0) { log_debug("Cannot read from %s", path); return -1; } - if (strchr(buff, '[') != NULL) { - enabled = strchr(buff, '[') + 1; - if (strchr(buff, ']') != NULL) - *strchr(buff, ']') = '\0'; - else - enabled = NULL; - } - if (enabled == NULL) { - log_warn("Cannot parse protocols %s", buff); - } else if (strcmp(enabled, "lirc") == 0) { - log_info("[lirc] protocol is enabled"); - return 0; + // ensure null terminator + buff[r] = 0; + // In pre-4.16 kernels, this enables the lirc decoder, which makes + // enables the lirc chardev. Post 4.16 it only disables the other + // protocols, just like "none". + if (strstr(buff, "lirc") != NULL) { + protocol = "lirc\n"; } fd = open(path, O_WRONLY); if (fd < 0) { - log_debug( - "Cannot open protocol file for write: %s", path); + log_debug("Cannot open protocol file for write: %s", path); return -1; } - chk_write(fd, "lirc\n", 5); + chk_write(fd, protocol, 6); log_notice("'lirc' written to protocols file %s", path); close(fd); return 0; diff -Nru lirc-0.10.1/plugins/devinput.c lirc-0.10.2/plugins/devinput.c --- lirc-0.10.1/plugins/devinput.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/devinput.c 2022-10-01 11:35:46.000000000 +0000 @@ -84,7 +84,7 @@ .drvctl_func = drvctl, .readdata = NULL, .api_version = 4, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "See file://" PLUGINDOCS "/devinput.html", .device_hint = "drvctl" }; @@ -245,8 +245,7 @@ int r; char* event; - r = glob("/sys/class/rc/rc0/input[0-9]*/event[0-9]*", - 0, NULL, &matches); + r = glob(DEV_PATTERN, 0, NULL, &matches); if (r == GLOB_NOMATCH) { strncpy(errmsg, "No /sys/class/rc/ devices found", size - 1); log_notice("No input device available for devinput driver." diff -Nru lirc-0.10.1/plugins/dfclibusb.c lirc-0.10.2/plugins/dfclibusb.c --- lirc-0.10.1/plugins/dfclibusb.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/dfclibusb.c 2022-10-01 11:35:46.000000000 +0000 @@ -67,7 +67,7 @@ .drvctl_func = drvctl_func, .readdata = NULL, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "No info available", .device_hint = "drvctl", }; diff -Nru lirc-0.10.1/plugins/dsp.c lirc-0.10.2/plugins/dsp.c --- lirc-0.10.1/plugins/dsp.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/dsp.c 2022-10-01 11:35:46.000000000 +0000 @@ -157,7 +157,7 @@ .drvctl_func = NULL, .readdata = dsp_readdata, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "No info available", .device_hint = "/dev/dsp", }; diff -Nru lirc-0.10.1/plugins/ea65.c lirc-0.10.2/plugins/ea65.c --- lirc-0.10.1/plugins/ea65.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/ea65.c 2022-10-01 11:35:46.000000000 +0000 @@ -73,7 +73,7 @@ .drvctl_func = NULL, .readdata = NULL, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "No info available", .device_hint = "/dev/tty[0-9]*", }; diff -Nru lirc-0.10.1/plugins/file.c lirc-0.10.2/plugins/file.c --- lirc-0.10.1/plugins/file.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/file.c 2022-10-01 11:35:46.000000000 +0000 @@ -79,7 +79,7 @@ .drvctl_func = drvctl_func, .readdata = readdata, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "See file://" PLUGINDOCS "/file.html", .device_hint = "/tmp/*", }; diff -Nru lirc-0.10.1/plugins/ftdi.c lirc-0.10.2/plugins/ftdi.c --- lirc-0.10.1/plugins/ftdi.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/ftdi.c 2022-10-01 11:35:46.000000000 +0000 @@ -917,7 +917,7 @@ .drvctl_func = drvctl_func, .readdata = hwftdi_readdata, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "See file://" PLUGINDOCS "/ftdi.html", .device_hint = "drvctl", }; @@ -940,7 +940,7 @@ .drvctl_func = drvctl_func, .readdata = NULL, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "See file://" PLUGINDOCS "/ftdix.html", .device_hint = "drvctl", }; diff -Nru lirc-0.10.1/plugins/girs.c lirc-0.10.2/plugins/girs.c --- lirc-0.10.1/plugins/girs.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/girs.c 2022-09-25 10:03:39.000000000 +0000 @@ -1,4 +1,4 @@ -/* Copyright (C) 2015, 2016 Bengt Martensson +/* Copyright (C) 2015, 2016, 2017 Bengt Martensson * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -34,6 +34,10 @@ * If non-zero, if using serial device, * the "DTR line" will be lowered for 100 ms when * making the first connect, causing most Arduinos to reset. + * + * ending_timeout + * Set Girs' receiveendingtimeout to this value, denoting timeout + * in milliseconds. */ #include @@ -54,7 +58,7 @@ #define DRIVER_NAME "girs" #define DEFAULT_DEVICE "/dev/ttyACM0" #define DRIVER_RESOLUTION 50 -#define DRIVER_VERSION "2017-03-11" +#define DRIVER_VERSION "2017-08-30" #define DEFAULT_TCP_PORT "33333" @@ -78,11 +82,7 @@ #define RECEIVE_COMMAND "receive" #define TRANSMIT_COMMAND "transmit" -// Min value of ending timeout in the sense of LIRC_GET_MIN_TIMEOUT, in ms. -#define GIRS_MIN_TIMEOUT 1000 // 1 ms, fairly arbitrary - -// Max value of ending timeout in the sense of LIRC_GET_MAX_TIMEOUT, in ms. -#define GIRS_MAX_TIMEOUT 1000000 // 1 s, fairly arbitrary +#define DEFAULT_ENDING_TIMEOUT 25U /* Longest expected line */ #define LONG_LINE_SIZE 1000 @@ -123,9 +123,8 @@ int transmit; // Implements the transmit modle int transmitters;// Implements the transmitter modle int parameters; // Implements the parameters module - int last_sent_timeout; // the last timeout value sent to the hardware + unsigned int ending_timeout; // the last timeout value sent to the hardware int initialized; - int report_timeouts; // If true "report timeouts" unsigned int transmitter_mask; char version[LONG_LINE_SIZE]; // Use to indicate valid device char driver_version[LONG_LINE_SIZE]; @@ -141,9 +140,8 @@ .transmit = 0, .transmitters = 0, .parameters = 0, - .last_sent_timeout = -1, + .ending_timeout = DEFAULT_ENDING_TIMEOUT, .initialized = 0, - .report_timeouts = 0, .transmitter_mask = 0, .version = "", .driver_version = "" @@ -198,10 +196,10 @@ static int decode(struct ir_remote* remote, struct decode_ctx_t* ctx) { - log_trace(DRIVER_NAME " decode: enter"); + log_trace(DRIVER_NAME ": decode: enter"); int res = receive_decode(remote, ctx); - log_trace(DRIVER_NAME " decode returned: %d", res); + log_trace(DRIVER_NAME ": decode returned: %d", res); return res; } @@ -218,7 +216,7 @@ // Public function through hw_girs static int girs_close(void) { - log_debug("girs_close called"); + log_debug(DRIVER_NAME ": girs_close called"); if (dev.fd >= 0) close(dev.fd); @@ -230,6 +228,27 @@ return 0; } +static int set_ending_timeout(void) +{ + if (!dev.parameters) { + log_error(DRIVER_NAME ": Current firmware does not support setting parameters"); + return 0; + } + + if (dev.read_pending) + syncronize(); + char command[LONG_LINE_SIZE]; + + snprintf(command, LONG_LINE_SIZE, "parameter receiveending %d", dev.ending_timeout); + char answer[LONG_LINE_SIZE]; + + snprintf(answer, LONG_LINE_SIZE, "receiveending=%d", dev.ending_timeout); + int success = sendcommand_answer(command, answer, LONG_LINE_SIZE); + + log_info(DRIVER_NAME ": %s setting timeout to %d ms", + success ? "succeded" : "failed", dev.ending_timeout); + return success; +} /** * Driver control. @@ -249,49 +268,10 @@ return DRV_ERR_NOT_IMPLEMENTED; } log_warn(DRIVER_NAME - "setting of transmitter mask accepted, but not yet implemented: 0x%x, ignored.", + ": setting of transmitter mask accepted, but not yet implemented: 0x%x, ignored.", *(unsigned int*) arg); dev.transmitter_mask = *(unsigned int*) arg; break; - case LIRC_SET_REC_TIMEOUT: - if (!dev.parameters) - return DRV_ERR_NOT_IMPLEMENTED; - int value = *(int*) arg; - int millisecs = value / 1000; - - // Do not send the parameter command if it is not necessary, - // since it interrupts the reception- - if (millisecs != dev.last_sent_timeout) { - if (dev.read_pending) - syncronize(); - char command[LONG_LINE_SIZE]; - - snprintf(command, LONG_LINE_SIZE, "parameter receiveending %d", millisecs); - char answer[LONG_LINE_SIZE]; - - snprintf(answer, LONG_LINE_SIZE, "receiveending=%d", millisecs); - int success = sendcommand_answer(command, answer, LONG_LINE_SIZE); - - if (!success) - return DRV_ERR_BAD_STATE; // ??? - log_info(DRIVER_NAME ": setting timeout to %d ms", millisecs); - enable_receive(); - dev.last_sent_timeout = millisecs; - } - break; - case LIRC_GET_MIN_TIMEOUT: - if (!dev.parameters) - return DRV_ERR_NOT_IMPLEMENTED; - *(int*) arg = GIRS_MIN_TIMEOUT; - break; - case LIRC_GET_MAX_TIMEOUT: - if (!dev.parameters) - return DRV_ERR_NOT_IMPLEMENTED; - *(int*) arg = GIRS_MAX_TIMEOUT; - break; - case LIRC_SET_REC_TIMEOUT_REPORTS: - dev.report_timeouts = *(int*) arg; - break; case DRVCTL_SET_OPTION: { struct option_t* opt = (struct option_t*) arg; @@ -305,8 +285,17 @@ return DRV_ERR_BAD_VALUE; } dev.drop_dtr_when_initing = (int) value; + } else if (strcmp(opt->key, "ending_timeout") == 0) { + if (value < 0 || value > 65) { + log_error(DRIVER_NAME + ": invalid ending timeout: %d, ignored.", + value); + return DRV_ERR_BAD_VALUE; + } + dev.ending_timeout = (unsigned int) value; } else { - log_error("unknown key \"%s\", ignored.", opt->key); + log_error(DRIVER_NAME ": unknown key \"%s\", ignored.", + opt->key); return DRV_ERR_BAD_OPTION; } } @@ -577,7 +566,7 @@ int success = enable_receive(); if (!success) { - log_debug("readdata FAILED"); + log_debug(DRIVER_NAME ": readdata FAILED"); return 0; } @@ -588,7 +577,7 @@ int success = readline(buf, LONG_LINE_SIZE, timeout); if (!success) { - log_debug("readdata 0 (timeout)"); + log_debug(DRIVER_NAME ": readdata 0 (timeout)"); // no need to restart receive return 0; } @@ -598,7 +587,7 @@ // Got something that is not timeout; go on break; - log_debug("readdata timeout from hardware, continuing"); + log_debug(DRIVER_NAME ": readdata timeout from hardware, continuing"); enable_receive(); initialized = 0; // Keep going... @@ -641,7 +630,7 @@ if (!initialized) { // The Lirc decoder expects every signal to start with a // gap to be thrown away!!! - log_debug("girs: initial silly gap"); + log_debug(DRIVER_NAME ": initial silly gap"); initialized = 1; x = SILLY_INITIAL_GAP; } else { @@ -692,9 +681,8 @@ } else if (strcasecmp(token, "parameters") == 0) { log_info(DRIVER_NAME ": parameters module found"); dev.parameters = 1; - drv.features |= LIRC_CAN_SET_REC_TIMEOUT; } else { - log_debug(DRIVER_NAME ": unknown module \"%s", token); + log_debug(DRIVER_NAME ": unknown module \"%s\"", token); } } } @@ -708,7 +696,7 @@ static int initialize_serial(void) { if (access(drv.device, R_OK) != 0) { - log_debug(DRIVER_NAME ": cannot access %s", + log_debug(DRIVER_NAME ": cannot access \"%s\"", drv.device); return 0; } @@ -783,7 +771,7 @@ int status = getaddrinfo(ipname, portnumber, &hints, &result); if (status != 0) { - log_error("getaddrinfo: %s", gai_strerror(status)); + log_error(DRIVER_NAME ": getaddrinfo: %s", gai_strerror(status)); return 0; } @@ -800,7 +788,7 @@ continue; if (connect(sock, rp->ai_addr, rp->ai_addrlen) != -1) { - log_info("Successful connect to %s:%s", + log_info(DRIVER_NAME ": Successful connect to %s:%s", ipname, portnumber); break; /* Success */ } @@ -809,7 +797,7 @@ if (rp == NULL) { /* No address succeeded */ - log_error("Could not connect to %s:%s", ipname, portnumber); + log_error(DRIVER_NAME ": Could not connect to %s:%s", ipname, portnumber); return 0; } drv.fd = sock; @@ -867,6 +855,9 @@ } else decode_modules(buf); } + if (success) { + (void) set_ending_timeout(); // failing to sent timeout OK. + } if (!success) { log_error(DRIVER_NAME @@ -876,7 +867,7 @@ tty_delete_lock(); return 0; } - log_info("girr: Found version \"%s\"", dev.version); + log_info(DRIVER_NAME ": Found firmware version \"%s\"", dev.version); return 1; } @@ -914,7 +905,7 @@ strncpy(buff, path, sizeof(buff) - 1); drv.device = buff; } - log_info("girs_open: Initial device: %s", drv.device); + log_info(DRIVER_NAME ": Initial device: %s", drv.device); return 0; } @@ -939,7 +930,7 @@ return NULL; } - log_debug("girs_receive"); + log_debug(DRIVER_NAME ": receive"); if (!rec_buffer_clear()) return NULL; return decode_all(remotes); diff -Nru lirc-0.10.1/plugins/hiddev.c lirc-0.10.2/plugins/hiddev.c --- lirc-0.10.1/plugins/hiddev.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/hiddev.c 2022-10-01 11:35:46.000000000 +0000 @@ -59,7 +59,7 @@ .drvctl_func = drvctl_func, .readdata = NULL, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "No info available", .device_hint = "drvctl" }; @@ -100,7 +100,7 @@ .drvctl_func = drvctl_func, .readdata = NULL, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "No info available", .device_hint = "drvctl", }; @@ -122,7 +122,7 @@ .drvctl_func = drvctl_func, .readdata = NULL, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "No info available", .device_hint = "drvctl", }; @@ -146,7 +146,7 @@ .drvctl_func = drvctl_func, .readdata = NULL, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "No info available", .device_hint = "drvctl", }; @@ -170,7 +170,7 @@ .drvctl_func = drvctl_func, .readdata = NULL, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "No info available", .device_hint = "drvctl", }; @@ -194,7 +194,7 @@ .drvctl_func = NULL, .drvctl_func = drvctl_func, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "No info available", .device_hint = "drvctl", }; @@ -218,7 +218,7 @@ .drvctl_func = drvctl_func, .readdata = NULL, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "No info available", .device_hint = "drvctl", }; diff -Nru lirc-0.10.1/plugins/i2cuser.c lirc-0.10.2/plugins/i2cuser.c --- lirc-0.10.1/plugins/i2cuser.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/i2cuser.c 2022-10-01 11:35:46.000000000 +0000 @@ -91,7 +91,7 @@ .drvctl_func = NULL, .readdata = NULL, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "No info available", .device_hint = "/dev/i2c-*", }; diff -Nru lirc-0.10.1/plugins/irlink.c lirc-0.10.2/plugins/irlink.c --- lirc-0.10.1/plugins/irlink.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/irlink.c 2022-10-01 11:35:46.000000000 +0000 @@ -71,7 +71,7 @@ .drvctl_func = drvctl_func, .readdata = irlink_readdata, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "No info available", .device_hint = "drvctl", }; diff -Nru lirc-0.10.1/plugins/irtoy.c lirc-0.10.2/plugins/irtoy.c --- lirc-0.10.1/plugins/irtoy.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/irtoy.c 2022-10-01 11:35:46.000000000 +0000 @@ -50,7 +50,12 @@ {0, 0} }; -const unsigned char IRTOY_COMMAND_TXSTART[] = { 0x24, 0x25, 0x26, 0x03 }; +const unsigned char IRTOY_COMMAND_TXSTART[] = { 0x03 }; +const unsigned char IRTOY_COMMAND24[] = { 0x24 }; +const unsigned char IRTOY_COMMAND25[] = { 0x25 }; +const unsigned char IRTOY_COMMAND26[] = { 0x26 }; + + static const unsigned char cmdIOwrite = 0x30; // Sets the IO pins to ground (0) or +5volt (1). static const unsigned char cmdIOdirection = 0x31; // Sets the IO pins to input (1) or output (0). #define IRTOY_COMMAND_RESET 0 @@ -90,6 +95,7 @@ int protoVersion; int fd; int awaitingNewSig; + int receivedLongPausesInARow; int pulse; }; @@ -110,7 +116,7 @@ static int drvctl_func(unsigned int cmd, void* arg); static lirc_t readdata(lirc_t timeout); - +static int irtoy_enter_samplemode(irtoy_t* dev); const struct driver hw_usbirtoy = { .name = "irtoy", @@ -129,7 +135,7 @@ .drvctl_func = drvctl_func, .readdata = readdata, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "See file://" PLUGINDOCS "/irtoy.html", .device_hint = "drvctl" }; @@ -279,8 +285,22 @@ log_trace2("read_raw %02x%02x", dur[0], dur[1]); if (dur[0] == 0xff && dur[1] == 0xff) { dev->awaitingNewSig = 1; + dev->receivedLongPausesInARow++; + + if (dev->receivedLongPausesInARow == 3) { + // According to IRToy documentation, when device sends three long pauses in a row, it + // signals buffer overflow (We were not reading it fast enough to process IR data in real time) + // When this happens, IRToy resets to IRMan mode. We need to put it back into sampling mode. + log_warn("Irtoy got buffer overflow. Resetting to sample mode..."); + irtoy_enter_samplemode(dev); + + } + log_trace("Got %d Long Pauses in a row so far", dev->receivedLongPausesInARow); return IRTOY_LONGSPACE; } + + dev->receivedLongPausesInARow = 0; + data = (lirc_t)(IRTOY_UNIT * (double)(256 * dur[0] + dur[1])); log_trace2("read_raw %d", data); @@ -379,7 +399,8 @@ log_error("irtoy_enter_samplemode: couldn't write command"); return 0; } - + //delay needed before reading the command result from Irtoy / Irdroid + usleep(100000); res = read_with_timeout(dev->fd, buf, IRTOY_LEN_SAMPLEMODEPROTO, IRTOY_TIMEOUT_SMODE_ENTER); @@ -387,6 +408,28 @@ log_error("irtoy_enter_samplemode: Can't read command result"); return 0; } + // See gist https://gist.github.com/Irdroid/384d5144d24cba7c94e58dde75388968 + res = write(dev->fd, IRTOY_COMMAND24, sizeof(IRTOY_COMMAND24)); + + if (res != sizeof(IRTOY_COMMAND24)) { + log_error("irtoy_send: couldn't write command 24"); + return 0; + } + usleep(20000); + res = write(dev->fd, IRTOY_COMMAND25, sizeof(IRTOY_COMMAND25)); + + if (res != sizeof(IRTOY_COMMAND25)) { + log_error("irtoy_send: couldn't write command 25"); + return 0; + } + usleep(20000); + res = write(dev->fd, IRTOY_COMMAND26, sizeof(IRTOY_COMMAND26)); + + if (res != sizeof(IRTOY_COMMAND26)) { + log_error("irtoy_send: couldn't write command 26"); + return 0; + } + usleep(20000); buf[IRTOY_LEN_SAMPLEMODEPROTO] = 0; if (buf[0] != IRTOY_REPLY_SAMPLEMODEPROTO) { @@ -415,6 +458,7 @@ dev->awaitingNewSig = 1; dev->fd = fd; dev->pulse = 1; + dev->receivedLongPausesInARow = 0; irtoy_readflush(dev, IRTOY_TIMEOUT_FLUSH); diff -Nru lirc-0.10.1/plugins/livedrive_midi.c lirc-0.10.2/plugins/livedrive_midi.c --- lirc-0.10.1/plugins/livedrive_midi.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/livedrive_midi.c 2022-10-01 11:35:46.000000000 +0000 @@ -82,7 +82,7 @@ .drvctl_func = NULL, .readdata = NULL, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "No info available", .device_hint = "/dev/midi", }; diff -Nru lirc-0.10.1/plugins/livedrive_seq.c lirc-0.10.2/plugins/livedrive_seq.c --- lirc-0.10.1/plugins/livedrive_seq.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/livedrive_seq.c 2022-10-01 11:35:46.000000000 +0000 @@ -82,7 +82,7 @@ .drvctl_func = NULL, .readdata = NULL, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "No info available", .device_hint = "/dev/sequencer", }; diff -Nru lirc-0.10.1/plugins/logitech.c lirc-0.10.2/plugins/logitech.c --- lirc-0.10.1/plugins/logitech.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/logitech.c 2022-10-01 11:35:46.000000000 +0000 @@ -63,7 +63,7 @@ .drvctl_func = NULL, .readdata = NULL, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "No info available", .device_hint = "/dev/tty[0-9]*", }; diff -Nru lirc-0.10.1/plugins/mouseremote.c lirc-0.10.2/plugins/mouseremote.c --- lirc-0.10.1/plugins/mouseremote.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/mouseremote.c 2022-10-01 11:35:46.000000000 +0000 @@ -71,7 +71,7 @@ .drvctl_func = NULL, .readdata = NULL, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "No info available", .device_hint = "/dev/tty[0-9]*", }; @@ -93,7 +93,7 @@ .drvctl_func = NULL, .readdata = NULL, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "No info available", .device_hint = "/dev/tty[0-9]*", }; diff -Nru lirc-0.10.1/plugins/mp3anywhere.c lirc-0.10.2/plugins/mp3anywhere.c --- lirc-0.10.1/plugins/mp3anywhere.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/mp3anywhere.c 2022-10-01 11:35:46.000000000 +0000 @@ -65,7 +65,7 @@ .drvctl_func = NULL, .readdata = NULL, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "No info available", .device_hint = "/dev/tty[0-9]*", }; diff -Nru lirc-0.10.1/plugins/mplay.c lirc-0.10.2/plugins/mplay.c --- lirc-0.10.1/plugins/mplay.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/mplay.c 2022-10-01 11:35:46.000000000 +0000 @@ -221,7 +221,7 @@ .drvctl_func = drvctl_func, .readdata = NULL, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "LIRC driver for Vlsys mplay usb ftdi serial" " port remote control, tested with a Zalman" " Hd135 case.", @@ -249,7 +249,7 @@ .drvctl_func = drvctl_func, .readdata = NULL, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "LIRC driver for Vlsys mplay usb ftdi serial" " port remote control, tested with a Moneual" " Moncaso 312 case", diff -Nru lirc-0.10.1/plugins/osx_usbraw.c lirc-0.10.2/plugins/osx_usbraw.c --- lirc-0.10.1/plugins/osx_usbraw.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/osx_usbraw.c 2022-10-01 11:35:46.000000000 +0000 @@ -91,7 +91,7 @@ .drvctl_func = NULL, .readdata = NULL, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "MacOSX driver for hiddev devices", .device_hint = "auto", }; diff -Nru lirc-0.10.1/plugins/pcmak.c lirc-0.10.2/plugins/pcmak.c --- lirc-0.10.1/plugins/pcmak.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/pcmak.c 2022-10-01 11:35:46.000000000 +0000 @@ -65,7 +65,7 @@ .drvctl_func = NULL, .readdata = NULL, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "No info available", .device_hint = "/dev/tty[0-9]*", }; diff -Nru lirc-0.10.1/plugins/pinsys.c lirc-0.10.2/plugins/pinsys.c --- lirc-0.10.1/plugins/pinsys.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/pinsys.c 2022-10-01 11:35:46.000000000 +0000 @@ -90,7 +90,7 @@ .drvctl_func = NULL, .readdata = NULL, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "No info available", .device_hint = "/dev/tty[0-9]*", }; diff -Nru lirc-0.10.1/plugins/pixelview.c lirc-0.10.2/plugins/pixelview.c --- lirc-0.10.1/plugins/pixelview.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/pixelview.c 2022-10-01 11:35:46.000000000 +0000 @@ -60,7 +60,7 @@ .drvctl_func = NULL, .readdata = NULL, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "No info available", .device_hint = "/dev/tty[0-9]*", }; diff -Nru lirc-0.10.1/plugins/silitek.c lirc-0.10.2/plugins/silitek.c --- lirc-0.10.1/plugins/silitek.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/silitek.c 2022-10-01 11:35:46.000000000 +0000 @@ -66,7 +66,7 @@ .drvctl_func = NULL, .readdata = NULL, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "No info available", .device_hint = "/dev/tty[0-9]*", }; diff -Nru lirc-0.10.1/plugins/srm7500libusb.c lirc-0.10.2/plugins/srm7500libusb.c --- lirc-0.10.1/plugins/srm7500libusb.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/srm7500libusb.c 2022-10-01 11:35:46.000000000 +0000 @@ -41,6 +41,7 @@ #include #include #include +#include #include "lirc_driver.h" @@ -77,6 +78,14 @@ #define SRM7500_KEY_REPEAT 2 #define SRM7500_KEY_UP 3 +// you need to have "struct timespec nanosleep_deleay" in your current scope +#define SLEEP_NANO(THIS_DELAY) \ + nanosleep_delay.tv_sec = 0; \ + nanosleep_delay.tv_nsec = THIS_DELAY; \ + while (nanosleep(&nanosleep_delay, &nanosleep_delay)) +#define SLEEP_NANO_20_ms (20 * 1000 * 1000) +#define SLEEP_NANO_500_us (500 * 1000) + #pragma pack(1) typedef struct { u_int8_t time[4]; @@ -86,11 +95,14 @@ struct { u_int8_t SrcAddrMode; u_int8_t SrcPANId[2]; - u_int8_t SrcAddr[2]; //Note: only valid for SrcAddrMode==0x02 + //Note: only valid for SrcAddrMode==0x02 + u_int8_t SrcAddr[2]; u_int8_t DstAddrMode; u_int8_t DstPANId[2]; - u_int8_t DstAddr[2]; //Note: only valid for DstAddrMode==0x02 - u_int8_t msduLength; // <= aMaxMACFrameSize, so it is most probably one byte + //Note: only valid for DstAddrMode==0x02 + u_int8_t DstAddr[2]; + // <= aMaxMACFrameSize, so it's most probably one byte + u_int8_t msduLength; u_int8_t data[PACKET_SIZE_MAX - 6 - 10]; } zig; u_int8_t data[PACKET_SIZE_MAX - 6]; @@ -130,8 +142,8 @@ static int srm7500_initialize_usbdongle(void); static int srm7500_initialize_802154_stack(void); static int srm7500_deinitialize_usbdongle(void); -static int philipsrf_input(philipsrf_incoming_t* buffer_in); -static int philipsrf_output(philipsrf_outgoing_t buffer_out); +static int philipsrf_input(philipsrf_incoming_t* buffer_in, int timeout); +static int philipsrf_output(philipsrf_outgoing_t buffer_out, int timeout); static void srm7500_sigterm(int sig); static int drvctl_func(unsigned int cmd, void* arg); @@ -152,7 +164,7 @@ .drvctl_func = drvctl_func, .readdata = NULL, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "See file://" PLUGINDOCS "/srm7500atilibusb.html", .device_hint = "drvctl", }; @@ -190,11 +202,23 @@ static int requested_usb_device_number = -1; static int srm7500_terminate = 0; +/* device enumeration support. */ +static int is_enum_device_ok(uint16_t vendor, uint16_t product) +{ + usb_device_id* id; + + for (id = usb_remote_id_table; id->vendor; id++) + if (id->vendor == vendor && id->product == product) + return 1; + return 0; +} + + static int drvctl_func(unsigned int cmd, void* arg) { switch (cmd) { case DRVCTL_GET_DEVICES: - return drv_enum_glob((glob_t*) arg, "/dev/ttyUSB*"); + return drv_enum_usb((glob_t*) arg, is_enum_device_ok); case DRVCTL_FREE_DEVICES: drv_enum_free((glob_t*) arg); return 0; @@ -215,16 +239,20 @@ const char* op_start; const char* op_end; const char* string_end; + const char* const NO_OPTIONS_MSG = + "no device options supplied, please read the documentation in" + " philips/lircd.conf.srm7500libusb!"; + const char* const BAD_CHANNEL_MSG = + "SRM7500 may not work on channels other than 0x19"; + const char*const BAD_OPTION_MSG = "error parsing option %s"; + log_info("initializing driver"); if (drv.device == NULL) { - log_error( - "no device options supplied, please read the documentation in " - "philips/lircd.conf.srm7500libusb!"); + log_error(NO_OPTIONS_MSG); return 0; } - op_start = drv.device; string_end = strchr(drv.device, 0); while (op_start < string_end) { @@ -232,58 +260,82 @@ op_end = my_strchrnul(op_start, ','); if (!strncmp(op_start, "macShortAddress=", 16)) { - result = sscanf(op_start + 16, "%hhx:%hhx", macShortAddress, macShortAddress + 1); + result = sscanf(op_start + 16, "%hhx:%hhx", + macShortAddress, + macShortAddress + 1); if (result == 2) got_macShortAddress = 1; else - log_error("error parsing option macShortAddress"); + log_error(BAD_OPTION_MSG, "macShortAddress"); } else if (!strncmp(op_start, "macPANId=", 9)) { - result = sscanf(op_start + 9, "%hhx:%hhx", macPANId, macPANId + 1); + result = sscanf(op_start + 9, + "%hhx:%hhx", + macPANId, + macPANId + 1); if (result == 2) got_macPANId = 1; else - log_error("error parsing option macPANId"); + log_error(BAD_OPTION_MSG, "macPANId"); } else if (!strncmp(op_start, "LogicalChannel=", 15)) { - result = sscanf(op_start + 15, "%hhx", &LogicalChannel); + result = sscanf(op_start + 15, "%hhx", + &LogicalChannel); if (result == 1) { if (LogicalChannel != 0x19) - log_warn("SRM7500 may not work on channels other than 0x19"); + log_warn(BAD_CHANNEL_MSG); } else { - log_error("error parsing option LogicalChannel"); + log_error(BAD_OPTION_MSG, "LogicalChannel"); } } else if (!strncmp(op_start, "remoteShortAddress=", 19)) { - result = sscanf(op_start + 19, "%hhx:%hhx", remoteShortAddress, remoteShortAddress + 1); + result = sscanf(op_start + 19, "%hhx:%hhx", + remoteShortAddress, + remoteShortAddress + 1); if (result == 2) got_remoteShortAddress = 1; else - log_error("error parsing option remoteShortAddress"); + log_error(BAD_OPTION_MSG, + "remoteShortAddress"); } else if (!strncmp(op_start, "remoteExtendedAddress=", 22)) { - result = sscanf(op_start + 22, "%hhx:%hhx:%hhx:%hhx:" - "%hhx:%hhx:%hhx:%hhx", - remoteExtendedAddress, remoteExtendedAddress + 1, remoteExtendedAddress + 2, - remoteExtendedAddress + 3, remoteExtendedAddress + 4, remoteExtendedAddress + 5, - remoteExtendedAddress + 6, remoteExtendedAddress + 7); + result = sscanf( + op_start + 22, + "%hhx:%hhx:%hhx:%hhx:%hhx:%hhx:%hhx:%hhx", + remoteExtendedAddress, + remoteExtendedAddress + 1, + remoteExtendedAddress + 2, + remoteExtendedAddress + 3, + remoteExtendedAddress + 4, + remoteExtendedAddress + 5, + remoteExtendedAddress + 6, + remoteExtendedAddress + 7); if (result == 8) remoteExtendedAddressGiven = 1; else - log_error("error parsing option remoteExtendedAddress"); + log_error(BAD_OPTION_MSG, + "remoteExtendedAddress"); } else if (!strncmp(op_start, "macBeaconPayload=", 17)) { - strncpy((char*)macBeaconPayload, op_start + 17, op_end - (op_start + 17)); + strncpy((char*)macBeaconPayload, + op_start + 17, + op_end - (op_start + 17)); macBeaconPayload[op_end - (op_start + 17)] = 0; macBeaconPayloadGiven = 1; } else if (!strncmp(op_start, "usb=", 4)) { - result = sscanf(op_start + 4, "%i:%i", &requested_usb_bus_number, &requested_usb_device_number); + result = sscanf(op_start + 4, + "%i:%i", + &requested_usb_bus_number, + &requested_usb_device_number); if (result == 2) { - log_trace("got usb %i:%i", requested_usb_bus_number, requested_usb_device_number); + log_trace("got usb %i:%i", + requested_usb_bus_number, + requested_usb_device_number); } else { log_error("error parsing option usb"); } } else { char erroroptionstring[op_end - op_start + 1]; - strncpy(erroroptionstring, op_start, op_end - op_start + 1); + strncpy(erroroptionstring, + op_start, op_end - op_start + 1); erroroptionstring[op_end - op_start] = 0; - log_warn("enparsable option: %s", erroroptionstring); + log_warn("unparsable option: %s", erroroptionstring); } op_start = op_end + 1; } @@ -299,17 +351,21 @@ } log_info("802.15.4 network parameters"); - log_info(" macShortAddress %02hhx:%02hhx", macShortAddress[0], macShortAddress[1]); - log_info(" macPANId %02hhx:%02hhx", macPANId[0], macPANId[1]); + log_info(" macShortAddress %02hhx:%02hhx", + macShortAddress[0], macShortAddress[1]); + log_info(" macPANId %02hhx:%02hhx", + macPANId[0], macPANId[1]); log_info(" LogicalChannel %02hhx", LogicalChannel); - log_info(" remoteShortAddress %02hhx:%02hhx", remoteShortAddress[0], remoteShortAddress[1]); + log_info(" remoteShortAddress %02hhx:%02hhx", + remoteShortAddress[0], remoteShortAddress[1]); log_info(" macBeaconPayload %s", macBeaconPayload); if (remoteExtendedAddressGiven) { log_info(" Connectivity restricted to " "remoteExtendedAddress %02hhx:%02hhx:%02hhx:%02hhx:" "%02hhx:%02hhx:%02hhx:%02hhx", - remoteExtendedAddress[0], remoteExtendedAddress[1], remoteExtendedAddress[2], - remoteExtendedAddress[3], remoteExtendedAddress[4], remoteExtendedAddress[5], + remoteExtendedAddress[0], remoteExtendedAddress[1], + remoteExtendedAddress[2], remoteExtendedAddress[3], + remoteExtendedAddress[4], remoteExtendedAddress[5], remoteExtendedAddress[6], remoteExtendedAddress[7]); } @@ -332,7 +388,9 @@ } else if (child == 0) { struct sigaction act; int status = 1; + struct timespec nanosleep_delay; + close(pipe_fd[0]); alarm(0); srm7500_terminate = 0; @@ -347,18 +405,24 @@ signal(SIGHUP, SIG_IGN); signal(SIGALRM, SIG_IGN); - close(pipe_fd[0]); while (!srm7500_terminate) { - if (!srm7500_initialize_usbdongle()) + if (!srm7500_initialize_usbdongle()) { + log_error("failed to initialize usb dongle"); goto fail; - if (!srm7500_initialize_802154_stack()) + } + log_info("Low-level init of usb dongle successful"); + if (!srm7500_initialize_802154_stack()) { + log_error("usb dongle 802.15.4 stack init failed"); goto fail; + } log_info("USB receiver initialized"); status = usb_read_loop(pipe_fd[1]); fail: - sleep(2); + srm7500_deinitialize_usbdongle(); + SLEEP_NANO(SLEEP_NANO_20_ms); } - srm7500_deinitialize_usbdongle(); + log_debug("child exits"); + close(pipe_fd[1]); _exit(status); } @@ -381,66 +445,197 @@ struct usb_device* usb_dev; int res; u_int8_t control_buffer[CONTROL_BUFFERSIZE]; + int reset_needed = 1; + struct timespec nanosleep_delay; + int printed_waiting_msg; log_info("initializing Philips USB receiver"); - usb_dev = find_usb_device(); - if (usb_dev == NULL) { - log_error("could not find a compatible USB device"); - return 0; +open_dev_sequence: + dev_handle = NULL; + printed_waiting_msg = 0; + while (1) { + usb_dev = find_usb_device(); + if (usb_dev != NULL) + break; + if (!printed_waiting_msg) { + printed_waiting_msg = 1; + log_info("waiting for USB receiver to be plugged in"); + } + SLEEP_NANO(SLEEP_NANO_20_ms); } + log_debug("found USB device"); + if (!find_device_endpoints(usb_dev)) { log_error("could not find device endpoints"); - return 0; + goto error_label; } + log_debug("found USB device endpoints"); + dev_handle = usb_open(usb_dev); if (dev_handle == NULL) { - log_perror_err("could not open USB receiver"); - return 0; + log_error("could not open USB receiver: %s", usb_strerror()); + goto error_label; } + + log_debug("opened USB %p", dev_handle); + #ifdef LIBUSB_HAS_DETACH_KERNEL_DRIVER_NP res = usb_detach_kernel_driver_np(dev_handle, 0); - if ((res < 0) && (res != -ENODATA) && (res != -EINVAL)) { - log_perror_err("could not detach kernel driver"); - return 0; + if (res < 0) { + if ((res != -ENODATA) && (res != -EINVAL)) { + log_error("could not detach kernel driver: %s", + usb_strerror()); + goto error_label; + } else { + log_debug("No kernel driver was attached to device"); + } + } else { + log_debug("detached USB kernel driver %p", dev_handle); } #endif if (usb_claim_interface(dev_handle, 0) != 0) { - log_perror_err("could not claim USB interface"); - return 0; + log_error("could not claim USB interface: %s", + usb_strerror()); + goto error_label; + } + + log_debug("claimed usb %p", dev_handle); + + if (reset_needed) { + if (usb_reset(dev_handle) < 0) { + log_error("failed to reset USB %p: %s", + dev_handle, usb_strerror()); + usb_close(dev_handle); + log_debug("closed USB %p", dev_handle); + goto error_label; + } + usb_close(dev_handle); + log_debug("closed USB %p", dev_handle); + log_debug("reset USB", dev_handle); + SLEEP_NANO(SLEEP_NANO_20_ms); // wait for 20 milliseconds + reset_needed = 0; + goto open_dev_sequence; } /* device initialization */ memset(control_buffer, 0, sizeof(control_buffer)); - usb_control_msg(dev_handle, USB_TYPE_STANDARD | USB_RECIP_INTERFACE | USB_ENDPOINT_OUT, USB_REQ_SET_INTERFACE, - 0x0000, 0x0000, (char*)control_buffer, 0x0000, USB_TIMEOUT); + res = usb_control_msg(dev_handle, + USB_TYPE_STANDARD | USB_RECIP_INTERFACE + | USB_ENDPOINT_OUT, + USB_REQ_SET_INTERFACE, + 0x0000, 0x0000, + (char*)control_buffer, + 0x0000, + USB_TIMEOUT); + if (res < 0) { + log_error("usb dev_init_01 %p, %d, %s", + dev_handle, res, usb_strerror()); + goto error_label; + } else { + log_debug("usb dev_init_01 %p, %d", dev_handle, res); + } + SLEEP_NANO(SLEEP_NANO_500_us); // wait for 500 microseconds + control_buffer[0] = 0xe4; - usb_control_msg(dev_handle, USB_TYPE_CLASS | USB_RECIP_INTERFACE | USB_ENDPOINT_OUT, USB_REQ_SET_CONFIGURATION, - 0x0300, 0x0000, (char*)control_buffer, 0x0010, USB_TIMEOUT); + res = usb_control_msg(dev_handle, + USB_TYPE_CLASS | USB_RECIP_INTERFACE + | USB_ENDPOINT_OUT, + USB_REQ_SET_CONFIGURATION, + 0x0300, 0x0000, + (char*)control_buffer, + 0x0010, USB_TIMEOUT); + if (res < 0) { + log_error("usb dev_init_02 %p, %d, %s", + dev_handle, res, usb_strerror()); + goto error_label; + } else { + log_debug("usb dev_init_02 %p, %d", dev_handle, res); + } + SLEEP_NANO(SLEEP_NANO_500_us); // wait for 500 microseconds + control_buffer[0] = 0; - usb_control_msg(dev_handle, USB_TYPE_CLASS | USB_RECIP_INTERFACE | USB_ENDPOINT_IN, USB_REQ_CLEAR_FEATURE, - 0x0300, 0x0000, (char*)control_buffer, 0x0010, USB_TIMEOUT); + res = usb_control_msg(dev_handle, + USB_TYPE_CLASS | USB_RECIP_INTERFACE + | USB_ENDPOINT_IN, + USB_REQ_CLEAR_FEATURE, + 0x0300, 0x0000, + (char*)control_buffer, 0x0010, USB_TIMEOUT); + if (res < 0) { + log_error("usb dev_init_03 %p, %d, %s", + dev_handle, res, usb_strerror()); + goto error_label; + } else { + log_debug("usb dev_init_03 %p, %d", dev_handle, res); + } + SLEEP_NANO(SLEEP_NANO_500_us); + /* * HG: with this the red control light on usb receiver is * switched on seems like the command to enable transceiver */ memset(control_buffer, 0, sizeof(control_buffer)); control_buffer[0] = 0xe2; - usb_control_msg(dev_handle, USB_TYPE_CLASS | USB_RECIP_INTERFACE | USB_ENDPOINT_OUT, USB_REQ_SET_CONFIGURATION, - 0x0300, 0x0000, (char*)control_buffer, 0x0010, USB_TIMEOUT); + res = usb_control_msg(dev_handle, + USB_TYPE_CLASS | USB_RECIP_INTERFACE + | USB_ENDPOINT_OUT, + USB_REQ_SET_CONFIGURATION, + 0x0300, 0x0000, + (char*)control_buffer, + 0x0010, + USB_TIMEOUT); + if (res < 0) { + log_error("usb dev_init_04 %p, %d, %s", + dev_handle, res, usb_strerror()); + goto error_label; + } else { + log_debug("usb dev_init_04 %p, %d", dev_handle, res); + } + SLEEP_NANO(SLEEP_NANO_500_us); + memset(control_buffer, 0, sizeof(control_buffer)); - usb_control_msg(dev_handle, USB_TYPE_CLASS | USB_RECIP_INTERFACE | USB_ENDPOINT_IN, USB_REQ_CLEAR_FEATURE, - 0x0300, 0x0000, (char*)control_buffer, 0x0010, USB_TIMEOUT); + res = usb_control_msg(dev_handle, + USB_TYPE_CLASS | USB_RECIP_INTERFACE + | USB_ENDPOINT_IN, + USB_REQ_CLEAR_FEATURE, + 0x0300, 0x0000, + (char*)control_buffer, + 0x0010, USB_TIMEOUT); + if (res < 0) { + log_error("usb dev_init_05 %p, %d, %s", + dev_handle, res, usb_strerror()); + goto error_label; + } else { + log_debug("usb dev_init_05 %p, %d", dev_handle, res); + } + SLEEP_NANO(SLEEP_NANO_500_us); + return 1; + +error_label: + if (dev_handle != NULL) { + res = usb_close(dev_handle); + if (res < 0) { + log_error("error closing device at error_label: %p, %d, %s", + dev_handle, res, usb_strerror()); + } else { + log_debug("closed device at error_label '%p'", + dev_handle); + } + dev_handle = NULL; + } + return 0; } static int srm7500_deinitialize_usbdongle(void) { int result = 1; u_int8_t control_buffer[CONTROL_BUFFERSIZE]; + int ret; + struct timespec nanosleep_delay; log_info("disabling USB receiver"); @@ -452,11 +647,25 @@ */ memset(control_buffer, 0, sizeof(control_buffer)); control_buffer[0] = 0xe1; - usb_control_msg(dev_handle, USB_TYPE_CLASS | USB_RECIP_INTERFACE | USB_ENDPOINT_OUT, USB_REQ_SET_CONFIGURATION, - 0x0300, 0x0000, (char*)control_buffer, 0x0010, USB_TIMEOUT); + ret = usb_control_msg(dev_handle, + USB_TYPE_CLASS | USB_RECIP_INTERFACE + | USB_ENDPOINT_OUT, + USB_REQ_SET_CONFIGURATION, + 0x0300, 0x0000, + (char*)control_buffer, + 0x0010, + USB_TIMEOUT); + if (ret < 0) { + log_error("usb dev_deinit_01 %p, %d, %s", + dev_handle, ret, usb_strerror()); + } else { + log_debug("usb dev_deinit_01 %p, %d", dev_handle, ret); + } + SLEEP_NANO(SLEEP_NANO_500_us); usb_reset(dev_handle); if (usb_close(dev_handle) < 0) result = 0; + log_debug("closed USB %p", dev_handle); dev_handle = NULL; return result; @@ -466,89 +675,112 @@ { philipsrf_outgoing_t packet_buffer_out; philipsrf_incoming_t packet_buffer_in; - int i; - int tries = 3; - int answer_received = 0; - while ((!answer_received) && (tries > 0)) { - philipsrf_input(&packet_buffer_in); - if ((packet_buffer_in.type == MLME_SET_confirm) && (packet_buffer_in.data[0] == 0) - && (packet_buffer_in.data[1] == PIB_ATTR_macExtendedAddress)) - answer_received = 1; - tries--; + log_info("srm7500_initialize_802154_stack"); + + // make sure that input queue is empty + while (1) { + int ret = philipsrf_input(&packet_buffer_in, USB_TIMEOUT); + + if (ret == -110) { + break; // received timout, assume empty queue + } else if (ret < 0) { + log_error("error polling USB dongle"); + return 0; + } } - if ((tries == 0) && (packet_buffer_in.type != MLME_SET_confirm)) - return 0; packet_buffer_out.length = 2; packet_buffer_out.type = MLME_RESET_request; packet_buffer_out.data[0] = MLME_TRUE; /* SetDefaultPIB */ - philipsrf_output(packet_buffer_out); - philipsrf_input(&packet_buffer_in); - if (!((packet_buffer_in.type == MLME_RESET_confirm) && (packet_buffer_in.data[0] == 0))) { - log_error("could not reset USB dongle!"); + philipsrf_output(packet_buffer_out, USB_TIMEOUT); + philipsrf_input(&packet_buffer_in, USB_TIMEOUT); + if (!((packet_buffer_in.type == MLME_RESET_confirm) + && (packet_buffer_in.data[0] == 0)) + ) { + log_error("reset of USB 802.15.4 MAC failed"); return 0; } + log_debug("reset of USB 802.15.4 MAC successful"); packet_buffer_out.length = 4; packet_buffer_out.type = MLME_SET_request; packet_buffer_out.data[0] = PIB_ATTR_macCoordShort_Address; packet_buffer_out.data[1] = macShortAddress[0]; packet_buffer_out.data[2] = macShortAddress[1]; - philipsrf_output(packet_buffer_out); - philipsrf_input(&packet_buffer_in); - if (!((packet_buffer_in.type == MLME_SET_confirm) && (packet_buffer_in.data[0] == 0))) { + philipsrf_output(packet_buffer_out, USB_TIMEOUT); + philipsrf_input(&packet_buffer_in, USB_TIMEOUT); + if (!((packet_buffer_in.type == MLME_SET_confirm) + && (packet_buffer_in.data[0] == 0)) + ) { log_error("could not set macCoordShort_Address!"); return 0; } + log_debug("successfully set macCoordShort_Adress"); packet_buffer_out.length = 4; packet_buffer_out.type = MLME_SET_request; packet_buffer_out.data[0] = PIB_ATTR_macPANId; packet_buffer_out.data[1] = macPANId[0]; packet_buffer_out.data[2] = macPANId[1]; - philipsrf_output(packet_buffer_out); - philipsrf_input(&packet_buffer_in); - if (!((packet_buffer_in.type == MLME_SET_confirm) && (packet_buffer_in.data[0] == 0))) { + philipsrf_output(packet_buffer_out, USB_TIMEOUT); + philipsrf_input(&packet_buffer_in, USB_TIMEOUT); + if (!((packet_buffer_in.type == MLME_SET_confirm) + && (packet_buffer_in.data[0] == 0)) + ) { log_error("could not set macPANId!"); return 0; } + log_debug("successfully set macPANId"); + packet_buffer_out.length = 4; packet_buffer_out.type = MLME_SET_request; packet_buffer_out.data[0] = PIB_ATTR_macShortAddress; packet_buffer_out.data[1] = macShortAddress[0]; packet_buffer_out.data[2] = macShortAddress[1]; - philipsrf_output(packet_buffer_out); - philipsrf_input(&packet_buffer_in); - if (!((packet_buffer_in.type == MLME_SET_confirm) && (packet_buffer_in.data[0] == 0))) { + philipsrf_output(packet_buffer_out, USB_TIMEOUT); + philipsrf_input(&packet_buffer_in, USB_TIMEOUT); + if (!((packet_buffer_in.type == MLME_SET_confirm) + && (packet_buffer_in.data[0] == 0)) + ) { log_error("could not set macShortAddress!"); return 0; } + log_debug("successfully set macShortAdress"); + packet_buffer_out.length = 3; packet_buffer_out.type = MLME_SET_request; packet_buffer_out.data[0] = PIB_ATTR_macAssociation_Permit; packet_buffer_out.data[1] = MLME_TRUE; - philipsrf_output(packet_buffer_out); - philipsrf_input(&packet_buffer_in); - if (!((packet_buffer_in.type == MLME_SET_confirm) && (packet_buffer_in.data[0] == 0))) { + philipsrf_output(packet_buffer_out, USB_TIMEOUT); + philipsrf_input(&packet_buffer_in, USB_TIMEOUT); + if (!((packet_buffer_in.type == MLME_SET_confirm) + && (packet_buffer_in.data[0] == 0)) + ) { log_error("could not set macAssociation_Permit!"); return 0; } + log_debug("successfully set macAssociation_Permit"); + packet_buffer_out.length = 3; packet_buffer_out.type = MLME_SET_request; packet_buffer_out.data[0] = PIB_ATTR_macRxOnWhenIdle; packet_buffer_out.data[1] = MLME_TRUE; - philipsrf_output(packet_buffer_out); - philipsrf_input(&packet_buffer_in); - if (!((packet_buffer_in.type == MLME_SET_confirm) && (packet_buffer_in.data[0] == 0))) { + philipsrf_output(packet_buffer_out, USB_TIMEOUT); + philipsrf_input(&packet_buffer_in, USB_TIMEOUT); + if (!((packet_buffer_in.type == MLME_SET_confirm) + && (packet_buffer_in.data[0] == 0)) + ) { log_error("could not set macRxOnWhenIdle!"); return 0; } + log_debug("successfully set macRxOnWhenIdle"); + /* beacon data: * contents: ASCII PHILIPS + hostname */ @@ -560,12 +792,16 @@ packet_buffer_out.type = MLME_SET_request; packet_buffer_out.data[0] = PIB_ATTR_macBeaconPayload_Length; packet_buffer_out.data[1] = beacon_length; - philipsrf_output(packet_buffer_out); - philipsrf_input(&packet_buffer_in); - if (!((packet_buffer_in.type == MLME_SET_confirm) && (packet_buffer_in.data[0] == 0))) { + philipsrf_output(packet_buffer_out, USB_TIMEOUT); + philipsrf_input(&packet_buffer_in, USB_TIMEOUT); + if (!((packet_buffer_in.type == MLME_SET_confirm) + && (packet_buffer_in.data[0] == 0)) + ) { log_error("could not set macBeaconPayload_Length!"); return 0; } + log_debug("successfully set macBeaconPayload_Length"); + /* beacon data */ packet_buffer_out.length = 2 + beacon_length; @@ -573,12 +809,16 @@ packet_buffer_out.data[0] = PIB_ATTR_macBeaconPayload; for (i = 0; i < beacon_length; i++) packet_buffer_out.data[i + 1] = macBeaconPayload[i]; - philipsrf_output(packet_buffer_out); - philipsrf_input(&packet_buffer_in); - if (!((packet_buffer_in.type == MLME_SET_confirm) && (packet_buffer_in.data[0] == 0))) { + philipsrf_output(packet_buffer_out, USB_TIMEOUT); + philipsrf_input(&packet_buffer_in, USB_TIMEOUT); + if (!((packet_buffer_in.type == MLME_SET_confirm) + && (packet_buffer_in.data[0] == 0)) + ) { log_error("could not set macBeaconPayload!"); return 0; } + log_debug("successfully set macBeaconPayload"); + packet_buffer_out.length = 6; packet_buffer_out.type = MLME_START_request; @@ -593,41 +833,67 @@ packet_buffer_out.data[4] = MLME_TRUE; /* PANCoordinator */ /* In RFC, there is a bunch of other data for this primitive * (Table 72), which will be interpreted as set to 0 */ - philipsrf_output(packet_buffer_out); - philipsrf_input(&packet_buffer_in); - if (!((packet_buffer_in.type == MLME_START_confirm) && (packet_buffer_in.data[0] == 0))) { + philipsrf_output(packet_buffer_out, USB_TIMEOUT); + philipsrf_input(&packet_buffer_in, USB_TIMEOUT); + if (!((packet_buffer_in.type == MLME_START_confirm) + && (packet_buffer_in.data[0] == 0)) + ) { log_error("could not start PAN!"); return 0; } + log_debug("successfully started PAN"); + return 1; } -static int philipsrf_input(philipsrf_incoming_t* buffer_in) +static int philipsrf_input(philipsrf_incoming_t* buffer_in, int timeout) { int ret = 0; - ret = usb_interrupt_read(dev_handle, dev_ep_in->bEndpointAddress, (char*)buffer_in, 64, USB_TIMEOUT); + ret = usb_interrupt_read(dev_handle, + dev_ep_in->bEndpointAddress, + (char*)buffer_in, 64, timeout); if (ret > 0) { log_trace("in: time 0x%08x, length 0x%02x, type 0x%02x", - ((buffer_in->time[3] << 24) | (buffer_in->time[2] << 16) | (buffer_in-> - time[1] << 8) | (buffer_in-> - time[0])), + ((buffer_in->time[3] << 24) + | (buffer_in->time[2] << 16) + | (buffer_in->time[1] << 8) + | (buffer_in->time[0])), buffer_in->length, buffer_in->type); hexdump("in data:", buffer_in->data, buffer_in->length - 1); + } else if (ret < 0) { + if (ret == -110) { + log_trace("timeout in philipsrf_input"); + } else { + log_error("error in philipsrf_input: %d, %s", + ret, usb_strerror()); + } } return ret; } -static int philipsrf_output(philipsrf_outgoing_t buffer_out) +static int philipsrf_output(philipsrf_outgoing_t buffer_out, int timeout) { int ret = 0; - log_trace("out: length 0x%02x, type 0x%02x", buffer_out.length, buffer_out.type); + log_trace("out: length 0x%02x, type 0x%02x", + buffer_out.length, buffer_out.type); hexdump("out data:", buffer_out.data, buffer_out.length - 1); ret = - usb_interrupt_write(dev_handle, dev_ep_out->bEndpointAddress, (char*)&buffer_out, buffer_out.length + 1, - USB_TIMEOUT); + usb_interrupt_write(dev_handle, + dev_ep_out->bEndpointAddress, + (char*)&buffer_out, + buffer_out.length + 1, + timeout); + if (ret < 0) { + if (ret == -110) { + log_trace("timeout in philipsrf_output"); + } else { + log_error("error in philipsrf_output: %d, %s", + ret, usb_strerror()); + } + } return ret; } @@ -691,8 +957,11 @@ usb_device_id* dev_id; for (dev_id = usb_remote_id_table; dev_id->vendor; dev_id++) - if ((dev->descriptor.idVendor == dev_id->vendor) && (dev->descriptor.idProduct == dev_id->product)) + if ((dev->descriptor.idVendor == dev_id->vendor) + && (dev->descriptor.idProduct == dev_id->product) + ) { return 1; + } return 0; } @@ -705,22 +974,27 @@ struct usb_device* dev; usb_init(); + usb_find_busses(); usb_find_devices(); - if ((requested_usb_bus_number > 0) && (requested_usb_device_number > 0)) { + if ((requested_usb_bus_number > 0) + && (requested_usb_device_number > 0) + ) { for (usb_bus = usb_busses; usb_bus; usb_bus = usb_bus->next) if (atoi(usb_bus->dirname) == requested_usb_bus_number) break; if (!usb_bus) { - log_error("requested USB bus %d does not exist", requested_usb_bus_number); + log_error("requested USB bus %d does not exist", + requested_usb_bus_number); return NULL; } for (dev = usb_bus->devices; dev; dev = dev->next) if (dev->devnum == requested_usb_device_number) break; if (!dev) { - log_error("requested USB device %d:%d does not exist", requested_usb_bus_number, + log_error("requested USB device %d:%d does not exist", + requested_usb_bus_number, requested_usb_device_number); return NULL; } @@ -728,7 +1002,9 @@ return dev; } log_error("requested USB device %d:%d, but id %04x:%04x not handled by this driver", - requested_usb_bus_number, requested_usb_device_number, dev->descriptor.idVendor, + requested_usb_bus_number, + requested_usb_device_number, + dev->descriptor.idVendor, dev->descriptor.idProduct); } else { for (usb_bus = usb_busses; usb_bus; usb_bus = usb_bus->next) { @@ -788,14 +1064,15 @@ int i; int is_ok; - inret = philipsrf_input(&packet_buffer_in); + inret = philipsrf_input(&packet_buffer_in, USB_TIMEOUT); if (srm7500_terminate) break; if (inret == -ETIMEDOUT) continue; if (inret < 0) { - log_error("read error %d from usb dongle, aborting\n", inret); + log_error("read error %d from usb dongle, aborting\n", + inret); return 0; } @@ -822,15 +1099,23 @@ is_ok = 1; if (remoteExtendedAddressGiven) for (i = 0; i < 8; i++) - if (packet_buffer_in.data[i] != remoteExtendedAddress[i]) + if (packet_buffer_in.data[i] + != remoteExtendedAddress[i] + ) { is_ok = 0; + } if (is_ok) { log_notice( "MLME_ASSOCIATE.response: device %02x:%02x:%02x:%02x:%02x:%02x:%02x:%02x associated", - packet_buffer_in.data[0], packet_buffer_in.data[1], packet_buffer_in.data[2], - packet_buffer_in.data[3], packet_buffer_in.data[4], packet_buffer_in.data[5], - packet_buffer_in.data[6], packet_buffer_in.data[7]); + packet_buffer_in.data[0], + packet_buffer_in.data[1], + packet_buffer_in.data[2], + packet_buffer_in.data[3], + packet_buffer_in.data[4], + packet_buffer_in.data[5], + packet_buffer_in.data[6], + packet_buffer_in.data[7]); /* Status: Successful */ packet_buffer_out.data[10] = 0; } else { @@ -838,16 +1123,22 @@ "MLME_ASSOCIATE.response: " "unknown device %02x:%02x:%02x:%02x:" "%02x:%02x:%02x:%02x rejected", - packet_buffer_in.data[0], packet_buffer_in.data[1], packet_buffer_in.data[2], - packet_buffer_in.data[3], packet_buffer_in.data[4], packet_buffer_in.data[5], - packet_buffer_in.data[6], packet_buffer_in.data[7]); + packet_buffer_in.data[0], + packet_buffer_in.data[1], + packet_buffer_in.data[2], + packet_buffer_in.data[3], + packet_buffer_in.data[4], + packet_buffer_in.data[5], + packet_buffer_in.data[6], + packet_buffer_in.data[7]); /* Status: Access denied */ packet_buffer_out.data[10] = 0x02; } /* SecurityLevel,KeyIdMode */ packet_buffer_out.data[11] = 0; - philipsrf_output(packet_buffer_out); - inret = philipsrf_input(&packet_buffer_in); // FIXME: never read. + philipsrf_output(packet_buffer_out, USB_TIMEOUT); + // FIXME: never read. + inret = philipsrf_input(&packet_buffer_in, USB_TIMEOUT); if ((packet_buffer_in.type == MLME_COMM_STATUS_indication) && (packet_buffer_in.data[packet_buffer_in.length - 2] == 0)) { /* Empty body(!). */ @@ -871,7 +1162,8 @@ packet_buffer_out.type = MLME_ORPHAN_response; /* OrphanAddress, copied from indication */ - memcpy(packet_buffer_out.data, packet_buffer_in.data, 8); + memcpy(packet_buffer_out.data, + packet_buffer_in.data, 8); /* ShortAddress */ packet_buffer_out.data[8] = remoteShortAddress[0]; packet_buffer_out.data[9] = remoteShortAddress[1]; @@ -879,8 +1171,11 @@ is_ok = 1; if (remoteExtendedAddressGiven) for (i = 0; i < 8; i++) - if (packet_buffer_in.data[i] != remoteExtendedAddress[i]) + if (packet_buffer_in.data[i] + != remoteExtendedAddress[i] + ) { is_ok = 0; + } if (is_ok) { /* AssociatedMember */ @@ -889,15 +1184,20 @@ log_notice("MLME_ORPHAN.response: " "unknown device %02x:%02x:%02x:%02x:" "%02x:%02x:%02x:%02x rejected", - packet_buffer_in.data[0], packet_buffer_in.data[1], packet_buffer_in.data[2], - packet_buffer_in.data[3], packet_buffer_in.data[4], packet_buffer_in.data[5], - packet_buffer_in.data[6], packet_buffer_in.data[7]); + packet_buffer_in.data[0], + packet_buffer_in.data[1], + packet_buffer_in.data[2], + packet_buffer_in.data[3], + packet_buffer_in.data[4], + packet_buffer_in.data[5], + packet_buffer_in.data[6], + packet_buffer_in.data[7]); /* AssociatedMember */ packet_buffer_out.data[10] = MLME_FALSE; } - philipsrf_output(packet_buffer_out); - philipsrf_input(&packet_buffer_in); + philipsrf_output(packet_buffer_out, USB_TIMEOUT); + philipsrf_input(&packet_buffer_in, USB_TIMEOUT); break; case MCPS_DATA_indication: /* nomal key on remote pressed @@ -913,12 +1213,17 @@ (packet_buffer_in.zig.DstPANId[1])), ((packet_buffer_in.zig.DstAddr[0] << 8) | (packet_buffer_in.zig.DstAddr[1])), - ((packet_buffer_in.zig.SrcPANId[0] << 8) | (packet_buffer_in.zig.SrcPANId[1])), - ((packet_buffer_in.zig.SrcAddr[0] << 8) | (packet_buffer_in.zig.SrcAddr[1])) - ); - hexdump("MCPS_DATA_indication payload:", packet_buffer_in.zig.data, + ((packet_buffer_in.zig.SrcPANId[0] << 8) | + (packet_buffer_in.zig.SrcPANId[1])), + ((packet_buffer_in.zig.SrcAddr[0] << 8) | + (packet_buffer_in.zig.SrcAddr[1])) + ); + hexdump("MCPS_DATA_indication payload:", + packet_buffer_in.zig.data, packet_buffer_in.zig.msduLength); - if ((packet_buffer_in.zig.data[0] == 0x00) && (packet_buffer_in.zig.msduLength == 4)) { + if ((packet_buffer_in.zig.data[0] == 0x00) + && (packet_buffer_in.zig.msduLength == 4) + ) { int bytes_w, pos; for (pos = 1; pos < packet_buffer_in.zig.msduLength; pos += bytes_w) { @@ -933,7 +1238,8 @@ } break; default: - log_info("unhandled incoming usb packet 0x%02x\n", packet_buffer_in.type); + log_info("unhandled incoming usb packet 0x%02x\n", + packet_buffer_in.type); } } @@ -944,9 +1250,9 @@ { log_trace("srm7500_decode"); - if (!map_code(remote, decode_ctx, 0, 0, hw_srm7500libusb.code_length, code, 0, 0)) + if (!map_code(remote, decode_ctx, 0, 0, + hw_srm7500libusb.code_length, code, 0, 0)) return 0; - decode_ctx->repeat_flag = repeat_flag; decode_ctx->min_remaining_gap = 0; decode_ctx->max_remaining_gap = 0; diff -Nru lirc-0.10.1/plugins/tira.c lirc-0.10.2/plugins/tira.c --- lirc-0.10.1/plugins/tira.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/tira.c 2022-10-01 11:35:46.000000000 +0000 @@ -100,7 +100,7 @@ .drvctl_func = drvctl_func, .readdata = NULL, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "See file://" PLUGINDOCS "/tira.html", .device_hint = "drvctl", }; @@ -122,7 +122,7 @@ .drvctl_func = drvctl_func, .readdata = tira_readdata, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "See file://@plugindocs@/tira.html", .device_hint = "drvctl", }; diff -Nru lirc-0.10.1/plugins/uirt2.c lirc-0.10.2/plugins/uirt2.c --- lirc-0.10.1/plugins/uirt2.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/uirt2.c 2022-10-01 11:35:46.000000000 +0000 @@ -76,7 +76,7 @@ .drvctl_func = NULL, .readdata = NULL, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "No info available", .device_hint = "/dev/tty[0-9]*", }; diff -Nru lirc-0.10.1/plugins/uirt2_raw.c lirc-0.10.2/plugins/uirt2_raw.c --- lirc-0.10.1/plugins/uirt2_raw.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/uirt2_raw.c 2022-10-01 11:35:46.000000000 +0000 @@ -86,7 +86,7 @@ .drvctl_func = NULL, .readdata = uirt2_raw_readdata, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "No info available", .device_hint = "/dev/tty[0-9]*", }; @@ -108,7 +108,7 @@ .drvctl_func = NULL, .readdata = uirt2_raw_readdata, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "No info available", .device_hint = "/dev/tty[0-9]*", }; diff -Nru lirc-0.10.1/plugins/usbx.c lirc-0.10.2/plugins/usbx.c --- lirc-0.10.1/plugins/usbx.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/usbx.c 2022-10-01 11:35:46.000000000 +0000 @@ -86,7 +86,7 @@ .drvctl_func = drvctl_func, .readdata = NULL, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "No info available", .device_hint = "drvctl", }; diff -Nru lirc-0.10.1/plugins/zotac.c lirc-0.10.2/plugins/zotac.c --- lirc-0.10.1/plugins/zotac.c 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/plugins/zotac.c 2022-10-01 11:35:46.000000000 +0000 @@ -83,7 +83,7 @@ .drvctl_func = drvctl_func, .readdata = NULL, .api_version = 3, - .driver_version = "0.10.0", + .driver_version = "0.10.2", .info = "No info available", .device_hint = "drvctl", }; diff -Nru lirc-0.10.1/py-compile lirc-0.10.2/py-compile --- lirc-0.10.1/py-compile 2017-09-10 08:52:38.000000000 +0000 +++ lirc-0.10.2/py-compile 2022-10-04 08:02:31.000000000 +0000 @@ -1,9 +1,9 @@ #!/bin/sh # py-compile - Compile a Python program -scriptversion=2011-06-08.12; # UTC +scriptversion=2021-02-27.01; # UTC -# Copyright (C) 2000-2014 Free Software Foundation, Inc. +# Copyright (C) 2000-2021 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -16,7 +16,7 @@ # GNU General Public License for more details. # You should have received a copy of the GNU General Public License -# along with this program. If not, see . +# along with this program. If not, see . # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a @@ -27,7 +27,7 @@ # bugs to or send patches to # . -if [ -z "$PYTHON" ]; then +if test -z "$PYTHON"; then PYTHON=python fi @@ -96,27 +96,46 @@ files=$* if test -z "$files"; then - usage_error "no files given" + usage_error "no files given" fi # if basedir was given, then it should be prepended to filenames before # byte compilation. -if [ -z "$basedir" ]; then - pathtrans="path = file" +if test -z "$basedir"; then + pathtrans="path = file" else - pathtrans="path = os.path.join('$basedir', file)" + pathtrans="path = os.path.join('$basedir', file)" fi # if destdir was given, then it needs to be prepended to the filename to # byte compile but not go into the compiled file. -if [ -z "$destdir" ]; then - filetrans="filepath = path" +if test -z "$destdir"; then + filetrans="filepath = path" else - filetrans="filepath = os.path.normpath('$destdir' + os.sep + path)" + filetrans="filepath = os.path.normpath('$destdir' + os.sep + path)" +fi + +python_major=`$PYTHON -V 2>&1 | sed -e 's/.* //;s/\..*$//;1q'` +if test -z "$python_major"; then + echo "$me: could not determine $PYTHON major version, guessing 3" >&2 + python_major=3 +fi + +# The old way to import libraries was deprecated. +if test "$python_major" -le 2; then + import_lib=imp + import_test="hasattr(imp, 'get_tag')" + import_call=imp.cache_from_source + import_arg2=', False' # needed in one call and not the other +else + import_lib=importlib + import_test="hasattr(sys.implementation, 'cache_tag')" + import_call=importlib.util.cache_from_source + import_arg2= fi $PYTHON -c " -import sys, os, py_compile, imp +import sys, os, py_compile, $import_lib files = '''$files''' @@ -129,15 +148,15 @@ continue sys.stdout.write(file) sys.stdout.flush() - if hasattr(imp, 'get_tag'): - py_compile.compile(filepath, imp.cache_from_source(filepath), path) + if $import_test: + py_compile.compile(filepath, $import_call(filepath), path) else: py_compile.compile(filepath, filepath + 'c', path) sys.stdout.write('\n')" || exit $? # this will fail for python < 1.5, but that doesn't matter ... $PYTHON -O -c " -import sys, os, py_compile, imp +import sys, os, py_compile, $import_lib # pypy does not use .pyo optimization if hasattr(sys, 'pypy_translation_info'): @@ -153,18 +172,18 @@ continue sys.stdout.write(file) sys.stdout.flush() - if hasattr(imp, 'get_tag'): - py_compile.compile(filepath, imp.cache_from_source(filepath, False), path) + if $import_test: + py_compile.compile(filepath, $import_call(filepath$import_arg2), path) else: py_compile.compile(filepath, filepath + 'o', path) -sys.stdout.write('\n')" 2>/dev/null || : +sys.stdout.write('\n')" 2>/dev/null || exit $? # Local Variables: # mode: shell-script # sh-indentation: 2 -# eval: (add-hook 'write-file-hooks 'time-stamp) +# eval: (add-hook 'before-save-hook 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-time-zone: "UTC" +# time-stamp-time-zone: "UTC0" # time-stamp-end: "; # UTC" # End: diff -Nru lirc-0.10.1/python-pkg/lirc/async_client.py lirc-0.10.2/python-pkg/lirc/async_client.py --- lirc-0.10.1/python-pkg/lirc/async_client.py 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/python-pkg/lirc/async_client.py 2022-09-25 10:03:39.000000000 +0000 @@ -57,13 +57,17 @@ def read_from_fd(): ''' Read data from the connection fd and put into queue. ''' - line = self._conn.readline(0) - if line: - asyncio.ensure_future(self._queue.put(line)) + try: + line = self._conn.readline(0) + if line: + asyncio.ensure_future(self._queue.put(line)) + except Exception as e: + self.close() + self._queue.put_nowait(e) self._conn = connection self._loop = loop - self._queue = asyncio.Queue(loop=self._loop) + self._queue = asyncio.Queue() self._loop.add_reader(self._conn.fileno(), read_from_fd) def close(self): @@ -72,7 +76,10 @@ async def readline(self) -> str: ''' Asynchronous get next line from the connection. ''' - return await self._queue.get() + line = await self._queue.get() + if isinstance(line, Exception): + raise line + return line def __aiter__(self): ''' Return async iterator. ''' @@ -80,7 +87,10 @@ async def __anext__(self): ''' Implement async iterator.next(). ''' - return await self._queue.get() + line = await self._queue.get() + if isinstance(line, Exception): + raise StopAsyncIteration + return line async def __aenter__(self): ''' Implement "async with". ''' diff -Nru lirc-0.10.1/python-pkg/lirc/client.py lirc-0.10.2/python-pkg/lirc/client.py --- lirc-0.10.1/python-pkg/lirc/client.py 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/python-pkg/lirc/client.py 2022-10-03 16:37:30.000000000 +0000 @@ -32,6 +32,7 @@ import os.path import selectors import socket +import sys import time import lirc.config @@ -53,7 +54,10 @@ if 'LIRC_SOCKET_PATH' in os.environ: return os.environ['LIRC_SOCKET_PATH'] path = lirc.config.SYSCONFDIR + '/lirc/lirc_options.conf' - parser = configparser.SafeConfigParser() + if sys.version_info < (3, 2): + parser = configparser.SafeConfigParser() + else: + parser = configparser.ConfigParser() try: parser.read(path) except configparser.Error: @@ -219,17 +223,20 @@ def readline(self, timeout: float = None) -> str: ''' Implements AbstractConnection.readline(). ''' if timeout: - start = time.clock() + start = time.perf_counter() while b'\n' not in self._buffer: ready = self._select.select( - start + timeout - time.clock() if timeout else timeout) + start + timeout - time.perf_counter() if timeout else timeout) if ready == []: if timeout: raise TimeoutException( "readline: no data within %f seconds" % timeout) else: return None - self._buffer += self._socket.recv(4096) + recv = self._socket.recv(4096) + if len(recv) == 0: + raise ConnectionResetError('Connection lost') + self._buffer += recv line, self._buffer = self._buffer.split(b'\n', 1) return line.decode('ascii', 'ignore') diff -Nru lirc-0.10.1/python-pkg/lirc/database.py lirc-0.10.2/python-pkg/lirc/database.py --- lirc-0.10.1/python-pkg/lirc/database.py 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/python-pkg/lirc/database.py 2022-09-25 10:03:39.000000000 +0000 @@ -28,9 +28,9 @@ # Although python cannot guarantee this, the database is designed as a # read-only structure. # -# Simple usage examples lives in doc/: data2hwdb and data2table. The -# lirc-setup script provides a more elaborated example. Data structures -# are basically documented in the yaml files. +# A simple usage examples is doc/data2table. The lirc-setup script +# provides a more elaborated example. Data structures are basically +# documented in the yaml files. ## @addtogroup database # @{ @@ -44,6 +44,10 @@ try: import yaml + try: + from yaml import CLoader as Loader, CDumper as Dumper + except ImportError: + from yaml import Loader, Dumper except ImportError: _YAML_MSG = ''' "Cannot import the yaml library. Please install the python3 @@ -66,7 +70,7 @@ ''' with open(os.path.join(configdir, "kernel-drivers.yaml")) as f: - cf = yaml.load(f.read()) + cf = yaml.load(f.read(), Loader = Loader) drivers = cf['drivers'].copy() for driver in cf['drivers']: if driver == 'default': @@ -132,14 +136,14 @@ yamlpath = configdir db = {} with open(os.path.join(yamlpath, "confs_by_driver.yaml")) as f: - cf = yaml.load(f.read()) + cf = yaml.load(f.read(), Loader = Loader) db['lircd_by_driver'] = cf['lircd_by_driver'].copy() db['lircmd_by_driver'] = cf['lircmd_by_driver'].copy() db['kernel-drivers'] = _load_kerneldrivers(configdir) db['drivers'] = db['kernel-drivers'].copy() with open(os.path.join(yamlpath, "drivers.yaml")) as f: - cf = yaml.load(f.read()) + cf = yaml.load(f.read(), Loader = Loader) db['drivers'].update(cf['drivers'].copy()) for key, d in db['drivers'].items(): d['id'] = key @@ -158,7 +162,7 @@ configs = {} for path in glob.glob(configdir + '/*.conf'): with open(path) as f: - cf = yaml.load(f.read()) + cf = yaml.load(f.read(), Loader = Loader) configs[cf['config']['id']] = cf['config'] db['configs'] = configs self.db = db diff -Nru lirc-0.10.1/python-pkg/lirc/paths.py lirc-0.10.2/python-pkg/lirc/paths.py --- lirc-0.10.1/python-pkg/lirc/paths.py 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/python-pkg/lirc/paths.py 2022-09-25 10:03:39.000000000 +0000 @@ -19,7 +19,7 @@ # development tree Makefile.am creates lib/libs/_client.so # after 'make install'; plain 'make' isn't enough. os.symlink(os.path.join('..', 'lib', '.libs', '_client.so'), - os.path.join(HERE, '_client.so')) + os.path.join(HERE, '_client.so')) else: # 'python setup.py' artifact: SRC = glob.glob(os.path.join( diff -Nru lirc-0.10.1/python-pkg/setup.py lirc-0.10.2/python-pkg/setup.py --- lirc-0.10.1/python-pkg/setup.py 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/python-pkg/setup.py 2022-09-25 10:03:39.000000000 +0000 @@ -6,14 +6,11 @@ import os.path import os -try: - import lirc.config - VERSION = lirc.config.VERSION.replace('-devel','') -except ImportError: - VERSION='0.0.0' - from setuptools import setup, Extension +exec(open("lirc/config.py").read()) +VERSION = VERSION.replace('-devel','') + if 'CFLAGS' in os.environ: cflags = os.environ['CFLAGS'].split() if 'LDFLAGS' in os.environ: diff -Nru lirc-0.10.1/python-pkg/tests/test_client.py lirc-0.10.2/python-pkg/tests/test_client.py --- lirc-0.10.1/python-pkg/tests/test_client.py 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/python-pkg/tests/test_client.py 2022-09-25 10:03:39.000000000 +0000 @@ -17,6 +17,10 @@ from lirc import AsyncConnection import lirc +import signal +from contextlib import contextmanager, suppress +from concurrent.futures import TimeoutError + _PACKET_ONE = '0123456789abcdef 00 KEY_1 mceusb' _LINE_0 = '0123456789abcdef 00 KEY_1 mceusb' _SOCKET = 'lircd.socket' @@ -26,6 +30,43 @@ .decode('ascii').strip() +class TimeoutException(Exception): + pass + +@contextmanager +def event_loop(suppress=[]): + + if isinstance(suppress, type) and issubclass(suppress, Exception): + suppress = [suppress] + elif isinstance(suppress, list): + for ex_type in suppress: + if not isinstance(ex_type, type) or not issubclass(ex_type, Exception): + raise ValueError('suppress is not an array of exception types') + else: + raise ValueError('suppress is not an exception type') + + ex = [] + def exception_handler(loop, context): + nonlocal ex + nonlocal suppress + for ex_type in suppress: + if isinstance(context['exception'], ex_type): + return + ex.append(context['exception']) + + loop = asyncio.get_event_loop() + if loop.is_closed(): + loop = asyncio.new_event_loop() + asyncio.set_event_loop(loop) + loop.set_exception_handler(exception_handler) + + try: + yield loop + finally: + loop.close() + if len(ex): + raise Exception('Unhandled exceptions in async code') from ex[0] + def _wait_for_socket(): ''' Wait until the ncat process has setup the lircd.socket dummy. ''' i = 0 @@ -39,6 +80,29 @@ class ReceiveTests(unittest.TestCase): ''' Test various Connections. ''' + @contextmanager + def assertCompletedBeforeTimeout(self, timeout): + + triggered = False + + def handle_timeout(signum, frame): + nonlocal triggered + triggered = True + for task in asyncio.Task.all_tasks(): + task.cancel() + raise TimeoutException() + + try: + signal.signal(signal.SIGALRM, handle_timeout) + signal.alarm(timeout) + with suppress(TimeoutException, asyncio.CancelledError): + yield + finally: + signal.signal(signal.SIGALRM, signal.SIG_DFL) + signal.alarm(0) + if triggered: + raise self.failureException('Code block did not complete before the {} seconds timeout'.format(timeout)) from None + def testReceiveOneRawLine(self): ''' Receive a single, raw line. ''' @@ -88,7 +152,7 @@ def testReceive1AsyncLines(self): ''' Receive 1000 lines using the async interface. ''' - async def get_lines(raw_conn, count): + async def get_lines(raw_conn, count, loop): nonlocal lines async with AsyncConnection(raw_conn, loop) as conn: @@ -106,12 +170,11 @@ stdout = subprocess.PIPE, stderr = subprocess.STDOUT) as child: _wait_for_socket() - loop = asyncio.get_event_loop() with LircdConnection('foo', socket_path=_SOCKET, lircrc_path='lircrc.conf') as conn: - loop.run_until_complete(get_lines(conn, 1000)) - loop.close() + with event_loop() as loop: + loop.run_until_complete(get_lines(conn, 1000, loop)) self.assertEqual(len(lines), 1000) self.assertEqual(lines[0], 'foo-cmd') @@ -130,6 +193,80 @@ lircrc_path='lircrc.conf') as conn: self.assertRaises(lirc.TimeoutException, conn.readline, 0.1) + def testReceiveDisconnect(self): + ''' Generate a ConnectionResetError if connection is lost ''' + + if os.path.exists(_SOCKET): + os.unlink(_SOCKET) + cmd = [_SOCAT, 'UNIX-LISTEN:' + _SOCKET, 'EXEC:"sleep 1"'] + with subprocess.Popen(cmd) as child: + _wait_for_socket() + with LircdConnection('foo', + socket_path=_SOCKET, + lircrc_path='lircrc.conf') as conn: + with self.assertRaises(ConnectionResetError): + with self.assertCompletedBeforeTimeout(3): + conn.readline(2) + + def testReceiveAsyncDisconnectDontBlock(self): + ''' Do not block the loop if connection is lost ''' + + async def readline(raw_conn): + async with AsyncConnection(raw_conn, loop) as conn: + return await conn.readline() + + if os.path.exists(_SOCKET): + os.unlink(_SOCKET) + cmd = [_SOCAT, 'UNIX-LISTEN:' + _SOCKET, 'EXEC:"sleep 1"'] + with subprocess.Popen(cmd) as child: + _wait_for_socket() + with LircdConnection('foo', + socket_path=_SOCKET, + lircrc_path='lircrc.conf') as conn: + with event_loop(suppress=[ConnectionResetError, TimeoutException]) as loop: + with self.assertCompletedBeforeTimeout(3): + with suppress(TimeoutError, ConnectionResetError): + loop.run_until_complete(asyncio.wait_for(readline(conn), 2)) + + def testReceiveAsyncExceptionReraises(self): + ''' Async readline should reraise if an exception occurs during select loop ''' + + async def readline(raw_conn): + async with AsyncConnection(raw_conn, loop) as conn: + return await conn.readline() + + if os.path.exists(_SOCKET): + os.unlink(_SOCKET) + cmd = [_SOCAT, 'UNIX-LISTEN:' + _SOCKET, 'EXEC:"sleep 1"'] + with subprocess.Popen(cmd) as child: + _wait_for_socket() + with LircdConnection('foo', + socket_path=_SOCKET, + lircrc_path='lircrc.conf') as conn: + with event_loop(suppress=[ConnectionResetError, TimeoutException]) as loop: + with self.assertCompletedBeforeTimeout(2): + with self.assertRaises(ConnectionResetError): + loop.run_until_complete(readline(conn)) + + def testReceiveAsyncExceptionEndsIterator(self): + ''' Async iterator should stop if an exception occurs in the select loop ''' + + async def get_lines(raw_conn): + async with AsyncConnection(raw_conn, loop) as conn: + async for keypress in conn: + pass + + if os.path.exists(_SOCKET): + os.unlink(_SOCKET) + cmd = [_SOCAT, 'UNIX-LISTEN:' + _SOCKET, 'EXEC:"sleep 1"'] + with subprocess.Popen(cmd) as child: + _wait_for_socket() + with LircdConnection('foo', + socket_path=_SOCKET, + lircrc_path='lircrc.conf') as conn: + with event_loop(suppress=[ConnectionResetError, TimeoutException]) as loop: + with self.assertCompletedBeforeTimeout(2): + self.assertIsNone(loop.run_until_complete(get_lines(conn))) class CommandTests(unittest.TestCase): ''' Test Command, Reply, ReplyParser and some Commands samples. ''' diff -Nru lirc-0.10.1/systemd/Makefile.in lirc-0.10.2/systemd/Makefile.in --- lirc-0.10.1/systemd/Makefile.in 2017-09-10 08:52:38.000000000 +0000 +++ lirc-0.10.2/systemd/Makefile.in 2022-10-04 08:02:31.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.5 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2021 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -168,6 +168,8 @@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ +CSCOPE = @CSCOPE@ +CTAGS = @CTAGS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ @@ -178,15 +180,16 @@ DEVINPUT_HEADER = @DEVINPUT_HEADER@ DLLTOOL = @DLLTOOL@ DOXYGEN = @DOXYGEN@ -DRIVER_FLAGS = @DRIVER_FLAGS@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ +ETAGS = @ETAGS@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ +FILECMD = @FILECMD@ FTDI_CFLAGS = @FTDI_CFLAGS@ FTDI_LIBS = @FTDI_LIBS@ GREP = @GREP@ @@ -209,7 +212,6 @@ LTLIBOBJS = @LTLIBOBJS@ LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAKEINFO = @MAKEINFO@ -MAN2HTML = @MAN2HTML@ MANIFEST_TOOL = @MANIFEST_TOOL@ MKDIR_P = @MKDIR_P@ MODINFO = @MODINFO@ @@ -242,6 +244,7 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ SED = @SED@ +SETUPTOOLS_ENV = @SETUPTOOLS_ENV@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SH_PATH = @SH_PATH@ @@ -291,7 +294,6 @@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ -kernel_header_flags = @kernel_header_flags@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ @@ -345,8 +347,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -390,8 +392,10 @@ cscope cscopelist: +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am -distdir: $(DISTFILES) +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru lirc-0.10.1/systemd/lircd.service lirc-0.10.2/systemd/lircd.service --- lirc-0.10.1/systemd/lircd.service 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/systemd/lircd.service 2022-09-25 10:03:39.000000000 +0000 @@ -6,7 +6,8 @@ After=network.target lircd-setup.service [Service] -Type=simple +Type=notify +RuntimeDirectory=lirc ExecStart=/usr/sbin/lircd --nodaemon ; User=lirc ; Group=lirc diff -Nru lirc-0.10.1/tools/Makefile.am lirc-0.10.2/tools/Makefile.am --- lirc-0.10.1/tools/Makefile.am 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/tools/Makefile.am 2022-09-25 10:03:39.000000000 +0000 @@ -5,7 +5,7 @@ include ../pylint.mak AM_CPPFLAGS = -I$(top_builddir)/lib -I$(top_builddir) -I$(top_srcdir)/lib \ - @X_CFLAGS@ @kernel_header_flags@ + -I$(top_srcdir)/include @X_CFLAGS@ AM_CPPFLAGS += -g -Wall -Wp,-D_FORTIFY_SOURCE=2 AM_LDFLAGS = -L../lib -llirc -llirc_client @@ -77,7 +77,7 @@ dist_bin_SCRIPTS += lirc-make-devinput endif -dist_bin_SCRIPTS += pronto2lirc irdb-get irtext2udp +dist_bin_SCRIPTS += pronto2lirc irdb-get irtext2udp lirc-postinstall dist_sbin_SCRIPTS = lircd-setup dist_noinst_SCRIPTS = make_rel_symlink.py check_configs.py @@ -105,6 +105,7 @@ irdb-get \ irtext2udp \ lirc-init-db \ + lirc-postinstall \ pronto2lirc cd $(DESTDIR)$(sbindir); \ $(SED) -i '\|^#!/usr/bin/env|s|python3|$(PYTHON)|' lircd-setup diff -Nru lirc-0.10.1/tools/Makefile.in lirc-0.10.2/tools/Makefile.in --- lirc-0.10.1/tools/Makefile.in 2017-09-10 08:52:38.000000000 +0000 +++ lirc-0.10.2/tools/Makefile.in 2022-10-04 08:02:31.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.5 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2021 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -173,7 +173,8 @@ xmode2_OBJECTS = $(am_xmode2_OBJECTS) xmode2_DEPENDENCIES = $(LIRC_LIBS) am__dist_bin_SCRIPTS_DIST = lirc-config-tool lirc-init-db \ - lirc-make-devinput pronto2lirc irdb-get irtext2udp + lirc-make-devinput pronto2lirc irdb-get irtext2udp \ + lirc-postinstall am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ @@ -217,7 +218,15 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/ircat.Po ./$(DEPDIR)/irexec.Po \ + ./$(DEPDIR)/irpipe-irpipe.Po ./$(DEPDIR)/irpty.Po \ + ./$(DEPDIR)/irrecord-ui.Po ./$(DEPDIR)/irsend.Po \ + ./$(DEPDIR)/irsimreceive.Po ./$(DEPDIR)/irsimsend.Po \ + ./$(DEPDIR)/irtestcase.Po ./$(DEPDIR)/irw.Po \ + ./$(DEPDIR)/irxevent.Po ./$(DEPDIR)/lirc-lsplugins.Po \ + ./$(DEPDIR)/lirc-lsremotes.Po ./$(DEPDIR)/mode2.Po \ + ./$(DEPDIR)/xmode2.Po am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -256,7 +265,7 @@ esac am__py_compile = PYTHON=$(PYTHON) $(SHELL) $(py_compile) am__pep3147_tweak = \ - sed -e 's|\.py$$||' -e 's|[^/]*$$|__pycache__/&.*.py|' + sed -e 's|\.py$$||' -e 's|[^/]*$$|__pycache__/&.*.pyc __pycache__/&.*.pyo|' py_compile = $(top_srcdir)/py-compile DATA = $(dist_setup_DATA) am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) @@ -276,8 +285,6 @@ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | $(am__uniquify_input)` -ETAGS = etags -CTAGS = ctags am__DIST_COMMON = $(srcdir)/../pylint.mak $(srcdir)/Makefile.in \ $(top_srcdir)/depcomp $(top_srcdir)/py-compile DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) @@ -294,6 +301,8 @@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ +CSCOPE = @CSCOPE@ +CTAGS = @CTAGS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ @@ -304,15 +313,16 @@ DEVINPUT_HEADER = @DEVINPUT_HEADER@ DLLTOOL = @DLLTOOL@ DOXYGEN = @DOXYGEN@ -DRIVER_FLAGS = @DRIVER_FLAGS@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ +ETAGS = @ETAGS@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ +FILECMD = @FILECMD@ FTDI_CFLAGS = @FTDI_CFLAGS@ FTDI_LIBS = @FTDI_LIBS@ GREP = @GREP@ @@ -335,7 +345,6 @@ LTLIBOBJS = @LTLIBOBJS@ LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAKEINFO = @MAKEINFO@ -MAN2HTML = @MAN2HTML@ MANIFEST_TOOL = @MANIFEST_TOOL@ MKDIR_P = @MKDIR_P@ MODINFO = @MODINFO@ @@ -368,6 +377,7 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ SED = @SED@ +SETUPTOOLS_ENV = @SETUPTOOLS_ENV@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SH_PATH = @SH_PATH@ @@ -417,7 +427,6 @@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ -kernel_header_flags = @kernel_header_flags@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ @@ -452,8 +461,8 @@ PYLINT = python3-pylint pylint_template = {path}:{line}: [{msg_id}({symbol}), {obj}] {msg} AM_CPPFLAGS = -I$(top_builddir)/lib -I$(top_builddir) \ - -I$(top_srcdir)/lib @X_CFLAGS@ @kernel_header_flags@ -g -Wall \ - -Wp,-D_FORTIFY_SOURCE=2 + -I$(top_srcdir)/lib -I$(top_srcdir)/include @X_CFLAGS@ -g \ + -Wall -Wp,-D_FORTIFY_SOURCE=2 AM_LDFLAGS = -L../lib -llirc -llirc_client CLEANFILES = .pylint-stamp LIRC_LIBS = ../lib/liblirc.la ../lib/liblirc_client.la @@ -493,7 +502,7 @@ $(LIRC_LIBS) dist_bin_SCRIPTS = lirc-config-tool lirc-init-db $(am__append_3) \ - pronto2lirc irdb-get irtext2udp + pronto2lirc irdb-get irtext2udp lirc-postinstall dist_sbin_SCRIPTS = lircd-setup dist_noinst_SCRIPTS = make_rel_symlink.py check_configs.py libpython = $(libdir)/python$(PYTHON_VERSION) @@ -531,8 +540,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(srcdir)/../pylint.mak $(am__empty): @@ -814,21 +823,27 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ircat.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/irexec.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/irpipe-irpipe.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/irpty.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/irrecord-ui.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/irsend.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/irsimreceive.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/irsimsend.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/irtestcase.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/irw.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/irxevent.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lirc-lsplugins.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lirc-lsremotes.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mode2.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xmode2.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ircat.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/irexec.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/irpipe-irpipe.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/irpty.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/irrecord-ui.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/irsend.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/irsimreceive.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/irsimsend.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/irtestcase.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/irw.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/irxevent.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lirc-lsplugins.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lirc-lsremotes.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mode2.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xmode2.Po@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\ @@ -906,20 +921,15 @@ dir='$(DESTDIR)$(setupdir)'; \ pyc_files=`echo "$$py_files" | sed 's|$$|c|'`; \ pyo_files=`echo "$$py_files" | sed 's|$$|o|'`; \ - py_files_pep3147=`echo "$$py_files" | $(am__pep3147_tweak)`; \ - echo "$$py_files_pep3147";\ - pyc_files_pep3147=`echo "$$py_files_pep3147" | sed 's|$$|c|'`; \ - pyo_files_pep3147=`echo "$$py_files_pep3147" | sed 's|$$|o|'`; \ st=0; \ - for files in \ - "$$py_files" \ - "$$pyc_files" \ - "$$pyo_files" \ - "$$pyc_files_pep3147" \ - "$$pyo_files_pep3147" \ - ; do \ + for files in "$$py_files" "$$pyc_files" "$$pyo_files"; do \ $(am__uninstall_files_from_dir) || st=$$?; \ done; \ + dir='$(DESTDIR)$(setupdir)'; \ + echo "$$py_files" | $(am__pep3147_tweak) | $(am__base_list) | \ + while read files; do \ + $(am__uninstall_files_from_dir) || st=$$?; \ + done || exit $$?; \ exit $$st install-dist_setupDATA: $(dist_setup_DATA) @$(NORMAL_INSTALL) @@ -994,8 +1004,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am -distdir: $(DISTFILES) +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -1069,7 +1081,21 @@ clean-sbinPROGRAMS mostlyclean-am distclean: distclean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/ircat.Po + -rm -f ./$(DEPDIR)/irexec.Po + -rm -f ./$(DEPDIR)/irpipe-irpipe.Po + -rm -f ./$(DEPDIR)/irpty.Po + -rm -f ./$(DEPDIR)/irrecord-ui.Po + -rm -f ./$(DEPDIR)/irsend.Po + -rm -f ./$(DEPDIR)/irsimreceive.Po + -rm -f ./$(DEPDIR)/irsimsend.Po + -rm -f ./$(DEPDIR)/irtestcase.Po + -rm -f ./$(DEPDIR)/irw.Po + -rm -f ./$(DEPDIR)/irxevent.Po + -rm -f ./$(DEPDIR)/lirc-lsplugins.Po + -rm -f ./$(DEPDIR)/lirc-lsremotes.Po + -rm -f ./$(DEPDIR)/mode2.Po + -rm -f ./$(DEPDIR)/xmode2.Po -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -1119,7 +1145,21 @@ installcheck-am: maintainer-clean: maintainer-clean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/ircat.Po + -rm -f ./$(DEPDIR)/irexec.Po + -rm -f ./$(DEPDIR)/irpipe-irpipe.Po + -rm -f ./$(DEPDIR)/irpty.Po + -rm -f ./$(DEPDIR)/irrecord-ui.Po + -rm -f ./$(DEPDIR)/irsend.Po + -rm -f ./$(DEPDIR)/irsimreceive.Po + -rm -f ./$(DEPDIR)/irsimsend.Po + -rm -f ./$(DEPDIR)/irtestcase.Po + -rm -f ./$(DEPDIR)/irw.Po + -rm -f ./$(DEPDIR)/irxevent.Po + -rm -f ./$(DEPDIR)/lirc-lsplugins.Po + -rm -f ./$(DEPDIR)/lirc-lsremotes.Po + -rm -f ./$(DEPDIR)/mode2.Po + -rm -f ./$(DEPDIR)/xmode2.Po -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -1145,7 +1185,7 @@ .MAKE: install-am install-data-am install-exec-am install-strip \ uninstall-am -.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean \ +.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \ clean-binPROGRAMS clean-generic clean-libtool clean-local \ clean-sbinPROGRAMS cscopelist-am ctags ctags-am distclean \ distclean-compile distclean-generic distclean-libtool \ @@ -1178,6 +1218,7 @@ irdb-get \ irtext2udp \ lirc-init-db \ + lirc-postinstall \ pronto2lirc cd $(DESTDIR)$(sbindir); \ $(SED) -i '\|^#!/usr/bin/env|s|python3|$(PYTHON)|' lircd-setup diff -Nru lirc-0.10.1/tools/check_configs.py lirc-0.10.2/tools/check_configs.py --- lirc-0.10.1/tools/check_configs.py 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/tools/check_configs.py 2022-09-25 10:03:39.000000000 +0000 @@ -4,12 +4,16 @@ import glob import yaml +try: + from yaml import CLoader as Loader, CDumper as Dumper +except ImportError: + from yaml import Loader, Dumper def main(): configs = {} for path in glob.glob('*.conf'): with open(path) as f: - cf = yaml.load(f.read()) + cf = yaml.load(f.read(), Loader = Loader) if cf['config']['id'] + '.conf' != path: print( "Id: %s, path: %s" % (cf['config']['id'], path)) configs[cf['config']['id']] = cf['config'] diff -Nru lirc-0.10.1/tools/irdb-get lirc-0.10.2/tools/irdb-get --- lirc-0.10.1/tools/irdb-get 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/tools/irdb-get 2022-09-25 10:03:40.000000000 +0000 @@ -25,6 +25,11 @@ REMOTE_CODEBASE = \ "https://sourceforge.net/p/lirc-remotes/code/ci/master/tree" +if 'LIRC_IRDB_CACHE_ID' in os.environ: + CACHE_ID = os.environ['LIRC_IRDB_CACHE_ID'] +else: + CACHE_ID = time.ctime() + if 'LIRC_REMOTES_LIST' in os.environ: REMOTES_LIST_URL = os.environ['LIRC_REMOTES_LIST'] else: @@ -193,7 +198,7 @@ lircmd_by_driver[driver].append("%s/%s" % (tokens[0], tokens[2])) print("#") - print("# Created by 'irdb-get yaml-config' at " + time.ctime()) + print("# Created by 'irdb-get yaml-config' as of " + CACHE_ID) print("#") print("\nlircd_by_driver:") print_yaml_dict(lircd_by_driver) diff -Nru lirc-0.10.1/tools/irexec.cpp lirc-0.10.2/tools/irexec.cpp --- lirc-0.10.1/tools/irexec.cpp 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/tools/irexec.cpp 2022-09-25 10:03:40.000000000 +0000 @@ -82,9 +82,10 @@ NULL }; execvp(SH_PATH, vp); - /* not reached */ + /* not reached, unless there was an error */ log_perror_err("execvp failed"); fputs("execvp failed\n", stderr); + exit(EXIT_FAILURE); } else { waitpid(pid2, NULL, WNOHANG); exit(0); diff -Nru lirc-0.10.1/tools/irpipe.cpp lirc-0.10.2/tools/irpipe.cpp --- lirc-0.10.1/tools/irpipe.cpp 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/tools/irpipe.cpp 2022-09-25 10:03:40.000000000 +0000 @@ -13,11 +13,7 @@ #include #include -#ifdef HAVE_KERNEL_LIRC_H -#include -#else #include "media/lirc.h" -#endif #include "irpipe.h" diff -Nru lirc-0.10.1/tools/irrecord-ui.cpp lirc-0.10.2/tools/irrecord-ui.cpp --- lirc-0.10.1/tools/irrecord-ui.cpp 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/tools/irrecord-ui.cpp 2022-09-25 10:03:40.000000000 +0000 @@ -900,7 +900,6 @@ if (is_rc5(remote)) printf("RC5 encoding\n"); else if (is_rc6(remote)) printf("RC6 encoding\n"); else if (is_rcmm(remote)) printf("RCMM encoding\n"); - else if (is_goldstar(remote)) printf("GOLDSTAR encoding\n"); else if (is_grundig(remote)) printf("GRUNDIG encoding\n"); else if (is_bo(remote)) printf("Bang & Olufsen encoding\n"); else printf("Unknown encoding\n"); diff -Nru lirc-0.10.1/tools/lirc-lsplugins.cpp lirc-0.10.2/tools/lirc-lsplugins.cpp --- lirc-0.10.1/tools/lirc-lsplugins.cpp 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/tools/lirc-lsplugins.cpp 2022-09-25 10:03:40.000000000 +0000 @@ -57,8 +57,7 @@ "# c: LIRC_CAN_SET_SEND_CARRIER\n" \ "# d: LIRC_CAN_SET_SEND_DUTY_CYCLE\n" \ "# t: LIRC_CAN_SET_TRANSMITTER_MASK\n" \ - "# C: LIRC_CAN_MEASURE_CARRIER\n" \ - "# D: LIRC_CAN_NOTIFY_DECODE\n" + "# C: LIRC_CAN_MEASURE_CARRIER\n" const struct option options[] = { { "plugindir", required_argument, NULL, 'U' }, @@ -291,7 +290,7 @@ char buff[256]; snprintf(buff, sizeof(buff), - "%c%c%c%c%c%c%c%c%c%c%c%c%c ", + "%c%c%c%c%c%c%c%c%c%c%c%c ", get(LIRC_CAN_SEND_RAW, 'R', hw), get(LIRC_CAN_SEND_PULSE, 'P', hw), get(LIRC_CAN_SEND_MODE2, 'M', hw), @@ -303,8 +302,7 @@ get(LIRC_CAN_SET_SEND_CARRIER, 'c', hw), get(LIRC_CAN_SET_SEND_DUTY_CYCLE, 'd', hw), get(LIRC_CAN_SET_TRANSMITTER_MASK, 't', hw), - get(LIRC_CAN_MEASURE_CARRIER, 'C', hw), - get(LIRC_CAN_NOTIFY_DECODE, 'D', hw) + get(LIRC_CAN_MEASURE_CARRIER, 'C', hw) ); line->features = strdup(buff); } diff -Nru lirc-0.10.1/tools/lirc-make-devinput lirc-0.10.2/tools/lirc-make-devinput --- lirc-0.10.1/tools/lirc-make-devinput 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/tools/lirc-make-devinput 2022-09-25 10:03:40.000000000 +0000 @@ -61,8 +61,7 @@ fi -echo "# Generated by $(basename $0) on $(uname -r)" -echo "# Date: $(date)" +echo "# Generated by $(basename $0)" cat < drivers.yaml + +if ping -c 1 sourceforge.net &> /dev/null; then + XDG_CACHE_HOME=$DATADIR irdb-get update +fi +XDG_CACHE_HOME=$DATADIR irdb-get yaml-config > confs_by_driver.yaml + +readonly TOOLDOCDIR="$DATADIR/lirc/doc" +readonly DESTDOCDIR="$DATADIR/doc/lirc" +readonly PLUGINDOCS="$DATADIR/doc/lirc/plugindocs" +readonly PYTHON_PKG="$DATADIR/lirc/python-pkg/lirc" +readonly PYTHON_PATH="$PYTHON_PKG:$DATADIR/lirc/python-pkg" + +sed -e '/page.xsl"/s|=.*/>|="'$PLUGINDOCS'/page.xsl"/>|' \ + -e '/driver-toc.xsl"/s|=.*/>|="'$PLUGINDOCS'/driver-toc.xsl"/>|' \ + -i $TOOLDOCDIR/docpage.xsl + +for table in $DESTDOCDIR/html/table.html $DESTDOCDIR/lirc.org/html/table.html +do + PYTHONPATH="$PYTHON_PATH" $PYTHON $BINDIR/lirc-data2table $PWD $PWD \ + | xsltproc --html $TOOLDOCDIR/docpage.xsl - > $table +done + +make -C $PLUGINDOCS diff -Nru lirc-0.10.1/tools/lirc-setup/mvc_control.py lirc-0.10.2/tools/lirc-setup/mvc_control.py --- lirc-0.10.1/tools/lirc-setup/mvc_control.py 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/tools/lirc-setup/mvc_control.py 2022-09-25 10:03:40.000000000 +0000 @@ -10,6 +10,9 @@ import urllib.request # pylint: disable=no-name-in-module,F0401,E0611 import gi + +gi.require_version('Gtk', '3.0') + from gi.repository import Gtk # pylint: disable=no-name-in-module from gi.repository import GObject # pylint: disable=no-name-in-module @@ -18,8 +21,6 @@ import mvc_view import util -gi.require_version('Gtk', '3.0') - _DEBUG = 'LIRC_DEBUG' in os.environ _REMOTES_BASE_URI = "http://sf.net/p/lirc-remotes/code/ci/master/tree/remotes" _USAGE = "Usage: lirc-setup [results directory]" diff -Nru lirc-0.10.1/tools/lircd-setup lirc-0.10.2/tools/lircd-setup --- lirc-0.10.1/tools/lircd-setup 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/tools/lircd-setup 2022-09-25 10:03:40.000000000 +0000 @@ -34,7 +34,10 @@ else: sys.stderr.write(_HELP + '\n') sys.exit(1) - parser = configparser.SafeConfigParser() + if sys.version_info < (3, 2): + parser = configparser.SafeConfigParser() + else: + parser = configparser.ConfigParser() try: found = parser.read(path) except configparser.Error: diff -Nru lirc-0.10.1/tools/mode2.cpp lirc-0.10.2/tools/mode2.cpp --- lirc-0.10.1/tools/mode2.cpp 2017-09-10 08:52:19.000000000 +0000 +++ lirc-0.10.2/tools/mode2.cpp 2022-09-25 10:03:40.000000000 +0000 @@ -326,18 +326,41 @@ void print_mode2_data(unsigned int data) { static int bitno = 1; + static bool leading_space = true; + unsigned int msg = data & LIRC_MODE2_MASK; + unsigned int value = data & LIRC_VALUE_MASK; + + if (leading_space && msg == LIRC_MODE2_SPACE) { + return; + } else { + leading_space = (msg == LIRC_MODE2_TIMEOUT); + } switch (opt_dmode) { case 0: - printf("%s %u\n", ( - data & PULSE_BIT) ? "pulse" : "space", - (uint32_t)(data & PULSE_MASK)); + switch (msg) { + case LIRC_MODE2_PULSE: + printf("pulse %u\n", value); + break; + case LIRC_MODE2_SPACE: + printf("space %u\n", value); + break; + case LIRC_MODE2_TIMEOUT: + printf("timeout %u\n", value); + break; + case LIRC_MODE2_FREQUENCY: + printf("carrier %u\n", value); + break; + case LIRC_MODE2_OVERFLOW: + printf("overflow\n"); + break; + } break; case 1: { /* print output like irrecord raw config file data */ - printf(" %8u", (uint32_t)data & PULSE_MASK); + printf(" %8u", value); ++bitno; - if (data & PULSE_BIT) { + if (is_pulse(data)) { if ((bitno & 1) == 0) /* not in expected order */ fputs("-pulse", stdout); @@ -345,11 +368,11 @@ if (bitno & 1) /* not in expected order */ fputs("-space", stdout); - if (((data & PULSE_MASK) > opt_gap) || (bitno >= 6)) { + if ((value > opt_gap) || (bitno >= 6)) { /* real long space or more * than 6 codes, start new line */ puts(""); - if ((data & PULSE_MASK) > opt_gap) + if (value > opt_gap) puts(""); bitno = 0; } @@ -357,12 +380,12 @@ break; } case 2: - if ((data & PULSE_MASK) > opt_gap) { + if (value > opt_gap) { fputs("_\n\n_", stdout); } else { printf("%.*s", - ((data & PULSE_MASK) + t_div / 2) / t_div, - (data & PULSE_BIT) ? + (value + t_div / 2) / t_div, + is_pulse(data) ? "------------" : "____________"); } break;