- Update to 1.8.10.

- Use SF macro.
- Respect NOPORTDOCS/NOPORTEXAMPLES case.

PR:		ports/127036
Submitted by:	Dmitry Frolov <frolov@riss-telecom.ru> (maintainer)
This commit is contained in:
Felippe de Meirelles Motta 2008-09-04 01:05:55 +00:00
parent 9c37eb659b
commit 5fef66a56c
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=219815
4 changed files with 24 additions and 204 deletions

View file

@ -6,10 +6,9 @@
#
PORTNAME= ipmitool
PORTVERSION= 1.8.9
PORTVERSION= 1.8.10
CATEGORIES= sysutils
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
MASTER_SITE_SUBDIR= ${PORTNAME}
MASTER_SITES= SF
MAINTAINER= frolov@riss-telecom.ru
COMMENT= CLI to manage IPMI systems
@ -22,8 +21,10 @@ CONFIGURE_ARGS+= --enable-intf-lan --enable-intf-lanplus \
--disable-intf-imb --disable-intf-lipmi --disable-intf-bmc
CONFIGURE_ENV+= CC="${CC}" CFLAGS="${CFLAGS}" CPPFLAGS="${CPPFLAGS}" \
LDFLAGS="${LDFLAGS}"
PLIST_FILES= bin/ipmitool sbin/ipmievd
PORTDOCS= *
PLIST_FILES= bin/ipmitool sbin/ipmievd share/ipmitool/oem_ibm_sel_map
PLIST_DIRS= share/ipmitool
PORTDOCS= AUTHORS COPYING ChangeLog README
MAN1+= ${PORTNAME}.1
MAN8+= ipmievd.8
@ -47,13 +48,6 @@ CONFIGURE_ARGS+= --disable-intf-open
.if defined(WITH_FREEIPMI) || \
(exists(${LOCALBASE}/include/freeipmi/freeipmi.h) && \
!defined(WITHOUT_FREEIPMI))
# Support for FreeIPMI 0.4.x and 0.5.x API
EXTRA_PATCHES+= ${FILESDIR}/freeipmi-support.patch
USE_AUTOTOOLS+= autoconf:262 libtool:15 aclocal:19 automake:19
# libtool15 installs it's aclocal macros into ${LOCALBASE}/share/aclocal
ACLOCAL_ARGS+= --acdir=${ACLOCAL_DIR} -I ${LOCALBASE}/share/aclocal
# Make automake quiet about missing NEWS and ChangeLog files
AUTOMAKE_ARGS+= --foreign
LIB_DEPENDS+= freeipmi:${PORTSDIR}/sysutils/freeipmi
CPPFLAGS+= -I${LOCALBASE}/include
LDFLAGS+= -L${LOCALBASE}/lib
@ -62,4 +56,8 @@ CONFIGURE_ARGS+= --enable-intf-free
CONFIGURE_ARGS+= --disable-intf-free
.endif
.if defined(NOPORTDOCS)
EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-Makefile.in
.endif
.include <bsd.port.post.mk>

View file

@ -1,3 +1,3 @@
MD5 (ipmitool-1.8.9.tar.bz2) = af3d63b17a22744fb77b8c0ceb104b72
SHA256 (ipmitool-1.8.9.tar.bz2) = 174e9ebacc9a63a0758a196532d1d1bc9ba8a3cb150fd66fbc50c5bc746a4845
SIZE (ipmitool-1.8.9.tar.bz2) = 513004
MD5 (ipmitool-1.8.10.tar.bz2) = ead658c27b21192c8fb3376a63963203
SHA256 (ipmitool-1.8.10.tar.bz2) = 01e9b622d0a04159fb4072a63cfc8b23bc01b5afd2972287b437aafd3e4df5c9
SIZE (ipmitool-1.8.10.tar.bz2) = 566266

View file

