add more options for code generation

This patch adds command line options to allow us to specify more detailed features for target platform.