When Google originally started their project hosting site, they didn't want to be like certain niche sites such as the FSF's Savannah project, which only accepted GPL code. However, Google did not like seeing the proliferation of unnecessary open source licenses at the time, so they allowed a limited subset of open source licenses. Google also blocked the use of the Mozilla Public License and the AGPL in 2008.
Today, developers can now select the option - "other open source" to indicate licenses that aren't listed. Anything approved by the OSI will be accepted. Public domain projects will still be allowed only on a case-by-case basis (and only in certain countries). If you want to do a public domain project, it is suggest that you imitate D. Richard Hipp's methodology for distributing SQLite, which is also public domain.
The announcement blog explained Google's change of heart:
We never really liked turning away projects that were under real, compatible licenses like the zlib or other permissive licenses, nor did we really like turning away projects under licenses that serve a truly new function, like the AGPL. We also think that there were inconsistencies in how we handled multi-licensed projects (for instance: a project that is under an Apache license, but has a zlib component.)
Google also let users know that it is serious about blocking non-open source software on Google Code: "Please note: we will continue to hunt down and kill non-open source projects or other projects using Google Code as a generic file-hosting service."