Index: head/share/mk/bsd.obj.mk =================================================================== --- head/share/mk/bsd.obj.mk (revision 291348) +++ head/share/mk/bsd.obj.mk (revision 291349) @@ -1,207 +1,210 @@ # $FreeBSD$ # # The include file handles creating the 'obj' directory # and cleaning up object files, etc. # # +++ variables +++ # # CLEANDIRS Additional directories to remove for the clean target. # # CLEANFILES Additional files to remove for the clean target. # # MAKEOBJDIR A pathname for the directory where the targets # are built. Note: MAKEOBJDIR is an *environment* variable # and works properly only if set as an environment variable, # not as a global or command line variable! # # E.g. use `env MAKEOBJDIR=temp-obj make' # # MAKEOBJDIRPREFIX Specifies somewhere other than /usr/obj to root the object # tree. Note: MAKEOBJDIRPREFIX is an *environment* variable # and works properly only if set as an environment variable, # not as a global or command line variable! # # E.g. use `env MAKEOBJDIRPREFIX=/somewhere/obj make' # # NO_OBJ Do not create object directories. This should not be set # if anything is built. # # +++ targets +++ # # clean: # remove ${CLEANFILES}; remove ${CLEANDIRS} and all contents. # # cleandir: # remove the build directory (and all its contents) created by obj # # obj: # create build directory. # .if !target(____) ____: .include .if ${MK_AUTO_OBJ} == "yes" # it is done by now objwarn: obj: CANONICALOBJDIR= ${.OBJDIR} .if defined(NO_OBJ) # but this makefile does not want it! .OBJDIR: ${.CURDIR} .endif .elif defined(MAKEOBJDIRPREFIX) CANONICALOBJDIR:=${MAKEOBJDIRPREFIX}${.CURDIR} .elif defined(MAKEOBJDIR) && ${MAKEOBJDIR:M/*} != "" CANONICALOBJDIR:=${MAKEOBJDIR} +OBJTOP?= ${MAKEOBJDIR} .else CANONICALOBJDIR:=/usr/obj${.CURDIR} .endif + +OBJTOP?= ${.OBJDIR:S,${.CURDIR},,}${SRCTOP} # # Warn of unorthodox object directory. # # The following directories are tried in order for ${.OBJDIR}: # # 1. ${MAKEOBJDIRPREFIX}/`pwd` # 2. ${MAKEOBJDIR} # 3. obj.${MACHINE} # 4. obj # 5. /usr/obj/`pwd` # 6. ${.CURDIR} # # If ${.OBJDIR} is constructed using canonical cases 1 or 5, or # case 2 (using MAKEOBJDIR), don't issue a warning. Otherwise, # issue a warning differentiating between cases 6 and (3 or 4). # objwarn: .if !defined(NO_OBJ) && ${.OBJDIR} != ${CANONICALOBJDIR} && \ !(defined(MAKEOBJDIRPREFIX) && exists(${CANONICALOBJDIR}/)) && \ !(defined(MAKEOBJDIR) && exists(${MAKEOBJDIR}/)) .if ${.OBJDIR} == ${.CURDIR} @${ECHO} "Warning: Object directory not changed from original ${.CURDIR}" .elif exists(${.CURDIR}/obj.${MACHINE}/) || exists(${.CURDIR}/obj/) @${ECHO} "Warning: Using ${.OBJDIR} as object directory instead of\ canonical ${CANONICALOBJDIR}" .endif .endif .if !defined(NO_OBJ) .if !target(obj) obj: .PHONY @if ! test -d ${CANONICALOBJDIR}/; then \ mkdir -p ${CANONICALOBJDIR}; \ if ! test -d ${CANONICALOBJDIR}/; then \ ${ECHO} "Unable to create ${CANONICALOBJDIR}."; \ exit 1; \ fi; \ ${ECHO} "${CANONICALOBJDIR} created for ${.CURDIR}"; \ fi .for dir in ${SRCS:H:O:u} @if ! test -d ${CANONICALOBJDIR}/${dir}/; then \ mkdir -p ${CANONICALOBJDIR}/${dir}; \ if ! test -d ${CANONICALOBJDIR}/${dir}/; then \ ${ECHO} "Unable to create ${CANONICALOBJDIR}/${dir}."; \ exit 1; \ fi; \ ${ECHO} "${CANONICALOBJDIR}/${dir} created for ${.CURDIR}"; \ fi .endfor .endif .if !target(objlink) objlink: @if test -d ${CANONICALOBJDIR}/; then \ rm -f ${.CURDIR}/obj; \ ln -s ${CANONICALOBJDIR} ${.CURDIR}/obj; \ else \ echo "No ${CANONICALOBJDIR} to link to - do a make obj."; \ fi .endif .endif # !defined(NO_OBJ) # # where would that obj directory be? # .if !target(whereobj) whereobj: @echo ${.OBJDIR} .endif .if ${CANONICALOBJDIR} != ${.CURDIR} && exists(${CANONICALOBJDIR}/) cleanobj: @-rm -rf ${CANONICALOBJDIR} .else cleanobj: clean cleandepend .endif @if [ -L ${.CURDIR}/obj ]; then rm -f ${.CURDIR}/obj; fi # Tell bmake not to look for generated files via .PATH NOPATH_FILES+= ${CLEANFILES} .if !empty(NOPATH_FILES) .NOPATH: ${NOPATH_FILES} .endif .if !target(clean) clean: .if defined(CLEANFILES) && !empty(CLEANFILES) rm -f ${CLEANFILES} .endif .if defined(CLEANDIRS) && !empty(CLEANDIRS) -rm -rf ${CLEANDIRS} .endif .endif cleandir: cleanobj .include .if make(destroy*) && defined(OBJROOT) # this (rm -rf objdir) is much faster and more reliable than cleaning. # just in case we are playing games with these... _OBJDIR?= ${.OBJDIR} _CURDIR?= ${.CURDIR} # destroy almost everything destroy: destroy-all destroy-all: # just remove our objdir destroy-arch: .NOMETA .if ${_OBJDIR} != ${_CURDIR} cd ${_CURDIR} && rm -rf ${_OBJDIR} .endif .if defined(HOST_OBJTOP) destroy-host: destroy.host destroy.host: .NOMETA cd ${_CURDIR} && rm -rf ${HOST_OBJTOP}/${RELDIR:N.} .endif .if make(destroy-all) && ${RELDIR} == "." destroy-all: destroy-stage .endif # remove the stage tree destroy-stage: .NOMETA .if defined(STAGE_ROOT) cd ${_CURDIR} && rm -rf ${STAGE_ROOT} .endif # allow parallel destruction _destroy_machine_list = common host ${ALL_MACHINE_LIST} .for m in ${_destroy_machine_list:O:u} destroy-all: destroy.$m .if !target(destroy.$m) destroy.$m: .NOMETA .if ${_OBJDIR} != ${_CURDIR} cd ${_CURDIR} && rm -rf ${OBJROOT}$m*/${RELDIR:N.} .endif .endif .endfor .endif .endif # !target(____) Index: head/share/mk/local.dirdeps.mk =================================================================== --- head/share/mk/local.dirdeps.mk (revision 291348) +++ head/share/mk/local.dirdeps.mk (revision 291349) @@ -1,104 +1,104 @@ # $FreeBSD$ .if !target(_DIRDEP_USE) # we are the 1st makefile .if !defined(MK_CLANG) .include "${SRCTOP}/share/mk/src.opts.mk" .endif # DEP_MACHINE is set before we get here, this may not be. DEP_RELDIR ?= ${RELDIR} .if ${.TARGETS:Uall:M*/*} && empty(DIRDEPS) # This little trick let's us do # # mk -f dirdeps.mk some/dir.i386,bsd # DIRDEPS := ${.TARGETS:M*/*} ${.TARGETS:Nall}: all .endif # making universe is special .if defined(UNIVERSE_GUARD) # these should be done by now DIRDEPS_FILTER+= N*.host .endif # pseudo machines get no qualification .for m in host common M_dep_qual_fixes += C;($m),[^/.,]*$$;\1; .endfor #.info M_dep_qual_fixes=${M_dep_qual_fixes} # Cheat for including src.libnames.mk ____: # Pull in _INTERNALLIBS .include # Host libraries should mostly be excluded from the build so the # host version in /usr/lib is used. Internal libraries need to be # allowed to be built though since they are never installed. _need_host_libs= .for lib in ${_INTERNALLIBS} -_need_host_libs+= ${LIB${lib:tu}DIR:S,^${ROOTOBJDIR}/,,} +_need_host_libs+= ${LIB${lib:tu}DIR:S,^${OBJTOP}/,,} .endfor N_host_libs:= ${cd ${SRCTOP} && echo lib/lib*:L:sh:${_need_host_libs:${M_ListToSkip}}:${M_ListToSkip}} DIRDEPS_FILTER.host = \ ${N_host_libs} \ Ninclude* \ Nlib/csu* \ Nlib/[mn]* \ Ngnu/lib/csu* \ Ngnu/lib/lib[a-r]* \ Nusr.bin/xinstall* \ DIRDEPS_FILTER+= \ Nbin/cat.host \ ${DIRDEPS_FILTER.xtras:U} .endif # reset this each time DIRDEPS_FILTER.xtras= .if ${DEP_MACHINE:Npkgs*} != "" DIRDEPS_FILTER.xtras+= Nusr.bin/clang/clang.host .endif .if ${DEP_MACHINE} != "host" # this is how we can handle optional dependencies .if ${DEP_RELDIR} == "lib/libc" DIRDEPS += lib/libc_nonshared .if ${MK_SSP:Uno} != "no" DIRDEPS += gnu/lib/libssp/libssp_nonshared .endif .else DIRDEPS_FILTER.xtras+= Nlib/libc_nonshared .endif # some optional things .if ${MK_CTF} == "yes" && ${DEP_RELDIR:Mcddl/usr.bin/ctf*} == "" DIRDEPS += \ cddl/usr.bin/ctfconvert.host \ cddl/usr.bin/ctfmerge.host .endif .endif .if ${MK_CLANG} == "yes" && ${DEP_RELDIR:Nlib/clang/lib*:Nlib/libc*} == "" DIRDEPS+= lib/clang/include .endif .if ${MK_STAGING} == "yes" # we need targets/pseudo/stage to prep the stage tree .if ${DEP_RELDIR} != "targets/pseudo/stage" DIRDEPS += targets/pseudo/stage .endif .endif DEP_MACHINE_ARCH = ${MACHINE_ARCH.${DEP_MACHINE}} CSU_DIR.${DEP_MACHINE_ARCH} ?= csu/${DEP_MACHINE_ARCH} CSU_DIR := ${CSU_DIR.${DEP_MACHINE_ARCH}} BOOT_MACHINE_DIR:= ${BOOT_MACHINE_DIR.${DEP_MACHINE}} KERNEL_NAME:= ${KERNEL_NAME.${DEP_MACHINE}} Index: head/share/mk/netbsd-tests.test.mk =================================================================== --- head/share/mk/netbsd-tests.test.mk (revision 291348) +++ head/share/mk/netbsd-tests.test.mk (revision 291349) @@ -1,42 +1,40 @@ # $FreeBSD$ .if !target(__netbsd_tests.test.mk__) __netbsd_tests.test.mk__: -OBJTOP?= ${.OBJDIR:S/${RELDIR}//} - TESTSRC?= ${SRCTOP}/contrib/netbsd-tests/${RELDIR:H} .if !exists(${TESTSRC}/) .error "Please define TESTSRC to the absolute path of the test sources, e.g. $${SRCTOP}/contrib/netbsd-tests/lib/libc/stdio" .endif .PATH: ${TESTSRC} LIBNETBSD_SRCDIR= ${SRCTOP}/lib/libnetbsd LIBNETBSD_OBJDIR= ${OBJTOP}/lib/libnetbsd .for t in ${NETBSD_ATF_TESTS_C} CFLAGS.$t+= -I${LIBNETBSD_SRCDIR} -I${SRCTOP}/contrib/netbsd-tests LDFLAGS.$t+= -L${LIBNETBSD_OBJDIR} DPADD.$t+= ${LIBNETBSD} LDADD.$t+= -lnetbsd SRCS.$t?= ${t:C/^/t_/:C/_test$//g}.c .endfor ATF_TESTS_C+= ${NETBSD_ATF_TESTS_C} # A C++ analog isn't provided because there aren't any C++ testcases in # contrib/netbsd-tests .for t in ${NETBSD_ATF_TESTS_SH} ATF_TESTS_SH_SRC_$t?= ${t:C/^/t_/:C/_test$//g}.sh .endfor ATF_TESTS_SH+= ${NETBSD_ATF_TESTS_SH} .endif # vim: syntax=make Index: head/share/mk/src.libnames.mk =================================================================== --- head/share/mk/src.libnames.mk (revision 291348) +++ head/share/mk/src.libnames.mk (revision 291349) @@ -1,437 +1,431 @@ # $FreeBSD$ # # The include file define library names suitable # for INTERNALLIB and PRIVATELIB definition .if !target(____) .error src.libnames.mk cannot be included directly. .endif .if !target(____) ____: .include -.if ${.OBJDIR:S,${.CURDIR},,} != ${.OBJDIR} -ROOTOBJDIR= ${.OBJDIR:S,${.CURDIR},,}${SRCTOP} -.elif defined(OBJTOP) && ${.OBJDIR:M${OBJTOP}*} != "" -ROOTOBJDIR= ${OBJTOP} -.endif - _PRIVATELIBS= \ atf_c \ atf_cxx \ bsdstat \ event \ heimipcc \ heimipcs \ ldns \ sqlite3 \ ssh \ ucl \ unbound _INTERNALLIBS= \ amu \ bsnmptools \ cron \ elftc \ fifolog \ ipf \ lpr \ netbsd \ ntp \ ntpevent \ openbsd \ opts \ parse \ readline \ sl \ sm \ smdb \ smutil \ telnet \ vers _LIBRARIES= \ ${_PRIVATELIBS} \ ${_INTERNALLIBS} \ alias \ archive \ asn1 \ auditd \ avl \ begemot \ bluetooth \ bsdxml \ bsm \ bsnmp \ bz2 \ c \ c_pic \ calendar \ cam \ capsicum \ casper \ com_err \ compiler_rt \ crypt \ crypto \ ctf \ cuse \ cxxrt \ devctl \ devinfo \ devstat \ dialog \ dpv \ dtrace \ dwarf \ edit \ elf \ execinfo \ fetch \ figpar \ geom \ gnuregex \ gpio \ gssapi \ gssapi_krb5 \ hdb \ heimbase \ heimntlm \ heimsqlite \ hx509 \ ipsec \ jail \ kadm5clnt \ kadm5srv \ kafs5 \ kdc \ kiconv \ krb5 \ kvm \ l \ lzma \ m \ magic \ md \ memstat \ mp \ mt \ nandfs \ ncurses \ ncursesw \ netgraph \ ngatm \ nv \ opie \ pam \ panel \ panelw \ pcap \ pcsclite \ pjdlog \ pmc \ proc \ procstat \ pthread \ radius \ readline \ roken \ rpcsec_gss \ rpcsvc \ rt \ rtld_db \ sbuf \ sdp \ sm \ smb \ ssl \ ssp_nonshared \ stdthreads \ supcplusplus \ tacplus \ termcapw \ ufs \ ugidfw \ ulog \ usb \ usbhid \ util \ vmmapi \ wind \ wrap \ xo \ y \ ypclnt \ z _DP_archive= z bz2 lzma bsdxml .if ${MK_OPENSSL} != "no" _DP_archive+= crypto .else _DP_archive+= md .endif _DP_ssl= crypto _DP_ssh= crypto crypt .if ${MK_LDNS} != "no" _DP_ssh+= ldns z .endif _DP_edit= ncursesw .if ${MK_OPENSSL} != "no" _DP_bsnmp= crypto .endif _DP_geom= bsdxml sbuf _DP_cam= sbuf _DP_casper= capsicum nv pjdlog _DP_capsicum= nv _DP_pjdlog= util _DP_opie= md _DP_usb= pthread _DP_unbound= pthread _DP_rt= pthread .if ${MK_OPENSSL} == "no" _DP_radius= md .else _DP_radius= crypto .endif _DP_procstat= kvm util elf .if ${MK_CXX} == "yes" .if ${MK_LIBCPLUSPLUS} != "no" _DP_proc= cxxrt .else _DP_proc= supcplusplus .endif .endif .if ${MK_CDDL} != "no" _DP_proc+= ctf .endif _DP_mp= crypto _DP_memstat= kvm _DP_magic= z _DP_mt= bsdxml _DP_ldns= crypto .if ${MK_OPENSSL} != "no" _DP_fetch= ssl crypto .else _DP_fetch= md .endif _DP_execinfo= elf _DP_dwarf= elf _DP_dpv= dialog figpar util _DP_dialog= ncursesw m _DP_cuse= pthread _DP_atf_cxx= atf_c _DP_devstat= kvm _DP_pam= radius tacplus opie md util .if ${MK_KERBEROS} != "no" _DP_pam+= krb5 .endif .if ${MK_OPENSSH} != "no" _DP_pam+= ssh .endif .if ${MK_NIS} != "no" _DP_pam+= ypclnt .endif _DP_krb5+= asn1 com_err crypt crypto hx509 roken wind heimbase heimipcc \ pthread _DP_gssapi_krb5+= gssapi krb5 crypto roken asn1 com_err _DP_lzma= pthread _DP_ucl= m _DP_vmmapi= util _DP_ctf= z _DP_proc= rtld_db util _DP_dtrace= rtld_db pthread _DP_xo= util # Define spacial cases LDADD_supcplusplus= -lsupc++ LIBATF_C= ${DESTDIR}${LIBDIR}/libprivateatf-c.a LIBATF_CXX= ${DESTDIR}${LIBDIR}/libprivateatf-c++.a LDADD_atf_c= -lprivateatf-c LDADD_atf_cxx= -lprivateatf-c++ .for _l in ${_PRIVATELIBS} LIB${_l:tu}?= ${DESTDIR}${LIBDIR}/libprivate${_l}.a .endfor .for _l in ${_LIBRARIES} .if ${_INTERNALLIBS:M${_l}} LDADD_${_l}_L+= -L${LIB${_l:tu}DIR} .endif DPADD_${_l}?= ${LIB${_l:tu}} .if ${_PRIVATELIBS:M${_l}} LDADD_${_l}?= -lprivate${_l} .else LDADD_${_l}?= ${LDADD_${_l}_L} -l${_l} .endif .if defined(_DP_${_l}) && defined(NO_SHARED) && (${NO_SHARED} != "no" && ${NO_SHARED} != "NO") .for _d in ${_DP_${_l}} DPADD_${_l}+= ${DPADD_${_d}} LDADD_${_l}+= ${LDADD_${_d}} .endfor .endif .endfor DPADD_atf_cxx+= ${DPADD_atf_c} LDADD_atf_cxx+= ${LDADD_atf_c} DPADD_sqlite3+= ${DPADD_pthread} LDADD_sqlite3+= ${LDADD_pthread} DPADD_fifolog+= ${DPADD_z} LDADD_fifolog+= ${LDADD_z} DPADD_ipf+= ${DPADD_kvm} LDADD_ipf+= ${LDADD_kvm} DPADD_mt+= ${DPADD_sbuf} LDADD_mt+= ${LDADD_sbuf} DPADD_dtrace+= ${DPADD_ctf} ${DPADD_elf} ${DPADD_proc} LDADD_dtrace+= ${LDADD_ctf} ${LDADD_elf} ${LDADD_proc} # The following depends on libraries which are using pthread DPADD_hdb+= ${DPADD_pthread} LDADD_hdb+= ${LDADD_pthread} DPADD_kadm5srv+= ${DPADD_pthread} LDADD_kadm5srv+= ${LDADD_pthread} DPADD_krb5+= ${DPADD_pthread} LDADD_krb5+= ${LDADD_pthread} DPADD_gssapi_krb5+= ${DPADD_pthread} LDADD_gssapi_krb5+= ${LDADD_pthread} .for _l in ${LIBADD} DPADD+= ${DPADD_${_l}:Umissing-dpadd_${_l}} LDADD+= ${LDADD_${_l}} .endfor .if defined(DPADD) && ${DPADD:Mmissing-dpadd_*} .error Missing ${DPADD:Mmissing-dpadd_*:S/missing-dpadd_//:S/^/DPADD_/} variable add "${DPADD:Mmissing-dpadd_*:S/missing-dpadd_//}" to _LIBRARIES, _INTERNALLIBS, or _PRIVATELIBS and define "${DPADD:Mmissing-dpadd_*:S/missing-dpadd_//:S/^/LIB/:tu}". .endif -LIBELFTCDIR= ${ROOTOBJDIR}/lib/libelftc +LIBELFTCDIR= ${OBJTOP}/lib/libelftc LIBELFTC?= ${LIBELFTCDIR}/libelftc.a -LIBREADLINEDIR= ${ROOTOBJDIR}/gnu/lib/libreadline/readline +LIBREADLINEDIR= ${OBJTOP}/gnu/lib/libreadline/readline LIBREADLINE?= ${LIBREADLINEDIR}/libreadline.a -LIBOPENBSDDIR= ${ROOTOBJDIR}/lib/libopenbsd +LIBOPENBSDDIR= ${OBJTOP}/lib/libopenbsd LIBOPENBSD?= ${LIBOPENBSDDIR}/libopenbsd.a -LIBSMDIR= ${ROOTOBJDIR}/lib/libsm +LIBSMDIR= ${OBJTOP}/lib/libsm LIBSM?= ${LIBSMDIR}/libsm.a -LIBSMDBDIR= ${ROOTOBJDIR}/lib/libsmdb +LIBSMDBDIR= ${OBJTOP}/lib/libsmdb LIBSMDB?= ${LIBSMDBDIR}/libsmdb.a -LIBSMUTILDIR= ${ROOTOBJDIR}/lib/libsmutil +LIBSMUTILDIR= ${OBJTOP}/lib/libsmutil LIBSMUTIL?= ${LIBSMDBDIR}/libsmutil.a -LIBNETBSDDIR?= ${ROOTOBJDIR}/lib/libnetbsd +LIBNETBSDDIR?= ${OBJTOP}/lib/libnetbsd LIBNETBSD?= ${LIBNETBSDDIR}/libnetbsd.a -LIBVERSDIR?= ${ROOTOBJDIR}/kerberos5/lib/libvers +LIBVERSDIR?= ${OBJTOP}/kerberos5/lib/libvers LIBVERS?= ${LIBVERSDIR}/libvers.a -LIBSLDIR= ${ROOTOBJDIR}/kerberos5/lib/libsl +LIBSLDIR= ${OBJTOP}/kerberos5/lib/libsl LIBSL?= ${LIBSLDIR}/libsl.a -LIBIPFDIR= ${ROOTOBJDIR}/sbin/ipf/libipf +LIBIPFDIR= ${OBJTOP}/sbin/ipf/libipf LIBIPF?= ${LIBIPFDIR}/libipf.a -LIBTELNETDIR= ${ROOTOBJDIR}/lib/libtelnet +LIBTELNETDIR= ${OBJTOP}/lib/libtelnet LIBTELNET?= ${LIBTELNETDIR}/libtelnet.a -LIBCRONDIR= ${ROOTOBJDIR}/usr.sbin/cron/lib +LIBCRONDIR= ${OBJTOP}/usr.sbin/cron/lib LIBCRON?= ${LIBCRONDIR}/libcron.a -LIBNTPDIR= ${ROOTOBJDIR}/usr.sbin/ntp/libntp +LIBNTPDIR= ${OBJTOP}/usr.sbin/ntp/libntp LIBNTP?= ${LIBNTPDIR}/libntp.a -LIBNTPEVENTDIR= ${ROOTOBJDIR}/usr.sbin/ntp/libntpevent +LIBNTPEVENTDIR= ${OBJTOP}/usr.sbin/ntp/libntpevent LIBNTPEVENT?= ${LIBNTPEVENTDIR}/libntpevent.a -LIBOPTSDIR= ${ROOTOBJDIR}/usr.sbin/ntp/libopts +LIBOPTSDIR= ${OBJTOP}/usr.sbin/ntp/libopts LIBOTPS?= ${LIBOPTSDIR}/libopts.a -LIBPARSEDIR= ${ROOTOBJDIR}/usr.sbin/ntp/libparse +LIBPARSEDIR= ${OBJTOP}/usr.sbin/ntp/libparse LIBPARSE?= ${LIBPARSEDIR}/libparse.a -LIBLPRDIR= ${ROOTOBJDIR}/usr.sbin/lpr/common_source +LIBLPRDIR= ${OBJTOP}/usr.sbin/lpr/common_source LIBLPR?= ${LIBOPTSDIR}/liblpr.a -LIBFIFOLOGDIR= ${ROOTOBJDIR}/usr.sbin/fifolog/lib +LIBFIFOLOGDIR= ${OBJTOP}/usr.sbin/fifolog/lib LIBFIFOLOG?= ${LIBOPTSDIR}/libfifolog.a -LIBBSNMPTOOLSDIR= ${ROOTOBJDIR}/usr.sbin/bsnmpd/tools/libbsnmptools +LIBBSNMPTOOLSDIR= ${OBJTOP}/usr.sbin/bsnmpd/tools/libbsnmptools LIBBSNMPTOOLS?= ${LIBBSNMPTOOLSDIR}/libbsnmptools.a -LIBAMUDIR= ${ROOTOBJDIR}/usr.sbin/amd/libamu +LIBAMUDIR= ${OBJTOP}/usr.sbin/amd/libamu LIBAMU?= ${LIBAMUDIR}/libamu/libamu.a # Define a directory for each library. This is useful for adding -L in when # not using a --sysroot or for meta mode bootstrapping when there is no # Makefile.depend. These are sorted by directory. -LIBAVLDIR= ${ROOTOBJDIR}/cddl/lib/libavl -LIBCTFDIR= ${ROOTOBJDIR}/cddl/lib/libctf -LIBDTRACEDIR= ${ROOTOBJDIR}/cddl/lib/libdtrace -LIBNVPAIRDIR= ${ROOTOBJDIR}/cddl/lib/libnvpair -LIBUMEMDIR= ${ROOTOBJDIR}/cddl/lib/libumem -LIBUUTILDIR= ${ROOTOBJDIR}/cddl/lib/libuutil -LIBZFSDIR= ${ROOTOBJDIR}/cddl/lib/libzfs -LIBZFS_COREDIR= ${ROOTOBJDIR}/cddl/lib/libzfs_core -LIBZPOOLDIR= ${ROOTOBJDIR}/cddl/lib/libzpool -LIBDIALOGDIR= ${ROOTOBJDIR}/gnu/lib/libdialog -LIBGCOVDIR= ${ROOTOBJDIR}/gnu/lib/libgcov -LIBGOMPDIR= ${ROOTOBJDIR}/gnu/lib/libgomp -LIBGNUREGEXDIR= ${ROOTOBJDIR}/gnu/lib/libregex -LIBSSPDIR= ${ROOTOBJDIR}/gnu/lib/libssp -LIBSSP_NONSHAREDDIR= ${ROOTOBJDIR}/gnu/lib/libssp/libssp_nonshared -LIBSUPCPLUSPLUSDIR= ${ROOTOBJDIR}/gnu/lib/libsupc++ -LIBASN1DIR= ${ROOTOBJDIR}/kerberos5/lib/libasn1 -LIBGSSAPI_KRB5DIR= ${ROOTOBJDIR}/kerberos5/lib/libgssapi_krb5 -LIBGSSAPI_NTLMDIR= ${ROOTOBJDIR}/kerberos5/lib/libgssapi_ntlm -LIBGSSAPI_SPNEGODIR= ${ROOTOBJDIR}/kerberos5/lib/libgssapi_spnego -LIBHDBDIR= ${ROOTOBJDIR}/kerberos5/lib/libhdb -LIBHEIMBASEDIR= ${ROOTOBJDIR}/kerberos5/lib/libheimbase -LIBHEIMIPCCDIR= ${ROOTOBJDIR}/kerberos5/lib/libheimipcc -LIBHEIMIPCSDIR= ${ROOTOBJDIR}/kerberos5/lib/libheimipcs -LIBHEIMNTLMDIR= ${ROOTOBJDIR}/kerberos5/lib/libheimntlm -LIBHX509DIR= ${ROOTOBJDIR}/kerberos5/lib/libhx509 -LIBKADM5CLNTDIR= ${ROOTOBJDIR}/kerberos5/lib/libkadm5clnt -LIBKADM5SRVDIR= ${ROOTOBJDIR}/kerberos5/lib/libkadm5srv -LIBKAFS5DIR= ${ROOTOBJDIR}/kerberos5/lib/libkafs5 -LIBKDCDIR= ${ROOTOBJDIR}/kerberos5/lib/libkdc -LIBKRB5DIR= ${ROOTOBJDIR}/kerberos5/lib/libkrb5 -LIBROKENDIR= ${ROOTOBJDIR}/kerberos5/lib/libroken -LIBWINDDIR= ${ROOTOBJDIR}/kerberos5/lib/libwind -LIBALIASDIR= ${ROOTOBJDIR}/lib/libalias/libalias -LIBBLOCKSRUNTIMEDIR= ${ROOTOBJDIR}/lib/libblocksruntime -LIBBSNMPDIR= ${ROOTOBJDIR}/lib/libbsnmp/libbsnmp -LIBBSDXMLDIR= ${ROOTOBJDIR}/lib/libexpat -LIBKVMDIR= ${ROOTOBJDIR}/lib/libkvm -LIBPTHREADDIR= ${ROOTOBJDIR}/lib/libthr -LIBMDIR= ${ROOTOBJDIR}/lib/msun -LIBFORMDIR= ${ROOTOBJDIR}/lib/ncurses/form -LIBFORMLIBWDIR= ${ROOTOBJDIR}/lib/ncurses/formw -LIBMENUDIR= ${ROOTOBJDIR}/lib/ncurses/menu -LIBMENULIBWDIR= ${ROOTOBJDIR}/lib/ncurses/menuw -LIBTERMCAPDIR= ${ROOTOBJDIR}/lib/ncurses/ncurses -LIBTERMCAPWDIR= ${ROOTOBJDIR}/lib/ncurses/ncursesw -LIBPANELDIR= ${ROOTOBJDIR}/lib/ncurses/panel -LIBPANELWDIR= ${ROOTOBJDIR}/lib/ncurses/panelw -LIBCRYPTODIR= ${ROOTOBJDIR}/secure/lib/libcrypto -LIBSSHDIR= ${ROOTOBJDIR}/secure/lib/libssh -LIBSSLDIR= ${ROOTOBJDIR}/secure/lib/libssl -LIBTEKENDIR= ${ROOTOBJDIR}/sys/teken/libteken -LIBEGACYDIR= ${ROOTOBJDIR}/tools/build -LIBLNDIR= ${ROOTOBJDIR}/usr.bin/lex/lib +LIBAVLDIR= ${OBJTOP}/cddl/lib/libavl +LIBCTFDIR= ${OBJTOP}/cddl/lib/libctf +LIBDTRACEDIR= ${OBJTOP}/cddl/lib/libdtrace +LIBNVPAIRDIR= ${OBJTOP}/cddl/lib/libnvpair +LIBUMEMDIR= ${OBJTOP}/cddl/lib/libumem +LIBUUTILDIR= ${OBJTOP}/cddl/lib/libuutil +LIBZFSDIR= ${OBJTOP}/cddl/lib/libzfs +LIBZFS_COREDIR= ${OBJTOP}/cddl/lib/libzfs_core +LIBZPOOLDIR= ${OBJTOP}/cddl/lib/libzpool +LIBDIALOGDIR= ${OBJTOP}/gnu/lib/libdialog +LIBGCOVDIR= ${OBJTOP}/gnu/lib/libgcov +LIBGOMPDIR= ${OBJTOP}/gnu/lib/libgomp +LIBGNUREGEXDIR= ${OBJTOP}/gnu/lib/libregex +LIBSSPDIR= ${OBJTOP}/gnu/lib/libssp +LIBSSP_NONSHAREDDIR= ${OBJTOP}/gnu/lib/libssp/libssp_nonshared +LIBSUPCPLUSPLUSDIR= ${OBJTOP}/gnu/lib/libsupc++ +LIBASN1DIR= ${OBJTOP}/kerberos5/lib/libasn1 +LIBGSSAPI_KRB5DIR= ${OBJTOP}/kerberos5/lib/libgssapi_krb5 +LIBGSSAPI_NTLMDIR= ${OBJTOP}/kerberos5/lib/libgssapi_ntlm +LIBGSSAPI_SPNEGODIR= ${OBJTOP}/kerberos5/lib/libgssapi_spnego +LIBHDBDIR= ${OBJTOP}/kerberos5/lib/libhdb +LIBHEIMBASEDIR= ${OBJTOP}/kerberos5/lib/libheimbase +LIBHEIMIPCCDIR= ${OBJTOP}/kerberos5/lib/libheimipcc +LIBHEIMIPCSDIR= ${OBJTOP}/kerberos5/lib/libheimipcs +LIBHEIMNTLMDIR= ${OBJTOP}/kerberos5/lib/libheimntlm +LIBHX509DIR= ${OBJTOP}/kerberos5/lib/libhx509 +LIBKADM5CLNTDIR= ${OBJTOP}/kerberos5/lib/libkadm5clnt +LIBKADM5SRVDIR= ${OBJTOP}/kerberos5/lib/libkadm5srv +LIBKAFS5DIR= ${OBJTOP}/kerberos5/lib/libkafs5 +LIBKDCDIR= ${OBJTOP}/kerberos5/lib/libkdc +LIBKRB5DIR= ${OBJTOP}/kerberos5/lib/libkrb5 +LIBROKENDIR= ${OBJTOP}/kerberos5/lib/libroken +LIBWINDDIR= ${OBJTOP}/kerberos5/lib/libwind +LIBALIASDIR= ${OBJTOP}/lib/libalias/libalias +LIBBLOCKSRUNTIMEDIR= ${OBJTOP}/lib/libblocksruntime +LIBBSNMPDIR= ${OBJTOP}/lib/libbsnmp/libbsnmp +LIBBSDXMLDIR= ${OBJTOP}/lib/libexpat +LIBKVMDIR= ${OBJTOP}/lib/libkvm +LIBPTHREADDIR= ${OBJTOP}/lib/libthr +LIBMDIR= ${OBJTOP}/lib/msun +LIBFORMDIR= ${OBJTOP}/lib/ncurses/form +LIBFORMLIBWDIR= ${OBJTOP}/lib/ncurses/formw +LIBMENUDIR= ${OBJTOP}/lib/ncurses/menu +LIBMENULIBWDIR= ${OBJTOP}/lib/ncurses/menuw +LIBTERMCAPDIR= ${OBJTOP}/lib/ncurses/ncurses +LIBTERMCAPWDIR= ${OBJTOP}/lib/ncurses/ncursesw +LIBPANELDIR= ${OBJTOP}/lib/ncurses/panel +LIBPANELWDIR= ${OBJTOP}/lib/ncurses/panelw +LIBCRYPTODIR= ${OBJTOP}/secure/lib/libcrypto +LIBSSHDIR= ${OBJTOP}/secure/lib/libssh +LIBSSLDIR= ${OBJTOP}/secure/lib/libssl +LIBTEKENDIR= ${OBJTOP}/sys/teken/libteken +LIBEGACYDIR= ${OBJTOP}/tools/build +LIBLNDIR= ${OBJTOP}/usr.bin/lex/lib # Default other library directories to lib/libNAME. .for lib in ${_LIBRARIES} -LIB${lib:tu}DIR?= ${ROOTOBJDIR}/lib/lib${lib} +LIB${lib:tu}DIR?= ${OBJTOP}/lib/lib${lib} .endfor .endif # !target(____)