MFBT stands for "Mozilla Framework Based on Templated".
Over time, it has been conflated with "put everything that we need to share between js and gecko", when in fact, that's what libmozglue is for (and, in fact, MFBT is part of libmozglue).
Unfortunately, that causes problems, such as https://bugzilla.mozilla.org/show_bug.cgi?id=1547519#c4, which is due to DisableStlWrapping in mfbt/moz.build.
DisableStlWrapping is necessary in there because MFBT is not headers-only, and more-or-less standalone things that use MFBT, starting with the MFBT unit tests, but also other things, fail to build when they use MFBT and not libmozglue (which they have a right not to want), because STL wrapping requires mozalloc/mozjemalloc, which are in libmozglue. (Yeah, it's all hairy).
Not all .cpp/.cc files being equal in
mfbt/, this is a tracking bug. I'll file a separate blocking bug for the most immediate things that would need to get out of the way to address the issue in bug 1547519.