title: Issue on build {fmt} with CMake
body: <p>I have a issue on build {fmt} with CMake.</p>
  
  <p>The structure of a project is the following:</p>
  
  <pre class="lang-sh prettyprint-override"><code>.
  ├── CMakeLists.txt
  ├── dep
  │   └── fmt
  └── src
      ├── CMakeLists.txt
      └── main.cpp
  </code></pre>
  
  <p><code>./CMakeLists.txt</code> is the following:</p>
  
  <pre><code>cmake_minimum_required(VERSION 3.2)
  project(fmtdemo)
  add_subdirectory(dep/fmt)
  add_subdirectory(src)
  </code></pre>
  
  <p><code>./src/CMakeLists.txt</code> is the following:</p>
  
  <pre><code>project(fmtdemo)
  add_library(fmtdemo main.cpp)
  add_library(fmtdemo::fmtdemo ALIAS fmtdemo)
  target_link_libraries(fmtdemo PUBLIC fmt::fmt-header-only)
  add_executable(fdemo main.cpp)
  </code></pre>
  
  <p><code>./src/main.cpp</code> is the following:</p>
  
  <pre class="lang-cpp prettyprint-override"><code>#include "../dep/fmt/include/fmt/core.h"
  using namespace std;
  int main()
  {
      fmt::print("Elapsed time: {0:.2f} seconds", 1.23);
      string message = fmt::format("The answer is {}", 42);
      return 0;
  }
  </code></pre>
  
  <p>When I build it I receive an error:</p>
  
  <pre class="lang-sh prettyprint-override"><code>CMakeFiles/fdemo.dir/main.cpp.o: In function `void fmt::v5::print&lt;char [30], double, 0&gt;(char const (&amp;) [30], double&amp;&amp;)':
  main.cpp:(.text._ZN3fmt2v55printIA30_cJdELi0EEEvRKT_DpOT0_[_ZN3fmt2v55printIA30_cJdELi0EEEvRKT_DpOT0_]+0x78): undefined reference to `fmt::v5::vprint(fmt::v5::basic_string_view&lt;char&gt;, fmt::v5::format_args)'
  CMakeFiles/fdemo.dir/main.cpp.o: In function `std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; fmt::v5::format&lt;char [17], int, char&gt;(char const (&amp;) [17], int&amp;&amp;)':
  main.cpp:(.text._ZN3fmt2v56formatIA17_cJiEcEENSt7__cxx1112basic_stringIT1_St11char_traitsIS5_ESaIS5_EEERKT_DpOT0_[_ZN3fmt2v56formatIA17_cJiEcEENSt7__cxx1112basic_stringIT1_St11char_traitsIS5_ESaIS5_EEERKT_DpOT0_]+0x7f): undefined reference to `std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;
  fmt::v5::internal::vformat&lt;char&gt;(fmt::v5::basic_string_view&lt;char&gt;, fmt::v5::basic_format_args&lt;fmt::v5::basic_format_context&lt;std::back_insert_iterator&lt;fmt::v5::internal::buffer&lt;char&gt; &gt;, char&gt; &gt;)'
  collect2: error: ld returned 1 exit status
  src/CMakeFiles/fdemo.dir/build.make:83: recipe for target 'src/fdemo' failed
  make[2]: *** [src/fdemo] Error 1
  CMakeFiles/Makefile2:170: recipe for target 'src/CMakeFiles/fdemo.dir/all' failed
  make[1]: *** [src/CMakeFiles/fdemo.dir/all] Error 2
  Makefile:83: recipe for target 'all' failed
  make: *** [all] Error 2
  </code></pre>