Skip to content
Snippets Groups Projects
Commit 395e15fe authored by Anthony Mallet's avatar Anthony Mallet
Browse files

[wip/genom3] Update to 2.99.22

Changes since 2.99.21:
 . Support an "extern" parameter in tcl procedure [$component types], returning
   the list of public types of the components interface.
 . Fix version in the genom3.pc file (use @PACKAGE_VERSION@ in instead of
   @VERSION@).
 . Install C client libraries and headers in a middleware-dependent location,
   so that multiple builds can be installed inside the same prefix. .pc files
   are "middlewarized" too, so PKG_CONFIG_PATH must be tuned.
 . Fix skeleton codels Makefile for -l c++ option.
parent 664c9503
No related branches found
No related tags found
No related merge requests found
......@@ -2,8 +2,7 @@
# Created: Anthony Mallet on Fri, 19 Oct 2012
#
PKGREVISION= 1
VERSION= 2.99.21
VERSION= 2.99.22
DISTNAME= genom-${VERSION}
PKGNAME= genom3-${VERSION}
CATEGORIES= architecture
......@@ -11,7 +10,7 @@ MASTER_SITES= ${MASTER_SITE_OPENROBOTS:=genom/}
MASTER_REPOSITORY= git ssh://trac.laas.fr/git/robots/genom3
MAINTAINER= mallet@laas.fr
HOMEPAGE= https://homepages.laas.fr/mallet/soft/architecture/genom3
HOMEPAGE= http://www.openrobots.org/wiki/genom3
COMMENT= Software components generator for robotics architecture.
LICENSE= 2-clause-bsd
......
......@@ -4,21 +4,21 @@
${PLIST.pocolibs-server}bin/${GENOM_MODULE}-pocolibs
@comment pocolibs/client/c
${PLIST.pocolibs-client-c}include/${GENOM_MODULE}/c/client.h
${PLIST.pocolibs-client-c}lib/genom/client/c/${GENOM_MODULE}.la
${PLIST.pocolibs-client-c}lib/lib${GENOM_MODULE}-c-client.la
${PLIST.pocolibs-client-c}lib/pkgconfig/${GENOM_MODULE}-c-client.pc
${PLIST.pocolibs-client-c}include/genom/pocolibs/${GENOM_MODULE}/c/client.h
${PLIST.pocolibs-client-c}lib/genom/pocolibs/plugins/${GENOM_MODULE}.la
${PLIST.pocolibs-client-c}lib/genom/pocolibs/lib${GENOM_MODULE}-c-client.la
${PLIST.pocolibs-client-c}lib/pkgconfig/genom/pocolibs/${GENOM_MODULE}-c-client.pc
@comment ros/server
${PLIST.ros-server}bin/${GENOM_MODULE}-ros
@comment ros/client/c
${PLIST.ros-client-c}include/${GENOM_MODULE}/c/client.h
${PLIST.ros-client-c}lib/genom/client/c/${GENOM_MODULE}.la
${PLIST.ros-client-c}lib/lib${GENOM_MODULE}-c-client.la
${PLIST.ros-client-c}lib/pkgconfig/${GENOM_MODULE}-c-client.pc
${PLIST.ros-client-c}include/genom/ros/${GENOM_MODULE}/c/client.h
${PLIST.ros-client-c}lib/genom/ros/plugins/${GENOM_MODULE}.la
${PLIST.ros-client-c}lib/genom/ros/lib${GENOM_MODULE}-c-client.la
${PLIST.ros-client-c}lib/pkgconfig/genom/ros/${GENOM_MODULE}-c-client.pc
@comment ros/client/ros is a dynamic PLIST generated by the template
@comment ros/client/ros is a dynamic PLIST generated by module.mk
@comment openprs/client
${PLIST.openprs}lib/genom/client/openprs/${GENOM_MODULE}-openprs-client.la
......
......@@ -19,7 +19,7 @@ SYSTEM_SEARCH.genom3=\
include/genom3/c/client.h \
'lib/pkgconfig/genom3.pc:/Version/s/[^0-9.]//gp'
DEPEND_ABI.genom3?= genom3>=2.99.21r1
DEPEND_ABI.genom3?= genom3>=2.99.22
DEPEND_DIR.genom3?= ../../wip/genom3
export GENOM3= ${PREFIX.genom3}/bin/genom3
......
SHA1 (genom-2.99.21.tar.gz) = bf98692dc90598c8e242ac0e25041970eaa8cd26
RMD160 (genom-2.99.21.tar.gz) = df4fe3bd13884b98fa7d6b6f995b95ff74befc30
Size (genom-2.99.21.tar.gz) = 1346170 bytes
SHA1 (patch-aa) = 851080eaba72169eb0df4806822c38acd09bc04e
SHA1 (genom-2.99.22.tar.gz) = 6cdae22a3f7b4fd84d21e6a5c44654cd7c6ba34d
RMD160 (genom-2.99.22.tar.gz) = 2a439662c5c5d5fa4e9c15842de58e5958fbeb81
Size (genom-2.99.22.tar.gz) = 1346320 bytes
......@@ -40,8 +40,6 @@ genom3-autoreconf(%): genom3-generate(%)
# --- options --------------------------------------------------------------
PKG_OPTIONS_OPTIONAL_GROUPS+= client-c
# codels
PKG_SUPPORTED_OPTIONS+= codels
PKG_SUGGESTED_OPTIONS+= codels
......@@ -65,14 +63,11 @@ define PKG_OPTION_SET.pocolibs-server
include ../../wip/genom3-pocolibs/depend.mk
endef
PKG_OPTIONS_GROUP.client-c+= pocolibs-client-c
PKG_SUPPORTED_OPTIONS+= pocolibs-client-c
PKG_OPTION_DESCR.pocolibs-client-c= Build a pocolibs C client
define PKG_OPTION_SET.pocolibs-client-c
TMPL1_WRKSRC+= ${TEMPLATES_WRKDIR}/pocolibs/client/c
# XXX temporary
MAKE_JOBS_SAFE=no
pre-configure: genom3-autoreconf(pocolibs/client/c)
include ../../middleware/pocolibs/depend.mk
......@@ -105,7 +100,7 @@ define PKG_OPTION_SET.ros-server
include ../../mk/language/c++.mk
endef
PKG_OPTIONS_GROUP.client-c+= ros-client-c
PKG_SUPPORTED_OPTIONS+= ros-client-c
PKG_OPTION_DESCR.ros-client-c= Build a ROS C client
define PKG_OPTION_SET.ros-client-c
TMPL1_WRKSRC+= ${TEMPLATES_WRKDIR}/ros/client/c
......@@ -137,11 +132,11 @@ define PKG_OPTION_SET.ros-client-ros
# hackish ... but this is for a PLIST.guess anyway, so nothing critical
PRINT_PLIST_AWK_FILTERS+=\
/include\/[$$]{GENOM_MODULE}\// {next} \
/[$$]{PYTHON_SITELIB}\/[$$]{GENOM_MODULE}\// {next} \
/share\/[$$]{GENOM_MODULE}\/manifest.xml$$/ {next} \
/share\/[$$]{GENOM_MODULE}\/msg/ {next} \
/share\/[$$]{GENOM_MODULE}\/srv/ {next}
/include\/${GENOM_MODULE}\// {next} \
/$(subst /,\/,${PYTHON_SITELIB})\/${GENOM_MODULE}\// {next} \
/share\/${GENOM_MODULE}\/manifest.xml$$/ {next} \
/share\/${GENOM_MODULE}\/msg/ {next} \
/share\/${GENOM_MODULE}\/srv/ {next}
pre-configure: genom3-autoreconf(ros/client/ros)
......@@ -188,14 +183,16 @@ GENERATE_PLIST+= ${CAT} ${ROBOTPKG_DIR}/${PLIST_TEMPLATES};
PRINT_PLIST_AWK_SUBST+= gsub("${GENOM_MODULE}", "$${GENOM_MODULE}");
PRINT_PLIST_AWK_FILTERS=
PRINT_PLIST_FILTER+=\
${AWK} ' \
| ${AWK} ' \
BEGIN { print "@comment includes ${PLIST_TEMPLATES}" } \
${PRINT_PLIST_AWK_FILTERS} \
NR > FNR { \
if (!($$0 in filter)) print "$${PLIST.codels}" $$0; next; \
} \
{ gsub("[$$]{PLIST[^}]*}", ""); filter[$$0] } \
' ${ROBOTPKG_DIR}/${PLIST_TEMPLATES} -;
{ gsub("[$$]{GENOM_MODULE}", "${GENOM_MODULE}") } \
{ gsub("[$$]{PLIST[^}]*}", "") } \
{ filter[$$0] } \
' ${ROBOTPKG_DIR}/${PLIST_TEMPLATES} -
# --- common dependencies --------------------------------------------------
......
Support an "extern" parameter in tcl procedure [$component types]
diff --git engine/tcl/object.tcl engine/tcl/object.tcl
index 61a82f8..8b76321 100644
--- engine/tcl/object.tcl
+++ engine/tcl/object.tcl
@@ -32,8 +32,10 @@ namespace eval object {
if {[catch {$object class} class]} { error "not a genom object" }
switch $visibility {
- public - private {}
- default { error "bad parameter $visibility: must be public or private" }
+ public - extern - private {}
+ default {
+ error "bad parameter $visibility: must be public, extern or private"
+ }
}
switch $class {
@@ -86,7 +88,7 @@ namespace eval object {
}
}
- if {$visibility == "private"} {
+ if {$visibility == "private" || $visibility == "extern"} {
foreach r [$component remotes] {
foreach p [$r parameters] {
set r [type-types [$p type] $visibility $filter]
@@ -96,7 +98,9 @@ namespace eval object {
set types [dict merge $types [type-types $t $visibility $filter]]
}
}
+ }
+ if {$visibility == "private"} {
if {![catch {$component ids} ids]} {
set types [dict merge $types [type-types $ids $visibility $filter]]
}
--- configure~ 2013-07-22 17:09:40.000000000 +0200
+++ configure 2013-08-05 16:40:16.583601810 +0200
@@ -570,7 +570,7 @@
# Identity of this package.
PACKAGE_NAME='genom'
PACKAGE_TARNAME='genom'
-PACKAGE_VERSION='2.99.21'
+PACKAGE_VERSION='2.99.22'
PACKAGE_STRING='genom 2.99.21'
PACKAGE_BUGREPORT='openrobots@laas.fr'
PACKAGE_URL=''
@@ -2762,7 +2762,7 @@
# Define the identity of the package.
PACKAGE='genom'
- VERSION='2.99.21'
+ VERSION='2.99.22'
# Some tools Automake needs.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment