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: Simon Marchi <simon.marchi@polymtl.ca>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This commit is contained in:
Simon Marchi 2015-01-29 22:35:08 -05:00 committed by Peter Korsgaard
parent be5a77ef26
commit 64dd1e50f8
2 changed files with 100 additions and 5 deletions

View file

@ -0,0 +1,94 @@
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

View file

@ -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