summaryrefslogtreecommitdiffstats
path: root/meta-facebook/meta-yosemite/recipes-yosemite/ipmbd
diff options
context:
space:
mode:
Diffstat (limited to 'meta-facebook/meta-yosemite/recipes-yosemite/ipmbd')
-rw-r--r--meta-facebook/meta-yosemite/recipes-yosemite/ipmbd/files/setup-ipmbd.sh104
-rw-r--r--meta-facebook/meta-yosemite/recipes-yosemite/ipmbd/ipmbd_0.1.bbappend27
2 files changed, 131 insertions, 0 deletions
diff --git a/meta-facebook/meta-yosemite/recipes-yosemite/ipmbd/files/setup-ipmbd.sh b/meta-facebook/meta-yosemite/recipes-yosemite/ipmbd/files/setup-ipmbd.sh
new file mode 100644
index 0000000..b37d8fa
--- /dev/null
+++ b/meta-facebook/meta-yosemite/recipes-yosemite/ipmbd/files/setup-ipmbd.sh
@@ -0,0 +1,104 @@
+#! /bin/sh
+#
+# Copyright 2015-present Facebook. All Rights Reserved.
+#
+# This program file is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by the
+# Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+# for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program in a file named COPYING; if not, write to the
+# Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor,
+# Boston, MA 02110-1301 USA
+#
+
+### BEGIN INIT INFO
+# Provides: ipmbd
+# Required-Start:
+# Required-Stop:
+# Default-Start: S
+# Default-Stop: 0 6
+# Short-Description: Provides ipmb message tx/rx service
+#
+### END INIT INFO
+
+. /usr/local/fbpackages/utils/ast-functions
+
+PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin
+DAEMON=/usr/local/bin/ipmbd
+NAME=ipmbd
+DESC="IPMB Rx/Tx Daemon"
+
+test -f $DAEMON || exit 0
+
+STOPPER=
+ACTION="$1"
+
+case "$ACTION" in
+ start)
+ echo -n "Starting $DESC: "
+
+ if [ $(is_server_prsnt 1) == "1" ]; then
+ $DAEMON 3 > /dev/null 2>&1 &
+ fi
+
+ if [ $(is_server_prsnt 2) == "1" ]; then
+ $DAEMON 1 > /dev/null 2>&1 &
+ fi
+
+ if [ $(is_server_prsnt 3) == "1" ]; then
+ $DAEMON 7 > /dev/null 2>&1 &
+ fi
+
+ if [ $(is_server_prsnt 4) == "1" ]; then
+ $DAEMON 5 > /dev/null 2>&1 &
+ fi
+
+ echo "$NAME."
+ ;;
+ stop)
+ echo -n "Stopping $DESC: "
+ start-stop-daemon --stop --quiet --exec $DAEMON
+ echo "$NAME."
+ ;;
+ restart|force-reload)
+ echo -n "Restarting $DESC: "
+ start-stop-daemon --stop --quiet --exec $DAEMON
+ sleep 1
+ if [ $(is_server_prsnt 1) == "1" ]; then
+ $DAEMON 3 > /dev/null 2>&1 &
+ fi
+
+ if [ $(is_server_prsnt 2) == "1" ]; then
+ $DAEMON 1 > /dev/null 2>&1 &
+ fi
+
+ if [ $(is_server_prsnt 3) == "1" ]; then
+ $DAEMON 7 > /dev/null 2>&1 &
+ fi
+
+ if [ $(is_server_prsnt 4) == "1" ]; then
+ $DAEMON 5 > /dev/null 2>&1 &
+ fi
+
+ echo "$NAME."
+ ;;
+ status)
+ status $DAEMON
+ exit $?
+ ;;
+ *)
+ N=${0##*/}
+ N=${N#[SK]??}
+ echo "Usage: $N {start|stop|status|restart|force-reload}" >&2
+ exit 1
+ ;;
+esac
+
+exit 0
diff --git a/meta-facebook/meta-yosemite/recipes-yosemite/ipmbd/ipmbd_0.1.bbappend b/meta-facebook/meta-yosemite/recipes-yosemite/ipmbd/ipmbd_0.1.bbappend
new file mode 100644
index 0000000..bf2af1e
--- /dev/null
+++ b/meta-facebook/meta-yosemite/recipes-yosemite/ipmbd/ipmbd_0.1.bbappend
@@ -0,0 +1,27 @@
+# Copyright 2015-present Facebook. All Rights Reserved.
+
+FILESEXTRAPATHS_prepend := "${THISDIR}/files:"
+SRC_URI += " file://setup-ipmbd.sh \
+ "
+
+CFLAGS_prepend = " -DCONFIG_YOSEMITE"
+
+do_install() {
+ dst="${D}/usr/local/fbpackages/${pkgdir}"
+ bin="${D}/usr/local/bin"
+ install -d $dst
+ install -d $bin
+ install -m 755 ipmbd ${dst}/ipmbd
+ ln -snf ../fbpackages/${pkgdir}/ipmbd ${bin}/ipmbd
+ install -d ${D}${sysconfdir}/init.d
+ install -d ${D}${sysconfdir}/rcS.d
+ install -m 755 setup-ipmbd.sh ${D}${sysconfdir}/init.d/setup-ipmbd.sh
+ update-rc.d -r ${D} setup-ipmbd.sh start 65 S .
+}
+
+FBPACKAGEDIR = "${prefix}/local/fbpackages"
+
+FILES_${PN} = "${FBPACKAGEDIR}/ipmbd ${prefix}/local/bin ${sysconfdir} "
+
+INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
+INHIBIT_PACKAGE_STRIP = "1"
OpenPOWER on IntegriCloud