diff mbox series

[meta-networking] frr: Fix install conflict when enable multilib.

Message ID 1705049483-30941-1-git-send-email-wangmy@fujitsu.com
State Accepted
Headers show
Series [meta-networking] frr: Fix install conflict when enable multilib. | expand

Commit Message

Mingyu Wang (Fujitsu) Jan. 12, 2024, 8:51 a.m. UTC
From: Wang Mingyu <wangmy@fujitsu.com>

Error: Transaction test error:
  file /usr/lib/systemd/system/frr.service conflicts between attempted installs of frr-9.1-r1.cortexa57 and lib32-frr-9.1-r1.armv7ahf_neon
  file /usr/lib/systemd/system/frr@.service conflicts between attempted installs of frr-9.1-r1.cortexa57 and lib32-frr-9.1-r1.armv7ahf_neon
  file /usr/include/frr/version.h conflicts between attempted installs of lib32-frr-dev-9.1-r1.armv7ahf_neon and frr-dev-9.1-r1.cortexa57

The differences of version.h are as follows:
@@ -32,7 +32,7 @@
 #define FRR_VER_SHORT   "9.1"
 #define FRR_BUG_ADDRESS "https://github.com/frrouting/frr/issues"
 #define FRR_COPYRIGHT   "Copyright 1996-2005 Kunihiro Ishiguro, et al."
-#define FRR_CONFIG_ARGS "'--build=x86_64-linux' '--host=aarch64-poky-linux' '--target=aarch64-poky-linux' '--prefix=/usr' '--exec_prefix=/usr' '--bindir=/usr/bin' '--sbindir=/usr/sbin' '--libexecdir=/usr/libexec' '--datadir=/usr/share' '--sysconfdir=/etc' '--sharedstatedir=/com' '--localstatedir=/var' '--libdir=/usr/lib64' '--includedir=/usr/include' '--oldincludedir=/usr/include' '--infodir=/usr/share/info' '--mandir=/usr/share/man' '--disable-silent-rules' '--disable-dependency-tracking' '--with-libtool-sysroot=' '--sbindir=/usr/lib64/frr' '--sysconfdir=/etc/frr' '--localstatedir=/var/run/frr' '--enable-vtysh' '--enable-multipath=64' '--enable-user=frr' '--enable-group=frr' '--enable-vty-group=frrvty' '--enable-configfile-mask=0640' '--enable-logfile-mask=0640' '--disable-doc' '--with-clippy=/usr/lib/clippy' '--disable-static' '--disable-capabilities' '--disable-cumulus' '--disable-datacenter' '--disable-fpm' '--disable-grpc' '--disable-ospfapi' '--disable-ospfclient' '--without-l
 ibpam' '--disable-protobuf' '--disable-snmp' '--disable-zeromq' 'build_alias=x86_64-linux' 'host_alias=aarch64-poky-linux' 'target_alias=aarch64-poky-linux' 'AR=aarch64-poky-linux-gcc-ar' 'LD=aarch64-poky-linux-ld --sysroot= ' 'OBJCOPY=aarch64-poky-linux-objcopy' 'OBJDUMP=aarch64-poky-linux-objdump' 'RANLIB=aarch64-poky-linux-gcc-ranlib' 'STRIP=aarch64-poky-linux-strip' 'PKG_CONFIG_PATH=/usr/lib64/pkgconfig:/usr/share/pkgconfig://usr/share/pkgconfig' 'PKG_CONFIG_LIBDIR=/usr/lib64/pkgconfig' 'CC=aarch64-poky-linux-gcc -mcpu=cortex-a57 -march=armv8-a+crc -mbranch-protection=standard -fstack-protector-strong -O2 -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security --sysroot=' 'CPPFLAGS=' 'CPP=aarch64-poky-linux-gcc -E --sysroot= -mcpu=cortex-a57 -march=armv8-a+crc -mbranch-protection=standard -fstack-protector-strong -O2 -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security' 'CXX=aarch64-poky-linux-g++ -mcpu=cortex-a57 -march=armv8-a+crc -mbranch-prot
 ection=standard -fstack-protector-strong -O2 -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security --sysroot=' 'PYTHON=/usr/bin/python3-native/python3'"
