149: Use short commit SHA and single level of directories for binaries r=kvark a=grovesNL

Include OS name, use shorter commit SHA, and use a single level of directories for produced binaries.

The only potential downside about the commit SHA being included is that moving tags will cause the binaries to aggregate on the single release, see https://github.com/gfx-rs/portability/releases for example. Maybe this is a useful feature though, and we'll just need to clean releases up every once in a while.

Co-authored-by: Joshua Groves <josh@joshgroves.com>
This commit is contained in:
bors[bot] 2018-08-29 12:18:45 +00:00
commit 02fb6df5db
2 changed files with 11 additions and 5 deletions

View file

@ -53,13 +53,14 @@ script:
- export PATH=$PATH:$HOME/deps/bin - export PATH=$PATH:$HOME/deps/bin
- make - make
- if [[ $TRAVIS_RUST_VERSION == "nightly" ]]; then make debug release; fi - if [[ $TRAVIS_RUST_VERSION == "nightly" ]]; then make debug release; fi
- if [[ $TRAVIS_RUST_VERSION == "stable" && $TRAVIS_BRANCH == $TRAVIS_TAG ]]; then make package.zip && mv package.zip gfx-portability-$TRAVIS_OS_NAME-$TRAVIS_COMMIT.zip; fi - if [[ $TRAVIS_RUST_VERSION == "stable" && $TRAVIS_BRANCH == $TRAVIS_TAG ]]; then make package.zip; fi
deploy: deploy:
provider: releases provider: releases
api_key: api_key:
secure: kS8vjHOnLEknb2qxf2dPxMW8S5KcpjSkSgoi23WXiX3DZ2v8DIJMxVLanJhD3mbr1oI1NGXQHrTeeA/HBEEJcOVzlQo38MgNo/Jyt1k4jLRyCEDL0LjO+M1zAQGoEDWlyyjeu+Alw3SFKqGoZeuYDZ/mxUpEapFMD++8w4IjON2fI6iNumcIMeAg3Ns6Y4wHYQPzfIQQf5svI9dh1lf7PhlFB/btONBPi6rXxU/UwCnHBoOPydl5OwjggaUAjCJSf8i/FDLWt5XpvA2UsML2AbcFNuwFhNGhf6ArwEsqgcMCGL6jACetvI/l3ZL96h5dsgzRLW0ruvnvpEm3y3aw9wCjEAcnQMZCBPlIfOpj5MH/guh526QWCVQ3rwRUJOhua9T2yvwda3ICYspyVShzlbwscA9yLwvsuO+6Hl+upuE2IPfLvS6QpnXVlIWHe/3HqOoQggDdsWvnZhhGNKASKsi9vNgTvec/1iX846/KGcV3nYeHIWFrvP0IgWtEqQrgcWj9w6X7LDdaTFmrkKwKnNn4ClLQYPnlWQS71iX0gwRhONGaSAEfFca6vwVTa8AGSQUEHphe5lT7LtAy6UhlbjZNuKvUR+pn+l0EoWlZzm+uxKMtGR+mG9h6My+GA3hCWWtX/Xc94TvuJ1cg+uRu48+rD21vv3cr2fEVDRq7pGg= secure: kS8vjHOnLEknb2qxf2dPxMW8S5KcpjSkSgoi23WXiX3DZ2v8DIJMxVLanJhD3mbr1oI1NGXQHrTeeA/HBEEJcOVzlQo38MgNo/Jyt1k4jLRyCEDL0LjO+M1zAQGoEDWlyyjeu+Alw3SFKqGoZeuYDZ/mxUpEapFMD++8w4IjON2fI6iNumcIMeAg3Ns6Y4wHYQPzfIQQf5svI9dh1lf7PhlFB/btONBPi6rXxU/UwCnHBoOPydl5OwjggaUAjCJSf8i/FDLWt5XpvA2UsML2AbcFNuwFhNGhf6ArwEsqgcMCGL6jACetvI/l3ZL96h5dsgzRLW0ruvnvpEm3y3aw9wCjEAcnQMZCBPlIfOpj5MH/guh526QWCVQ3rwRUJOhua9T2yvwda3ICYspyVShzlbwscA9yLwvsuO+6Hl+upuE2IPfLvS6QpnXVlIWHe/3HqOoQggDdsWvnZhhGNKASKsi9vNgTvec/1iX846/KGcV3nYeHIWFrvP0IgWtEqQrgcWj9w6X7LDdaTFmrkKwKnNn4ClLQYPnlWQS71iX0gwRhONGaSAEfFca6vwVTa8AGSQUEHphe5lT7LtAy6UhlbjZNuKvUR+pn+l0EoWlZzm+uxKMtGR+mG9h6My+GA3hCWWtX/Xc94TvuJ1cg+uRu48+rD21vv3cr2fEVDRq7pGg=
file: gfx-portability-$TRAVIS_OS_NAME-$TRAVIS_COMMIT.zip file_glob: true
file: gfx-portability-*.zip
skip_cleanup: true skip_cleanup: true
on: on:
tags: true tags: true

