diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000000..62592fffa4 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,152 @@ +git: + depth: 3 +env: + global: + - secure: "AzM98HKS2RDP+/WdvsFiEqTbVPwLBEAtNXDQPR7cV1gAEZoNhri/iINnRAHtECgVQDt2gKmxEiyOA07zMKPpt5PwhoyZUnICwxl1t2FOkTL4LlfI+3ew1rf4F8wmaSQX/BRT7b3IgyEI0RFRCow8KH49X8xdEtAFYJB3YFu2Y6M=" + - secure: "BDNmD9y3mdZEQoFgXW2dC1FawofkThFwbITidMqeKLxSstNxQGKCpxOFAV604kaTGsf7ihpdm8WYE5IjHKTaoewdQ9hLXZPtswWXq5Ebe2gKHqJVNZa2bFD6hQBD2S7BLWWeAVIoLkyfV/QLnplOquUZTXWZ3TW2A+IXzQE+AnE=" + - AWS_DEFAULT_REGION: "us-east-1" + - JDK_LINUX: https://cdn.azul.com/zulu/bin/zulu8.48.0.53-ca-fx-jdk8.0.265-linux_x64.tar.gz + - JDK_MACOS: https://cdn.azul.com/zulu/bin/zulu8.48.0.53-ca-fx-jdk8.0.265-macosx_x64.tar.gz + - ANT_OPTS: -Xmx1G + +matrix: + include: + + # ----------------- + - name: "Linux x64" + # ----------------- + dist: xenial + language: java + + addons: + apt: + packages: + - ant + - gcc-4.8 + - g++-4.8 + - gcc-4.9 + - g++-4.9 + - xorg-dev + - libgtk-3-dev + - libglu-dev + - libgl1-mesa-glx + - libx11-dev + + before_install: + - pip install --user awscli + - export PATH=$PATH:$HOME/.local/bin + + script: + - export LWJGL_BUILD_TYPE=nightly + - curl $JDK_LINUX --output jdk8.tar.gz + - mkdir jdk8 && tar xf jdk8.tar.gz -C jdk8 --strip-components 1 + - export JAVA_HOME=$TRAVIS_BUILD_DIR/jdk8 + - ant hydrate-kotlinc + - ant compile + - ant compile-native -Dgcc.version=4.8 -Dgcc.libpath.opengl=/usr/lib/x86_64-linux-gnu/mesa + - ant tests + - ant upload-native + + # ----------------- + - name: "Linux arm32" + # ----------------- + dist: xenial + language: java + + addons: + apt: + packages: + - ant + - gcc-4.8-arm-linux-gnueabihf + - g++-4.8-arm-linux-gnueabihf + - gcc-4.9-arm-linux-gnueabihf + - g++-4.9-arm-linux-gnueabihf + - libc6-dev-armhf-cross + + before_install: + - pip install --user awscli + - export PATH=$PATH:$HOME/.local/bin + - sudo sed -i 's/deb http/deb [arch=amd64,i386] http/' /etc/apt/sources.list + - sudo grep "ubuntu.com/ubuntu" /etc/apt/sources.list | sudo tee /etc/apt/sources.list.d/ports.list + - sudo sed -i 's/amd64,i386/armhf,arm64/' /etc/apt/sources.list.d/ports.list + - sudo sed -i 's#http://.*/ubuntu#http://ports.ubuntu.com/ubuntu-ports#' /etc/apt/sources.list.d/ports.list + - sudo dpkg --add-architecture armhf + - sudo apt-get update || true + - sudo apt-get -yq install libglu-dev:armhf libgl1-mesa-glx:armhf libx11-dev:armhf -o Dpkg::Options::="--force-overwrite" + + script: + - export LWJGL_BUILD_TYPE=nightly + - export LWJGL_BUILD_ARCH=arm32 + - curl $JDK_LINUX --output jdk8.tar.gz + - mkdir jdk8 && tar xf jdk8.tar.gz -C jdk8 --strip-components 1 + - export JAVA_HOME=$TRAVIS_BUILD_DIR/jdk8 + - ant hydrate-kotlinc + - ant compile + - ant compile-native -Dgcc.version=4.8 -Dgcc.libpath.opengl=/usr/lib/arm-linux-gnueabihf/mesa + - ant tests + - ant upload-native + + # ----------------- + - name: "Linux arm64" + # ----------------- + dist: xenial + language: java + jdk: openjdk8 + + addons: + apt: + packages: + - ant + - gcc-4.8-aarch64-linux-gnu + - g++-4.8-aarch64-linux-gnu + - gcc-4.9-aarch64-linux-gnu + - g++-4.9-aarch64-linux-gnu + - libc6-dev-arm64-cross + + before_install: + - pip install --user awscli + - export PATH=$PATH:$HOME/.local/bin + - sudo sed -i 's/deb http/deb [arch=amd64,i386] http/' /etc/apt/sources.list + - sudo grep "ubuntu.com/ubuntu" /etc/apt/sources.list | sudo tee /etc/apt/sources.list.d/ports.list + - sudo sed -i 's/amd64,i386/armhf,arm64/' /etc/apt/sources.list.d/ports.list + - sudo sed -i 's#http://.*/ubuntu#http://ports.ubuntu.com/ubuntu-ports#' /etc/apt/sources.list.d/ports.list + - sudo dpkg --add-architecture arm64 + - sudo apt-get update || true + - sudo apt-get -yq install libglu-dev:arm64 libgl1-mesa-glx:arm64 libx11-dev:arm64 -o Dpkg::Options::="--force-overwrite" + + script: + - export LWJGL_BUILD_TYPE=nightly + - export LWJGL_BUILD_ARCH=arm64 + - curl $JDK_LINUX --output jdk8.tar.gz + - mkdir jdk8 && tar xf jdk8.tar.gz -C jdk8 --strip-components 1 + - export JAVA_HOME=$TRAVIS_BUILD_DIR/jdk8 + - ant hydrate-kotlinc + - ant compile + - ant compile-native -Dgcc.version=4.8 -Dgcc.libpath.opengl=/usr/lib/aarch64-linux-gnu/mesa + - ant tests + - ant upload-native + + # ----------------- + - name: "macOS" + # ----------------- + language: objective-c + osx_image: xcode11.3 + compiler: clang + + before_install: + - brew update + + install: + - brew install ant + - brew install awscli + + script: + - export LWJGL_BUILD_TYPE=nightly + - curl $JDK_MACOS --output jdk8.tar.gz + - mkdir jdk8 && tar xf jdk8.tar.gz -C jdk8 --strip-components 1 + - export JAVA_HOME=$TRAVIS_BUILD_DIR/jdk8 + - ant hydrate-kotlinc + - ant compile + - ant compile-native + - ant tests + - ant upload-native \ No newline at end of file diff --git a/appveyor.yml b/appveyor.yml new file mode 100644 index 0000000000..af98f2c61b --- /dev/null +++ b/appveyor.yml @@ -0,0 +1,52 @@ +version: '{build}' +skip_tags: true +image: Visual Studio 2019 +clone_depth: 3 +environment: + AWS_ACCESS_KEY_ID: + secure: 7jhk0oV/vjFsOcsAHLMUcNGUGLuGmnuPxGH0ce/Vky8= + AWS_SECRET_ACCESS_KEY: + secure: 5KKYpsIHwYHHh5ud0U7Ss0rLumv6G8tkS6abh1B9aq4wY6+1kq5fN/3E5BsdBVKy + AWS_DEFAULT_REGION: us-east-1 + ANT_OPTS: -Xmx1G + matrix: + - ARCH: x64 + PLATFORM: amd64 + JAVA_HOME: C:\Program Files\Java\jdk1.8.0 + - ARCH: x86 + PLATFORM: amd64_x86 + JAVA_HOME: C:\Program Files (x86)\Java\jdk1.8.0 +matrix: + fast_finish: true +build_script: +- cmd: >- + appveyor DownloadFile https://www.apache.org/dist/ant/binaries/%APACHE_ANT%-bin.zip -FileName ant.zip + + 7z x ant.zip + + move %APACHE_ANT% ant + + set PATH=%PATH%;ant\bin + + "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat" %PLATFORM% + + git clone https://github.com/LWJGL-CI/OculusSDK.git ../OculusSDK + + ant hydrate-kotlinc + + ant compile + + ant compile-native + + ant tests + + ant upload-native +test: off +notifications: +- provider: Email + to: + - iotsakp@gmail.com + subject: LWJGL 3 CI + on_build_success: true + on_build_failure: true + on_build_status_changed: true \ No newline at end of file