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 <ruben.smits@intermodalics.eu> wrote:
Hi Austin,


On Thu, Jul 18, 2013 at 4:25 AM, Austin Hendrix <ahendrix@willowgarage.com> 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)


Ruben
 
-Austin
_______________________________________________
Ros-release mailing list
Ros-release@code.ros.org
https://code.ros.org/mailman/listinfo/ros-release



--
Ruben Smits, Phd
Chief Technology Officer
Intermodalics BVBA
+32479511786
www.intermodalics.eu

_______________________________________________
Ros-release mailing list
Ros-release@code.ros.org
https://code.ros.org/mailman/listinfo/ros-release




--
William Woodall
ROS Development Team
william@osrfoundation.org
http://williamjwoodall.com/