Okay, I checked my old project getting Nibs working with a MacOS 9 project and here is how to create a dual-use 9/X package (that should work):
- First, compile your Mach-O project in PB under OS X. This will form the basis for your package. This will run without modification under OS X.
- Then, compile the CFM module using CodeWarrior. (You should be able to compile the Mach-O binary here too if you want... but I haven't done it)
- So you should have a CFM app (may show up as a Classic app) and a Mach-O packaged app now.
- Open the package and open the Contents folder. Create a new folder inside this called 'MacOSClassic'.
- Copy the CFM app into the MacOSClassic folder (make sure it has the same name as the Mach-O binary).
- Here is the tricky part... make an alias of the CFM app now in the MacOSClassic folder in the package's root folder. Usually Command-Option-Dragging the CFM app from the MacOSClassic folder to the root package folder will do it.
So your package should now look like this if your app is called 'Shtuff' for example:
Shtuff.app/
/Contents/
/MacOS/Shtuff
/MacOSClassic/Shtuff/
/PkgInfo
/Info.plist
/Resources/ShtuffRez.nib
/Shtuff.app -> /Contents/MacOSClassic/Shtuff
Now... I am not sure if the alias needs to be named 'Shtuff.app' or 'Shtuff' in this example... I haven't exactly tried to create a dual X/9 package before now.
If you want just a 9 Package... you can rid yourself of the /MacOS/ folder, but everything else still needs to be there (to be properly recognized and seen by X as a good package)... Plus you need to set the 'bundle' bit if you boot into 9 and it looks like a folder. There are 9 apps out there to package folders.
Good luck.