Steps for a Fotowall release

  1. Update the Changelog (README.markdown)
  2. Make the 3 packages: source, win32, osx. (see the commands in README.markdown)
  3. Make the Release GFX (using the changelog)
  4. Upload packages to Google code downloads
  5. Meta update on opensource/fotowall/.meta
  6. Web-Update: Fotowall: A. upload the screen B. create the new download links C. update the changelog page D. update the 'quick news' in the homepage
  7. Web-Update: Google: A. insert changelog B. update the page quick for the 0.7.1. fotowalls
  8. Web-Update: kde-apps and qt-apps: new links, new screenshots, new changelog
  9. Blog: post new entry

Steps to build qt-static 5.9.1

  1. WIN-MINGW-32: Execute the following in powershell:
    ##### ENRICOS
    Set-StrictMode -Version 3
    $QtSrcUrl = "https://download.qt.io/archive/qt/5.9/5.9.1/single/qt-everywhere-opensource-src-5.9.1.zip"
    $QtStaticDir = "C:\p\apps\qt-static"
    $QtVersion = "5.9.1"
    $MingwDir = "C:\p\apps\Qt\Tools\mingw530_32"
    $QtDir = "$QtStaticDir\$QtVersion" # C:\p\apps\qt-static\5.9.1
    function Create-Directory ([string]$Directory)
    {
        [void] (New-Item -Path $Directory -ItemType "directory" -Force)
    }
    Create-Directory $QtStaticDir\src
    Create-Directory $QtDir # C:\p\apps\qt-static\5.9.1
    $QtSrcFileName = Split-Path -Leaf $QtSrcUrl   #  qt-everywhere-opensource-src-5.9.1.zip
    $QtSrcDir = "$QtStaticDir\src\$((Get-Item $QtStaticDir\src\$QtSrcFileName).BaseName)"   # C:\p\apps\qt-static\src\qt-everywhere-opensource-src-5.9.1
    # NOW UNPACK INTO C:\p\apps\qt-static\src\qt-everywhere-opensource-src-5.9.1
    # NOW PATCH FILE: $QtSrcDir\qtbase\mkspecs\win32-g++\qmake.conf, appending the following:
    # [QT-STATIC-PATCH]
    QMAKE_LFLAGS += -static -static-libgcc
    QMAKE_CFLAGS_RELEASE -= -O2
    QMAKE_CFLAGS_RELEASE += -Os -momit-leaf-frame-pointer
    DEFINES += QT_STATIC_BUILD
    
    $env:Path = "$MingwDir\bin;$MingwDir\opt\bin;$env:SystemRoot\system32;$env:SystemRoot"
    $env:LANG = "en"
    $env:QT_INSTALL_PREFIX = $QtDir
    Push-Location $QtSrcDir
    cmd /c "configure.bat -static -release -platform win32-g++ -prefix $QtDir -qt-zlib -qt-pcre -qt-libpng -qt-libjpeg -qt-freetype -opengl desktop -no-openssl -opensource -confirm-license -make libs -nomake tools -nomake examples -nomake tests"
    mingw32-make -k -j4
    mingw32-make -k install
    # NOW PATCH TARGET FILE $QtDir\mkspecs\win32-g++\qmake.conf, appending the following:
    CONFIG += static
    
    Exit-Script
    #########
        
  2. Ubuntu-16.04: Execute the following in Term:
    tar xf tarball.tar.xz
    sudo apt-get install build-essential libdbus-1-dev
    sudo apt-get install libx11-dev libxext-dev libxfixes-dev libxi-dev libxrender-dev
    sudo apt-get install libxcb1-dev libx11-xcb-dev libxcb-glx0-dev libxcb-keysyms1-dev libxcb-image0-dev libxcb-shm0-dev libxcb-icccm4-dev libxcb-sync0-dev libxcb-xfixes0-dev libxcb-shape0-dev libxcb-randr0-dev libxcb-render-util0-dev libxcb-xinerama0-dev
    sudo apt-get install libfontconfig1-dev libfreetype6-dev
    sudo apt-get install mesa-common-dev libglu1-mesa libglu1-mesa-dev libgl1-mesa-glx libgl1-mesa-dev
    #sudo apt-get install freeglut3 freeglut3-dev libglew1.5 libglew1.5-dev
    #sudo apt-get install qtbase5-dev
    export PKG_CONFIG_PATH=/usr/lib/x86_64-linux-gnu/pkgconfig/  # this is to find the 'fontconfig' package
    # customizations: +opengl-desktop, +freetype, +xcb-internal, +ssl (for flickr)
    ./configure -static -release -prefix /home/enrico/qt/static -qt-zlib -qt-pcre -qt-libpng -qt-libjpeg -ssl -opensource -confirm-license -make libs -nomake tools -nomake examples -nomake tests -qpa xcb -qt-xcb -opengl desktop -fontconfig