summaryrefslogtreecommitdiff
path: root/configure.ac
AgeCommit message (Collapse)Author
2015-01-21Build files: remove extraneous dependencyEmmanuel Benoît
* configure.ac: use LT_LIBM to check for the maths library * src/accelerometer/Makefile.am: use $(LIBM) instead of -lm in the link flags This causes all executables (except accelerometer) and libraries to be linked without libm, which they do not need.
2014-11-16configure.ac: don't die on missing linux/btrfs.h, fixes issue #100Anthony G. Basile
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-10-31hashmap: rewrite the implementationMichal Schmidt
We reintroduce hashmap.{h,c}, list.h and set.h verbatim from upstream, before we punt dead code. The following is the upstream message: This is a rewrite of the hashmap implementation. Its advantage is lower memory usage. It uses open addressing (entries are stored in an array, as opposed to linked lists). Hash collisions are resolved with linear probing and Robin Hood displacement policy. See the references in hashmap.c. Some fun empirical findings about hashmap usage in systemd on my laptop: - 98 % of allocated hashmaps are Sets. - Sets contain 78 % of all entries, plain Hashmaps 17 %, and OrderedHashmaps 5 %. - 60 % of allocated hashmaps contain only 1 entry. - 90 % of allocated hashmaps contain 5 or fewer entries. - 75 % of all entries are in hashmaps that use trivial_hash_ops. Clearly it makes sense to: - store entries in distinct entry types. Especially for Sets - their entries are the most numerous and they require the least information to store an entry. - have a way to store small numbers of entries directly in the hashmap structs, and only allocate the usual entry arrays when the direct storage is full. The implementation has an optional debugging feature (enabled by defining the ENABLE_HASHMAP_DEBUG macro), where it: - tracks all allocated hashmaps in a linked list so that one can easily find them in gdb, - tracks which function/line allocated a given hashmap, and - checks for invalid mixing of hashmap iteration and modification. Since entries are not allocated one-by-one anymore, mempools are not used for entries. Originally I meant to drop mempools entirely, but it's still worth it to use them for the hashmap structs. My testing indicates that it makes loading of units about 5 % faster (a test with 10000 units where more than 200000 hashmaps are allocated - pure malloc: 449±4 ms, mempools: 427±7 ms). Here are some memory usage numbers, taken on my laptop with a more or less normal Fedora setup after booting with SELinux disabled (SELinux increases systemd's memory usage significantly): systemd (PID 1) Original New Change dirty memory (from pmap -x 1) [KiB] 2152 1264 -41 % total heap allocations (from gdb-heap) [KiB] 1623 756 -53 % Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-10-31util: make use of the new getrandom() syscall if it is available when ↵Lennart Poettering
needing entropy Doesn't require an fd, and could be a bit faster, so let's make use of it, if it is available. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-10-29configure.ac: bump 2.1.1 = upstream 217eudev/v2.1.1Anthony G. Basile
Release for bug fix on musl. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-10-28configure.ac: bump 2.1 = upstream 217eudev/v2.1Anthony G. Basile
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-09-15configure.ac: require automake 1.13Anthony G. Basile
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-09-13configure.ac: bump 2.0 = upstream 216Anthony G. Basile
Branch v2.X breaks from v1.X in that it removes the userland firmware loading support. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-09-13udev: remove userspace firmware loading supportKay Sievers
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-08-22configure.ac and src/libudev/Makefile.am: bump to 1.10 = upstream 216Anthony G. Basile
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-08-05src/shared: refactor shared codeAnthony G. Basile
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-08-05Include missing.h in udev-builtin-btrfs.c, and move BTRFS_IOC_DEVICES_READY ↵Anthony G. Basile
to missing.h This is a combination of upstream commits dced15575f7bf172e3c9d798c43477539525558c 7bed7f0e3b1f9596aedb64657e432e5b267adebb by Simon McVittie <simon.mcvittie@collabora.co.uk> 7bed7f0e3b1f9596aedb64657e432e5b267adebb Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-07-06configure.ac: bump to 1.9 = upstream 215eudev/v1.9Anthony G. Basile
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-06-24configure.ac: separate out rootlibdir and rootlibexecdirAnthony G. Basile
2014-06-24configure.ac: improve install paths for udevlibexecdir, udevkeymapdir, ↵Anthony G. Basile
udevkeymapforceredir, udevrulesdir
2014-06-19configure.ac: bump to 1.8 = upstream 214eudev/v1.8Anthony G. Basile
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-06-01configure.ac: bump to 1.7 = upstream 213eudev/v1.7Anthony G. Basile
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-05-15Remove unnecessary casts in printfsZbigniew Jedrzejewski-Szmek
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-05-13src/libudev/missing.h: clean up and fix build on uclibc and muslAnthony G. Basile
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-04-24udev: remove seqnum API and all assumptions about seqnumsKay Sievers
The way the kernel namespaces have been implemented breaks assumptions udev made regarding uevent sequence numbers. Creating devices in a namespace "steals" uevents and its sequence numbers from the host. It confuses the "udevadmin settle" logic, which might block until util a timeout is reached, even when no uevent is pending. Remove any assumptions about sequence numbers and deprecate libudev's API exposing these numbers; none of that can reliably be used anymore when namespaces are involved. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-04-03configure.ac: bring version numbers in line with upstreamAnthony G. Basile
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-03-22configure.ac: bump to 1.5.3eudev/v1.5.3Anthony G. Basile
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-03-20modified: configure.aclhb-jr
modified: man/Makefile.am Added checking for DocBook in configure
2014-03-09configure.ac: bump to version 1.5.2eudev/v1.5.2Anthony G. Basile
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-03-04configure.ac: bump to version 1.5.1eudev/v1.5.1Anthony G. Basile
2014-02-28configure.ac: bump to version 1.5eudev/v1.5Anthony G. Basile
2014-01-13src/udev: bring up to date with upstream.Anthony G. Basile
These commits were authored by Zbigniew Jędrzejewski-Szmek Tom Gundersen Kay Sievers Lennart Poettering Shawn Landden Daniel Buch Martin Pitt Karel Zak Yang Zhiyong Note: udev_builtin_net_setup_link has *not* been imported. Also still missing from udev-builtin is udev_builtin_uaccess. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2013-09-26configure.ac: add header check for mtd/mtd-user.hAnthony G. Basile
This addresses https://github.com/gentoo/eudev/issues/73 Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2013-09-14configure.ac: compat with upstream 207Anthony G. Basile
2013-09-10configure.ac: moving towards release 1.3Anthony G. Basile
2013-08-16configure.ac: remove check for mktimerofl0r
mktime is not used anywhere in the code, and the stock configure check for mktime invokes UB, so lets just remove it. closes #71
2013-08-02configure.ac: compatible with systemd 206Anthony G. Basile
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2013-07-31Revert "static-nodes: remove creation of static nodes if HAVE_LIBKMOD"Ian Stakenvicius
This reverts commit aa417a4d83999f6d7f092161d5c411b8cbce9977. Preface: The kmod+tmpfiles static dev-node creation requires two commands to be executed at runtime -- it is not something that will automatically occur without a system's setup being explicitly designed or changed so that these commands are executed. Preface2: In order for the kmod+tmpfiles static dev-node creation to work properly, that -must- be executed at startup before {systemd-,}udevd starts. The reason for this is because udevd will only set permissions on those files at startup, and so if udevd starts beforehand then these nodes will exist with permissions that are (probably) too restrictive. The function in udevd which creates static-nodes is non-fatal and only updates mtime on the devnodes if they already exist. As such, if a system is configured to execute kmod+tmpfiles to create static-nodes, because that must occur first, eudev's udevd will not conflict. Also, if a system does not execute kmod+tmpfiles, then eudev will still create the static devnodes, even if kmod-14 or higher is installed. There *may* be a conflict if kmod+tmpfiles is executed after udevd starts, but as per "preface2" this is not a supported configuration. Signed-off-by: Ian Stakenvicius <axs@gentoo.org>
2013-07-31static-nodes: remove creation of static nodes if HAVE_LIBKMODAnthony G. Basile
This address upstream commit edeb68c53f1cdc452016b4c8512586a70b1262e3 and https://bugs.gentoo.org/show_bug.cgi?id=477890. If eudev is configured with --enable-libkmod then we check for kmod >= 14 and ifdef out the code removed in the upstream commit. Otherwise we retain it for modutils. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2013-07-24Switch from external keymaps to internal (hwdb) keymapsIan Stakenvicius
This commit imports the new internal keyboard handling from upstream. This is a combination of many upstream commits, including those that added code, removed old code, and updated the hwdb. Some commits (hwdb ones specifically) were unrelated but brought in anyways to keep the whole hwdb consistent. Each upstream commit included is as follows: 9d7d42bc406a2ac04639674281ce3ff6beeda790 - internal keymap support 0c959b39175b126fdb70ae00de37ca6d9c8ca3a1 - hwdb: keyboard -- add file e8193554925a22b63bef0e77b8397b56d63a91ff - hwdb: keyboard -- update comments c79d894d590fc9df4861738555cc43c477e33376 - hwdb: import data aedc2eddd16e48d468e6ad0aea2caf00c7d37365 - hwdb: keyboard update 97a9313cafccf772ce03f5ebd36fe4d9d8412583 - hwdb: drop non-existant Samsung 900XC3 from keymap ddc77f62244bb41d5c8261517e2e1ff1b763fc94 - switch from udev keymaps to hwdb 0c3815773331b263713f4f7b9d80bc1ca159338e - also remove keymaps-force-release directory 1b6bce89b3383904d0dab619dd38bff673f7286e - keymap: re-add Logitech USB corded/cordless models bf89b99c5a39115112c2eda4c2103e2db54988d2 - 60-keyboard.hwdb: Fix syntax error ce39bb6909578017aa10031638e724e038f0b859 - hwdb: data update, upstream 884c86812c51479496edd50b278383d7bb67baf0 - rules: keyboard - use builtin command All code from each of the above commits is attributed to the original authors. There were some adjustments made in order to support the code differences between upstream and eudev, which was done by myself. Also of note is that the code can still be disabled via the --disable-keymaps configure option, which was removed from upstream. Signed-off-by: Ian Stakenvicius <axs@gentoo.org>
2013-07-11Version bump to 1.1Anthony G. Basile
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2013-06-09Version bump to 1.0, dropping _beta tageudev/v1.0Anthony G. Basile
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2013-06-04Remove libudev-legacyAnthony G. Basile
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2013-04-10Version bump to eudev-1_beta4eudev/v1_beta4Anthony G. Basile
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2013-04-09build-sys: fix HAVE/ENABLE_FIRMWAREKay Sievers
This fixes: https://github.com/gentoo/eudev/issues/55 https://bugs.freedesktop.org/show_bug.cgi?id=62864 Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2013-04-07src/udev/udev-event.c: restore code to allow rule generator to workAnthony G. Basile
This code was dropped while importing from upstream. It is needed to allow the legacy renaming of interfaces like eth* or wlan*. X-Eudev-Bug: 56 X-Eudev-Bug-URL: https://github.com/gentoo/eudev/issues/56 Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2013-04-05bump versions to eudev-1_beta3 and udev-200Ian Stakenvicius
2013-04-04Set rootprefix to be '${prefix}' if unsetIan Stakenvicius
Previously, rootprefix was set to the actual value of the default prefix, which caused issues when running 'make distcheck' since prefix is set to a non-standard value but rootprefix is unset. By assigning the variable rather than its contents, this should now be avoided.
2013-04-04set default prefix to /usr for necessary rootprefix default operationIan Stakenvicius
2013-04-04Removed hard-coded paths in rule-writer scriptsIan Stakenvicius
Both scripts had hard-coded paths to 'rule_generator.functions'; these were changed to be substituted in by configure so the paths will match where files are installed.øy Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2013-04-04Restored the rule generator bits from udev-171Ian Stakenvicius
This restores the rule generator scripts for the persistent network and optical device rule generator scripts that were removed after udev-171, and re-introduces their installation to the build system. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2013-04-02udev: make firmware loading optional and disable by defaultTom Gundersen
Distros that whish to support old kernels should set --with-firmware-dirs="/usr/lib/firmware/updates:/usr/lib/firmware" to retain the old behaviour. Signed-off-by: Anthony G. Basile <blueness@gentoo.org> Signed-off-by: Ian Stakenvicius <axs@gentoo.org>
2013-03-14Fix whitespace in various filesAnthony G. Basile
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2013-03-10Only check for gperf if --enable-keymapAnthony G. Basile
gperf is only used to generate some header file for src/keymap, and so we should only test for its existence if --enable-keymap is given. See: https://github.com/gentoo/eudev/issues/50 https://bugs.gentoo.org/show_bug.cgi?id=452760 Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2013-02-04Make udevlibexecdir be /libIan Stakenvicius
ie, fix another regression in our build system ; gentoo bug 455326 it's common for eg. mips systems to not have symlink from the directory {lib32 or lib64} to /lib. only the libraries belong to /$(get_libdir) and everything in /lib/udev goes to, well, /lib/udev, NOT /$(get_libdir)/udev -- ssuominen Signed-off-by: Ian Stakenvicius <axs@gentoo.org>