<p>Can Emacs support the concept of projects? That would be where several configuration options varies depending on what project you are working on.</p>

You generally wouldn't expect emacs to know about differences in build requirements---you let the build system (make or whatever) take care of that. To handle different coding standard define local
```
yourproject.el
```
files to set variables, load and unload local modes, etc... (use
```
M-x load-file
```
to run it).