diff --git a/.github/workflows/Dockerfile_gcc b/.github/workflows/Dockerfile_gcc new file mode 100644 index 00000000..4bcde88a --- /dev/null +++ b/.github/workflows/Dockerfile_gcc @@ -0,0 +1,38 @@ +FROM gcc:#GCC# + +RUN apt-get update && apt-get install -y --force-yes \ + unzip \ + wget \ + python3 \ + python3-dev \ + libpython3-dev \ + qtbase5-dev \ + qtbase5-private-dev \ + qtchooser \ + qt5-qmake \ + qtbase5-dev-tools \ + qttools5-dev \ + qtdeclarative5-dev \ + libqt5svg5* \ + libqt5xmlpatterns5* \ + libqt5multimedia5* \ + libqt5multimediawidgets5* \ + libqt5qml5* \ + libqt5quickwidgets5* \ + qtmultimedia5-dev +RUN apt-get clean + +RUN mkdir -p work + +COPY . work/ + +WORKDIR work + +ARG QT_SELECT=qt5 +RUN uname -a; gcc --version | grep "gcc"; python3 --version; qmake --version + +RUN qmake -r PythonQt.pro \ + PYTHON_VERSION=$(python3 --version | cut -d " " -f 2 | cut -d "." -f1,2) \ + PYTHON_DIR=$(which python3 | xargs dirname | xargs dirname) + +CMD ["make"] diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 00000000..e077e1cc --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,27 @@ +name: Build + +on: + push: + branches: + - master + pull_request: + + +jobs: + build: + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + runs-on: [ubuntu-latest] + gcc: [7, 9, 11] + + steps: + - uses: actions/checkout@v3 + - name: Setup docker container + shell: bash + run: | + cat $GITHUB_WORKSPACE/.github/workflows/Dockerfile_gcc | sed 's/#GCC#/${{ matrix.gcc }}/' > ./Dockerfile + docker build -t pythonqt -f ./Dockerfile . + - name: Run docker + run: docker run -t pythonqt