[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