Repository: trafficserver
Updated Branches:
  refs/heads/master ef6fb54f0 -> 6cf460d82


TS-4190: Disabling LuaJIT in configure still builds portions with Lua.

Don't try to build Lua derived metrics support if we don't have any
LuaJIT support.


Project: http://git-wip-us.apache.org/repos/asf/trafficserver/repo
Commit: http://git-wip-us.apache.org/repos/asf/trafficserver/commit/e0f8cf1a
Tree: http://git-wip-us.apache.org/repos/asf/trafficserver/tree/e0f8cf1a
Diff: http://git-wip-us.apache.org/repos/asf/trafficserver/diff/e0f8cf1a

Branch: refs/heads/master
Commit: e0f8cf1a10082218fce88e12b32e24da104a6db0
Parents: ef6fb54
Author: James Peach <[email protected]>
Authored: Thu Feb 11 09:55:55 2016 -0800
Committer: James Peach <[email protected]>
Committed: Thu Feb 18 09:10:42 2016 -0800

----------------------------------------------------------------------
 cmd/traffic_manager/Makefile.am        | 19 +++++++++++--------
 cmd/traffic_manager/metrics.h          | 19 +++++++++++++++++++
 cmd/traffic_manager/traffic_manager.cc | 15 +++++++++++++++
 configure.ac                           |  3 ++-
 lib/ts/ink_config.h.in                 |  5 +++--
 5 files changed, 50 insertions(+), 11 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/trafficserver/blob/e0f8cf1a/cmd/traffic_manager/Makefile.am
----------------------------------------------------------------------
diff --git a/cmd/traffic_manager/Makefile.am b/cmd/traffic_manager/Makefile.am
index 7b615fd..c92b788 100644
--- a/cmd/traffic_manager/Makefile.am
+++ b/cmd/traffic_manager/Makefile.am
@@ -41,23 +41,20 @@ AM_LDFLAGS = \
   @EXPAT_LDFLAGS@ \
   @OPENSSL_LDFLAGS@
 
-AM_LDFLAGS += \
-  $(LUAJIT_LDFLAGS)
-
 traffic_manager_SOURCES = \
   AddConfigFilesHere.cc \
-  traffic_manager.cc \
-  metrics.cc \
+  MgmtHandlers.cc \
+  MgmtHandlers.h \
   StatProcessor.cc \
   StatProcessor.h \
   StatType.cc \
   StatType.h \
   StatXML.cc \
   StatXML.h \
-  MgmtHandlers.cc \
-  MgmtHandlers.h \
   WebOverview.cc \
-  WebOverview.h
+  WebOverview.h \
+  metrics.h \
+  traffic_manager.cc
 
 traffic_manager_LDADD = \
   $(top_builddir)/mgmt/api/libmgmtapilocal.la \
@@ -70,6 +67,12 @@ traffic_manager_LDADD = \
   $(top_builddir)/proxy/shared/libdiagsconfig.a
 
 if BUILD_LUAJIT
+AM_LDFLAGS += \
+  $(LUAJIT_LDFLAGS)
+
+traffic_manager_SOURCES += \
+  metrics.cc
+
 traffic_manager_LDADD += \
   $(top_builddir)/lib/bindings/libbindings.la \
   $(top_builddir)/lib/luajit/src/libluajit.a

http://git-wip-us.apache.org/repos/asf/trafficserver/blob/e0f8cf1a/cmd/traffic_manager/metrics.h
----------------------------------------------------------------------
diff --git a/cmd/traffic_manager/metrics.h b/cmd/traffic_manager/metrics.h
index 4bc97ce..4155cd3 100644
--- a/cmd/traffic_manager/metrics.h
+++ b/cmd/traffic_manager/metrics.h
@@ -24,8 +24,27 @@
 #ifndef METRICS_H_D289E71B_AAC5_4CF3_9954_D54EDED60D1B
 #define METRICS_H_D289E71B_AAC5_4CF3_9954_D54EDED60D1B
 
+#if TS_USE_LUAJIT
+
 bool metrics_binding_initialize(BindingInstance &binding);
 void metrics_binding_destroy(BindingInstance &binding);
 void metrics_binding_evaluate(BindingInstance &binding);
 
+#else /* TS_USE_LUAJIT */
+
+struct BindingInstance{};
+
+static inline bool
+metrics_binding_initialize(BindingInstance &binding) {
+  return false;
+}
+
+static inline void
+metrics_binding_destroy(BindingInstance &binding) { }
+
+static inline void
+metrics_binding_evaluate(BindingInstance &binding) { }
+
+#endif /* TS_USE_LUAJIT */
+
 #endif /* METRICS_H_D289E71B_AAC5_4CF3_9954_D54EDED60D1B */

http://git-wip-us.apache.org/repos/asf/trafficserver/blob/e0f8cf1a/cmd/traffic_manager/traffic_manager.cc
----------------------------------------------------------------------
diff --git a/cmd/traffic_manager/traffic_manager.cc 
b/cmd/traffic_manager/traffic_manager.cc
index cae77b8..3754d06 100644
--- a/cmd/traffic_manager/traffic_manager.cc
+++ b/cmd/traffic_manager/traffic_manager.cc
@@ -51,8 +51,11 @@
 #include "StatProcessor.h"
 #include "P_RecLocal.h"
 
+#if TS_USE_LUAJIT
 #include "bindings/bindings.h"
 #include "bindings/metrics.h"
+#endif
+
 #include "metrics.h"
 
 #if TS_USE_POSIX_CAP
@@ -738,6 +741,18 @@ main(int argc, const char **argv)
   RecRegisterStatInt(RECT_NODE, "proxy.node.config.restart_required.manager", 
0, RECP_NON_PERSISTENT);
   RecRegisterStatInt(RECT_NODE, "proxy.node.config.restart_required.cop", 0, 
RECP_NON_PERSISTENT);
 
+#if !TS_USE_LUAJIT
+  if (enable_lua) {
+    static bool warned = false;
+    enable_lua = false;
+
+    if (!warned) {
+      Warning("missing Lua support, disabling Lua derived metrics");
+      warned = true;
+    }
+  }
+#endif
+
   if (enable_lua) {
     binding = new BindingInstance;
     metrics_binding_initialize(*binding);

http://git-wip-us.apache.org/repos/asf/trafficserver/blob/e0f8cf1a/configure.ac
----------------------------------------------------------------------
diff --git a/configure.ac b/configure.ac
index aa2b805..d6c74d4 100644
--- a/configure.ac
+++ b/configure.ac
@@ -466,7 +466,8 @@ AC_ARG_ENABLE([luajit],
 )
 AC_MSG_RESULT([$enable_luajit])
 AM_CONDITIONAL([BUILD_LUAJIT], [ test "x${enable_luajit}" = "xyes" ])
-
+TS_ARG_ENABLE_VAR([use], [luajit])
+AC_SUBST(use_luajit)
 
 #
 # Check if we should allow builds on 32-bit platforms

http://git-wip-us.apache.org/repos/asf/trafficserver/blob/e0f8cf1a/lib/ts/ink_config.h.in
----------------------------------------------------------------------
diff --git a/lib/ts/ink_config.h.in b/lib/ts/ink_config.h.in
index a2c1ac9..c4edecd 100644
--- a/lib/ts/ink_config.h.in
+++ b/lib/ts/ink_config.h.in
@@ -78,9 +78,10 @@
 #define TS_USE_SET_RBIO                @use_set_rbio@
 #define TS_USE_TLS_ECKEY               @use_tls_eckey@
 #define TS_USE_LINUX_NATIVE_AIO        @use_linux_native_aio@
-#define TS_HAS_SO_PEERCRED             @has_so_peercred@
-
 #define TS_USE_REMOTE_UNWINDING               @use_remote_unwinding@
+#define TS_USE_LUAJIT                  @use_luajit@
+
+#define TS_HAS_SO_PEERCRED             @has_so_peercred@
 
 /* OS API definitions */
 #define GETHOSTBYNAME_R_GLIBC2         @gethostbyname_r_glibc2@

Reply via email to