Home | History | Annotate | Line # | Download | only in mk
bsd.obj.mk revision 1.21.4.1
      1  1.21.4.1  wrstuden #	$NetBSD: bsd.obj.mk,v 1.21.4.1 1999/12/27 18:31:11 wrstuden Exp $
      2      1.17     lukem 
      3      1.17     lukem .if !target(__initialized_obj__)
      4      1.17     lukem __initialized_obj__:
      5      1.17     lukem .include <bsd.own.mk>
      6      1.17     lukem .endif
      7       1.1   mycroft 
      8      1.16     lukem .if ${MKOBJ} == "no"
      9       1.1   mycroft obj:
     10       1.1   mycroft .else
     11       1.3       cgd 
     12      1.21  sommerfe .if defined(MAKEOBJDIR)
     13      1.21  sommerfe __objdir=	${MAKEOBJDIR}
     14      1.21  sommerfe .elif defined(OBJMACHINE)
     15       1.3       cgd __objdir=	obj.${MACHINE}
     16       1.3       cgd .else
     17       1.3       cgd __objdir=	obj
     18       1.3       cgd .endif
     19       1.3       cgd 
     20       1.3       cgd .if defined(USR_OBJMACHINE)
     21       1.4       cgd __usrobjdir=	${BSDOBJDIR}.${MACHINE}
     22       1.3       cgd __usrobjdirpf=	
     23       1.3       cgd .else
     24       1.4       cgd __usrobjdir=	${BSDOBJDIR}
     25       1.3       cgd .if defined(OBJMACHINE)
     26       1.3       cgd __usrobjdirpf=	.${MACHINE}
     27       1.3       cgd .else
     28       1.3       cgd __usrobjdirpf=
     29       1.3       cgd .endif
     30       1.3       cgd .endif
     31       1.3       cgd 
     32      1.20       kim PAWD?=		/bin/pwd
     33      1.18       kim 
     34      1.12   mycroft obj:
     35  1.21.4.1  wrstuden 	@cd ${.CURDIR}; \
     36      1.20       kim 	here=`${PAWD}`; subdir=$${here#${BSDSRCDIR}/}; \
     37       1.1   mycroft 	if test $$here != $$subdir ; then \
     38       1.4       cgd 		dest=${__usrobjdir}/$$subdir${__usrobjdirpf} ; \
     39  1.21.4.1  wrstuden 		if [ -L $$here/${__objdir} ]; then \
     40  1.21.4.1  wrstuden 			curtarg=`ls -ld $$here/${__objdir} | awk '{print $$NF}'` ; \
     41  1.21.4.1  wrstuden 			if [ "$$curtarg" = "$$dest" ]; then \
     42  1.21.4.1  wrstuden 				: ; \
     43  1.21.4.1  wrstuden 			else \
     44  1.21.4.1  wrstuden 				echo "$$here/${__objdir} -> $$dest"; \
     45  1.21.4.1  wrstuden 				rm -rf ${__objdir}; \
     46  1.21.4.1  wrstuden 				ln -s $$dest ${__objdir}; \
     47  1.21.4.1  wrstuden 			fi; \
     48  1.21.4.1  wrstuden 		else \
     49  1.21.4.1  wrstuden 			echo "$$here/${__objdir} -> $$dest"; \
     50  1.21.4.1  wrstuden 			rm -rf ${__objdir}; \
     51  1.21.4.1  wrstuden 			ln -s $$dest ${__objdir}; \
     52  1.21.4.1  wrstuden 		fi; \
     53       1.4       cgd 		if test -d ${__usrobjdir} -a ! -d $$dest; then \
     54       1.1   mycroft 			mkdir -p $$dest; \
     55       1.1   mycroft 		else \
     56       1.1   mycroft 			true; \
     57       1.1   mycroft 		fi; \
     58       1.1   mycroft 	else \
     59       1.1   mycroft 		true ; \
     60       1.3       cgd 		dest=$$here/${__objdir} ; \
     61  1.21.4.1  wrstuden 		if test ! -d ${__objdir} || test -L ${__objdir}; then \
     62       1.1   mycroft 			echo "making $$dest" ; \
     63  1.21.4.1  wrstuden 			rm -f ${__objdir}; \
     64       1.1   mycroft 			mkdir $$dest; \
     65       1.1   mycroft 		fi ; \
     66       1.1   mycroft 	fi;
     67       1.1   mycroft .endif
     68      1.14        tv 
     69      1.15        tv print-objdir:
     70      1.14        tv 	@echo ${.OBJDIR}
     71