#utils
set(utils_dir ${CMAKE_SOURCE_DIR}/src/lib/util)

addprojectflags()

include_directories(
    ${CMAKE_SOURCE_DIR}/src/osd
    ${CMAKE_SOURCE_DIR}/src/lib/util
    ${CMAKE_SOURCE_DIR}/3rdparty
    ${CMAKE_SOURCE_DIR}/3rdparty/expat/lib
    ${CMAKE_SOURCE_DIR}/3rdparty/zlib
    ${CMAKE_SOURCE_DIR}/3rdparty/libflac/include
    ${CMAKE_SOURCE_DIR}/3rdparty/utf8proc
)

add_compile_definitions(
    UTF8PROC_STATIC
)

add_library(utils STATIC
    ${utils_dir}/abi.h
    ${utils_dir}/avhuff.cpp
    ${utils_dir}/avhuff.h
    ${utils_dir}/aviio.cpp
    ${utils_dir}/aviio.h
    ${utils_dir}/base64.hpp
    ${utils_dir}/bitmap.cpp
    ${utils_dir}/bitmap.h
    ${utils_dir}/bitstream.h
    ${utils_dir}/cdrom.cpp
    ${utils_dir}/cdrom.h
    ${utils_dir}/chd.cpp
    ${utils_dir}/chd.h
    ${utils_dir}/chdcd.cpp
    ${utils_dir}/chdcd.h
    ${utils_dir}/chdcodec.cpp
    ${utils_dir}/chdcodec.h
    ${utils_dir}/client_http.hpp
    ${utils_dir}/client_https.hpp
    ${utils_dir}/client_ws.hpp
    ${utils_dir}/client_wss.hpp
    ${utils_dir}/corealloc.cpp
    ${utils_dir}/corealloc.h
    ${utils_dir}/corefile.cpp
    ${utils_dir}/corefile.h
    ${utils_dir}/corestr.cpp
    ${utils_dir}/corestr.h
    ${utils_dir}/coretmpl.h
    ${utils_dir}/coreutil.cpp
    ${utils_dir}/coreutil.h
    ${utils_dir}/crypto.hpp
    ${utils_dir}/delegate.cpp
    ${utils_dir}/delegate.h
    ${utils_dir}/disasmintf.cpp
    ${utils_dir}/disasmintf.h
    ${utils_dir}/dynamicclass.cpp
    ${utils_dir}/dynamicclass.h
    ${utils_dir}/dynamicclass.ipp
    ${utils_dir}/endianness.h
    ${utils_dir}/flac.cpp
    ${utils_dir}/flac.h
    ${utils_dir}/harddisk.cpp
    ${utils_dir}/harddisk.h
    ${utils_dir}/hash.cpp
    ${utils_dir}/hash.h
    ${utils_dir}/hashing.cpp
    ${utils_dir}/hashing.h
    ${utils_dir}/huffman.cpp
    ${utils_dir}/huffman.h
    ${utils_dir}/ioprocs.cpp
    ${utils_dir}/ioprocs.h
    ${utils_dir}/ioprocsfill.h
    ${utils_dir}/ioprocsfilter.cpp
    ${utils_dir}/ioprocsfilter.h
    ${utils_dir}/ioprocsvec.h
    ${utils_dir}/jedparse.cpp
    ${utils_dir}/jedparse.h
    ${utils_dir}/language.cpp
    ${utils_dir}/language.h
    ${utils_dir}/lrucache.h
    ${utils_dir}/md5.cpp
    ${utils_dir}/md5.h
    ${utils_dir}/msdib.cpp
    ${utils_dir}/msdib.h
    ${utils_dir}/nanosvg.cpp
    ${utils_dir}/nanosvg.h
    ${utils_dir}/opresolv.cpp
    ${utils_dir}/opresolv.h
    ${utils_dir}/options.cpp
    ${utils_dir}/options.h
    ${utils_dir}/palette.cpp
    ${utils_dir}/palette.h
    ${utils_dir}/path.cpp
    ${utils_dir}/path.h
    ${utils_dir}/path_to_regex.cpp
    ${utils_dir}/path_to_regex.hpp
    ${utils_dir}/plaparse.cpp
    ${utils_dir}/plaparse.h
    ${utils_dir}/png.cpp
    ${utils_dir}/png.h
    ${utils_dir}/server_http.hpp
    ${utils_dir}/server_https.hpp
    ${utils_dir}/server_ws.hpp
    ${utils_dir}/server_wss.hpp
    ${utils_dir}/strformat.cpp
    ${utils_dir}/strformat.h
    ${utils_dir}/timeconv.cpp
    ${utils_dir}/timeconv.h
    ${utils_dir}/unicode.cpp
    ${utils_dir}/unicode.h
    ${utils_dir}/unzip.cpp
    ${utils_dir}/unzip.h
    ${utils_dir}/un7z.cpp
    ${utils_dir}/utilfwd.h
    ${utils_dir}/vbiparse.cpp
    ${utils_dir}/vbiparse.h
    ${utils_dir}/vecstream.cpp
    ${utils_dir}/vecstream.h
    ${utils_dir}/wavwrite.cpp
    ${utils_dir}/wavwrite.h
    ${utils_dir}/xmlfile.cpp
    ${utils_dir}/xmlfile.h
    ${utils_dir}/zippath.cpp
    ${utils_dir}/zippath.h
)
