mirror of
https://github.com/greatscottgadgets/hackrf.git
synced 2026-02-20 00:33:48 +01:00
Co-authored-by: mndza <diego.hdmp@gmail.com> Co-authored-by: Martin Ling <martin-git@earth.li> Co-authored-by: Antoine van Gelder <antoine@greatscottgadgets.com>
120 lines
3.4 KiB
CMake
120 lines
3.4 KiB
CMake
# Copyright 2012 Jared Boone <jared@sharebrained.com>
|
|
#
|
|
# This file is part of HackRF.
|
|
#
|
|
# This program is free software; you can redistribute it and/or modify
|
|
# it under the terms of the GNU General Public License as published by
|
|
# the Free Software Foundation; either version 2, or (at your option)
|
|
# any later version.
|
|
#
|
|
# This program is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with this program; see the file COPYING. If not, write to
|
|
# the Free Software Foundation, Inc., 51 Franklin Street,
|
|
# Boston, MA 02110-1301, USA.
|
|
#
|
|
|
|
cmake_minimum_required(VERSION 3.10.0)
|
|
set(CMAKE_TOOLCHAIN_FILE ../toolchain-arm-cortex-m.cmake)
|
|
|
|
project(hackrf_usb C)
|
|
|
|
include(../hackrf-common.cmake)
|
|
|
|
add_custom_command(
|
|
OUTPUT ${PATH_HACKRF_CPLD_DATA_C}
|
|
COMMAND ${PATH_CPLD_BITSTREAM_TOOL} --xsvf ${PATH_HACKRF_CPLD_XSVF} --hackrf-data ${PATH_HACKRF_CPLD_DATA_C}
|
|
DEPENDS ${PATH_CPLD_BITSTREAM_TOOL} ${PATH_HACKRF_CPLD_XSVF}
|
|
)
|
|
|
|
add_custom_command(
|
|
OUTPUT ${PATH_PRALINE_FPGA_OBJ}
|
|
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
|
COMMAND ${CMAKE_COMMAND} -E copy ${PATH_PRALINE_FPGA_BIN} "fpga.bin"
|
|
COMMAND ${CMAKE_OBJCOPY}
|
|
-I binary
|
|
-O elf32-littlearm
|
|
--rename-section .data=.rom_only
|
|
"fpga.bin" ${PATH_PRALINE_FPGA_OBJ}
|
|
DEPENDS ${PATH_PRALINE_FPGA_BIN}
|
|
)
|
|
|
|
set(SRC_M4
|
|
hackrf_usb.c
|
|
"${PATH_HACKRF_FIRMWARE_COMMON}/tuning.c"
|
|
"${PATH_HACKRF_FIRMWARE_COMMON}/streaming.c"
|
|
"${PATH_HACKRF_FIRMWARE_COMMON}/usb.c"
|
|
"${PATH_HACKRF_FIRMWARE_COMMON}/usb_request.c"
|
|
"${PATH_HACKRF_FIRMWARE_COMMON}/usb_standard_request.c"
|
|
usb_descriptor.c
|
|
usb_device.c
|
|
usb_endpoint.c
|
|
usb_api_board_info.c
|
|
usb_api_m0_state.c
|
|
usb_api_register.c
|
|
usb_api_spiflash.c
|
|
usb_api_transceiver.c
|
|
usb_api_operacake.c
|
|
usb_api_sweep.c
|
|
usb_api_selftest.c
|
|
usb_api_ui.c
|
|
"${PATH_HACKRF_FIRMWARE_COMMON}/usb_queue.c"
|
|
"${PATH_HACKRF_FIRMWARE_COMMON}/fault_handler.c"
|
|
"${PATH_HACKRF_FIRMWARE_COMMON}/cpld_jtag.c"
|
|
"${PATH_HACKRF_FIRMWARE_COMMON}/crc.c"
|
|
"${PATH_HACKRF_FIRMWARE_COMMON}/rom_iap.c"
|
|
"${PATH_HACKRF_FIRMWARE_COMMON}/operacake.c"
|
|
"${PATH_HACKRF_FIRMWARE_COMMON}/operacake_sctimer.c"
|
|
)
|
|
|
|
set(SRC_M0 sgpio_m0.s)
|
|
|
|
if(BOARD STREQUAL "PRALINE")
|
|
SET(SRC_M4
|
|
${SRC_M4}
|
|
"${PATH_HACKRF_FIRMWARE_COMMON}/lz4_blk.c"
|
|
usb_api_praline.c
|
|
)
|
|
SET(OBJ_M4
|
|
${PATH_PRALINE_FPGA_OBJ}
|
|
)
|
|
else()
|
|
SET(SRC_M4
|
|
${SRC_M4}
|
|
usb_api_cpld.c
|
|
"${PATH_HACKRF_FIRMWARE_COMMON}/cpld_xc2c.c"
|
|
"${PATH_HACKRF_CPLD_DATA_C}"
|
|
"${PATH_HACKRF_FIRMWARE_COMMON}/xapp058/lenval.c"
|
|
"${PATH_HACKRF_FIRMWARE_COMMON}/xapp058/micro.c"
|
|
"${PATH_HACKRF_FIRMWARE_COMMON}/xapp058/ports.c"
|
|
)
|
|
endif()
|
|
|
|
if(BOARD STREQUAL "HACKRF_ONE" OR BOARD STREQUAL "PRALINE")
|
|
SET(SRC_M4
|
|
${SRC_M4}
|
|
"${PATH_HACKRF_FIRMWARE_COMMON}/portapack.c"
|
|
"${PATH_HACKRF_FIRMWARE_COMMON}/ui_portapack.c"
|
|
)
|
|
endif()
|
|
|
|
if(BOARD STREQUAL "RAD1O")
|
|
SET(SRC_M4
|
|
${SRC_M4}
|
|
"${PATH_HACKRF_FIRMWARE_COMMON}/rad1o/display.c"
|
|
"${PATH_HACKRF_FIRMWARE_COMMON}/rad1o/print.c"
|
|
"${PATH_HACKRF_FIRMWARE_COMMON}/rad1o/render.c"
|
|
"${PATH_HACKRF_FIRMWARE_COMMON}/rad1o/decoder.c"
|
|
"${PATH_HACKRF_FIRMWARE_COMMON}/rad1o/smallfonts.c"
|
|
"${PATH_HACKRF_FIRMWARE_COMMON}/rad1o/draw.c"
|
|
"${PATH_HACKRF_FIRMWARE_COMMON}/rad1o/ubuntu18.c"
|
|
"${PATH_HACKRF_FIRMWARE_COMMON}/ui_rad1o.c"
|
|
)
|
|
endif()
|
|
|
|
DeclareTargets()
|