Подскажите, плс, кто знает, как правильно наложить патч на исходники пакета через шаблоны?
В рассмотрении имеется app-backup/bareos-23.0.2::gentoo. В генте он собирается нормально, а в кальке случается ошибка на этапе конфигурирования (prepare) сорцов. Проблема вызвана тем, что в /etc/gentoo-release написано “Calculate Scratch Server”, а сорцы рассчитывают, что на потроха этого файла нормально отработает такое:
elif test -f /etc/gentoo-release
then
PLATFORM=gentoo
DISTVER=`awk '/release / { print $5 }' < /etc/gentoo-release`
elif test -f /etc/debian_version
Есть файл /etc/portage/patches/app-backup/bareos/bareos-configutaion-in-calculate-linux.patch
diff -ur bareos-Release-22.0.3/core/cmake/distname.sh b/core/cmake/distname.sh
--- bareos-Release-22.0.3/core/cmake/distname.sh 2023-03-24 20:05:20.000000000 +0700
+++ b/core/cmake/distname.sh 2023-06-08 12:47:39.000000000 +0700
@@ -154,6 +154,9 @@
then
PLATFORM=gentoo
DISTVER=`awk '/release / { print $5 }' < /etc/gentoo-release`
+ if [ "x${DISTVER}" == "x" ] ; then
+ DISTVER="2.13"
+ fi
elif test -f /etc/debian_version
then
if `test -f /etc/apt/sources.list && grep -q ubuntu /etc/apt/sources.list`; then
С ним нормально накладывается патч, и сборка пакета проходит.
Если этот файл удалить и создать /var/calculate/templates/additional_soft_patch/app-backup/bareos/bareos-configutaion-in-calculate-linux.patch
# Calculate format=diff
--- bareos-Release-23.0.2/core/cmake/distname.sh 2023-03-24 20:05:20.000000000 +0700
+++ b/core/cmake/distname.sh 2023-06-08 12:47:39.000000000 +0700
@@ -154,6 +154,9 @@
then
PLATFORM=gentoo
DISTVER=`awk '/release / { print $5 }' < /etc/gentoo-release`
+ if [ "x${DISTVER}" == "x" ] ; then
+ DISTVER="2.13"
+ fi
elif test -f /etc/debian_version
then
if `test -f /etc/apt/sources.list && grep -q ubuntu /etc/apt/sources.list`; then
То он не отрабатывает
В /var/calculate/templates/additional_soft_patch/.calculate_directory написано
# Calculate append=skip env=install ac_install_patch==on
В остальных .calculate_directory
# Calculate append=skip
Как сделать правильно?