mirror of https://github.com/status-im/qzxing.git
commit
678240100c
|
@ -0,0 +1,49 @@
|
||||||
|
#Author: KangLin(kl222@126.com)
|
||||||
|
|
||||||
|
sudo: required
|
||||||
|
dist: trusty
|
||||||
|
|
||||||
|
language: cpp
|
||||||
|
|
||||||
|
cache:
|
||||||
|
- apt: true
|
||||||
|
- directories:
|
||||||
|
- Tools
|
||||||
|
|
||||||
|
compiler:
|
||||||
|
- g++
|
||||||
|
|
||||||
|
jdk: oraclejdk7
|
||||||
|
|
||||||
|
os:
|
||||||
|
- unix
|
||||||
|
|
||||||
|
addons:
|
||||||
|
ssh_known_hosts:
|
||||||
|
- github.com
|
||||||
|
|
||||||
|
env:
|
||||||
|
matrix:
|
||||||
|
- BUILD_TARGERT="linux" QT_VERSION_DIR=5.11 QT_VERSION=5.11.2
|
||||||
|
- BUILD_TARGERT="android_armv7" QT_VERSION_DIR=5.11 QT_VERSION=5.11.2
|
||||||
|
- BUILD_TARGERT="linux" QT_VERSION_DIR=5.10 QT_VERSION=5.10.1
|
||||||
|
- BUILD_TARGERT="android_armv7" QT_VERSION_DIR=5.10 QT_VERSION=5.10.1
|
||||||
|
- BUILD_TARGERT="linux" QT_VERSION_DIR=5.9 QT_VERSION=5.9.7
|
||||||
|
- BUILD_TARGERT="android_armv7" QT_VERSION_DIR=5.9 QT_VERSION=5.9.7
|
||||||
|
|
||||||
|
before_install:
|
||||||
|
- echo "TRAVIS_OS_NAME=${TRAVIS_OS_NAME}"
|
||||||
|
- export DISPLAY=:99.0
|
||||||
|
- sh -e /etc/init.d/xvfb start
|
||||||
|
|
||||||
|
install:
|
||||||
|
- bash ${TRAVIS_BUILD_DIR}/ci/build-install-tools.sh #> /dev/null
|
||||||
|
|
||||||
|
before_script:
|
||||||
|
- source ${TRAVIS_BUILD_DIR}/ci/build_env.sh
|
||||||
|
|
||||||
|
script:
|
||||||
|
- mkdir ${TRAVIS_BUILD_DIR}/build
|
||||||
|
- cd ${TRAVIS_BUILD_DIR}/build
|
||||||
|
- ${QT_ROOT}/bin/qmake -o Makefile CONFIG+=Release ${TRAVIS_BUILD_DIR}/src/QZXing.pro
|
||||||
|
- make -f Makefile
|
|
@ -0,0 +1,113 @@
|
||||||
|
#Author: KangLin(kl222@126.com)
|
||||||
|
|
||||||
|
version: '0.1.1.{build}'
|
||||||
|
|
||||||
|
image: Visual Studio 2015
|
||||||
|
|
||||||
|
configuration:
|
||||||
|
- release
|
||||||
|
- debug
|
||||||
|
|
||||||
|
environment:
|
||||||
|
matrix:
|
||||||
|
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
|
||||||
|
QT_ROOT: C:/Qt/5.11/msvc2017_64
|
||||||
|
- QT_ROOT: C:/Qt/5.11/msvc2015
|
||||||
|
- QT_ROOT: C:/Qt/5.11/mingw53_32
|
||||||
|
|
||||||
|
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
|
||||||
|
QT_ROOT: C:/Qt/5.10/msvc2017_64
|
||||||
|
- QT_ROOT: C:/Qt/5.10/msvc2015_64
|
||||||
|
- QT_ROOT: C:/Qt/5.10/msvc2015
|
||||||
|
- QT_ROOT: C:/Qt/5.10/msvc2013_64
|
||||||
|
- QT_ROOT: C:/Qt/5.10/mingw53_32
|
||||||
|
|
||||||
|
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
|
||||||
|
QT_ROOT: C:/Qt/5.9/msvc2017_64
|
||||||
|
- QT_ROOT: C:/Qt/5.9/msvc2015_64
|
||||||
|
- QT_ROOT: C:/Qt/5.9/msvc2015
|
||||||
|
- QT_ROOT: C:/Qt/5.9/msvc2013_64
|
||||||
|
- QT_ROOT: C:/Qt/5.9/mingw53_32
|
||||||
|
|
||||||
|
- QT_ROOT: C:/Qt/5.7.0/msvc2015
|
||||||
|
- QT_ROOT: C:/Qt/5.7.0/mingw53_32
|
||||||
|
|
||||||
|
- QT_ROOT: C:/Qt/5.6/msvc2015_64
|
||||||
|
- QT_ROOT: C:/Qt/5.6/msvc2015
|
||||||
|
- QT_ROOT: C:/Qt/5.6/msvc2013_64
|
||||||
|
- QT_ROOT: C:/Qt/5.6/msvc2013
|
||||||
|
|
||||||
|
init:
|
||||||
|
|
||||||
|
install:
|
||||||
|
- for /f "delims=" %%i in ('git describe --tags') do (set BUILD_VERSION=%%i)
|
||||||
|
- if "%BUILD_VERSION%" == "" for /f "delims=" %%i in ('git rev-parse HEAD') do (set BUILD_VERSION=%%i)
|
||||||
|
- echo BUILD_VERSION=%BUILD_VERSION%
|
||||||
|
- if NOT "%QT_ROOT%" == "NO" for /f "delims=" %%i in ('%QT_ROOT%/bin/qmake -query QT_VERSION') do (set QT_VERSION=%%i)
|
||||||
|
- echo "QT_VERSION:%QT_VERSION"
|
||||||
|
- if NOT "%QT_ROOT%" == "NO" for /f "delims=" %%i in ('%QT_ROOT%/bin/qmake -query QMAKE_XSPEC') do (set QMAKE_XSPEC=%%i)
|
||||||
|
- echo "QMAKE_XSPEC=%QMAKE_XSPEC%"
|
||||||
|
- set TOOLCHAIN_VERSION=""
|
||||||
|
- ps: >-
|
||||||
|
if (($env:QMAKE_XSPEC).Contains("msvc"))
|
||||||
|
{
|
||||||
|
$env:MAKE="nmake"
|
||||||
|
if (($env:QT_ROOT).Contains("_64"))
|
||||||
|
{
|
||||||
|
$env:varch="amd64"
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$env:varch="x86"
|
||||||
|
}
|
||||||
|
if (($env:QT_ROOT).Contains("2017"))
|
||||||
|
{
|
||||||
|
$env:TOOLCHAIN_VERSION="15"
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (($env:QT_ROOT).Contains("2015"))
|
||||||
|
{
|
||||||
|
$env:TOOLCHAIN_VERSION="14"
|
||||||
|
}elseif (($env:QT_ROOT).Contains("2013"))
|
||||||
|
{
|
||||||
|
$env:TOOLCHAIN_VERSION="12"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$env:MAKE="mingw32-make"
|
||||||
|
$env:PATH="C:\Qt\Tools\mingw530_32;$env:PATH"
|
||||||
|
}
|
||||||
|
|
||||||
|
- if NOT "%TOOLCHAIN_VERSION%"=="" if %TOOLCHAIN_VERSION% LSS 15 (call "C:/Program Files (x86)/Microsoft Visual Studio %TOOLCHAIN_VERSION%.0/VC/vcvarsall.bat" %varch%) else (call "C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/VC/Auxiliary/Build/vcvarsall.bat" %varch%)
|
||||||
|
- echo "cl "
|
||||||
|
- cl
|
||||||
|
|
||||||
|
build_script:
|
||||||
|
- mkdir "%APPVEYOR_BUILD_FOLDER%/build"
|
||||||
|
- cd "%APPVEYOR_BUILD_FOLDER%/build"
|
||||||
|
- call "%QT_ROOT%/bin/qmake.exe" CONFIG+=%Configuration% PREFIX="%APPVEYOR_BUILD_FOLDER%/install" "%APPVEYOR_BUILD_FOLDER%/src/QZXing.pro"
|
||||||
|
- call %MAKE%
|
||||||
|
- call %MAKE% install
|
||||||
|
|
||||||
|
test_script:
|
||||||
|
|
||||||
|
artifacts:
|
||||||
|
- path: install
|
||||||
|
name: QZXing_$(QMAKE_XSPEC)$(TOOLCHAIN_VERSION)_$(CONFIGURATION)_$(BUILD_VERSION)
|
||||||
|
type: zip
|
||||||
|
|
||||||
|
# whitelist branches to avoid testing feature branches twice (as branch and as pull request)
|
||||||
|
branches:
|
||||||
|
only:
|
||||||
|
- master
|
||||||
|
|
||||||
|
deploy:
|
||||||
|
provider: GitHub
|
||||||
|
#token: https://github.com/settings/tokens encode token: https://ci.appveyor.com/tools/encrypt
|
||||||
|
auth_token:
|
||||||
|
secure: #TODO: set your token
|
||||||
|
on:
|
||||||
|
appveyor_repo_tag: true # deploy on tag push only
|
|
@ -0,0 +1,78 @@
|
||||||
|
#!/bin/bash
|
||||||
|
#Author: KangLin(kl222@126.com)
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
SOURCE_DIR="`pwd`"
|
||||||
|
echo $SOURCE_DIR
|
||||||
|
TOOLS_DIR=${SOURCE_DIR}/Tools
|
||||||
|
echo ${TOOLS_DIR}
|
||||||
|
|
||||||
|
if [ ! -f "${TOOLS_DIR}" ]; then
|
||||||
|
mkdir -p ${TOOLS_DIR}
|
||||||
|
fi
|
||||||
|
|
||||||
|
function function_common()
|
||||||
|
{
|
||||||
|
cd ${TOOLS_DIR}
|
||||||
|
|
||||||
|
# Qt download and install:https://github.com/benlau/qtci
|
||||||
|
if [ -n "${QT_VERSION}" ]; then
|
||||||
|
QT_DIR=`pwd`/Qt/${QT_VERSION}
|
||||||
|
if [ ! -d "${QT_DIR}" ]; then
|
||||||
|
wget -c --no-check-certificate -nv http://download.qt.io/official_releases/qt/${QT_VERSION_DIR}/${QT_VERSION}/qt-opensource-linux-x64-${QT_VERSION}.run
|
||||||
|
bash ${SOURCE_DIR}/ci/qt-installer.sh qt-opensource-linux-x64-${QT_VERSION}.run ${QT_DIR}
|
||||||
|
rm qt-opensource-linux-x64-${QT_VERSION}.run
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
function function_android()
|
||||||
|
{
|
||||||
|
cd ${TOOLS_DIR}
|
||||||
|
|
||||||
|
#Download android ndk
|
||||||
|
if [ ! -d "`pwd`/android-ndk" ]; then
|
||||||
|
wget -c -nv http://dl.google.com/android/ndk/android-ndk-r10e-linux-x86_64.bin
|
||||||
|
chmod u+x android-ndk-r10e-linux-x86_64.bin
|
||||||
|
./android-ndk-r10e-linux-x86_64.bin > /dev/null
|
||||||
|
mv android-ndk-r10e android-ndk
|
||||||
|
rm android-ndk-r10e-linux-x86_64.bin
|
||||||
|
fi
|
||||||
|
|
||||||
|
cd ${TOOLS_DIR}
|
||||||
|
|
||||||
|
#Download android sdk
|
||||||
|
if [ ! -d "`pwd`/android-sdk" ]; then
|
||||||
|
wget -c -nv https://dl.google.com/android/android-sdk_r24.4.1-linux.tgz
|
||||||
|
tar xf android-sdk_r24.4.1-linux.tgz
|
||||||
|
mv android-sdk-linux android-sdk
|
||||||
|
rm android-sdk_r24.4.1-linux.tgz
|
||||||
|
(sleep 5 ; while true ; do sleep 1 ; printf 'y\r\n' ; done ) \
|
||||||
|
| android-sdk/tools/android update sdk -u -t tool,android-18,android-24,extra,platform,platform-tools,build-tools-25
|
||||||
|
fi
|
||||||
|
|
||||||
|
function_common
|
||||||
|
cd ${SOURCE_DIR}
|
||||||
|
}
|
||||||
|
|
||||||
|
function function_linux()
|
||||||
|
{
|
||||||
|
function_common
|
||||||
|
|
||||||
|
cd ${SOURCE_DIR}
|
||||||
|
}
|
||||||
|
|
||||||
|
case ${BUILD_TARGERT} in
|
||||||
|
android*)
|
||||||
|
function_android
|
||||||
|
;;
|
||||||
|
linux)
|
||||||
|
function_linux
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "There aren't ${BUILD_TARGERT}"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
cd ${SOURCE_DIR}
|
|
@ -0,0 +1,24 @@
|
||||||
|
#Author: KangLin(kl222@126.com)
|
||||||
|
|
||||||
|
SOURCE_DIR="`pwd`"
|
||||||
|
echo $SOURCE_DIR
|
||||||
|
TOOLS_DIR=${SOURCE_DIR}/Tools
|
||||||
|
|
||||||
|
cd ${TOOLS_DIR}
|
||||||
|
|
||||||
|
case "${BUILD_TARGERT}" in
|
||||||
|
linux)
|
||||||
|
QT_DIR=`pwd`/Qt/${QT_VERSION}
|
||||||
|
export QT_ROOT=${QT_DIR}/${QT_VERSION}/gcc_64
|
||||||
|
;;
|
||||||
|
android*)
|
||||||
|
export ANDROID_NDK_ROOT=`pwd`/android-ndk
|
||||||
|
export ANDROID_NDK=$ANDROID_NDK_ROOT
|
||||||
|
|
||||||
|
export ANDROID_SDK_ROOT=`pwd`/android-sdk
|
||||||
|
export ANDROID_SDK=$ANDROID_SDK_ROOT
|
||||||
|
|
||||||
|
QT_DIR=`pwd`/Qt/${QT_VERSION}
|
||||||
|
export QT_ROOT=${QT_DIR}/${QT_VERSION}/android_armv7
|
||||||
|
;;
|
||||||
|
esac
|
|
@ -0,0 +1,133 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
#http://stackoverflow.com/questions/25105269/silent-install-qt-run-installer-on-ubuntu-server
|
||||||
|
#http://doc.qt.io/qtinstallerframework/noninteractive.html
|
||||||
|
#参考:https://github.com/benlau/qtci
|
||||||
|
# https://github.com/mjscosta/qt-silent-installer
|
||||||
|
|
||||||
|
set -e #quit on error
|
||||||
|
|
||||||
|
if [ $# -lt 2 ];
|
||||||
|
then
|
||||||
|
echo qt-installer.sh qt-installer-file output_path
|
||||||
|
exit -1
|
||||||
|
fi
|
||||||
|
|
||||||
|
export PATH=$PATH:$PWD
|
||||||
|
export WORKDIR=$PWD
|
||||||
|
INSTALLER=$1
|
||||||
|
OUTPUT=$2
|
||||||
|
SCRIPT="$(mktemp /tmp/tmp.XXXXXXXXX)"
|
||||||
|
case $BUILD_TARGERT in
|
||||||
|
android_arm*)
|
||||||
|
SELECTEDPACKAGES=android_armv7
|
||||||
|
;;
|
||||||
|
android_x86)
|
||||||
|
SELECTEDPACKAGES=android_x86
|
||||||
|
;;
|
||||||
|
linux)
|
||||||
|
SELECTEDPACKAGES=gcc_64
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "Aach[$RABBIT_ARCH] don't suppoert"
|
||||||
|
esac
|
||||||
|
|
||||||
|
cat <<EOF > $SCRIPT
|
||||||
|
function Controller() {
|
||||||
|
installer.autoRejectMessageBoxes();
|
||||||
|
installer.installationFinished.connect(function() {
|
||||||
|
gui.clickButton(buttons.NextButton);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
function log() {
|
||||||
|
var msg = ["QTCI: "].concat([].slice.call(arguments));
|
||||||
|
|
||||||
|
console.log(msg.join(" "));
|
||||||
|
}
|
||||||
|
|
||||||
|
Controller.prototype.WelcomePageCallback = function() {
|
||||||
|
gui.clickButton(buttons.NextButton, 5000);
|
||||||
|
}
|
||||||
|
|
||||||
|
Controller.prototype.CredentialsPageCallback = function() {
|
||||||
|
gui.clickButton(buttons.CommitButton);
|
||||||
|
}
|
||||||
|
|
||||||
|
Controller.prototype.ComponentSelectionPageCallback = function() {
|
||||||
|
var components = installer.components();
|
||||||
|
log("Available components: " + components.length);
|
||||||
|
for (var i = 0 ; i < components.length ;i++) {
|
||||||
|
log(components[i].name);
|
||||||
|
}
|
||||||
|
log("Select components");
|
||||||
|
function trim(str) {
|
||||||
|
return str.replace(/^ +/,"").replace(/ *$/,"");
|
||||||
|
}
|
||||||
|
var widget = gui.currentPageWidget();
|
||||||
|
widget.deselectAll();
|
||||||
|
var packages = trim("$SELECTEDPACKAGES").split(",");
|
||||||
|
if (packages.length > 0 && packages[0] !== "") {
|
||||||
|
|
||||||
|
for (var i in packages) {
|
||||||
|
var pkg = trim(packages[i]);
|
||||||
|
for (var i = 0 ; i < components.length ;i++) {
|
||||||
|
if(components[i].name.indexOf(pkg) != -1)
|
||||||
|
{
|
||||||
|
log("Select " + components[i].name);
|
||||||
|
widget.selectComponent(trim(components[i].name));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
log("Use default component list");
|
||||||
|
}
|
||||||
|
|
||||||
|
gui.clickButton(buttons.NextButton);
|
||||||
|
}
|
||||||
|
|
||||||
|
Controller.prototype.IntroductionPageCallback = function() {
|
||||||
|
gui.clickButton(buttons.NextButton);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Controller.prototype.TargetDirectoryPageCallback = function() {
|
||||||
|
var widget = gui.currentPageWidget();
|
||||||
|
|
||||||
|
if (widget != null) {
|
||||||
|
widget.TargetDirectoryLineEdit.setText("$OUTPUT");
|
||||||
|
}
|
||||||
|
|
||||||
|
gui.clickButton(buttons.NextButton);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
Controller.prototype.LicenseAgreementPageCallback = function() {
|
||||||
|
var widget = gui.currentPageWidget();
|
||||||
|
|
||||||
|
if (widget != null) {
|
||||||
|
widget.AcceptLicenseRadioButton.setChecked(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
gui.clickButton(buttons.NextButton);
|
||||||
|
}
|
||||||
|
|
||||||
|
Controller.prototype.StartMenuDirectoryPageCallback = function() {
|
||||||
|
gui.clickButton(buttons.CommitButton);
|
||||||
|
}
|
||||||
|
|
||||||
|
Controller.prototype.ReadyForInstallationPageCallback = function() {
|
||||||
|
gui.clickButton(buttons.CommitButton);
|
||||||
|
}
|
||||||
|
|
||||||
|
Controller.prototype.FinishedPageCallback = function() {
|
||||||
|
var widget = gui.currentPageWidget();
|
||||||
|
widget.LaunchQtCreatorCheckBoxForm.launchQtCreatorCheckBox.setChecked(false);
|
||||||
|
gui.clickButton(buttons.FinishButton);
|
||||||
|
}
|
||||||
|
EOF
|
||||||
|
|
||||||
|
chmod u+x $1
|
||||||
|
|
||||||
|
$1 -v --script $SCRIPT
|
||||||
|
|
Loading…
Reference in New Issue