+#define FRR_CONFIG_ARGS "'--build=x86_64-linux' '--host=arm-pokymllib32-linux-gnueabi' '--target=arm-pokymllib32-linux-gnueabi' '--prefix=/usr' '--exec_prefix=/usr' '--bindir=/usr/bin' '--sbindir=/usr/sbin' '--libexecdir=/usr/libexec' '--datadir=/usr/share' '--sysconfdir=/etc' '--sharedstatedir=/com' '--localstatedir=/var' '--libdir=/usr/lib' '--includedir=/usr/include' '--oldincludedir=/usr/include' '--infodir=/usr/share/info' '--mandir=/usr/share/man' '--disable-silent-rules' '--disable-dependency-tracking' '--with-libtool-sysroot=' '--sbindir=/usr/lib/frr' '--sysconfdir=/etc/frr' '--localstatedir=/var/run/frr' '--enable-vtysh' '--enable-multipath=64' '--enable-user=frr' '--enable-group=frr' '--enable-vty-group=frrvty' '--enable-configfile-mask=0640' '--enable-logfile-mask=0640' '--disable-doc' '--with-clippy=/usr/lib/clippy' '--disable-static' '--disable-capabilities' '--disable-cumulus' '--disable-datacenter' '--disable-fpm' '--disable-grpc' '--disable-ospfapi' '--disable-ospfcl
 ient' '--without-libpam' '--disable-protobuf' '--disable-snmp' '--disable-zeromq' 'build_alias=x86_64-linux' 'host_alias=arm-pokymllib32-linux-gnueabi' 'target_alias=arm-pokymllib32-linux-gnueabi' 'AR=arm-pokymllib32-linux-gnueabi-gcc-ar' 'LD=arm-pokymllib32-linux-gnueabi-ld --sysroot= ' 'OBJCOPY=arm-pokymllib32-linux-gnueabi-objcopy' 'OBJDUMP=arm-pokymllib32-linux-gnueabi-objdump' 'RANLIB=arm-pokymllib32-linux-gnueabi-gcc-ranlib' 'STRIP=arm-pokymllib32-linux-gnueabi-strip' 'PKG_CONFIG_PATH=/usr/lib/pkgconfig:/usr/share/pkgconfig:/ubinux-dev/ubinux001/contribution/build_xh/tmp/work/armv7ahf-neon-pokymllib32-linux-gnueabi/lib32-frr/9.1/recipe-sysroot//usr/share/pkgconfig' 'PKG_CONFIG_LIBDIR=/usr/lib/pkgconfig' 'CC=arm-pokymllib32-linux-gnueabi-gcc -march=armv7-a -mfpu=neon -mfloat-abi=hard -fstack-protector-strong -O2 -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security -D_TIME_BITS=64 -D_FILE_OFFSET_BITS=64 --sysroot=' 'CPPFLAGS=' 'CPP=arm-pokymllib32-linux-gnueabi
 -gcc -E --sysroot= -march=armv7-a -mfpu=neon -mfloat-abi=hard -fstack-protector-strong -O2 -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security -D_TIME_BITS=64 -D_FILE_OFFSET_BITS=64' 'CXX=arm-pokymllib32-linux-gnueabi-g++ -march=armv7-a -mfpu=neon -mfloat-abi=hard -fstack-protector-strong -O2 -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security -D_TIME_BITS=64 -D_FILE_OFFSET_BITS=64 --sysroot=' 'PYTHON=/usr/bin/python3-native/python3'"

 #define FRR_DEFAULT_MOTD \
        "\n" \

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
---
 meta-networking/recipes-protocols/frr/frr_9.1.bb | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)
diff mbox series

Patch

diff --git a/meta-networking/recipes-protocols/frr/frr_9.1.bb b/meta-networking/recipes-protocols/frr/frr_9.1.bb
index 5cc19d09d..0926f8421 100644
--- a/meta-networking/recipes-protocols/frr/frr_9.1.bb
+++ b/meta-networking/recipes-protocols/frr/frr_9.1.bb
@@ -46,7 +46,7 @@  PACKAGECONFIG[ospfclient] = "--enable-ospfapi --enable-ospfclient,--disable-ospf
 
 EXTRA_OECONF:class-native = "--enable-clippy-only"
 
-EXTRA_OECONF:class-target = "--sbindir=${libdir}/frr \
+EXTRA_OECONF:class-target = "--sbindir=${libexecdir}/frr \
                              --sysconfdir=${sysconfdir}/frr \
                              --localstatedir=${localstatedir}/run/frr \
                              --enable-vtysh \
@@ -74,7 +74,7 @@  SYSTEMD_PACKAGES = "${PN}"
 SYSTEMD_SERVICE:${PN} = "frr.service"
 SYSTEMD_AUTO_ENABLE = "disable"
 
-inherit update-alternatives
+inherit update-alternatives multilib_script multilib_header
 
 ALTERNATIVE_PRIORITY = "100"
 ALTERNATIVE:${PN} = " ietf-interfaces "
@@ -95,6 +95,7 @@  do_install:class-native () {
 
 do_install:append:class-target () {
     install -m 0755 -d ${D}${sysconfdir}/frr
+    install -m 0755 -d ${D}${libexecdir}/frr
     install -m 0640 ${S}/tools/etc/frr/* ${D}${sysconfdir}/frr/
     chown frr:frrvty ${D}${sysconfdir}/frr
     chown frr:frr ${D}${sysconfdir}/frr/*
@@ -123,6 +124,7 @@  do_install:append:class-target () {
         echo "d /run/frr 0755 frr frr -" \
             > ${D}${sysconfdir}/tmpfiles.d/${BPN}.conf
     fi
+    oe_multilib_header frr/version.h
 }
 
 USERADD_PACKAGES = "${PN}"