added my Recipes

This commit is contained in:
2024-07-11 14:16:35 +02:00
parent 38bc4f53ac
commit 09b621d929
7118 changed files with 525762 additions and 3 deletions

View File

@@ -0,0 +1,31 @@
From 6afdfbdf1ecf3e7e9158734a3994a57ea151d680 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Wed, 12 Aug 2020 12:00:29 -0700
Subject: [PATCH] Makefile: Do not set -Werror
clang finds more warnings which causes build to fail, disable treating
warning as errors
Upstream-Status: Inappropriate [OE-Specific]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
usr/Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/usr/Makefile b/usr/Makefile
index 84f33bc..9e7b839 100644
--- a/usr/Makefile
+++ b/usr/Makefile
@@ -44,7 +44,7 @@ HOMEDIR ?= $(etcdir)/iscsi
PKG_CONFIG ?= /usr/bin/pkg-config
CFLAGS ?= -O2 -g
-WARNFLAGS ?= -Wall -Wextra -Werror -Wstrict-prototypes -fno-common
+WARNFLAGS ?= -Wall -Wextra -Wstrict-prototypes -fno-common
CFLAGS += $(WARNFLAGS) -I../include -I. -D_GNU_SOURCE \
-I$(TOPDIR)/libopeniscsiusr \
-DISCSI_VERSION_STR=\"$(ISCSI_VERSION_STR)\"
--
2.34.1

View File

@@ -0,0 +1,2 @@
# <type> <owner> <group> <mode> <path> <linksource>
d root root 0755 /var/lock/iscsi none

View File

@@ -0,0 +1,119 @@
#! /bin/sh
### BEGIN INIT INFO
# Provides:
# Required-Start:
# Required-Stop:
# Default-Start:
# Default-Stop:
# Short-Description: Starts and stops the iSCSI initiator services and logins to default targets
### END INIT INFO
#set -x
PATH=/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/sbin/iscsid
ADM=/usr/sbin/iscsiadm
PIDFILE=/var/run/iscsid.pid
[ -x "$DAEMON" ] || exit 0
if [ ! -d /sys/class/ ]; then
echo "Failure:" "iSCSI requires a mounted sysfs, not started."
exit 1
fi
nodestartup_re='s/^node\.conn\[0]\.startup[ ]*=[ ]*//p'
RETVAL=0
start() {
echo "Starting iSCSI initiator service" "iscsid"
modprobe -q iscsi_tcp 2>/dev/null || :
modprobe -q ib_iser 2>/dev/null || :
if [ ! -f /etc/iscsi/initiatorname.iscsi ]; then
INITIATORNAME=$(iscsi-iname)
cat >/etc/iscsi/initiatorname.iscsi <<EOF
## DO NOT EDIT OR REMOVE THIS FILE!
## If you remove this file, the iSCSI daemon will not start.
## If you change the InitiatorName, existing access control lists
## may reject this initiator. The InitiatorName must be unique
## for each iSCSI initiator. Do NOT duplicate iSCSI InitiatorNames.
InitiatorName=$INITIATORNAME
EOF
fi
start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON
RETVAL=$?
starttargets
}
starttargets() {
echo "Setting up iSCSI targets"
$ADM -m node --loginall=automatic
}
stoptargets() {
echo "Disconnecting iSCSI targets"
sync
$ADM -m node --logoutall=all
RETVAL=$?
#if RETVAL is 21, means no active sessions, consider ok
if [ "$RETVAL" = "21" ]; then
RETVAL=0
fi
}
stop() {
stoptargets
if [ $RETVAL -ne 0 ]; then
echo "Failure:" "Could not stop all targets, try again later"
return $RETVAL
fi
echo "Stopping iSCSI initiator service"
start-stop-daemon --stop --quiet --pidfile $PIDFILE --exec $DAEMON
rm -f $PIDFILE
status=0
modprobe -r ib_iser 2>/dev/null
if [ "$?" -ne "0" -a "$?" -ne "1" ]; then
status=1
fi
modprobe -r iscsi_tcp 2>/dev/null
if [ "$?" -ne "0" -a "$?" -ne "1" ]; then
status=1
fi
}
restart() {
stop
if [ $RETVAL -ne 0 ]; then
echo "Failure:" "Stopping iSCSI initiator service failed, not starting"
return $RETVAL
fi
start
}
restarttargets() {
stoptargets
if [ $RETVAL -ne 0 ]; then
echo "Failure:" "Could not stop all targets, try again later"
return $RETVAL
fi
starttargets
}
status() {
#XXX FIXME: what to do here?
#status iscsid
# list active sessions
echo Current active iSCSI sessions:
$ADM -m session
}
case "$1" in
start|starttargets|stop|stoptargets|restart|restarttargets|status)
$1
;;
*)
echo "Usage: $0 {start|stop|restart|status}"
exit 1
;;
esac
exit $RETVAL

