summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 92497b5dd2aab815b8513b496a21210deda1b493 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
# Maintainer: Donald Carr <sirspudd@gmail.com>

# Set up the pi for Qt compilation. On Arch I just install chromium which pulls in all the deps
# Mount/copy this prepped rasp rootfs somewhere and set this path as the sysroot below
echo "Set your sysroot" && exit 1
_sysroot=/mnt/pi

_piver=pi
_mkspec="linux-r${_piver}-g++"
pkgname=qpi
pkgver=5.6.0
_pkgver=${pkgver}-beta
_pipkgname=qt-everywhere-opensource-src-${_pkgver}
pkgrel=1
pkgdesc="Qt for the ${_piver}, coz this shouldnt be obtuse"
arch=("x86_64" "i686")
url="http://www.qt.io"
license=("LGPL3")
makedepends=("git" "pkgconfig" "gcc" "arm-bcm2708-linux-gnueabi")
source=("git://github.com/sirspudd/mkspecs.git" "https://download.qt.io/development_releases/qt/5.6/${_pkgver}/single/${_pipkgname}.tar.gz")
sha256sums=("SKIP" "d69103ec34b3775edfa47581b14ee9a20789d4b0d7d26220fb92f2cd32eb06f9")
#sha256sums=("SKIP" "eb7c430f9f73d8f9d1a0d328e8a77549ffcf3b9915bee0c3dd6ae9ceffb86ef9")

build() {
  local _srcdir="${srcdir}/${_pipkgname}"
  local _bindir="${_srcdir}-build"

  # Qt tries to do the right thing and stores these, breaking cross compilation
  unset LDFLAGS
  unset CFLAGS
  unset CXXFLAGS

  # Get our mkspec
  cp -r "${srcdir}/mkspecs/${_mkspec}" ${_srcdir}/qtbase/mkspecs/devices

  mkdir -p ${_bindir}
  cd ${_bindir}

  # skipping because of errors: qtwayland
  # skipping on principle: qtscript
  # skipping because of the target in question: widgets qtwebengine qtwebchannel

  ${_srcdir}/configure \
    -release \
    -confirm-license \
    -opensource \
    -prefix /opt/qt-${_pkgver}-${_piver} \
    -opengl es2 \
    \
    -no-widgets \
    -make libs \
    \
    -skip qtscript \
    -skip qtwebengine \
    -skip qtwebchannel \
    -skip qtwayland \
    \
    -sysroot ${_sysroot} \
    -device ${_mkspec} \
    -device-option CROSS_COMPILE=/opt/arm-bcm2708hardfp-linux-gnueabi/bin/arm-bcm2708hardfp-linux-gnueabi-

  make
}

package() {
  local _srcdir="${srcdir}/${_pipkgname}"
  local _bindir="${_srcdir}-build"

  cd "${_bindir}"
  INSTALL_ROOT="$pkgdir" make install
}