Hi Vincent,

We're working on solutions for both of those + collada-dom. 

We have the ability to blacklist packages in the build files on the farm. For anything that is related to a specific distro that's the right place to do it. For example these packages are blacklisted for arm in Indigo: https://github.com/ros-infrastructure/ros_buildfarm_config/blob/master/indigo/release-armhf-build.yaml#L13

There is a level of granularity that we could consider extending to support blacklisting a specific target/arch pair inside of the build file if we want to keep a specific arch running but not put it into it's own build file. 

The one time it might be appropriate to tag something in the package.xml is if the package has binary code included inside which is not compiled but supplied as a blob. However as we strongly discourage those cases and have very few of them, I think that continuing to use the blacklists for them is appropriate. 

Tully

PS colladadom and couchdb should be fixed shortly. Some targets are already deployed. (Thanks to Jose for help backporting.) We're still working on openni on ARM. We have versions compiling from source so it shouldn't be too long.


On Tue, Apr 26, 2016 at 10:13 AM, Vincent Rabaud via ros-release <ros-release@lists.ros.org> wrote:
Hi all,

I personally have packages that do not build for Kinetic because:
- couchdb was not released for Jessie
- there is not libopenni-dev on ARM

I am sure there are other cases (coladadom no ?) and more valid cases will pop-up: what if you want to re-package a driver that is binary and x86 only ? what if you have intrinsics that are x86 only ? what if Debian uses different packages than Ubuntu ? (like libav and ffmpeg I believe).

While we could disable the jobs one by one maybe in the short run, we want something that's manageable by maintainers for more flexibility.

I propose the following:
- an extension to
http://www.ros.org/reps/rep-0140.html#architecture-independent to support an architecture tag. Not sure if we need something as specific as armv7 or armv8 or just use arm but we need some official list (gcc's ? https://gcc.gnu.org/backends.html , Debian's ? https://www.debian.org/releases/stable/i386/ch02s01.html.en )
- a re-use of release_platforms (from http://www.ros.org/reps/rep-0141.html#distribution-file) in yet another package.xml tag to prevent the build for some platforms.

E.g: I just want to build  for x86 Jessie:

<architecture>i386</architecture>
<architecture>amd64</architecture>
<platform>jessie</platform>

Or maybe have exclusion tags:
<architecture_exclude>arm</architecture_exclude>
<platform>ubuntu</platform>

Ideas ? Thx.

_______________________________________________
ros-release mailing list
ros-release@lists.ros.org
http://lists.ros.org/mailman/listinfo/ros-release