aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoe MacDonald <joe_macdonald@mentor.com>2016-11-14 15:49:03 -0500
committerJoe MacDonald <joe_macdonald@mentor.com>2016-12-05 13:49:55 -0500
commit81e0a57b367a67998028d8f403136e5cab7817d4 (patch)
tree31a69c76f79a99a48877ddc5502906a7e1417758
parent18d518a03d7d55b69f7ff4b19916c7006220c3e9 (diff)
downloadmeta-openembedded-contrib-joeythesaint/meta-networking-next.tar.gz
meta-openembedded-contrib-joeythesaint/meta-networking-next.tar.bz2
meta-openembedded-contrib-joeythesaint/meta-networking-next.zip
iscsi-initiator-utils: Update to 2.0.874joeythesaint/meta-networking-next
The latest iscsi-initiator-utils has been available for a while now, update our recipe. The new version no longer bundles its own ISNS server, so this update brings in open-isns as a dependency. As open-isns depends on systemd, add systemd to REQUIRED_DISTRO_FEATURES Additionally, open-iscsi.org is defunct, the new home is at open-iscsi.com, update the SRC_URI and homepage accordingly. Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
-rw-r--r--meta-networking/recipes-daemons/iscsi-initiator-utils/files/iscsi-initiator-utils-Do-not-clean-kernel-source.patch44
-rw-r--r--meta-networking/recipes-daemons/iscsi-initiator-utils/files/iscsi-initiator-utils-dont-use-static.patch21
-rw-r--r--meta-networking/recipes-daemons/iscsi-initiator-utils/files/iscsi-initiator-utils-fw_context-add-include-for-NI_MAXHOST-definiton.patch35
-rw-r--r--meta-networking/recipes-daemons/iscsi-initiator-utils/files/iscsi-initiator-utils-use-var-for-config.patch240
-rw-r--r--meta-networking/recipes-daemons/iscsi-initiator-utils/iscsi-initiator-utils_2.0.874.bb (renamed from meta-networking/recipes-daemons/iscsi-initiator-utils/iscsi-initiator-utils_2.0-873.bb)86
-rw-r--r--meta-networking/recipes-support/open-isns/open-isns_0.97.bb35
6 files changed, 163 insertions, 298 deletions
diff --git a/meta-networking/recipes-daemons/iscsi-initiator-utils/files/iscsi-initiator-utils-Do-not-clean-kernel-source.patch b/meta-networking/recipes-daemons/iscsi-initiator-utils/files/iscsi-initiator-utils-Do-not-clean-kernel-source.patch
new file mode 100644
index 0000000000..2c466119cd
--- /dev/null
+++ b/meta-networking/recipes-daemons/iscsi-initiator-utils/files/iscsi-initiator-utils-Do-not-clean-kernel-source.patch
@@ -0,0 +1,44 @@
+From 4ebab8add4a549c16ab8b124137546c0a7b46a9b Mon Sep 17 00:00:00 2001
+From: Joe MacDonald <joe_macdonald@mentor.com>
+Date: Tue, 15 Nov 2016 11:11:30 -0500
+Subject: [PATCH] Do not clean kernel source
+
+The default behaviour should not be to attempt to clean the kernel source
+tree when building userspace. When not cross-compiling, however, this action is
+harmless, but when attempting to build within the sysroot and since this package
+is purely userspace, the clean step will fail.
+
+Removing the clean step eliminates an unnecessary dependency on the kernel build
+infrastructure.
+
+Upstream-status: Inappropriate (embedded specific)
+
+Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
+---
+ Makefile | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index c8cd00e..9576bba 100644
+--- a/Makefile
++++ b/Makefile
+@@ -37,7 +37,7 @@ endif
+
+ all: user
+
+-user: iscsiuio/Makefile
++user:
+ $(MAKE) -C utils/sysdeps
+ $(MAKE) -C utils/fwparam_ibft
+ $(MAKE) -C usr
+@@ -75,7 +75,6 @@ clean:
+ $(MAKE) -C utils/fwparam_ibft clean
+ $(MAKE) -C utils clean
+ $(MAKE) -C usr clean
+- $(MAKE) -C kernel clean
+ [ ! -f iscsiuio/Makefile ] || $(MAKE) -C iscsiuio clean
+ [ ! -f iscsiuio/Makefile ] || $(MAKE) -C iscsiuio distclean
+
+--
+1.9.1
+
diff --git a/meta-networking/recipes-daemons/iscsi-initiator-utils/files/iscsi-initiator-utils-dont-use-static.patch b/meta-networking/recipes-daemons/iscsi-initiator-utils/files/iscsi-initiator-utils-dont-use-static.patch
deleted file mode 100644
index ce48e2bb39..0000000000
--- a/meta-networking/recipes-daemons/iscsi-initiator-utils/files/iscsi-initiator-utils-dont-use-static.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-iscsi-initiator-utils not to use static
-
-Upstream-status: Backport
-This patch is from fedora17.
-
-Signed-off-by: Yao Zhao <yao.zhao@windriver.com>
-Signed-off-by: Vu Tran <vu.tran@windriver.com>
-
-diff --git a/usr/Makefile b/usr/Makefile
-index 673b7f1..fd14a10 100644
---- a/usr/Makefile
-+++ b/usr/Makefile
-@@ -61,7 +61,7 @@ iscsiadm: $(ISCSI_LIB_SRCS) $(DISCOVERY_SRCS) iscsiadm.o session_mgmt.o
-
- iscsistart: $(ISCSI_LIB_SRCS) $(INITIATOR_SRCS) $(FW_BOOT_SRCS) \
- iscsistart.o statics.o
-- $(CC) $(CFLAGS) -static $^ -o $@
-+ $(CC) $(CFLAGS) $^ -o $@
- clean:
- rm -f *.o $(PROGRAMS) .depend $(LIBSYS)
-
diff --git a/meta-networking/recipes-daemons/iscsi-initiator-utils/files/iscsi-initiator-utils-fw_context-add-include-for-NI_MAXHOST-definiton.patch b/meta-networking/recipes-daemons/iscsi-initiator-utils/files/iscsi-initiator-utils-fw_context-add-include-for-NI_MAXHOST-definiton.patch
new file mode 100644
index 0000000000..37d695f49d
--- /dev/null
+++ b/meta-networking/recipes-daemons/iscsi-initiator-utils/files/iscsi-initiator-utils-fw_context-add-include-for-NI_MAXHOST-definiton.patch
@@ -0,0 +1,35 @@
+From 79bea58a554205dd185509fbc4e76b5fc40f9038 Mon Sep 17 00:00:00 2001
+From: Joe MacDonald <joe_macdonald@mentor.com>
+Date: Tue, 15 Nov 2016 12:36:45 -0500
+Subject: [PATCH] fw_context: add include for NI_MAXHOST definiton
+
+This appears to build successfully with gcc 4.x but fails on gcc 5+, though it's
+not immediately clear why NI_MAXHOST isn't being defined from the include
+chain. Currently engaging with the upstream devs to determine the best course
+of action, but this is an adequate workaround.
+
+Upstream-status: Pending
+
+Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
+---
+ include/fw_context.h | 4 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/include/fw_context.h b/include/fw_context.h
+index 44053d8..0b05cea 100644
+--- a/include/fw_context.h
++++ b/include/fw_context.h
+@@ -21,6 +21,10 @@
+ #ifndef FWPARAM_CONTEXT_H_
+ #define FWPARAM_CONTEXT_H_
+
++#include <sys/socket.h>
++#ifndef NI_MAXHOST
++#define NI_MAXHOST 1025
++#endif
+ #include <netdb.h>
+ #include <net/if.h>
+
+--
+2.1.4
+
diff --git a/meta-networking/recipes-daemons/iscsi-initiator-utils/files/iscsi-initiator-utils-use-var-for-config.patch b/meta-networking/recipes-daemons/iscsi-initiator-utils/files/iscsi-initiator-utils-use-var-for-config.patch
deleted file mode 100644
index 50227a7748..0000000000
--- a/meta-networking/recipes-daemons/iscsi-initiator-utils/files/iscsi-initiator-utils-use-var-for-config.patch
+++ /dev/null
@@ -1,240 +0,0 @@
-iscsi-initiator-utils to use var for config
-
-Upstream-status: Backport
-This patch is from fedora.
-
-Use /var/lib/iscsi/ instead of /etc/iscsi/ for holding
-state files.
-
-Signed-off-by: Yao Zhao <yao.zhao@windriver.com>
-Signed-off-by: Vu Tran <vu.tran@windriver.com>
-
-diff --git a/README b/README
-index 7364b2d..5e8bff8 100644
---- a/README
-+++ b/README
-@@ -164,10 +164,10 @@ available on all Linux installations.
-
- The database contains two tables:
-
--- Discovery table (/etc/iscsi/send_targets);
--- Node table (/etc/iscsi/nodes).
-+- Discovery table (/var/lib/iscsi/send_targets);
-+- Node table (/var/lib/iscsi/nodes).
-
--The regular place for iSCSI database files: /etc/iscsi/nodes
-+The regular place for iSCSI database files: /var/lib/iscsi/nodes
-
- The iscsiadm utility is a command-line tool to manage (update, delete,
- insert, query) the persistent database.
-@@ -444,7 +444,7 @@ a scsi_host per HBA port).
- To manage both types of initiator stacks, iscsiadm uses the interface (iface)
- structure. For each HBA port or for software iscsi for each network
- device (ethX) or NIC, that you wish to bind sessions to you must create
--a iface config /etc/iscsi/ifaces.
-+a iface config /var/lib/iscsi/ifaces.
-
- Prep:
-
-@@ -478,29 +478,29 @@ Running:
- iface0 qla4xxx,00:c0:dd:08:63:e8,20.15.0.7,default,iqn.2005-06.com.redhat:madmax
- iface1 qla4xxx,00:c0:dd:08:63:ea,20.15.0.9,default,iqn.2005-06.com.redhat:madmax
-
--Will report iface configurations that are setup in /etc/iscsi/ifaces.
-+Will report iface configurations that are setup in /var/lib/iscsi/ifaces.
- The format is:
-
- iface_name transport_name,hwaddress,ipaddress,net_ifacename,initiatorname
-
- For software iscsi, you can create the iface configs by hand, but it is
- reccomended that you use iscsiadm's iface mode. There is a iface.example in
--/etc/iscsi/ifaces which can be used as a template for the daring.
-+/var/lib/iscsi/ifaces which can be used as a template for the daring.
-
- For each network object you wish to bind a session to you must create
--a seperate iface config in /etc/iscsi/ifaces and each iface config file
-+a seperate iface config in /var/lib/iscsi/ifaces and each iface config file
- must have a unique name which is less than or equal to 64 characters.
-
- Example:
-
- If you have NIC1 with MAC address 00:0F:1F:92:6B:BF and NIC2 with
- MAC address 00:C0:DD:08:63:E7 and you wanted to do software iscsi over
--TCP/IP. Then in /etc/iscsi/ifaces/iface0 you would enter:
-+TCP/IP. Then in /var/lib/iscsi/ifaces/iface0 you would enter:
-
- iface.transport_name = tcp
- iface.hwaddress = 00:0F:1F:92:6B:BF
-
--and in /etc/iscsi/ifaces/iface1 you would enter:
-+and in /var/lib/iscsi/ifaces/iface1 you would enter:
-
- iface.transport_name = tcp
- iface.hwaddress = 00:C0:DD:08:63:E7
-@@ -550,7 +550,7 @@ cxgb3i.00:07:43:05:97:07 cxgb3i,00:07:43:05:97:07,<empty>,<empty>,<empty>
- qla4xxx.00:0e:1e:04:8b:2e qla4xxx,00:0e:1e:04:8b:2e,<empty>,<empty>,<empty>
-
-
--Will report iface configurations that are setup in /etc/iscsi/ifaces.
-+Will report iface configurations that are setup in /var/lib/iscsi/ifaces.
- The format is:
-
- iface_name transport_name,hwaddress,ipaddress,net_ifacename,initiatorname
-@@ -636,7 +636,7 @@ need a seperate network connection to the target for discovery purposes.
- *This will be fixed in the next version of open-iscsi*
-
- For compatibility reasons, when you run iscsiadm to do discovery, it
--will check for interfaces in /etc/iscsi/iscsi/ifaces that are using
-+will check for interfaces in /var/lib/iscsi/iscsi/ifaces that are using
- tcp for the iface.transport and it will bind the portals that are discovered
- so that they will be logged in through those ifaces. This behavior can also
- be overriden by passing in the interfaces you want to use. For the case
-@@ -654,7 +654,7 @@ we do not bind a session to a iface, then you can use the special iface
-
- iscsiadm -m discoverydb -t st -p ip:port -I default --discover -P 1
-
--And if you did not define any interfaces in /etc/iscsi/ifaces and do
-+And if you did not define any interfaces in /var/lib/iscsi/ifaces and do
- not pass anything into iscsiadm, running iscsiadm will do the default
- behavior, where we allow the network subsystem to decide which
- device to use.
-@@ -696,7 +696,7 @@ To now log into targets it is the same as with sofware iscsi. See section
-
- ./iscsiadm -m discoverydb -t st -p 192.168.1.1:3260 --discover
-
-- This will search /etc/iscsi/send_targets for a record with the
-+ This will search /var/lib/iscsi/send_targets for a record with the
- ID [portal = 192.168.1.1:3260 and type = sendtargets. If found it
- will perform discovery using the settings stored in the record.
- If a record does not exist, it will be created using the iscsid.conf
-@@ -705,7 +705,7 @@ To now log into targets it is the same as with sofware iscsi. See section
- The argument to -p may also be a hostname instead of an address.
- ./iscsiadm -m discoverydb -t st -p smoehost --discover
-
-- For the ifaces, iscsiadm will first search /etc/iscsi/ifaces for
-+ For the ifaces, iscsiadm will first search /var/lib/iscsi/ifaces for
- interfaces using software iscsi. If any are found then nodes found
- during discovery will be setup so that they can logged in through
- those interfaces. To specify a specific iface, pass the
-@@ -761,7 +761,7 @@ To now log into targets it is the same as with sofware iscsi. See section
- This command will perform discovery, but not manipulate the node DB.
-
- - SendTargets iSCSI Discovery with a specific interface. If you
-- wish to only use a subset of the interfaces in /etc/iscsi/ifaces
-+ wish to only use a subset of the interfaces in /var/lib/iscsi/ifaces
- then you can pass them in during discovery:
-
- ./iscsiadm -m discoverydb -t sendtargets -p 192.168.1.1:3260 \
-@@ -1072,8 +1072,8 @@ where targetname is the name of the target and ip_address:port is the address
- and port of the portal. tpgt, is the portal group tag of
- the portal, and is not used in iscsiadm commands except for static
- record creation. And iface name is the name of the iscsi interface
--defined in /etc/iscsi/ifaces. If no interface was defined in
--/etc/iscsi/ifaces or passed in, the default behavior is used.
-+defined in /var/lib/iscsi/ifaces. If no interface was defined in
-+/var/lib/iscsi/ifaces or passed in, the default behavior is used.
- Default here is iscsi_tcp/tcp to be used over which ever NIC the
- network layer decides is best.
-
-@@ -1188,7 +1188,7 @@ If set, iscsid will perform discovery to the address every
- discovery.isns.discoveryd_poll_inval or
- discovery.sendtargets.discoveryd_poll_inval seconds,
- and it will log into any portals found from the discovery source using
--the ifaces in /etc/iscsi/ifaces.
-+the ifaces in /var/lib/iscsi/ifaces.
-
- Note that for iSNS the poll_interval does not have to be set. If not set,
- iscsid will only perform rediscovery when it gets a SCN from the server.
-diff --git a/doc/iscsiadm.8 b/doc/iscsiadm.8
-index 7c209f6..e94cca0 100644
---- a/doc/iscsiadm.8
-+++ b/doc/iscsiadm.8
-@@ -89,7 +89,7 @@ This option is only valid for ping submode.
- .TP
- \fB\-I\fR, \fB\-\-interface=\fI[iface]\fR
- The interface argument specifies the iSCSI interface to use for the operation.
--iSCSI interfaces (iface) are defined in /etc/iscsi/ifaces. For hardware
-+iSCSI interfaces (iface) are defined in /var/lib/iscsi/ifaces. For hardware
- iSCSI (qla4xxx) the iface config must have the hardware address
- (iface.hwaddress = port's MAC address)
- and the driver/transport_name (iface.transport_name). The iface's name is
-@@ -166,7 +166,7 @@ If no other options are specified: for \fIdiscoverydb\fR and \fInode\fR, all
- of their respective records are displayed; for \fIsession\fR, all active
- sessions and connections are displayed; for \fIfw\fR, all boot firmware
- values are displayed; for \fIhost\fR, all iSCSI hosts are displayed; and
--for \fIiface\fR, all ifaces setup in /etc/iscsi/ifaces are displayed.
-+for \fIiface\fR, all ifaces setup in /var/lib/iscsi/ifaces are displayed.
-
- .TP
- \fB\-n\fR, \fB\-\-name=\fIname\fR
-@@ -535,10 +535,10 @@ The configuration file read by \fBiscsid\fR and \fBiscsiadm\fR on startup.
- The file containing the iSCSI InitiatorName and InitiatorAlias read by
- \fBiscsid\fR and \fBiscsiadm\fR on startup.
- .TP
--/etc/iscsi/nodes/
-+/var/lib/iscsi/nodes/
- This directory contains the nodes with their targets.
- .TP
--/etc/iscsi/send_targets
-+/var/lib/iscsi/send_targets
- This directory contains the portals.
-
- .SH "SEE ALSO"
-diff --git a/usr/idbm.c b/usr/idbm.c
-index 4d30aa9..316e54f 100644
---- a/usr/idbm.c
-+++ b/usr/idbm.c
-@@ -2468,9 +2468,9 @@ free_info:
- int idbm_init(idbm_get_config_file_fn *fn)
- {
- /* make sure root db dir is there */
-- if (access(ISCSI_CONFIG_ROOT, F_OK) != 0) {
-- if (mkdir(ISCSI_CONFIG_ROOT, 0660) != 0) {
-- log_error("Could not make %s %d\n", ISCSI_CONFIG_ROOT,
-+ if (access(ISCSIVAR, F_OK) != 0) {
-+ if (mkdir(ISCSIVAR, 0660) != 0) {
-+ log_error("Could not make %s %d\n", ISCSIVAR,
- errno);
- return errno;
- }
-diff --git a/usr/idbm.h b/usr/idbm.h
-index 245f046..f45e86e 100644
---- a/usr/idbm.h
-+++ b/usr/idbm.h
-@@ -28,12 +28,16 @@
- #include "config.h"
- #include "list.h"
-
--#define NODE_CONFIG_DIR ISCSI_CONFIG_ROOT"nodes"
--#define SLP_CONFIG_DIR ISCSI_CONFIG_ROOT"slp"
--#define ISNS_CONFIG_DIR ISCSI_CONFIG_ROOT"isns"
--#define STATIC_CONFIG_DIR ISCSI_CONFIG_ROOT"static"
--#define FW_CONFIG_DIR ISCSI_CONFIG_ROOT"fw"
--#define ST_CONFIG_DIR ISCSI_CONFIG_ROOT"send_targets"
-+#define ISCSIVAR "/var/lib/iscsi/"
-+
-+#define NODE_CONFIG_DIR ISCSIVAR"nodes"
-+#define SLP_CONFIG_DIR ISCSIVAR"slp"
-+#define ISNS_CONFIG_DIR ISCSIVAR"isns"
-+#define STATIC_CONFIG_DIR ISCSIVAR"static"
-+#define FW_CONFIG_DIR ISCSIVAR"fw"
-+#define ST_CONFIG_DIR ISCSIVAR"send_targets"
-+
-+
- #define ST_CONFIG_NAME "st_config"
- #define ISNS_CONFIG_NAME "isns_config"
-
-diff --git a/usr/iface.h b/usr/iface.h
-index 01f7074..2c6ef72 100644
---- a/usr/iface.h
-+++ b/usr/iface.h
-@@ -20,7 +20,8 @@
- #ifndef ISCSI_IFACE_H
- #define ISCSI_IFACE_H
-
--#define IFACE_CONFIG_DIR ISCSI_CONFIG_ROOT"ifaces"
-+#include "idbm.h"
-+#define IFACE_CONFIG_DIR ISCSIVAR"ifaces"
-
- struct iface_rec;
- struct list_head;
diff --git a/meta-networking/recipes-daemons/iscsi-initiator-utils/iscsi-initiator-utils_2.0-873.bb b/meta-networking/recipes-daemons/iscsi-initiator-utils/iscsi-initiator-utils_2.0.874.bb
index 4b13155cd2..72a17b0304 100644
--- a/meta-networking/recipes-daemons/iscsi-initiator-utils/iscsi-initiator-utils_2.0-873.bb
+++ b/meta-networking/recipes-daemons/iscsi-initiator-utils/iscsi-initiator-utils_2.0.874.bb
@@ -4,52 +4,64 @@ 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.org/"
+HOMEPAGE = "http://www.open-iscsi.com/"
LICENSE = "GPLv2 & LGPLv2.1"
SECTION = "net"
-DEPENDS = "openssl flex-native bison-native"
-
-LIC_FILES_CHKSUM = \
- "file://COPYING;md5=393a5ca445f6965873eca0259a17f833 \
- file://utils/open-isns/COPYING;md5=7fbc338309ac38fefcd64b04bb903e34"
-
-SRC_URI = "http://www.open-iscsi.org/bits/open-iscsi-${PV}.tar.gz \
- file://iscsi-initiator-utils-use-var-for-config.patch \
- file://iscsi-initiator-utils-dont-use-static.patch \
- file://initd.debian \
- file://99_iscsi-initiator-utils \
- file://iscsi-initiator \
- file://iscsi-initiator.service \
- file://iscsi-initiator-targets.service \
- file://set_initiatorname \
+DEPENDS = "openssl flex-native bison-native open-isns util-linux"
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=393a5ca445f6965873eca0259a17f833"
+
+SRCREV ?= "8db9717e73d32d2c5131da4f9ad86dfd9065f74b"
+
+SRC_URI = "git://github.com/open-iscsi/open-iscsi \
+ file://iscsi-initiator-utils-Do-not-clean-kernel-source.patch \
+ file://iscsi-initiator-utils-fw_context-add-include-for-NI_MAXHOST-definiton.patch \
+ file://initd.debian \
+ file://99_iscsi-initiator-utils \
+ file://iscsi-initiator \
+ file://iscsi-initiator.service \
+ file://iscsi-initiator-targets.service \
+ file://set_initiatorname \
"
-SRC_URI[md5sum] = "8b8316d7c9469149a6cc6234478347f7"
-SRC_URI[sha256sum] = "7dd9f2f97da417560349a8da44ea4fcfe98bfd5ef284240a2cc4ff8e88ac7cd9"
-S = "${WORKDIR}/open-iscsi-${PV}"
+S = "${WORKDIR}/git"
+B = "${WORKDIR}/build"
-inherit update-rc.d systemd
+inherit update-rc.d systemd autotools distro_features_check
+# open-isns depends on systemd
+REQUIRED_DISTRO_FEATURES = "systemd"
+
+EXTRA_OECONF = " \
+ --target=${TARGET_SYS} \
+ --host=${BUILD_SYS} \
+ --prefix=${prefix} \
+ --libdir=${libdir} \
+"
+
+EXTRA_OEMAKE = ' \
+ CC="${CC}" \
+ AR="${AR}" \
+ RANLIB="${RANLIB}" \
+ CFLAGS="${CFLAGS} ${CPPFLAGS} -D_GNU_SOURCE -I. -I../include -I../../include -I../usr -I../../usr" \
+ LDFLAGS="${LDFLAGS}" \
+ LD="${LD}" \
+ OS="${TARGET_SYS}" \
+ TARGET="${TARGET_OS}" \
+ BASE="${prefix}" \
+ MANDIR="${mandir}" \
+'
TARGET_CC_ARCH += "${LDFLAGS}"
+
do_configure () {
- #need to support cross-compiling in open-isns only
- (cd utils/open-isns; gnu-configize; \
- ./configure --host=${TARGET_SYS} --build=${BUILD_SYS} --with-security=no )
+ cd ${S}/iscsiuio ; autoreconf --install; ./configure ${EXTRA_OECONF}
}
do_compile () {
- #make iscsistart one of PROGRAMS if install_user in do_install
- #sed -i -e '/^PROGRAMS = /s;$; usr/iscsistart;' Makefile
-
- #fix the ar used in open-isns
- sed -i -e 's:ar cr :$(AR) cr :' ${S}/utils/open-isns/Makefile
- oe_runmake user
+ oe_runmake -C ${S} ${EXTRA_OEMAKE} user
}
do_install () {
- #completely override the install_user as bugs in Makefile
- #oe_runmake DESTDIR="${D}" install_user
-
#install necessary directories
install -d ${D}${sbindir} \
${D}${sysconfdir}/init.d \
@@ -83,8 +95,8 @@ do_install () {
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
+ 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
@@ -93,11 +105,11 @@ do_install () {
pkg_postinst_${PN}() {
if [ "x$D" = "x" ]; then
- if [ -e /etc/init.d/populate-volatile.sh ]; 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
+ elif command -v systemd-tmpfiles >/dev/null; then
systemd-tmpfiles --create ${sysconfdir}/tmpfiles.d/iscsi.conf
- fi
+ fi
fi
}
diff --git a/meta-networking/recipes-support/open-isns/open-isns_0.97.bb b/meta-networking/recipes-support/open-isns/open-isns_0.97.bb
new file mode 100644
index 0000000000..828d1166de
--- /dev/null
+++ b/meta-networking/recipes-support/open-isns/open-isns_0.97.bb
@@ -0,0 +1,35 @@
+# Copyright (C) 2016 Joe MacDonald <joe_macdonald@mentor.com>
+# Released under the MIT license (see COPYING.MIT for the terms)
+
+SUMMARY = "iSNS daemon and utility programs"
+DESCRIPTION = "This is a partial implementation of RFC4171, the Internet \
+Storage Name Service (iSNS). The distribution includes the iSNS server, \
+supporting persisten storage of registrations, isnsadm, a command line \
+utility for managing nodes, and isnsdd, a corresponding discovery daemon."
+HOMEPAGE = "http://github.com/gonzoleeman/open-isns/"
+LICENSE = "GPLv2+ & LGPLv2+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=321bf41f280cf805086dd5a720b37785"
+SECTION = "net"
+
+DEPENDS = "openssl systemd"
+
+SRC_URI = " \
+ git://github.com/open-iscsi/open-isns \
+"
+
+SRCREV ?= "09954404e948e41eb0fce8e28836018b4ce3d20d"
+
+S = "${WORKDIR}/git"
+
+inherit systemd autotools-brokensep distro_features_check
+# depends on systemd
+REQUIRED_DISTRO_FEATURES = "systemd"
+
+EXTRA_OECONF = " --prefix=${prefix} --enable-shared"
+
+do_install_append () {
+ oe_runmake INCDIR=${D}${includedir}/libisns/ install_hdrs
+ oe_runmake LIBDIR=${D}${libdir} install_lib
+}
+
+FILES_${PN} += "${libdir}"