LINUX.ORG.RU

История изменений

Исправление kirk_johnson, (текущая версия) :

$ grep '#\s*include\s*<linux/' /usr/include/*.h
/usr/include/cap-ng.h:#include <linux/capability.h>
/usr/include/libdevmapper.h:#  include <linux/types.h>
/usr/include/libnetlink.h:#include <linux/netlink.h>
/usr/include/libnetlink.h:#include <linux/rtnetlink.h>
/usr/include/libnetlink.h:#include <linux/if_link.h>
/usr/include/libnetlink.h:#include <linux/if_addr.h>
/usr/include/libnetlink.h:#include <linux/neighbour.h>
/usr/include/libsync.h: * something newer than v4.7 drop this and #include <linux/sync_file.h>
/usr/include/mtdev.h:#include <linux/input.h>
/usr/include/seccomp.h:#include <linux/audit.h>
/usr/include/xtables.h:#include <linux/types.h>
/usr/include/xtables.h:#include <linux/netfilter.h>
/usr/include/xtables.h:#include <linux/netfilter/x_tables.h>

Ну чот не густо (Gentoo).

PS. Это если не считаем libc.

Ну я к этому и веду, в общем-то. Большая часть интерфейсов скрыта за glibc и авторами специфчных библиотек и напрямую авторами программ не используется. А поцоны из glibc уже сами занимаются поддержанием обратной совместимости, чтобы апдейты ядра никого не заботили.

Как там у musl дела обстоят, я не знаю, но вроде не сильно хуже.

Исправление kirk_johnson, :

$ grep '#\s*include\s*<linux/' /usr/include/*.h
/usr/include/cap-ng.h:#include <linux/capability.h>
/usr/include/libdevmapper.h:#  include <linux/types.h>
/usr/include/libnetlink.h:#include <linux/netlink.h>
/usr/include/libnetlink.h:#include <linux/rtnetlink.h>
/usr/include/libnetlink.h:#include <linux/if_link.h>
/usr/include/libnetlink.h:#include <linux/if_addr.h>
/usr/include/libnetlink.h:#include <linux/neighbour.h>
/usr/include/libsync.h: * something newer than v4.7 drop this and #include <linux/sync_file.h>
/usr/include/mtdev.h:#include <linux/input.h>
/usr/include/seccomp.h:#include <linux/audit.h>
/usr/include/xtables.h:#include <linux/types.h>
/usr/include/xtables.h:#include <linux/netfilter.h>
/usr/include/xtables.h:#include <linux/netfilter/x_tables.h>

Ну чот не густо (Gentoo).

PS. Это если не считаем libc.

Ну я к этому и веду, в общем-то. Большая часть интерфейсов скрыта за glibc и напрямую авторами программ не используется. А поцоны из glibc уже сами занимаются поддержанием обратной совместимости, чтобы апдейты ядра никого не заботили.

Как там у musl дела обстоят, я не знаю, но вроде не сильно хуже.

Исправление kirk_johnson, :

$ grep '#\s*include\s*<linux/' /usr/include/*.h
/usr/include/cap-ng.h:#include <linux/capability.h>
/usr/include/libdevmapper.h:#  include <linux/types.h>
/usr/include/libnetlink.h:#include <linux/netlink.h>
/usr/include/libnetlink.h:#include <linux/rtnetlink.h>
/usr/include/libnetlink.h:#include <linux/if_link.h>
/usr/include/libnetlink.h:#include <linux/if_addr.h>
/usr/include/libnetlink.h:#include <linux/neighbour.h>
/usr/include/libsync.h: * something newer than v4.7 drop this and #include <linux/sync_file.h>
/usr/include/mtdev.h:#include <linux/input.h>
/usr/include/seccomp.h:#include <linux/audit.h>
/usr/include/xtables.h:#include <linux/types.h>
/usr/include/xtables.h:#include <linux/netfilter.h>
/usr/include/xtables.h:#include <linux/netfilter/x_tables.h>

Ну чот не густо (Gentoo).

PS. Это если не считаем libc.

Ну я к этому и веду, в общем-то. Большая часть интерфейсов скрыта за glibc и напрямую авторами программ не используется. А поцоны из glibc уже сами занимаются поддержанием обратной совместимости, чтобы апдейты ядра никого не заботили.

Исходная версия kirk_johnson, :

$ grep '#\s*include\s*<linux/' /usr/include/*.h
/usr/include/cap-ng.h:#include <linux/capability.h>
/usr/include/libdevmapper.h:#  include <linux/types.h>
/usr/include/libnetlink.h:#include <linux/netlink.h>
/usr/include/libnetlink.h:#include <linux/rtnetlink.h>
/usr/include/libnetlink.h:#include <linux/if_link.h>
/usr/include/libnetlink.h:#include <linux/if_addr.h>
/usr/include/libnetlink.h:#include <linux/neighbour.h>
/usr/include/libsync.h: * something newer than v4.7 drop this and #include <linux/sync_file.h>
/usr/include/mtdev.h:#include <linux/input.h>
/usr/include/seccomp.h:#include <linux/audit.h>
/usr/include/xtables.h:#include <linux/types.h>
/usr/include/xtables.h:#include <linux/netfilter.h>
/usr/include/xtables.h:#include <linux/netfilter/x_tables.h>

Ну чот не густо (Gentoo).

PS. Это если не считаем libc.

Ну я к этому и веду, в общем-то. Большая часть интерфейсов скрыта за glibc и напрямую авторами программ не используется. А поцоны из glibc уже сами занимаются поддержанием обратной совместимости, чтобы апдейты ядро никого не заботили.