CMakeLists.txt
1 # Note we are using INTERFACE so that the library can be configured per-app 2 # with compile-time defines 3 4 add_library(libdvi INTERFACE) 5 6 target_sources(libdvi INTERFACE 7 ${CMAKE_CURRENT_LIST_DIR}/dvi.c 8 ${CMAKE_CURRENT_LIST_DIR}/dvi.h 9 ${CMAKE_CURRENT_LIST_DIR}/dvi_config_defs.h 10 ${CMAKE_CURRENT_LIST_DIR}/dvi_serialiser.c 11 ${CMAKE_CURRENT_LIST_DIR}/dvi_serialiser.h 12 ${CMAKE_CURRENT_LIST_DIR}/dvi_timing.c 13 ${CMAKE_CURRENT_LIST_DIR}/dvi_timing.h 14 ${CMAKE_CURRENT_LIST_DIR}/tmds_encode.S 15 ${CMAKE_CURRENT_LIST_DIR}/tmds_encode.c 16 ${CMAKE_CURRENT_LIST_DIR}/tmds_encode.h 17 ${CMAKE_CURRENT_LIST_DIR}/tmds_table.h 18 ${CMAKE_CURRENT_LIST_DIR}/tmds_table_fullres.h 19 ${CMAKE_CURRENT_LIST_DIR}/util_queue_u32_inline.h 20 ) 21 22 target_include_directories(libdvi INTERFACE ${CMAKE_CURRENT_LIST_DIR}) 23 target_link_libraries(libdvi INTERFACE 24 pico_base_headers 25 pico_util 26 hardware_dma 27 hardware_interp 28 hardware_pio 29 hardware_pwm 30 ) 31 32 pico_generate_pio_header(libdvi ${CMAKE_CURRENT_LIST_DIR}/dvi_serialiser.pio) 33 pico_generate_pio_header(libdvi ${CMAKE_CURRENT_LIST_DIR}/tmds_encode_1bpp.pio)