Index: tools/autotool.py
===================================================================
--- tools/autotool.py	(revision a949f4ae07227222cc7ff520baf64ebe6ef3d307)
+++ tools/autotool.py	(revision 9fb280c18d7a3aadce7085e013cc9625098ea17e)
@@ -306,7 +306,9 @@
 
 	common['CLANG'] = "%sclang" % prefix
+	common['CLANGXX'] = "%sclang++" % prefix
 
 	if (not path is None):
 		common['CLANG'] = "%s/%s" % (path, common['CLANG'])
+		common['CLANGXX'] = "%s/%s" % (path, common['CLANGXX'])
 
 	check_app([common['CLANG'], "--version"], "clang", details)
@@ -625,11 +627,14 @@
 			check_common(common, "CLANG")
 			common['CC'] = common['CLANG']
+			common['CXX'] = common['CLANGXX']
 			cc_autogen = common['CC'] + " -no-integrated-as"
 
 			if (config['INTEGRATED_AS'] == "yes"):
 				common['CC'] += " -integrated-as"
+				common['CXX'] += " -integrated-as"
 
 			if (config['INTEGRATED_AS'] == "no"):
 				common['CC'] += " -no-integrated-as"
+				common['CXX'] += " -no-integrated-as"
 
 		# Find full path to libgcc
Index: uspace/Makefile.common
===================================================================
--- uspace/Makefile.common	(revision a949f4ae07227222cc7ff520baf64ebe6ef3d307)
+++ uspace/Makefile.common	(revision 9fb280c18d7a3aadce7085e013cc9625098ea17e)
@@ -189,10 +189,12 @@
 	-Wextra \
 	-Wno-unused-parameter \
-	-Wmissing-prototypes \
 	-Wwrite-strings \
 	-Werror-implicit-function-declaration \
-	-Wsystem-headers \
 	-Wunknown-pragmas \
 	-Wa,--fatal-warnings
+
+ifneq ($(COMPILER),clang)
+	DEFAULT_CFLAGS += -Wmissing-prototypes -Wsystem-headers
+endif
 
 # XXX: -fno-builtin-strftime is for a seemingly spurious format warning.
@@ -239,4 +241,8 @@
 	-fno-common \
 	-fdebug-prefix-map=$(realpath $(ROOT_PATH))=.
+
+ifeq ($(COMPILER),clang)
+	COMMON_CFLAGS += -ffreestanding -nostdlibinc -Wno-unused-command-line-argument
+endif
 
 # TODO: Use a different name.
