Thomas Kolb
1787d0d351
This allows a higher layer to adjust data rate based on the current channel conditions. For example, the SNR could be measured and if it becomes too low for the current modulation/code, a lower-order modulation or stronger code could be used.
57 lines
1.1 KiB
CMake
57 lines
1.1 KiB
CMake
cmake_minimum_required (VERSION 3.2)
|
|
project (hamnet70 VERSION 0.1 LANGUAGES C)
|
|
|
|
set(CMAKE_C_STANDARD 99)
|
|
set(CMAKE_C_FLAGS "-Wall -pedantic -Wextra -DDEBUG_LIQUID")
|
|
|
|
include_directories(src)
|
|
|
|
# put all .cpp and .h files into the sources variable
|
|
set(sources
|
|
src/utils.c
|
|
src/utils.h
|
|
src/main.c
|
|
src/layer1/config.h
|
|
src/layer1/correlator.c
|
|
src/layer1/correlator.h
|
|
src/layer1/freq_est.c
|
|
src/layer1/freq_est.h
|
|
src/layer1/packet_mod.c
|
|
src/layer1/packet_mod.h
|
|
src/layer1/preamble.c
|
|
src/layer1/preamble.h
|
|
src/layer1/results.h
|
|
src/layer1/transmission.c
|
|
src/layer1/transmission.h
|
|
src/layer1/tx.c
|
|
src/layer1/tx.h
|
|
src/layer1/rx.c
|
|
src/layer1/rx.h
|
|
src/layer1/whitening.c
|
|
src/layer1/whitening.h
|
|
src/layer1/modcod.c
|
|
src/layer1/modcod.h
|
|
)
|
|
|
|
include_directories(
|
|
${CMAKE_PROJECT_NAME}
|
|
)
|
|
|
|
add_executable(
|
|
${CMAKE_PROJECT_NAME}
|
|
${sources}
|
|
)
|
|
|
|
# use static linking for liquid, as dynamic linking currently does not work
|
|
# with liquid_error_info(). See github issue
|
|
# https://github.com/jgaeddert/liquid-dsp/issues/260.
|
|
target_link_libraries(
|
|
${CMAKE_PROJECT_NAME}
|
|
libliquid.a
|
|
m
|
|
fftw3f
|
|
fec
|
|
)
|
|
|
|
add_subdirectory(test)
|