From c01f00f6c3dea07be4c9a8c795b3aa933833cf39 Mon Sep 17 00:00:00 2001 From: davide-romanini Date: Sat, 28 Sep 2019 17:01:05 +0200 Subject: [PATCH] multi platform build on travis (#145) --- .travis.yml | 45 ++++++++++++++++++++++++++++++------------- Makefile | 3 ++- appveyor.yml | 17 ---------------- comictagger.spec | 6 ++++-- windows/fullbuild.ps1 | 8 -------- 5 files changed, 38 insertions(+), 41 deletions(-) delete mode 100644 appveyor.yml delete mode 100644 windows/fullbuild.ps1 diff --git a/.travis.yml b/.travis.yml index b73aa53..980c1ff 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,23 +1,42 @@ -language: generic -os: osx -osx_image: xcode8.3 +language: python +branches: + only: + - develop + - "/^\\d+\\.\\d+\\.\\d+$/" +env: + global: + - PYTHON=python + - PIP=pip + - SETUPTOOLS_SCM_PRETEND_VERSION=$TRAVIS_TAG + - MAKE=make +matrix: + include: + - os: linux + - os: osx + language: generic + osx_image: xcode8.3 + env: PYTHON=python3 PIP=pip3 MACOSX_DEPLOYMENT_TARGET=10.11 + - os: windows + language: bash + env: PATH=/C/Python37:/C/Python37/Scripts:$PATH MAKE=mingw32-make +before_install: + - if [ "$TRAVIS_OS_NAME" = "windows" ]; then choco install -y python mingw zip; fi + - if [ "$TRAVIS_OS_NAME" = "osx" ]; then brew upgrade python3 ; fi install: -- brew upgrade python3 -- pip3 install --upgrade setuptools -- pip3 install -r requirements.txt + - $PIP install --upgrade setuptools + - $PIP install -r requirements.txt script: -- make dist -- ls -l dist + - $MAKE dist + deploy: name: $TRAVIS_TAG - body: New macOS Release + body: Released ComicTagger $TRAVIS_TAG provider: releases skip_cleanup: true api_key: secure: RgohcOJOfLhXXT12bMWaLwOqhe+ClSCYXjYuUJuWK4/E1fdd1xu1ebdQU+MI/R8cZ0Efz3sr2n3NkO/Aa8gN68xEfuF7RVRMm64P9oPrfZgGdsD6H43rU/6kN8bgaDRmCYpLTfXaJ+/gq0x1QDkhWJuceF2BYEGGvL0BvS/TUsLyjVxs8ujTplLyguXHNEv4/7Yz7SBNZZmUHjBuq/y+l8ds3ra9rSgAVAN1tMXoFKJPv+SNNkpTo5WUNMPzBnN041F1rzqHwYDLog2V7Krp9JkXzheRFdAr51/tJBYzEd8AtYVdYvaIvoO6A4PiTZ7MpsmcZZPAWqLQU00UTm/PhT/LVR+7+f8lOBG07RgNNHB+edjDRz3TAuqyuZl9wURWTZKTPuO49TkZMz7Wm0DRNZHvBm1IXLeSG7Tll2YL1+WpZNZg+Dhro2J1QD3vxDXafhMdTCB4z0q5aKpG93IT0p6oXOO0oEGOPZYbA2c5R3SXWSyqd1E1gdhbVjIZr59h++TEf1zz07tvWHqPuAF/Ly/j+dIcY2wj0EzRWaSASWgUpTnMljAkHtWhqDw4GXGDRkRUWRJl1d0/JyVqCeIdRzDQNl8/q7BcO3F1zqr1PgnYdz0lfwWxL1/ekw2vHOJE/GOdkyvX0aJrnaOV338mjJbfGHYv4ESc9ow1kdtIbiU= file_glob: true - file: dist/ComicTagger*.zip + file: dist/*.zip draft: true - on: - branch: master - tags: true + on: + tags: true \ No newline at end of file diff --git a/Makefile b/Makefile index abf5b94..87a181c 100644 --- a/Makefile +++ b/Makefile @@ -1,3 +1,4 @@ +PIP ?= pip VERSION_STR := $(shell python setup.py --version) ifeq ($(OS),Windows_NT) @@ -54,6 +55,6 @@ else endif dist: unrar - pip install . + $(PIP) install . pyinstaller -y comictagger.spec cd dist && zip -r $(FINAL_NAME).zip $(APP_NAME) diff --git a/appveyor.yml b/appveyor.yml deleted file mode 100644 index 1ec1e03..0000000 --- a/appveyor.yml +++ /dev/null @@ -1,17 +0,0 @@ -version: 1.0.{build} -build_script: -- cmd: powershell -exec bypass -File windows\fullbuild.ps1 -artifacts: -- path: dist\*.zip - name: ComicTagger -deploy: - description: New Windows Release - provider: GitHub - auth_token: - secure: GftVXNVTfnfWxlCIWNsufQjgrLqGPbrhK7bddzZ+6onYbbx6vEKWku0QMZjcxq/D - draft: true - prerelease: false - artifact: ComicTagger - on: - APPVEYOR_REPO_TAG: true - \ No newline at end of file diff --git a/comictagger.spec b/comictagger.spec index 518dcd3..9e8734a 100644 --- a/comictagger.spec +++ b/comictagger.spec @@ -9,10 +9,12 @@ binaries = [ ] if platform.system() == "Windows": + from site import getsitepackages + sitepackages = getsitepackages()[1] # add ssl qt libraries not discovered automatically binaries.extend([ - ('./venv/Lib/site-packages/PyQt5/Qt/bin/libeay32.dll', './PyQt5/Qt/bin'), - ('./venv/Lib/site-packages/PyQt5/Qt/bin/ssleay32.dll', './PyQt5/Qt/bin') + ('%s/PyQt5/Qt/bin/libeay32.dll' % sitepackages, './PyQt5/Qt/bin'), + ('%s/PyQt5/Qt/bin/ssleay32.dll' % sitepackages, './PyQt5/Qt/bin') ]) a = Analysis(['comictagger.py'], diff --git a/windows/fullbuild.ps1 b/windows/fullbuild.ps1 deleted file mode 100644 index 2c48cf3..0000000 --- a/windows/fullbuild.ps1 +++ /dev/null @@ -1,8 +0,0 @@ -# Script to be run inside appveyor for a full build -choco install -y mingw zip -refreshenv -$env:PATH="C:\Python36-x64;$env:path" -python -m venv venv -.\venv\Scripts\Activate.ps1 -pip install -r .\requirements.txt -mingw32-make dist