@ -0,0 +1,11 @@
--- Makefile.in.orig Fri Aug 8 04:33:51 2008
+++ Makefile.in Sun Aug 10 11:12:54 2008
@@ -688,8 +688,6 @@
cp control/ipmitool.spec $(distdir)
install-data-local:
- mkdir -p $(DESTDIR)$(DOCDIR)
- $(INSTALL_DATA) $(DOCLIST) $(DESTDIR)$(DOCDIR)
uninstall-local:
-rm -rf $(DESTDIR)$(DOCDIR)

View file

@ -1,189 +0,0 @@
diff -u -ruN ../ipmitool-1.8.9/configure.in ./configure.in
--- ../ipmitool-1.8.9/configure.in Wed Mar 7 04:15:35 2007
+++ ./configure.in Sat Dec 15 19:22:10 2007
@@ -239,7 +239,7 @@
fi
if test "x$enable_intf_free" = "xyes"; then
dnl Determine if you got the right FreeIPMI version
- AC_MSG_CHECKING([for good libfreeipmi version])
+ AC_MSG_CHECKING([for libfreeipmi version 0.3.0])
AC_TRY_COMPILE([
#include <sys/types.h> /* For size_t */
#include <stdio.h> /* For NULL */
@@ -253,13 +253,65 @@
0,
NULL,
0);
- ], ac_free_version_good=yes,ac_free_version_good=no)
- AC_MSG_RESULT($ac_free_version_good)
- if test "x$ac_free_version_good" = "xyes"; then
+ ], ac_free_version_0_3_0=yes,ac_free_version_0_3_0=no)
+ AC_MSG_RESULT($ac_free_version_0_3_0)
+ AC_MSG_CHECKING([for libfreeipmi version 0.4.0])
+ AC_TRY_COMPILE([
+#include <sys/types.h> /* For size_t */
+#include <stdio.h> /* For NULL */
+#include <freeipmi/freeipmi.h>
+#include <freeipmi/udm/ipmi-udm.h>
+ ], [
+ ipmi_device_t dev = NULL;
+ int rv;
+ dev = ipmi_device_create();
+ rv = ipmi_open_inband(dev,
+ IPMI_DEVICE_KCS,
+ 0,
+ 0,
+ 0,
+ NULL,
+ 0);
+ ], ac_free_version_0_4_0=yes,ac_free_version_0_4_0=no)
+ AC_MSG_RESULT($ac_free_version_0_4_0)
+
+ AC_MSG_CHECKING([for libfreeipmi version 0.5.0])
+ AC_TRY_COMPILE([
+#include <sys/types.h> /* For size_t */
+#include <stdio.h> /* For NULL */
+#include <freeipmi/freeipmi.h>
+#include <freeipmi/udm/ipmi-udm.h>
+ ], [
+ ipmi_device_t dev = NULL;
+ int rv;
+ dev = ipmi_device_create();
+ rv = ipmi_open_inband(dev,
+ IPMI_DEVICE_KCS,
+ 0,
+ 0,
+ 0,
+ NULL,
+ 0,
+ 0);
+ ], ac_free_version_0_5_0=yes,ac_free_version_0_5_0=no)
+ AC_MSG_RESULT($ac_free_version_0_5_0)
+
+ if test "x$ac_free_version_0_3_0" = "xyes" \
+ || test "x$ac_free_version_0_4_0" = "xyes" \
+ || test "x$ac_free_version_0_5_0" = "xyes"; then
AC_DEFINE(IPMI_INTF_FREE, [1], [Define to 1 to enable FreeIPMI interface.])
AC_SUBST(INTF_FREE, [free])
AC_SUBST(INTF_FREE_LIB, [libintf_free.la])
IPMITOOL_INTF_LIB="$IPMITOOL_INTF_LIB free/libintf_free.la"
+ if test "x$ac_free_version_0_3_0" = "xyes"; then
+ AC_DEFINE(IPMI_INTF_FREE_VERSION_0_3_0, [1], [Define to 1 for FreeIPMI 0.3.0.])
+ fi
+ if test "x$ac_free_version_0_4_0" = "xyes"; then
+ AC_DEFINE(IPMI_INTF_FREE_VERSION_0_4_0, [1], [Define to 1 for FreeIPMI 0.4.0.])
+ fi
+ if test "x$ac_free_version_0_5_0" = "xyes"; then
+ AC_DEFINE(IPMI_INTF_FREE_VERSION_0_5_0, [1], [Define to 1 for FreeIPMI 0.5.0.])
+ fi
else
enable_intf_free=no
fi
diff -u -ruN ../ipmitool-1.8.9/src/plugins/free/free.c ./src/plugins/free/free.c
--- ../ipmitool-1.8.9/src/plugins/free/free.c Fri Feb 23 00:17:46 2007
+++ ./src/plugins/free/free.c Sat Dec 15 19:22:10 2007
@@ -58,6 +58,7 @@
return -1;
}
+#if IPMI_INTF_FREE_VERSION_0_3_0
if (!(dev = ipmi_open_inband (IPMI_DEVICE_KCS,
0,
0,
@@ -74,19 +75,80 @@
goto cleanup;
}
}
+#elif IPMI_INTF_FREE_VERSION_0_4_0
+ if (!(dev = ipmi_device_create())) {
+ perror("ipmi_open_inband()");
+ goto cleanup;
+ }
+ if (ipmi_open_inband (dev,
+ IPMI_DEVICE_KCS,
+ 0,
+ 0,
+ 0,
+ NULL,
+ IPMI_FLAGS_DEFAULT) < 0) {
+ if (ipmi_open_inband (dev,
+ IPMI_DEVICE_SSIF,
+ 0,
+ 0,
+ 0,
+ NULL,
+ IPMI_FLAGS_DEFAULT) < 0) {
+ fprintf(stderr,
+ "ipmi_open_inband(): %s\n",
+ ipmi_device_strerror(ipmi_device_errnum(dev)));
+ goto cleanup;
+ }
+ }
+#elif IPMI_INTF_FREE_VERSION_0_5_0
+ if (!(dev = ipmi_device_create())) {
+ perror("ipmi_open_inband()");
+ goto cleanup;
+ }
+ if (ipmi_open_inband (dev,
+ IPMI_DEVICE_KCS,
+ 0,
+ 0,
+ 0,
+ NULL,
+ 0,
+ IPMI_FLAGS_DEFAULT) < 0) {
+ if (ipmi_open_inband (dev,
+ IPMI_DEVICE_SSIF,
+ 0,
+ 0,
+ 0,
+ NULL,
+ 0,
+ IPMI_FLAGS_DEFAULT) < 0) {
+ fprintf(stderr,
+ "ipmi_open_inband(): %s\n",
+ ipmi_device_strerror(ipmi_device_errnum(dev)));
+ goto cleanup;
+ }
+ }
+#endif
intf->opened = 1;
return 0;
cleanup:
- if (dev)
+ if (dev) {
ipmi_close_device(dev);
+#if IPMI_INTF_FREE_VERSION_0_4_0
+ ipmi_device_destroy(dev);
+#endif
+ }
return -1;
}
static void ipmi_free_close(struct ipmi_intf * intf)
{
- if (dev)
+ if (dev) {
ipmi_close_device(dev);
+#if IPMI_INTF_FREE_VERSION_0_4_0
+ ipmi_device_destroy(dev);
+#endif
+ }
intf->opened = 0;
}
@@ -132,7 +194,13 @@
req->msg.data_len + 1,
rs_buf,
rs_buf_len)) < 0) {
+#if IPMI_INTF_FREE_VERSION_0_3_0
perror("ipmi_cmd_raw");
+#elif IPMI_INTF_FREE_VERSION_0_4_0
+ fprintf(stderr,
+ "ipmi_cmd_raw: %s\n",
+ ipmi_device_strerror(ipmi_device_errnum(dev)));
+#endif
return NULL;
}