View file

@ -11,6 +11,8 @@ TEST_LIST_SOURCE=$(CTS_DIR)/external/vulkancts/mustpass/1.0.2/vk-default.txt
DEQP_DIR=$(CTS_DIR)/build/external/vulkancts/modules/vulkan/ DEQP_DIR=$(CTS_DIR)/build/external/vulkancts/modules/vulkan/
DEQP=cd $(DEQP_DIR) && RUST_LOG=debug LD_LIBRARY_PATH=$(FULL_LIBRARY_PATH) ./deqp-vk DEQP=cd $(DEQP_DIR) && RUST_LOG=debug LD_LIBRARY_PATH=$(FULL_LIBRARY_PATH) ./deqp-vk
CLINK_ARGS= CLINK_ARGS=
GIT_TAG=$(shell git describe --abbrev=0 --tags)
OS_NAME=
DOTA_DIR=../dota2/bin/osx64 DOTA_DIR=../dota2/bin/osx64
DOTA_EXE=$(DOTA_DIR)/dota2.app/Contents/MacOS/dota2 DOTA_EXE=$(DOTA_DIR)/dota2.app/Contents/MacOS/dota2
@ -34,12 +36,14 @@ ifeq ($(OS),Windows_NT)
LDFLAGS= LDFLAGS=
BACKEND=dx12 BACKEND=dx12
LIB_EXTENSION=dll LIB_EXTENSION=dll
OS_NAME=windows
else else
UNAME_S:=$(shell uname -s) UNAME_S:=$(shell uname -s)
ifeq ($(UNAME_S),Linux) ifeq ($(UNAME_S),Linux)
LDFLAGS=-lpthread -ldl -lm -lX11 -lxcb LDFLAGS=-lpthread -ldl -lm -lX11 -lxcb
BACKEND=vulkan BACKEND=vulkan
LIB_EXTENSION=so LIB_EXTENSION=so
OS_NAME=linux
endif endif
ifeq ($(UNAME_S),Darwin) ifeq ($(UNAME_S),Darwin)
LDFLAGS=-lpthread -ldl -lm LDFLAGS=-lpthread -ldl -lm
@ -47,6 +51,7 @@ else
DEBUGGER=rust-lldb -- DEBUGGER=rust-lldb --
LIB_EXTENSION=dylib LIB_EXTENSION=dylib
CLINK_ARGS=-- -Clink-arg="-current_version 1.0.0" -Clink-arg="-compatibility_version 1.0.0" CLINK_ARGS=-- -Clink-arg="-current_version 1.0.0" -Clink-arg="-compatibility_version 1.0.0"
OS_NAME=macos
endif endif
endif endif
@ -54,7 +59,7 @@ FULL_LIBRARY_PATH=$(CURDIR)/target/debug
LIBRARY=target/debug/libportability.$(LIB_EXTENSION) LIBRARY=target/debug/libportability.$(LIB_EXTENSION)
LIBRARY_FAST=target/release/libportability.$(LIB_EXTENSION) LIBRARY_FAST=target/release/libportability.$(LIB_EXTENSION)
.PHONY: all rebuild debug release version-debug version-release binding run-native cts clean cherry dota-debug dota-release dota-orig dota-bench-gfx dota-bench-orig dota-bench-gl .PHONY: all rebuild debug release version-debug version-release binding run-native cts clean cherry dota-debug dota-release dota-orig dota-bench-gfx dota-bench-orig dota-bench-gl package
all: $(NATIVE_TARGET) all: $(NATIVE_TARGET)
@ -155,8 +160,8 @@ clean:
rm -f $(NATIVE_OBJECTS) $(NATIVE_TARGET) $(BINDING) rm -f $(NATIVE_OBJECTS) $(NATIVE_TARGET) $(BINDING)
cargo clean cargo clean
package.zip: version-debug version-release package: version-debug version-release
zip package.zip target/*/libportability.$(LIB_EXTENSION) .git/refs/heads/master cd target && cp ../.git/refs/heads/master commit-sha && zip ../gfx-portability-$(OS_NAME)-$(GIT_TAG).zip */libportability.$(LIB_EXTENSION) commit-sha
target/debug/libvulkan.$(LIB_EXTENSION): target/debug/libvulkan.$(LIB_EXTENSION):
cd target/debug && ln -sf libportability.$(LIB_EXTENSION) libvulkan.$(LIB_EXTENSION) cd target/debug && ln -sf libportability.$(LIB_EXTENSION) libvulkan.$(LIB_EXTENSION)