diff options
| author | Yi Zhao <yi.zhao@windriver.com> | 2017-07-26 08:42:09 +0800 |
|---|---|---|
| committer | Bruce Ashfield <bruce.ashfield@windriver.com> | 2017-07-26 10:07:52 -0400 |
| commit | 5bda0e0c27cef4b2bf73a6be8771778ddeece215 (patch) | |
| tree | c094588f7508db9324ea3e11c6dc8965762eebed /recipes-extended | |
| parent | 4e05423f1542403651fe3e4623693aac857642bb (diff) | |
| download | meta-cloud-services-5bda0e0c27cef4b2bf73a6be8771778ddeece215.tar.gz | |
glusterfs: uprev to 3.11.1
* Add systemd support
* Drop the following patch which already fixed in upstream:
0001-Fix-for-mount.glusterfs-not-accepting-version-argume.patch
Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Diffstat (limited to 'recipes-extended')
16 files changed, 550 insertions, 101 deletions
diff --git a/recipes-extended/glusterfs/files/0001-Fix-for-mount.glusterfs-not-accepting-version-argume.patch b/recipes-extended/glusterfs/files/0001-Fix-for-mount.glusterfs-not-accepting-version-argume.patch deleted file mode 100644 index d89fde9..0000000 --- a/recipes-extended/glusterfs/files/0001-Fix-for-mount.glusterfs-not-accepting-version-argume.patch +++ /dev/null | |||
| @@ -1,33 +0,0 @@ | |||
| 1 | From 960a101ab795fed1b7505ed9db61769cbdb9450e Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Sebastian Lenartowicz <Sebastian.Lenartowicz@windriver.com> | ||
| 3 | Date: Wed, 4 Dec 2013 15:16:02 -0500 | ||
| 4 | Subject: [PATCH 1/1] Fix for mount.glusterfs not accepting --version argument | ||
| 5 | |||
| 6 | The mount.glusterfs shell script serves as a convenient "gatekeeper" | ||
| 7 | for the glusterfs program itself, and performs a few setup tasks, | ||
| 8 | depending on the options it's given. However, an overzealous check | ||
| 9 | for the number of arguments (any number of arguments less than 2) | ||
| 10 | was preventing the --version and --help arguments from being usable | ||
| 11 | on their own. This patch solves that by dropping the check (the | ||
| 12 | glusterfs software itself can throw out commands with too few | ||
| 13 | arguments, which makes the check redundant in any event). | ||
| 14 | --- | ||
| 15 | xlators/mount/fuse/utils/mount.glusterfs.in | 2 +- | ||
| 16 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 17 | |||
| 18 | diff --git a/xlators/mount/fuse/utils/mount.glusterfs.in b/xlators/mount/fuse/utils/mount.glusterfs.in | ||
| 19 | index 2a8183c..ea18efb 100755 | ||
| 20 | --- a/xlators/mount/fuse/utils/mount.glusterfs.in | ||
| 21 | +++ b/xlators/mount/fuse/utils/mount.glusterfs.in | ||
| 22 | @@ -395,7 +395,7 @@ main () | ||
| 23 | pos_args=$((pos_args+1)) | ||
| 24 | fi | ||
| 25 | done | ||
| 26 | - if [ $in_opt = "yes" -o $pos_args -lt 2 ]; then | ||
| 27 | + if [ $in_opt = "yes" ]; then | ||
| 28 | usage | ||
| 29 | exit 1 | ||
| 30 | fi | ||
| 31 | -- | ||
| 32 | 1.7.9.7 | ||
| 33 | |||
diff --git a/recipes-extended/glusterfs/files/configure.ac-allow-PYTHON-values-to-be-passed-via-en.patch b/recipes-extended/glusterfs/files/configure.ac-allow-PYTHON-values-to-be-passed-via-en.patch new file mode 100644 index 0000000..a33ffce --- /dev/null +++ b/recipes-extended/glusterfs/files/configure.ac-allow-PYTHON-values-to-be-passed-via-en.patch | |||
| @@ -0,0 +1,67 @@ | |||
| 1 | From d535a5448191d433e328b0a25a0710da203c44e7 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Yi Zhao <yi.zhao@windriver.com> | ||
| 3 | Date: Wed, 19 Jul 2017 09:40:57 +0800 | ||
| 4 | Subject: [PATCH] configure.ac: allow PYTHON values to be passed via env | ||
| 5 | |||
| 6 | Allow the recipe can specify specific values for PYTHON. | ||
| 7 | |||
| 8 | Upstream-Status: Inappropriate [embedded specific] | ||
| 9 | |||
| 10 | Signed-off-by: Yi Zhao <yi.zhao@windriver.com> | ||
| 11 | --- | ||
| 12 | configure.ac | 26 ++++++++++---------------- | ||
| 13 | 1 file changed, 10 insertions(+), 16 deletions(-) | ||
| 14 | |||
| 15 | diff --git a/configure.ac b/configure.ac | ||
| 16 | index 43efd6d..7a31038 100644 | ||
| 17 | --- a/configure.ac | ||
| 18 | +++ b/configure.ac | ||
| 19 | @@ -544,9 +544,6 @@ fi | ||
| 20 | dnl Check if version matches that we require | ||
| 21 | PYTHONDEV_CPPFLAGS= | ||
| 22 | PYTHONDEV_LDFLAGS= | ||
| 23 | -BUILD_PYTHON_SITE_PACKAGES= | ||
| 24 | -BUILD_PYTHON_INC= | ||
| 25 | -BUILD_PYTHON_LIB= | ||
| 26 | have_python2=no | ||
| 27 | have_Python_h=no | ||
| 28 | |||
| 29 | @@ -555,25 +552,22 @@ if echo $PYTHON_VERSION | grep -q ^2; then | ||
| 30 | |||
| 31 | dnl Use pkg-config to get runtime search patch missing from ${PYTHON}-config | ||
| 32 | dnl Just do "true" on failure so that configure does not bail out | ||
| 33 | - PKG_CHECK_MODULES([PYTHON], "python-$PYTHON_VERSION",,true) | ||
| 34 | + PKG_CHECK_MODULES([PYTHONDEV], "python-$PYTHON_VERSION", [AC_SUBST(PYTHONDEV_CPPFLAGS) AC_SUBST(PYTHONDEV_LDFLAGS)], AC_MSG_ERROR([Can not find python])) | ||
| 35 | |||
| 36 | - PYTHONDEV_CPPFLAGS="`${PYTHON}-config --cflags`" | ||
| 37 | - dnl Edit out the flags that are not required or are conflicting | ||
| 38 | - PYTHONDEV_CPPFLAGS=`echo ${PYTHONDEV_CPPFLAGS} | sed -e 's/-Wp,-D_FORTIFY_SOURCE=[[0-9]]//g'` | ||
| 39 | - | ||
| 40 | - dnl Find python libs at user configured libdir and also "lib" under prefix | ||
| 41 | - PYTHONDEV_LDFLAGS="${PYTHON_LIBS} -L`${PYTHON}-config --prefix`/lib -L`${PYTHON}-config --prefix`/$libdir `${PYTHON}-config --ldflags`" | ||
| 42 | - | ||
| 43 | - BUILD_PYTHON_SITE_PACKAGES=${pythondir} | ||
| 44 | - BUILD_PYTHON_INC=`$PYTHON -c "import sys; from distutils import sysconfig; sys.stdout.write(sysconfig.get_python_inc())" 2>/dev/null` | ||
| 45 | - BUILD_PYTHON_LIB=python$PYTHON_VERSION | ||
| 46 | + if test -z "${BUILD_PYTHON_SITE_PACKAGES}"; then | ||
| 47 | + BUILD_PYTHON_SITE_PACKAGES=${pythondir} | ||
| 48 | + fi | ||
| 49 | + if test -z "${BUILD_PYTHON_INC}"; then | ||
| 50 | + BUILD_PYTHON_INC=`$PYTHON -c "import sys; from distutils import sysconfig; sys.stdout.write(sysconfig.get_python_inc())" 2>/dev/null` | ||
| 51 | + fi | ||
| 52 | + if test -z "${BUILD_PYTHON_LIB}"; then | ||
| 53 | + BUILD_PYTHON_LIB=python$PYTHON_VERSION | ||
| 54 | + fi | ||
| 55 | |||
| 56 | dnl Now check for python header using the include path obtained above | ||
| 57 | AC_CHECK_HEADERS([${BUILD_PYTHON_INC}/Python.h],[have_Python_h=yes],[]) | ||
| 58 | fi | ||
| 59 | |||
| 60 | -AC_SUBST(PYTHONDEV_CPPFLAGS) | ||
| 61 | -AC_SUBST(PYTHONDEV_LDFLAGS) | ||
| 62 | AC_SUBST(BUILD_PYTHON_SITE_PACKAGES) | ||
| 63 | AC_SUBST(BUILD_PYTHON_INC) | ||
| 64 | AC_SUBST(BUILD_PYTHON_LIB) | ||
| 65 | -- | ||
| 66 | 1.9.1 | ||
| 67 | |||
diff --git a/recipes-extended/glusterfs/files/dependence-on-correct-header-file-path.patch b/recipes-extended/glusterfs/files/dependence-on-correct-header-file-path.patch new file mode 100644 index 0000000..ff885f1 --- /dev/null +++ b/recipes-extended/glusterfs/files/dependence-on-correct-header-file-path.patch | |||
| @@ -0,0 +1,32 @@ | |||
| 1 | From f5bb2a133292b37cd45e3c393e4d43364fe9a11a Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Xulin Sun <xulin.sun@windriver.com> | ||
| 3 | Date: Tue, 22 Mar 2016 16:05:32 +0800 | ||
| 4 | Subject: [PATCH] dependence on correct header file path | ||
| 5 | |||
| 6 | To avoid the below building error, use the correct header file path. | ||
| 7 | xlators/features/glupy/src/glupy.c:13:20: fatal error: Python.h: | ||
| 8 | No such file or directory | ||
| 9 | |||
| 10 | Upstream-Status: Inappropriate [embedded specific] | ||
| 11 | |||
| 12 | Signed-off-by: Xulin Sun <xulin.sun@windriver.com> | ||
| 13 | --- | ||
| 14 | xlators/features/glupy/src/glupy.c | 2 +- | ||
| 15 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 16 | |||
| 17 | diff --git a/xlators/features/glupy/src/glupy.c b/xlators/features/glupy/src/glupy.c | ||
| 18 | index 7bb88c0..648b966 100644 | ||
| 19 | --- a/xlators/features/glupy/src/glupy.c | ||
| 20 | +++ b/xlators/features/glupy/src/glupy.c | ||
| 21 | @@ -10,7 +10,7 @@ | ||
| 22 | |||
| 23 | #include <ctype.h> | ||
| 24 | #include <sys/uio.h> | ||
| 25 | -#include <Python.h> | ||
| 26 | +#include <python2.7/Python.h> | ||
| 27 | |||
| 28 | #ifndef _CONFIG_H | ||
| 29 | #define _CONFIG_H | ||
| 30 | -- | ||
| 31 | 1.9.1 | ||
| 32 | |||
diff --git a/recipes-extended/glusterfs/files/glusterd-change-port-range.patch b/recipes-extended/glusterfs/files/glusterd-change-port-range.patch new file mode 100644 index 0000000..0468460 --- /dev/null +++ b/recipes-extended/glusterfs/files/glusterd-change-port-range.patch | |||
| @@ -0,0 +1,39 @@ | |||
| 1 | glusterd: change port range | ||
| 2 | |||
| 3 | glusterfsd chooses tcp ports within the dynamic | ||
| 4 | range [49152-65535] to provide its service. When | ||
| 5 | libvirt performs migration it indicates qemu | ||
| 6 | to use tcp port within dynamic range [49152-49216] | ||
| 7 | as well. | ||
| 8 | |||
| 9 | When both glusterfsd and qemu/libvirt use the same | ||
| 10 | port (e.g. 49152) then libvirtd crashes and | ||
| 11 | causes migration failed. | ||
| 12 | |||
| 13 | Modify the base-port for glusterfsd starting from | ||
| 14 | 59152 to avoid port conflict with qemu/libvirt | ||
| 15 | |||
| 16 | Upstream-Status: Pending | ||
| 17 | |||
| 18 | Signed-off-by: Vu Tran <vu.tran@windriver.com> | ||
| 19 | Signed-off-by: Xulin Sun <xulin.sun@windriver.com> | ||
| 20 | [Yi: minor adjust to apply the patch on 3.11.1] | ||
| 21 | Signed-off-by: Yi Zhao <yi.zhao@windriver.com> | ||
| 22 | --- | ||
| 23 | extras/glusterd.vol | 2 +- | ||
| 24 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 25 | |||
| 26 | diff --git a/extras/glusterd.vol b/extras/glusterd.vol | ||
| 27 | index d882007..c8dfe91 100644 | ||
| 28 | --- a/extras/glusterd.vol | ||
| 29 | +++ b/extras/glusterd.vol | ||
| 30 | @@ -8,5 +8,5 @@ volume management | ||
| 31 | option ping-timeout 0 | ||
| 32 | option event-threads 1 | ||
| 33 | # option transport.address-family inet6 | ||
| 34 | -# option base-port 49152 | ||
| 35 | +# option base-port 59152 | ||
| 36 | end-volume | ||
| 37 | -- | ||
| 38 | 1.9.1 | ||
| 39 | |||
diff --git a/recipes-extended/glusterfs/files/glusterd-ovp b/recipes-extended/glusterfs/files/glusterd.init index c020928..7851a50 100644 --- a/recipes-extended/glusterfs/files/glusterd-ovp +++ b/recipes-extended/glusterfs/files/glusterd.init | |||
| @@ -58,13 +58,13 @@ stop() | |||
| 58 | #pidof -c -o %PPID -x $GLUSTERFS &> /dev/null | 58 | #pidof -c -o %PPID -x $GLUSTERFS &> /dev/null |
| 59 | #[ $? -eq 0 ] && start-stop-daemon --stop --quiet --name $GLUSTERFS | 59 | #[ $? -eq 0 ] && start-stop-daemon --stop --quiet --name $GLUSTERFS |
| 60 | 60 | ||
| 61 | if [ -f /etc/glusterd/nfs/run/nfs.pid ] ;then | 61 | if [ -f /var/lib/glusterd/nfs/run/nfs.pid ] ;then |
| 62 | pid=`cat /etc/glusterd/nfs/run/nfs.pid`; | 62 | pid=`cat /var/lib/glusterd/nfs/run/nfs.pid`; |
| 63 | cmd=`ps -p $pid -o comm=` | 63 | cmd=`ps -p $pid -o comm=` |
| 64 | 64 | ||
| 65 | if [ $cmd == "glusterfs" ]; then | 65 | if [ $cmd == "glusterfs" ]; then |
| 66 | start-stop-daemon --stop --quiet \ | 66 | start-stop-daemon --stop --quiet \ |
| 67 | --pidfile /etc/glusterd/nfs/run/nfs.pid | 67 | --pidfile /var/lib/glusterd/nfs/run/nfs.pid |
| 68 | fi | 68 | fi |
| 69 | fi | 69 | fi |
| 70 | } | 70 | } |
diff --git a/recipes-extended/glusterfs/files/glusterd.service b/recipes-extended/glusterfs/files/glusterd.service new file mode 100644 index 0000000..4835c82 --- /dev/null +++ b/recipes-extended/glusterfs/files/glusterd.service | |||
| @@ -0,0 +1,12 @@ | |||
| 1 | [Unit] | ||
| 2 | Description=Gluster File System service for volume management | ||
| 3 | After=syslog.target network.target | ||
| 4 | |||
| 5 | [Service] | ||
| 6 | Type=forking | ||
| 7 | PIDFile=@localstatedir@/run/glusterd.pid | ||
| 8 | ExecStartPre=@base_bindir@/mkdir -p @localstatedir@/log/glusterfs | ||
| 9 | ExecStart=@SBINDIR@/glusterd -p @localstatedir@/run/glusterd.pid | ||
| 10 | |||
| 11 | [Install] | ||
| 12 | WantedBy=multi-user.target | ||
diff --git a/recipes-extended/glusterfs/files/glusterfs-api-remove-unnecessary-library-options.patch b/recipes-extended/glusterfs/files/glusterfs-api-remove-unnecessary-library-options.patch new file mode 100644 index 0000000..96d7352 --- /dev/null +++ b/recipes-extended/glusterfs/files/glusterfs-api-remove-unnecessary-library-options.patch | |||
| @@ -0,0 +1,31 @@ | |||
| 1 | From a7e6549389f7358cad6a04544b2c1e4d2d5615d0 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Jim Somerville <Jim.Somerville@windriver.com> | ||
| 3 | Date: Wed, 12 Feb 2014 15:41:50 +0000 | ||
| 4 | Subject: [PATCH] glusterfs-api remove unnecessary library options | ||
| 5 | |||
| 6 | These cause QA errors when users of the api such | ||
| 7 | as qemu generate their packages. The reported | ||
| 8 | error is unnecessary or redundant RPATH specified. | ||
| 9 | |||
| 10 | Upstream-Status: Inappropriate [embedded specific] | ||
| 11 | |||
| 12 | Signed-off-by: Jim Somerville <Jim.Somerville@windriver.com> | ||
| 13 | Signed-off-by: Xulin Sun <xulin.sun@windriver.com> | ||
| 14 | --- | ||
| 15 | glusterfs-api.pc.in | 2 +- | ||
| 16 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 17 | |||
| 18 | diff --git a/glusterfs-api.pc.in b/glusterfs-api.pc.in | ||
| 19 | index 5d23454..8a602f6 100644 | ||
| 20 | --- a/glusterfs-api.pc.in | ||
| 21 | +++ b/glusterfs-api.pc.in | ||
| 22 | @@ -8,5 +8,5 @@ Description: GlusterFS API | ||
| 23 | /* This is the API version, NOT package version */ | ||
| 24 | Version: @GFAPI_VERSION@ | ||
| 25 | Requires: @PKGCONFIG_UUID@ | ||
| 26 | -Libs: -L${libdir} @GFAPI_LIBS@ -lgfapi -lglusterfs -lgfrpc -lgfxdr | ||
| 27 | +Libs: -lgfapi -lglusterfs -lgfrpc -lgfxdr | ||
| 28 | Cflags: -I${includedir}/glusterfs -D_FILE_OFFSET_BITS=64 -D__USE_FILE_OFFSET64 -DUSE_POSIX_ACLS=@USE_POSIX_ACLS@ | ||
| 29 | -- | ||
| 30 | 1.9.1 | ||
| 31 | |||
diff --git a/recipes-extended/glusterfs/files/glusterfs-change-default-nfs-port-number.patch b/recipes-extended/glusterfs/files/glusterfs-change-default-nfs-port-number.patch new file mode 100644 index 0000000..81439d1 --- /dev/null +++ b/recipes-extended/glusterfs/files/glusterfs-change-default-nfs-port-number.patch | |||
| @@ -0,0 +1,49 @@ | |||
| 1 | glusterfs: change default nfs port number | ||
| 2 | |||
| 3 | Currently both native nfs and glusterfs-nfs use NFS well | ||
| 4 | known port 2049. This causes native nfs not to be able | ||
| 5 | to run on the same machine if glusterfs is already running | ||
| 6 | with the following error: | ||
| 7 | |||
| 8 | starting 8 nfsd kernel threads: rpc.nfsd: unable to bind inet TCP | ||
| 9 | socket: errno 98 (Address already in use) rpc.nfsd: unable to set | ||
| 10 | any sockets for nfsd | ||
| 11 | done | ||
| 12 | starting mountd: done | ||
| 13 | |||
| 14 | This error will be seen if there are gluster volumes started. | ||
| 15 | |||
| 16 | This patch changes the default glusterfs NFS port from 2049 | ||
| 17 | to 38467. | ||
| 18 | |||
| 19 | This patch infact inverses the commit | ||
| 20 | 3bee716c7a740c3cb6adececcea84bac0ba8abaa | ||
| 21 | upstream https://github.com/gluster/glusterfs.git branch | ||
| 22 | remotes/origin/release-3.4. | ||
| 23 | |||
| 24 | Upstream-Status: Pending | ||
| 25 | |||
| 26 | Signed-off-by: Vu Tran <vu.tran@windriver.com> | ||
| 27 | Signed-off-by: Xulin Sun <xulin.sun@windriver.com> | ||
| 28 | [Yi: minor adjust to apply the patch on 3.11.1] | ||
| 29 | Signed-off-by: Yi Zhao <yi.zhao@windriver.com> | ||
| 30 | --- | ||
| 31 | libglusterfs/src/common-utils.h | 2 +- | ||
| 32 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 33 | |||
| 34 | diff --git a/libglusterfs/src/common-utils.h b/libglusterfs/src/common-utils.h | ||
| 35 | index 6bd2417..25a92b0 100644 | ||
| 36 | --- a/libglusterfs/src/common-utils.h | ||
| 37 | +++ b/libglusterfs/src/common-utils.h | ||
| 38 | @@ -94,7 +94,7 @@ void trap (void); | ||
| 39 | /* Defining this here as it is needed by glusterd for setting | ||
| 40 | * nfs port in volume status. | ||
| 41 | */ | ||
| 42 | -#define GF_NFS3_PORT 2049 | ||
| 43 | +#define GF_NFS3_PORT 38467 | ||
| 44 | |||
| 45 | #define GF_CLIENT_PORT_CEILING 1024 | ||
| 46 | #define GF_IANA_PRIV_PORTS_START 49152 /* RFC 6335 */ | ||
| 47 | -- | ||
| 48 | 1.9.1 | ||
| 49 | |||
diff --git a/recipes-extended/glusterfs/files/glusterfs-configure-automake-with-subdir-objects-for.patch b/recipes-extended/glusterfs/files/glusterfs-configure-automake-with-subdir-objects-for.patch new file mode 100644 index 0000000..f385578 --- /dev/null +++ b/recipes-extended/glusterfs/files/glusterfs-configure-automake-with-subdir-objects-for.patch | |||
| @@ -0,0 +1,37 @@ | |||
| 1 | From 32dffb85c81480d53e639ef84242ccfca26461f9 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Xulin Sun <xulin.sun@windriver.com> | ||
| 3 | Date: Mon, 21 Mar 2016 17:32:50 +0800 | ||
| 4 | Subject: [PATCH] glusterfs: configure: automake with subdir-objects & foreign | ||
| 5 | parameters | ||
| 6 | |||
| 7 | With subdir-objects & foreign for AM_INIT_AUTOMAKE to avoid | ||
| 8 | autoconf execution failed when using automake 1.14 around version. | ||
| 9 | |||
| 10 | Upstream-Status: Pending | ||
| 11 | |||
| 12 | Signed-off-by: Xulin Sun <xulin.sun@windriver.com> | ||
| 13 | --- | ||
| 14 | configure.ac | 4 ++-- | ||
| 15 | 1 file changed, 2 insertions(+), 2 deletions(-) | ||
| 16 | |||
| 17 | diff --git a/configure.ac b/configure.ac | ||
| 18 | index ff746ff..983572e 100644 | ||
| 19 | --- a/configure.ac | ||
| 20 | +++ b/configure.ac | ||
| 21 | @@ -13,11 +13,11 @@ AC_INIT([glusterfs], | ||
| 22 | AC_SUBST([PACKAGE_RELEASE], | ||
| 23 | [m4_esyscmd([build-aux/pkg-version --release])]) | ||
| 24 | |||
| 25 | -AM_INIT_AUTOMAKE(tar-pax) | ||
| 26 | +#AM_INIT_AUTOMAKE(tar-pax) | ||
| 27 | |||
| 28 | # Removes warnings when using automake 1.14 around (...but option 'subdir-objects' is disabled ) | ||
| 29 | #but libglusterfs fails to build with contrib (Then are not set up that way?) | ||
| 30 | -#AM_INIT_AUTOMAKE([subdir-objects]) | ||
| 31 | +AM_INIT_AUTOMAKE([subdir-objects foreign]) | ||
| 32 | |||
| 33 | m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES(yes)]) | ||
| 34 | |||
| 35 | -- | ||
| 36 | 1.9.1 | ||
| 37 | |||
diff --git a/recipes-extended/glusterfs/files/glusterfs-disable-default-startup-scripts.patch b/recipes-extended/glusterfs/files/glusterfs-disable-default-startup-scripts.patch index 4e0379b..cbff10e 100644 --- a/recipes-extended/glusterfs/files/glusterfs-disable-default-startup-scripts.patch +++ b/recipes-extended/glusterfs/files/glusterfs-disable-default-startup-scripts.patch | |||
| @@ -2,24 +2,34 @@ The glusterfs code for installing start-up scripts checks for systemd | |||
| 2 | directories on the build host, and if it finds them, it chooses systemd | 2 | directories on the build host, and if it finds them, it chooses systemd |
| 3 | style scripts, otherwise init.d style scripts. This behavior might | 3 | style scripts, otherwise init.d style scripts. This behavior might |
| 4 | conceivably be suitable for self-hosted builds, but it's grossly broken | 4 | conceivably be suitable for self-hosted builds, but it's grossly broken |
| 5 | for cross-build environments. Since we want to install custom WR scripts | 5 | for cross-build environments. Since we want to install custom scripts |
| 6 | regardless of which script style we support, we patch glusterfs so that | 6 | regardless of which script style we support, we patch glusterfs so that |
| 7 | it doesn't install any of its default start-up scripts. | 7 | it doesn't install any of its default start-up scripts. |
| 8 | 8 | ||
| 9 | Upstream-Status: Inappropriate [WR-specific change] | 9 | Upstream-Status: Inappropriate [embedded specific] |
| 10 | |||
| 10 | Signed-off-by: Donn Seeley <donn.seeley@windriver.com> | 11 | Signed-off-by: Donn Seeley <donn.seeley@windriver.com> |
| 12 | [Xulin: minor adjust to apply the patch] | ||
| 13 | Signed-off-by: Xulin Sun <xulin.sun@windriver.com> | ||
| 14 | [Yi: minor adjust to apply the patch on 3.11.1] | ||
| 15 | Signed-off-by: Yi Zhao <yi.zhao@windriver.com> | ||
| 11 | --- | 16 | --- |
| 12 | extras/Makefile.am | 2 +- | 17 | extras/Makefile.am | 2 +- |
| 13 | 1 file changed, 1 insertion(+), 1 deletion(-) | 18 | 1 file changed, 1 insertion(+), 1 deletion(-) |
| 14 | 19 | ||
| 20 | diff --git a/extras/Makefile.am b/extras/Makefile.am | ||
| 21 | index 3af1103..8978dde 100644 | ||
| 15 | --- a/extras/Makefile.am | 22 | --- a/extras/Makefile.am |
| 16 | +++ b/extras/Makefile.am | 23 | +++ b/extras/Makefile.am |
| 17 | @@ -2,7 +2,7 @@ | 24 | @@ -4,7 +4,7 @@ addonexec_SCRIPTS = peer_add_secret_pub |
| 18 | EditorModedir = $(docdir) | 25 | EditorModedir = $(docdir) |
| 19 | EditorMode_DATA = glusterfs-mode.el glusterfs.vim | 26 | EditorMode_DATA = glusterfs-mode.el glusterfs.vim |
| 20 | 27 | ||
| 21 | -SUBDIRS = init.d systemd benchmarking hook-scripts $(OCF_SUBDIR) LinuxRPM | 28 | -SUBDIRS = init.d systemd benchmarking hook-scripts $(OCF_SUBDIR) LinuxRPM \ |
| 22 | +SUBDIRS = benchmarking hook-scripts $(OCF_SUBDIR) LinuxRPM | 29 | +SUBDIRS = benchmarking hook-scripts $(OCF_SUBDIR) LinuxRPM \ |
| 30 | $(GEOREP_EXTRAS_SUBDIR) snap_scheduler firewalld cliutils | ||
| 23 | 31 | ||
| 24 | confdir = $(sysconfdir)/glusterfs | 32 | confdir = $(sysconfdir)/glusterfs |
| 25 | conf_DATA = glusterfs-logrotate | 33 | -- |
| 34 | 1.9.1 | ||
| 35 | |||
diff --git a/recipes-extended/glusterfs/files/libglusterfs-Don-t-link-against-libfl.patch b/recipes-extended/glusterfs/files/libglusterfs-Don-t-link-against-libfl.patch new file mode 100644 index 0000000..97548a5 --- /dev/null +++ b/recipes-extended/glusterfs/files/libglusterfs-Don-t-link-against-libfl.patch | |||
| @@ -0,0 +1,46 @@ | |||
| 1 | From c8be736bd972bb40b03a34bf9565e1bf4880fa7f Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Xulin Sun <xulin.sun@windriver.com> | ||
| 3 | Date: Fri, 25 Mar 2016 12:33:04 +0800 | ||
| 4 | Subject: [PATCH] libglusterfs: Don't link against libfl | ||
| 5 | |||
| 6 | Remove reference to yywrap by adding "%option noyywrap" statements to | ||
| 7 | the flex source file which doesn't override yywrap. After this, we no | ||
| 8 | longer need to link against libfl and so no longer get errors about | ||
| 9 | undefined references to yylex. | ||
| 10 | |||
| 11 | Upstream-Status: Inappropriate [embedded specific] | ||
| 12 | |||
| 13 | Signed-off-by: Xulin Sun <xulin.sun@windriver.com> | ||
| 14 | --- | ||
| 15 | libglusterfs/src/Makefile.am | 2 +- | ||
| 16 | libglusterfs/src/graph.l | 1 + | ||
| 17 | 2 files changed, 2 insertions(+), 1 deletion(-) | ||
| 18 | |||
| 19 | diff --git a/libglusterfs/src/Makefile.am b/libglusterfs/src/Makefile.am | ||
| 20 | index 85886c1..e90f553 100644 | ||
| 21 | --- a/libglusterfs/src/Makefile.am | ||
| 22 | +++ b/libglusterfs/src/Makefile.am | ||
| 23 | @@ -8,7 +8,7 @@ libglusterfs_la_CPPFLAGS = $(GF_CPPFLAGS) -D__USE_FILE_OFFSET64 \ | ||
| 24 | -I$(CONTRIBDIR)/libexecinfo ${ARGP_STANDALONE_CPPFLAGS} \ | ||
| 25 | -DSBIN_DIR=\"$(sbindir)\" -I$(CONTRIBDIR)/timer-wheel | ||
| 26 | |||
| 27 | -libglusterfs_la_LIBADD = @LEXLIB@ $(ZLIB_LIBS) $(MATH_LIB) $(UUID_LIBS) | ||
| 28 | +libglusterfs_la_LIBADD = $(ZLIB_LIBS) $(MATH_LIB) $(UUID_LIBS) | ||
| 29 | libglusterfs_la_LDFLAGS = -version-info $(LIBGLUSTERFS_LT_VERSION) | ||
| 30 | |||
| 31 | lib_LTLIBRARIES = libglusterfs.la | ||
| 32 | diff --git a/libglusterfs/src/graph.l b/libglusterfs/src/graph.l | ||
| 33 | index e4eba9c..78c6ef8 100644 | ||
| 34 | --- a/libglusterfs/src/graph.l | ||
| 35 | +++ b/libglusterfs/src/graph.l | ||
| 36 | @@ -11,6 +11,7 @@ | ||
| 37 | %x STRING | ||
| 38 | %option yylineno | ||
| 39 | %option noinput | ||
| 40 | +%option noyywrap | ||
| 41 | %{ | ||
| 42 | |||
| 43 | #define YYSTYPE char * | ||
| 44 | -- | ||
| 45 | 1.9.1 | ||
| 46 | |||
diff --git a/recipes-extended/glusterfs/files/python-work-around-host-and-target-python.patch b/recipes-extended/glusterfs/files/python-work-around-host-and-target-python.patch new file mode 100644 index 0000000..9bb90d7 --- /dev/null +++ b/recipes-extended/glusterfs/files/python-work-around-host-and-target-python.patch | |||
| @@ -0,0 +1,81 @@ | |||
| 1 | From 485cf109af4adf3050b558cf16c61b620d7b9fb0 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Mark Asselstine <mark.asselstine@windriver.com> | ||
| 3 | Date: Thu, 27 Feb 2014 21:50:40 -0500 | ||
| 4 | Subject: [PATCH] python: work around host and target python | ||
| 5 | |||
| 6 | In order to allow for the build system to make use of python but not | ||
| 7 | influence the installed software we create a split between PYTHON and | ||
| 8 | TARGET_PYTHON. | ||
| 9 | |||
| 10 | gsyncd.c is the only use of PYTHON on the insalled system so we can | ||
| 11 | restrict the introduction of TARGET_PYTHON to gsyncd.c and the | ||
| 12 | associated Makefile. | ||
| 13 | |||
| 14 | Upstream-Status: Inappropriate [embedded specific] | ||
| 15 | |||
| 16 | Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com> | ||
| 17 | [Xulin: minor adjust the code to apply the patch] | ||
| 18 | Signed-off-by: Xulin Sun <xulin.sun@windriver.com> | ||
| 19 | [Yi: minor adjust the code to apply the patch on 3.11.1] | ||
| 20 | Signed-off-by: Yi Zhao <yi.zhao@windriver.com> | ||
| 21 | --- | ||
| 22 | configure.ac | 2 ++ | ||
| 23 | geo-replication/src/Makefile.am | 3 ++- | ||
| 24 | geo-replication/src/gsyncd.c | 6 +++--- | ||
| 25 | 3 files changed, 7 insertions(+), 4 deletions(-) | ||
| 26 | |||
| 27 | diff --git a/configure.ac b/configure.ac | ||
| 28 | index 7a31038..e54d92b 100644 | ||
| 29 | --- a/configure.ac | ||
| 30 | +++ b/configure.ac | ||
| 31 | @@ -270,6 +270,8 @@ AC_CANONICAL_HOST | ||
| 32 | AC_PROG_CC | ||
| 33 | AC_DISABLE_STATIC | ||
| 34 | AC_PROG_LIBTOOL | ||
| 35 | +AC_SUBST(TARGET_PYTHON) | ||
| 36 | + | ||
| 37 | AC_SUBST([shrext_cmds]) | ||
| 38 | |||
| 39 | AC_CHECK_PROG([RPCGEN], [rpcgen], [yes], [no]) | ||
| 40 | diff --git a/geo-replication/src/Makefile.am b/geo-replication/src/Makefile.am | ||
| 41 | index 9937a0b..07456fb 100644 | ||
| 42 | --- a/geo-replication/src/Makefile.am | ||
| 43 | +++ b/geo-replication/src/Makefile.am | ||
| 44 | @@ -22,7 +22,8 @@ noinst_HEADERS = procdiggy.h | ||
| 45 | AM_CPPFLAGS = $(GF_CPPFLAGS) -I$(top_srcdir)/libglusterfs/src \ | ||
| 46 | -I$(top_srcdir)/rpc/xdr/src -I$(top_builddir)/rpc/xdr/src \ | ||
| 47 | -DGSYNCD_PREFIX=\"$(GLUSTERFS_LIBEXECDIR)\" -DUSE_LIBGLUSTERFS \ | ||
| 48 | - -DSBIN_DIR=\"$(sbindir)\" -DPYTHON=\"$(PYTHON)\" | ||
| 49 | + -DSBIN_DIR=\"$(sbindir)\" -DPYTHON=\"$(PYTHON)\"\ | ||
| 50 | + -DTARGET_PYTHON=\"$(TARGET_PYTHON)\" | ||
| 51 | |||
| 52 | AM_CFLAGS = -Wall $(GF_CFLAGS) | ||
| 53 | |||
| 54 | diff --git a/geo-replication/src/gsyncd.c b/geo-replication/src/gsyncd.c | ||
| 55 | index 2c48ca5..b1d1126 100644 | ||
| 56 | --- a/geo-replication/src/gsyncd.c | ||
| 57 | +++ b/geo-replication/src/gsyncd.c | ||
| 58 | @@ -153,9 +153,9 @@ invoke_gsyncd (int argc, char **argv) | ||
| 59 | goto error; | ||
| 60 | |||
| 61 | j = 0; | ||
| 62 | - python = getenv("PYTHON"); | ||
| 63 | + python = getenv("TARGET_PYTHON"); | ||
| 64 | if(!python) | ||
| 65 | - python = PYTHON; | ||
| 66 | + python = TARGET_PYTHON; | ||
| 67 | nargv[j++] = python; | ||
| 68 | nargv[j++] = GSYNCD_PREFIX"/python/syncdaemon/"GSYNCD_PY; | ||
| 69 | for (i = 1; i < argc; i++) | ||
| 70 | @@ -205,7 +205,7 @@ find_gsyncd (pid_t pid, pid_t ppid, char *name, void *data) | ||
| 71 | ret = 0; | ||
| 72 | switch (zeros) { | ||
| 73 | case 2: | ||
| 74 | - if ((strcmp (basename (buf), basename (PYTHON)) || | ||
| 75 | + if ((strcmp (basename (buf), basename (TARGET_PYTHON)) || | ||
| 76 | strcmp (basename (buf + strlen (buf) + 1), GSYNCD_PY)) == 0) { | ||
| 77 | ret = 1; | ||
| 78 | break; | ||
| 79 | -- | ||
| 80 | 1.9.1 | ||
| 81 | |||
diff --git a/recipes-extended/glusterfs/files/xlator-host-contamination-3.4.patch b/recipes-extended/glusterfs/files/xlator-host-contamination-3.4.patch index 16cc47e..7d26ecf 100644 --- a/recipes-extended/glusterfs/files/xlator-host-contamination-3.4.patch +++ b/recipes-extended/glusterfs/files/xlator-host-contamination-3.4.patch | |||
| @@ -4,36 +4,45 @@ the host's $(xlatordir) directory, resulting in contamination that gets | |||
| 4 | flagged by Yocto's QA rules. | 4 | flagged by Yocto's QA rules. |
| 5 | 5 | ||
| 6 | Upstream-Status: Pending | 6 | Upstream-Status: Pending |
| 7 | |||
| 7 | Signed-off-by: Donn Seeley <donn.seeley@windriver.com> | 8 | Signed-off-by: Donn Seeley <donn.seeley@windriver.com> |
| 9 | [Xulin: minor adjust to apply the patch] | ||
| 10 | Signed-off-by: Xuin Sun <xulin.sun@windriver.com> | ||
| 8 | --- | 11 | --- |
| 9 | xlators/mgmt/glusterd/src/Makefile.am | 2 -- | 12 | xlators/mgmt/glusterd/src/Makefile.am | 2 +- |
| 10 | xlators/nfs/server/src/Makefile.am | 2 -- | 13 | xlators/nfs/server/src/Makefile.am | 2 -- |
| 11 | xlators/system/posix-acl/src/Makefile.am | 2 -- | 14 | xlators/system/posix-acl/src/Makefile.am | 2 -- |
| 12 | 3 files changed, 6 deletions(-) | 15 | 3 files changed, 1 insertion(+), 5 deletions(-) |
| 13 | 16 | ||
| 17 | diff --git a/xlators/mgmt/glusterd/src/Makefile.am b/xlators/mgmt/glusterd/src/Makefile.am | ||
| 18 | index a8f27fb..8243bf0 100644 | ||
| 14 | --- a/xlators/mgmt/glusterd/src/Makefile.am | 19 | --- a/xlators/mgmt/glusterd/src/Makefile.am |
| 15 | +++ b/xlators/mgmt/glusterd/src/Makefile.am | 20 | +++ b/xlators/mgmt/glusterd/src/Makefile.am |
| 16 | @@ -33,8 +33,6 @@ AM_CPPFLAGS = $(GF_CPPFLAGS) -I$(top_src | 21 | @@ -54,7 +54,7 @@ AM_CPPFLAGS = $(GF_CPPFLAGS) -I$(top_srcdir)/libglusterfs/src \ |
| 17 | 22 | ||
| 18 | AM_CFLAGS = -Wall $(GF_CFLAGS) | 23 | AM_CFLAGS = -Wall $(GF_CFLAGS) $(URCU_CFLAGS) $(URCU_CDS_CFLAGS) |
| 24 | |||
| 25 | -AM_LDFLAGS = -L$(xlatordir) $(URCU_LIBS) $(URCU_CDS_LIBS) | ||
| 26 | +AM_LDFLAGS = -L$(URCU_LIBS) $(URCU_CDS_LIBS) | ||
| 19 | 27 | ||
| 20 | -AM_LDFLAGS = -L$(xlatordir) | ||
| 21 | - | ||
| 22 | CLEANFILES = | 28 | CLEANFILES = |
| 23 | 29 | ||
| 24 | install-data-hook: | 30 | diff --git a/xlators/nfs/server/src/Makefile.am b/xlators/nfs/server/src/Makefile.am |
| 31 | index f91bbcf..b16bb9b 100644 | ||
| 25 | --- a/xlators/nfs/server/src/Makefile.am | 32 | --- a/xlators/nfs/server/src/Makefile.am |
| 26 | +++ b/xlators/nfs/server/src/Makefile.am | 33 | +++ b/xlators/nfs/server/src/Makefile.am |
| 27 | @@ -19,6 +19,4 @@ AM_CPPFLAGS = $(GF_CPPFLAGS) \ | 34 | @@ -22,6 +22,4 @@ AM_CPPFLAGS = $(GF_CPPFLAGS) \ |
| 28 | 35 | ||
| 29 | AM_CFLAGS = -Wall $(GF_CFLAGS) | 36 | AM_CFLAGS = -Wall $(GF_CFLAGS) |
| 30 | 37 | ||
| 31 | -AM_LDFLAGS = -L$(xlatordir) | 38 | -AM_LDFLAGS = -L$(xlatordir) |
| 32 | - | 39 | - |
| 33 | CLEANFILES = | 40 | CLEANFILES = |
| 41 | diff --git a/xlators/system/posix-acl/src/Makefile.am b/xlators/system/posix-acl/src/Makefile.am | ||
| 42 | index bc5fbc2..0b9fabe 100644 | ||
| 34 | --- a/xlators/system/posix-acl/src/Makefile.am | 43 | --- a/xlators/system/posix-acl/src/Makefile.am |
| 35 | +++ b/xlators/system/posix-acl/src/Makefile.am | 44 | +++ b/xlators/system/posix-acl/src/Makefile.am |
| 36 | @@ -10,8 +10,6 @@ AM_CPPFLAGS = $(GF_CPPFLAGS) -I$(top_src | 45 | @@ -10,8 +10,6 @@ AM_CPPFLAGS = $(GF_CPPFLAGS) -I$(top_srcdir)/libglusterfs/src |
| 37 | 46 | ||
| 38 | AM_CFLAGS = -Wall $(GF_CFLAGS) | 47 | AM_CFLAGS = -Wall $(GF_CFLAGS) |
| 39 | 48 | ||
| @@ -42,3 +51,6 @@ Signed-off-by: Donn Seeley <donn.seeley@windriver.com> | |||
| 42 | CLEANFILES = | 51 | CLEANFILES = |
| 43 | 52 | ||
| 44 | access-control-compat: | 53 | access-control-compat: |
| 54 | -- | ||
| 55 | 1.9.1 | ||
| 56 | |||
diff --git a/recipes-extended/glusterfs/glusterfs.inc b/recipes-extended/glusterfs/glusterfs.inc index 7a3f71a..e45dc9e 100644 --- a/recipes-extended/glusterfs/glusterfs.inc +++ b/recipes-extended/glusterfs/glusterfs.inc | |||
| @@ -1,21 +1,25 @@ | |||
| 1 | # | ||
| 2 | # Copyright (C) 2013 Wind River Systems, Inc. | ||
| 3 | # | ||
| 4 | |||
| 5 | SUMMARY = "Glusterfs distributed filesystem" | 1 | SUMMARY = "Glusterfs distributed filesystem" |
| 6 | DESCRIPTION = "\ | 2 | DESCRIPTION = "\ |
| 7 | GlusterFS is an open source, distributed file system capable of scaling \ | 3 | GlusterFS is an open source, distributed file system capable of scaling \ |
| 8 | to several petabytes (actually, 72 brontobytes!) and handling thousands \ | 4 | to several petabytes (actually, 72 brontobytes!) and handling thousands \ |
| 9 | of clients. GlusterFS clusters together storage building blocks over \ | 5 | of clients. GlusterFS clusters together storage building blocks over \ |
| 10 | Infiniband RDMA or TCP/IP interconnect, aggregating disk and memory \ | 6 | Infiniband RDMA or TCP/IP interconnect, aggregating disk and memory \ |
| 11 | resources and managing data in a single global namespace." | 7 | resources and managing data in a single global namespace." |
| 12 | HOMEPAGE = "http://www.gluster.org/" | 8 | HOMEPAGE = "http://www.gluster.org/" |
| 13 | SECTION = "console/network" | 9 | SECTION = "console/network" |
| 14 | 10 | ||
| 15 | SRC_URI += "file://glusterd-ovp \ | 11 | SRC_URI += "file://glusterd.init \ |
| 12 | file://glusterd.service \ | ||
| 13 | file://glusterfs-configure-automake-with-subdir-objects-for.patch \ | ||
| 16 | file://xlator-host-contamination-3.4.patch \ | 14 | file://xlator-host-contamination-3.4.patch \ |
| 17 | file://glusterfs-disable-default-startup-scripts.patch \ | 15 | file://glusterfs-disable-default-startup-scripts.patch \ |
| 18 | file://0001-Fix-for-mount.glusterfs-not-accepting-version-argume.patch \ | 16 | file://glusterfs-api-remove-unnecessary-library-options.patch \ |
| 17 | file://python-work-around-host-and-target-python.patch \ | ||
| 18 | file://glusterfs-change-default-nfs-port-number.patch \ | ||
| 19 | file://dependence-on-correct-header-file-path.patch \ | ||
| 20 | file://libglusterfs-Don-t-link-against-libfl.patch \ | ||
| 21 | file://glusterd-change-port-range.patch \ | ||
| 22 | file://configure.ac-allow-PYTHON-values-to-be-passed-via-en.patch \ | ||
| 19 | " | 23 | " |
| 20 | 24 | ||
| 21 | LICENSE = "(LGPLv3+ | GPLv2) & GPLv3+ & LGPLv3+ & GPLv2+ & LGPLv2+ & LGPLv2.1+ & Apache-2.0" | 25 | LICENSE = "(LGPLv3+ | GPLv2) & GPLv3+ & LGPLv3+ & GPLv2+ & LGPLv2+ & LGPLv2.1+ & Apache-2.0" |
| @@ -23,51 +27,79 @@ LIC_FILES_CHKSUM = "file://COPYING-GPLV2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ | |||
| 23 | file://COPYING-LGPLV3;md5=e6a600fd5e1d9cbde2d983680233ad02 \ | 27 | file://COPYING-LGPLV3;md5=e6a600fd5e1d9cbde2d983680233ad02 \ |
| 24 | file://contrib/fuse-util/COPYING;md5=94d55d512a9ba36caa9b7df079bae19f" | 28 | file://contrib/fuse-util/COPYING;md5=94d55d512a9ba36caa9b7df079bae19f" |
| 25 | 29 | ||
| 26 | inherit autotools update-rc.d pkgconfig | 30 | inherit autotools pkgconfig distutils-base update-rc.d systemd |
| 27 | 31 | ||
| 28 | DEPENDS += "bison-native flex-native fuse libaio libxml2 ncurses \ | 32 | DEPENDS += "bison-native flex-native python-native fuse libaio libxml2 ncurses \ |
| 29 | openssl python readline zlib" | 33 | openssl python readline zlib liburcu util-linux glib-2.0 acl" |
| 30 | 34 | ||
| 31 | EXTRA_OECONF = "ac_cv_file__etc_debian_version=no \ | 35 | EXTRA_OECONF = "ac_cv_file__etc_debian_version=no \ |
| 32 | ac_cv_file__etc_SuSE_release=no \ | 36 | ac_cv_file__etc_SuSE_release=no \ |
| 33 | ac_cv_file__etc_redhat_release=no \ | 37 | ac_cv_file__etc_redhat_release=no \ |
| 34 | --with-mountutildir=${sbindir} \ | 38 | --with-mountutildir=${sbindir} \ |
| 35 | --disable-fusermount \ | 39 | --disable-fusermount \ |
| 36 | PYTHON=${bindir}/python" | 40 | TARGET_PYTHON=${bindir}/python \ |
| 37 | 41 | PYTHON=${STAGING_BINDIR_NATIVE}/python-native/python \ | |
| 38 | PACKAGECONFIG ??= "georeplication" | 42 | BUILD_PYTHON_INC=${STAGING_INCDIR}/python${PYTHON_BASEVERSION} \ |
| 43 | BUILD_PYTHON_LIB=python${PYTHON_BASEVERSION} \ | ||
| 44 | BUILD_PYTHON_SITE_PACKAGES=${PYTHON_SITEPACKAGES_DIR} \ | ||
| 45 | " | ||
| 46 | |||
| 47 | PACKAGECONFIG ??= "georeplication libibverbs" | ||
| 39 | PACKAGECONFIG[bd-xlator] = "--enable-bd-xlator,--disable-bd-xlator,lvm2," | 48 | PACKAGECONFIG[bd-xlator] = "--enable-bd-xlator,--disable-bd-xlator,lvm2," |
| 40 | PACKAGECONFIG[debug] = "--enable-debug,--disable-debug,," | 49 | PACKAGECONFIG[debug] = "--enable-debug,--disable-debug,," |
| 41 | PACKAGECONFIG[georeplication] = "--enable-georeplication,--disable-georeplication,,rsync" | 50 | PACKAGECONFIG[georeplication] = "--enable-georeplication,--disable-georeplication,,rsync" |
| 42 | PACKAGECONFIG[libibverbs] = "--enable-ibverbs,--disable-ibverbs,libibverbs librdmacm," | 51 | PACKAGECONFIG[libibverbs] = "--enable-ibverbs,--disable-ibverbs,libibverbs librdmacm," |
| 43 | PACKAGECONFIG[ocf] = "--with-ocf,--without-ocf,," | 52 | PACKAGECONFIG[ocf] = "--with-ocf,--without-ocf,," |
| 44 | PACKAGECONFIG[systemtap] = "--enable-systemtap,--disable-systemtap,systemtap," | ||
| 45 | PACKAGECONFIG[valgrind] = "--with-valgrind,--without-valgrind,valgrind," | 53 | PACKAGECONFIG[valgrind] = "--with-valgrind,--without-valgrind,valgrind," |
| 46 | 54 | ||
| 47 | do_install_append() { | 55 | do_install_append() { |
| 48 | install -d ${D}${sysconfdir}/init.d | 56 | install -d ${D}${sysconfdir}/init.d |
| 49 | install -m 0755 ${WORKDIR}/glusterd-ovp \ | 57 | install -m 0755 ${WORKDIR}/glusterd.init \ |
| 50 | ${D}${sysconfdir}/init.d/glusterd | 58 | ${D}${sysconfdir}/init.d/glusterd |
| 51 | 59 | ||
| 52 | # Mount looks for mount.* plug-ins in /sbin; fix it with a symlink. | 60 | # Mount looks for mount.* plug-ins in /sbin; fix it with a symlink. |
| 53 | mkdir -p ${D}${base_sbindir} | 61 | mkdir -p ${D}${base_sbindir} |
| 54 | (cd ${D}${base_sbindir}; ln -s ..${sbindir}/mount.glusterfs .) | 62 | (cd ${D}${base_sbindir}; ln -s ..${sbindir}/mount.glusterfs .) |
| 55 | 63 | ||
| 56 | # These are plug-ins, so they don't need libtool configs. | 64 | # These are plug-ins, so they don't need libtool configs. |
| 57 | find ${D}${libdir}/glusterfs/${PV} -name '*.la' -exec rm -f '{}' ';' | 65 | find ${D}${libdir}/glusterfs/${PV} -name '*.la' -exec rm -f '{}' ';' |
| 58 | 66 | ||
| 59 | # The RPM spec file creates these directories. | 67 | # The RPM spec file creates these directories. |
| 60 | install -d ${D}${sysconfdir}/default/volatiles | 68 | install -d ${D}${sysconfdir}/default/volatiles |
| 61 | cat > ${D}${sysconfdir}/default/volatiles/99_glusterfs << EOF | 69 | cat > ${D}${sysconfdir}/default/volatiles/99_glusterfs << EOF |
| 62 | d root root 0755 ${localstatedir}/log/glusterfs none | 70 | d root root 0755 ${localstatedir}/log/glusterfs none |
| 63 | d root root 0755 ${localstatedir}/run/gluster none | 71 | d root root 0755 ${localstatedir}/run/gluster none |
| 64 | EOF | 72 | EOF |
| 73 | |||
| 74 | # Install systemd service files | ||
| 75 | install -d ${D}${systemd_system_unitdir} | ||
| 76 | install -m 0644 ${WORKDIR}/glusterd.service ${D}${systemd_system_unitdir} | ||
| 77 | sed -i -e 's#@SBINDIR@#${sbindir}#g' \ | ||
| 78 | -e 's#@base_bindir@#${base_bindir}#g' \ | ||
| 79 | -e 's#@localstatedir@#${localstatedir}#g' \ | ||
| 80 | ${D}${systemd_system_unitdir}/glusterd.service | ||
| 81 | |||
| 82 | if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then | ||
| 83 | install -d ${D}${sysconfdir}/tmpfiles.d | ||
| 84 | cat > ${D}${sysconfdir}/tmpfiles.d/glusterfs.conf << EOF | ||
| 85 | d ${localstatedir}/log/glusterfs 0755 root root - | ||
| 86 | d ${localstatedir}/run/gluster 0755 root root - | ||
| 87 | EOF | ||
| 88 | fi | ||
| 89 | |||
| 90 | # Remove /var/run and /var/log as they are created on startup | ||
| 91 | rm -rf ${D}${localstatedir}/run | ||
| 92 | rm -rf ${D}${localstatedir}/log | ||
| 65 | } | 93 | } |
| 66 | 94 | ||
| 67 | INITSCRIPT_PACKAGES = "glusterfs-server" | 95 | INITSCRIPT_PACKAGES = "glusterfs-server" |
| 68 | INITSCRIPT_NAME = "glusterd" | 96 | INITSCRIPT_NAME = "glusterd" |
| 69 | INITSCRIPT_PARAMS = "start 20 5 3 2 . stop 80 0 1 6 ." | 97 | INITSCRIPT_PARAMS = "start 20 5 3 2 . stop 80 0 1 6 ." |
| 70 | 98 | ||
| 99 | SYSTEMD_PACKAGES = "glusterfs-server" | ||
| 100 | SYSTEMD_SERVICE_${PN} = "glusterd.service" | ||
| 101 | SYSTEMD_AUTO_ENABLE = "disable" | ||
| 102 | |||
| 71 | # Allow plug-in symlinks. | 103 | # Allow plug-in symlinks. |
| 72 | INSANE_SKIP_${PN} += "dev-so" | 104 | INSANE_SKIP_${PN} += "dev-so" |
| 73 | INSANE_SKIP_${PN}-rdma += "dev-so" | 105 | INSANE_SKIP_${PN}-rdma += "dev-so" |
| @@ -77,6 +109,10 @@ INSANE_SKIP_${PN}-server += "dev-so" | |||
| 77 | PACKAGES += "${PN}-rdma ${PN}-geo-replication ${PN}-fuse ${PN}-server \ | 109 | PACKAGES += "${PN}-rdma ${PN}-geo-replication ${PN}-fuse ${PN}-server \ |
| 78 | ${PN}-api ${PN}-ocf" | 110 | ${PN}-api ${PN}-ocf" |
| 79 | 111 | ||
| 112 | RDEPENDS_${PN} += "python python-json python-ctypes bash" | ||
| 113 | RDEPENDS_${PN}-ocf += "bash" | ||
| 114 | RDEPENDS_${PN}-server += "bash" | ||
| 115 | |||
| 80 | FILES_${PN}-dbg += "${libdir}/glusterfs/${PV}/*/.debug \ | 116 | FILES_${PN}-dbg += "${libdir}/glusterfs/${PV}/*/.debug \ |
| 81 | ${libdir}/glusterfs/${PV}/*/*/.debug \ | 117 | ${libdir}/glusterfs/${PV}/*/*/.debug \ |
| 82 | ${libdir}/glusterfs/${PV}/*/*/*/.debug \ | 118 | ${libdir}/glusterfs/${PV}/*/*/*/.debug \ |
| @@ -92,18 +128,51 @@ FILES_${PN} = "${libdir}/glusterfs/${PV}/auth \ | |||
| 92 | ${libdir}/glusterfs/${PV}/xlator/protocol/client* \ | 128 | ${libdir}/glusterfs/${PV}/xlator/protocol/client* \ |
| 93 | ${libdir}/glusterfs/${PV}/xlator/system \ | 129 | ${libdir}/glusterfs/${PV}/xlator/system \ |
| 94 | ${libdir}/glusterfs/${PV}/xlator/testing \ | 130 | ${libdir}/glusterfs/${PV}/xlator/testing \ |
| 131 | ${libdir}/glusterfs/${PV}/xlator/meta.so \ | ||
| 132 | ${libdir}/glusterfs/ganesha \ | ||
| 133 | ${libdir}/glusterfs/glusterfs/glusterfind \ | ||
| 134 | ${libdir}/glusterfs/glusterfs/gfind_missing_files \ | ||
| 135 | ${libdir}/glusterfs/glusterfs/peer* \ | ||
| 136 | ${libdir}/glusterfs/glusterfs/*.sh \ | ||
| 95 | ${libdir}/libglusterfs.so.* \ | 137 | ${libdir}/libglusterfs.so.* \ |
| 96 | ${libdir}/libgfrpc.so.* \ | 138 | ${libdir}/libgfrpc.so.* \ |
| 139 | ${libdir}/libgfchangelog.so.* \ | ||
| 140 | ${libdir}/libgfdb.so.* \ | ||
| 97 | ${libdir}/libgfxdr.so.* \ | 141 | ${libdir}/libgfxdr.so.* \ |
| 142 | ${libdir}/python*/site-packages \ | ||
| 143 | ${libexecdir}/glusterfs/events \ | ||
| 144 | ${libexecdir}/glusterfs/glusterfind \ | ||
| 145 | ${libexecdir}/glusterfs/gfind_missing_files \ | ||
| 146 | ${libexecdir}/glusterfs/peer_mountbroker.py \ | ||
| 147 | ${libexecdir}/glusterfs/peer_eventsapi.py \ | ||
| 148 | ${libexecdir}/glusterfs/peer_mountbroker \ | ||
| 149 | ${libexecdir}/glusterfs/peer_gsec_create \ | ||
| 150 | ${libexecdir}/glusterfs/gverify.sh \ | ||
| 151 | ${libexecdir}/glusterfs/peer_add_secret_pub \ | ||
| 98 | ${localstatedir} \ | 152 | ${localstatedir} \ |
| 99 | ${sysconfdir}/default/volatiles \ | 153 | ${sysconfdir}/default/volatiles \ |
| 100 | ${sbindir}/glusterfs \ | 154 | ${sbindir}/glusterfs \ |
| 101 | ${sbindir}/glusterfsd" | 155 | ${sbindir}/glusterfsd \ |
| 156 | ${sbindir}/gfind_missing_files \ | ||
| 157 | ${sbindir}/glfsheal \ | ||
| 158 | ${sbindir}/gluster-eventsapi \ | ||
| 159 | ${sbindir}/gluster-mountbroker \ | ||
| 160 | ${sbindir}/glustereventsd \ | ||
| 161 | ${sbindir}/gf_attach \ | ||
| 162 | ${sbindir}/*.py \ | ||
| 163 | ${bindir}/ \ | ||
| 164 | ${sysconfdir}/glusterfs \ | ||
| 165 | ${sysconfdir}/ganesha \ | ||
| 166 | ${datadir}/glusterfs/* \ | ||
| 167 | " | ||
| 102 | 168 | ||
| 103 | FILES_${PN}-rdma = "${libdir}/glusterfs/${PV}/rpc-transport/rdma*" | 169 | FILES_${PN}-rdma = "${libdir}/glusterfs/${PV}/rpc-transport/rdma*" |
| 104 | 170 | ||
| 105 | FILES_${PN}-geo-replication = "${libexecdir}/glusterfs/gsyncd \ | 171 | FILES_${PN}-geo-replication = "${libexecdir}/glusterfs/gsyncd \ |
| 106 | ${libexecdir}/glusterfs/python/syncdaemon" | 172 | ${libexecdir}/glusterfs/python/syncdaemon \ |
| 173 | ${libexecdir}/glusterfs/peer_georep-sshkey.py \ | ||
| 174 | ${libexecdir}/glusterfs/set_geo_rep_pem_keys.sh \ | ||
| 175 | ${sbindir}/gluster-georep-sshkey" | ||
| 107 | 176 | ||
| 108 | FILES_${PN}-fuse = "${bindir}/fusermount-glusterfs \ | 177 | FILES_${PN}-fuse = "${bindir}/fusermount-glusterfs \ |
| 109 | ${libdir}/glusterfs/${PV}/xlator/mount \ | 178 | ${libdir}/glusterfs/${PV}/xlator/mount \ |
| @@ -118,7 +187,9 @@ FILES_${PN}-server = "${libdir}/glusterfs/${PV}/xlator/mgmt \ | |||
| 118 | ${sbindir}/glusterd \ | 187 | ${sbindir}/glusterd \ |
| 119 | ${sysconfdir}/glusterfs/glusterd.vol \ | 188 | ${sysconfdir}/glusterfs/glusterd.vol \ |
| 120 | ${sysconfdir}/glusterfs/glusterfs-logrotate \ | 189 | ${sysconfdir}/glusterfs/glusterfs-logrotate \ |
| 121 | ${sysconfdir}/init.d/glusterd" | 190 | ${sysconfdir}/init.d/glusterd \ |
| 191 | ${sysconfdir}/tmpfiles.d \ | ||
| 192 | ${systemd_system_unitdir}" | ||
| 122 | 193 | ||
| 123 | # Note: Debian package renaming produces libgfapi[0-9]+-*.*.rpm. | 194 | # Note: Debian package renaming produces libgfapi[0-9]+-*.*.rpm. |
| 124 | FILES_${PN}-api = "${libdir}/libgfapi.so.*" | 195 | FILES_${PN}-api = "${libdir}/libgfapi.so.*" |
| @@ -126,7 +197,8 @@ FILES_${PN}-api = "${libdir}/libgfapi.so.*" | |||
| 126 | FILES_${PN}-ocf = "${prefix}/lib/ocf" | 197 | FILES_${PN}-ocf = "${prefix}/lib/ocf" |
| 127 | 198 | ||
| 128 | pkg_postinst_${PN}() { | 199 | pkg_postinst_${PN}() { |
| 129 | if [ -z "$D" ] && [ -e /etc/init.d/populate-volatile.sh ]; then | 200 | if [ -z "$D" ] && [ -e /etc/init.d/populate-volatile.sh ]; then |
| 130 | /etc/init.d/populate-volatile.sh update | 201 | /etc/init.d/populate-volatile.sh update |
| 131 | fi | 202 | fi |
| 132 | } | 203 | } |
| 204 | |||
diff --git a/recipes-extended/glusterfs/glusterfs_3.11.1.bb b/recipes-extended/glusterfs/glusterfs_3.11.1.bb new file mode 100644 index 0000000..bbaaaf4 --- /dev/null +++ b/recipes-extended/glusterfs/glusterfs_3.11.1.bb | |||
| @@ -0,0 +1,6 @@ | |||
| 1 | SRC_URI = "http://download.gluster.org/pub/gluster/glusterfs/3.11/${PV}/${BPN}-${PV}.tar.gz" | ||
| 2 | |||
| 3 | SRC_URI[md5sum] = "46d56837b8b5c785f2f1e5317d5f6da8" | ||
| 4 | SRC_URI[sha256sum] = "c7e0502631c9bc9da05795b666b74ef40a30a0344f5a2e205e65bd2faefe1442" | ||
| 5 | |||
| 6 | require glusterfs.inc | ||
diff --git a/recipes-extended/glusterfs/glusterfs_3.4.2.bb b/recipes-extended/glusterfs/glusterfs_3.4.2.bb deleted file mode 100644 index b6ae856..0000000 --- a/recipes-extended/glusterfs/glusterfs_3.4.2.bb +++ /dev/null | |||
| @@ -1,12 +0,0 @@ | |||
| 1 | # | ||
| 2 | # Copyright (C) 2013 Wind River Systems, Inc. | ||
| 3 | # | ||
| 4 | |||
| 5 | PR = "r0" | ||
| 6 | |||
| 7 | SRC_URI = "http://download.gluster.org/pub/gluster/glusterfs/3.4/${PV}/${BPN}-${PV}.tar.gz" | ||
| 8 | |||
| 9 | SRC_URI[md5sum] = "7c05304a9aca3c85ff27458461783623" | ||
| 10 | SRC_URI[sha256sum] = "4fcd42b13b60a67587de98e60ff679803433bbb0c11aa2b40c4135e2358cedef" | ||
| 11 | |||
| 12 | require glusterfs.inc | ||
