language: c matrix: include: - os: linux name: "linux" dist: xenial sudo: required addons: apt: packages: - build-essential - libglfw3 - libglfw3-dev - libfreetype6-dev - libssl-dev - os: windows name: "windows_gcc" language: bash filter_secrets: false - os: windows name: "windows_msvc" language: bash filter_secrets: false - os: osx name: "osx" osx_image: xcode11 addons: homebrew: packages: - freetype - glfw - openssl script: - | if [[ "${TRAVIS_OS_NAME}" == "osx" ]]; then export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/opt/openssl/lib/ fi - | if [[ "${TRAVIS_OS_NAME}" == "windows" ]]; then ### troubleshooting and diagnostics: show ALL environment variables in the instance #set set -e git clone --depth=1 https://github.com/ubawurinna/freetype-windows-binaries thirdparty/freetype/ if [[ "${TRAVIS_JOB_NAME}" == "windows_gcc" ]]; then gcc --version echo "Building V with GCC" ./make.bat -gcc fi if [[ "${TRAVIS_JOB_NAME}" == "windows_msvc" ]]; then echo "Building V with MSVC" export VFLAGS="-cc msvc" ./make.bat -msvc fi ./v.exe test v set +e fi - | if [[ "${TRAVIS_OS_NAME}" != "windows" ]]; then make ./v -o v v.v ./v test v fi - | if [[ "${TRAVIS_OS_NAME}" == "linux" ]]; then ## aliases do not work for some reason in travis, just use full commands :-| echo "Nodejs version:" node --version # Build hi.js echo "fn main(){ println('Hello from V.js') }" > hi.v ./v -o hi.js hi.v node hi.js fi - | if [[ "${TRAVIS_OS_NAME}" == "osx" ]]; then echo "Nodejs version:" node --version # Build hi.js echo "fn main(){ println('Hello from V.js') }" > hi.v ./v -o hi.js hi.v node hi.js fi #- | ##if [[ "${TRAVIS_OS_NAME}" == "osx" ]]; then # Build Vid #git clone https://github.com/vlang/vid #cd vid && ../v -o vid . #fi