From 3ad8efc75b5e3a9f2dc189558b7f2a68a33faf61 Mon Sep 17 00:00:00 2001 From: Mizux Date: Fri, 20 Apr 2018 13:52:02 +0200 Subject: [PATCH] Add .proto files to extract_includes.bat For google/or-tools, on windows, we need to use `import "google/protobuf/wrappers.proto";` since we want "optional" int64 and in version3 POD get default value... -> so we use "google.protobuf.Int64Value" since 0 is a valid value and different from "not set" for our use case. --- cmake/extract_includes.bat.in | 15 +++++++++++++++ update_file_lists.sh | 11 +++++++++++ 2 files changed, 26 insertions(+) diff --git a/cmake/extract_includes.bat.in b/cmake/extract_includes.bat.in index d9423f9382dc9..2f71e26b6590d 100644 --- a/cmake/extract_includes.bat.in +++ b/cmake/extract_includes.bat.in @@ -111,3 +111,18 @@ copy "${PROTOBUF_SOURCE_WIN32_PATH}\..\src\google\protobuf\wire_format.h" includ copy "${PROTOBUF_SOURCE_WIN32_PATH}\..\src\google\protobuf\wire_format_lite.h" include\google\protobuf\wire_format_lite.h copy "${PROTOBUF_SOURCE_WIN32_PATH}\..\src\google\protobuf\wire_format_lite_inl.h" include\google\protobuf\wire_format_lite_inl.h copy "${PROTOBUF_SOURCE_WIN32_PATH}\..\src\google\protobuf\wrappers.pb.h" include\google\protobuf\wrappers.pb.h +mkdir include\google +mkdir include\google\protobuf +mkdir include\google\protobuf\compiler +copy "${PROTOBUF_SOURCE_WIN32_PATH}\..\src\google\protobuf\any.proto" include\google\protobuf\any.proto +copy "${PROTOBUF_SOURCE_WIN32_PATH}\..\src\google\protobuf\api.proto" include\google\protobuf\api.proto +copy "${PROTOBUF_SOURCE_WIN32_PATH}\..\src\google\protobuf\compiler\plugin.proto" include\google\protobuf\compiler\plugin.proto +copy "${PROTOBUF_SOURCE_WIN32_PATH}\..\src\google\protobuf\descriptor.proto" include\google\protobuf\descriptor.proto +copy "${PROTOBUF_SOURCE_WIN32_PATH}\..\src\google\protobuf\duration.proto" include\google\protobuf\duration.proto +copy "${PROTOBUF_SOURCE_WIN32_PATH}\..\src\google\protobuf\empty.proto" include\google\protobuf\empty.proto +copy "${PROTOBUF_SOURCE_WIN32_PATH}\..\src\google\protobuf\field_mask.proto" include\google\protobuf\field_mask.proto +copy "${PROTOBUF_SOURCE_WIN32_PATH}\..\src\google\protobuf\source_context.proto" include\google\protobuf\source_context.proto +copy "${PROTOBUF_SOURCE_WIN32_PATH}\..\src\google\protobuf\struct.proto" include\google\protobuf\struct.proto +copy "${PROTOBUF_SOURCE_WIN32_PATH}\..\src\google\protobuf\timestamp.proto" include\google\protobuf\timestamp.proto +copy "${PROTOBUF_SOURCE_WIN32_PATH}\..\src\google\protobuf\type.proto" include\google\protobuf\type.proto +copy "${PROTOBUF_SOURCE_WIN32_PATH}\..\src\google\protobuf\wrappers.proto" include\google\protobuf\wrappers.proto diff --git a/update_file_lists.sh b/update_file_lists.sh index a064d657641fe..37aa996ba9c82 100755 --- a/update_file_lists.sh +++ b/update_file_lists.sh @@ -139,6 +139,17 @@ for HEADER in $PUBLIC_HEADERS; do WINPATH=$(echo $HEADER | sed 's;/;\\;g') echo "copy \"\${PROTOBUF_SOURCE_WIN32_PATH}\\..\\src\\$WINPATH\" include\\$WINPATH" >> $EXTRACT_INCLUDES_BAT done +for PROTO in ${WKT_PROTOS}; do + PROTO_DIR=$(dirname "$PROTO") + while [ ! "$PROTO_DIR" = "." ]; do + echo "mkdir include\\${PROTO_DIR//\//\\}" + PROTO_DIR=$(dirname "$PROTO_DIR") + done +done | sort | uniq >> $EXTRACT_INCLUDES_BAT +for PROTO in $WKT_PROTOS; do + WINPATH=${PROTO//\//\\} + echo "copy \"\${PROTOBUF_SOURCE_WIN32_PATH}\\..\\src\\$WINPATH\" include\\$WINPATH" >> $EXTRACT_INCLUDES_BAT +done ################################################################################ # Update bazel BUILD files.