This is probably not a freetype problem, but maybe someone here can
point me in a direction that helps. I have a couple of fonts in which
the OS2 structure contains bogus weights. For example, a (Mac)
Helvetica.dfont that the Helvetica Bold font weight is the same as the
Regular weight, but the Bold Italic weight is (correctly) larger. The
Helvetica font with 10.4 is correct, but the 10.5 is version is hosed.
The LinotypeUnivers font I have is even worse. It has a couple dozen
weights, widths, plus italics and probably 2/3 report wrong widths and
weights.
I am assuming that there must be some Mac resource or?? that is
correctly identifying the weights, or Mac apps would not work with these
fonts. Sadly, I expect this from free fonts, but these are anything but!
The mac probably never looks at the OS/2 table. That's a MicroSoft
extension and in the old days mac fonts did not even have it.
I would guess that the mac is simply reading strings out of the 'name'
table (probably SubFamily string ID).