MakeBundle is a small application designed to simplify the process of creating bundled applications, libraries, or plugins from the Metrowerks CodeWarrior programming environment. Although CodeWarrior has the required support for creating bundles, MakeBundle improves upon the process.
So what does MakeBundle do? It converts a single-file application to a bundled application with a simple drag & drop. Not only does this work for applications (.app), but it also works for CFM shared libraries (.cfm) and CFPlugins (.plugin).
The complete list of tasks that MakeBundle performs are as follows:
- Creates the folder hierarchy for a bundle.
- Extracts the 'plst' resource into an Info.plist file.
- Extracts the executable from the datafork to the correct location in the bundle.
- Creates a PkgInfo file.
- Extracts resources into localizable or non-localizable .rsrc files, or alternatively ignores resources that are not useful for bundles.
- Flattens resources into the datafork of their respective files. Bundles are completely flat and safe for non HFS file systems.Extracts 'icns' icons into individual .icns files.
- Optionally installs a custom icon onto the bundle folder for non-applications.
- Uses the plist to recognize the language of the application. This makes creating localized bundles extremely easy.
Here at Aladdin Systems, we've been using MakeBundle to produce bundled versions of our applications in a reliable, consistent manner. It has also made it easier to localize our software for MacOS X. Because this utility has been useful to us, we're hoping it may be useful to the developer community. Best of all, it's entirely free to use.