View File

@@ -0,0 +1,4 @@
# default command line settings for open-iscsi's iscsid
OPTS_ISCSID=""
OPTS_ISCSIADM=""

View File

@@ -0,0 +1,15 @@
[Unit]
Description=Open-iSCSI initiator (i.e. client) target bindings
After=iscsi-initiator.service
Requires=iscsi-initiator.service
[Service]
Type=oneshot
EnvironmentFile=/etc/default/iscsi-initiator
ExecStart=/usr/sbin/iscsiadm -m node --loginall=automatic $OPTS_ISCSIADM
ExecStop=/usr/sbin/iscsiadm -m node --logoutall=all $OPTS_ISCSIADM
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target

View File

@@ -0,0 +1,13 @@
[Unit]
Description=Open-iSCSI initiator (i.e. client) service
After=syslog.target
[Service]
EnvironmentFile=/etc/default/iscsi-initiator
ExecStartPre=/sbin/modprobe iscsi_tcp
ExecStartPre=/usr/lib/iscsi/set_initiatorname
ExecStart=/usr/sbin/iscsid -f $OPTS_ISCSID
[Install]
WantedBy=multi-user.target

View File

@@ -0,0 +1,12 @@
#!/bin/sh
if [ ! -f /etc/iscsi/initiatorname.iscsi ]; then
INITIATORNAME=$(iscsi-iname)
cat >/etc/iscsi/initiatorname.iscsi <<EOF
## DO NOT EDIT OR REMOVE THIS FILE!
## If you remove this file, the iSCSI daemon will not start.
## If you change the InitiatorName, existing access control lists
## may reject this initiator. The InitiatorName must be unique
## for each iSCSI initiator. Do NOT duplicate iSCSI InitiatorNames.
InitiatorName=$INITIATORNAME
EOF
fi

View File

