Protobuf module mode import for Windows build (#9447) accepted/tizen/unified/20191209.144032 submit/coverity/20191209.074934 submit/coverity/20191209.074953 submit/tizen/20191209.075212 submit/tizen/20191209.091506
author박천교/On-Device Lab(SR)/Engineer/삼성전자 <ch.bahk@samsung.com>
Mon, 9 Dec 2019 07:38:12 +0000 (16:38 +0900)
committerChunseok Lee <chunseok.lee@samsung.com>
Mon, 9 Dec 2019 07:48:47 +0000 (16:48 +0900)
* Protobuf module mode import for Windows build

Windows native build only can import with legacy 'module' mode import.
This commit is to give a Windows build a way to import Protobuf. Note
that this will not affect existing default behavior.

Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
* Move option to top

* USE_PROTOBUF_LEGACY_IMPORT

Change-Id: I8963f857a9b5be23fa7e958e25d1003a81444e28
Signed-off-by: Chunseok Lee <chunseok.lee@samsung.com>
infra/cmake/packages/ProtobufConfig.cmake
infra/nncc/CMakeLists.txt

index 349caab..3c8d232 100644 (file)
@@ -1,4 +1,3 @@
-# NOTE This function is unused, but remains for future reference
 function(_Protobuf_module_import)
   # Let's use find_package here not to export unnecessary definitions
   find_package(Protobuf MODULE QUIET)
@@ -64,7 +63,12 @@ function(_Protobuf_build)
 endfunction(_Protobuf_build)
 
 _Protobuf_build()
-_Protobuf_import()
+
+if(USE_PROTOBUF_LEGACY_IMPORT)
+  _Protobuf_module_import()
+else(USE_PROTOBUF_LEGACY_IMPORT)
+  _Protobuf_import()
+endif(USE_PROTOBUF_LEGACY_IMPORT)
 
 if(Protobuf_FOUND)
   function(Protobuf_Generate PREFIX OUTPUT_DIR PROTO_DIR)
index d2901c3..aa84391 100644 (file)
@@ -121,6 +121,10 @@ endif(${ENABLE_TEST})
 
 option(ENABLE_STRICT_BUILD "Treat warning as error" OFF)
 
+# This option might be turned ON for Windows native build.
+# Check our ProtobufConfig.cmake for its usage.
+option(USE_PROTOBUF_LEGACY_IMPORT "Use legacy MODULE mode import rather than CONFIG mode" OFF)
+
 ###
 ### Target
 ###