diff --git a/build/jam/HeadersRules b/build/jam/HeadersRules
index 3b812ad8bb..ea6571c67a 100644
--- a/build/jam/HeadersRules
+++ b/build/jam/HeadersRules
@@ -456,14 +456,11 @@ rule FStandardHeaders architecture
 
 	local headers = ;
 
-	# The C++ headers and gcc headers.
-	if $(architecture) != x86_gcc2 {
-		headers += [ C++HeaderDirectories $(architecture) ] ;
-		headers += [ GccHeaderDirectories $(architecture) ] ;
-	} else {
-		headers += [ FDirName $(HAIKU_TOP) headers cpp ] ;
-		headers += [ FDirName $(HAIKU_TOP) headers build gcc-2.95.3 ] ;
-	}
+	# The c++ headers.
+	headers += [ C++HeaderDirectories $(architecture) ] ;
+
+	# The gcc headers.
+	headers += [ GccHeaderDirectories $(architecture) ] ;
 
 	# Use headers directory, to allow to do things like include <posix/string.h>
 	headers += [ FDirName $(HAIKU_TOP) headers ] ;
diff --git a/build/jam/SystemLibraryRules b/build/jam/SystemLibraryRules
index 3a161f6678..95da0e5a74 100644
--- a/build/jam/SystemLibraryRules
+++ b/build/jam/SystemLibraryRules
@@ -308,7 +308,9 @@ rule C++HeaderDirectories architecture
 	# Returns the c++ header directories to use for the given architecture.
 
 	local c++HeaderDirs ;
-	if $(architecture) != x86_gcc2 {
+	if $(architecture) = x86_gcc2 {
+		c++HeaderDirs = [ FDirName $(HAIKU_TOP) headers cpp ] ;
+	} else {
 		local baseDir = [
 			BuildFeatureAttribute gcc_syslibs_devel : c++-headers : path
 		] ;
@@ -332,7 +334,9 @@ rule GccHeaderDirectories architecture
 	# Returns the gcc header directories to use for the given architecture.
 
 	local gccHeaderDirs ;
-	if $(architecture) != x86_gcc2 {
+	if $(architecture) = x86_gcc2 {
+		gccHeaderDirs = [ FDirName $(HAIKU_TOP) headers build gcc-2.95.3 ] ;
+	} else {
 		local baseDir = [
 			BuildFeatureAttribute gcc_syslibs_devel : gcc-headers : path
 		] ;