1 export USE_APPLE_PB_SUPPORT
= all
6 SDK
= -isysroot
$(SDKROOT
)
7 CC
= $(shell xcrun
-find
-sdk
$(SDKROOT
) cc)
10 ifeq "clang" "$(notdir $(CC))"
11 CFLAGS
= $(OFLAG
) -g
-Wall \
12 -I
$(SRCROOT
) -I
$(SRCROOT
)/..
/include -I
$(OFILE_DIR
) $(SDK
)
14 CFLAGS
= $(OFLAG
) -g
-Wall
$(X_CFLAGS
) \
15 -I
$(SRCROOT
) -I
$(SRCROOT
)/..
/include -I
$(OFILE_DIR
) $(SDK
)
18 USE_DEPENDENCY_FILE
:= $(shell if
[ "$(notdir $(CC))" != "mwccppc" ] && \
19 [ "$(RC_XBS)" != "YES" ]; then \
20 echo YES
; else echo NO
; \
23 LIBSTUFF
= -L
$(SYMROOT
)/..
/libstuff
-lstuff
25 ifneq "" "$(wildcard /bin/mkdirs)"
28 MKDIRS
= /bin
/mkdir
-p
33 OFILE_DIR
= $(OBJROOT
)
37 EFIBINDIR
= /usr
/local
/efi
/bin
39 CFILES
= makerelocs.c mtoc.c
41 INSTALL_FILES
= $(CFILES
) Makefile notes
43 PROGS
= makerelocs.NEW mtoc.NEW
45 all: $(OFILE_DIR
) $(SYMROOT
) $(PROGS
)
48 vers_string
-c
$(VERS_STRING_FLAGS
) cctools_efi
> $(OFILE_DIR
)/$@
49 echo
"const char apple_version[]= " \"`vers_string $(VERS_STRING_FLAGS) -f cctools`\" ";" >> \
52 ifeq "NO" "$(USE_DEPENDENCY_FILE)"
54 $(CC
) $(CFLAGS
) $(RC_CFLAGS
) -c
-o
$(OFILE_DIR
)/$*.o
$<
57 $(CC
) $(CFLAGS
) $(RC_CFLAGS
) -c
-MD
-dependency-file \
58 $(OFILE_DIR
)/$*.d
-o
$(OFILE_DIR
)/$*.o
$<
59 md
-d
-u
$(OFILE_DIR
)/Makedep
$(OFILE_DIR
)/$*.d
62 makerelocs.NEW
: makerelocs.o vers.o
63 $(CC
) $(RC_CFLAGS
) -nostdlib
-r \
64 -o
$(OBJROOT
)/makerelocs.private.o \
65 $(OFILE_DIR
)/makerelocs.o
$(OFILE_DIR
)/vers.o
$(LIBSTUFF
)
66 $(CC
) $(RC_CFLAGS
) $(SDK
) -o
$(SYMROOT
)/makerelocs.NEW \
67 $(OFILE_DIR
)/makerelocs.private.o
69 mtoc.NEW
: mtoc.o vers.o
70 $(CC
) $(RC_CFLAGS
) -nostdlib
-r \
71 -o
$(OBJROOT
)/mtoc.private.o \
72 $(OFILE_DIR
)/mtoc.o
$(OFILE_DIR
)/vers.o
$(LIBSTUFF
)
73 $(CC
) $(RC_CFLAGS
) $(SDK
) -o
$(SYMROOT
)/mtoc.NEW \
74 $(OFILE_DIR
)/mtoc.private.o
78 $(SYMROOT
)/makerelocs.NEW \
85 $(OFILE_DIR
)/makerelocs.o \
86 $(OFILE_DIR
)/makerelocs.private.o \
88 $(OFILE_DIR
)/mtoc.private.o
89 -rm -f
$(OFILE_DIR
)/Makedep make.out
94 $(MKDIRS
) $(DSTROOT
)$(EFIBINDIR
)
95 # For now don't overwrite the existing makerelocs program the efitools project
97 # install -c -s -m 555 $(SYMROOT)/makerelocs.NEW \
98 # $(DSTROOT)$(EFIBINDIR)/makerelocs
99 install -c
-s
-m
555 $(SYMROOT
)/mtoc.NEW \
100 $(DSTROOT
)$(EFIBINDIR
)/mtoc
105 gnutar cf
- $(INSTALL_FILES
) |
(cd
$(SRCROOT
); gnutar xf
-)
106 chmod
444 $(SRCROOT
)/*
108 $(OFILE_DIR
) $(SYMROOT
):
111 -include $(OFILE_DIR
)/Makedep