3
3
"""
4
4
This source file is part of the Swift.org open source project
5
5
6
- Copyright (c) 2014 - 2020 Apple Inc. and the Swift project authors
6
+ Copyright (c) 2014 - 2021 Apple Inc. and the Swift project authors
7
7
Licensed under Apache License v2.0 with Runtime Library Exception
8
8
9
9
See http://swift.org/LICENSE.txt for license information
@@ -171,6 +171,7 @@ def parse_global_args(args):
171
171
args .yams_source_dir = os .path .join (args .project_root , ".." , "yams" )
172
172
args .swift_argument_parser_source_dir = os .path .join (args .project_root , ".." , "swift-argument-parser" )
173
173
args .swift_driver_source_dir = os .path .join (args .project_root , ".." , "swift-driver" )
174
+ args .swift_crypto_source_dir = os .path .join (args .project_root , ".." , "swift-crypto" )
174
175
args .source_root = os .path .join (args .project_root , "Sources" )
175
176
176
177
if platform .system () == 'Darwin' :
@@ -307,6 +308,7 @@ def build(args):
307
308
build_yams (args )
308
309
build_swift_argument_parser (args )
309
310
build_swift_driver (args )
311
+ build_swift_crypto (args )
310
312
311
313
build_swiftpm_with_cmake (args )
312
314
build_swiftpm_with_swiftpm (args ,integrated_swift_driver = False )
@@ -559,6 +561,18 @@ def build_swift_driver(args):
559
561
cmake_flags .append ("-DCMAKE_OSX_DEPLOYMENT_TARGET=%s" % g_macos_deployment_target )
560
562
561
563
build_with_cmake (args , cmake_flags , args .swift_driver_source_dir , args .swift_driver_build_dir )
564
+
565
+ def build_swift_crypto (args ):
566
+ note ("Building SwiftCrypto" )
567
+ args .swift_crypto_build_dir = os .path .join (args .target_dir , "swift-crypto" )
568
+
569
+ cmake_flags = []
570
+ if platform .system () == 'Darwin' :
571
+ cmake_flags .append ("-DCMAKE_C_FLAGS=-target %s%s" % (get_build_target (args ), g_macos_deployment_target ))
572
+ cmake_flags .append ("-DCMAKE_OSX_DEPLOYMENT_TARGET=%s" % g_macos_deployment_target )
573
+
574
+ cmake_flags .append ("-DBUILD_SHARED_LIBS=YES" )
575
+ build_with_cmake (args , cmake_flags , args .swift_crypto_source_dir , args .swift_crypto_build_dir )
562
576
563
577
def add_rpath_for_cmake_build (args , rpath ):
564
578
"Adds the given rpath to the CMake-built swift-build"
@@ -578,6 +592,7 @@ def build_swiftpm_with_cmake(args):
578
592
"-DYams_DIR=" + os .path .join (args .yams_build_dir , "cmake/modules" ),
579
593
"-DArgumentParser_DIR=" + os .path .join (args .swift_argument_parser_build_dir , "cmake/modules" ),
580
594
"-DSwiftDriver_DIR=" + os .path .join (args .swift_driver_build_dir , "cmake/modules" ),
595
+ "-DCrypto_DIR=" + os .path .join (args .swift_crypto_build_dir , "cmake/modules" ),
581
596
"-DFIND_PM_DEPS:BOOL=YES" ,
582
597
]
583
598
else :
@@ -598,6 +613,7 @@ def build_swiftpm_with_cmake(args):
598
613
add_rpath_for_cmake_build (args , os .path .join (args .yams_build_dir , "lib" ))
599
614
add_rpath_for_cmake_build (args , os .path .join (args .swift_argument_parser_build_dir , "lib" ))
600
615
add_rpath_for_cmake_build (args , os .path .join (args .swift_driver_build_dir , "lib" ))
616
+ add_rpath_for_cmake_build (args , os .path .join (args .swift_crypto_build_dir , "lib" ))
601
617
602
618
def build_swiftpm_with_swiftpm (args , integrated_swift_driver ):
603
619
"""Builds SwiftPM using the version of SwiftPM built with CMake."""
@@ -694,6 +710,7 @@ def get_swiftpm_env_cmd(args):
694
710
os .path .join (args .yams_build_dir , "lib" ),
695
711
os .path .join (args .swift_argument_parser_build_dir , "lib" ),
696
712
os .path .join (args .swift_driver_build_dir , "lib" ),
713
+ os .path .join (args .swift_crypto_build_dir , "lib" ),
697
714
] + args .target_info ["paths" ]["runtimeLibraryPaths" ])
698
715
699
716
if platform .system () == 'Darwin' :
0 commit comments