Re: [Ros-release] Build type and optimizations on the build …

Forside
Vedhæftede filer:
Indlæg som e-mail
+ (text/plain)
+ (text/html)
Slet denne besked
Besvar denne besked
Skribent: Tully Foote
Dato:  
Til: William Woodall
CC: ROS-Release
Emne: Re: [Ros-release] Build type and optimizations on the build farm?
I believe the buildfarm already runs Release.

In general you don't want to set the build type from CMake that should be a
setting of the environment so that the person building the packages can
choose what build type they want. It is very ugly to be required to patch
the source of a repo to change the build type. As we move toward
supporting cross compilation and leveraging the out of source builds, we
need to get better about not putting build parameters into the source.

The correct place to force this setting for the debians for example is in
the debian/rules file.

Tully


On Thu, Jul 18, 2013 at 9:24 AM, William Woodall
<>wrote:

> If you set the CMAKE_BUILD_TYPE, you should do it in a already defined
> guard:
>
> if(NOT DEFINED CMAKE_BUILD_TYPE)
> set(CMAKE_BUILD_TYPE Release)
> endif()
>
> That way it can still be explicitly overridden if desired.
>
>
> On Thu, Jul 18, 2013 at 12:31 AM, Ruben Smits <
> > wrote:
>
>> Hi Austin,
>>
>>
>> On Thu, Jul 18, 2013 at 4:25 AM, Austin Hendrix <
>> > wrote:
>>
>>> I have a few packages containing realtime controllers that were
>>> previously built with:
>>> set(ROS_BUILD_TYPE Release), which among other things enabled
>>> optimizations as part of the build process.
>>>
>>> Since the catkin doesn't supply a replacement for ROS_BUILD_TYPE, I've
>>> omitted it when catkinizing packages, but I'm discovering now that
>>> packages compiled on the build farm are not sufficiently optimized for
>>> my use case.
>>>
>>> Is there a way to enable optimizations or the Release build type,
>>> either on the farm as a whole, in bloom, or in my packages?
>>>
>>>
>> For plain cmake packages or catkin you can use the CMAKE_BUILD_TYPE
>> variable which takes the exact same values as rosbuilds ROS_BUILD_TYPE
>> variable:
>>
>> set(CMAKE_BUILD_TYPE Release)
>>
>> see http://www.cmake.org/Wiki/CMake_Useful_Variables#Compilers_and_Toolsfor more info
>>
>> Ruben
>>
>>
>>> -Austin
>>> _______________________________________________
>>> Ros-release mailing list
>>>
>>> https://code.ros.org/mailman/listinfo/ros-release
>>>
>>
>>
>>
>> --
>> Ruben Smits, Phd
>> Chief Technology Officer
>> Intermodalics BVBA
>> +32479511786
>> www.intermodalics.eu
>>
>> _______________________________________________
>> Ros-release mailing list
>>
>> https://code.ros.org/mailman/listinfo/ros-release
>>
>>
>
>
> --
> William Woodall
> ROS Development Team
>
> http://williamjwoodall.com/
>
> _______________________________________________
> Ros-release mailing list
>
> https://code.ros.org/mailman/listinfo/ros-release
>
>