mirror of
https://github.com/Dillonb/n64.git
synced 2025-04-02 10:42:08 -04:00
91 lines
No EOL
4.5 KiB
CMake
91 lines
No EOL
4.5 KiB
CMake
enable_testing()
|
|
|
|
INCLUDE_DIRECTORIES(SYSTEM "../src/contrib/include" "../src/common" "../src")
|
|
|
|
if (NOT WIN32)
|
|
add_executable(test_cpu test_cpu.c unit.h)
|
|
target_link_libraries(test_cpu r4300i common core)
|
|
add_test(test_cpu test_cpu)
|
|
endif()
|
|
|
|
add_executable(test_gamepad_trim test_gamepad_trim.c)
|
|
target_link_libraries(test_gamepad_trim core)
|
|
add_test(test_gamepad_trim test_gamepad_trim)
|
|
|
|
add_executable(test_vmadm_overflow test_vmadm_overflow.c unit.h)
|
|
target_link_libraries(test_vmadm_overflow rsp common core)
|
|
add_test(test_vmadm_overflow test_vmadm_overflow)
|
|
|
|
find_program(BASS_FOUND bass)
|
|
find_program(CHKSUM64_FOUND chksum64)
|
|
|
|
if (EXISTS ${CMAKE_CURRENT_LIST_DIR}/n64-tests)
|
|
if (BASS_FOUND)
|
|
if (CHKSUM64_FOUND)
|
|
add_subdirectory(n64-tests/src)
|
|
add_executable(test_rom test_rom.c unit.h)
|
|
target_link_libraries(test_rom r4300i common core)
|
|
|
|
file(GLOB asmfiles ${CMAKE_CURRENT_LIST_DIR}/n64-tests/src/*.asm)
|
|
foreach(asmfile ${asmfiles})
|
|
get_filename_component(name ${asmfile} NAME_WLE)
|
|
|
|
add_test(NAME test_${name}_recomp COMMAND test_rom ./n64-tests/src/${name}.z64 recomp)
|
|
add_test(NAME test_${name}_interp COMMAND test_rom ./n64-tests/src/${name}.z64 interp)
|
|
add_dependencies(test_rom assemble_test_rom_${name})
|
|
endforeach()
|
|
else()
|
|
message("chksum64 not found, not building/running test ROMs. Install it from here: https://raw.githubusercontent.com/DragonMinded/libdragon/trunk/tools/chksum64.c")
|
|
endif()
|
|
else()
|
|
message("Bass not found, not building/running test ROMs. Install it from here: https://github.com/ARM9/bass")
|
|
endif()
|
|
endif()
|
|
|
|
if (NOT WIN32)
|
|
add_executable(test_rsp test_rsp.c unit.h)
|
|
target_link_libraries(test_rsp rsp r4300i core common)
|
|
|
|
add_subdirectory(testcases/rsp)
|
|
|
|
configure_file(testcases/cpu/addi.testcase addi.testcase COPYONLY)
|
|
configure_file(testcases/cpu/bgezal.testcase bgezal.testcase COPYONLY)
|
|
configure_file(testcases/cpu/bltz.testcase bltz.testcase COPYONLY)
|
|
configure_file(testcases/cpu/nor.testcase nor.testcase COPYONLY)
|
|
configure_file(testcases/cpu/sltu.testcase sltu.testcase COPYONLY)
|
|
configure_file(testcases/cpu/addiu.testcase addiu.testcase COPYONLY)
|
|
configure_file(testcases/cpu/bgezl.testcase bgezl.testcase COPYONLY)
|
|
configure_file(testcases/cpu/bnel.testcase bnel.testcase COPYONLY)
|
|
configure_file(testcases/cpu/ori.testcase ori.testcase COPYONLY)
|
|
configure_file(testcases/cpu/sra.testcase sra.testcase COPYONLY)
|
|
configure_file(testcases/cpu/add.testcase add.testcase COPYONLY)
|
|
configure_file(testcases/cpu/bgez.testcase bgez.testcase COPYONLY)
|
|
configure_file(testcases/cpu/bne.testcase bne.testcase COPYONLY)
|
|
configure_file(testcases/cpu/or.testcase or.testcase COPYONLY)
|
|
configure_file(testcases/cpu/srav.testcase srav.testcase COPYONLY)
|
|
configure_file(testcases/cpu/addu.testcase addu.testcase COPYONLY)
|
|
configure_file(testcases/cpu/bgtzl.testcase bgtzl.testcase COPYONLY)
|
|
configure_file(testcases/cpu/div.testcase div.testcase COPYONLY)
|
|
configure_file(testcases/cpu/sll.testcase sll.testcase COPYONLY)
|
|
configure_file(testcases/cpu/srl.testcase srl.testcase COPYONLY)
|
|
configure_file(testcases/cpu/andi.testcase andi.testcase COPYONLY)
|
|
configure_file(testcases/cpu/bgtz.testcase bgtz.testcase COPYONLY)
|
|
configure_file(testcases/cpu/divu.testcase divu.testcase COPYONLY)
|
|
configure_file(testcases/cpu/sllv.testcase sllv.testcase COPYONLY)
|
|
configure_file(testcases/cpu/srlv.testcase srlv.testcase COPYONLY)
|
|
configure_file(testcases/cpu/and.testcase and.testcase COPYONLY)
|
|
configure_file(testcases/cpu/blezl.testcase blezl.testcase COPYONLY)
|
|
configure_file(testcases/cpu/dsll.testcase dsll.testcase COPYONLY)
|
|
configure_file(testcases/cpu/slti.testcase slti.testcase COPYONLY)
|
|
configure_file(testcases/cpu/subu.testcase subu.testcase COPYONLY)
|
|
configure_file(testcases/cpu/beql.testcase beql.testcase COPYONLY)
|
|
configure_file(testcases/cpu/blez.testcase blez.testcase COPYONLY)
|
|
configure_file(testcases/cpu/mult.testcase mult.testcase COPYONLY)
|
|
configure_file(testcases/cpu/sltiu.testcase sltiu.testcase COPYONLY)
|
|
configure_file(testcases/cpu/xori.testcase xori.testcase COPYONLY)
|
|
configure_file(testcases/cpu/beq.testcase beq.testcase COPYONLY)
|
|
configure_file(testcases/cpu/bltzl.testcase bltzl.testcase COPYONLY)
|
|
configure_file(testcases/cpu/multu.testcase multu.testcase COPYONLY)
|
|
configure_file(testcases/cpu/slt.testcase slt.testcase COPYONLY)
|
|
configure_file(testcases/cpu/xor.testcase xor.testcase COPYONLY)
|
|
endif() |