diff options
| author | Lou Berger <lberger@labn.net> | 2025-01-08 00:16:10 +0000 | 
|---|---|---|
| committer | Lou Berger <lberger@labn.net> | 2025-01-08 12:47:34 +0000 | 
| commit | d89f21fc0602761f5adb0dd82b8c6e24a5636a20 (patch) | |
| tree | d706e6f203408f4dbd110ac542ff7c5d2399c402 | |
| parent | 21fe1f4d83502ac1c2262913c1a98441ea89bf24 (diff) | |
redhat: Add option to build pkg without docs and rpki support, allow for different system environments by including all built .so files
    Simplify file list by using wildcards to include any built %{_libdir}/frr/modules/*.so and +%{_libdir}/libfrr*.so*
Signed-off-by: Lou Berger <lberger@labn.net>
| -rw-r--r-- | redhat/frr.spec.in | 54 | 
1 files changed, 26 insertions, 28 deletions
diff --git a/redhat/frr.spec.in b/redhat/frr.spec.in index 1ba8f043b2..4c0a654c8e 100644 --- a/redhat/frr.spec.in +++ b/redhat/frr.spec.in @@ -31,6 +31,8 @@  %{!?with_watchfrr:      %global  with_watchfrr      1 }  %{!?with_pathd:         %global  with_pathd         1 }  %{!?with_grpc:          %global  with_grpc          0 } +%{!?with_rpki:          %global  with_rpki          1 } +%{!?with_docs:          %global  with_docs          1 }  # user and group  %{!?frr_user:           %global  frr_user           frr } @@ -193,16 +195,22 @@ BuildRequires:  pcre2-devel  %if 0%{?rhel} && 0%{?rhel} < 7  #python27-devel is available from ius community repo for RedHat/CentOS 6  BuildRequires:  python27-devel +%if %{with_docs}  BuildRequires:  python27-sphinx +%endif  %else  %if %{use_python2}  BuildRequires:  python-devel >= 2.7 +%if %{with_docs}  BuildRequires:  python-sphinx +%endif  %else  BuildRequires:  python3-devel +%if %{with_docs}  BuildRequires:  python3-sphinx  %endif  %endif +%endif  %if %{with_grpc}  BuildRequires:  grpc-devel >= 1.16.1  BuildRequires:  protobuf-devel >= 3.6.1 @@ -283,6 +291,7 @@ The frr-devel package contains the header and object files necessary for  developing OSPF-API and frr applications. +%if %{with_rpki}  %package rpki-rtrlib  Summary: BGP RPKI support (rtrlib)  Group: System Environment/Daemons @@ -295,6 +304,7 @@ against cryptographic information stored in WHOIS databases.  This is  used to prevent hijacking of networks on the wider internet.  It is only  relevant to internet service providers using their own autonomous system  number. +%endif  %package snmp @@ -433,7 +443,9 @@ Adds GRPC support to the individual FRR daemons.      --disable-bgp-vnc \  %endif      --enable-isisd \ +%if %{with_rpki}      --enable-rpki \ +%endif  %if %{with_bfdd}      --enable-bfdd \  %else @@ -465,9 +477,11 @@ sed -e '1c #!/usr/bin/python3' -i %{zeb_src}/tools/frr-reload.py  sed -e '1c #!/usr/bin/python3' -i %{zeb_src}/tools/generate_support_bundle.py  %endif +%if %{with_docs}  pushd doc  make info  popd +%endif  %install @@ -605,7 +619,9 @@ zebra_spec_add_service fabricd	2618/tcp "Fabricd vty"      %__sed -i 's|watchfrr_enable=no|watchfrr_enable=yes|g' %{configdir}/daemons 2> /dev/null || true  %endif +%if %{with_docs}  /sbin/install-info %{_infodir}/frr.info.gz %{_infodir}/dir +%endif  # Create dummy config file if they don't exist so basic functions can be used.  if [ ! -e %{configdir}/frr.conf ] && [ ! -e %{configdir}/zebra.conf ]; then @@ -673,7 +689,9 @@ fi          /sbin/chkconfig --del frr      fi  %endif +%if %{with_docs}  /sbin/install-info --delete %{_infodir}/frr.info.gz %{_infodir}/dir +%endif  %files @@ -690,8 +708,10 @@ fi      %dir %attr(755,root,root) %{_localstatedir}/log/frr      %dir %attr(750,root,root) %{_runstatedir}/frr  %endif -%{_infodir}/frr.info.gz -%{_mandir}/man*/* +%if %{with_docs} +    %{_infodir}/frr.info.gz +    %{_mandir}/man*/* +%endif  %{_sbindir}/zebra  %{_sbindir}/staticd  %{_sbindir}/ospfd @@ -739,19 +759,9 @@ fi  %endif  %if %{with_pathd}      %{_sbindir}/pathd -    %{_libdir}/frr/modules/pathd_pcep.so  %endif -%{_libdir}/libfrr.so* -%{_libdir}/libfrrcares* -%{_libdir}/libfrrospf* -%if %{with_fpm} -    %{_libdir}/frr/modules/zebra_fpm.so -%endif -%{_libdir}/frr/modules/zebra_cumulus_mlag.so -%{_libdir}/frr/modules/dplane_fpm_nl.so -%{_libdir}/frr/modules/bgpd_bmp.so -%{_libdir}/libfrr_pb.so* -%{_libdir}/libfrrfpm_pb.so* +%{_libdir}/libfrr*.so* +%{_libdir}/frr/modules/*.so  %{_libdir}/libmgmt_be_nb.so*  %{_bindir}/*  %config(noreplace) %{configdir}/[!v]*.conf* @@ -791,6 +801,7 @@ fi  %endif +%if %{with_rpki}  %post rpki-rtrlib  # add rpki module to daemons  sed -i -e 's/^\(bgpd_options=\)\(.*\)\(".*\)/\1\2 -M rpki\3/' %{_sysconfdir}/frr/daemons @@ -798,22 +809,9 @@ sed -i -e 's/^\(bgpd_options=\)\(.*\)\(".*\)/\1\2 -M rpki\3/' %{_sysconfdir}/frr  %postun rpki-rtrlib  # remove rpki module from daemons  sed -i 's/ -M rpki//' %{_sysconfdir}/frr/daemons - -%files rpki-rtrlib -%{_libdir}/frr/modules/bgpd_rpki.so - - -%files snmp -%{_libdir}/libfrrsnmp.so* -%{_libdir}/frr/modules/*snmp.so - - -%if %{with_grpc} -%files grpc -%{_libdir}/libfrrgrpc_pb.* -%{_libdir}/frr/modules/grpc.so  %endif +  %files devel  %{_libdir}/lib*.so  %dir %{_includedir}/%{name}  | 
