add an snmpd-static package
authorNicolas Thill <nico@openwrt.org>
Thu, 20 Oct 2005 09:05:51 +0000 (09:05 +0000)
committerNicolas Thill <nico@openwrt.org>
Thu, 20 Oct 2005 09:05:51 +0000 (09:05 +0000)
SVN-Revision: 2192

openwrt/package/Makefile
openwrt/package/net-snmp/Config.in
openwrt/package/net-snmp/Makefile
openwrt/package/net-snmp/ipkg/snmpd-static.conffiles [new file with mode: 0644]
openwrt/package/net-snmp/ipkg/snmpd-static.control [new file with mode: 0644]

index 7779c055614e145294c4ccd649ac81c0dbab4cb8..caa5c91b383f7ccf71ada6c27871513936efa441 100644 (file)
@@ -119,7 +119,7 @@ package-$(BR2_PACKAGE_MYSQL) += mysql
 package-$(BR2_PACKAGE_NANO) += nano
 package-$(BR2_PACKAGE_NCURSES) += ncurses
 package-$(BR2_COMPILE_NDISC6) += ndisc
-package-$(BR2_PACKAGE_NET_SNMP) += net-snmp
+package-$(BR2_COMPILE_NET_SNMP) += net-snmp
 package-$(BR2_PACKAGE_NETSTAT_NAT) += netstat-nat
 package-$(BR2_PACKAGE_NFS_SERVER) += nfs-server
 package-$(BR2_PACKAGE_NMAP) += nmap
index 7e1b3b5b53556655473dbdcea523db0dbb861e59..a18e18ea5aa9c4cad65e9ce4fad0d62cd4a63edb 100644 (file)
@@ -1,16 +1,16 @@
 menu "net-snmp - Open source SNMP (Simple Network Management Protocol) implementation"
 
-config BR2_PACKAGE_NET_SNMP
+config BR2_COMPILE_NET_SNMP
        bool
        default n
-       depends BR2_PACKAGE_LIBNETSNMP
+       depends BR2_PACKAGE_LIBNETSNMP || BR2_PACKAGE_SNMP_UTILS || BR2_PACKAGE_SNMPD || BR2_PACKAGE_SNMPD_STATIC
+       select BR2_PACKAGE_LIBELF
 
 config BR2_PACKAGE_LIBNETSNMP
        prompt "libnetsnmp - SNMP shared libraries"
        tristate
        default m if CONFIG_DEVEL
-       select BR2_PACKAGE_NET_SNMP
-       select BR2_PACKAGE_LIBELF
+       select BR2_COMPILE_NET_SNMP
        help
          Simple Network Management Protocol (SNMP) is a widely used 
          protocol for monitoring the health and welfare of network 
@@ -23,9 +23,28 @@ config BR2_PACKAGE_LIBNETSNMP
          This package contains shared libraries, needed by other programs.
          
 
+config BR2_PACKAGE_SNMP_UTILS
+       prompt "snmp-utils - SNMP client utilities"
+       tristate
+       select BR2_COMPILE_NET_SNMP
+       select BR2_PACKAGE_LIBNETSNMP
+       default m if CONFIG_DEVEL
+       help
+         Simple Network Management Protocol (SNMP) is a widely used 
+         protocol for monitoring the health and welfare of network 
+         equipment (eg. routers), computer equipment and even devices 
+         like UPSs. Net-SNMP is a suite of applications used to implement 
+         SNMP v1, SNMP v2c and SNMP v3 using both IPv4 and IPv6.
+         
+         http://www.net-snmp.org/
+         
+         This package contains the SNMP client utilities.
+         
+
 config BR2_PACKAGE_SNMPD
        prompt "snmpd - SNMP agent"
        tristate
+       select BR2_COMPILE_NET_SNMP
        select BR2_PACKAGE_LIBNETSNMP
        default m if CONFIG_DEVEL
        help
@@ -37,13 +56,13 @@ config BR2_PACKAGE_SNMPD
          
          http://www.net-snmp.org/
          
