# Buildsheet autogenerated by ravenadm tool -- Do not edit. NAMEBASE= freeipmi VERSION= 1.6.14 KEYWORDS= sysutils VARIANTS= standard SDESC[standard]= IPMI remote console and system management software HOMEPAGE= https://www.gnu.org/software/freeipmi/ CONTACT= nobody DOWNLOAD_GROUPS= main SITES[main]= GNU/freeipmi DISTFILE[1]= freeipmi-1.6.14.tar.gz:main DF_INDEX= 1 SPKGS[standard]= complete primary dev tools man docs OPTIONS_AVAILABLE= ARGP OPTIONS_STANDARD= ARGP OPT_ON[freebsd]= ARGP OPT_ON[sunos]= ARGP OPT_ON[netbsd]= ARGP OPT_ON[dragonfly]= ARGP OPT_ON[midnightbsd]= ARGP BUILD_DEPENDS= libgcrypt:dev:standard BUILDRUN_DEPENDS= libgcrypt:primary:standard EXRUN[tools]= primary USES= gmake libtool makeinfo shebangfix mbsdfix LICENSE= GPLv3+:primary LICENSE_TERMS= primary:{{WRKDIR}}/TERMS LICENSE_FILE= GPLv3+:{{WRKSRC}}/COPYING LICENSE_AWK= TERMS:"FREEIPMI_H" LICENSE_SOURCE= TERMS:{{WRKSRC}}/libfreeipmi/include/freeipmi/freeipmi.h.in LICENSE_SCHEME= solo INFO= docs:freeipmi-faq FPC_EQUIVALENT= sysutils/freeipmi INFO_SUBDIR= . SHEBANG_FILES= contrib/ganglia/ganglia_ipmi_sensors.pl contrib/nagios/nagios_ipmi_sensors.pl contrib/pet/check_rmcpping contrib/pet/petalert.pl MUST_CONFIGURE= gnu CONFIGURE_ARGS= --disable-init-scripts --sysconfdir={{PREFIX}}/etc/freeipmi --with-ipmi-monitoring-sdr-cache-dir=/var/db/freeipmi/ipmimonitoringsdrcache --with-ipmiseld-cache-dir=/var/db/freeipmi/ipmiseld --with-pkgconfig-dir={{PREFIX}}/lib/pkgconfig INSTALL_REQ_TOOLCHAIN= yes SOVERSION= 17.2.12 PLIST_SUB= PMICONSOLE_SOVERSION=2.3.6 PMICONSOLE_SOMAJOR=2 PMIMONITOR_SOVERSION=6.0.9 PMIMONITOR_SOMAJOR=6 PMIDETECT_SOVERSION=0.0.1 PMIDETECT_SOMAJOR=0 VAR_OPSYS[freebsd]= CFLAGS=-D_WANT_SEMUN VAR_OPSYS[midnightbsd]= CFLAGS=-D_WANT_SEMUN [ARGP].DESCRIPTION= Build with standalone version of argp from glibc [ARGP].BUILDRUN_DEPENDS_ON= argp-standalone:primary:standard [ARGP].BUILD_DEPENDS_ON= argp-standalone:dev:standard post-install: ${MKDIR} -m 0700 -p \ ${STAGEDIR}/var/db/freeipmi/ipmimonitoringsdrcache \ ${STAGEDIR}/var/db/freeipmi/ipmiseld \ ${STAGEDIR}/var/lib/freeipmi \ ${STAGEDIR}/var/run/freeipmi ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/*.so pre-configure: ${FIND} ${WRKSRC} -name '*.man' -o -name '*.pre.in' |\ ${XARGS} -I % ${REINPLACE_CMD} -e '/^\.\\\"/ s|$$|"|' % ${REINPLACE_CMD} -e 's|\($$(LN_S) -f \)$$(sbindir)/|\1|' ${WRKSRC}/*/Makefile.in [FILE:616:descriptions/desc.primary] FreeIPMI provides in-band and out-of-band IPMI software based on the IPMI v1.5/2.0 specification. The IPMI specification defines a set of interfaces for platform management and is implemented by a number vendors for system management. The features of IPMI that most users will be interested in are sensor monitoring, system event monitoring, power control, and serial-over-LAN (SOL). The FreeIPMI tools and libraries should provide users with the ability to access and utilize these and many other features. A number of useful features for large HPC or cluster environments have also been implemented into FreeIPMI. [FILE:61:descriptions/desc.tools] This package contains tools based on the FreeIPMI libraries. [FILE:101:distinfo] 1a3dac5c76b7ccc4d4f86aa12b8ef9b212baef7489bf05e899b89abb7e14edb5 3464254 freeipmi-1.6.14.tar.gz [FILE:323:manifests/plist.primary] lib/ libfreeipmi.so.%%SOMAJOR%% libfreeipmi.so.%%SOVERSION%% libipmiconsole.so.%%PMICONSOLE_SOMAJOR%% libipmiconsole.so.%%PMICONSOLE_SOVERSION%% libipmidetect.so.%%PMIDETECT_SOMAJOR%% libipmidetect.so.%%PMIDETECT_SOVERSION%% libipmimonitoring.so.%%PMIMONITOR_SOMAJOR%% libipmimonitoring.so.%%PMIMONITOR_SOVERSION%% [FILE:8836:manifests/plist.dev] include/ ipmi_monitoring.h ipmi_monitoring_bitmasks.h ipmi_monitoring_offsets.h ipmiconsole.h ipmidetect.h include/freeipmi/freeipmi.h include/freeipmi/api/ ipmi-api.h ipmi-chassis-cmds-api.h ipmi-dcmi-cmds-api.h ipmi-device-global-cmds-api.h ipmi-event-cmds-api.h ipmi-firmware-firewall-command-discovery-cmds-api.h ipmi-fru-inventory-device-cmds-api.h ipmi-lan-cmds-api.h ipmi-messaging-support-cmds-api.h ipmi-oem-intel-node-manager-cmds-api.h ipmi-pef-and-alerting-cmds-api.h ipmi-rmcpplus-support-and-payload-cmds-api.h ipmi-sdr-repository-cmds-api.h ipmi-sel-cmds-api.h ipmi-sensor-cmds-api.h ipmi-serial-modem-cmds-api.h ipmi-sol-cmds-api.h include/freeipmi/cmds/ ipmi-bmc-watchdog-timer-cmds.h ipmi-chassis-cmds.h ipmi-dcmi-cmds.h ipmi-dcmi-oem-cmds.h ipmi-device-global-cmds.h ipmi-event-cmds.h ipmi-firmware-firewall-command-discovery-cmds.h ipmi-fru-inventory-device-cmds.h ipmi-lan-cmds.h ipmi-messaging-support-cmds.h ipmi-oem-intel-node-manager-cmds.h ipmi-pef-and-alerting-cmds.h ipmi-rmcpplus-support-and-payload-cmds.h ipmi-sdr-repository-cmds.h ipmi-sel-cmds.h ipmi-sensor-cmds.h ipmi-serial-modem-cmds.h ipmi-sol-cmds.h rmcp-cmds.h include/freeipmi/debug/ipmi-debug.h include/freeipmi/driver/ ipmi-inteldcmi-driver.h ipmi-kcs-driver.h ipmi-openipmi-driver.h ipmi-ssif-driver.h ipmi-sunbmc-driver.h include/freeipmi/fiid/fiid.h include/freeipmi/fru/ipmi-fru.h include/freeipmi/interface/ ipmi-interface.h ipmi-ipmb-interface.h ipmi-kcs-interface.h ipmi-lan-interface.h ipmi-rmcpplus-interface.h rmcp-interface.h include/freeipmi/interpret/ipmi-interpret.h include/freeipmi/locate/ipmi-locate.h include/freeipmi/payload/ipmi-sol-payload.h include/freeipmi/record-format/ ipmi-cipher-suite-record-format.h ipmi-fru-dimmspd-record-format.h ipmi-fru-information-record-format.h ipmi-fru-oem-record-format.h ipmi-platform-event-trap-record-format.h ipmi-sdr-oem-record-format.h ipmi-sdr-record-format.h ipmi-sel-oem-record-format.h ipmi-sel-record-format.h include/freeipmi/record-format/oem/ ipmi-fru-wistron-oem-record-format.h ipmi-fru-xilinx-oem-record-format.h ipmi-sdr-oem-intel-node-manager-record-format.h ipmi-sdr-oem-intel-record-format.h ipmi-sel-oem-intel-record-format.h ipmi-sel-oem-linux-kernel-record-format.h include/freeipmi/sdr/ ipmi-sdr-oem.h ipmi-sdr.h include/freeipmi/sdr/oem/ipmi-sdr-oem-intel-node-manager.h include/freeipmi/sel/ipmi-sel.h include/freeipmi/sensor-read/ipmi-sensor-read.h include/freeipmi/spec/ ipmi-authentication-type-spec.h ipmi-channel-spec.h ipmi-cmd-dcmi-spec.h ipmi-cmd-spec.h ipmi-comp-code-dcmi-spec.h ipmi-comp-code-oem-spec.h ipmi-comp-code-spec.h ipmi-device-types-oem-spec.h ipmi-device-types-spec.h ipmi-entity-ids-spec.h ipmi-event-reading-type-code-oem-spec.h ipmi-event-reading-type-code-spec.h ipmi-fru-chassis-types-spec.h ipmi-fru-language-codes-spec.h ipmi-iana-enterprise-numbers-spec.h ipmi-ipmb-lun-spec.h ipmi-jedec-manufacturer-identification-code-spec.h ipmi-lan-configuration-parameters-oem-spec.h ipmi-lan-configuration-parameters-spec.h ipmi-netfn-oem-spec.h ipmi-netfn-spec.h ipmi-oem-spec.h ipmi-pef-configuration-parameters-oem-spec.h ipmi-pef-configuration-parameters-spec.h ipmi-privilege-level-spec.h ipmi-product-id-spec.h ipmi-rmcpplus-status-spec.h ipmi-sensor-and-event-code-tables-oem-spec.h ipmi-sensor-and-event-code-tables-spec.h ipmi-sensor-numbers-oem-spec.h ipmi-sensor-types-oem-spec.h ipmi-sensor-types-spec.h ipmi-sensor-units-spec.h ipmi-serial-modem-configuration-parameters-oem-spec.h ipmi-serial-modem-configuration-parameters-spec.h ipmi-slave-address-oem-spec.h ipmi-slave-address-spec.h ipmi-sol-configuration-parameters-oem-spec.h ipmi-sol-configuration-parameters-spec.h ipmi-system-boot-option-parameters-oem-spec.h ipmi-system-boot-option-parameters-spec.h ipmi-system-info-parameters-oem-spec.h ipmi-system-info-parameters-spec.h ipmi-system-software-id-spec.h ipmi-timestamp-spec.h include/freeipmi/spec/oem/ ipmi-cmd-oem-dell-spec.h ipmi-cmd-oem-fujitsu-spec.h ipmi-cmd-oem-gigabyte-spec.h ipmi-cmd-oem-ibm-spec.h ipmi-cmd-oem-intel-node-manager-spec.h ipmi-cmd-oem-intel-spec.h ipmi-cmd-oem-inventec-spec.h ipmi-cmd-oem-quanta-spec.h ipmi-cmd-oem-sun-microsystems-spec.h ipmi-cmd-oem-supermicro-spec.h ipmi-cmd-oem-wistron-spec.h ipmi-comp-code-oem-dell-spec.h ipmi-comp-code-oem-fujitsu-spec.h ipmi-comp-code-oem-intel-node-manager-spec.h ipmi-comp-code-oem-intel-spec.h ipmi-comp-code-oem-wistron-spec.h ipmi-event-reading-type-code-oem-dell-spec.h ipmi-event-reading-type-code-oem-hp-spec.h ipmi-event-reading-type-code-oem-intel-node-manager-spec.h ipmi-event-reading-type-code-oem-intel-spec.h ipmi-event-reading-type-code-oem-inventec-spec.h ipmi-event-reading-type-code-oem-supermicro-spec.h ipmi-lan-configuration-parameters-oem-inventec-spec.h ipmi-lan-configuration-parameters-oem-wistron-spec.h ipmi-netfn-oem-dell-spec.h ipmi-netfn-oem-fujitsu-spec.h ipmi-netfn-oem-ibm-spec.h ipmi-netfn-oem-intel-spec.h ipmi-netfn-oem-inventec-spec.h ipmi-netfn-oem-quanta-spec.h ipmi-netfn-oem-supermicro-spec.h ipmi-netfn-oem-wistron-spec.h ipmi-oem-dell-spec.h ipmi-oem-fujitsu-spec.h ipmi-oem-gigabyte-spec.h ipmi-oem-ibm-spec.h ipmi-oem-intel-spec.h ipmi-oem-inventec-spec.h ipmi-oem-quanta-spec.h ipmi-oem-sun-microsystems-spec.h ipmi-oem-supermicro-spec.h ipmi-oem-wistron-spec.h ipmi-sensor-and-event-code-tables-oem-dell-spec.h ipmi-sensor-and-event-code-tables-oem-fujitsu-spec.h ipmi-sensor-and-event-code-tables-oem-gigabyte-spec.h ipmi-sensor-and-event-code-tables-oem-hp-spec.h ipmi-sensor-and-event-code-tables-oem-intel-node-manager-spec.h ipmi-sensor-and-event-code-tables-oem-intel-spec.h ipmi-sensor-and-event-code-tables-oem-inventec-spec.h ipmi-sensor-and-event-code-tables-oem-quanta-spec.h ipmi-sensor-and-event-code-tables-oem-supermicro-spec.h ipmi-sensor-and-event-code-tables-oem-wistron-spec.h ipmi-sensor-numbers-oem-dell-spec.h ipmi-sensor-numbers-oem-intel-node-manager-spec.h ipmi-sensor-numbers-oem-intel-spec.h ipmi-sensor-numbers-oem-inventec-spec.h ipmi-sensor-numbers-oem-quanta-spec.h ipmi-sensor-numbers-oem-wistron-spec.h ipmi-sensor-types-oem-dell-spec.h ipmi-sensor-types-oem-fujitsu-spec.h ipmi-sensor-types-oem-hp-spec.h ipmi-sensor-types-oem-intel-node-manager-spec.h ipmi-sensor-types-oem-intel-spec.h ipmi-sensor-types-oem-inventec-spec.h ipmi-sensor-types-oem-supermicro-spec.h ipmi-sensor-types-oem-wistron-spec.h ipmi-slave-address-oem-intel-spec.h ipmi-slave-address-oem-inventec-spec.h ipmi-slave-address-oem-linux-kernel-spec.h ipmi-slave-address-oem-quanta-spec.h ipmi-slave-address-oem-wistron-spec.h ipmi-sol-configuration-parameters-oem-inventec-spec.h ipmi-sol-configuration-parameters-oem-wistron-spec.h ipmi-system-info-parameters-oem-dell-spec.h ipmi-system-info-parameters-oem-wistron-spec.h include/freeipmi/templates/ ipmi-bmc-watchdog-timer-cmds-templates.h ipmi-chassis-cmds-templates.h ipmi-cipher-suite-record-format-templates.h ipmi-dcmi-cmds-templates.h ipmi-device-global-cmds-templates.h ipmi-event-cmds-templates.h ipmi-firmware-firewall-command-discovery-cmds-templates.h ipmi-fru-dimmspd-record-format-templates.h ipmi-fru-information-record-format-templates.h ipmi-fru-inventory-device-cmds-templates.h ipmi-ipmb-interface-templates.h ipmi-kcs-interface-templates.h ipmi-lan-cmds-templates.h ipmi-lan-interface-templates.h ipmi-messaging-support-cmds-templates.h ipmi-oem-intel-node-manager-cmds-templates.h ipmi-pef-and-alerting-cmds-templates.h ipmi-rmcpplus-interface-templates.h ipmi-rmcpplus-support-and-payload-cmds-templates.h ipmi-sdr-record-format-templates.h ipmi-sdr-repository-cmds-templates.h ipmi-sel-cmds-templates.h ipmi-sel-record-format-templates.h ipmi-sensor-cmds-templates.h ipmi-serial-modem-cmds-templates.h ipmi-sol-cmds-templates.h ipmi-sol-payload-templates.h rmcp-cmds-templates.h rmcp-interface-templates.h include/freeipmi/templates/oem/ipmi-sdr-oem-intel-node-manager-record-format-templates.h include/freeipmi/util/ ipmi-channel-util.h ipmi-cipher-suite-util.h ipmi-dcmi-util.h ipmi-device-types-util.h ipmi-entity-ids-util.h ipmi-error-dcmi-util.h ipmi-error-util.h ipmi-iana-enterprise-numbers-util.h ipmi-ipmb-util.h ipmi-jedec-manufacturer-identification-code-util.h ipmi-lan-util.h ipmi-outofband-util.h ipmi-rmcpplus-util.h ipmi-sensor-and-event-code-tables-util.h ipmi-sensor-util.h ipmi-timestamp-util.h ipmi-util.h rmcp-util.h lib/ libfreeipmi.a libfreeipmi.so libipmiconsole.a libipmiconsole.so libipmidetect.a libipmidetect.so libipmimonitoring.a libipmimonitoring.so lib/pkgconfig/ libfreeipmi.pc libipmiconsole.pc libipmidetect.pc libipmimonitoring.pc [FILE:688:manifests/plist.tools] /var/lib/freeipmi/ipckey etc/freeipmi/ freeipmi.conf.sample freeipmi_interpret_sel.conf freeipmi_interpret_sensor.conf ipmidetect.conf ipmidetectd.conf ipmiseld.conf libipmiconsole.conf sbin/ bmc-config bmc-device bmc-info bmc-watchdog ipmi-chassis ipmi-chassis-config ipmi-config ipmi-console ipmi-dcmi ipmi-detect ipmi-fru ipmi-locate ipmi-oem ipmi-pef-config ipmi-pet ipmi-ping ipmi-power ipmi-raw ipmi-sel ipmi-sensors ipmi-sensors-config ipmiconsole ipmidetect ipmidetectd ipmimonitoring ipmiping ipmipower ipmiseld pef-config rmcp-ping rmcpping @dir /var/db/freeipmi/ipmimonitoringsdrcache @dir /var/db/freeipmi/ipmiseld @dir /var/run/freeipmi [FILE:1100:manifests/plist.man] share/man/man3/ libfreeipmi.3.gz libipmiconsole.3.gz libipmidetect.3.gz libipmimonitoring.3.gz share/man/man5/ bmc-config.conf.5.gz freeipmi.conf.5.gz freeipmi_interpret_sel.conf.5.gz freeipmi_interpret_sensor.conf.5.gz ipmi-config.conf.5.gz ipmi_monitoring_sensors.conf.5.gz ipmiconsole.conf.5.gz ipmidetect.conf.5.gz ipmidetectd.conf.5.gz ipmimonitoring.conf.5.gz ipmimonitoring_sensors.conf.5.gz ipmipower.conf.5.gz ipmiseld.conf.5.gz libipmiconsole.conf.5.gz libipmimonitoring.conf.5.gz share/man/man7/freeipmi.7.gz share/man/man8/ bmc-config.8.gz bmc-device.8.gz bmc-info.8.gz bmc-watchdog.8.gz ipmi-chassis-config.8.gz ipmi-chassis.8.gz ipmi-config.8.gz ipmi-console.8.gz ipmi-dcmi.8.gz ipmi-detect.8.gz ipmi-fru.8.gz ipmi-locate.8.gz ipmi-oem.8.gz ipmi-pef-config.8.gz ipmi-pet.8.gz ipmi-ping.8.gz ipmi-power.8.gz ipmi-raw.8.gz ipmi-sel.8.gz ipmi-sensors-config.8.gz ipmi-sensors.8.gz ipmiconsole.8.gz ipmidetect.8.gz ipmidetectd.8.gz ipmimonitoring.8.gz ipmiping.8.gz ipmipower.8.gz ipmiseld.8.gz pef-config.8.gz rmcp-ping.8.gz rmcpping.8.gz [FILE:359:patches/patch-common-miscutil-network.c] --- common/miscutil/network.c.orig 2024-01-27 21:42:42 UTC +++ common/miscutil/network.c @@ -39,6 +39,8 @@ #include #include #include +#include +#include #include /* MAXHOSTNAMELEN */ #ifdef HAVE_NETDB_H #include /* MAXHOSTNAMELEN Solaris */ [FILE:368:patches/patch-common_portability_freeipmi-portability.h] --- common/portability/freeipmi-portability.h.orig 2024-01-27 21:42:42 UTC +++ common/portability/freeipmi-portability.h @@ -75,6 +75,10 @@ #define O_SYNC O_FSYNC #endif +#if !defined(AI_V4MAPPED) +#define AI_V4MAPPED 0 +#endif + /* FreeBSD don't have log2(), exp10() and exp2() */ #ifndef HAVE_LOG2 /* Cygwin has a log2 macro to already handle portability */ [FILE:943:patches/patch-configure] --- configure.orig 2024-01-27 21:52:52 UTC +++ configure @@ -15460,6 +15460,9 @@ case "${host_cpu}-${host_os}" in # acx_pthread_flags="pthreads pthread none -Kthread -kthread lthread -pthread -pthreads -mthreads --thread-safe -mt" ;; + *bsd*|*dragonfly*) + acx_pthread_flags="pthread -pthread" + ;; esac if test x"$acx_pthread_ok" = xno; then @@ -15674,12 +15677,12 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu -FREEIPMI_SYSCONFDIR=${sysconfdir}/freeipmi/ +FREEIPMI_SYSCONFDIR=${sysconfdir} # Must expand nested unquoting - FREEIPMI_CONFIG_FILE_DEFAULT_TMP1="`eval echo $FREEIPMI_SYSCONFDIR/freeipmi.conf`" + FREEIPMI_CONFIG_FILE_DEFAULT_TMP1="`eval echo $FREEIPMI_SYSCONFDIR/freeipmi.conf.sample`" FREEIPMI_CONFIG_FILE_DEFAULT_TMP2="`echo $FREEIPMI_CONFIG_FILE_DEFAULT_TMP1 | sed 's/^NONE/$ac_default_prefix/'`" FREEIPMI_CONFIG_FILE_DEFAULT="`eval echo $FREEIPMI_CONFIG_FILE_DEFAULT_TMP2`" [FILE:292:patches/patch-ipmi-oem-ipmi-oem.h] --- ipmi-oem/ipmi-oem.h.orig 2023-06-05 22:58:26 UTC +++ ipmi-oem/ipmi-oem.h @@ -20,6 +20,9 @@ #define IPMI_OEM_H #include +#if defined(__FreeBSD__) || defined(__DragonFly__) +#include +#endif #include "tool-cmdline-common.h" #include "pstdout.h" [FILE:709:patches/patch-ipmidetectd_ipmidetectd.c] --- ipmidetectd/ipmidetectd.c.orig 2024-01-27 21:42:42 UTC +++ ipmidetectd/ipmidetectd.c @@ -263,12 +263,16 @@ _nodes_setup (void) ai_hints.ai_flags = (AI_V4MAPPED | AI_ADDRCONFIG); if ((ret = getaddrinfo (host_ptr, port_str, &ai_hints, &ai_res))) +#if defined __Linux__ { if (ret == EAI_NODATA) err_exit ("Invalid hostname: %s", host_ptr); else err_exit ("getaddrinfo %s: %s", host_ptr, gai_strerror (ret)); } +#else + err_exit ("getaddrinfo %s: %s", host_ptr, gai_strerror (ret)); +#endif /* Try all of the different answers we got, until we succeed. */ for (ai = ai_res; ai != NULL; ai = ai->ai_next) [FILE:478:patches/patch-ipmipower_ipmipower__connection.c] --- ipmipower/ipmipower_connection.c.orig 2024-01-27 21:42:42 UTC +++ ipmipower/ipmipower_connection.c @@ -297,8 +297,12 @@ _connection_setup (struct ipmipower_conn if ((ret = getaddrinfo (ic->hostname, port_str, &ai_hints, &ai_res))) { +#if defined __Linux__ if (ret == EAI_NODATA || ret == EAI_NONAME) +#else + if (ret == EAI_NONAME) +#endif ipmipower_output (IPMIPOWER_MSG_TYPE_HOSTNAME_INVALID, ic->hostname, NULL); else { [FILE:1874:patches/patch-libfreeipmi_driver_ipmi-kcs-driver.c] --- libfreeipmi/driver/ipmi-kcs-driver.c.orig 2024-01-27 21:42:53 UTC +++ libfreeipmi/driver/ipmi-kcs-driver.c @@ -145,7 +145,7 @@ #define IPMI_KCS_MICROSECONDS_IN_SECOND 1000000 -#if defined(__FreeBSD__) +#if defined(__FreeBSD__) || defined(__DragonFly__) # include # include #elif defined(__NetBSD__) || defined(__OpenBSD__) @@ -159,7 +159,7 @@ # include #endif -#if defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) +#if defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__DragonFly__) # define _INB(port) inb (port) # define _OUTB(data, port) outb (port, data) #elif defined(HAVE_INB) && defined(HAVE_OUTB) @@ -197,7 +197,7 @@ struct ipmi_kcs_ctx { uint8_t register_spacing; unsigned int flags; unsigned int poll_interval; -#ifdef __FreeBSD__ +#if defined __FreeBSD__ || defined __DragonFly__ #ifndef USE_IOPERM int dev_fd; #endif @@ -275,7 +275,7 @@ ipmi_kcs_ctx_create (void) ctx->register_spacing = IPMI_KCS_SMS_REGISTER_SPACING_DEFAULT; ctx->flags = IPMI_KCS_FLAGS_DEFAULT; ctx->poll_interval = IPMI_KCS_SLEEP_USECS; -#ifdef __FreeBSD__ +#if defined __FreeBSD__ || defined __DragonFly__ #ifndef USE_IOPERM ctx->dev_fd = -1; #endif @@ -303,7 +303,7 @@ ipmi_kcs_ctx_destroy (ipmi_kcs_ctx_t ctx ctx->magic = ~IPMI_KCS_CTX_MAGIC; ctx->errnum = IPMI_KCS_ERR_SUCCESS; -#ifdef __FreeBSD__ +#if defined __FreeBSD__ || defined __DragonFly__ #ifndef USE_IOPERM /* ignore potential error, destroy path */ close (ctx->dev_fd); @@ -492,7 +492,7 @@ ipmi_kcs_ctx_io_init (ipmi_kcs_ctx_t ctx if (ctx->io_init) goto out; -#ifdef __FreeBSD__ +#if defined __FreeBSD__ || defined __DragonFly__ #ifdef USE_IOPERM /* i386_set_ioperm has known problems on FBSD 5.x (bus errors). */ if (i386_set_ioperm (ctx->driver_address, 0x02, 0x01)) [FILE:602:patches/patch-libfreeipmi_driver_ipmi-openipmi-driver.c] --- libfreeipmi/driver/ipmi-openipmi-driver.c.orig 2024-01-27 18:16:19 UTC +++ libfreeipmi/driver/ipmi-openipmi-driver.c @@ -128,7 +128,7 @@ struct ipmi_recv #define IPMI_IOC_MAGIC 'i' #define IPMICTL_RECEIVE_MSG_TRUNC _IOWR (IPMI_IOC_MAGIC, 11, struct ipmi_recv) #define IPMICTL_RECEIVE_MSG _IOWR (IPMI_IOC_MAGIC, 12, struct ipmi_recv) -#if defined(__FreeBSD__) +#if defined(__FreeBSD__) || defined(__DragonFly__) #define IPMICTL_SEND_COMMAND _IOW (IPMI_IOC_MAGIC, 13, struct ipmi_req) #define IPMICTL_SET_MY_ADDRESS_CMD _IOW (IPMI_IOC_MAGIC, 17, unsigned int) #else [FILE:417:patches/patch-libfreeipmi_driver_ipmi-semaphores.h] --- libfreeipmi/driver/ipmi-semaphores.h.orig 2023-06-05 22:58:26 UTC +++ libfreeipmi/driver/ipmi-semaphores.h @@ -30,7 +30,7 @@ #include #include -#if defined(__FreeBSD__) || defined(__APPLE__) +#if defined(__FreeBSD__) || defined(__APPLE__) || defined(__DragonFly__) /* union semun is defined by including */ #else /* according to X/OPEN we have to define it ourselves */ [FILE:461:patches/patch-man_Makefile.in] --- man/Makefile.in.orig 2024-01-27 21:52:52 UTC +++ man/Makefile.in @@ -1022,7 +1022,7 @@ uninstall-man: uninstall-man3 uninstall- $(MANS_CPP): $(MANS_CPP:%=%.pre) - $(CPP_FOR_BUILD) -nostdinc -w -C -P -I. -I$(top_srcdir)/man $@.pre $@ + $(CPP_FOR_BUILD) -nostdinc -w -C -I$(top_srcdir)/man $@.pre | grep -v '^#' > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded.