set(HEADERS
desmume/arm_jit.h
desmume/armcpu.h
desmume/bios.h
desmume/cp15.h
desmume/emufile.h
desmume/FIFO.h
desmume/firmware.h
desmume/instruction_attributes.h
desmume/instruction_tabdef.inc
desmume/instructions.h
desmume/matrix.h
desmume/mc.h
desmume/mem.h
desmume/metaspu/metaspu.h
desmume/MMU.h
desmume/MMU_timing.h
desmume/NDSSystem.h
desmume/PACKED.h
desmume/PACKED_END.h
desmume/readwrite.h
desmume/registers.h
desmume/slot1.h
desmume/SPU.h
desmume/thumb_tabdef.inc
desmume/types.h
desmume/utils/AsmJit/apibegin.h
desmume/utils/AsmJit/apiend.h
desmume/utils/AsmJit/AsmJit.h
desmume/utils/AsmJit/base.h
desmume/utils/AsmJit/base/assembler.h
desmume/utils/AsmJit/base/codegen.h
desmume/utils/AsmJit/base/compiler.h
desmume/utils/AsmJit/base/constpool.h
desmume/utils/AsmJit/base/containers.h
desmume/utils/AsmJit/base/context_p.h
desmume/utils/AsmJit/base/cpuinfo.h
desmume/utils/AsmJit/base/cputicks.h
desmume/utils/AsmJit/base/error.h
desmume/utils/AsmJit/base/globals.h
desmume/utils/AsmJit/base/intutil.h
desmume/utils/AsmJit/base/lock.h
desmume/utils/AsmJit/base/logger.h
desmume/utils/AsmJit/base/operand.h
desmume/utils/AsmJit/base/runtime.h
desmume/utils/AsmJit/base/string.h
desmume/utils/AsmJit/base/vectypes.h
desmume/utils/AsmJit/base/vmem.h
desmume/utils/AsmJit/base/zone.h
desmume/utils/AsmJit/build.h
desmume/utils/AsmJit/Config.h
desmume/utils/AsmJit/host.h
desmume/utils/AsmJit/x86.h
desmume/utils/AsmJit/x86/x86assembler.h
desmume/utils/AsmJit/x86/x86compiler.h
desmume/utils/AsmJit/x86/x86context_p.h
desmume/utils/AsmJit/x86/x86cpuinfo.h
desmume/utils/AsmJit/x86/x86inst.h
desmume/utils/AsmJit/x86/x86operand.h
desmume/utils/AsmJit/x86/x86scheduler_p.h
desmume/utils/bits.h
desmume/version.h
spu/adpcmdecoder.h
spu/interpolator.h
spu/samplecache.h
spu/sampledata.h)
set(SOURCES
desmume/addons/slot1_retail.cpp
desmume/arm_instructions.cpp
desmume/arm_jit.cpp
desmume/armcpu.cpp
desmume/bios.cpp
desmume/cp15.cpp
desmume/emufile.cpp
desmume/FIFO.cpp
desmume/firmware.cpp
desmume/mc.cpp
desmume/metaspu/metaspu.cpp
desmume/MMU.cpp
desmume/NDSSystem.cpp
desmume/readwrite.cpp
desmume/slot1.cpp
desmume/SPU.cpp
desmume/thumb_instructions.cpp
desmume/utils/AsmJit/base/assembler.cpp
desmume/utils/AsmJit/base/codegen.cpp
desmume/utils/AsmJit/base/compiler.cpp
desmume/utils/AsmJit/base/constpool.cpp
desmume/utils/AsmJit/base/containers.cpp
desmume/utils/AsmJit/base/context.cpp
desmume/utils/AsmJit/base/cpuinfo.cpp
desmume/utils/AsmJit/base/cputicks.cpp
desmume/utils/AsmJit/base/error.cpp
desmume/utils/AsmJit/base/globals.cpp
desmume/utils/AsmJit/base/logger.cpp
desmume/utils/AsmJit/base/operand.cpp
desmume/utils/AsmJit/base/runtime.cpp
desmume/utils/AsmJit/base/string.cpp
desmume/utils/AsmJit/base/vmem.cpp
desmume/utils/AsmJit/base/zone.cpp
desmume/utils/AsmJit/x86/x86assembler.cpp
desmume/utils/AsmJit/x86/x86compiler.cpp
desmume/utils/AsmJit/x86/x86context.cpp
desmume/utils/AsmJit/x86/x86cpuinfo.cpp
desmume/utils/AsmJit/x86/x86inst.cpp
desmume/utils/AsmJit/x86/x86operand.cpp
desmume/utils/AsmJit/x86/x86operand_regs.cpp
desmume/utils/AsmJit/x86/x86scheduler.cpp
desmume/version.cpp
spu/adpcmdecoder.cpp
spu/interpolator.cpp
spu/samplecache.cpp
spu/sampledata.cpp
XSFConfig_2SF.cpp
XSFPlayer_2SF.cpp)
add_library(in_2sf SHARED ${HEADERS} ${SOURCES})
source_group(TREE ${CMAKE_CURRENT_SOURCE_DIR} PREFIX "Header Files" FILES ${HEADERS})
source_group(TREE ${CMAKE_CURRENT_SOURCE_DIR} PREFIX "Source Files" FILES ${SOURCES})
target_compile_options(in_2sf PUBLIC
$<$<CXX_COMPILER_ID:MSVC>:/wd4018 /wd4100 /wd4146 /wd4127 /wd4189 /wd4201 /wd4245 /wd4456 /wd4459 /wd4701 /wd4703 /wd4706 /wd4996 /wd6001 /wd6011 /wd6297 /wd6308 /wd6385 /wd6386 /wd26454 /wd26495 /wd26812 /wd26819 /wd28112>)
target_link_libraries(in_2sf
in_xsf_framework)