Add include search path but not recursive?

I would like to add the boost library to my project. For this I have put the library into a directory and written a build file boost.Build.cs:

public class boost : ModuleRules
{
	private string ModulePath
	{
		get { return Path.GetDirectoryName( RulesCompiler.GetModuleFilename( this.GetType().Name ) ); }
	}

	public boost(TargetInfo Target)
	{
		PublicIncludePaths.Add( Path.Combine( ModulePath, "Public" ) );
	}
}

This makes the headers accessible in the game module. However, the xcode project generated not only contains a single entry with the path to the root of the boost include directory, but some how the build tool enumerates all subfolders of the boost include directory and adds them as well?!

How can I prevent this automatic addition of the subfolders ? As this breaks the boost library.

Thanks !

Found the issue. The boost module was not declared in third party. It looks like that for normal game modules the directories are always recursively added. For thirdparty modules, this doesn’t happen.
Relevant sections in the code in UEBuildTarget.cs ( 3323; v4.10.1 )

// Don't generate include paths for third party modules; they don't follow our conventions. Core is a special-case... leave it alone
				if (RulesObject.Type != ModuleRules.ModuleType.External && ModuleName != "Core")

I fixed it by adding in the constructor boost.Build.cs:

Type = ModuleType.External;