[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Bug#810982: net-snmp: FTBFS on kfreebsd10



Hi,

Steven Chamberlain wrote:
> Attached are all the kfreebsd fixes in a single debdiff, based on
> current pkg-net-snmp Git master.  I hope this is much easier.

I'm sorry, there was a piece missing from that debdiff.
I attach a corrected version now.

Thanks,
Regards,
-- 
Steven Chamberlain
steven@pyro.eu.org
From 003b7f74fc602b92b8d6f6d9e5dcfee551a93c6e Mon Sep 17 00:00:00 2001
From: Steven Chamberlain <steven@pyro.eu.org>
Date: Mon, 29 Feb 2016 13:39:57 +0000
Subject: [PATCH] kfreebsd support (Closes: #810982)

  * Fix a typo in 26_kfreebsd.patch
  * Add 27_kfreebsd.patch: (Closes: #810982)
    - Add missing dependency of mibII/icmp on kfreebsd
    - Add kfreebsd definitions not in GNU libc's icmp6.h
  * Remove obsolete Fix-kfreebsd-builds-with-kernel-headers-10.patch
  * Re-enable IPv6 on kfreebsd (Closes: #765846)
  * Build with the libbsd overlay on kfreebsd, for nlist
---
 debian/changelog                                   | 10 ++++++
 debian/patches/26_kfreebsd.patch                   | 22 ++++--------
 debian/patches/27_kfreebsd.patch                   | 25 +++++++++++++
 ...ix-kfreebsd-builds-with-kernel-headers-10.patch | 41 ----------------------
 debian/patches/series                              |  2 +-
 debian/rules                                       |  4 ++-
 6 files changed, 45 insertions(+), 59 deletions(-)
 create mode 100644 debian/patches/27_kfreebsd.patch
 delete mode 100644 debian/patches/Fix-kfreebsd-builds-with-kernel-headers-10.patch

diff --git a/debian/changelog b/debian/changelog
index cd8a1bd..94bf7e1 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,5 +1,6 @@
 net-snmp (5.7.3+dfsg-2) UNRELEASED; urgency=medium
 
+  [ Hideki Yamane ]
   * debian/patches
     - add Bug-788964-net-snmp-snmp_pdu_parse-DoS.patch (Closes: #788964)
     - add 0026-fix-Bug-785380-incorrect-date-format.patch (Closes: #785380)
@@ -14,6 +15,15 @@ net-snmp (5.7.3+dfsg-2) UNRELEASED; urgency=medium
   * debian/snmp.preinst
     - revert "killall", it is unnecessary anymore (Closes: #781257)
 
+  [ Steven Chamberlain ]
+  * Fix a typo in 26_kfreebsd.patch
+  * Add 27_kfreebsd.patch: (Closes: #810982)
+    - Add missing dependency of mibII/icmp on kfreebsd
+    - Add kfreebsd definitions not in GNU libc's icmp6.h
+  * Remove obsolete Fix-kfreebsd-builds-with-kernel-headers-10.patch
+  * Re-enable IPv6 on kfreebsd (Closes: #765846)
+  * Build with the libbsd overlay on kfreebsd, for nlist
+
  -- Hideki Yamane <henrich@debian.org>  Thu, 18 Jun 2015 06:43:28 +0900
 
 net-snmp (5.7.3+dfsg-1) unstable; urgency=medium
diff --git a/debian/patches/26_kfreebsd.patch b/debian/patches/26_kfreebsd.patch
index d758e17..60fa7a0 100644
--- a/debian/patches/26_kfreebsd.patch
+++ b/debian/patches/26_kfreebsd.patch
@@ -1,14 +1,4 @@
-From: Net-SNMP Packaging Team <pkg-net-snmp-devel@lists.alioth.debian.org>
-Date: Thu, 18 Jun 2015 06:12:05 +0900
-Subject: _kfreebsd
-
 Preliminary support for kfreebsd.
----
- agent/mibgroup/hardware/cpu/cpu_sysctl.c | 14 +++++++-------
- 1 file changed, 7 insertions(+), 7 deletions(-)
-
-diff --git a/agent/mibgroup/hardware/cpu/cpu_sysctl.c b/agent/mibgroup/hardware/cpu/cpu_sysctl.c
-index 5ecb68e..f0899c2 100644
 --- a/agent/mibgroup/hardware/cpu/cpu_sysctl.c
 +++ b/agent/mibgroup/hardware/cpu/cpu_sysctl.c
 @@ -12,7 +12,7 @@
@@ -20,7 +10,7 @@ index 5ecb68e..f0899c2 100644
  #include <sys/resource.h>
  #if !defined(CPUSTATES)
  #include <sys/dkstat.h>
-@@ -89,7 +89,7 @@ void init_cpu_sysctl( void ) {
+@@ -89,7 +89,7 @@
  #elif defined(KERN_CPTIME)                /* OpenBSD */
  #define NETSNMP_KERN_CPU  KERN_CPTIME
  
@@ -29,7 +19,7 @@ index 5ecb68e..f0899c2 100644
  #define NETSNMP_KERN_MCPU 1    /* Enable support for multi-cpu stats. Valid for FreeBSD >=6.4, >=7.1, >=8.0 and beyond */
  #define NETSNMP_KERN_MCPU_TYPE NETSNMP_CPU_STATS
  
-@@ -129,7 +129,7 @@ void init_cpu_sysctl( void ) {
+@@ -129,7 +129,7 @@
  #define NETSNMP_VM_STATS_TYPE  struct uvmexp
  #endif  /* VM_UVMEXP2 || VM_UVMEXP */
  
@@ -38,12 +28,12 @@ index 5ecb68e..f0899c2 100644
  #define NETSNMP_VM_STATS       VM_METER
  #define NETSNMP_VM_STATS_TYPE  struct vmmeter
      #define NS_VM_INTR		v_intr
-@@ -169,10 +169,10 @@ int netsnmp_cpu_arch_load( netsnmp_cache *cache, void *magic ) {
+@@ -169,10 +169,10 @@
       */
      NETSNMP_CPU_STATS cpu_stats[CPUSTATES];
      size_t         cpu_size  = sizeof(cpu_stats);
 -#if !defined(__FreeBSD__) && !defined(__NetBSD__)
-+#if !defined(__FreeBSD__) || defined(__FreeBSD_kernel__) && !defined(__NetBSD__)
++#if !defined(__FreeBSD__) && !defined(__FreeBSD_kernel__) && !defined(__NetBSD__)
      int            cpu_mib[] = { CTL_KERN, NETSNMP_KERN_CPU };
  #endif
 -#ifdef __FreeBSD__
@@ -51,7 +41,7 @@ index 5ecb68e..f0899c2 100644
      static int     cp_times = -1;
  #endif
  #ifdef KERN_CPTIME2
-@@ -189,7 +189,7 @@ int netsnmp_cpu_arch_load( netsnmp_cache *cache, void *magic ) {
+@@ -189,7 +189,7 @@
      size_t         mem_size  = sizeof(NETSNMP_VM_STATS_TYPE);
      netsnmp_cpu_info *cpu = netsnmp_cpu_get_byIdx( -1, 0 );
  
@@ -60,7 +50,7 @@ index 5ecb68e..f0899c2 100644
      sysctlbyname("kern.cp_time", cpu_stats, &cpu_size, NULL, 0);
  #else
      sysctl(cpu_mib, 2,  cpu_stats, &cpu_size, NULL, 0);
-@@ -226,7 +226,7 @@ int netsnmp_cpu_arch_load( netsnmp_cache *cache, void *magic ) {
+@@ -226,7 +226,7 @@
      mcpu_size  = cpu_num*sizeof(cpu_stats);
      mcpu_stats = malloc(mcpu_size);
      sysctlbyname("kern.cp_time", mcpu_stats, &mcpu_size, NULL, 0);
diff --git a/debian/patches/27_kfreebsd.patch b/debian/patches/27_kfreebsd.patch
new file mode 100644
index 0000000..4620da4
--- /dev/null
+++ b/debian/patches/27_kfreebsd.patch
@@ -0,0 +1,25 @@
+--- a/agent/mibgroup/mibII/icmp.h
++++ b/agent/mibgroup/mibII/icmp.h
+@@ -14,6 +14,7 @@
+ config_arch_require(freebsd8,  mibII/kernel_sysctl)
+ config_arch_require(freebsd9,  mibII/kernel_sysctl)
+ config_arch_require(freebsd10, mibII/kernel_sysctl)
++config_arch_require(kfreebsd,  mibII/kernel_sysctl)
+ config_arch_require(netbsd,    mibII/kernel_netbsd)
+ config_arch_require(netbsdelf, mibII/kernel_netbsd)
+ config_arch_require(openbsd4,  mibII/kernel_sysctl)
+--- a/agent/mibgroup/mibII/kernel_sysctl.c
++++ b/agent/mibgroup/mibII/kernel_sysctl.c
+@@ -14,6 +14,12 @@
+ #include <netinet/icmp_var.h>
+ #include <netinet/icmp6.h>
+ 
++#if defined(__FreeBSD_kernel__) && defined(__GLIBC__)
++/* definitions unavailable in GNU libc's icmp6.h */
++#define ICMP6_MAXTYPE		201
++#define ICMPV6CTL_STATS		1
++#endif
++
+ #include <net-snmp/net-snmp-config.h>
+ #include <net-snmp/net-snmp-includes.h>
+ #include <net-snmp/agent/net-snmp-agent-includes.h>
diff --git a/debian/patches/Fix-kfreebsd-builds-with-kernel-headers-10.patch b/debian/patches/Fix-kfreebsd-builds-with-kernel-headers-10.patch
deleted file mode 100644
index c878ee3..0000000
--- a/debian/patches/Fix-kfreebsd-builds-with-kernel-headers-10.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From: Niko Tyni <ntyni@debian.org>
-Date: Wed, 16 Jul 2014 21:42:30 +0000
-Subject: Fix kfreebsd builds with kernel headers >= 10
-
-This fixes warnings like
-
-In file included from ../../include/net-snmp/net-snmp-config.h:2085:0,
-                 from host/data_access/swinst_apt.c:5:
-../../include/net-snmp/system/kfreebsd.h:5:0: warning: "__FreeBSD_version" redefined [enabled by default]
- #define __FreeBSD_version __FreeBSD_kernel_version
- ^
-In file included from /usr/include/sys/kern/param.h:1:0,
-                 from /usr/include/osreldate.h:1,
-                 from ../../include/net-snmp/system/kfreebsd.h:4,
-                 from ../../include/net-snmp/net-snmp-config.h:2085,
-                 from host/data_access/swinst_apt.c:5:
-/usr/include/sys/kglue/sys/param.h:67:0: note: this is the location of the previous definition
- #define __FreeBSD_version 1000510 /* Master, propagated to newvers */
-
-and makes agent/mibgroup/host/data_access/swrun_kinfo.c use the modern
-kinfo_proc field names.
-
-Bug-Debian: http://bugs.debian.org/753144
----
- include/net-snmp/system/kfreebsd.h | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/include/net-snmp/system/kfreebsd.h b/include/net-snmp/system/kfreebsd.h
-index dbf7024..cb32758 100644
---- a/include/net-snmp/system/kfreebsd.h
-+++ b/include/net-snmp/system/kfreebsd.h
-@@ -2,7 +2,9 @@
- #define freebsd6 freebsd6
- 
- #include <osreldate.h>
-+#if defined(__FreeBSD_kernel_version) && !defined(__FreeBSD_version)
- #define __FreeBSD_version __FreeBSD_kernel_version
-+#endif
- 
- #include <sys/queue.h>
- #include <sys/_types.h>
diff --git a/debian/patches/series b/debian/patches/series
index d51c163..5ad0dc2 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -4,6 +4,7 @@
 06_extramibs.patch
 07_docfiles.patch
 26_kfreebsd.patch
+27_kfreebsd.patch
 60_libsensors_api.patch
 61_vacm_missing_dependency_check.patch
 62_add_lib_cflags.patch
@@ -20,7 +21,6 @@ fix_manpage-has-errors_break_line.patch
 add_rocommunity6.patch
 fix_manpage-has-errors-from-man.patch
 agentx-crash.patch
-Fix-kfreebsd-builds-with-kernel-headers-10.patch
 fix-request-id-0.patch
 0025-Bug-788964-net-snmp-snmp_pdu_parse-DoS.patch
 0026-fix-Bug-785380-incorrect-date-format.patch
diff --git a/debian/rules b/debian/rules
index d1da11e..ed866a9 100755
--- a/debian/rules
+++ b/debian/rules
@@ -23,8 +23,10 @@ IPV6 = --enable-ipv6
 DEB_DH_GENCONTROL_ARGS=-- -Vos-specific-dev="libsensors4-dev"
 else
 ifeq (kfreebsd,$(DEB_BUILD_ARCH_OS))
-IPV6 = --disable-ipv6
+IPV6 = --enable-ipv6
 DEB_DH_GENCONTROL_ARGS=-- -Vos-specific-dev="libkvm-dev"
+CFLAGS += $(shell pkg-config --cflags libbsd-overlay)
+LDFLAGS += $(shell pkg-config --libs libbsd-overlay)
 endif
 endif
 ifeq (hurd,$(DEB_BUILD_ARCH_OS))
-- 
1.8.4.rc3

Attachment: signature.asc
Description: Digital signature


Reply to: