--- buildsys.mk.in.old
+++ buildsys.mk.in
@@ -113,7 +113,6 @@ PLUGIN_OBJS = ${OBJS:.o=.plugin.o}
 
 MO_FILES = ${LOCALES:.po=.mo}
 
-.SILENT:
 .SUFFIXES:
 .SUFFIXES: .beam .c .c.dep .cc .cc.dep .class .cxx .cxx.dep .d .erl .lib.o .java .mo .m .m.dep .mm .mm.dep .moslib.o .o .plugin.o .po .py .pyc .rc .S .S.dep .xpm
 .PHONY: all subdirs subdirs-after pre-depend depend install install-includes install-extra uninstall uninstall-extra clean distclean locales ${SUBDIRS} ${SUBDIRS_AFTER}
@@ -220,7 +219,8 @@ pre-depend:
 ${PROG} ${PROG_NOINST}: ${EXT_DEPS} ${OBJS} ${OBJS_EXTRA}
 	${LINK_STATUS}
 	out="$@"; \
-	if ${LD} -o $@ ${OBJS} ${OBJS_EXTRA} ${LDFLAGS} ${LIBS}; then \
+	${LD} -o $@ ${OBJS} ${OBJS_EXTRA} ${LIBS} ${LDFLAGS}; \
+	if [ "$${?}" -eq "0" ]; then \
 		${LINK_OK}; \
 	else \
 		${LINK_FAILED}; \
@@ -229,13 +229,15 @@ ${PROG} ${PROG_NOINST}: ${EXT_DEPS} ${OBJS} ${OBJS_EXTRA}
 ${JARFILE}: ${EXT_DEPS} ${JAR_MANIFEST} ${OBJS} ${OBJS_EXTRA}
 	${LINK_STATUS}
 	if test x"${JAR_MANIFEST}" != x""; then \
-		if ${JAR} cfm ${JARFILE} ${JAR_MANIFEST} ${OBJS} ${OBJS_EXTRA}; then \
+		${JAR} cfm ${JARFILE} ${JAR_MANIFEST} ${OBJS} ${OBJS_EXTRA}; \
+		if [ "$${?}" -eq "0" ]; then \
 			${LINK_OK}; \
 		else \
 			${LINK_FAILED}; \
 		fi \
 	else \
-		if ${JAR} cf ${JARFILE} ${OBJS} ${OBJS_EXTRA}; then \
+		${JAR} cf ${JARFILE} ${OBJS} ${OBJS_EXTRA}; \
+		if [ "$${?}" -eq "0" ]; then \
 			${LINK_OK}; \
 		else \
 			${LINK_FAILED}; \
@@ -245,7 +247,8 @@ ${JARFILE}: ${EXT_DEPS} ${JAR_MANIFEST} ${OBJS} ${OBJS_EXTRA}
 ${SHARED_LIB} ${SHARED_LIB_NOINST}: ${EXT_DEPS} ${LIB_OBJS} ${LIB_OBJS_EXTRA}
 	${LINK_STATUS}
 	out="$@"; \
-	if ${LD} -o $@ ${LIB_OBJS} ${LIB_OBJS_EXTRA} ${LIB_LDFLAGS} ${LIB_LDFLAGS_INSTALL_NAME} ${LDFLAGS} ${LIBS}; then \
+	${LD} -o $@ ${LIB_OBJS} ${LIB_OBJS_EXTRA} ${LIB_LDFLAGS} ${LIB_LDFLAGS_INSTALL_NAME} ${LIBS} ${LDFLAGS}; \
+	if [ "$${?}" -eq "0" ]; then \
 		${LINK_OK}; \
 	else \
 		${LINK_FAILED}; \
@@ -258,7 +261,8 @@ ${FRAMEWORK}: ${EXT_DEPS} ${LIB_OBJS} ${LIB_OBJS_EXTRA}
 	if test -f Info.plist; then \
 		i=Info.plist; \
 		${INSTALL_STATUS}; \
-		if ${INSTALL} -m 644 $$i $@/$$i; then \
+		${INSTALL} -m 644 $$i $@/$$i; \
+		if [ "$${?}" -eq "0" ]; then \
 			${INSTALL_OK}; \
 		else \
 			${INSTALL_FAILED}; \
@@ -267,7 +271,8 @@ ${FRAMEWORK}: ${EXT_DEPS} ${LIB_OBJS} ${LIB_OBJS_EXTRA}
 	if test -f module.modulemap; then \
 		i=module.modulemap; \
 		${INSTALL_STATUS}; \
-		if ${MKDIR_P} $@/Modules && ${INSTALL} -m 644 $$i $@/Modules/$$i; then \
+		${MKDIR_P} $@/Modules && ${INSTALL} -m 644 $$i $@/Modules/$$i; \
+		if [ "$${?}" -eq "0" ]; then \
 			${INSTALL_OK}; \
 		else \
 			${INSTALL_FAILED}; \
@@ -275,7 +280,8 @@ ${FRAMEWORK}: ${EXT_DEPS} ${LIB_OBJS} ${LIB_OBJS_EXTRA}
 	fi
 	${LINK_STATUS}
 	out="$@"; \
-	if ${LD} -o $$out/$${out%.framework} ${LIB_OBJS} ${LIB_OBJS_EXTRA} ${FRAMEWORK_LDFLAGS} ${FRAMEWORK_LDFLAGS_INSTALL_NAME} ${LDFLAGS} ${LIBS} && ${CODESIGN} -fs ${CODESIGN_IDENTITY} --timestamp=none $$out; then \
+	${LD} -o $$out/$${out%.framework} ${LIB_OBJS} ${LIB_OBJS_EXTRA} ${FRAMEWORK_LDFLAGS} ${FRAMEWORK_LDFLAGS_INSTALL_NAME} ${LIBS} ${LDFLAGS} && ${CODESIGN} -fs ${CODESIGN_IDENTITY} --timestamp=none $$out; \
+	if [ "$${?}" -eq "0" ]; then \
 		${LINK_OK}; \
 	else \
 		rm -fr $$out; \
@@ -284,7 +290,8 @@ ${FRAMEWORK}: ${EXT_DEPS} ${LIB_OBJS} ${LIB_OBJS_EXTRA}
 
 ${MORPHOS_LIB} ${MORPHOS_LIB_NOINST}: ${EXT_DEPS} ${MORPHOS_LIB_OBJS} ${MORPHOS_LIB_OBJS_EXTRA}
 	${LINK_STATUS}
-	if ${LD} -o $@ ${MORPHOS_LIB_OBJS} ${MORPHOS_LIB_OBJS_EXTRA} -nostartfiles ${LDFLAGS} ${LIBS}; then \
+	${LD} -o $@ ${MORPHOS_LIB_OBJS} ${MORPHOS_LIB_OBJS_EXTRA} -nostartfiles ${LIBS} ${LDFLAGS}; \
+	if [ "$${?}" -eq "0" ]; then \
 		${LINK_OK}; \
 	else \
 		${LINK_FAILED}; \
