[devel] [#268534] DONE SDL2.git=2.0.14-alt3
Денис Назаров
nenderus на altlinux.org
Вс Мар 28 19:45:48 MSK 2021
28.03.2021 16:55, Vladimir D. Seleznev пишет:
> On Sun, Mar 28, 2021 at 02:19:52AM +0300, Денис Назаров wrote:
>> 28.03.2021 02:15, Vladimir D. Seleznev пишет:
>>> On Sun, Mar 28, 2021 at 02:07:40AM +0300, Arseny Maslennikov wrote:
>>>> On Sun, Mar 28, 2021 at 01:55:43AM +0300, Денис Назаров wrote:
>>>>> 28.03.2021 01:30, Vladimir D. Seleznev пишет:
>>>> [skip]
>>>>> Казалось, что сборка через cmake более современная.
>>>> Современность — не преступление, и собирать при помощи CMake — само по
>>>> себе тоже не преступление. Но при этом не нужно убирать из пакета ту
>>>> функциональность, которая в нём была. Если сборка при помощи cmake не
>>>> поддерживает правильную комбинацию кнобов или вообще кнобы, а та, что
>>>> была — поддерживает, то вторая лучше. Надо, как обычно, вникнуть и
>>>> разобраться.
>>> Вроде CMake и поддерживает, но тут два момента: вопрос с чем неудобнее
>>> работать, и тот момент, что сборка с CMake'ом по-умолчанию собрала
>>> библиотеку, которые все необходимые ей библиотеки открывает через
>>> dlopen(3).
>> А что в dlopen нехорошего-то?
>>>
>>
>
> Для библиотек-зависимостей мы используем динамическое связывание. Во
> время сборки пакетов rpm-build прописывает в зависимости пакету все
> требуемые SONAME'ы для каждого упакованного в пакет ELF'а, более того
> генерирует set-versions на основе используемых символов. В результате у
> пакета появляются необходимые для работы зависимости, а у нас и
> пользователей контроль зависимостей на уровне репозитория и целевой
> системы.
>
> В общем случае стоит использовать динамическое связывание.
>
> Я не обратил внимание, но похоже, что предыдущие сборки тоже
> использовали dlopen, как и эта. Более того, Debian и Fedora собирают с
> явно включённым dlopen. Сходу непонятно какой смысл так делать, возможно
> это стоит исследовать, но мне кажется правильнее в нашем случае
> использовать динамическую линковку.
>
Нельзя просто так взять и выключить sdl-dlopen )
Добавление --disable-sdl-dlopen в параметры configure приводит к ошибке
сборки с поддержкой Vulkan (а отключать я так понимаю совсем не
целесообразно):
/usr/src/RPM/BUILD/SDL2-2.0.14/src/video/x11/SDL_x11vulkan.c: In
function 'X11_Vulkan_LoadLibrary':
/usr/src/RPM/BUILD/SDL2-2.0.14/src/video/x11/SDL_x11vulkan.c:47:5:
error: unknown type name 'VkExtensionProperties'
47 | VkExtensionProperties *extensions = NULL;
| ^~~~~~~~~~~~~~~~~~~~~
/usr/src/RPM/BUILD/SDL2-2.0.14/src/video/x11/SDL_x11vulkan.c:73:13:
error: 'VK_NULL_HANDLE' undeclared (first use in this function); did you
mean 'VK_DEFINE_HANDLE'?
73 | VK_NULL_HANDLE,
"vkEnumerateInstanceExtensionProperties");
| ^~~~~~~~~~~~~~
| VK_DEFINE_HANDLE
Попробую разобраться
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : OpenPGP_signature
Тип : application/pgp-signature
Размер : 203 байтов
Описание: OpenPGP digital signature
Url : <http://lists.altlinux.org/pipermail/devel/attachments/20210328/a350adc5/attachment.bin>
Подробная информация о списке рассылки Devel