aboutsummaryrefslogtreecommitdiffstats
path: root/net-mgmt/net-snmp/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'net-mgmt/net-snmp/Makefile')
-rw-r--r--net-mgmt/net-snmp/Makefile128
1 files changed, 61 insertions, 67 deletions
diff --git a/net-mgmt/net-snmp/Makefile b/net-mgmt/net-snmp/Makefile
index 85303a63fec6..ccb51d961e14 100644
--- a/net-mgmt/net-snmp/Makefile
+++ b/net-mgmt/net-snmp/Makefile
@@ -6,8 +6,7 @@
#
PORTNAME= snmp
-PORTVERSION= 5.5
-PORTREVISION= 4
+PORTVERSION= 5.7
CATEGORIES= net-mgmt ipv6
MASTER_SITES= SF/net-${PORTNAME}/net-${PORTNAME}/${PORTVERSION}
PKGNAMEPREFIX= net-
@@ -22,7 +21,8 @@ OPTIONS= IPV6 "Build with IPv6 support" on \
PERL_EMBEDDED "Build embedded perl" on \
DUMMY "Enable dummy values as placeholders" on \
TKMIB "Install graphical MIB browser" off \
- DMALLOC "Enable dmalloc debug memory allocator" off
+ DMALLOC "Enable dmalloc debug memory allocator" off \
+ UNPRIVILEGED "Allow unprivileged users to execute net-snmp" off
MAKE_JOBS_UNSAFE= yes
@@ -92,7 +92,11 @@ PLIST_SUB+= WITH_IPV6=""
PLIST_SUB+= WITH_IPV6="@comment "
.endif
-SHLIB_VERSION= 20
+.if defined(WITH_UNPRIVILEGED)
+CONFIGURE_ARGS+=--without-root-access
+.endif
+
+SHLIB_VERSION= 30
PLIST_SUB+= SHLIB_VERSION=${SHLIB_VERSION}
SCRIPTS_SUB= PREFIX=${PREFIX} PERL=${PERL}
@@ -103,7 +107,7 @@ NET_SNMP_LOGFILE?= /var/log/snmpd.log
NET_SNMP_PERSISTENTDIR?=/var/net-snmp
.if ${OSVERSION} >= 700028
-NET_SNMP_MIB_MODULE_LIST+= sctp-mib
+NET_SNMP_WITH_MIB_MODULE_LIST+= sctp-mib
.endif
.if ${OSVERSION} >= 800000
@@ -112,87 +116,68 @@ CONFIGURE_ARGS+= --with-libs="-lssp_nonshared"
.if defined(WITH_MFD_REWRITES)
CONFIGURE_ARGS+=--enable-mfd-rewrites
-NET_SNMP_MIB_MODULE_LIST+= if-mib
+NET_SNMP_WITH_MIB_MODULE_LIST+= if-mib
+.endif
+
+.if defined(NET_SNMP_WITH_MIB_MODULE_LIST) && \
+ !empty(NET_SNMP_WITH_MIB_MODULE_LIST)
+CONFIGURE_ARGS+=--with-mib-modules="${NET_SNMP_WITH_MIB_MODULE_LIST}"
.endif
-MAN1= encode_keychange.1 fixproc.1 mib2c.1 mib2c-update.1 \
- net-snmp-config.1 net-snmp-create-v3-user.1 \
+.if defined(NET_SNMP_WITHOUT_MIB_MODULE_LIST) && \
+ !empty(NET_SNMP_WITHOUT_MIB_MODULE_LIST)
+CONFIGURE_ARGS+=--with-out-mib-modules="${NET_SNMP_WITHOUT_MIB_MODULE_LIST}"
+.endif
+
+MAN1= agentxtrap.1 encode_keychange.1 fixproc.1 mib2c.1 mib2c-update.1 \
+ net-snmp-config.1 net-snmp-create-v3-user.1 snmp-bridge-mib.1 \
snmpbulkget.1 snmpbulkwalk.1 snmpcmd.1 snmpconf.1 \
snmpdelta.1 snmpdf.1 snmpget.1 snmpgetnext.1 snmpinform.1 \
snmpnetstat.1 snmpset.1 snmpstatus.1 snmptable.1 snmptest.1 \
snmptranslate.1 snmptrap.1 snmpusm.1 snmpvacm.1 snmpwalk.1 \
tkmib.1 traptoemail.1
MAN3= add_mibdir.3 add_module_replacement.3 \
- config_perror.3 config_pwarn.3 config_api.3 \
+ config_perror.3 config_pwarn.3 \
default_store.3 fprint_description.3 \
fprint_objid.3 fprint_value.3 fprint_variable.3 \
- get_module_node.3 init_mib.3 init_mib_internals.3 mib_api.3 \
- netsnmp_access_multiplexer.3 \
- netsnmp_agent_handler.h.3 \
- netsnmp_agent.3 \
- netsnmp_baby_steps.3 \
- netsnmp_bulk_to_next.3 \
- netsnmp_cache_handler.3 netsnmp_container.3 \
- netsnmp_container_iterator.3 \
- netsnmp_container_iterator.h.3 \
- netsnmp_debug.3 \
- netsnmp_ds_get_boolean.3 netsnmp_ds_get_int.3 \
- netsnmp_ds_get_string.3 \
- netsnmp_ds_register_config.3 netsnmp_ds_register_premib.3 \
- netsnmp_ds_set_boolean.3 netsnmp_ds_set_int.3 \
- netsnmp_ds_set_string.3 netsnmp_ds_shutdown.3 \
- netsnmp_example_scalar_int.3 netsnmp_handler.3 \
- netsnmp_instance.3 \
- netsnmp_iterator_info_s.3 \
- netsnmp_leaf.3 netsnmp_library.3 \
- netsnmp_mib_handler_methods.3 netsnmp_mib_utilities.3 \
- netsnmp_mode_end_call.3 netsnmp_multiplexer.3 \
- netsnmp_netsnmp_monitor_callback_header_s.3 \
- netsnmp_null_container.3 \
- netsnmp_old_api.3 netsnmp_read_only.3 \
- netsnmp_row_merge.3 \
- netsnmp_scalar.3 \
- netsnmp_scalar_group_group.3 \
- netsnmp_serialize.3 \
- netsnmp_stash_cache.3 \
- netsnmp_table.3 netsnmp_table_array.3 \
- netsnmp_table_data.3 netsnmp_table_dataset.3 \
- netsnmp_table_iterator.3 \
- netsnmp_table_row.3 \
- netsnmp_tools.h.3 \
- netsnmp_utilities.3 \
- netsnmp_watcher.3 \
- pdu_api.3 \
+ get_module_node.3 \
+ netsnmp_agent_api.3 netsnmp_config_api.3 netsnmp_init_mib.3 \
+ netsnmp_mib_api.3 netsnmp_pdu_api.3 netsnmp_read_module.3 \
+ netsnmp_sess_api.3 netsnmp_session_api.3 netsnmp_trap_api.3 netsnmp_varbind_api.3 \
print_description.3 print_mib.3 print_objid.3 print_value.3 \
print_variable.3 read_all_mibs.3 \
- read_config.3 read_configs.3 read_config_print_usage.3 \
- read_mib.3 read_module.3 read_module_node.3 read_objid.3 \
+ read_configs.3 read_config_print_usage.3 \
+ read_mib.3 read_objid.3 \
read_premib_configs.3 \
- register_app_config_handler.3 register_app_premib_handler.3 \
+ register_app_config_handler.3 \
register_config_handler.3 register_mib_handlers.3 \
- register_premib_handler.3 \
send_easy_trap.3 send_trap_vars.3 send_v2trap.3 \
- session_api.3 \
shutdown_mib.3 \
- snmp_agent_api.3 \
snmp_alarm.3 snmp_alarm_register.3 \
snmp_alarm_register_hr.3 snmp_alarm_unregister.3 \
snmp_api_errstring.3 snmp_close.3 \
snmp_error.3 snmp_free_pdu.3 snmp_open.3 snmp_perror.3 \
snmp_read.3 snmp_select_info.3 \
- snmp_send.3 snmp_sess_api.3 snmp_sess_async_send.3 \
+ snmp_send.3 snmp_sess_async_send.3 \
snmp_sess_close.3 snmp_sess_error.3 snmp_sess_init.3 \
snmp_sess_open.3 snmp_sess_perror.3 \
snmp_sess_read.3 snmp_sess_select_info.3 \
snmp_sess_send.3 snmp_sess_session.3 snmp_sess_timeout.3 \
snmp_set_mib_warnings.3 snmp_set_save_descriptions.3 \
- snmp_timeout.3 snmp_trap_api.3 \
+ snmp_timeout.3 \
snprint_objid.3 snprint_value.3 snprint_variable.3 \
- sprint_realloc_objid.3 sprint_realloc_value.3 \
- sprint_realloc_variable.3 \
unregister_app_config_handler.3 \
unregister_config_handler.3 \
- varbind_api.3
+ unregister_all_config_handlers.3 \
+ register_prenetsnmp_mib_handler.3 register_const_config_handler.3 register_app_prenetsnmp_mib_handler.3 \
+ snprint_description.3 \
+ snmp_varlist_add_variable.3 \
+ snmp_set_var_value.3 \
+ snmp_set_var_typed_value.3 \
+ snmp_set_var_typed_integer.3 \
+ snmp_set_var_objid.3 \
+ snmp_set_mib_errors.3 snmp_pdu_create.3 snmp_pdu_add_variable.3 snmp_parse_oid.3 snmp_free_varbind.3 \
+ snmp_free_var.3 snmp_fix_pdu.3 snmp_clone_varbind.3 snmp_clone_pdu.3 snmp_add_null_var.3
.if defined(WITH_PERL)
MAN3PERL= NetSNMP::ASN.3 NetSNMP::OID.3 NetSNMP::agent.3 \
@@ -238,20 +223,29 @@ pre-everything::
@${ECHO_MSG} " Default log file location for snmpd."
@${ECHO_MSG} "NET_SNMP_PERSISTENTDIR=\"${NET_SNMP_PERSISTENTDIR}\""
@${ECHO_MSG} " Default directory for persistent data storage."
+ @${ECHO_MSG} "NET_SNMP_WITH_MIB_MODULE_LIST=\"${NET_SNMP_WITH_MIB_MODULE_LIST}\""
+ @${ECHO_MSG} " MIBs to add to the build."
+ @${ECHO_MSG} "NET_SNMP_WITHOUT_MIB_MODULE_LIST=\"${NET_SNMP_WITHOUT_MIB_MODULE_LIST}\""
+ @${ECHO_MSG} " MIBs to omit from the build."
@${ECHO_MSG}
post-patch:
.for filename in ${SCRIPT_FILES}
- @${REINPLACE_CMD} ${SCRIPTS_SUB:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} \
+ ${REINPLACE_CMD} ${SCRIPTS_SUB:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} \
${WRKSRC}/local/${filename}
.endfor
.if ${OSVERSION} >= 900007
- ${REINPLACE_CMD} -e 's!utmp_p->ut_name!utmp_p->ut_user!' ${WRKSRC}/agent/mibgroup/host/hr_system.c
+ @${REINPLACE_CMD} -e 's!utmp_p->ut_name!utmp_p->ut_user!' ${WRKSRC}/agent/mibgroup/host/hr_system.c
.endif
post-configure:
- @${FIND} ${WRKSRC} -name Makefile | \
+ ${FIND} ${WRKSRC} -name Makefile | \
${XARGS} ${REINPLACE_CMD} -E -e '/^INSTALL[ ]+=/s|$$| -m 755|'
+.for hdr in sys/mbuf.h netinet/in_pcb.h netinet/in_var.h netinet/ip6.h
+ @${REINPLACE_CMD} -E -e '\
+ s!^.*#undef.*(HAVE_${hdr:U:S/./_/g:S/\//_/g}).*$$!#define \1 1!g' \
+ ${WRKSRC}/include/net-snmp/net-snmp-config.h
+.endfor
post-build:
.if defined(WITH_PERL)
@@ -270,23 +264,23 @@ post-install: strip-files install-config-files install-doc-files display-message
${MKDIR} /var/agentx
strip-files:
- @cd ${PREFIX}/bin; ${STRIP_CMD} ${BIN_FILES}
- @cd ${PREFIX}/sbin; ${STRIP_CMD} ${SBIN_FILES}
+ cd ${PREFIX}/bin; ${STRIP_CMD} ${BIN_FILES}
+ cd ${PREFIX}/sbin; ${STRIP_CMD} ${SBIN_FILES}
install-config-files:
- @${INSTALL_DATA} ${WRKSRC}/EXAMPLE.conf ${DATADIR}/snmpd.conf.example
+ ${INSTALL_DATA} ${WRKSRC}/EXAMPLE.conf ${DATADIR}/snmpd.conf.example
install-doc-files:
.if !defined(NOPORTDOCS)
- @${MKDIR} ${DOCSDIR}
+ ${MKDIR} ${DOCSDIR}
. for filename in ${DOC_FILES}
- @${INSTALL_DATA} ${WRKSRC}/${filename} ${DOCSDIR}
+ ${INSTALL_DATA} ${WRKSRC}/${filename} ${DOCSDIR}
. endfor
.endif
display-message:
- @${ECHO_MSG}
- @${CAT} ${PKGMESSAGE}
+ ${ECHO_MSG}
+ ${CAT} ${PKGMESSAGE}
# Maintainer's note:
# Don't forget to bump library version in these ports.