[devel] sys/sysmacros.h

Alexey V. Vissarionov gremlin на altlinux.org
Вт Ноя 12 00:10:03 MSK 2019


On 2019-11-12 00:00:23 +0300, Dmitry V. Levin wrote:

 >>> В связи с ...
 >>>> #40 build 2.30-alt1 from /people/glebfm/packages/glibc.git
 >>> ... некоторое количество пакетов перестало собираться:
 >>>> sysvinit-2.88-alt5
 >> Этого поправил (240584 eperm).
 >>> * The macros 'major', 'minor', and 'makedev' are now only
 >>> available from the header <sys/sysmacros.h>; not from
 >>> <sys/types.h>
 >> Собственно, само исправление выглядит просто и незатейливо:
 >> #if __GLIBC_PREREQ(2,30)
 >> #include <sys/sysmacros.h>
 >> #endif
 > Нет, если вы используете __GLIBC_PREREQ, значит, вы рассчитываете
 > на то, что у вас glibc.

Можно удариться в формальности и проверять сначала #ifdef __GLIBC__,
потом #if (__GLIBC__ == 2), и только потом __GLIBC_PREREQ... только
смысла в этом не сильно много. Выбор-то невелик: либо glibc, либо
хрен пойми какая экзотика.

 > А если у вас glibc, значит, <sys/sysmacros.h> доступен, начиная
 > с версии 2.25, и его неиспользование в такой ситуации до версии
 > 2.28 порождает предупреждение, а начиная с 2.28 - ошибку.

Значит, #if __GLIBC_PREREQ(2,25)

 > Спасибо, конечно, за помощь, но это сейчас не самый нуждающийся
 > пакет.

В приведенном списке он был единственным реально важным.


-- 
Alexey V. Vissarionov
gremlin ПРИ altlinux ТЧК org; +vii-cmiii-ccxxix-lxxix-xlii
GPG: 0D92F19E1C0DC36E27F61A29CD17E2B43D879005 @ hkp://keys.gnupg.net
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : signature.asc
Тип     : application/pgp-signature
Размер  : 801 байтов
Описание: отсутствует
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20191112/16bb4a56/attachment.bin>


Подробная информация о списке рассылки Devel