add_library(towns towns.h towns.cpp townsstate.cpp tbiosid.cpp townscmos.cpp townsio.cpp townsio.h townsvmif.cpp townsthread.cpp townsthread.h tbiosid.h townsapp_dunmas.cpp townsapp_daikoukai.cpp townsapp_daikoukai2.cpp townsapp_ab2.cpp)
target_link_libraries(towns cpu vmbase device inout ramrom townscdrom townssound townsmidi townsgameport townstimer townsmem townskeyboard townsrtc townspic townsdmac townscrtc townssprite townsrender townsfdc townsscsi townsserial townsvndrv townstgdrv townshighrespcm rex3586 d77 townsdef townsparam townseventlog outside_world lineParser townscommand miscutil)
target_include_directories(towns PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})

add_subdirectory(outside_world)
add_subdirectory(townsdef)
add_subdirectory(townsparam)
add_subdirectory(townstips)
add_subdirectory(cdrom)
add_subdirectory(memory)
add_subdirectory(crtc)
add_subdirectory(sprite)
add_subdirectory(render)
add_subdirectory(keyboard)
add_subdirectory(fdc)
add_subdirectory(scsi)
add_subdirectory(pic)
add_subdirectory(rtc)
add_subdirectory(dmac)
add_subdirectory(sound)
add_subdirectory(midi)
add_subdirectory(timer)
add_subdirectory(serialport)
add_subdirectory(gameport)
add_subdirectory(eventlog)
add_subdirectory(vndrv)
add_subdirectory(tgdrv)
add_subdirectory(highrespcm)
add_subdirectory(lan_rex3586)
