Modifying stock firmware
Apart from the AOSP code that Google provides, Android devices also require lots of device specific code, especially kernel, GPU drivers, radios etc. These are released by the manufacturer some time after the official update is out. 4.2 source is out only for some of Nexus devices yet (and not all of them).

Nexus devices are the easiest to build custom ROMs on, for obvious reasons. If your device source is released, you can find specific guides for devices - like Nexus 7 Galaxy Nexus, Nexus S(which I use), Kindle HD etc. Google "compile jellybean from source" and you will get guides for your device (4.1 for now).