summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: e783d18adce8653a2319dc8f2a0c5676bfdd93e1 (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
72
73
74
75
76
77
# Maintainer : Keshav P R <skodabenz at rocketmail dot com>
# Contributor: Murtuza Akhtari <inxsible at gmail dot com>

_pkgname="efibootmgr"

pkgname="${_pkgname}-git"
pkgver=20110611
pkgrel=1
pkgdesc="Tool to modify UEFI Firmware Boot Manager Variables. Needs the kernel module 'efivars'."
arch=('i686' 'x86_64')
url="http://linux.dell.com/efibootmgr/"
license=('GPL2')
depends=('zlib')
makedepends=('git')
conflicts=('efibootmgr')
provides=('efibootmgr')
options=(strip purge docs zipman !emptydirs)

source=('efibootmgr_default_to_grub2.patch')
sha256sums=('5306a6f952d17215b129392953ae6551df0e4cf1960a959ab98c60f27fab9b90')

_gitroot="http://linux.dell.com/git/efibootmgr.git"
_gitname="${_pkgname}"


update_git() {
	
	cd "${srcdir}"
	msg "Connecting to GIT server...."
	
	if [ -d "${srcdir}/${_gitname}/" ]
	then
		cd "${srcdir}/${_gitname}/"
		git reset --hard
		git fetch
		git checkout master
		git merge remotes/origin/master
		msg "The local GIT repo has been updated."
	else
		git clone "${_gitroot}" "${_gitname}"
	fi
	
	msg "GIT checkout done or server timeout"
	
}


build() {
	
	update_git
	
	rm -rf "${srcdir}/${_gitname}_build/" || true
	
	cp -r "${srcdir}/${_gitname}" "${srcdir}/${_gitname}_build"
	
	cd "${srcdir}/${_gitname}_build/"
	
	patch -Np1 -i "${srcdir}/efibootmgr_default_to_grub2.patch"
	echo
	
	CFLAGS= make
	echo
	
}


package() {
	
	mkdir -p "${pkgdir}/usr/sbin/"
	mkdir -p "${pkgdir}/usr/share/man/man8/"
	
	cd "${srcdir}/${_gitname}_build/"
	
	install -D -m755 "${srcdir}/${_gitname}_build/src/efibootmgr/efibootmgr" "${pkgdir}/usr/sbin/efibootmgr"
	install -D -m644 "${srcdir}/${_gitname}_build/src/man/man8/efibootmgr.8" "${pkgdir}/usr/share/man/man8/efibootmgr.8"
	
}