BB92 (Shimano bottom bracket) with SRAM 30mm crankshaft (X01 or XX1 BB30)? The frame that I want to build has BB92 bottom bracket hole.

The drivetrain I want to use is 1x11 SRAM XX1 or X01 with 30mm crankshaft (BB30)(edit: also available GXP).

There are ways to fit it - directly pressing these bearings (or similar from other manufacturers) into the frame so the 30mm shaft will fit.

The question is will it fit also length-wise (will length of shaft be compatible) or same spacers are necessary and is the solution a good one (prone to squeaking, no bad experience with such setup etc.)?

Edit:
Other possibility is to use GXP X01 or XX1 crankset. Since those spindles are stepped it wont work with BB92 shimano bottom bracket, but will fit with GXP BB92 press-fit bearing cups (which is similar solution to the firts one)

Which solution is the better one?
BB92 is also known as PF41. The shell width should be 91.5mm and the inner diameter should be 41mm.

30mm:

According to SRAM's 1x11 frame fit specifications, the inner part of the XX1 "spider" sits 45.5mm from the centreline (Dimension W1). The equivalent dimension is 43.5mm for X1 cranksets.

MTB BBs compatible with Hollowtech 2 should have a fully-assembled width of 96.5mm. Road HT2 BBs should have a fully-assembled width of 91mm.

It won't be possible to fit SRAM 30mm cranks to a BB92-spec frame without permanently modifying the frame. There are various systems which use a 30mm diameter axle and greater lengths, including Rotor, Hope, and eThirteen.

GXP:

Many brands produce BB92/PF41 bottom brackets for GXP cranksets, but this combination is not common so many retailers won't have them in stock.

Hope offer converters to allow GXP axles to be used with their 24mm bottom brackets. These should not be used with Shimano BBs as they already have a plastic "top-hat" spacer between the bearings' inner casings and the axle, whereas Hope use bearings with a 24mm.