summaryrefslogtreecommitdiff
path: root/mk/mkc_imp.obj.mk
diff options
context:
space:
mode:
Diffstat (limited to 'mk/mkc_imp.obj.mk')
-rw-r--r--mk/mkc_imp.obj.mk34
1 files changed, 34 insertions, 0 deletions
diff --git a/mk/mkc_imp.obj.mk b/mk/mkc_imp.obj.mk
new file mode 100644
index 0000000..77d6f44
--- /dev/null
+++ b/mk/mkc_imp.obj.mk
@@ -0,0 +1,34 @@
+# Copyright (c) 2013 by Aleksey Cheusov
+#
+# See LICENSE file in the distribution.
+############################################################
+
+.ifndef _MKC_IMP_OBJ_MK
+_MKC_IMP_OBJ_MK := 1
+
+obj: # ensure existence
+
+.ifdef MAKEOBJDIRPREFIX
+__objdir := ${MAKEOBJDIRPREFIX}${.CURDIR}
+.elif defined(MAKEOBJDIR)
+__objdir := ${MAKEOBJDIR}
+.endif # defined(MAKEOBJDIRPREFIX)
+
+.if defined(__objdir)
+
+.if ${MKOBJDIRS:tl} == "yes"
+.if !defined(SUBPRJ)
+obj:
+ @${MKDIR} -p ${__objdir}
+.endif # !defined(SUBPRJ)
+.elif ${MKOBJDIRS:tl} == "auto" && !exists(${__objdir}/)
+__objdir_made != if ${MKDIR} -p ${__objdir}; then echo 1; else echo 0; fi
+
+.if !${__objdir_made}
+.error could not create ${__objdir}
+.endif # ${__objdir_made}
+
+.endif # MKOBJDIRS
+
+.endif # defined(__objdir)...
+.endif # _MKC_IMP_OBJ_MK