# Copyright (c) 2026 Ember
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.

set(LIBRARY_NAME commands)

add_library(${LIBRARY_NAME} STATIC
    src/Utility.cpp
    src/Command.cpp
    src/ScopedCommand.cpp
    include/commands/Commands.h
    include/commands/Command.h
    include/commands/CommandMap.h
    include/commands/Argument.h
    include/commands/Utility.h
    include/commands/Result.h
    include/commands/Suggestions.h
    include/commands/Exception.h
    include/commands/Arguments.h
    include/commands/ArgumentMap.h
    include/commands/AnyArg.h
    include/commands/ScopedCommand.h
    include/commands/UserData.h
    include/commands/Flags.h
    include/commands/SearchResult.h
    include/commands/impl/StringHash.h
)

target_include_directories(${LIBRARY_NAME} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/include)
target_link_libraries(${LIBRARY_NAME} PUBLIC ${Boost_LIBRARIES})
set_target_properties(${LIBRARY_NAME} PROPERTIES FOLDER "Common Libraries")