Skip to content
This repository was archived by the owner on Oct 25, 2022. It is now read-only.

New: bitcode support #35

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion lib/curl_builder.rb
Original file line number Diff line number Diff line change
Expand Up @@ -60,10 +60,11 @@ module CurlBuilder
verbose: false,
debug_symbols: false,
curldebug: false,
sdk_version: "9.2",
sdk_version: "9.3",
osx_sdk_version: "10.11",
libcurl_version: "7.47.1",
architectures: %w(i386 armv7 armv7s arm64 x86_64),
bitcode: true,
xcode_home: "/Applications/Xcode.app/Contents/Developer",
run_on_dir: Dir::pwd,
work_dir: "build",
Expand Down
6 changes: 5 additions & 1 deletion lib/curl_builder/compiler.rb
Original file line number Diff line number Diff line change
Expand Up @@ -102,12 +102,16 @@ def compilation_flags_for(platform, architecture)
min_version = "-mmacosx-version-min=10.7"
end

if setup(:bitcode)
embed_bitcode = "-fembed-bitcode"
end

sdk_version = sdk_version_for platform
sdk = "#{setup(:xcode_home)}/Platforms/#{platform}.platform/Developer/SDKs/#{platform}#{sdk_version}.sdk"

{
ldflags: "-arch #{architecture} -pipe -isysroot #{sdk}",
cflags: "-arch #{architecture} -pipe -isysroot #{sdk} #{min_version}"
cflags: "-arch #{architecture} -pipe -isysroot #{sdk} #{min_version} #{embed_bitcode}"
}
end

Expand Down
6 changes: 6 additions & 0 deletions lib/curl_builder/parser.rb
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,12 @@ def parse(args)
setup[:architectures] = CurlBuilder.filter_valid_archs(archs)
end

parser.on("--[no-]bitcode",
"Use BITCODE flag when building",
" Defaults to #{param(setup[:bitcode])}") do |bitcode|
setup[:bitcode] = bitcode
end

parser.on("--enable-protocols A,B,C",
Array,
"Enables a list of protocols",
Expand Down