Commit 64dd1e50 authored by Simon Marchi's avatar Simon Marchi Committed by Peter Korsgaard
Browse files

ola: Bump to 0.9.4



The protoc stuff changed a bit since 0.9.3. When 0.9.4 was released,
support for cross-compiling was broken because of it. A patch was merged
upstream shortly after that fixes the problem, so I included it here.
When the next version is released, the patch should not be necessary
anymore.

[Peter: actually change _VERSION]
Signed-off-by: default avatarSimon Marchi <simon.marchi@polymtl.ca>
Signed-off-by: default avatarPeter Korsgaard <peter@korsgaard.com>
parent be5a77ef
Loading
Loading
Loading
Loading
+94 −0
Original line number Diff line number Diff line
From 0b0797af43c78f199e3f2782873dad3c37d323dd Mon Sep 17 00:00:00 2001
From: Simon Marchi <simon.marchi@polymtl.ca>
Date: Wed, 28 Jan 2015 22:23:32 -0500
Subject: [PATCH] Fix finding ola_protoc_plugin when cross-compiling

It seems like the recent changes concerning ola_protoc did not take into
account cross-compiling.
---
 common/rpc/RpcService.h |  2 +-
 config/ola.m4           | 18 +++++++++---------
 protoc/Makefile.mk      | 10 +++++-----
 3 files changed, 15 insertions(+), 15 deletions(-)

diff --git a/common/rpc/RpcService.h b/common/rpc/RpcService.h
index f5d428b..3e20dbc 100644
--- a/common/rpc/RpcService.h
+++ b/common/rpc/RpcService.h
@@ -17,7 +17,7 @@
  * Interface for the RpcService.
  * Copyright (C) 2013 Simon Newton
  *
- * All Services generated by ola_protoc inherit from this one.
+ * All Services generated by the ola protoc plugin inherit from this one.
  */
 
 #ifndef COMMON_RPC_RPCSERVICE_H_
diff --git a/config/ola.m4 b/config/ola.m4
index 845c4af..ec77585 100644
--- a/config/ola.m4
+++ b/config/ola.m4
@@ -71,17 +71,17 @@ elif test -n "$1" ; then
   fi
 fi
 
-AC_ARG_WITH([ola-protoc],
-  [AS_HELP_STRING([--with-ola-protoc=COMMAND],
-    [use the given ola_protoc command instead of building one (useful for cross-compiling)])],
-  [],[with_ola_protoc=no])
+AC_ARG_WITH([ola-protoc-plugin],
+  [AS_HELP_STRING([--with-ola-protoc-plugin=COMMAND],
+    [use the given ola_protoc_plugin instead of building one (useful for cross-compiling)])],
+  [],[with_ola_protoc_plugin=no])
 
-OLA_PROTOC="\$(PROTOC) --plugin=protoc-gen-cppservice=\$(top_builddir)/protoc/ola_protoc_plugin${EXEEXT}";
 
-if test "$with_ola_protoc" != "no"; then
-  OLA_PROTOC=$with_ola_protoc;
-  echo "set ola_protoc to $with_ola_protoc"
+if test "$with_ola_protoc_plugin" != "no"; then
+  OLA_PROTOC="\$(PROTOC) --plugin=protoc-gen-cppservice=${with_ola_protoc_plugin}${EXEEXT}";
+  echo "set ola_protoc to $with_ola_protoc_plugin"
 else
+  OLA_PROTOC="\$(PROTOC) --plugin=protoc-gen-cppservice=\$(top_builddir)/protoc/ola_protoc_plugin${EXEEXT}";
   AC_CHECK_HEADER(
       [google/protobuf/compiler/command_line_interface.h],
       [],
@@ -96,7 +96,7 @@ else
   LIBS=$SAVED_LIBS
 fi
 AC_SUBST([OLA_PROTOC])
-AM_CONDITIONAL(BUILD_OLA_PROTOC, test "${with_ola_protoc}" == "no")
+AM_CONDITIONAL(BUILD_OLA_PROTOC_PLUGIN, test "${with_ola_protoc_plugin}" == "no")
 ])
 
 
diff --git a/protoc/Makefile.mk b/protoc/Makefile.mk
index e5d0167..47adc47 100644
--- a/protoc/Makefile.mk
+++ b/protoc/Makefile.mk
@@ -1,6 +1,6 @@
 # Programs
 #########################
-if BUILD_OLA_PROTOC
+if BUILD_OLA_PROTOC_PLUGIN
 noinst_PROGRAMS += protoc/ola_protoc_plugin
 
 protoc_ola_protoc_plugin_SOURCES = \
@@ -19,9 +19,9 @@ protoc_ola_protoc_plugin_LDADD = $(libprotobuf_LIBS) -lprotoc
 
 else
 
-# If we're using a different ola_protoc, we need to provide a rule to create
-# this file since the generated service configs depend on it.
-protoc/ola_protoc$(EXEEXT):
-	touch protoc/ola_protoc$(EXEEXT)
+# If we're using a different ola_protoc_plugin, we need to provide a rule to
+# create this file since the generated service configs depend on it.
+protoc/ola_protoc_plugin$(EXEEXT):
+	touch protoc/ola_protoc_plugin$(EXEEXT)
 
 endif
-- 
2.2.2
+6 −5
Original line number Diff line number Diff line
@@ -4,7 +4,7 @@
#
################################################################################

OLA_VERSION = 0.9.3
OLA_VERSION = 0.9.4
OLA_SITE = $(call github,OpenLightingProject,ola,$(OLA_VERSION))

OLA_LICENSE = LGPLv2.1+ (libola, libolacommon, Python bindings), GPLv2+ (libolaserver, olad, Python examples and tests)
@@ -23,7 +23,7 @@ OLA_CONF_OPTS = \
	--disable-root-check \
	--disable-java-libs \
	--disable-fatal-warnings \
	--with-ola-protoc=$(HOST_DIR)/usr/bin/ola_protoc
	--with-ola-protoc-plugin=$(HOST_DIR)/usr/bin/ola_protoc_plugin

HOST_OLA_DEPENDENCIES = host-util-linux host-protobuf

@@ -42,10 +42,11 @@ HOST_OLA_CONF_OPTS = \
	--disable-doxygen-html \
	--disable-doxygen-doc

# On the host side, we only need ola_protoc, so build and install this only.
HOST_OLA_MAKE_OPTS = protoc/ola_protoc
# On the host side, we only need ola_protoc_plugin, so build and install this
# only.
HOST_OLA_MAKE_OPTS = protoc/ola_protoc_plugin
define HOST_OLA_INSTALL_CMDS
	$(INSTALL) -D -m 0755 $(@D)/protoc/ola_protoc $(HOST_DIR)/usr/bin/ola_protoc
	$(INSTALL) -D -m 0755 $(@D)/protoc/ola_protoc_plugin $(HOST_DIR)/usr/bin/ola_protoc_plugin
endef

# sets where to find python libs built for target and required by ola