Browse Source

Update vendoring scripts and build configuration for examples for new vendored gRPC Core.

Tim Burks 9 years ago
parent
commit
220cc3fe29

+ 3 - 3
Examples/Echo/Swift/SwiftPM/Makefile

@@ -1,9 +1,9 @@
 
 CFLAGS = \
 -Xcc -DOPENSSL_NO_ASM \
--Xcc -IPackages/SwiftGRPC-0.1.4/Sources/BoringSSL/include \
--Xcc -IPackages/SwiftGRPC-0.1.4/Sources/CgRPC \
--Xcc -IPackages/SwiftGRPC-0.1.4/Sources/CgRPC/include
+-Xcc -IPackages/SwiftGRPC-0.1.5/Sources/BoringSSL/include \
+-Xcc -IPackages/SwiftGRPC-0.1.5/Sources/CgRPC \
+-Xcc -IPackages/SwiftGRPC-0.1.5/Sources/CgRPC/include
 
 LDFLAGS = -Xlinker -lz 
 

+ 1 - 1
Examples/Echo/Swift/SwiftPM/Package.swift

@@ -34,7 +34,7 @@ import PackageDescription
 let package = Package (
     name: "Echo",
     dependencies: [
-        .Package(url: "https://github.com/grpc/grpc-swift.git", Version(0,1,4)),
+        .Package(url: "https://github.com/grpc/grpc-swift.git", Version(0,1,5)),
         .Package(url: "https://github.com/apple/swift-protobuf.git", Version(0,9,24)),
     ]
 )

+ 9 - 3
Examples/Simple/Makefile

@@ -1,8 +1,14 @@
-LIBDIR = /usr/local/lib
-INCDIR = /usr/local/include
+
+CFLAGS = \
+-Xcc -DOPENSSL_NO_ASM \
+-Xcc -IPackages/SwiftGRPC-0.1.5/Sources/BoringSSL/include \
+-Xcc -IPackages/SwiftGRPC-0.1.5/Sources/CgRPC \
+-Xcc -IPackages/SwiftGRPC-0.1.5/Sources/CgRPC/include
+
+LDFLAGS = -Xlinker -lz 
 
 all:
-	swift build -Xlinker -L$(LIBDIR) -Xlinker -lgrpc -Xcc -I$(INCDIR)
+	swift build -v $(CFLAGS) $(LDFLAGS)
 
 clean :
 	rm -rf Packages

+ 1 - 1
Examples/Simple/Package.swift

@@ -34,6 +34,6 @@ import PackageDescription
 let package = Package (
     name: "Simple",
     dependencies: [
-        .Package(url: "https://github.com/grpc/grpc-swift.git", Version(0,1,3)),
+        .Package(url: "https://github.com/grpc/grpc-swift.git", Version(0,1,5)),
     ]
 )

+ 4 - 0
Sources/BoringSSL/README.md

@@ -0,0 +1,4 @@
+# BoringSSL source files
+
+This directory contains vendored code for BoringSSL.
+

+ 39 - 3
vendor-boringssl.sh

@@ -1,10 +1,46 @@
 #!/bin/sh
-
-shopt -s globstar
-
+#
+# Copyright 2016, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+#     * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#     * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+#     * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+#
+# This script creates a vendored copy of BoringSSL that is
+# suitable for building with the Swift Package Manager.
+#
 SRCROOT=third_party/grpc/third_party/boringssl
 DSTROOT=Sources/BoringSSL
 
+rm -rf $DSTROOT/crypto
+rm -rf $DSTROOT/include
+rm -rf $DSTROOT/ssl
+rm -rf $DSTROOT/err_data.c
+
+
 PATTERNS=(
 'include/openssl/*.h'
 'ssl/*.h'

+ 43 - 3
vendor-grpc.sh

@@ -1,4 +1,38 @@
 #!/bin/sh
+#
+# Copyright 2016, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+#     * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#     * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+#     * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+#
+# This script vendors the gRPC Core library into the
+# CgRPC module in a form suitable for building with
+# the Swift Package Manager.
+#
 
 public_headers=(
 'include/grpc/support/alloc.h'
@@ -712,17 +746,23 @@ private_headers=(
 'src/core/ext/census/rpc_metric_id.h'
 'src/core/ext/census/trace_context.h')
 
+rm -rf Sources/CgRPC/src
+rm -rf Sources/CgRPC/third_party
+rm -rf Sources/CgRPC/grpc
+
 for src in "${public_headers[@]}"
 do
-	dest="Sources/gRPC_Core/$src"
+	dest="Sources/CgRPC/$src"
 	dest_dir=$(dirname $dest)
 	mkdir -p $dest_dir
 	cp third_party/grpc/$src $dest
 done
 
+mv Sources/CgRPC/include/grpc Sources/CgRPC/grpc
+
 for src in "${source_files[@]}"
 do
-	dest="Sources/gRPC_Core/$src"
+	dest="Sources/CgRPC/$src"
 	dest_dir=$(dirname $dest)
 	mkdir -p $dest_dir
 	cp third_party/grpc/$src $dest
@@ -730,7 +770,7 @@ done
 
 for src in "${private_headers[@]}"
 do
-	dest="Sources/gRPC_Core/$src"
+	dest="Sources/CgRPC/$src"
 	dest_dir=$(dirname $dest)
 	mkdir -p $dest_dir
 	cp third_party/grpc/$src $dest