Revert "Merge pull request #23652 from grpc/revert-23568-use_sources"

This is a rollback of rollback to depend on sources.json for boringssl.

This reverts commit eaa670510c, reversing
changes made to 5488e7b5cd.
pull/23697/head
Micah Kornfield 5 years ago
parent 4f2c74450f
commit a8aeb280be
  1. 59
      src/boringssl/gen_build_yaml.py

@ -13,24 +13,16 @@
# See the License for the specific language governing permissions and # See the License for the specific language governing permissions and
# limitations under the License. # limitations under the License.
from __future__ import print_function import json
import shutil
import sys
import os import os
import sys
import yaml import yaml
sys.dont_write_bytecode = True sources_path = os.path.abspath(
boring_ssl_root = os.path.abspath(
os.path.join(os.path.dirname(sys.argv[0]), os.path.join(os.path.dirname(sys.argv[0]),
'../../third_party/boringssl-with-bazel/src')) '../../third_party/boringssl-with-bazel/sources.json'))
sys.path.append(os.path.join(boring_ssl_root, 'util')) with open(sources_path, 'r') as s:
sources = json.load(s)
try:
import generate_build_files
except ImportError:
print(yaml.dump({}))
sys.exit()
def map_dir(filename): def map_dir(filename):
@ -38,18 +30,19 @@ def map_dir(filename):
class Grpc(object): class Grpc(object):
"""Implements a "platform" in the sense of boringssl's generate_build_files.py""" """Adapter for boring-SSL json sources files. """
yaml = None
def WriteFiles(self, files, asm_outputs): def __init__(self, sources):
test_binaries = ['ssl_test', 'crypto_test'] self.yaml = None
self.WriteFiles(sources)
def WriteFiles(self, files):
test_binaries = ['ssl_test', 'crypto_test']
self.yaml = { self.yaml = {
'#': '#':
'generated with src/boringssl/gen_build_yaml.py', 'generated with src/boringssl/gen_build_yaml.py',
'raw_boringssl_build_output_for_debugging': { 'raw_boringssl_build_output_for_debugging': {
'files': files, 'files': files,
'asm_outputs': asm_outputs,
}, },
'libs': [ 'libs': [
{ {
@ -120,29 +113,5 @@ class Grpc(object):
} }
os.chdir(os.path.dirname(sys.argv[0])) grpc_platform = Grpc(sources)
os.mkdir('src') print(yaml.dump(grpc_platform.yaml))
try:
for f in os.listdir(boring_ssl_root):
os.symlink(os.path.join(boring_ssl_root, f), os.path.join('src', f))
grpc_platform = Grpc()
# We use a hack to run boringssl's util/generate_build_files.py as part of this script.
# The call will populate "grpc_platform" with boringssl's source file metadata.
# As a side effect this script generates err_data.c and crypto_test_data.cc (requires golang)
# Both of these files are already available under third_party/boringssl-with-bazel
# so we don't need to generate them again, but there's no option to disable that behavior.
# - crypto_test_data.cc is required to run boringssl_crypto_test but we already
# use the copy under third_party/boringssl-with-bazel so we just delete it
# - err_data.c is already under third_party/boringssl-with-bazel so we just delete it
generate_build_files.main([grpc_platform])
print(yaml.dump(grpc_platform.yaml))
finally:
# we don't want err_data.c and crypto_test_data.cc (see comment above)
if os.path.exists('err_data.c'):
os.remove('err_data.c')
if os.path.exists('crypto_test_data.cc'):
os.remove('crypto_test_data.cc')
shutil.rmtree('src')

Loading…
Cancel
Save