ports/core (3.1): eudev: update to 3.0
commit 9a358786ec40be4ca94f27f6cd4becd4e0f1f2fe Author: Juergen Daubert <jue@jue.li> Date: Sat Apr 4 12:41:14 2015 +0200 eudev: update to 3.0 version 3.0 introduces a new build-time dependency to opt/gperf. See [1] for a discussion about the issue. We've added a simple patch to remove the dependency for now and added two preprocessed header files. These files are generated with gperf from the /usr/include/linux/input.h kernel header which is part of our glibc package. For the future (CRUX 3.2) we should avoid that and add gperf to our core collection, not a big deal because it's only one 83K binary. [1] https://github.com/gentoo/eudev/issues/75 diff --git a/eudev/.footprint b/eudev/.footprint index 91036be..6fbd61b 100644 --- a/eudev/.footprint +++ b/eudev/.footprint @@ -11,12 +11,15 @@ drwxr-xr-x root/root etc/udev/hwdb.d/ -rw-r--r-- root/root etc/udev/hwdb.d/20-sdio-vendor-model.hwdb -rw-r--r-- root/root etc/udev/hwdb.d/20-usb-classes.hwdb -rw-r--r-- root/root etc/udev/hwdb.d/20-usb-vendor-model.hwdb +-rw-r--r-- root/root etc/udev/hwdb.d/60-keyboard.hwdb +-rw-r--r-- root/root etc/udev/hwdb.d/70-mouse.hwdb +-rw-r--r-- root/root etc/udev/hwdb.d/70-touchpad.hwdb drwxr-xr-x root/root etc/udev/rules.d/ -rw-r--r-- root/root etc/udev/udev.conf drwxr-xr-x root/root lib/ drwxr-xr-x root/root lib/firmware/ -lrwxrwxrwx root/root lib/libudev.so.1 -> libudev.so.1.6.0 --rwxr-xr-x root/root lib/libudev.so.1.6.0 +lrwxrwxrwx root/root lib/libudev.so.1 -> libudev.so.1.6.2 +-rwxr-xr-x root/root lib/libudev.so.1.6.2 drwxr-xr-x root/root lib/udev/ -rwxr-xr-x root/root lib/udev/accelerometer -rwxr-xr-x root/root lib/udev/ata_id @@ -31,6 +34,7 @@ drwxr-xr-x root/root lib/udev/rules.d/ -rw-r--r-- root/root lib/udev/rules.d/50-udev-default.rules -rw-r--r-- root/root lib/udev/rules.d/60-cdrom_id.rules -rw-r--r-- root/root lib/udev/rules.d/60-drm.rules +-rw-r--r-- root/root lib/udev/rules.d/60-keyboard.rules -rw-r--r-- root/root lib/udev/rules.d/60-persistent-alsa.rules -rw-r--r-- root/root lib/udev/rules.d/60-persistent-input.rules -rw-r--r-- root/root lib/udev/rules.d/60-persistent-serial.rules @@ -39,6 +43,8 @@ drwxr-xr-x root/root lib/udev/rules.d/ -rw-r--r-- root/root lib/udev/rules.d/60-persistent-v4l.rules -rw-r--r-- root/root lib/udev/rules.d/61-accelerometer.rules -rw-r--r-- root/root lib/udev/rules.d/64-btrfs.rules +-rw-r--r-- root/root lib/udev/rules.d/70-mouse.rules +-rw-r--r-- root/root lib/udev/rules.d/70-touchpad.rules -rw-r--r-- root/root lib/udev/rules.d/75-net-description.rules -rw-r--r-- root/root lib/udev/rules.d/75-probe_mtd.rules -rw-r--r-- root/root lib/udev/rules.d/75-tty-description.rules @@ -61,7 +67,7 @@ drwxr-xr-x root/root usr/include/ drwxr-xr-x root/root usr/lib/ -rw-r--r-- root/root usr/lib/libudev.a -rwxr-xr-x root/root usr/lib/libudev.la -lrwxrwxrwx root/root usr/lib/libudev.so -> ../../lib/libudev.so.1.6.0 +lrwxrwxrwx root/root usr/lib/libudev.so -> ../../lib/libudev.so.1.6.2 drwxr-xr-x root/root usr/lib/pkgconfig/ -rw-r--r-- root/root usr/lib/pkgconfig/libudev.pc drwxr-xr-x root/root usr/man/ diff --git a/eudev/.md5sum b/eudev/.md5sum index 7465bf3..2f0618f 100644 --- a/eudev/.md5sum +++ b/eudev/.md5sum @@ -1,4 +1,5 @@ ee21e150df6c804eef03a6cb2fc1cceb 81-crux.rules -dd945ce34314b4544e9036153d3a97e9 eudev-2.1.1.tar.gz -584d89028fd64afb6f248a14594acb64 eudev-man-2.1.1.tar.xz +a2706a1413723b6b82eecb7d6982763c eudev-3.0.tar.gz +9fa96b8b4f5df8ebf1bf574dac5f8d95 eudev-remove_gperf_dep.patch +1dcada037857d727e7d1efb5d8777055 keyboard-keys.tar.xz eb80a77a7ea60e8322116791b65ddc5d start_udev diff --git a/eudev/Pkgfile b/eudev/Pkgfile index 564dadb..c6b0653 100644 --- a/eudev/Pkgfile +++ b/eudev/Pkgfile @@ -4,17 +4,27 @@ # Depends on: kmod name=eudev -version=2.1.1 +version=3.0 release=1 source=(http://dev.gentoo.org/~blueness/$name/$name-$version.tar.gz - $name-man-$version.tar.xz - 81-crux.rules start_udev) + 81-crux.rules start_udev + $name-remove_gperf_dep.patch + keyboard-keys.tar.xz) build() { cd $name-$version + # See https://github.com/gentoo/eudev/issues/75 + # remove build-time dependency to gperf for now + cp $SRC/keyboard-keys-{from,to}-name.h src/udev + patch -p1 -i $SRC/eudev-remove_gperf_dep.patch + + # needed for static linking, e.g. dmsetup.static sed -i '/^Libs:/s/-ludev/-ludev -lrt/' src/libudev/libudev.pc.in + + autoreconf --force --install + ./configure --prefix=/usr \ --sbindir=/sbin --bindir=/sbin \ --sysconfdir=/etc \ @@ -24,11 +34,8 @@ build() { --mandir=/usr/man \ --disable-introspection \ --disable-gudev \ - --disable-keymap \ --disable-manpages \ - --enable-split-usr \ - --enable-modules \ - --enable-libkmod + --enable-split-usr make CFLAGS="$CFLAGS -D_GNU_SOURCE" make install DESTDIR=$PKG diff --git a/eudev/eudev-man-2.1.1.tar.xz b/eudev/eudev-man-2.1.1.tar.xz deleted file mode 100644 index a851fd8..0000000 Binary files a/eudev/eudev-man-2.1.1.tar.xz and /dev/null differ diff --git a/eudev/eudev-remove_gperf_dep.patch b/eudev/eudev-remove_gperf_dep.patch new file mode 100644 index 0000000..d41278c --- /dev/null +++ b/eudev/eudev-remove_gperf_dep.patch @@ -0,0 +1,36 @@ +diff -Nru eudev-3.0.orig/configure.ac eudev-3.0/configure.ac +--- eudev-3.0.orig/configure.ac 2015-04-03 17:20:24.877391002 +0200 ++++ eudev-3.0/configure.ac 2015-04-03 17:21:33.674719712 +0200 +@@ -233,10 +233,6 @@ + AM_CONDITIONAL([ENABLE_GUDEV], [test "x$enable_gudev" = "xyes"]) + + # ------------------------------------------------------------------------------ +-AC_PATH_TOOL(GPERF, gperf) +-if test -z "$GPERF" ; then +- AC_MSG_ERROR([*** gperf not found]) +-fi + + # ------------------------------------------------------------------------------ + GTK_DOC_CHECK([1.18],[--flavour no-tmpl]) +diff -Nru eudev-3.0.orig/src/udev/Makefile.am eudev-3.0/src/udev/Makefile.am +--- eudev-3.0.orig/src/udev/Makefile.am 2015-04-03 17:20:24.874057818 +0200 ++++ eudev-3.0/src/udev/Makefile.am 2015-04-03 17:22:10.553354878 +0200 +@@ -111,18 +111,6 @@ + keyboard-keys-from-name.h \ + keyboard-keys-to-name.h + +-keyboard-keys.txt: Makefile +- $(AM_V_at)$(MKDIR_P) $(dir $@) +- $(AM_V_GEN)$(CPP) $(CFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) -dM -include linux/input.h - < /dev/null | $(AWK) '/^#define[ \t]+KEY_[^ ]+[ \t]+[0-9]/ { if ($$2 != "KEY_MAX") { print $$2 } }' | sed 's/^KEY_COFFEE$$/KEY_SCREENLOCK/' > $@ +- +-keyboard-keys-from-name.gperf: keyboard-keys.txt Makefile +- $(AM_V_GEN)$(AWK) 'BEGIN{ print "struct key { const char* name; unsigned short id; };"; print "%null-strings"; print "%%";} { print tolower(substr($$1 ,5)) ", " $$1 }' < $< > $@ +- +-keyboard-keys-from-name.h: keyboard-keys-from-name.gperf Makefile +- $(AM_V_GPERF)$(GPERF) -L ANSI-C -t -N keyboard_lookup_key -H hash_key_name -p -C < $< > $@ +- +-keyboard-keys-to-name.h: keyboard-keys.txt Makefile +- $(AM_V_GEN)$(AWK) 'BEGIN{ print "const char* const key_names[KEY_CNT] = { "} { print "[" $$1 "] = \"" $$1 "\"," } END{print "};"}' < $< > $@ + + + BUILT_SOURCES = \ diff --git a/eudev/keyboard-keys.tar.xz b/eudev/keyboard-keys.tar.xz new file mode 100644 index 0000000..32605d2 Binary files /dev/null and b/eudev/keyboard-keys.tar.xz differ
participants (1)
-
crux@crux.nu