-         This package contains the SNMP agent.
+         This package contains the SNMP agent, dynamically linked.
          
 
-config BR2_PACKAGE_SNMP_UTILS
-       prompt "snmp-utils - SNMP client utilities"
+config BR2_PACKAGE_SNMPD_STATIC
+       prompt "snmpd-static - SNMP agent (static)"
        tristate
-       select BR2_PACKAGE_LIBNETSNMP
+       select BR2_COMPILE_NET_SNMP
        default m if CONFIG_DEVEL
        help
          Simple Network Management Protocol (SNMP) is a widely used 
@@ -54,7 +73,7 @@ config BR2_PACKAGE_SNMP_UTILS
          
          http://www.net-snmp.org/
          
-         This package contains the SNMP client utilities.
+         This package contains the SNMP agent, statically linked.
          
 
 endmenu
index 95e01f6610bd8eaad4c0e8e68c88b93e8cd8d47f..fef44d5ce7d3c74c7ff11c1ae1ae7878a95edb55 100644 (file)
@@ -96,36 +96,37 @@ include $(TOPDIR)/package/rules.mk
 
 $(eval $(call PKG_template,LIBNETSNMP,libnetsnmp,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
 $(eval $(call PKG_template,SNMPD,snmpd,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
+$(eval $(call PKG_template,SNMPD_STATIC,snmpd-static,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
 $(eval $(call PKG_template,SNMP_UTILS,snmp-utils,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
 
 $(PKG_BUILD_DIR)/.configured:
-       (cd $(PKG_BUILD_DIR); rm -rf config.{cache,status} ; \
+       ( cd $(PKG_BUILD_DIR); rm -rf config.{cache,status}; \
                $(TARGET_CONFIGURE_OPTS) \
                CFLAGS="$(TARGET_CFLAGS)" \
                CPPFLAGS="-I$(STAGING_DIR)/usr/include -I$(STAGING_DIR)/include" \
                LDFLAGS="-L$(STAGING_DIR)/usr/lib -L$(STAGING_DIR)/lib" \
                ac_cv_header_pcap_h=no \
                ./configure \
-                 --target=$(GNU_TARGET_NAME) \
-                 --host=$(GNU_TARGET_NAME) \
-                 --build=$(GNU_HOST_NAME) \
-                 --program-prefix="" \
-                 --program-suffix="" \
-                 --prefix=/usr \
-                 --exec-prefix=/usr \
-                 --bindir=/usr/bin \
-                 --datadir=/usr/share \
-                 --includedir=/usr/include \
-                 --infodir=/usr/share/info \
-                 --libdir=/usr/lib \
-                 --libexecdir=/usr/lib \
-                 --localstatedir=/var \
-                 --mandir=/usr/share/man \
-                 --sbindir=/usr/sbin \
-                 --sysconfdir=/etc \
-                 $(DISABLE_LARGEFILE) \
-                 $(DISABLE_NLS) \
-                 $(PKG_CONFIGURE_OPTIONS) \
+                       --target=$(GNU_TARGET_NAME) \
+                       --host=$(GNU_TARGET_NAME) \
+                       --build=$(GNU_HOST_NAME) \
+                       --program-prefix="" \
+                       --program-suffix="" \
+                       --prefix=/usr \
+                       --exec-prefix=/usr \
+                       --bindir=/usr/bin \
+                       --datadir=/usr/share \
+                       --includedir=/usr/include \
+                       --infodir=/usr/share/info \
+                       --libdir=/usr/lib \
+                       --libexecdir=/usr/lib \
+                       --localstatedir=/var \
+                       --mandir=/usr/share/man \
+                       --sbindir=/usr/sbin \
+                       --sysconfdir=/etc \
+                       $(DISABLE_LARGEFILE) \
+                       $(DISABLE_NLS) \
+                       $(PKG_CONFIGURE_OPTIONS) \
        );
        touch $@
 
@@ -135,6 +136,15 @@ $(PKG_BUILD_DIR)/.built:
        $(MAKE) -C $(PKG_BUILD_DIR) \
                INSTALL_PREFIX="$(PKG_INSTALL_DIR)" \
                all install
+       ( cd $(PKG_INSTALL_DIR); mv ./usr/sbin/snmpd ./usr/sbin/snmpd-shared; )
+ifneq ($(BR2_PACKAGE_SNMPD_STATIC),)
+       ( cd $(PKG_BUILD_DIR); rm -f agent/snmpd; )
+       $(MAKE) -C $(PKG_BUILD_DIR) \
+               LDFLAGS="-L$(STAGING_DIR)/usr/lib -L$(STAGING_DIR)/lib -static" \
+               INSTALL_PREFIX="$(PKG_INSTALL_DIR)" \
+               all install
+       ( cd $(PKG_INSTALL_DIR); mv ./usr/sbin/snmpd ./usr/sbin/snmpd-static; )
+endif
        touch $@
 
 $(IPKG_LIBNETSNMP):
@@ -151,10 +161,22 @@ $(IPKG_SNMPD):
        install -d -m0755 $(IDIR_SNMPD)/etc/init.d
        install -m0755 ./files/snmpd.init $(IDIR_SNMPD)/etc/init.d/snmpd
        install -d -m0755 $(IDIR_SNMPD)/usr/sbin
-       cp -fpR $(PKG_INSTALL_DIR)/usr/sbin/snmpd $(IDIR_SNMPD)/usr/sbin/
+       install -m0755 $(PKG_INSTALL_DIR)/usr/sbin/snmpd-shared $(IDIR_SNMPD)/usr/sbin/snmpd
        $(RSTRIP) $(IDIR_SNMPD)
        $(IPKG_BUILD) $(IDIR_SNMPD) $(PACKAGE_DIR)
 
+$(IPKG_SNMPD_STATIC):
+       install -d -m0755 $(IDIR_SNMPD_STATIC)/etc/snmp
+       install -m0644 ./files/snmpd.conf $(IDIR_SNMPD_STATIC)/etc/snmp/snmpd.conf
+       install -d -m0755 $(IDIR_SNMPD_STATIC)/etc/default
+       install -m0644 ./files/snmpd.default $(IDIR_SNMPD_STATIC)/etc/default/snmpd
+       install -d -m0755 $(IDIR_SNMPD_STATIC)/etc/init.d
+       install -m0755 ./files/snmpd.init $(IDIR_SNMPD_STATIC)/etc/init.d/snmpd
+       install -d -m0755 $(IDIR_SNMPD_STATIC)/usr/sbin
+       install -m0755 $(PKG_INSTALL_DIR)/usr/sbin/snmpd-static $(IDIR_SNMPD_STATIC)/usr/sbin/snmpd
+       $(RSTRIP) $(IDIR_SNMPD_STATIC)
+       $(IPKG_BUILD) $(IDIR_SNMPD_STATIC) $(PACKAGE_DIR)
+
 $(IPKG_SNMP_UTILS):
        install -d -m0755 $(IDIR_SNMP_UTILS)/usr/bin
        cp -fpR $(PKG_INSTALL_DIR)/usr/bin/snmp{get,set,status,test,trap,walk} $(IDIR_SNMP_UTILS)/usr/bin/
diff --git a/openwrt/package/net-snmp/ipkg/snmpd-static.conffiles b/openwrt/package/net-snmp/ipkg/snmpd-static.conffiles
new file mode 100644 (file)
index 0000000..2864cc9
--- /dev/null
@@ -0,0 +1,2 @@
+/etc/default/snmpd
+/etc/snmp/snmpd.conf
diff --git a/openwrt/package/net-snmp/ipkg/snmpd-static.control b/openwrt/package/net-snmp/ipkg/snmpd-static.control
new file mode 100644 (file)
index 0000000..85cdb30
--- /dev/null
@@ -0,0 +1,9 @@
+Package: snmpd-static
+Priority: optional
+Section: admin
+Version: [TBDL]
+Architecture: [TBDL]
+Maintainer: Nico <nthill@free.fr>
+Source: http://openwrt.org/cgi-bin/viewcvs.cgi/openwrt/package/net-snmp/
+Description: SNMP agent
+Depends: libelf