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


Reply via email to