summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2012-12-12Changed --enable-split-usr to add hard-coded paths for rules etc in both / ↵Ian Stakenvicius
and /usr This is necessary because the code originally defined paths assuming UDEV_LIBEXECDIR was /usr prefixed, and also that udevrulesdir was located in /etc. Since (1) both of these defaults have changed, and (2) they could be set to more or less anything, we want to ensure that there is support for the standard paths as well, irrespective of what UDEV_LIBEXECDIR and UDEV_RULES_DIR are set to. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2012-12-08Add fallback path when accept4() is not available.Richard Yao
Commit ff2c503df091e6e4e9ab48cdb6df6ec8b7b525d0 introduced accept4() into udev, which broke compatibility with kernels older than Linux 2.6.32 (or Linux 2.6.36 on ARM). The purpose of accept4() is to permit O_NONBLOCK and O_CLOEXEC to be specified at the accept() call site while previously, they had to be set using fcntl() because Linux does not inherit them. Since accept4() increases the minimum kernel version, we add a fallback path for situations in which it is unavailable. Reported-by: Stephen Klimaszewski <steev@gentoo.org> Signed-off-by: Richard Yao <ryao@gentoo.org>
2012-12-02Use udev version instead of eudev version for compatibilityRichard Yao
The use of the eudev version in pkgconfig files caused build failures, so we switch to the udev version for compatibility purposes. Resolves gentoo/eudev#22 Signed-off-by: Richard Yao <ryao@gentoo.org>
2012-12-01Add & Update include paths to gudev/Makefile.amNick Vinson
libgudev-1.0.la and gudev-1.0.gir fail to build because GCC cannot find the needed header files (e.g. gudevenumtypes.h). To fix this, the include path $(top_buildir)/src was added and 'gdev' was replaced with 'gudev' in all relevant include paths.
2012-12-01Include config.h in src/libudev/Makefile.am to provide needed #define'sAnthony G. Basile
This commit provides needed #define's that provide structures that are found at configure time. It also reverts commit 91ce21b2d7978837b233e152ac63863a910eaf21 to avoid redefinitions of _GNU_SOURCE. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2012-12-01Put libudev.so under ${prefix} so tools in rootprefix don't link to itIan Stakenvicius
This is a combination of commits: bc7e89950323f635196c3c8eeebbe77af4307967 cde38f304f1cba616dfad4eb2608e8ec1a163f61 Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2012-12-01Put symbol versioning back, ensured libudev.sym is distributedIan Stakenvicius
This is a combination of commits 67fd630e5fadeed8e0e96d396a9ebdc5f677fe98 f3666f76d5bf08572e001d1cee37e142b1a1be8f Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2012-12-01Fix glibc-isms with #define _GNU_SOURCEIan Stakenvicius
This is a combination of commits c9485bf12eafad22dbe316ccbf3a9506d4cace66 abd4a3a3bf5851f07cac6665f35c8b92279c4a47 Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2012-12-01Moved files to libudev that once were in upstream libsystemd-sharedIan Stakenvicius
2012-12-01drop ACL support, udev-acl is in consolekit upstreamIan Stakenvicius
2012-11-26Add $(BUILT_SOURCES) to src/keymap/Makefile.am's CLEANFILES variable.Nick Vinson
When run, 'make distcheck' verifies that no files remain in the build directory. However, 'make distcheck' does not automatically delete $(BUILT_SOURCES) by default which causes this check to fail. Adding $(BUILT_SOURCS) to CLEANFILES corrects this behavior. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2012-11-26adjusted libudev.pc.in to use the correct libdir (rootlibdir)Ian Stakenvicius
2012-11-26changed install path for libudev to 'rootlibdir' instead of 'libdir'Ian Stakenvicius
2012-11-25Fix up building gudev and introspection under make distcheckAnthony G. Basile
This commit makes sure that src/gudev/gudevprivate.h is included in the distribution, fixing a failure in building gudev with `make distcheck`. There's also some code cleanup and migration of all configurable paths to the main configure.ac file. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2012-11-25Fix compilation of gudev and introspectionAnthony G. Basile
This commit the related issues of building gudev with/out introspection. It draws on suggestions from nvinson in https://github.com/gentoo/eudev/pull/20 Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2012-11-25Fixes the contents of udev.pcAnthony G. Basile
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2012-11-24Fix paths: test/udev-test.pl now works under sudo make distcheckAnthony G. Basile
We move the test-udev.c and test-libudev.c from src/test to test. This corrects the a problem with hard coded relative paths finding the test/test/sys directory created by test/udev-test.pl. This commit draws heavily from nvinson patch in https://github.com/gentoo/eudev/pull/20 Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2012-11-23Propagation of configured installation paths to Makefile.am and .c codeAnthony G. Basile
This commit is a continuation of the previous one in which all the configured paths obtained in configure.ac are propagated to the Makefile.am and .c files via AM_CPPFLAGS of the form -DUDEV_CONF_FILE=\"$(udevconffile)\". This should address the issue in https://github.com/gentoo/eudev/issues/17 Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2012-11-23Consolidate configuration of all installation paths into configure.acAnthony G. Basile
The configuration of the installation paths for various components was scattered between the main configure.ac file and the various Makefile.am's. These components are: udev config file, hwdb, keymaps and force-release keymaps and the rules. This commit consolidates them all into one point in configure.ac and anticipates the inclusion of new AM_CPPFLAGS of the form -DHWDB_BIN=@udevhwdbdir@ as upstream has done, so it is easier to address issues like: https://github.com/gentoo/eudev/issues/17 Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2012-11-23Fix build failure with --enable-gudevRichard Yao
The directory containing libudev.h was absent from search paths provided to the preprocessor. Signed-off-by: Richard Yao <ryao@gentoo.org>
2012-11-23Permit users to disable module loading supportRichard Yao
Inspired by e30431623a7d871da123cc37055ac49abf2c20ea from systemd. Signed-off-by: Richard Yao <ryao@gentoo.org>
2012-11-23Use libkmod only when requestedRichard Yao
We support module loading through modprobe when libkmod is neither available nor wanted. Signed-off-by: Richard Yao <ryao@gentoo.org>
2012-11-23Reintroduce blkid-kmodRichard Yao
This opens the door to using disabling the use of kmod from autotools. Signed-off-by: Richard Yao <ryao@gentoo.org>
2012-11-22Introduce execute_commandRichard Yao
This is useful in situations where we do not have builtins avaiable. Signed-off-by: Richard Yao <ryao@gentoo.org>
2012-11-22Fix keymap test during make distcheckAnthony G. Basile
The keys/keymap test preformed by src/keymap/check-keymaps.sh must find both keys.txt and the keymap directory. When building out of the source tree, eg when doing `make distcheck`, these are located at ${top_builddir}/src/keymap/keys.txt and ${top_srcdir}/keymap/, respectively. This patch fixes the build so that these are now correctly found. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2012-11-22Make udevlibexecdir be substituted out of configure and assigned ↵Ian Stakenvicius
${rootlibdir}/udev instead of ${root}/lib/udev
2012-11-20udev: allow helpers to be in /lib/udevEgor Y. Egorov
Signed-off-by: Richard Yao <ryao@gentoo.org>
2012-11-20udev: add /lib/udev/rules.d to rules directoriesMichał Górny
This adds /lib if split-usr is enabled to the directories where udev searches for rules.d. This is needed if split-usr is enabled because some software still installs rules in /lib/udev/rules.d. Signed-off-by: Richard Yao <ryao@gentoo.org>
2012-11-20Fix NULL pointer deference in udev_hwdb_get_properties_list_entryFelipe Contreras
It is possible for udev_hwdb_get_properties_list_entry to be invoked during udevd initialization before hwdb has been initialized. We workaround that for now by introducing a check to handle that. Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> Commit-message-by: Richard Yao <ryao@gentoo.org>
2012-11-20Reintroduce keymaps build and testAnthony G. Basile
This commit reintroduces code to 1) build src/keymap 2) test keymap/Makefile.am that it has all the key maps listed 3) test that all the key names in keymap/* are in <linux/input.h> 4) do a syntax check on rules/*.rules which now includes 95-keymap.rules and 95-keyboard-force-release.rules For #4, the regex expressions in rule-syntax-check.py had to be updated. They do not allow trailing comments via # comment, and I did not include that. A rule in 95-keymap.rules had to have its comment moved from the end to another line. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2012-11-19Reintroduce blkid-builtinRichard Yao
The build failure that prompted its removal has been resolved. Signed-off-by: Richard Yao <ryao@gentoo.org>
2012-11-19Check for unshare on the configure and provide an inline replacement when ↵klondike
not available
2012-11-18Add missing #include <sys/syscall.h>Richard Yao
A last minute change to commit 189d09a42e054bebd91ea9690fede33b41996260 caused a build failure. This fixes it. Signed-off-by: Richard Yao <ryao@gentoo.org>
2012-11-18Define unshare() macro to avoid dependence on __GNU_SOURCERichard Yao
unshare() is a linux syscall that we need. Unfortunately, access to it depends on __GNU_SOURCE, which we would like to avoid. As such, we define a macro to invoke it by its syscall code. This is necessary to avoid the following warning from Clang: implicit declaration of function 'unshare' is invalid in C99 [-Wimplicit-function-declaration] Signed-off-by: Richard Yao <ryao@gentoo.org>
2012-11-18Include dev-setup.h and cgroup-util.h to explicitly declare functionsRichard Yao
Clang 3.1 indicated that we had implicitly declared several, which is illegal in C99. Signed-off-by: Richard Yao <ryao@gentoo.org>
2012-11-18Fix "attribute 'packed' is ignored" warnings when using ClangRichard Yao
Clang 3.1 warned that "attribute 'packed' is ignored". This stems from placing "__attribute__ ((packed))" at the start of structure declarations when common practice is to place it at the end. Signed-off-by: Richard Yao <ryao@gentoo.org>
2012-11-18Fix wrong format warningsKacper Kowalik (Xarthisius)
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2012-11-18Fix unused result warningsKacper Kowalik (Xarthisius)
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2012-11-18Fix implicit declaration warningKacper Kowalik (Xarthisius)
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2012-11-18Got helper in src/* and make distcheck workingAnthony G. Basile
2012-11-17Restructure src/ as per lu_zeroAnthony G. Basile
2012-11-17Fix all Makefile.am: work towards 'make distcheck' sanityAnthony G. Basile
2012-11-17Rename src/shared to src/include, a saner nameAnthony G. Basile
2012-11-17udev: firmware - disable firmware loading when firmware file is 0 byteUmut Tezduyar
If firmware file is not found in the file system, udev terminates firmware loading. This is not the case if firmware file exists in the file system but doesn't have any data in it.
2012-11-17Add missing HAVE_ACL preprocessor directivesRichard Yao
This fixes a build failure with --disable-acl Signed-off-by: Richard Yao <ryao@gentoo.org>
2012-11-17src/test: disable for now to get a full buildAnthony G. Basile
2012-11-17Eliminate blkid-builtinRichard Yao
Changes to rules were introduced by 7c2dee4a4d7f1b264031daaee786a8fe429884e1 while builtin-blkid support was introduced in other commits. The removal of systemd resulted in this code causing linker errors. This code adds complexity with no clear benefit, so we remove it. Signed-off-by: Richard Yao <ryao@gentoo.org>
2012-11-17Eliminate kmod dependencyRichard Yao
Changes to rules were introduced by 06316d9f1a91b4d3efdb7402e72498cb3deb1806 while kmod support was introduced in other commits. A ton of commits were made involving kmod and it is quite clear that it is broken, so we remove it. This changes our rules to depend on modprobe. As long as the modprobe binary is in /, and not /usr, udev module loading should function properly. Signed-off-by: Richard Yao <ryao@gentoo.org>
2012-11-17src/gudev: builds successfullyAnthony G. Basile
2012-11-17src/udev: breakout Makefile.am for helpersAnthony G. Basile