edponce commented on a change in pull request #11505: URL: https://github.com/apache/arrow/pull/11505#discussion_r734036143
########## File path: docs/source/developers/cpp/building.rst ########## @@ -121,9 +121,23 @@ argument is omitted then a release build will be produced. .. note:: - You need to more options to build on Windows. See + You need to set more options to build on Windows. See :ref:`developers-cpp-windows` for details. +Other options for build type are also possible: + +* ``Debug``: doesn't apply any optimization passes in the compiler and + leaves the symbol map in the binary. +* ``FastDebug`` +* ``RelWithDebInfo``: applies compiler optimizations and it removes the symbol + map from the binary. +* ``Release``: fast but less useful for debugging or profiling. +* ``Profile_Gen`` +* ``Profile_Build`` Review comment: [This cmake files](https://github.com/apache/arrow/blob/master/cpp/cmake_modules/SetupCxxFlags.cmake#L575-L630) is where these flags are resolved. * `Debug` sets `-g -O0` (and possibly `-ggdb`) * `FastDebug` sets `-g -O1` (and possibly `-ggdb`) * `RelWithDebInfo` does not sets anything in particular? * `Release` sets `-gO3 -DNDEBUG` * `Profile_Gen` sets `-gO3 -DNDEBUG -fprofile-generate` * `Profile_Build` sets `-gO3 -DNDEBUG -fprofile-use` `-ggdb` is set only if `ARROW_GGDB_DEBUG` is defined. Some more detailed info is in the [*Bonus Material* section of this blog](https://bytefreaks.net/programming-2/cc-how-do-you-set-gdb-debug-flag-g-with-cmake). -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: github-unsubscr...@arrow.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org