From dffd542bb8d45f6846a65864a39674669915fce6 Mon Sep 17 00:00:00 2001 From: Feng Xiao Date: Fri, 5 Jun 2015 17:59:09 -0700 Subject: Update ./update_file_lists.sh. Make it executable and generate extract_includes.bat in the same directory. --- cmake/update_file_lists.sh | 27 +++++++++++++++++---------- 1 file changed, 17 insertions(+), 10 deletions(-) mode change 100644 => 100755 cmake/update_file_lists.sh (limited to 'cmake/update_file_lists.sh') diff --git a/cmake/update_file_lists.sh b/cmake/update_file_lists.sh old mode 100644 new mode 100755 index d64eb4ae..4466c021 --- a/cmake/update_file_lists.sh +++ b/cmake/update_file_lists.sh @@ -39,8 +39,8 @@ set_variable_value() { /^set\\($VARNAME/ { start = 1; print \$0; - split(values, vlist, \" \"); - for (i = 1; i <= length(vlist); ++i) { + len = split(values, vlist, \" \"); + for (i = 1; i <= len; ++i) { printf(\" %s%s\\n\", prefix, vlist[i]); } next; @@ -58,12 +58,12 @@ set_variable_value() { sort_files() { for FILE in $@; do echo $FILE - done | sort | uniq + done | LC_ALL=C sort | uniq } MAKEFILE=../src/Makefile.am CMAKE_DIR=. -EXTRACT_INCLUDES_BAT=../vsprojects/extract_includes.bat +EXTRACT_INCLUDES_BAT=extract_includes.bat.in [ -f "$MAKEFILE" ] || { echo "Cannot find: $MAKEFILE" @@ -105,10 +105,17 @@ set_variable_value $CMAKE_DIR/tests.cmake tests_files $COMMON_PREFIX $TEST_SOURC set_variable_value $CMAKE_DIR/tests.cmake lite_test_files $COMMON_PREFIX $LITE_TEST_SOURCES # Generate extract_includes.bat -for HEADER in $HEADERS; do - echo $(dirname $HEADER) | sed "s/\\//\\\\/g" -done | sort | uniq | sed "s/^/mkdir include\\\\/" > $EXTRACT_INCLUDES_BAT -for HEADER in $HEADERS; do - WINPATH=$(echo $HEADER | sed 's;/;\\\\;g') - echo "copy ..\\src\\$WINPATH include\\$WINPATH" >> $EXTRACT_INCLUDES_BAT +echo "mkdir include" > $EXTRACT_INCLUDES_BAT +for HEADER in $PUBLIC_HEADERS; do + HEADER_DIR=$(dirname $HEADER) + while [ ! "$HEADER_DIR" = "." ]; do + echo $HEADER_DIR | sed "s/\\//\\\\/g" + HEADER_DIR=$(dirname $HEADER_DIR) + done +done | sort | uniq | sed "s/^/mkdir include\\\\/" >> $EXTRACT_INCLUDES_BAT +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 +# Add pbconfig.h. +echo "copy \${PROTOBUF_BINARY_WIN32_PATH}\\google\\protobuf\\stubs\\pbconfig.h include\\google\\protobuf\\stubs\\pbconfig.h" >> $EXTRACT_INCLUDES_BAT -- cgit v1.2.3