Home | History | Annotate | Line # | Download | only in mk
bsd.nls.mk revision 1.26
      1 #	$NetBSD: bsd.nls.mk,v 1.26 2000/06/08 03:51:56 mycroft Exp $
      2 
      3 .if !target(__initialized__)
      4 __initialized__:
      5 .if exists(${.CURDIR}/../Makefile.inc)
      6 .include "${.CURDIR}/../Makefile.inc"
      7 .endif
      8 .MAIN:		all
      9 .endif
     10 
     11 .PHONY:		cleannls nlsinstall
     12 cleandir distclean: cleannls
     13 
     14 .SUFFIXES: .cat .msg
     15 
     16 .msg.cat:
     17 	@rm -f ${.TARGET}
     18 	gencat ${.TARGET} ${.IMPSRC}
     19 
     20 .if defined(NLS) && !empty(NLS)
     21 NLSALL= ${NLS:.msg=.cat}
     22 .NOPATH: ${NLSALL}
     23 
     24 NLSNAME?=${PROG:Ulib${LIB}}
     25 
     26 .if ${MKNLS} != "no"
     27 realinstall: nlsinstall
     28 realall: ${NLSALL}
     29 .endif
     30 
     31 cleannls:
     32 	rm -f ${NLSALL}
     33 
     34 nlsinstall:: ${DESTDIR}${NLSDIR}
     35 .PRECIOUS:: ${DESTDIR}${NLSDIR}
     36 .PHONY:: ${DESTDIR}${NLSDIR}
     37 
     38 ${DESTDIR}${NLSDIR}:
     39 	@if [ ! -d ${.TARGET} ] || [ -h ${.TARGET} ] ; then \
     40 		echo creating ${.TARGET}; \
     41 		/bin/rm -rf ${.TARGET}; \
     42 		${INSTALL} ${INSTPRIV} -d -o ${NLSOWN} -g ${NLSGRP} -m 755 \
     43 		    ${.TARGET}; \
     44 	fi
     45 
     46 nlsinstall:: ${NLSALL:@F@${DESTDIR}${NLSDIR}/${F:T:R}/${NLSNAME}.cat@}
     47 .PRECIOUS: ${NLSALL:@F@${DESTDIR}${NLSDIR}/${F:T:R}/${NLSNAME}.cat@}
     48 .if !defined(UPDATE)
     49 .PHONY: ${NLSALL:@F@${DESTDIR}${NLSDIR}/${F:T:R}/${NLSNAME}.cat@}
     50 .endif
     51 
     52 __nlsinstall: .USE
     53 	${INSTALL} ${INSTPRIV} -d -o ${NLSOWN} -g ${NLSGRP} ${.TARGET:H}
     54 	${INSTALL} ${RENAME} ${PRESERVE} ${COPY} ${INSTPRIV} -o ${NLSOWN} \
     55 	    -g ${NLSGRP} -m ${NLSMODE} ${.ALLSRC} ${.TARGET}
     56 
     57 .for F in ${NLSALL}
     58 .if !defined(BUILD) && !make(all) && !make(${F})
     59 ${DESTDIR}${NLSDIR}/${F:T:R}/${NLSNAME}.cat: .MADE
     60 .endif
     61 ${DESTDIR}${NLSDIR}/${F:T:R}/${NLSNAME}.cat: ${F} __nlsinstall
     62 .endfor
     63 .else
     64 cleannls:
     65 .endif
     66