]> code.delx.au - refind/blob - Makefile
Shim/MOK fine-tuning & support for building drivers with GNU-EFI
[refind] / Makefile
1 # Makefile for rEFInd
2 CC=gcc
3 CXX=g++
4 CXXFLAGS=-O2 -fpic -D_REENTRANT -D_GNU_SOURCE -Wall -g
5 NAMES=refind
6 SRCS=$(NAMES:=.c)
7 OBJS=$(NAMES:=.o)
8 HEADERS=$(NAMES:=.h)
9 LOADER_DIR=refind
10 FS_DIR=filesystems
11 LIBEG_DIR=libeg
12 MOK_DIR=mok
13 EFILIB_DIR=EfiLib
14
15 # Build rEFInd, including libeg
16 all: tiano
17
18 gnuefi:
19 make -C $(LIBEG_DIR)
20 make -C $(MOK_DIR)
21 make -C $(LOADER_DIR)
22 # make -C $(FS_DIR) all_gnuefi
23
24 fs:
25 make -C $(FS_DIR)
26
27 fs_gnuefi:
28 make -C $(FS_DIR) all_gnuefi
29
30 tiano:
31 make AR_TARGET=EfiLib -C $(EFILIB_DIR) -f Make.tiano
32 make AR_TARGET=libeg -C $(LIBEG_DIR) -f Make.tiano
33 make AR_TARGET=mok -C $(MOK_DIR) -f Make.tiano
34 make BUILDME=refind DLL_TARGET=refind -C $(LOADER_DIR) -f Make.tiano
35
36 clean:
37 make -C $(LIBEG_DIR) clean
38 make -C $(MOK_DIR) clean
39 make -C $(LOADER_DIR) clean
40 make -C $(EFILIB_DIR) clean -f Make.tiano
41 make -C $(FS_DIR) clean
42 rm -f include/*~
43
44 # NOTE TO DISTRIBUTION MAINTAINERS:
45 # The "install" target installs the program directly to the ESP
46 # and it modifies the *CURRENT COMPUTER's* NVRAM. Thus, you should
47 # *NOT* use this target as part of the build process for your
48 # binary packages (RPMs, Debian packages, etc.). (Gentoo could
49 # use it in an ebuild, though....) You COULD, however, copy the
50 # files to a directory somewhere (/usr/share/refind or whatever)
51 # and then call install.sh as part of the binary package
52 # installation process.
53
54 install:
55 ./install.sh
56
57 # DO NOT DELETE