From 1121c3b8b150f3238ca035f76e32b25baf5fc210 Mon Sep 17 00:00:00 2001 From: Gurkengewuerz Date: Tue, 2 Jun 2020 17:26:50 +0200 Subject: [PATCH 1/4] removed appveyor and use mxe --- .drone.yml | 35 +++++++++++++++++-- AppVeyor/appveyor.yml | 29 --------------- README.md | 8 ++--- .../windows}/make_installer.sh | 0 4 files changed, 37 insertions(+), 35 deletions(-) delete mode 100644 AppVeyor/appveyor.yml rename {AppVeyor => packages/windows}/make_installer.sh (100%) diff --git a/.drone.yml b/.drone.yml index 21a57b0..43bee24 100644 --- a/.drone.yml +++ b/.drone.yml @@ -7,12 +7,43 @@ platform: arch: amd64 steps: + - name: build-mxe + image: ubuntu:bionic + volumes: + - name: cache + path: /release + commands: + - rm -rf build/ || true + - apt-get update && apt-get install -yqq wget gnupg2 curl rsync p7zip git + - git submodule sync + - git submodule update --init + - export VER=$(cat src/main.cpp | grep setApplicationVersion | sed "s/\\s*a.setApplicationVersion(\"//g" | sed "s/\");//g") + - mkdir build && pwd && ls -lahR . + - cd build + - wget -qO - https://pkg.mxe.cc/repos/apt/client-conf/mxeapt.gpg | apt-key add - + - echo "deb https://pkg.mxe.cc/repos/apt/ bionic main" >> /etc/apt/sources.list + - apt-get update && apt-get install -yqq mxe-x86-64-w64-mingw32.shared-qtbase mxe-x86-64-w64-mingw32.shared-qtmultimedia mxe-x86-64-w64-mingw32.shared-qttools mxe-x86-64-w64-mingw32.shared-qtwinextras + - apt-get install -yqq mxe-x86-64-w64-mingw32.shared-ffmpeg + - export PATH=/usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/bin:$PATH + - export PATH=/usr/lib/mxe/usr/bin:$PATH + - cp /usr/lib/mxe/usr/x86_64-w64-mingw32.shared/include/lmcons.h /usr/lib/mxe/usr/x86_64-w64-mingw32.shared/include/Lmcons.h + - qmake --version + - qmake CONFIG+=nopkg ../KShare.pro + - make -j2 + - mkdir dist + - cp src/release/kshare.exe dist/KShare.exe + - /usr/lib/mxe/tools/copydlldeps.sh --infile dist/KShare.exe --destdir dist/ --recursivesrcdir /usr/lib/mxe/usr/x86_64-w64-mingw32.shared/ --srcdir ../src/ --copy --enforcedir /usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/plugins/platforms/ --objdump /usr/lib/mxe/usr/bin/x86_64-w64-mingw32.shared-objdump + - mkdir dist/mediaservice; cp /usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/plugins/mediaservice/dsengine.dll dist/mediaservice + - cd dist/; cp KShare.exe /release/KShare_v${VER}.exe; zip -r /release/win_kshare_v${VER}_portable.zip * + - name: build-ubuntu image: buildpack-deps:19.10 volumes: - name: cache path: /release commands: + - export VER=$(cat src/main.cpp | grep setApplicationVersion | sed "s/\\s*a.setApplicationVersion(\"//g" | sed "s/\");//g") + - rm -rf build/ || true - apt-get update -yqq && apt-get install -yqq build-essential cmake \gcc g++ qt5-default qt5-qmake qtmultimedia5-dev libqt5svg5-dev libx11-dev libavformat-dev libavcodec-dev libavutil-dev libswscale-dev libqt5x11extras5-dev libxcb-util-dev libxcb-cursor-dev libxcb1-dev - qmake --version - git submodule sync @@ -20,9 +51,8 @@ steps: - mkdir build && pwd && ls -lahR . - cd build && pwd && ls; qmake ..; make -j2; cd .. - mkdir /release || true - - cp build/src/kshare /release/ + - cp build/src/kshare /release/kshare_v${VER} - cd packages/; ./makedeb.sh ci; cp *.deb /release/; cd .. - - rm -rf build/ - name: build-arch image: archlinux/base:latest @@ -30,6 +60,7 @@ steps: - name: cache path: /release commands: + - rm -rf build/ || true - pacman -Sy && pacman -S --noconfirm base-devel git sudo wget - "echo 'Set disable_coredump false' >> /etc/sudo.conf" - "mkdir /home/build && useradd --home /home/build --shell=/bin/false build && usermod -L build && chown build:build /home/build && echo 'build ALL=(ALL) NOPASSWD: ALL' >> /etc/sudoers && echo 'root ALL=(ALL) NOPASSWD: ALL' >> /etc/sudoers" diff --git a/AppVeyor/appveyor.yml b/AppVeyor/appveyor.yml deleted file mode 100644 index 2cea32f..0000000 --- a/AppVeyor/appveyor.yml +++ /dev/null @@ -1,29 +0,0 @@ -environment: - QTDIR: C:\Qt\5.9\mingw53_32 -platform: x86 -build_script: - - dir - - mkdir build - - cd build - - set PATH=%PATH%;%QTDIR%\bin;C:\Qt\Tools\mingw530_32\bin;C:\MinGW\msys\1.0\bin - - git submodule update --init --recursive - - curl -kLO https://ffmpeg.zeranoe.com/builds/win64/dev/ffmpeg-3.3.2-win64-dev.zip - - 7z x ffmpeg-3.3.2-win64-dev.zip - - set FFMPEG_DEV_PATH=%CD%\ffmpeg-3.3.2-win64-dev - - curl -kLO https://ffmpeg.zeranoe.com/builds/win64/shared/ffmpeg-3.3.2-win64-shared.zip - - 7z x ffmpeg-3.3.2-win64-shared.zip - - set FFMPEG_SHARED_PATH=%cd%\ffmpeg-3.3.2-win64-shared - - curl -v -L --http1.1 --tlsv1.2 "https://downloads.sourceforge.net/project/qtav/depends/QtAV-depends-windows-x86+x64.7z" -o av.7z - - 7z x av.7z > NUL - - xcopy ffmpeg-3.3.2-win64-shared\* %QTDIR% /e /i /Y - - xcopy ffmpeg-3.3.2-win64-dev\* %QTDIR% /e /i /Y - - xcopy QtAV-depends-windows-x86+x64\* %QTDIR% /e /i /Y - - qmake CONFIG+=nopkg ../KShare.pro - - mingw32-make.exe -j%NUMBER_OF_PROCESSORS% - - copy src\release\kshare.exe ..\KShare.exe - - cd .. - - bash AppVeyor\make_installer.sh -artifacts: - - path: '*_v*.exe' - - path: '*_v*.zip' - name: Portable version diff --git a/README.md b/README.md index 5a713dd..fa0026c 100644 --- a/README.md +++ b/README.md @@ -2,10 +2,10 @@ A [ShareX](https://getsharex.com/) inspired cross platform utility written with Qt. Originally written by [ArsenArsen](https://github.com/ArsenArsen) and here enhanced with [these](https://github.com/Gurkengewuerz/KShare/projects/1) features. -| | Linux | Windows | -|--------|-------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| master | [![Build Status](https://giteaci.mc8051.de/api/badges/Gurkengewuerz/KShare/status.svg?ref=refs/heads/master)](https://giteaci.mc8051.de/Gurkengewuerz/KShare) | [![Build status](https://ci.appveyor.com/api/projects/status/ujxmg1dk7f5p8ijh/branch/master?svg=true)](https://ci.appveyor.com/project/Gurkengewuerz/kshare/branch/master) | -| dev | [![Build Status](https://giteaci.mc8051.de/api/badges/Gurkengewuerz/KShare/status.svg?ref=refs/heads/dev)](https://giteaci.mc8051.de/Gurkengewuerz/KShare) | [![Build status](https://ci.appveyor.com/api/projects/status/ujxmg1dk7f5p8ijh/branch/dev?svg=true)](https://ci.appveyor.com/project/Gurkengewuerz/kshare/branch/dev) | +## Buildstatus (Arch, Ubuntu/Debian and Windows (MXE)) +**master**|**dev** +:-----:|:-----: +[![Build Status](https://giteaci.mc8051.de/api/badges/Gurkengewuerz/KShare/status.svg?ref=refs/heads/master)](https://giteaci.mc8051.de/Gurkengewuerz/KShare)| [![Build Status](https://giteaci.mc8051.de/api/badges/Gurkengewuerz/KShare/status.svg?ref=refs/heads/dev)](https://giteaci.mc8051.de/Gurkengewuerz/KShare) [Artifacts](https://artifacts.mc8051.de/Gurkengewuerz/KShare) diff --git a/AppVeyor/make_installer.sh b/packages/windows/make_installer.sh similarity index 100% rename from AppVeyor/make_installer.sh rename to packages/windows/make_installer.sh From 613a51b812a0ea146c3df6f6a63094efd21b709d Mon Sep 17 00:00:00 2001 From: Gurkengewuerz Date: Tue, 2 Jun 2020 17:31:23 +0200 Subject: [PATCH 2/4] init submodule only once --- .drone.yml | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/.drone.yml b/.drone.yml index 43bee24..ed3339c 100644 --- a/.drone.yml +++ b/.drone.yml @@ -7,6 +7,11 @@ platform: arch: amd64 steps: + - name: submodules + image: alpine/git + commands: + - git submodule update --recursive --remote + - name: build-mxe image: ubuntu:bionic volumes: @@ -15,8 +20,6 @@ steps: commands: - rm -rf build/ || true - apt-get update && apt-get install -yqq wget gnupg2 curl rsync p7zip git - - git submodule sync - - git submodule update --init - export VER=$(cat src/main.cpp | grep setApplicationVersion | sed "s/\\s*a.setApplicationVersion(\"//g" | sed "s/\");//g") - mkdir build && pwd && ls -lahR . - cd build @@ -46,8 +49,6 @@ steps: - rm -rf build/ || true - apt-get update -yqq && apt-get install -yqq build-essential cmake \gcc g++ qt5-default qt5-qmake qtmultimedia5-dev libqt5svg5-dev libx11-dev libavformat-dev libavcodec-dev libavutil-dev libswscale-dev libqt5x11extras5-dev libxcb-util-dev libxcb-cursor-dev libxcb1-dev - qmake --version - - git submodule sync - - git submodule update --init - mkdir build && pwd && ls -lahR . - cd build && pwd && ls; qmake ..; make -j2; cd .. - mkdir /release || true From 5f2de7de05f17006be3b2aecff20ec9446922cec Mon Sep 17 00:00:00 2001 From: Gurkengewuerz Date: Tue, 2 Jun 2020 17:33:52 +0200 Subject: [PATCH 3/4] updated .drone.yml --- .drone.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.drone.yml b/.drone.yml index ed3339c..5f7cd5c 100644 --- a/.drone.yml +++ b/.drone.yml @@ -18,9 +18,9 @@ steps: - name: cache path: /release commands: + - export KSHAREVER=$(cat src/main.cpp | grep setApplicationVersion | sed "s/\\s*a.setApplicationVersion(\"//g" | sed "s/\");//g") - rm -rf build/ || true - apt-get update && apt-get install -yqq wget gnupg2 curl rsync p7zip git - - export VER=$(cat src/main.cpp | grep setApplicationVersion | sed "s/\\s*a.setApplicationVersion(\"//g" | sed "s/\");//g") - mkdir build && pwd && ls -lahR . - cd build - wget -qO - https://pkg.mxe.cc/repos/apt/client-conf/mxeapt.gpg | apt-key add - @@ -37,7 +37,7 @@ steps: - cp src/release/kshare.exe dist/KShare.exe - /usr/lib/mxe/tools/copydlldeps.sh --infile dist/KShare.exe --destdir dist/ --recursivesrcdir /usr/lib/mxe/usr/x86_64-w64-mingw32.shared/ --srcdir ../src/ --copy --enforcedir /usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/plugins/platforms/ --objdump /usr/lib/mxe/usr/bin/x86_64-w64-mingw32.shared-objdump - mkdir dist/mediaservice; cp /usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/plugins/mediaservice/dsengine.dll dist/mediaservice - - cd dist/; cp KShare.exe /release/KShare_v${VER}.exe; zip -r /release/win_kshare_v${VER}_portable.zip * + - cd dist/; cp KShare.exe /release/KShare_v${KSHAREVER}.exe; zip -r /release/win_kshare_v${KSHAREVER}_portable.zip * - name: build-ubuntu image: buildpack-deps:19.10 @@ -45,14 +45,14 @@ steps: - name: cache path: /release commands: - - export VER=$(cat src/main.cpp | grep setApplicationVersion | sed "s/\\s*a.setApplicationVersion(\"//g" | sed "s/\");//g") + - export KSHAREVER=$(cat src/main.cpp | grep setApplicationVersion | sed "s/\\s*a.setApplicationVersion(\"//g" | sed "s/\");//g") - rm -rf build/ || true - apt-get update -yqq && apt-get install -yqq build-essential cmake \gcc g++ qt5-default qt5-qmake qtmultimedia5-dev libqt5svg5-dev libx11-dev libavformat-dev libavcodec-dev libavutil-dev libswscale-dev libqt5x11extras5-dev libxcb-util-dev libxcb-cursor-dev libxcb1-dev - qmake --version - mkdir build && pwd && ls -lahR . - cd build && pwd && ls; qmake ..; make -j2; cd .. - mkdir /release || true - - cp build/src/kshare /release/kshare_v${VER} + - cp build/src/kshare /release/kshare_v${KSHAREVER} - cd packages/; ./makedeb.sh ci; cp *.deb /release/; cd .. - name: build-arch From df9a7cc096a33d2853e2a4eb3f9c812c45b66211 Mon Sep 17 00:00:00 2001 From: Gurkengewuerz Date: Tue, 2 Jun 2020 17:39:47 +0200 Subject: [PATCH 4/4] ci is so trial and error --- .drone.yml | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/.drone.yml b/.drone.yml index 5f7cd5c..8baab4d 100644 --- a/.drone.yml +++ b/.drone.yml @@ -10,7 +10,7 @@ steps: - name: submodules image: alpine/git commands: - - git submodule update --recursive --remote + - git submodule update --init --recursive - name: build-mxe image: ubuntu:bionic @@ -18,13 +18,12 @@ steps: - name: cache path: /release commands: - - export KSHAREVER=$(cat src/main.cpp | grep setApplicationVersion | sed "s/\\s*a.setApplicationVersion(\"//g" | sed "s/\");//g") - rm -rf build/ || true - apt-get update && apt-get install -yqq wget gnupg2 curl rsync p7zip git - mkdir build && pwd && ls -lahR . - cd build - wget -qO - https://pkg.mxe.cc/repos/apt/client-conf/mxeapt.gpg | apt-key add - - - echo "deb https://pkg.mxe.cc/repos/apt/ bionic main" >> /etc/apt/sources.list + - echo 'deb https://pkg.mxe.cc/repos/apt/ bionic main' >> /etc/apt/sources.list - apt-get update && apt-get install -yqq mxe-x86-64-w64-mingw32.shared-qtbase mxe-x86-64-w64-mingw32.shared-qtmultimedia mxe-x86-64-w64-mingw32.shared-qttools mxe-x86-64-w64-mingw32.shared-qtwinextras - apt-get install -yqq mxe-x86-64-w64-mingw32.shared-ffmpeg - export PATH=/usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/bin:$PATH @@ -37,7 +36,8 @@ steps: - cp src/release/kshare.exe dist/KShare.exe - /usr/lib/mxe/tools/copydlldeps.sh --infile dist/KShare.exe --destdir dist/ --recursivesrcdir /usr/lib/mxe/usr/x86_64-w64-mingw32.shared/ --srcdir ../src/ --copy --enforcedir /usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/plugins/platforms/ --objdump /usr/lib/mxe/usr/bin/x86_64-w64-mingw32.shared-objdump - mkdir dist/mediaservice; cp /usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/plugins/mediaservice/dsengine.dll dist/mediaservice - - cd dist/; cp KShare.exe /release/KShare_v${KSHAREVER}.exe; zip -r /release/win_kshare_v${KSHAREVER}_portable.zip * + - cd dist/; cp KShare.exe "/release/KShare_v${DRONE_COMMIT_SHA:0:9}.exe"; zip -r "/release/win_kshare_v${DRONE_COMMIT_SHA:0:9}_portable.zip" * + - ls -lahR /release/ - name: build-ubuntu image: buildpack-deps:19.10 @@ -45,14 +45,13 @@ steps: - name: cache path: /release commands: - - export KSHAREVER=$(cat src/main.cpp | grep setApplicationVersion | sed "s/\\s*a.setApplicationVersion(\"//g" | sed "s/\");//g") - rm -rf build/ || true - apt-get update -yqq && apt-get install -yqq build-essential cmake \gcc g++ qt5-default qt5-qmake qtmultimedia5-dev libqt5svg5-dev libx11-dev libavformat-dev libavcodec-dev libavutil-dev libswscale-dev libqt5x11extras5-dev libxcb-util-dev libxcb-cursor-dev libxcb1-dev - qmake --version - mkdir build && pwd && ls -lahR . - cd build && pwd && ls; qmake ..; make -j2; cd .. - mkdir /release || true - - cp build/src/kshare /release/kshare_v${KSHAREVER} + - cp build/src/kshare "/release/kshare_v${DRONE_COMMIT_SHA:0:9}" - cd packages/; ./makedeb.sh ci; cp *.deb /release/; cd .. - name: build-arch