summaryrefslogtreecommitdiffstats
path: root/rpc/xdr/src/Makefile.am
diff options
context:
space:
mode:
authorNiels de Vos <ndevos@redhat.com>2016-04-18 21:47:18 +0200
committerJeff Darcy <jdarcy@redhat.com>2016-04-28 13:51:12 -0700
commit2f945b86d30eca3a32f5e8e42fbe692ddf4b55be (patch)
tree61765dd2febe2fa5416fdf6e37625e4d66d3f094 /rpc/xdr/src/Makefile.am
parent40e96c17647b281264783520f8fbdd9056332b4c (diff)
rpc: split FOPs enum from glusterfs.h
Moving the enumeration of FOPs and some of the other parts that are defining the network protocol to the rpc/xdr/ section. These structures need some care when modifications are made, moving them out of the common glusterfs.h header helps with that. The protocol definition structures are generated in a new glusterfs-fops header. This file is present in rpc/xdr/src/ and libglusterfs/src/, it is a little ugly, but prevents the need to update all Makefile.am files with the additional -I option for finding the new header file. The generation of the .c and .h files from the .x descriptions needed small modifications to accommodate these changes. The build/xdrgen script was improved slightly for this. The .c and .h files are incorrectly in the $(top_srcdir), instead of $(top_builddir). This is an existing issue, and bug 1330604 has been filed to get that addressed. Change-Id: I98fc8cf7e4b631082c7b203b5a0a77111bec1fb9 BUG: 1328502 Signed-off-by: Niels de Vos <ndevos@redhat.com> Reviewed-on: http://review.gluster.org/14032 Smoke: Gluster Build System <jenkins@build.gluster.com> CentOS-regression: Gluster Build System <jenkins@build.gluster.com> NetBSD-regression: NetBSD Build System <jenkins@build.gluster.org> Reviewed-by: Jeff Darcy <jdarcy@redhat.com>
Diffstat (limited to 'rpc/xdr/src/Makefile.am')
-rw-r--r--rpc/xdr/src/Makefile.am11
1 files changed, 10 insertions, 1 deletions
diff --git a/rpc/xdr/src/Makefile.am b/rpc/xdr/src/Makefile.am
index 56e64ad3797..e0f9c28be86 100644
--- a/rpc/xdr/src/Makefile.am
+++ b/rpc/xdr/src/Makefile.am
@@ -1,6 +1,6 @@
XDRSOURCES = glusterfs3-xdr.c cli1-xdr.c nlm4-xdr.c nsm-xdr.c \
rpc-common-xdr.c glusterd1-xdr.c acl3-xdr.c portmap-xdr.c \
- mount3udp.c changelog-xdr.c
+ mount3udp.c changelog-xdr.c glusterfs-fops.c
XDRHEADERS = $(XDRSOURCES:.c=.h)
XDRGENFILES = $(XDRSOURCES:.c=.x)
@@ -30,6 +30,15 @@ EXTRA_DIST = $(XDRGENFILES)
CLEANFILES = $(XDRSOURCES) $(XDRHEADERS)
xdrsrc=$(top_srcdir)/rpc/xdr/src
+glusterfs-fops.c: glusterfs-fops.x glusterfs-fops.h
+ $(top_srcdir)/build-aux/xdrgen source $(xdrsrc)/`basename ${@:.c=.x}`
+
+glusterfs-fops.h: glusterfs-fops.x
+ $(top_srcdir)/build-aux/xdrgen header $(xdrsrc)/`basename ${@:.h=.x}`
+
+$(top_srcdir)/libglusterfs/src/glusterfs-fops.h: glusterfs-fops.h
+ cp $(xdrsrc)/`basename $@` $(top_srcdir)/libglusterfs/src/
+
glusterfs3-xdr.c: glusterfs3-xdr.x glusterfs3-xdr.h
$(top_srcdir)/build-aux/xdrgen source $(xdrsrc)/`basename ${@:.c=.x}`