title: link library to all targets in cmake project
body: <p>Let me describe what I think is a sufficiently common use case, that it should be supported.  Consider a project which consists of a library and a set of executable that use that library.  A straightforward approach is to add_library, followed by a sequence of add_executable() target_link_lib() pairs.</p>
  
  <p>This is a lot of boilerplate coding.  It would be nice to able to do something like set(PROJECT_LINK_LIBS, lib1 ...), and have cmake remove the extra boilerplate.  </p>
  
  <p>Thinking on this more, I realize I would like a link_libraries function that behaves similarly to include_directories.  I would argue that this:</p>
  
  <ol>
  <li>Would be useful in a lot of cases.</li>
  <li>Would lead to dryer CMakeLists.</li>
  <li>Would encourage better code organizations -- there would be a natural incentive to organize the folders, code, and executables in such a way that all executables have the same dependancies -- certainly a clean practice.</li>
  </ol>
  
  <p>Is there anything like this?</p>