Доброе утро. У апстрима сказано так: "however we used to install units in root_prefix and a lot of downstream software overrode this variable in their build system to support installing units elsewhere." [sin@xdt systemd]$ git diff 254.10-alt2 -- src/core/systemd.pc.in index 8a23916c241..f3b85b01909 100644 --- a/src/core/systemd.pc.in +++ b/src/core/systemd.pc.in @@ -11,19 +11,24 @@ # considered deprecated (though there is no plan to remove them). New names # shall have underscores. -prefix=/usr -root_prefix={{ROOTPREFIX_NOSLASH}} +# root_prefix and rootprefix are deprecated since we dropped support for split-usr +# however we used to install units in root_prefix and a lot of downstream software +# overrode this variable in their build system to support installing units elsewhere. +# To stop those builds from silently breaking we keep root_prefix around but have +# it as an alias for prefix +root_prefix={{PREFIX_NOSLASH}} rootprefix=${root_prefix} +prefix=${rootprefix} sysconf_dir={{SYSCONF_DIR}} sysconfdir=${sysconf_dir} ... Прилагаю файл с разницей pkg-config systemd 254.10-alt2 и 255.6-alt1 (udev.pc тоже отличается, но он простой). ______________________________________________ Проблемы три: - пакеты, которые используют pkg-config и используют макросы - решается исправлением rpm-build, которое рано или поздно делать придётся. - пакеты, которые используют pkg-config и НЕ используют макросы - потребуется правка спеков; - пакеты, которые НЕ используют pkg-config и используют макросы - потребуется либо правка кода, либо правка спеков. Чтобы не решать всё это сразу и прямо сейчас сделал новую сборку systemd, совместимую с текущим несовершенством: #349119 BUILDING #1 [locked] [test-only] sisyphus systemd.git=255.6-alt2 Обновление rpm-build, которое сделал shaba@, отправлять в сизиф будет нужно синхронно с выпиливанием из systemd вот этого исправления: sed -i 's,^\(udev_dir\)=.*,\1=/lib/udev,' %buildroot%_datadir/pkgconfig/udev.pc sed -i 's,^\(root_prefix\)=.*,\1=,' %buildroot%_datadir/pkgconfig/systemd.pc sed -i 's,^\(prefix\)=.*,\1=%_prefix,' %buildroot%_datadir/pkgconfig/systemd.pc for d in systemd_util_dir \ systemd_system_preset_dir \ systemd_system_unit_dir \ systemd_system_generator_dir \ systemd_sleep_dir \ systemd_shutdown_dir \ tmpfiles_dir \ sysusers_dir \ sysctl_dir \ binfmt_dir \ modules_load_dir \ ; \ do sed -i "s,^\($d\)=\${prefix},\1=\${rootprefix}," %buildroot%_datadir/pkgconfig/systemd.pc done __________________________ С этим исправлением (таска #349119) ошибки сборки не проявляются. пт, 24 мая 2024 г. в 17:53, Alexey Shabalin : > > пт, 24 мая 2024 г. в 13:57, Anton Farygin : > > > > On 24.05.2024 11:52, Dmitry V. Levin wrote: > > > On Thu, May 23, 2024 at 11:51:13AM +0000, Girar pender (shaba) wrote: > > >> https://git.altlinux.org/tasks/archive/done/_339/348147/logs/events.6.3.log > > >> 2024-May-23 11:09:14 :: task #348147 for sisyphus resumed by shaba: > > >> #100 removed > > >> #140 build 255.6-alt1 from /people/shaba/packages/systemd.git fetched at 2024-May-23 07:42:21 > > > После того, как этот пакет попал в Сизиф, сломалась сборка около сотни > > > пакетов, в которых есть файлы для systemd или udev. > > > > > Да, я тоже заметил. > > > > Надеюсь исправление тоже надо делать только в одном месте. > > Этого следовало ожидать. Значения в pkgconfig(systemd) изменились, эти > пакеты заглядывают в него что бы узнать куда устанавливать файлы. > В задании #349068 подготовлен rpm-build в котором макросы > синхронизированы с pkgconfig(systemd). > Прошу пропустить задание. > Не уверен, что все 100% исправит, но большую часть точно. > > -- > Alexey Shabalin > _______________________________________________ > Devel mailing list > Devel@lists.altlinux.org > https://lists.altlinux.org/mailman/listinfo/devel -- Sin (Sinelnikov Evgeny)