89 lines
2.9 KiB
Makefile
89 lines
2.9 KiB
Makefile
# $NetBSD: Makefile.inc,v 1.5 2018/05/27 01:14:50 christos Exp $
|
|
#
|
|
# Configuration variables (default values are below):
|
|
#
|
|
# S must be set to the top of the 'sys' tree.
|
|
# GNUEFIDST may be set to the location of the directory where library
|
|
# objects are to be built. Defaults to ${.OBJDIR}/lib/gnuefi.
|
|
# GNUEFI_AS may be set to 'obj' to build a object from the library's
|
|
# object files. (Otherwise, a library will be built.)
|
|
# Defaults to 'library'.
|
|
# GNUEFIMISCCPPFLAGS
|
|
# Miscellaneous cpp flags to be passed to the library's Makefile
|
|
# when building.
|
|
# GNUEFIMISCMAKEFLAGS
|
|
# Miscellaneous flags to be passed to the library's Makefile when
|
|
# building. See library's Makefile for more details about
|
|
# supported flags and their default values.
|
|
|
|
# Default values:
|
|
GNUEFIDST?= ${.OBJDIR}/lib/gnuefi
|
|
GNUEFI_AS?= library
|
|
GNUEFIDOTDIR?= ../../.
|
|
|
|
CWARNFLAGS.clang+= -Wno-format-extra-args
|
|
|
|
GNUEFIDIR= ${S:S@^.@${GNUEFIDOTDIR}@:q}/lib/libgnuefi
|
|
.if (${GNUEFI_AS} == "obj")
|
|
GNUEFILIB= ${GNUEFIDST}/libgnuefi.o
|
|
GNUEFILIB_PROF= ${GNUEFIDST}/libgnuefi.po
|
|
.else
|
|
GNUEFILIB= ${GNUEFIDST}/libgnuefi.a
|
|
GNUEFILIB_PROF= ${GNUEFIDST}/libgnuefi_p.a
|
|
.endif
|
|
ZLIBSRCDIR:= ${.PARSEDIR}/../../../common/dist/zlib
|
|
GNUEFIMISCCPPFLAGS+=-I${ZLIBSRCDIR}
|
|
|
|
GNUEFIMAKE= \
|
|
cd ${GNUEFIDST} && ${MAKE} -f ${GNUEFIDIR:q}/Makefile \
|
|
GNUEFIDIR=${GNUEFIDIR:q} \
|
|
CC=${CC:q} CFLAGS=${CFLAGS:q} CPUFLAGS= \
|
|
AS=${AS:q} AFLAGS=${AFLAGS:q} \
|
|
LORDER=${LORDER:q} \
|
|
TSORT=${TSORT:q} \
|
|
LD=${LD:q} STRIP=${STRIP:q} \
|
|
AR=${AR:q} NM=${NM:q} \
|
|
RANLIB=${RANLIB:q} SIZE=${SIZE:q} \
|
|
MACHINE=${MACHINE} MACHINE_ARCH=${MACHINE_ARCH:q} \
|
|
GNUEFICPPFLAGS=${CPPFLAGS:S@^-I.@-I${GNUEFIDOTDIR}@g:q} \
|
|
GNUEFIMISCCPPFLAGS=${GNUEFIMISCCPPFLAGS:q} \
|
|
LIBGNUEFI_ARCH=${LIBGNUEFI_ARCH:q} \
|
|
${GNUEFIMISCMAKEFLAGS}
|
|
|
|
${GNUEFILIB}: .NOTMAIN .MAKE __always_make_gnuefilib
|
|
@echo making sure the gnuefi library is up to date...
|
|
.if (${GNUEFI_AS} == "library")
|
|
@${GNUEFIMAKE} libgnuefi.a
|
|
.else
|
|
@${GNUEFIMAKE} libgnuefi.o
|
|
.endif
|
|
|
|
${GNUEFILIB_PROF}: .NOTMAIN .MAKE __always_make_gnuefilib
|
|
@echo making sure the profiled gnuefi library is up to date...
|
|
.if (${GNUEFI_AS} == "library")
|
|
@${GNUEFIMAKE} libgnuefi_p.a
|
|
.else
|
|
@${GNUEFIMAKE} libgnuefi.po
|
|
.endif
|
|
|
|
clean: .NOTMAIN cleangnuefilib
|
|
cleangnuefilib: .NOTMAIN
|
|
@echo cleaning the gnuefi library objects
|
|
@if [ -d "${GNUEFIDST}" ]; then ${GNUEFIMAKE} clean; fi
|
|
|
|
cleandir distclean: .NOTMAIN cleandirgnuefilib
|
|
cleandirgnuefilib: .NOTMAIN
|
|
@echo cleandiring the gnuefi library objects
|
|
@if [ -d "${GNUEFIDST}" ]; then ${GNUEFIMAKE} cleandir; fi
|
|
|
|
dependall depend: .NOTMAIN dependgnuefilib
|
|
dependgnuefilib: .NOTMAIN .MAKE __always_make_gnuefilib
|
|
@echo depending the gnuefi library objects
|
|
@${GNUEFIMAKE} depend
|
|
|
|
__always_make_gnuefilib: .NOTMAIN
|
|
@mkdir -p ${GNUEFIDST}
|
|
|
|
.PHONY: __always_make_gnuefilib
|
|
.PHONY: cleangnuefilib cleandirgnuefilib dependgnuefilib
|