Index: share/mk/bsd.lib.mk =================================================================== --- share/mk/bsd.lib.mk +++ share/mk/bsd.lib.mk @@ -237,11 +237,18 @@ BCOBJS+= ${SRCS:N*.[hsS]:N*.asm:${OBJS_SRCS_FILTER:ts:}:S/$/.bco/g} LLOBJS+= ${SRCS:N*.[hsS]:N*.asm:${OBJS_SRCS_FILTER:ts:}:S/$/.llo/g} CLEANFILES+= ${OBJS} ${BCOBJS} ${LLOBJS} ${STATICOBJS} +.if "${SRCS:O:u}" != "${SRCS:O}" +.error "Found duplicates in SRCS: ${SRCS:O}" +.endif .endif .if defined(LIB) && !empty(LIB) _LIBS= lib${LIB_PRIVATE}${LIB}.a +.if "${OBJS:O:u}" != "${OBJS:O}" +.error "Found duplicate files in OBJS: ${OBJS:O}" +.endif + lib${LIB_PRIVATE}${LIB}.a: ${OBJS} ${STATICOBJS} @${ECHO} building static ${LIB} library @rm -f ${.TARGET} @@ -255,6 +262,9 @@ POBJS+= ${OBJS:.o=.po} ${STATICOBJS:.o=.po} DEPENDOBJS+= ${POBJS} CLEANFILES+= ${POBJS} +.if "${POBJS:O:u}" != "${POBJS:O}" +.error "Found duplicate files in POBJS: ${POBJS:O}" +.endif lib${LIB_PRIVATE}${LIB}_p.a: ${POBJS} @${ECHO} building profiled ${LIB} library @@ -308,6 +318,10 @@ CLEANFILES+= ${SHLIB_LINK} .endif +.if "${SOBJS:O:u}" != "${SOBJS:O}" +.error "Found duplicate files in SOBJS: ${SOBJS:O}" +.endif + ${SHLIB_NAME_FULL}: ${SOBJS} @${ECHO} building shared library ${SHLIB_NAME} @rm -f ${SHLIB_NAME} ${SHLIB_LINK}