@@ -293,7 +300,8 @@ ${MORPHOS_LIB} ${MORPHOS_LIB_NOINST}: ${EXT_DEPS} ${MORPHOS_LIB_OBJS} ${MORPHOS_
 ${PLUGIN} ${PLUGIN_NOINST}: ${EXT_DEPS} ${PLUGIN_OBJS}
 	${LINK_STATUS}
 	out="$@"; \
-	if ${LD} -o $@ ${PLUGIN_OBJS} ${PLUGIN_OBJS_EXTRA} ${PLUGIN_LDFLAGS} ${LDFLAGS} ${LIBS}; then \
+	${LD} -o $@ ${PLUGIN_OBJS} ${PLUGIN_OBJS_EXTRA} ${PLUGIN_LDFLAGS} ${LIBS} ${LDFLAGS}; \
+	if [ "$${?}" -eq "0" ]; then \
 		${LINK_OK}; \
 	else \
 		${LINK_FAILED}; \
@@ -326,7 +334,8 @@ ${STATIC_LIB} ${STATIC_LIB_NOINST}: ${EXT_DEPS} ${OBJS} ${OBJS_EXTRA}
 		done; \
 		cd ..; \
 	done; \
-	if ${AR} cr $@ $$objs && ${RANLIB} $@; then \
+	${AR} cr $@ $$objs && ${RANLIB} $@; \
+	if [ "$${?}" -eq "0" ]; then \
 		${LINK_OK}; \
 	else \
 		${LINK_FAILED}; \
@@ -364,7 +373,8 @@ ${STATIC_PIC_LIB} ${STATIC_PIC_LIB_NOINST}: ${EXT_DEPS} ${LIB_OBJS} ${LIB_OBJS_E
 		done; \
 		cd ..; \
 	done; \
-	if ${AR} cr $@ $$objs && ${RANLIB} $@; then \
+	${AR} cr $@ $$objs && ${RANLIB} $@; \
+	if [ "$${?}" -eq "0" ]; then \
 		${LINK_OK}; \
 	else \
 		${LINK_FAILED}; \
@@ -381,7 +391,8 @@ locales: ${MO_FILES}
 	${COMPILE_STATUS}
 	in="$<"; \
 	out="$@"; \
-	if ${CC} ${CFLAGS} ${CPPFLAGS} ${CFLAGS_$<} ${CFLAGS_$@} -c -o $@ $<; then \
+	${CC} ${CFLAGS} ${CPPFLAGS} ${CFLAGS_$<} ${CFLAGS_$@} -c -o $@ $<; \
+	if [ "$${?}" -eq "0" ]; then \
 		${COMPILE_OK}; \
 	else \
 		${COMPILE_FAILED}; \
@@ -390,7 +401,8 @@ locales: ${MO_FILES}
 	${COMPILE_LIB_STATUS}
 	in="$<"; \
 	out="$@"; \
-	if ${CC} ${LIB_CFLAGS} ${CFLAGS} ${CPPFLAGS} ${CFLAGS_$<} ${CFLAGS_$@} -c -o $@ $<; then \
+	${CC} ${LIB_CFLAGS} ${CFLAGS} ${CPPFLAGS} ${CFLAGS_$<} ${CFLAGS_$@} -c -o $@ $<; \
+	if [ "$${?}" -eq "0" ]; then \
 		${COMPILE_LIB_OK}; \
 	else \
 		${COMPILE_LIB_FAILED}; \
@@ -399,7 +411,8 @@ locales: ${MO_FILES}
 	${COMPILE_MOSLIB_STATUS}
 	in="$<"; \
 	out="$@"; \
-	if ${CC} -mbaserel32 ${CFLAGS} ${CPPFLAGS} ${CFLAGS_$<} ${CFLAGS_$@} -c -o $@ $<; then \
+	${CC} -mbaserel32 ${CFLAGS} ${CPPFLAGS} ${CFLAGS_$<} ${CFLAGS_$@} -c -o $@ $<; \
+	if [ "$${?}" -eq "0" ]; then \
 		${COMPILE_MOSLIB_OK}; \
 	else \
 		${COMPILE_MOSLIB_FAILED}; \
@@ -408,7 +421,8 @@ locales: ${MO_FILES}
 	${COMPILE_PLUGIN_STATUS}
 	in="$<"; \
 	out="$@"; \
-	if ${CC} ${PLUGIN_CFLAGS} ${CFLAGS} ${CPPFLAGS} ${CFLAGS_$<} ${CFLAGS_$@} -c -o $@ $<; then \
+	${CC} ${PLUGIN_CFLAGS} ${CFLAGS} ${CPPFLAGS} ${CFLAGS_$<} ${CFLAGS_$@} -c -o $@ $<; \
+	if [ "$${?}" -eq "0" ]; then \
 		${COMPILE_PLUGIN_OK}; \
 	else \
 		${COMPILE_PLUGIN_FAILED}; \
@@ -418,7 +432,8 @@ locales: ${MO_FILES}
 	${COMPILE_STATUS}
 	in="$<"; \
 	out="$@"; \
-	if ${CXX} ${CXXFLAGS} ${CPPFLAGS} ${CXXFLAGS_$<} ${CXXFLAGS_$@} -c -o $@ $<; then \
+	${CXX} ${CXXFLAGS} ${CPPFLAGS} ${CXXFLAGS_$<} ${CXXFLAGS_$@} -c -o $@ $<; \
+	if [ "$${?}" -eq "0" ]; then \
 		${COMPILE_OK}; \
 	else \
 		${COMPILE_FAILED}; \
@@ -427,7 +442,8 @@ locales: ${MO_FILES}
 	${COMPILE_LIB_STATUS}
 	in="$<"; \
 	out="$@"; \
-	if ${CXX} ${LIB_CFLAGS} ${CXXFLAGS} ${CPPFLAGS} ${CXXFLAGS_$<} ${CXXFLAGS_$@} -c -o $@ $<; then \
+	${CXX} ${LIB_CFLAGS} ${CXXFLAGS} ${CPPFLAGS} ${CXXFLAGS_$<} ${CXXFLAGS_$@} -c -o $@ $<; \
+	if [ "$${?}" -eq "0" ]; then \
 		${COMPILE_LIB_OK}; \
 	else \
 		${COMPILE_LIB_FAILED}; \
@@ -436,7 +452,8 @@ locales: ${MO_FILES}
 	${COMPILE_MOSLIB_STATUS}
 	in="$<"; \
 	out="$@"; \
-	if ${CXX} -mbaserel32 ${CXXFLAGS} ${CPPFLAGS} ${CXXFLAGS_$<} ${CXXFLAGS_$@} -c -o $@ $<; then \
+	${CXX} -mbaserel32 ${CXXFLAGS} ${CPPFLAGS} ${CXXFLAGS_$<} ${CXXFLAGS_$@} -c -o $@ $<; \
+	if [ "$${?}" -eq "0" ]; then \
 		${COMPILE_MOSLIB_OK}; \
 	else \
 		${COMPILE_MOSLIB_FAILED}; \
@@ -445,7 +462,8 @@ locales: ${MO_FILES}
 	${COMPILE_PLUGIN_STATUS}
 	in="$<"; \
 	out="$@"; \
-	if ${CXX} ${PLUGIN_CFLAGS} ${CXXFLAGS} ${CPPFLAGS} ${CXXFLAGS_$<} ${CXXFLAGS_$@} -c -o $@ $<; then \
+	${CXX} ${PLUGIN_CFLAGS} ${CXXFLAGS} ${CPPFLAGS} ${CXXFLAGS_$<} ${CXXFLAGS_$@} -c -o $@ $<; \
+	if [ "$${?}" -eq "0" ]; then \
 		${COMPILE_PLUGIN_OK}; \
 	else \
 		${COMPILE_PLUGIN_FAILED}; \
@@ -456,13 +474,15 @@ locales: ${MO_FILES}
 	in="$<"; \
 	out="$@"; \
 	if test x"$(basename ${DC})" = x"dmd"; then \
-		if ${DC} ${DFLAGS} -c -of$@ $<; then \
+		${DC} ${DFLAGS} -c -of$@ $<; \
+		if [ "$${?}" -eq "0" ]; then \
 			${COMPILE_OK}; \
 		else \
 			${COMPILE_FAILED}; \
 		fi \
 	else \
-		if ${DC} ${DFLAGS} -c -o $@ $<; then \
+		${DC} ${DFLAGS} -c -o $@ $<; \
+		if [ "$${?}" -eq "0" ]; then \
 			${COMPILE_OK}; \
 		else \
 			${COMPILE_FAILED}; \
@@ -473,7 +493,8 @@ locales: ${MO_FILES}
 	${COMPILE_STATUS}
 	in="$<"; \
 	out="$@"; \
-	if ${ERLC} ${ERLCFLAGS} -o $@ $<; then \
+	${ERLC} ${ERLCFLAGS} -o $@ $<; \
+	if [ "$${?}" -eq "0" ]; then \
 		${COMPILE_OK}; \
 	else \
 		${COMPILE_FAILED}; \
@@ -483,7 +504,8 @@ locales: ${MO_FILES}
 	${COMPILE_STATUS}
 	in="$<"; \
 	out="$@"; \
-	if ${JAVAC} ${JAVACFLAGS} $<; then \
+	${JAVAC} ${JAVACFLAGS} $<; \
+	if [ "$${?}" -eq "0" ]; then \
 		${COMPILE_OK}; \
 	else \
 		${COMPILE_FAILED}; \
@@ -493,7 +515,8 @@ locales: ${MO_FILES}
 	${COMPILE_STATUS}
 	in="$<"; \
 	out="$@"; \
-	if ${OBJC} ${OBJCFLAGS} ${CPPFLAGS} ${OBJCFLAGS_$<} ${OBJCFLAGS_$@} -c -o $@ $<; then \
+	${OBJC} ${OBJCFLAGS} ${CPPFLAGS} ${OBJCFLAGS_$<} ${OBJCFLAGS_$@} -c -o $@ $<; \
+	if [ "$${?}" -eq "0" ]; then \
 		${COMPILE_OK}; \
 	else \
 		${COMPILE_FAILED}; \
@@ -502,7 +525,8 @@ locales: ${MO_FILES}
 	${COMPILE_LIB_STATUS}
 	in="$<"; \
 	out="$@"; \
-	if ${OBJC} ${LIB_CFLAGS} ${OBJCFLAGS} ${CPPFLAGS} ${OBJCFLAGS_$<} ${OBJCFLAGS_$@} -c -o $@ $<; then \
+	${OBJC} ${LIB_CFLAGS} ${OBJCFLAGS} ${CPPFLAGS} ${OBJCFLAGS_$<} ${OBJCFLAGS_$@} -c -o $@ $<; \
+	if [ "$${?}" -eq "0" ]; then \
 		${COMPILE_LIB_OK}; \
 	else \
 		${COMPILE_LIB_FAILED}; \
@@ -511,7 +535,8 @@ locales: ${MO_FILES}
 	${COMPILE_MOSLIB_STATUS}
 	in="$<"; \
 	out="$@"; \
-	if ${OBJC} -mbaserel32 ${OBJCFLAGS} ${CPPFLAGS} ${OBJCFLAGS_$<} ${OBJCFLAGS_$@} -c -o $@ $<; then \
+	${OBJC} -mbaserel32 ${OBJCFLAGS} ${CPPFLAGS} ${OBJCFLAGS_$<} ${OBJCFLAGS_$@} -c -o $@ $<; \
+	if [ "$${?}" -eq "0" ]; then \
 		${COMPILE_MOSLIB_OK}; \
 	else \
 		${COMPILE_MOSLIB_FAILED}; \
@@ -520,7 +545,8 @@ locales: ${MO_FILES}
 	${COMPILE_PLUGIN_STATUS}
 	in="$<"; \
 	out="$@"; \
-	if ${OBJC} ${PLUGIN_CFLAGS} ${OBJCFLAGS} ${CPPFLAGS} ${OBJCFLAGS_$<} ${OBJCFLAGS_$@} -c -o $@ $<; then \
+	${OBJC} ${PLUGIN_CFLAGS} ${OBJCFLAGS} ${CPPFLAGS} ${OBJCFLAGS_$<} ${OBJCFLAGS_$@} -c -o $@ $<; \
+	if [ "$${?}" -eq "0" ]; then \
 		${COMPILE_PLUGIN_OK}; \
 	else \
 		${COMPILE_PLUGIN_FAILED}; \
@@ -530,7 +556,8 @@ locales: ${MO_FILES}
 	${COMPILE_STATUS}
 	in="$<"; \
 	out="$@"; \
-	if ${OBJCXX} ${OBJCXXFLAGS} ${CPPFLAGS} ${OBJCXXFLAGS_$<} ${OBJCXXFLAGS_$@} -c -o $@ $<; then \
+	${OBJCXX} ${OBJCXXFLAGS} ${CPPFLAGS} ${OBJCXXFLAGS_$<} ${OBJCXXFLAGS_$@} -c -o $@ $<; \
+	if [ "$${?}" -eq "0" ]; then \
 		${COMPILE_OK}; \
 	else \
 		${COMPILE_FAILED}; \
@@ -539,7 +566,8 @@ locales: ${MO_FILES}
 	${COMPILE_LIB_STATUS}
 	in="$<"; \
 	out="$@"; \
-	if ${OBJCXX} ${LIB_CFLAGS} ${OBJCXXFLAGS} ${CPPFLAGS} ${OBJCXXFLAGS_$<} ${OBJCXXFLAGS_$@} -c -o $@ $<; then \
+	${OBJCXX} ${LIB_CFLAGS} ${OBJCXXFLAGS} ${CPPFLAGS} ${OBJCXXFLAGS_$<} ${OBJCXXFLAGS_$@} -c -o $@ $<; \
+	if [ "$${?}" -eq "0" ]; then \
 		${COMPILE_LIB_OK}; \
 	else \
 		${COMPILE_LIB_FAILED}; \
@@ -548,7 +576,8 @@ locales: ${MO_FILES}
 	${COMPILE_MOSLIB_STATUS}
 	in="$<"; \
 	out="$@"; \
-	if ${OBJCXX} -mbaserel32 ${OBJCXXFLAGS} ${CPPFLAGS} ${OBJCXXFLAGS_$<} ${OBJCXXFLAGS_$@} -c -o $@ $<; then \
+	${OBJCXX} -mbaserel32 ${OBJCXXFLAGS} ${CPPFLAGS} ${OBJCXXFLAGS_$<} ${OBJCXXFLAGS_$@} -c -o $@ $<; \
+	if [ "$${?}" -eq "0" ]; then \
 		${COMPILE_MOSLIB_OK}; \
 	else \
 		${COMPILE_MOSLIB_FAILED}; \
@@ -557,7 +586,8 @@ locales: ${MO_FILES}
 	${COMPILE_PLUGIN_STATUS}
 	in="$<"; \
 	out="$@"; \
-	if ${OBJCXX} ${PLUGIN_CFLAGS} ${OBJCXXFLAGS} ${CPPFLAGS} ${OBJCXXFLAGS_$<} ${OBJCXXFLAGS_$@} -c -o $@ $<; then \
+	${OBJCXX} ${PLUGIN_CFLAGS} ${OBJCXXFLAGS} ${CPPFLAGS} ${OBJCXXFLAGS_$<} ${OBJCXXFLAGS_$@} -c -o $@ $<; \
+	if [ "$${?}" -eq "0" ]; then \
 		${COMPILE_PLUGIN_OK}; \
 	else \
 		${COMPILE_PLUGIN_FAILED}; \
@@ -567,7 +597,8 @@ locales: ${MO_FILES}
 	${COMPILE_STATUS}
 	in="$<"; \
 	out="$@"; \
-	if ${MSGFMT} -c -o $@ $<; then \
+	${MSGFMT} -c -o $@ $<; \
+	if [ "$${?}" -eq "0" ]; then \
 		${COMPILE_OK}; \
 	else \
 		${COMPILE_FAILED}; \
@@ -577,7 +608,8 @@ locales: ${MO_FILES}
 	${COMPILE_STATUS}
 	in="$<"; \
 	out="$@"; \
-	if ${PYTHON} ${PYTHON_FLAGS} -c "import py_compile; py_compile.compile('$<')"; then \
+	${PYTHON} ${PYTHON_FLAGS} -c "import py_compile; py_compile.compile('$<')"; \
+	if [ "$${?}" -eq "0" ]; then \
 		${COMPILE_OK}; \
 	else \
 		${COMPILE_FAILED}; \
@@ -587,7 +619,8 @@ locales: ${MO_FILES}
 	${COMPILE_STATUS}
 	in="$<"; \
 	out="$@"; \
-	if ${WINDRES} -J rc -O coff -o $@ $<; then \
+	${WINDRES} -J rc -O coff -o $@ $<; \
+	if [ "$${?}" -eq "0" ]; then \
 		${COMPILE_OK}; \
 	else \
 		${COMPILE_FAILED}; \
@@ -597,7 +630,8 @@ locales: ${MO_FILES}
 	${COMPILE_STATUS}
 	in="$<"; \
 	out="$@"; \
-	if ${AS} ${ASFLAGS} ${CPPFLAGS} ${ASFLAGS_$<} ${ASFLAGS_$@} -c -o $@ $<; then \
+	${AS} ${ASFLAGS} ${CPPFLAGS} ${ASFLAGS_$<} ${ASFLAGS_$@} -c -o $@ $<; \
+	if [ "$${?}" -eq "0" ]; then \
 		${COMPILE_OK}; \
 	else \
 		${COMPILE_FAILED}; \
@@ -606,7 +640,8 @@ locales: ${MO_FILES}
 	${COMPILE_LIB_STATUS}
 	in="$<"; \
 	out="$@"; \
-	if ${AS} ${LIB_CFLAGS} ${ASFLAGS} ${CPPFLAGS} ${ASFLAGS_$<} ${ASFLAGS_$@} -c -o $@ $<; then \
+	${AS} ${LIB_CFLAGS} ${ASFLAGS} ${CPPFLAGS} ${ASFLAGS_$<} ${ASFLAGS_$@} -c -o $@ $<; \
+	if [ "$${?}" -eq "0" ]; then \
 		${COMPILE_LIB_OK}; \
 	else \
 		${COMPILE_LIB_FAILED}; \
@@ -615,7 +650,8 @@ locales: ${MO_FILES}
 	${COMPILE_PLUGIN_STATUS}
 	in="$<"; \
 	out="$@"; \
-	if ${AS} ${PLUGIN_CFLAGS} ${ASFLAGS} ${CPPFLAGS} ${ASFLAGS_$<} ${ASFLAGS_$@} -c -o $@ $<; then \
+	${AS} ${PLUGIN_CFLAGS} ${ASFLAGS} ${CPPFLAGS} ${ASFLAGS_$<} ${ASFLAGS_$@} -c -o $@ $<; \
+	if [ "$${?}" -eq "0" ]; then \
 		${COMPILE_PLUGIN_OK}; \
 	else \
 		${COMPILE_PLUGIN_FAILED}; \
@@ -625,7 +661,8 @@ locales: ${MO_FILES}
 	${COMPILE_STATUS}
 	in="$<"; \
 	out="$@"; \
-	if ${CC} ${CFLAGS} ${CPPFLAGS} ${CFLAGS_$<} ${CFLAGS_$@} -x c -c -o $@ $<; then \
+	${CC} ${CFLAGS} ${CPPFLAGS} ${CFLAGS_$<} ${CFLAGS_$@} -x c -c -o $@ $<; \
+	if [ "$${?}" -eq "0" ]; then \
 		${COMPILE_OK}; \
 	else \
 		${COMPILE_FAILED}; \
@@ -634,7 +671,8 @@ locales: ${MO_FILES}
 	${COMPILE_LIB_STATUS}
 	in="$<"; \
 	out="$@"; \
-	if ${CC} ${LIB_CFLAGS} ${CFLAGS} ${CPPFLAGS} ${CFLAGS_$<} ${CFLAGS_$@} -x c -c -o $@ $<; then \
+	${CC} ${LIB_CFLAGS} ${CFLAGS} ${CPPFLAGS} ${CFLAGS_$<} ${CFLAGS_$@} -x c -c -o $@ $<; \
+	if [ "$${?}" -eq "0" ]; then \
 		${COMPILE_LIB_OK}; \
 	else \
 		${COMPILE_LIB_FAILED}; \
@@ -643,7 +681,8 @@ locales: ${MO_FILES}
 	${COMPILE_MOSLIB_STATUS}
 	in="$<"; \
 	out="$@"; \
-	if ${CC} -mbasel32 ${CFLAGS} ${CPPFLAGS} ${CFLAGS_$<} ${CFLAGS_$@} -x c -c -o $@ $<; then \
+	${CC} -mbasel32 ${CFLAGS} ${CPPFLAGS} ${CFLAGS_$<} ${CFLAGS_$@} -x c -c -o $@ $<; \
+	if [ "$${?}" -eq "0" ]; then \
 		${COMPILE_MOSLIB_OK}; \
 	else \
 		${COMPILE_MOSLIB_FAILED}; \
@@ -652,7 +691,8 @@ locales: ${MO_FILES}
 	${COMPILE_PLUGIN_STATUS}
 	in="$<"; \
 	out="$@"; \
-	if ${CC} ${PLUGIN_CFLAGS} ${CFLAGS} ${CPPFLAGS} ${CFLAGS_$<} ${CFLAGS_$@} -x c -c -o $@ $<; then \
+	${CC} ${PLUGIN_CFLAGS} ${CFLAGS} ${CPPFLAGS} ${CFLAGS_$<} ${CFLAGS_$@} -x c -c -o $@ $<; \
+	if [ "$${?}" -eq "0" ]; then \
 		${COMPILE_PLUGIN_OK}; \
 	else \
 		${COMPILE_PLUGIN_FAILED}; \
@@ -669,7 +709,8 @@ install: install-extra
 	for i in "" ${SHARED_LIB}; do \
 		test x"$$i" = x"" && continue; \
 		${INSTALL_STATUS}; \
-		if ${MKDIR_P} ${DESTDIR}${libdir} ${INSTALL_LIB}; then \
+		${MKDIR_P} ${DESTDIR}${libdir} ${INSTALL_LIB}; \
+		if [ "$${?}" -eq "0" ]; then \
 			${INSTALL_OK}; \
 		else \
 			${INSTALL_FAILED}; \
@@ -679,7 +720,8 @@ install: install-extra
 	for i in "" ${STATIC_LIB} ${STATIC_PIC_LIB}; do \
 		test x"$$i" = x"" && continue; \
 		${INSTALL_STATUS}; \
-		if ${MKDIR_P} ${DESTDIR}${libdir} && ${INSTALL} -m 644 $$i ${DESTDIR}${libdir}/$$i; then \
+		${MKDIR_P} ${DESTDIR}${libdir} && ${INSTALL} -m 644 $$i ${DESTDIR}${libdir}/$$i; \
+		if [ "$${?}" -eq "0" ]; then \
 			${INSTALL_OK}; \
 		else \
 			${INSTALL_FAILED}; \
@@ -689,7 +731,8 @@ install: install-extra
 	for i in "" ${PLUGIN}; do \
 		test x"$$i" = x"" && continue; \
 		${INSTALL_STATUS}; \
-		if ${MKDIR_P} ${DESTDIR}${plugindir} && ${INSTALL} -m 755 $$i ${DESTDIR}${plugindir}/$$i; then \
+		${MKDIR_P} ${DESTDIR}${plugindir} && ${INSTALL} -m 755 $$i ${DESTDIR}${plugindir}/$$i; \
+		if [ "$${?}" -eq "0" ]; then \
 			${INSTALL_OK}; \
 		else \
 			${INSTALL_FAILED}; \
@@ -699,7 +742,8 @@ install: install-extra
 	for i in "" ${DATA}; do \
 		test x"$$i" = x"" && continue; \
 		${INSTALL_STATUS}; \
-		if ${MKDIR_P} $$(dirname ${DESTDIR}${datadir}/${PACKAGE_NAME}/$$i) && ${INSTALL} -m 644 $$i ${DESTDIR}${datadir}/${PACKAGE_NAME}/$$i; then \
+		${MKDIR_P} $$(dirname ${DESTDIR}${datadir}/${PACKAGE_NAME}/$$i) && ${INSTALL} -m 644 $$i ${DESTDIR}${datadir}/${PACKAGE_NAME}/$$i; \
+		if [ "$${?}" -eq "0" ]; then \
 			${INSTALL_OK}; \
 		else \
 			${INSTALL_FAILED}; \
@@ -709,7 +753,8 @@ install: install-extra
 	for i in "" ${PROG}; do \
 		test x"$$i" = x"" && continue; \
 		${INSTALL_STATUS}; \
-		if ${MKDIR_P} ${DESTDIR}${bindir} && ${INSTALL} -m 755 $$i ${DESTDIR}${bindir}/$$i; then \
+		${MKDIR_P} ${DESTDIR}${bindir} && ${INSTALL} -m 755 $$i ${DESTDIR}${bindir}/$$i; \
+		if [ "$${?}" -eq "0" ]; then \
 			${INSTALL_OK}; \
 		else \
 			${INSTALL_FAILED}; \
@@ -719,7 +764,8 @@ install: install-extra
 	for i in "" ${INCLUDES}; do \
 		test x"$$i" = x"" && continue; \
 		${INSTALL_STATUS}; \
-		if ${MKDIR_P} ${DESTDIR}${includedir}/${includesubdir} && ${INSTALL} -m 644 $$i ${DESTDIR}${includedir}/${includesubdir}/$$i; then \
+		${MKDIR_P} ${DESTDIR}${includedir}/${includesubdir} && ${INSTALL} -m 644 $$i ${DESTDIR}${includedir}/${includesubdir}/$$i; \
+		if [ "$${?}" -eq "0" ]; then \
 			${INSTALL_OK}; \
 		else \
 			${INSTALL_FAILED}; \
@@ -729,7 +775,8 @@ install: install-extra
 	for i in "" ${MO_FILES}; do \
 		test x"$$i" = x"" && continue; \
 		${INSTALL_STATUS}; \
-		if ${MKDIR_P} ${DESTDIR}${localedir}/$${i%.mo}/LC_MESSAGES && ${INSTALL} -m 644 $$i ${DESTDIR}${localedir}/$${i%.mo}/LC_MESSAGES/${localename}.mo; then \
+		${MKDIR_P} ${DESTDIR}${localedir}/$${i%.mo}/LC_MESSAGES && ${INSTALL} -m 644 $$i ${DESTDIR}${localedir}/$${i%.mo}/LC_MESSAGES/${localename}.mo; \
+		if [ "$${?}" -eq "0" ]; then \
 			${INSTALL_OK}; \
 		else \
 			${INSTALL_FAILED}; \
@@ -739,7 +786,8 @@ install: install-extra
 	for i in "" ${MAN}; do \
 		test x"$$i" = x"" && continue; \
 		${INSTALL_STATUS}; \
-		if ${MKDIR_P} ${DESTDIR}${mandir}/${mansubdir} && ${INSTALL} -m 644 $$i ${DESTDIR}${mandir}/${mansubdir}/$$i; then \
+		${MKDIR_P} ${DESTDIR}${mandir}/${mansubdir} && ${INSTALL} -m 644 $$i ${DESTDIR}${mandir}/${mansubdir}/$$i; \
+		if [ "$${?}" -eq "0" ]; then \
 			${INSTALL_OK}; \
 		else \
 			${INSTALL_FAILED}; \
@@ -764,7 +812,8 @@ install-includes:
 		for i in "" ${INCLUDES}; do \
 			test x"$$i" = x"" && continue; \
 			${INSTALL_STATUS}; \
-			if ${MKDIR_P} $$destination && ${INSTALL} -m 644 $$i $$destination/$$i; then \
+			${MKDIR_P} $$destination && ${INSTALL} -m 644 $$i $$destination/$$i; \
+			if [ "$${?}" -eq "0" ]; then \
 				${INSTALL_OK}; \
 			else \
 				${INSTALL_FAILED}; \
@@ -785,7 +834,8 @@ uninstall: uninstall-extra
 	for i in "" ${SHARED_LIB}; do \
 		test x"$$i" = x"" && continue; \
 		if test -f ${DESTDIR}${libdir}/$$i; then \
-			if : ${UNINSTALL_LIB}; then \
+			: ${UNINSTALL_LIB}; \
+			if [ "$${?}" -eq "0" ]; then \
 				${DELETE_OK}; \
 			else \
 				${DELETE_FAILED}; \
@@ -796,7 +846,8 @@ uninstall: uninstall-extra
 	for i in "" ${STATIC_LIB} ${STATIC_PIC_LIB}; do \
 		test x"$$i" = x"" && continue; \
 		if test -f ${DESTDIR}${libdir}/$$i; then \
-			if rm -f ${DESTDIR}${libdir}/$$i; then \
+			rm -f ${DESTDIR}${libdir}/$$i; \
+			if [ "$${?}" -eq "0" ]; then \
 				${DELETE_OK}; \
 			else \
 				${DELETE_FAILED}; \
@@ -807,19 +858,21 @@ uninstall: uninstall-extra
 	for i in "" ${PLUGIN}; do \
 		test x"$$i" = x"" && continue; \
 		if test -f ${DESTDIR}${plugindir}/$$i; then \
-			if rm -f ${DESTDIR}${plugindir}/$$i; then \
+			rm -f ${DESTDIR}${plugindir}/$$i; \
+			if [ "$${?}" -eq "0" ]; then \
 				${DELETE_OK}; \
 			else \
 				${DELETE_FAILED}; \
 			fi \
 		fi \
 	done
-	-rmdir ${DESTDIR}${plugindir} >/dev/null 2>&1
+	rmdir ${DESTDIR}${plugindir} >/dev/null 2>&1
 
 	for i in "" ${DATA}; do \
 		test x"$$i" = x"" && continue; \
 		if test -f ${DESTDIR}${datadir}/${PACKAGE_NAME}/$$i; then \
-			if rm -f ${DESTDIR}${datadir}/${PACKAGE_NAME}/$$i; then \
+			rm -f ${DESTDIR}${datadir}/${PACKAGE_NAME}/$$i; \
+			if [ "$${?}" -eq "0" ]; then \
 				${DELETE_OK}; \
 			else \
 				${DELETE_FAILED}; \
@@ -827,12 +880,13 @@ uninstall: uninstall-extra
 		fi; \
 		rmdir "$$(dirname ${DESTDIR}${datadir}/${PACKAGE_NAME}/$$i)" >/dev/null 2>&1 || true; \
 	done
-	-rmdir ${DESTDIR}${datadir}/${PACKAGE_NAME} >/dev/null 2>&1
+	rmdir ${DESTDIR}${datadir}/${PACKAGE_NAME} >/dev/null 2>&1
 
 	for i in "" ${PROG}; do \
 		test x"$$i" = x"" && continue; \
 		if test -f ${DESTDIR}${bindir}/$$i; then \
-			if rm -f ${DESTDIR}${bindir}/$$i; then \
+			rm -f ${DESTDIR}${bindir}/$$i; \
+			if [ "$${?}" -eq "0" ]; then \
 				${DELETE_OK}; \
 			else \
 				${DELETE_FAILED}; \
@@ -843,19 +897,21 @@ uninstall: uninstall-extra
 	for i in "" ${INCLUDES}; do \
 		test x"$$i" = x"" && continue; \
 		if test -f ${DESTDIR}${includedir}/${includesubdir}/$$i; then \
-			if rm -f ${DESTDIR}${includedir}/${includesubdir}/$$i; then \
+			rm -f ${DESTDIR}${includedir}/${includesubdir}/$$i; \
+			if [ "$${?}" -eq "0" ]; then \
 				${DELETE_OK}; \
 			else \
 				${DELETE_FAILED}; \
 			fi \
 		fi \
 	done
-	-rmdir ${DESTDIR}${includedir}/${includesubdir} >/dev/null 2>&1
+	rmdir ${DESTDIR}${includedir}/${includesubdir} >/dev/null 2>&1
 
 	for i in "" ${MO_FILES}; do \
 		test x"$$i" = x"" && continue; \
 		if test -f ${DESTDIR}${localedir}/$${i%.mo}/LC_MESSAGES/${localename}.mo; then \
-			if rm -f ${DESTDIR}${localedir}/$${i%.mo}/LC_MESSAGES/${localename}.mo; then \
+			rm -f ${DESTDIR}${localedir}/$${i%.mo}/LC_MESSAGES/${localename}.mo; \
+			if [ "$${?}" -eq "0" ]; then \
 				${DELETE_OK}; \
 			else \
 				${DELETE_FAILED}; \
@@ -866,7 +922,8 @@ uninstall: uninstall-extra
 	for i in "" ${MAN}; do \
 		test x"$$i" = x"" && continue; \
 		if test -f ${DESTDIR}${mandir}/${mansubdir}/$$i; then \
-			if rm -f ${DESTDIR}${mandir}/${mansubdir}/$$i; then \
+			rm -f ${DESTDIR}${mandir}/${mansubdir}/$$i; \
+			if [ "$${?}" -eq "0" ]; then \
 				${DELETE_OK}; \
 			else \
 				${DELETE_FAILED}; \
@@ -887,7 +944,8 @@ clean:
 	for i in "" ${DEPS} ${OBJS} ${OBJS_EXTRA} ${LIB_OBJS} ${LIB_OBJS_EXTRA} ${MORPHOS_LIB_OBJS} ${MORPHOS_LIB_OBJS_EXTRA} ${PLUGIN_OBJS} ${PROG} ${PROG_NOINST} ${SHARED_LIB} ${SHARED_LIB_NOINST} ${STATIC_LIB} ${STATIC_LIB_NOINST} ${STATIC_PIC_LIB} ${STATIC_PIC_LIB_NOINST} ${FRAMEWORK} ${PLUGIN} ${PLUGIN_NOINST} ${CLEAN_LIB} ${MO_FILES} ${CLEAN}; do \
 		test x"$$i" = x"" && continue; \
 		if test -f $$i -o -d $$i; then \
-			if rm -fr $$i; then \
+			rm -fr $$i; \
+			if [ "$${?}" -eq "0" ]; then \
 				${DELETE_OK}; \
 			else \
 				${DELETE_FAILED}; \
@@ -906,7 +964,8 @@ distclean: clean
 	for i in "" ${DISTCLEAN} .deps *~; do \
 		test x"$$i" = x"" && continue; \
 		if test -f $$i -o -d $$i; then \
-			if rm -fr $$i; then \
+			rm -fr $$i; \
+			if [ "$${?}" -eq "0" ]; then \
 				${DELETE_OK}; \
 			else \
 				${DELETE_FAILED}; \
