Should i resolve myself to add third party and ajax libraries that i use in my project - tinyMCE editor for example (more than 1800 files) or fckEditor - when my project doesn't contain nearly as many files, just for the sake of compilation? or should i just find a way to add it to the build later?
If the particular libraries have a public SVN repository, you can add them in as an svn:external - though I would add them in as particular known versions (on revision number or a tag/branch), rather than just the trunk.
Another alternative to that is SVN Vendor Branches, a more involved, but more power with it.
I always add all project dependencies to source control. That way another developer can do a checkout (arguably a big one sometimes) and be ready to go without having to figure out what's missing and find it.
The best way to handle this situation is with externals. That way the third party stuff isn't part of the project but is still in source control and still gets checked out with everything else.
Here's the section out of the SVN Book: http://svnbook.red-bean.com/en/1.0/ch07s03.html
Manage the dependencies with Piston and link your projects to them via SVN externals. That combines complete control over external libraries (no dependency on the library's server performance) and repository tidiness (you don't end up with multiple copies of a single library scattered around the repository), while allowing you to easily switch the library's version on a by project basis.
As most of the others have said, you can use SVN externals to handle the third-party code makes it fairly clean. There are two ways of managing this:
Link directly to the third-party repository with your external reference, optionally to a particular revision and/or tag/branch.
If you are worried about long-term availability of third-party repositories, make your own repository for holding third-party code, and then use svn:externals to refer to that.
The second method has more overhead, and means you need to go get updates to the third-party code manually and apply them in your repository, which can be seen as an advantage or disadvantage.