File: rules

package info (click to toggle)
gnu-efi 3.0e-2
  • links: PTS
  • area: main
  • in suites: lenny
  • size: 860 kB
  • ctags: 4,689
  • sloc: ansic: 10,770; asm: 460; makefile: 181
file content (97 lines) | stat: -rwxr-xr-x 2,460 bytes parent folder | download
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
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
#!/usr/bin/make -f

buildarch := $(shell dpkg-architecture -qDEB_BUILD_ARCH)
ifeq ($(buildarch),i386)
	efiarch := ia32
else
  ifeq ($(buildarch),amd64)
	efiarch := x86_64
  else
	efiarch := $(buildarch)
  endif
endif

build: build-stamp
build-stamp:
	dh_testdir

ifeq ($(buildarch),amd64)
	mkdir build-ia32
	$(MAKE) -C build-ia32 -f ../Makefile SRCDIR=.. ARCH=ia32
endif

ifeq ($(buildarch),i386)
	mkdir build-x86_64
	$(MAKE) -C build-x86_64 -f ../Makefile SRCDIR=.. ARCH=x86_64
endif

	$(MAKE)

	touch build-stamp

clean:
	dh_testdir
	dh_testroot
	rm -f build-stamp configure-stamp
	[ ! -f Makefile ] || $(MAKE) clean
	rm -rf build-ia32 build-x86_64
	dh_clean

install: build
	dh_testdir
	dh_testroot
	dh_clean -k
	dh_installdirs -A

	# gnu-efi files
	cp -r inc/* debian/gnu-efi/usr/include/efi/
	rm debian/gnu-efi/usr/include/efi/Makefile
	rm debian/gnu-efi/usr/include/efi/inc.mak
	rm debian/gnu-efi/usr/include/efi/make.inf
	rm debian/gnu-efi/usr/include/efi/makefile.hdr
	rm debian/gnu-efi/usr/include/efi/protocol/make.inf
	rm debian/gnu-efi/usr/include/efi/protocol/makefile.hdr
	rm debian/gnu-efi/usr/include/efi/protocol/readme.txt
	cp gnuefi/*.a debian/gnu-efi/usr/lib/
	cp gnuefi/elf_$(efiarch)_efi.lds debian/gnu-efi/usr/lib
	cp gnuefi/crt0-efi-$(efiarch).o debian/gnu-efi/usr/lib
	cp lib/*.a debian/gnu-efi/usr/lib/

ifeq ($(buildarch),amd64)
	mkdir -p debian/gnu-efi/emul/ia32-linux/usr/lib
	cp build-ia32/gnuefi/*.a debian/gnu-efi/emul/ia32-linux/usr/lib/
	cp gnuefi/elf_ia32_efi.lds debian/gnu-efi/emul/ia32-linux/usr/lib/
	cp build-ia32/gnuefi/crt0-efi-ia32.o debian/gnu-efi/emul/ia32-linux/usr/lib/
	cp build-ia32/lib/*.a debian/gnu-efi/emul/ia32-linux/usr/lib/
endif

ifeq ($(buildarch),i386)
	mkdir -p debian/gnu-efi/usr/lib64
	cp build-x86_64/gnuefi/*.a debian/gnu-efi/usr/lib64/
	cp gnuefi/elf_x86_64_efi.lds debian/gnu-efi/usr/lib64/
	cp build-x86_64/gnuefi/crt0-efi-x86_64.o debian/gnu-efi/usr/lib64/
	cp build-x86_64/lib/*.a debian/gnu-efi/usr/lib64/
endif

# Build architecture-independent files here.
binary-indep: build install
# We have nothing to do by default.

# Build architecture-dependent files here.
binary-arch: build install
	dh_testdir
	dh_testroot
	dh_installdocs -a
	dh_installchangelogs -a ChangeLog
	dh_link
	dh_strip
	dh_compress
	dh_fixperms
	dh_installdeb
	dh_shlibdeps
	dh_gencontrol
	dh_md5sums
	dh_builddeb

binary: binary-indep binary-arch
.PHONY: build clean binary-indep binary-arch binary install configure