Fix managed part build type.
authorMikhail Kurinnoi <m.kurinnoi@samsung.com>
Fri, 6 May 2022 10:17:59 +0000 (13:17 +0300)
committerAlexander Soldatov/Platform Lab /SRR/Staff Engineer/Samsung Electronics <soldatov.a@samsung.com>
Wed, 18 May 2022 16:36:24 +0000 (19:36 +0300)
Should care about CMAKE_BUILD_TYPE and don't build "Debug" all the time.
In case CMAKE_BUILD_TYPE not set, "Release" is preferred for managed part.

packaging/netcoredbg.spec
src/CMakeLists.txt

index 7e75e4db24684fa763b3c50cb4050904ed241f67..ad268608e02825e23eb4a83848db5a368a1b1383 100644 (file)
@@ -104,6 +104,7 @@ cmake .. \
 
 make %{?jobs:-j%jobs} %{?verbose:VERBOSE=1}
 
+%define _dotnet_build_conf %{build_type}
 %dotnet_build -s ../packaging/pkgs ../src/managed
 
 %install
index fe87a525385ae8520543af0a5d133a7ace45ce57..290004a4c22b38a15306007277e655b8315a5b73 100644 (file)
@@ -203,8 +203,14 @@ if (BUILD_MANAGED)
 
     find_program(DOTNETCLI dotnet PATHS "${DOTNET_DIR}" ENV PATH NO_DEFAULT_PATH)
 
+    if (CMAKE_BUILD_TYPE STREQUAL "Debug")
+        set(MANAGEDPART_BUILD_TYPE "Debug")
+    else() # CMAKE_BUILD_TYPE not set or Release, RelWithDebInfo, MinSizeRel, ...
+        set(MANAGEDPART_BUILD_TYPE "Release")
+    endif()
+
     add_custom_command(OUTPUT ${DOTNET_BUILD_RESULT}
-      COMMAND ${DOTNETCLI} publish ${MANAGEDPART_PROJECT} -o ${CMAKE_CURRENT_BINARY_DIR} /p:BaseIntermediateOutputPath=${CMAKE_CURRENT_BINARY_DIR}/obj/ /p:BaseOutputPath=${CMAKE_CURRENT_BINARY_DIR}/bin/
+      COMMAND ${DOTNETCLI} publish ${MANAGEDPART_PROJECT} -c ${MANAGEDPART_BUILD_TYPE} -o ${CMAKE_CURRENT_BINARY_DIR} /p:BaseIntermediateOutputPath=${CMAKE_CURRENT_BINARY_DIR}/obj/ /p:BaseOutputPath=${CMAKE_CURRENT_BINARY_DIR}/bin/
       WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
       DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/managed/*.cs" "${MANAGEDPART_PROJECT}"
       COMMENT "Compiling ${MANAGEDPART_DLL_NAME}"