From a0aa6fb91ac0cdd52769fa8c3cdbf63e48ff63db Mon Sep 17 00:00:00 2001 From: "Kaleb S. KEITHLEY" Date: Fri, 13 Mar 2015 14:22:14 -0400 Subject: build: argp-standalone, conditional build and build with gcc-5 This patch is a backport of two patches on the master branch: 1) BZ 1086773, http://review.gluster.org/7440 commit 09d2dcac3a238cfe6bde1a7aed06facfa16caf20 Change-Id: Id0fcb717b5821d8a4c176e6274339f46b3a4a249 2) BZ 764655, http://review.gluster.org/6034 commit b2dfa011a3fdcb7d22764d143517d0fbd1c2a201 Change-Id: If5dfdc9c7427bd3d39d8da8f79e33ae2da6a3137 In summary: conditionally build argp-standalone, and address compile issues when compiling with gcc-5 Change-Id: Id0f36f0ca4a3775556c9ca524035cd27b4ded55d BUG: 1201898 Signed-off-by: Kaleb S. KEITHLEY --- Makefile.am | 12 +++++++++--- argp-standalone/argp-fmtstream.c | 5 +++++ argp-standalone/argp-parse.c | 5 +++++ configure.ac | 1 + 4 files changed, 20 insertions(+), 3 deletions(-) diff --git a/Makefile.am b/Makefile.am index a6f2a9d1750..e3ea9b55b81 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,9 +1,10 @@ EXTRA_DIST = autogen.sh \ COPYING-GPLV2 COPYING-LGPLV3 \ INSTALL README AUTHORS THANKS NEWS \ - glusterfs.spec glusterfs-api.pc.in + glusterfs.spec glusterfs-api.pc.in \ + argp-standalone -SUBDIRS = argp-standalone libglusterfs rpc api xlators glusterfsd \ +SUBDIRS = $(ARGP_STANDALONE_DIR) libglusterfs rpc api xlators glusterfsd \ $(FUSERMOUNT_SUBDIR) doc extras cli pkgconfigdir = @pkgconfigdir@ @@ -18,7 +19,12 @@ gitclean: distclean rm -fr autom4te.cache rm -f missing aclocal.m4 config.h.in config.guess config.sub ltmain.sh install-sh configure depcomp rm -fr argp-standalone/autom4te.cache - rm -f argp-standalone/aclocal.m4 argp-standalone/config.h.in argp-standalone/configure argp-standalone/depcomp argp-standalone/install-sh argp-standalone/missing + rm -f argp-standalone/aclocal.m4 + rm -f argp-standalone/config.h.in + rm -f argp-standalone/configure + rm -f argp-standalone/depcomp + rm -f argp-standalone/install-sh + rm -f argp-standalone/missing dist-hook: (cd $(srcdir) && git diff && echo ===== git log ==== && git log) > $(distdir)/ChangeLog diff --git a/argp-standalone/argp-fmtstream.c b/argp-standalone/argp-fmtstream.c index 7f792854fc3..681dc2f3968 100644 --- a/argp-standalone/argp-fmtstream.c +++ b/argp-standalone/argp-fmtstream.c @@ -389,6 +389,7 @@ __argp_fmtstream_printf (struct argp_fmtstream *fs, const char *fmt, ...) weak_alias (__argp_fmtstream_printf, argp_fmtstream_printf) #endif +#if __STDC_VERSION__ - 199900L < 1 /* Duplicate the inline definitions in argp-fmtstream.h, for compilers * that don't do inlining. */ size_t @@ -472,4 +473,8 @@ __argp_fmtstream_point (argp_fmtstream_t __fs) return __fs->point_col >= 0 ? __fs->point_col : 0; } +#endif /* __STDC_VERSION__ - 199900L < 1 */ + #endif /* !ARGP_FMTSTREAM_USE_LINEWRAP */ + + diff --git a/argp-standalone/argp-parse.c b/argp-standalone/argp-parse.c index 78f7bf139b6..80c56de6e93 100644 --- a/argp-standalone/argp-parse.c +++ b/argp-standalone/argp-parse.c @@ -1276,6 +1276,8 @@ __argp_input (const struct argp *argp, const struct argp_state *state) weak_alias (__argp_input, _argp_input) #endif +#if __STDC_VERSION__ - 199900L < 1 + /* Defined here, in case a user is not inlining the definitions in * argp.h */ void @@ -1303,3 +1305,6 @@ __option_is_end (__const struct argp_option *__opt) { return !__opt->key && !__opt->name && !__opt->doc && !__opt->group; } + +#endif /* __STDC_VERSION__ - 199900L < 1 */ + diff --git a/configure.ac b/configure.ac index def7a2754be..cd95c4707f9 100644 --- a/configure.ac +++ b/configure.ac @@ -519,6 +519,7 @@ if test "x${ac_cv_header_argp_h}" = "xno"; then BUILD_ARGP_STANDALONE=yes ARGP_STANDALONE_CPPFLAGS='-I${top_srcdir}/argp-standalone' ARGP_STANDALONE_LDADD='${top_builddir}/argp-standalone/libargp.a' + ARGP_STANDALONE_DIR='${top_builddir}/argp-standalone' fi AC_SUBST(ARGP_STANDALONE_CPPFLAGS) -- cgit