summaryrefslogtreecommitdiff
path: root/libre/linux-libre-api-headers/PKGBUILD
blob: 5efe23584265f819f3ae93cfc8dc79962c834aa8 (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
# $Id: PKGBUILD 211667 2014-04-23 02:10:08Z allan $
# Maintainer (Arch): Allan McRae <allan@archlinux.org>
# Maintainer: André Silva <emulatorman@parabola.nu>
# Contributor: Luke Shumaker <lukeshu@sbcglobal.net>

# toolchain build order: linux-libre-api-headers->glibc->binutils->gcc->binutils->glibc

pkgname=linux-libre-api-headers
_pkgbasever=3.14-gnu
_pkgver=3.14.1-gnu

_srcname=linux-${_pkgbasever%-*}
_archpkgver=${_pkgver%-*}
pkgver=${_pkgver//-/_}
pkgrel=1.2
pkgdesc="Kernel headers sanitized for use in userspace"
arch=('i686' 'x86_64' 'mips64el')
url="http://www.gnu.org/software/libc"
license=('GPL2')
provides=( "linux-api-headers=${_archpkgver}")
conflicts=('linux-api-headers')
replaces=( 'linux-api-headers')
source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_pkgbasever}/linux-libre-${_pkgbasever}.tar.xz"
        "http://linux-libre.fsfla.org/pub/linux-libre/releases/${_pkgver}/patch-${_pkgbasever}-${_pkgver}.xz"
        linux-3.14-xattr_header.patch)
md5sums=('c108ec52eeb2a9b9ddbb8d12496ff25f'
         '2b4862b3c76011e66e536f18fbf0fb27'
         '22926521588b2e95f3c2a2cb428e7cf9')

prepare() {
  cd "${srcdir}/${_srcname}"

  # add upstream patch
  if [ "${_pkgbasever}" != "${_pkgver}" ]; then
    patch -p1 -i "${srcdir}/patch-${_pkgbasever}-${_pkgver}"
  fi

  # fix xattr.h dual inclusion issues
  # https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/patch/?id=ea1a8217
  patch -p1 -i "$srcdir"/linux-3.14-xattr_header.patch
}

build() {
  cd "${srcdir}/${_srcname}"

  make mrproper
  make headers_check
}

package() {
  cd "${srcdir}/${_srcname}"
  make INSTALL_HDR_PATH="${pkgdir}"/usr headers_install

  # use headers from libdrm
  rm -r "${pkgdir}"/usr/include/drm
  
  # clean-up unnecessary files generated during install
  find "${pkgdir}" \( -name .install -o -name ..install.cmd \) -delete
}