@@ -0,0 +1,118 @@
SUMMARY = "iSCSI daemon and utility programs"
DESCRIPTION = "Open-iSCSI project is a high performance, transport \
independent, multi-platform implementation of RFC3720. The iscsi package \
provides the server daemon for the iSCSI protocol, as well as the utility \
programs used to manage it. iSCSI is a protocol for distributed \
disk access using SCSI commands sent over Internet Protocol networks."
HOMEPAGE = "http://www.open-iscsi.com/"
LICENSE = "GPL-2.0-only & LGPL-2.1-only"
SECTION = "net"
DEPENDS = "openssl flex-native bison-native open-isns util-linux kmod"
DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)}"
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
SRCREV = "543ba0f15d340b97f30782308cec424a6738fec3"
SRC_URI = "git://github.com/open-iscsi/open-iscsi;branch=master;protocol=https \
file://0001-Makefile-Do-not-set-Werror.patch \
file://initd.debian \
file://99_iscsi-initiator-utils \
file://iscsi-initiator \
file://iscsi-initiator.service \
file://iscsi-initiator-targets.service \
file://set_initiatorname \
"
S = "${WORKDIR}/git"
inherit update-rc.d systemd autotools pkgconfig
EXTRA_OECONF = " \
--target=${TARGET_SYS} \
--host=${BUILD_SYS} \
"
EXTRA_OECONF += "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '', '--without-systemd NO_SYSTEMD=1', d)}"
EXTRA_OEMAKE = ' \
OS="${TARGET_SYS}" \
TARGET="${TARGET_OS}" \
BASE="${prefix}" \
MANDIR="${mandir}" \
OPTFLAGS="-DNO_SYSTEMD ${CFLAGS}" \
PKG_CONFIG="${STAGING_BINDIR_NATIVE}/pkg-config" \
SED=sed \
'
do_configure () {
cd ${S}/iscsiuio ; autoreconf --install; ./configure ${EXTRA_OECONF}
}
do_compile () {
# Make sure we DO NOT regenerate prom_lex.c.
if [ -f ${S}/utils/fwparam_ibft/prom_lex.l ]; then
mv ${S}/utils/fwparam_ibft/prom_lex.l ${S}/utils/fwparam_ibft/prom_lex.l.unused
fi
oe_runmake -C ${S} ${EXTRA_OEMAKE} user
}
do_install () {
#install necessary directories
install -d ${D}${sbindir} \
${D}${sysconfdir}/init.d \
${D}${sysconfdir}/iscsi \
${D}${localstatedir}/lib/iscsi/nodes \
${D}${localstatedir}/lib/iscsi/send_targets \
${D}${localstatedir}/lib/iscsi/static \
${D}${localstatedir}/lib/iscsi/isns \
${D}${localstatedir}/lib/iscsi/slp \
${D}${localstatedir}/lib/iscsi/ifaces \
${D}${libdir} \
${D}${mandir}/man8
install -p -m 755 ${S}/usr/iscsid ${S}/usr/iscsiadm \
${S}/utils/iscsi-iname \
${S}/usr/iscsistart ${D}/${sbindir}
cp -dR ${S}/libopeniscsiusr/libopeniscsiusr.so* ${D}${libdir}
install -p -m 644 ${S}/doc/iscsiadm.8 ${S}/doc/iscsid.8 ${D}/${mandir}/man8
install -p -m 644 ${S}/etc/iscsid.conf ${D}${sysconfdir}/iscsi
install -p -m 755 ${WORKDIR}/initd.debian ${D}${sysconfdir}/init.d/iscsid
sed -i -e "s:= /sbin/iscsid:= ${sbindir}/iscsid:" ${D}${sysconfdir}/iscsi/iscsid.conf
if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
install -d ${D}${sysconfdir}/tmpfiles.d
echo "d /run/${BPN}/lock - - - -" \
> ${D}${sysconfdir}/tmpfiles.d/iscsi.conf
install -d ${D}/etc/default/
install -p -m 755 ${WORKDIR}/iscsi-initiator ${D}${sysconfdir}/default/
install -d ${D}${systemd_unitdir}/system/
install -m 0644 ${WORKDIR}/iscsi-initiator.service \
${WORKDIR}/iscsi-initiator-targets.service \
${D}${systemd_unitdir}/system/
install -d ${D}${nonarch_libdir}/iscsi
install -m 0755 ${WORKDIR}/set_initiatorname ${D}${nonarch_libdir}/iscsi
else
install -d ${D}/etc/default/volatiles
install -m 0644 ${WORKDIR}/99_iscsi-initiator-utils ${D}/etc/default/volatiles
fi
}
pkg_postinst:${PN}() {
if [ "x$D" = "x" ]; then
if [ -e /etc/init.d/populate-volatile.sh ]; then
/etc/init.d/populate-volatile.sh update
elif command -v systemd-tmpfiles >/dev/null; then
systemd-tmpfiles --create ${sysconfdir}/tmpfiles.d/iscsi.conf
fi
fi
}
SYSTEMD_SERVICE = " iscsi-initiator.service iscsi-initiator-targets.service "
INITSCRIPT_NAME = "iscsid"
INITSCRIPT_PARAMS = "start 30 1 2 3 4 5 . stop 70 0 1 2 3 4 5 6 ."
FILES:${PN} += "${nonarch_libdir}/iscsi"