Skip to content

Commit

Permalink
add alias targets with fmt namespace
Browse files Browse the repository at this point in the history
For the consumer it should not matter if fmt has been added to the
project as subdirectory or via find_package. With the alias targets
the library can be always imported via fmt::fmt.
  • Loading branch information
niosHD committed May 23, 2017
1 parent 9f48bb8 commit a68c7a8
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 3 deletions.
2 changes: 2 additions & 0 deletions fmt/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ if (HAVE_OPEN)
endif ()

add_library(fmt ${FMT_SOURCES} ${FMT_HEADERS} ../README.rst ../ChangeLog.rst)
add_library(fmt::fmt ALIAS fmt)

option(FMT_CPPFORMAT "Build cppformat library for backward compatibility." OFF)
if (FMT_CPPFORMAT)
Expand Down Expand Up @@ -43,6 +44,7 @@ endif ()
# additionally define a header only library when cmake is new enough
if (CMAKE_VERSION VERSION_GREATER 3.1.0 OR CMAKE_VERSION VERSION_EQUAL 3.1.0)
add_library(fmt-header-only INTERFACE)
add_library(fmt::fmt-header-only ALIAS fmt-header-only)

target_compile_definitions(fmt-header-only INTERFACE FMT_HEADER_ONLY=1)

Expand Down
6 changes: 3 additions & 3 deletions test/add-subdirectory-test/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,9 @@ project(fmt-test)
add_subdirectory(../.. fmt)

add_executable(library-test "main.cc")
target_link_libraries(library-test fmt)
target_link_libraries(library-test fmt::fmt)

if (TARGET fmt-header-only)
if (TARGET fmt::fmt-header-only)
add_executable(header-only-test "main.cc")
target_link_libraries(header-only-test fmt-header-only)
target_link_libraries(header-only-test fmt::fmt-header-only)
endif ()

0 comments on commit a68c7a8

Please sign in to comment.