Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1)

Unified Diff: third_party/protobuf/objectivec/DevTools/full_mac_build.sh

Issue 1322483002: Revert https://codereview.chromium.org/1291903002 (protobuf roll). (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/protobuf/objectivec/DevTools/full_mac_build.sh
diff --git a/third_party/protobuf/objectivec/DevTools/full_mac_build.sh b/third_party/protobuf/objectivec/DevTools/full_mac_build.sh
deleted file mode 100644
index 2192b760976de32b3721cf4e4998b059beb4dc88..0000000000000000000000000000000000000000
--- a/third_party/protobuf/objectivec/DevTools/full_mac_build.sh
+++ /dev/null
@@ -1,228 +0,0 @@
-#!/bin/bash
-#
-# Helper to do build so you don't have to remember all the steps/args.
-
-
-set -eu
-
-# Some base locations.
-readonly ScriptDir=$(dirname "$(echo $0 | sed -e "s,^\([^/]\),$(pwd)/\1,")")
-readonly ProtoRootDir="${ScriptDir}/../.."
-
-printUsage() {
- NAME=$(basename "${0}")
- cat << EOF
-usage: ${NAME} [OPTIONS]
-
-This script does the common build steps needed.
-
-OPTIONS:
-
- General:
-
- -h, --help
- Show this message
- -c, --clean
- Issue a clean before the normal build.
- -a, --autogen
- Start by rerunning autogen & configure.
- -r, --regenerate-descriptors
- The descriptor.proto is checked in generated, cause it to regenerate.
- -j #, --jobs #
- Force the number of parallel jobs (useful for debugging build issues).
- --skip-xcode
- Skip the invoke of Xcode to test the runtime on both iOS and OS X.
- --skip-xcode-ios
- Skip the invoke of Xcode to test the runtime on iOS.
- --skip-xcode-osx
- Skip the invoke of Xcode to test the runtime on OS X.
-
-EOF
-}
-
-header() {
- echo ""
- echo "========================================================================"
- echo " ${@}"
- echo "========================================================================"
-}
-
-# Thanks to libtool, builds can fail in odd ways and since it eats some output
-# it can be hard to spot, so force error output if make exits with a non zero.
-wrapped_make() {
- set +e # Don't stop if the command fails.
- make $*
- MAKE_EXIT_STATUS=$?
- if [ ${MAKE_EXIT_STATUS} -ne 0 ]; then
- echo "Error: 'make $*' exited with status ${MAKE_EXIT_STATUS}"
- exit ${MAKE_EXIT_STATUS}
- fi
- set -e
-}
-
-NUM_MAKE_JOBS=$(/usr/sbin/sysctl -n hw.ncpu)
-if [[ "${NUM_MAKE_JOBS}" -lt 4 ]] ; then
- NUM_MAKE_JOBS=4
-fi
-
-DO_AUTOGEN=no
-DO_CLEAN=no
-REGEN_CPP_DESCRIPTORS=no
-DO_XCODE_IOS_TESTS=yes
-DO_XCODE_OSX_TESTS=yes
-while [[ $# != 0 ]]; do
- case "${1}" in
- -h | --help )
- printUsage
- exit 0
- ;;
- -c | --clean )
- DO_CLEAN=yes
- ;;
- -a | --autogen )
- DO_AUTOGEN=yes
- ;;
- -r | --regenerate-cpp-descriptors )
- REGEN_CPP_DESCRIPTORS=yes
- ;;
- -j | --jobs )
- shift
- NUM_MAKE_JOBS="${1}"
- ;;
- --skip-xcode )
- DO_XCODE_IOS_TESTS=no
- DO_XCODE_OSX_TESTS=no
- ;;
- --skip-xcode-ios )
- DO_XCODE_IOS_TESTS=no
- ;;
- --skip-xcode-osx )
- DO_XCODE_OSX_TESTS=no
- ;;
- -*)
- echo "ERROR: Unknown option: ${1}" 1>&2
- printUsage
- exit 1
- ;;
- *)
- echo "ERROR: Unknown argument: ${1}" 1>&2
- printUsage
- exit 1
- ;;
- esac
- shift
-done
-
-# Into the proto dir.
-pushd "${ProtoRootDir}"
-
-# if no Makefile, force the autogen.
-if [[ ! -f Makefile ]] ; then
- DO_AUTOGEN=yes
-fi
-
-if [[ "${DO_AUTOGEN}" == "yes" ]] ; then
- header "Running autogen & configure"
- ./autogen.sh
- ./configure CXXFLAGS="-mmacosx-version-min=10.9 -Wnon-virtual-dtor -Woverloaded-virtual -Wunused-const-variable -Wunused-function"
-fi
-
-if [[ "${DO_CLEAN}" == "yes" ]] ; then
- header "Cleaning"
- wrapped_make clean
- if [[ "${DO_XCODE_IOS_TESTS}" == "yes" ]] ; then
- XCODEBUILD_CLEAN_BASE_IOS=(
- xcodebuild
- -project objectivec/ProtocolBuffers_iOS.xcodeproj
- -scheme ProtocolBuffers
- )
- "${XCODEBUILD_CLEAN_BASE_IOS[@]}" -configuration Debug clean
- "${XCODEBUILD_CLEAN_BASE_IOS[@]}" -configuration Release clean
- fi
- if [[ "${DO_XCODE_OSX_TESTS}" == "yes" ]] ; then
- XCODEBUILD_CLEAN_BASE_OSX=(
- xcodebuild
- -project objectivec/ProtocolBuffers_OSX.xcodeproj
- -scheme ProtocolBuffers
- )
- "${XCODEBUILD_CLEAN_BASE_OSX[@]}" -configuration Debug clean
- "${XCODEBUILD_CLEAN_BASE_OSX[@]}" -configuration Release clean
- fi
-fi
-
-if [[ "${REGEN_CPP_DESCRIPTORS}" == "yes" ]] ; then
- header "Regenerating the C++ descriptor sources."
- ./generate_descriptor_proto.sh -j "${NUM_MAKE_JOBS}"
-fi
-
-header "Building"
-# Can't issue these together, when fully parallel, something sometimes chokes
-# at random.
-wrapped_make -j "${NUM_MAKE_JOBS}" all
-wrapped_make -j "${NUM_MAKE_JOBS}" check
-
-header "Ensuring the ObjC descriptors are current."
-# Find the newest input file (protos, compiler, and the generator script).
-# (these patterns catch some extra stuff, but better to over sample than under)
-readonly NewestInput=$(find \
- src/google/protobuf/*.proto \
- src/.libs src/*.la src/protoc \
- objectivec/generate_descriptors_proto.sh \
- -type f -print0 \
- | xargs -0 stat -f "%m %N" \
- | sort -n | tail -n1 | cut -f2- -d" ")
-# Find the oldest output file.
-readonly OldestOutput=$(find \
- "${ProtoRootDir}/objectivec/google" \
- -type f -print0 \
- | xargs -0 stat -f "%m %N" \
- | sort -n -r | tail -n1 | cut -f2- -d" ")
-# If the newest input is newer than the oldest output, regenerate.
-if [[ "${NewestInput}" -nt "${OldestOutput}" ]] ; then
- echo ">> Newest input is newer than oldest output, regenerating."
- objectivec/generate_descriptors_proto.sh -j "${NUM_MAKE_JOBS}"
-else
- echo ">> Newest input is older than oldest output, no need to regenerating."
-fi
-
-header "Checking on the ObjC Runtime Code"
-objectivec/DevTools/pddm_tests.py
-if ! objectivec/DevTools/pddm.py --dry-run objectivec/*.[hm] objectivec/Tests/*.[hm] ; then
- echo ""
- echo "Update by running:"
- echo " objectivec/DevTools/pddm.py objectivec/*.[hm] objectivec/Tests/*.[hm]"
- exit 1
-fi
-
-if [[ "${DO_XCODE_IOS_TESTS}" == "yes" ]] ; then
- XCODEBUILD_TEST_BASE_IOS=(
- xcodebuild
- -project objectivec/ProtocolBuffers_iOS.xcodeproj
- -scheme ProtocolBuffers
- # Don't need to worry about form factors or retina/non retina;
- # just pick a mix of OS Versions and 32/64 bit.
- -destination "platform=iOS Simulator,name=iPhone 4s,OS=7.1" # 32bit
- -destination "platform=iOS Simulator,name=iPhone 6,OS=8.3" # 64bit
- -destination "platform=iOS Simulator,name=iPad 2,OS=7.1" # 32bit
- -destination "platform=iOS Simulator,name=iPad Air,OS=8.3" # 64bit
- )
- header "Doing Xcode iOS build/tests - Debug"
- "${XCODEBUILD_TEST_BASE_IOS[@]}" -configuration Debug test
- header "Doing Xcode iOS build/tests - Release"
- "${XCODEBUILD_TEST_BASE_IOS[@]}" -configuration Release test
- # Don't leave the simulator in the developer's face.
- killall "iOS Simulator"
-fi
-if [[ "${DO_XCODE_OSX_TESTS}" == "yes" ]] ; then
- XCODEBUILD_TEST_BASE_OSX=(
- xcodebuild
- -project objectivec/ProtocolBuffers_OSX.xcodeproj
- -scheme ProtocolBuffers
- # Since the ObjC 2.0 Runtime is required, 32bit OS X isn't supported.
- -destination "platform=OS X,arch=x86_64" # 64bit
- )
- header "Doing Xcode OS X build/tests - Debug"
- "${XCODEBUILD_TEST_BASE_OSX[@]}" -configuration Debug test
- header "Doing Xcode OS X build/tests - Release"
- "${XCODEBUILD_TEST_BASE_OSX[@]}" -configuration Release test
-fi
« no previous file with comments | « third_party/protobuf/objectivec/DevTools/compile_testing_protos.sh ('k') | third_party/protobuf/objectivec/DevTools/pddm.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698