aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Stanley Cheung <stanleycheung@google.com>2015-06-10 09:21:57 -0700
committerGravatar Stanley Cheung <stanleycheung@google.com>2015-06-10 10:33:51 -0700
commit8afc5998d56c4b736ac45b1367aa8e4bddbd6c29 (patch)
tree9880390e23910199c2e457148b018e9666cfd27f
parentb3c74ba382417245eb5e21786c9640e8913a3562 (diff)
finalize php installation instructions, add script
-rw-r--r--php/README.md25
-rwxr-xr-xphp/run_greeter_client.sh47
2 files changed, 53 insertions, 19 deletions
diff --git a/php/README.md b/php/README.md
index f361fc4f00..247235adfd 100644
--- a/php/README.md
+++ b/php/README.md
@@ -10,10 +10,10 @@ INSTALL
-------
- On Mac OS X, install [homebrew][]. On Linux, install [linuxbrew][]. Run the following command to install gRPC.
- ```sh
- $ curl -fsSL https://goo.gl/getgrpc | bash -
- ```
- This will download and run the [gRPC install script][].
+ ```sh
+ $ curl -fsSL https://goo.gl/getgrpc | bash -s php
+ ```
+ This will download and run the [gRPC install script][] and compile the gRPC PHP extension.
- Clone this repository
@@ -26,21 +26,9 @@ INSTALL
```
$ cd grpc-common/php
$ curl -sS https://getcomposer.org/installer | php
+ $ php composer.phar install
```
- - (Coming soon) Download the gRPC PECL extension
-
- ```
- Coming soon
- ```
-
- - (Temporary workaround) Compile gRPC extension from source
-
- ```
- $ curl -fsSL https://goo.gl/getgrpc | bash -s php
- ```
-
-
TRY IT!
-------
@@ -56,8 +44,7 @@ TRY IT!
```
$ cd grpc-common/php
- $ php composer.phar install
- $ php -d extension=grpc.so greeter_client.php
+ $ ./run_greeter_client.sh
```
NOTE
diff --git a/php/run_greeter_client.sh b/php/run_greeter_client.sh
new file mode 100755
index 0000000000..4fdea897f9
--- /dev/null
+++ b/php/run_greeter_client.sh
@@ -0,0 +1,47 @@
+#!/bin/bash
+# Copyright 2015, 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.
+
+set -e
+cd $(dirname $0)
+which brew >> /dev/null || { echo 'please make sure brew is in the PATH'; exit 1; }
+default_extension_dir=`php -i 2>/dev/null | grep extension_dir | sed 's/.*=> //g'`
+brew_home=`brew --prefix`
+module_dir=$brew_home/opt/grpc-php
+
+# sym-link in system supplied extensions
+for f in $default_extension_dir/*.so
+do
+ ln -s $f $module_dir/$(basename $f) &> /dev/null || true
+done
+
+php \
+ -d extension_dir=$module_dir \
+ -d extension=grpc.so \
+ greeter_client.php