| #!/bin/sh |
| |
| # |
| # Copyright 2018 Google LLC All Rights Reserved. |
| # |
| # Licensed under the Apache License, Version 2.0 (the "License"); |
| # you may not use this file except in compliance with the License. |
| # You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| # |
| |
| # |
| # Description: |
| # This file is the script for Travis CI hosted, distributed continuous |
| # integration 'before_install' trigger of the 'install' step. |
| # |
| |
| die() |
| { |
| echo " *** ERROR: " ${*} |
| exit 1 |
| } |
| |
| # Package build machine OS-specific configuration and setup |
| |
| case "${TRAVIS_OS_NAME}" in |
| |
| linux) |
| # By default, Travis CI does not have IPv6 enabled on |
| # Linux. Ensure that IPv6 is enabled since Weave, and its unit |
| # and functional tests, depend on working IPv6 support. |
| |
| sudo sysctl -w net.ipv6.conf.all.disable_ipv6=0 |
| |
| ;; |
| |
| esac |
| |
| # Package target-specific configuration and setup |
| |
| case "${BUILD_TARGET}" in |
| |
| linux-auto-*) |
| # By default, the BLE layer is enabled in OpenWeave Core and, by |
| # default on Linux, the BLE layer is implemented by BlueZ. On Linux, |
| # BlueZ requires: |
| # |
| # * libdbus-1-dev |
| # * libical-dev |
| # * libudev-dev |
| # * systemd |
| |
| sudo apt-get update |
| sudo apt-get install libdbus-1-dev libudev-dev libical-dev systemd |
| |
| # By default, OpenWeave Core uses OpenSSL for cryptography on |
| # Linux and the OpenSSL version included in package depends |
| # on the perl Text::Template mmodule. |
| |
| curl -L https://cpanmin.us | sudo perl - --sudo App::cpanminus |
| sudo cpanm "Text::Template" |
| |
| ;; |
| |
| esp32) |
| .travis/prepare_esp32.sh |
| |
| ;; |
| |
| osx-auto-clang) |
| # By default, OpenWeave Core uses OpenSSL for cryptography on |
| # OS X and the OpenSSL version included in package depends |
| # on the perl Text::Template mmodule. |
| |
| curl -L https://cpanmin.us | sudo perl - --sudo App::cpanminus |
| sudo cpanm "Text::Template" |
| |
| ;; |
| |
| *) |
| die "Unknown build target \"${BUILD_TARGET}\"." |
| ;; |
| |
| esac |