Hello community, here is the log from the commit of package bird for openSUSE:Factory checked in at 2020-09-27 11:50:48 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/bird (Old) and /work/SRC/openSUSE:Factory/.bird.new.4249 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "bird" Sun Sep 27 11:50:48 2020 rev:6 rq:837839 version:2.0.7 Changes: -------- --- /work/SRC/openSUSE:Factory/bird/bird.changes 2020-06-18 10:26:53.236599384 +0200 +++ /work/SRC/openSUSE:Factory/.bird.new.4249/bird.changes 2020-09-27 11:50:49.088110778 +0200 @@ -1,0 +2,12 @@ +Fri Sep 11 07:16:11 UTC 2020 - Dirk Mueller <[email protected]> + +- update to 2.0.2: + o Integrated IPv4 + IPv6 design + * many changes, see included NEWS for details + * obsoletes separate bird6/bird-common subpackages + +- remove bird-1.6.3_verbose.build.patch bufferoverflow.patch: obsolete +- add gcc10.patch (fix build with gcc 10), disable -fcommon again +- reenable fortify-source + +------------------------------------------------------------------- Old: ---- bird-1.6.3_verbose.build.patch bird-1.6.8.tar.gz bird6.service bufferoverflow.patch New: ---- bird-2.0.7.tar.gz gcc10.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ bird.spec ++++++ --- /var/tmp/diff_new_pack.ADNSnK/_old 2020-09-27 11:50:49.684111420 +0200 +++ /var/tmp/diff_new_pack.ADNSnK/_new 2020-09-27 11:50:49.688111425 +0200 @@ -21,7 +21,7 @@ %define bird_home %{_localstatedir}/lib/bird %define bird_runtimedir %{_rundir}/%{name} Name: bird -Version: 1.6.8 +Version: 2.0.7 Release: 0 Summary: The BIRD Internet Routing Daemon License: GPL-2.0-or-later @@ -29,17 +29,19 @@ URL: https://bird.network.cz/ Source: ftp://bird.network.cz/pub/bird/bird-%{version}.tar.gz Source1: bird.service -Source2: bird6.service Source3: bird.tmpfiles.d -Patch0: bird-1.6.3_verbose.build.patch -Patch1: bufferoverflow.patch +Patch0: gcc10.patch BuildRequires: bison BuildRequires: flex BuildRequires: ncurses-devel BuildRequires: pkgconfig BuildRequires: readline-devel BuildRequires: pkgconfig(systemd) -Requires: bird-common +Provides: bird6 = %{version} +Provides: bird6:%{_sbindir}/bird6 +Obsoletes: bird6 < %{version} +Provides: bird-common = %{version} +Obsoletes: bird-common < %{version} %description BIRD is an implementation for routing Internet Protocol packets. IPv4 @@ -47,35 +49,14 @@ multiple routing tables, and uses BGP, RIP, and OSPF routing protocols, as well as statically defined routes. -This package holds the IPv4 binaries. - -%package -n bird6 -Summary: The BIRD Internet Routing Daemon for IPv6 -Group: Productivity/Networking/Routing -Requires: bird-common - -%description -n bird6 -BIRD is an implementation for routing Internet Protocol packets. IPv4 -and IPv6 are supported by running separate daemons. It establishes -multiple routing tables, and uses BGP, RIP, and OSPF routing -protocols, as well as statically defined routes. - -This package holds the IPv6 binaries. - -%package common -Summary: Common files for the BIRD Internet Routing Daemon -Group: Productivity/Networking/Routing -Requires(pre): shadow -%{?systemd_requires} - -%description common -BIRD is an implementation for routing Internet Protocol packets. +This package holds the IPv4+IPv6 binaries. This package holds common files and directories. %package doc Summary: Documentation for the BIRD Internet Routing Daemon Group: Documentation/HTML +BuildRequires: perl-FindBin-Real %description doc BIRD is an implementation for routing Internet Protocol packets. @@ -85,73 +66,44 @@ %prep %setup -q %patch0 -p1 -%patch1 -p1 %build -# gcc detects overflow in strncpy at proto/rip/packets.c:215:5 -# but it's false alarm, relax gcc (-D_FORTIFY_SOURCE=1) -# see http://bird.network.cz/pipermail/bird-users/2016-May/010380.html -export CFLAGS="${RPM_OPT_FLAGS//-D_FORTIFY_SOURCE=2/-D_FORTIFY_SOURCE=0} -fpic -DPIC -fno-strict-aliasing -Wno-parentheses -Wno-pointer-sign -fcommon" +export CFLAGS="${RPM_OPT_FLAGS} -fpic -DPIC -fno-strict-aliasing -Wno-parentheses -Wno-pointer-sign" export LDFLAGS="-Wl,-z,relro -pie" -%define _configure ../configure -mkdir 4 6 -pushd 4 %configure \ --with-runtimedir=%{bird_runtimedir} -make %{?_smp_mflags} -popd -pushd 6 -%configure --enable-ipv6 \ - --with-runtimedir=%{bird_runtimedir} -make %{?_smp_mflags} -popd +%make_build all +# requires linuxdoctools +# make docs %install -%make_install -C 4 -%make_install -C 6 +%make_install install -D -m 0644 %{SOURCE1} %{buildroot}%{_unitdir}/bird.service -install -D -m 0644 %{SOURCE2} %{buildroot}%{_unitdir}/bird6.service install -D -m 0644 %{SOURCE3} %{buildroot}%{_tmpfilesdir}/%{name}.conf ln -s -f %{_sbindir}/service %{buildroot}%{_sbindir}/rcbird -ln -s -f %{_sbindir}/service %{buildroot}%{_sbindir}/rcbird6 install -D -d -m 0750 %{buildroot}%{bird_home} install -D -d -m 0750 %{buildroot}%{_docdir}/%{name}/ -cp -av NEWS README doc/bird*.html %{buildroot}%{_docdir}/%{name}/ -%pre common +%check +make test + +%pre # Create bird user/group getent group %{bird_group} >/dev/null || groupadd -r %{bird_group} getent passwd %{bird_user} >/dev/null || useradd -r -g %{bird_group} -d %{bird_home} -s /sbin/nologin -c "Bird routing daemon" %{bird_user} -exit 0 - -%post common -systemd-tmpfiles --create %{_tmpfilesdir}/%{name}.conf || true - -%pre %service_add_pre bird.service -%pre -n bird6 -%service_add_pre bird6.service - %preun %service_del_preun bird.service -%preun -n bird6 -%service_del_preun bird6.service - %post +systemd-tmpfiles --create %{_tmpfilesdir}/%{name}.conf || true %service_add_post bird.service -%post -n bird6 -%service_add_post bird6.service - %postun %service_del_postun bird.service -%postun -n bird6 -%service_del_postun bird6.service - %files %config(noreplace) %attr(0640,root,%{bird_group}) %{_sysconfdir}/bird.conf %{_sbindir}/bird @@ -159,24 +111,12 @@ %{_sbindir}/birdcl %{_sbindir}/rcbird %{_unitdir}/bird.service - -%files -n bird6 -%config(noreplace) %attr(0640,root,%{bird_group}) %{_sysconfdir}/bird6.conf -%{_sbindir}/bird6 -%{_sbindir}/birdc6 -%{_sbindir}/birdcl6 -%{_sbindir}/rcbird6 -%{_unitdir}/bird6.service - -%files common %dir %attr(750,%{bird_user},%{bird_group}) %{bird_home} %{_tmpfilesdir}/%{name}.conf %dir %attr(-,%{bird_user},%{bird_group}) %ghost %{bird_runtimedir} -%dir %{_docdir}/%{name} -%doc %{_docdir}/%{name}/README -%doc %{_docdir}/%{name}/NEWS %files doc -%doc %{_docdir}/%{name}/bird*.html +%doc NEWS README +%doc doc/bird.conf.* %changelog ++++++ bird-1.6.8.tar.gz -> bird-2.0.7.tar.gz ++++++ ++++ 104408 lines of diff (skipped) ++++++ gcc10.patch ++++++ https://bird.network.cz/pipermail/bird-users/2020-February/014211.html diff --git a/nest/route.h b/nest/route.h index d2a07f09..b927db5f 100644 --- a/nest/route.h +++ b/nest/route.h @@ -458,7 +458,7 @@ typedef struct rta { protocol-specific metric is availabe */ -const char * rta_dest_names[RTD_MAX]; +extern const char * rta_dest_names[RTD_MAX]; static inline const char *rta_dest_name(uint n) { return (n < RTD_MAX) ? rta_dest_names[n] : "???"; }
