Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
P
protobuf
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
submodule
protobuf
Commits
1e54dcfc
Commit
1e54dcfc
authored
Nov 06, 2015
by
Paul Yang
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #949 from thomasvl/newer_sims
Tweaks to the Mac build script
parents
ffe25c76
f1a3c8fe
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
51 additions
and
17 deletions
+51
-17
full_mac_build.sh
objectivec/DevTools/full_mac_build.sh
+51
-17
No files found.
objectivec/DevTools/full_mac_build.sh
View file @
1e54dcfc
...
...
@@ -26,10 +26,12 @@ OPTIONS:
Issue a clean before the normal build.
-a, --autogen
Start by rerunning autogen & configure.
-r, --regenerate-descriptors
-r, --regenerate-
cpp-
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).
--core-only
Skip some of the core protobuf build/checks to shorten the build time.
--skip-xcode
Skip the invoke of Xcode to test the runtime on both iOS and OS X.
--skip-xcode-ios
...
...
@@ -68,6 +70,7 @@ fi
DO_AUTOGEN
=
no
DO_CLEAN
=
no
REGEN_CPP_DESCRIPTORS
=
no
CORE_ONLY
=
no
DO_XCODE_IOS_TESTS
=
yes
DO_XCODE_OSX_TESTS
=
yes
while
[[
$#
!=
0
]]
;
do
...
...
@@ -89,6 +92,9 @@ while [[ $# != 0 ]]; do
shift
NUM_MAKE_JOBS
=
"
${
1
}
"
;;
--core-only
)
CORE_ONLY
=
yes
;;
--skip-xcode
)
DO_XCODE_IOS_TESTS
=
no
DO_XCODE_OSX_TESTS
=
no
...
...
@@ -155,15 +161,20 @@ if [[ "${REGEN_CPP_DESCRIPTORS}" == "yes" ]] ; then
./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
# Fire off the conformance tests also.
cd
conformance
wrapped_make
-j
"
${
NUM_MAKE_JOBS
}
"
cd
..
if
[[
"
${
CORE_ONLY
}
"
==
"yes"
]]
;
then
header
"Building core Only"
wrapped_make
-j
"
${
NUM_MAKE_JOBS
}
"
else
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
# Fire off the conformance tests also.
cd
conformance
wrapped_make
-j
"
${
NUM_MAKE_JOBS
}
"
cd
..
fi
header
"Ensuring the ObjC descriptors are current."
# Find the newest input file (protos, compiler, and the generator script).
...
...
@@ -203,19 +214,42 @@ if [[ "${DO_XCODE_IOS_TESTS}" == "yes" ]] ; then
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.4"
# 64bit
-destination
"platform=iOS Simulator,name=iPad 2,OS=7.1"
# 32bit
-destination
"platform=iOS Simulator,name=iPad Air,OS=8.4"
# 64bit
)
# Don't need to worry about form factors or retina/non retina;
# just pick a mix of OS Versions and 32/64 bit.
# NOTE: Different Xcode have different simulated hardware/os support.
readonly
XCODE_VERSION_LINE
=
"
$(
xcodebuild
-version
|
grep
Xcode
\
)
"
readonly
XCODE_VERSION
=
"
${
XCODE_VERSION_LINE
/Xcode /
}
"
# drop the prefix.
IOS_SIMULATOR_NAME
=
"Simulator"
case
"
${
XCODE_VERSION
}
"
in
6.
*
)
XCODEBUILD_TEST_BASE_IOS+
=(
-destination
"platform=iOS Simulator,name=iPhone 4s,OS=7.1"
# 32bit
-destination
"platform=iOS Simulator,name=iPhone 6,OS=8.4"
# 64bit
-destination
"platform=iOS Simulator,name=iPad 2,OS=7.1"
# 32bit
-destination
"platform=iOS Simulator,name=iPad Air,OS=8.4"
# 64bit
)
IOS_SIMULATOR_NAME
=
"iOS Simulator"
;;
7.
*
)
XCODEBUILD_TEST_BASE_IOS+
=(
-destination
"platform=iOS Simulator,name=iPhone 4s,OS=8.1"
# 32bit
-destination
"platform=iOS Simulator,name=iPhone 6,OS=9.0"
# 64bit
-destination
"platform=iOS Simulator,name=iPad 2,OS=8.1"
# 32bit
-destination
"platform=iOS Simulator,name=iPad Air,OS=9.0"
# 64bit
)
;;
*
)
echo
"Time to update the simulator targets for Xcode
${
XCODE_VERSION
}
"
exit
2
;;
esac
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
"
killall
"
${
IOS_SIMULATOR_NAME
}
"
fi
if
[[
"
${
DO_XCODE_OSX_TESTS
}
"
==
"yes"
]]
;
then
XCODEBUILD_TEST_BASE_OSX
=(
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment