cmake_minimum_required(VERSION 2.6)


set(PROJECT l502-bf)

project(${PROJECT} C)

if(BUILD_FIRMWARE)
include_directories(d:/Program/Analog Devices/VisualDSP 5.0/Blackfin/include)

add_definitions(-structs-do-not-overlap -no-multiline -double-size-32 -decls-strong
                -warn-protos -si-revision 0.2 -proc ADSP-BF523)

set(SOURCES
    l502-bf.ldf
    l502-bf_heaptab.c
    src/main.c
    src/l502_async.c
    src/l502_cmd.c
    src/l502_fpga.c
    src/l502_hdma.c
    src/l502_init.c
    src/l502_params.c
    src/l502_sport_tx.c
    src/l502_stream.c
    src/l502_tests.c
    src/l502_user_process.c
    )

set(HEADERS
    src/l502_async.h
    src/l502_bf_cmd_defs.h
    src/l502_cmd.h
    src/l502_defs.h
    src/l502_fpga.h
    src/l502_fpga_regs.h
    src/l502_global.h
    src/l502_hdma.h
    src/l502_params.h
    src/l502_sport_tx.h
    src/l502_stream.h
    src/l502_user_process.h)

add_executable(${PROJECT} ${SOURCES} ${HEADERS})

set_target_properties(${PROJECT} PROPERTIES LINK_FLAGS "-T ${CMAKE_CURRENT_SOURCE_DIR}/l502-bf.ldf -flags-link -ip -flags-link -MDUSER_CRT=ADI_QUOTEl502-bf_basiccrt.dojADI_QUOTE,-MDUSE_CACHE,-MDUSE_INSTRUCTION_CACHE -flags-link -e -flags-link -MDUSE_CACHE -flags-link -od -proc ADSP-BF523 -si-revision 0.2 -flags-link -MM")
#set_target_properties(${PROJECT} PROPERTIES LINK_FLAGS
#            -T l502-bf.ldf )
endif(BUILD_FIRMWARE)



if(LPCIE_DOCGEN_DIR)

    include(${LPCIE_DOCGEN_DIR}/LDoxyToPdf.cmake)

    set(DOC_DOXYGEN_PRJ_FILE doc/Doxyfile.in)
    set(TEX_DEPENDS_FILES   doc/l502_pci_regs.tex)
    set(DOXYGEN_INPUT_FILES src/l502_cdefs.h
                            src/l502_defs.h
                            src/l502_cmd.h
                            src/l502_cmd.c
                            src/l502_bf_cmd_defs.h
                            src/l502_global.h
                            src/l502_hdma.c
                            src/l502_hdma.h
                            src/l502_stream.c
                            src/l502_stream.h
                            src/l502_sport_rx.h
                            src/l502_sport_tx.c
                            src/l502_sport_tx.h
                            src/l502_user_process.h
                            src/l502_user_process.c
                            src/l502_params.h
                            src/l502_params.c
                            src/l502_fpga.h
                            src/l502_fpga.c
                            src/l502_async.h
                            src/l502_async.c
                            ${X502API_DIR}/devs/e502/e502_cm4_defs.h
                            doc/about.md
                            doc/dsp_mode.md
                            doc/dsp_firm_setup.md
                            doc/dsp_firm_setup_gcc.md
                            doc/gen_descr.md
                            doc/pc_ctl.md
                            doc/e16_descr.md
                            doc/e502_proto.md)
    set(PDF_IMG_FILES  doc/images/l502_ll_sch.jpeg
                       doc/images/e502_ll_sch.jpeg
                       doc/images/vdsp_prj.png
                       doc/images/vdsp_output_type.png
                       doc/images/vdsp_session_processor.png
                       doc/images/vdsp_session_con_type.png
                       doc/images/vdsp_session_jtag.png
                       doc/images/vdsp_debug.png
                       doc/images/eclipse_plugin_install.png
                       doc/images/eclipse_import_prj_type.png
                       doc/images/eclipse_import_prj_dir.png
                       doc/images/eclipse_c_perspective.png
                       doc/images/eclipse_debug_cfg.png
                       doc/images/eclipse_debug.png)
    ADD_DOXY_TO_PDF_TARGET(x502_low_level)
endif(LPCIE_DOCGEN_DIR)
