summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuboš Luňák <l.lunak@collabora.com>2019-05-26 13:53:34 +0200
committerLuboš Luňák <l.lunak@collabora.com>2019-05-27 16:03:31 +0200
commitd4bb16adcd2327cb99b42f64d62a180a0f08c147 (patch)
treec6a1282cd328c8ce2b9f9a48c80966956fded031
parent49c88d8b232f008efc864204e43ff3609b6aa6f5 (diff)
Revert "Remove broken rebuild of compilerplugins when CLANG_FULL_VERSION..."
This reverts commit efe28895498b03f1468a9dc9f510452f36affc2f. It is that commit that is broken. The only thing that does not work is that not all compilerplugin sources depend on config_clang.h, the rest is fine. So instead of reverting something that in principle works (and even complaining in the commit message about the original problem), just fix it (will do in next commit). Change-Id: Ic7766a97220d5b7ef1cd195320899564140fdf1c Reviewed-on: https://gerrit.libreoffice.org/72975 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
-rw-r--r--compilerplugins/clang/plugin.hxx2
-rw-r--r--config_host/config_clang.h.in4
-rw-r--r--configure.ac3
3 files changed, 8 insertions, 1 deletions
diff --git a/compilerplugins/clang/plugin.hxx b/compilerplugins/clang/plugin.hxx
index 984bd11cd315..75672ff09915 100644
--- a/compilerplugins/clang/plugin.hxx
+++ b/compilerplugins/clang/plugin.hxx
@@ -12,6 +12,8 @@
#ifndef PLUGIN_H
#define PLUGIN_H
+#include <config_clang.h>
+
#include <clang/AST/ASTContext.h>
#include <clang/AST/RecursiveASTVisitor.h>
#include <clang/Basic/FileManager.h>
diff --git a/config_host/config_clang.h.in b/config_host/config_clang.h.in
index 66629bfd780e..c19c0875ce86 100644
--- a/config_host/config_clang.h.in
+++ b/config_host/config_clang.h.in
@@ -13,4 +13,8 @@ Settings related to Clang compiler plugins.
#undef CLANG_VERSION
+/* This is actually unused, but it should change whenever Clang changes,
+thus causing update of this .h file and triggering rebuild of our Clang plugin. */
+#undef CLANG_FULL_VERSION
+
#endif
diff --git a/configure.ac b/configure.ac
index b411ee9d92a6..dfa860de51af 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3673,15 +3673,16 @@ if test "$COM_IS_CLANG" = TRUE; then
my_args="-E -P"
fi
clang_version=`echo __clang_major__.__clang_minor__.__clang_patchlevel__ | $CC_PLAIN $my_args - | sed 's/ //g'`
+ CLANG_FULL_VERSION=`echo __clang_version__ | $CC_PLAIN $my_args -`
CLANGVER=`echo $clang_version \
| $AWK -F. '{ print \$1*10000+(\$2<100?\$2:99)*100+(\$3<100?\$3:99) }'`
if test "$CLANGVER" -ge 50002; then
AC_MSG_RESULT([yes ($clang_version)])
else
- CLANG_FULL_VERSION=`echo __clang_version__ | $CC_PLAIN $my_args -`
AC_MSG_ERROR(["$CLANG_FULL_VERSION" is too old or unrecognized, must be at least Clang 5.0.2])
fi
AC_DEFINE_UNQUOTED(CLANG_VERSION,$CLANGVER)
+ AC_DEFINE_UNQUOTED(CLANG_FULL_VERSION,$CLANG_FULL_VERSION)
fi
fi