]>
Commit | Line | Data |
---|---|---|
33bf0acc TL |
1 | #!/usr/bin/make -f |
2 | SHELL=/bin/bash | |
3 | ||
4 | # this is a simplified version from the upstream package | |
5 | ||
6 | DEB_BUILD_ARCH ?= $(shell dpkg-architecture -qDEB_BUILD_ARCH) | |
7 | ||
8 | EDK2_TOOLCHAIN = GCC5 # for GCC5 and newer, LTO enabled | |
9 | export $(EDK2_TOOLCHAIN)_AARCH64_PREFIX=aarch64-linux-gnu- | |
10 | ||
11 | ifeq ($(DEB_BUILD_ARCH),amd64) | |
12 | EDK2_BUILD_ARCH=X64 | |
13 | EDK2_HOST_ARCH=X64 | |
14 | endif | |
15 | ifeq ($(DEB_BUILD_ARCH),arm64) | |
16 | EDK2_BUILD_ARCH=AARCH64 | |
17 | endif | |
18 | ||
19 | # Clear variables used internally by the edk2 build system | |
20 | undefine WORKSPACE | |
21 | undefine ECP_SOURCE | |
22 | undefine EDK_SOURCE | |
23 | undefine EFI_SOURCE | |
24 | undefine EDK_TOOLS_PATH | |
25 | undefine CONF_PATH | |
26 | ||
27 | %: | |
28 | dh $@ | |
29 | ||
30 | override_dh_auto_build: build-ovmf | |
31 | ||
32 | setup-build: | |
33 | cp -a debian/Logo.bmp MdeModulePkg/Logo/Logo.bmp | |
34 | make -C BaseTools ARCH=$(EDK2_BUILD_ARCH) | |
35 | # call this when building too, it modifies the shell environment | |
36 | . ./edksetup.sh | |
37 | ||
38 | build-ovmf: EDK2_ARCH_DIR=X64 | |
39 | build-ovmf: EDK2_HOST_ARCH=X64 | |
40 | build-ovmf: setup-build | |
41 | set -e; . ./edksetup.sh; \ | |
42 | OvmfPkg/build.sh \ | |
43 | -b RELEASE \ | |
44 | -a $(EDK2_HOST_ARCH) \ | |
45 | -t $(EDK2_TOOLCHAIN) \ | |
46 | -DSECURE_BOOT_ENABLE=FALSE \ | |
47 | -DFD_SIZE_2MB \ | |
48 | -n $$(getconf _NPROCESSORS_ONLN) | |
49 | ||
50 | override_dh_auto_clean: | |
51 | set -e; \ | |
52 | if [ -d BaseTools/Source/C/bin ]; then \ | |
53 | . ./edksetup.sh; build clean; \ | |
54 | make -C BaseTools clean; \ | |
55 | fi | |
56 | rm -rf Conf/.cache Build .pc-post | |
57 | ||
58 | .PHONY: setup-build build-ovmf |