Unless one wants to write a spec file from scratch, I find it easier to take the existing one that was used to build the (usually older) version of a software package included in a distro, point to the newer tarball, and go from there. You get both the newer code as well as packages that are organized around how the distribution expects them.
A good reason not to do that is (a) your package should not interfere with the system packages (I.e., it should not be building into /etc, /usr/bin, etc and (b) RHEL/CentOS link to MozNSS, which is very problematic and should be avoided. It makes much more sense to start with something like the LTB project, and base anything off their spec if not using their pre-compiled packages.
--Quanah -- Quanah Gibson-Mount Platform Architect Zimbra, Inc. -------------------- Zimbra :: the leader in open source messaging and collaboration A division of Synacor, Inc