192b3c733c
directories and use .PATH to lookup the source files. (Formerly, the libs were built from the source dirs, with MAKEOBJDIR set to the compilation directory.) This solves 2 problems: -"mkdep" and "make" are now consistent about the file lookup, this fixes bad interactions with amd reported in PR bin/7374 (Arne Juul) and lossage reported by Andrew Gillham ("obj" dirs and relative paths still don't work well together) -kernel compile trees can be moved around without forcing a new "make depend" - fixing PR kern/4021 by Martin Husemann
84 lines
2.3 KiB
Makefile
84 lines
2.3 KiB
Makefile
# $NetBSD: Makefile.inc,v 1.12 1999/05/07 14:28:51 drochner Exp $
|
|
#
|
|
# Configuration variables (default values are below):
|
|
#
|
|
# S must be set to the top of the 'sys' tree.
|
|
# SADST may be set to the location of the directory where library
|
|
# objects are to be built. Defaults to ${.OBJDIR}/lib/sa.
|
|
# SA_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'.
|
|
# SAMISCCPPFLAGS
|
|
# Miscellaneous cpp flags to be passed to the library's Makefile
|
|
# when building.
|
|
# SAMISCMAKEFLAGS
|
|
# 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:
|
|
SADST?= ${.OBJDIR}/lib/sa
|
|
SA_AS?= library
|
|
SADOTDIR?= ../../.
|
|
|
|
SADIR= ${S:S@^.@${SADOTDIR}@:Q}/lib/libsa
|
|
.if (${SA_AS} == "obj")
|
|
SALIB= ${SADST}/libsa.o
|
|
SALIB_PROF= ${SADST}/libsa.po
|
|
.else
|
|
SALIB= ${SADST}/libsa.a
|
|
SALIB_PROF= ${SADST}/libsa_p.a
|
|
.endif
|
|
|
|
SAMAKE= \
|
|
cd ${SADST} && ${MAKE} -f ${SADIR:Q}/Makefile \
|
|
SADIR=${SADIR:Q} \
|
|
CC=${CC:Q} CFLAGS=${CFLAGS:Q} \
|
|
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} \
|
|
SACPPFLAGS=${CPPFLAGS:S@^-I.@-I${SADOTDIR}@g:Q} \
|
|
SAMISCCPPFLAGS=${SAMISCCPPFLAGS:Q} \
|
|
${SAMISCMAKEFLAGS}
|
|
|
|
${SALIB}: .NOTMAIN __always_make_salib
|
|
@echo making sure the sa library is up to date...
|
|
.if (${SA_AS} == "library")
|
|
@${SAMAKE} libsa.a
|
|
.else
|
|
@${SAMAKE} libsa.o
|
|
.endif
|
|
|
|
${SALIB_PROF}: .NOTMAIN __always_make_salib
|
|
@echo making sure the profiled sa library is up to date...
|
|
.if (${SA_AS} == "library")
|
|
@${SAMAKE} libsa_p.a
|
|
.else
|
|
@${SAMAKE} libsa.po
|
|
.endif
|
|
|
|
clean: .NOTMAIN cleansalib
|
|
cleansalib: .NOTMAIN __always_make_salib
|
|
@echo cleaning the sa library objects
|
|
@${SAMAKE} clean
|
|
|
|
cleandir distclean: .NOTMAIN cleandirsalib
|
|
cleandirsalib: .NOTMAIN __always_make_salib
|
|
@echo cleandiring the sa library objects
|
|
@${SAMAKE} cleandir
|
|
|
|
depend: .NOTMAIN dependsalib
|
|
dependsalib: .NOTMAIN __always_make_salib
|
|
@echo depending the sa library objects
|
|
@${SAMAKE} depend
|
|
|
|
__always_make_salib: .NOTMAIN
|
|
@mkdir -p ${SADST}
|
|
|
|
.PHONY: __always_make_salib
|
|
.PHONY: cleansalib cleandirsalib dependsalib
|