Hi all,
On 08/15/2016 10:41 AM, aitor wrote:
> Yesterday i tried to debianize linux-libre-4.6.2 without libudev-dev.
> Here you are the resulting *.build file:
>
> In summary, the kernel also needs the existence of udev. I will remove
> this requeriment, removing the following lines:
>
> AC_CHECK_HEADER([libudev.h],
> [AC_CHECK_LIB([udev], [udev_new],
> [LIBS="$LIBS -ludev"],
> [AC_MSG_ERROR([Missing udev library!])])],
> [AC_MSG_ERROR([Missing /usr/include/libudev.h])])
>
> from the kernel, in *//tools/usb/usbip/configure.ac/*
>
> Jude Nelsons libudev-compat-dev is included as a dependency in
> debian/control, and we don't need to check anything.
>
> As you know, libudev-compat-dev provides /*libudev.h*/ package..., and
> now i'll again without *udev.h*
>
> Cheers,
>
> Aitor.
The second attempt failed again, getting a lot of:
[...] undefined reference to 'bla bla bla' [...]
I attach the new linux_4.6.2-3_i386.build:
http://gnuinos.org/linux_4.6.2-3_i386.build
No worries :)
I made a huge mistake!! The following lines were not superfluous:
AC_CHECK_HEADER([libudev.h],
[AC_MSG_ERROR([Missing /usr/include/libudev.h])])
Now, before a third attempt, i had made sure that all of the missing
libraries exist in libudev-compat-dev, and maybe in a few hour we will
have a systemd-free kernel. This is the list:
struct udev *udev_new(void);
struct udev_enumerate *udev_enumerate_new(struct udev *udev);
int udev_enumerate_add_match_subsystem(struct udev_enumerate
*udev_enumerate, const char *subsystem);
int udev_enumerate_add_nomatch_sysattr(struct udev_enumerate
*udev_enumerate, const char *sysattr, const char *value);
int udev_enumerate_scan_devices(struct udev_enumerate *udev_enumerate);
struct udev_list_entry *udev_enumerate_get_list_entry(struct
udev_enumerate *udev_enumerate);
struct udev_device *udev_device_unref(struct udev_device *udev_device);
struct udev_list_entry *udev_list_entry_get_next(struct udev_list_entry
*list_entry);
const char *udev_list_entry_get_name(struct udev_list_entry *list_entry);
struct udev_device *udev_device_new_from_syspath(struct udev *udev,
const char *syspath);
const char *udev_device_get_sysattr_value(struct udev_device
*udev_device, const char *sysattr);
const char *udev_device_get_sysname(struct udev_device *udev_device);
struct udev_enumerate *udev_enumerate_unref(struct udev_enumerate
*udev_enumerate);
struct udev *udev_unref(struct udev *udev);
struct udev_device *udev_device_new_from_subsystem_sysname(struct udev
*udev, const char *subsystem, const char *sysname);
const char *udev_device_get_sysattr_value(struct udev_device
*udev_device, const char *sysattr);
const char *udev_device_get_driver(struct udev_device *udev_device);
const char *udev_device_get_syspath(struct udev_device *udev_device);
const char *udev_device_get_sysname(struct udev_device *udev_device);
Cheers,
Aitor.