mirror of
https://github.com/cjcliffe/CubicSDR.git
synced 2024-11-22 19:58:39 -05:00
Updated Windows liquid-dsp binaries to master
- liquid-dsp ref: 373d440d38201bb8950f65c73b322b981355f2c9 - using GCC 10.3 (MSYS2)
This commit is contained in:
parent
29e9144aa5
commit
b7ee0fb8ca
BIN
external/liquid-dsp/gcc/32/libliquid.a
vendored
BIN
external/liquid-dsp/gcc/32/libliquid.a
vendored
Binary file not shown.
BIN
external/liquid-dsp/gcc/32/libliquid.dll
vendored
BIN
external/liquid-dsp/gcc/32/libliquid.dll
vendored
Binary file not shown.
BIN
external/liquid-dsp/gcc/64/libliquid.a
vendored
BIN
external/liquid-dsp/gcc/64/libliquid.a
vendored
Binary file not shown.
BIN
external/liquid-dsp/gcc/64/libliquid.dll
vendored
BIN
external/liquid-dsp/gcc/64/libliquid.dll
vendored
Binary file not shown.
193
external/liquid-dsp/include/liquid/liquid.h
vendored
193
external/liquid-dsp/include/liquid/liquid.h
vendored
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2007 - 2020 Joseph Gaeddert
|
||||
* Copyright (c) 2007 - 2021 Joseph Gaeddert
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
@ -1621,6 +1621,9 @@ unsigned int SPGRAM(_get_window_len)(SPGRAM() _q); \
|
||||
/* Get delay between transforms */ \
|
||||
unsigned int SPGRAM(_get_delay)(SPGRAM() _q); \
|
||||
\
|
||||
/* Get window type used for spectral estimation */ \
|
||||
int SPGRAM(_get_wtype)(SPGRAM() _q); \
|
||||
\
|
||||
/* Get number of samples processed since reset */ \
|
||||
unsigned long long int SPGRAM(_get_num_samples)(SPGRAM() _q); \
|
||||
\
|
||||
@ -1835,6 +1838,15 @@ unsigned int SPWATERFALL(_get_num_freq)(SPWATERFALL() _q); \
|
||||
/* Get number of accumulated FFTs (rows in PSD output) */ \
|
||||
unsigned int SPWATERFALL(_get_num_time)(SPWATERFALL() _q); \
|
||||
\
|
||||
/* Get window length used in spectral estimation */ \
|
||||
unsigned int SPWATERFALL(_get_window_len)(SPWATERFALL() _q); \
|
||||
\
|
||||
/* Get delay between transforms used in spectral estimation */ \
|
||||
unsigned int SPWATERFALL(_get_delay)(SPWATERFALL() _q); \
|
||||
\
|
||||
/* Get window type used in spectral estimation */ \
|
||||
int SPWATERFALL(_get_wtype)(SPWATERFALL() _q); \
|
||||
\
|
||||
/* Get power spectral density (PSD), size: nfft x time */ \
|
||||
const T * SPWATERFALL(_get_psd)(SPWATERFALL() _q); \
|
||||
\
|
||||
@ -2674,6 +2686,12 @@ void FIRFILT(_execute_block)(FIRFILT() _q, \
|
||||
/* Get length of filter object (number of internal coefficients) */ \
|
||||
unsigned int FIRFILT(_get_length)(FIRFILT() _q); \
|
||||
\
|
||||
/* Get pointer to coefficients array */ \
|
||||
/* _q : filter object */ \
|
||||
/* _h : pointer to output coefficients array [size: _n x 1] */ \
|
||||
int FIRFILT(_get_coefficients)(FIRFILT() _q, \
|
||||
TC * _h); \
|
||||
\
|
||||
/* Compute complex frequency response of filter object */ \
|
||||
/* _q : filter object */ \
|
||||
/* _fc : normalized frequency for evaluation */ \
|
||||
@ -3123,6 +3141,83 @@ LIQUID_IIRFILT_DEFINE_API(LIQUID_IIRFILT_MANGLE_CCCF,
|
||||
liquid_float_complex,
|
||||
liquid_float_complex)
|
||||
|
||||
//
|
||||
// iirfiltsos : infinite impulse respone filter (second-order sections)
|
||||
//
|
||||
#define LIQUID_IIRFILTSOS_MANGLE_RRRF(name) LIQUID_CONCAT(iirfiltsos_rrrf,name)
|
||||
#define LIQUID_IIRFILTSOS_MANGLE_CRCF(name) LIQUID_CONCAT(iirfiltsos_crcf,name)
|
||||
#define LIQUID_IIRFILTSOS_MANGLE_CCCF(name) LIQUID_CONCAT(iirfiltsos_cccf,name)
|
||||
|
||||
#define LIQUID_IIRFILTSOS_DEFINE_API(IIRFILTSOS,TO,TC,TI) \
|
||||
typedef struct IIRFILTSOS(_s) * IIRFILTSOS(); \
|
||||
\
|
||||
/* create 2nd-order infinite impulse reponse filter */ \
|
||||
/* _b : feed-forward coefficients [size: _3 x 1] */ \
|
||||
/* _a : feed-back coefficients [size: _3 x 1] */ \
|
||||
IIRFILTSOS() IIRFILTSOS(_create)(TC * _b, \
|
||||
TC * _a); \
|
||||
\
|
||||
/* explicitly set 2nd-order IIR filter coefficients */ \
|
||||
/* _q : iirfiltsos object */ \
|
||||
/* _b : feed-forward coefficients [size: _3 x 1] */ \
|
||||
/* _a : feed-back coefficients [size: _3 x 1] */ \
|
||||
void IIRFILTSOS(_set_coefficients)(IIRFILTSOS() _q, \
|
||||
TC * _b, \
|
||||
TC * _a); \
|
||||
\
|
||||
/* destroy iirfiltsos object, freeing all internal memory */ \
|
||||
void IIRFILTSOS(_destroy)(IIRFILTSOS() _q); \
|
||||
\
|
||||
/* print iirfiltsos object properties to stdout */ \
|
||||
void IIRFILTSOS(_print)(IIRFILTSOS() _q); \
|
||||
\
|
||||
/* clear/reset iirfiltsos object internals */ \
|
||||
void IIRFILTSOS(_reset)(IIRFILTSOS() _q); \
|
||||
\
|
||||
/* compute filter output */ \
|
||||
/* _q : iirfiltsos object */ \
|
||||
/* _x : input sample */ \
|
||||
/* _y : output sample pointer */ \
|
||||
void IIRFILTSOS(_execute)(IIRFILTSOS() _q, \
|
||||
TI _x, \
|
||||
TO * _y); \
|
||||
\
|
||||
/* compute filter output, direct-form I method */ \
|
||||
/* _q : iirfiltsos object */ \
|
||||
/* _x : input sample */ \
|
||||
/* _y : output sample pointer */ \
|
||||
void IIRFILTSOS(_execute_df1)(IIRFILTSOS() _q, \
|
||||
TI _x, \
|
||||
TO * _y); \
|
||||
\
|
||||
/* compute filter output, direct-form II method */ \
|
||||
/* _q : iirfiltsos object */ \
|
||||
/* _x : input sample */ \
|
||||
/* _y : output sample pointer */ \
|
||||
void IIRFILTSOS(_execute_df2)(IIRFILTSOS() _q, \
|
||||
TI _x, \
|
||||
TO * _y); \
|
||||
\
|
||||
/* compute and return group delay of filter object */ \
|
||||
/* _q : filter object */ \
|
||||
/* _fc : frequency to evaluate */ \
|
||||
float IIRFILTSOS(_groupdelay)(IIRFILTSOS() _q, \
|
||||
float _fc); \
|
||||
|
||||
LIQUID_IIRFILTSOS_DEFINE_API(LIQUID_IIRFILTSOS_MANGLE_RRRF,
|
||||
float,
|
||||
float,
|
||||
float)
|
||||
|
||||
LIQUID_IIRFILTSOS_DEFINE_API(LIQUID_IIRFILTSOS_MANGLE_CRCF,
|
||||
liquid_float_complex,
|
||||
float,
|
||||
liquid_float_complex)
|
||||
|
||||
LIQUID_IIRFILTSOS_DEFINE_API(LIQUID_IIRFILTSOS_MANGLE_CCCF,
|
||||
liquid_float_complex,
|
||||
liquid_float_complex,
|
||||
liquid_float_complex)
|
||||
|
||||
//
|
||||
// FIR Polyphase filter bank
|
||||
@ -3233,7 +3328,14 @@ void FIRPFB(_reset)(FIRPFB() _q); \
|
||||
/* _q : filter object */ \
|
||||
/* _x : single input sample */ \
|
||||
void FIRPFB(_push)(FIRPFB() _q, \
|
||||
TI _x); \
|
||||
TI _x); \
|
||||
\
|
||||
/* Write a block of samples into object's internal buffer */ \
|
||||
/* _q : filter object */ \
|
||||
/* _x : single input sample */ \
|
||||
void FIRPFB(_write)(FIRPFB() _q, \
|
||||
TI * _x, \
|
||||
unsigned int _n); \
|
||||
\
|
||||
/* Execute vector dot product on the filter's internal buffer and */ \
|
||||
/* coefficients using the coefficients from sub-filter at index _i */ \
|
||||
@ -3343,6 +3445,9 @@ void FIRINTERP(_reset)(FIRINTERP() _q); \
|
||||
/* Get interpolation rate */ \
|
||||
unsigned int FIRINTERP(_get_interp_rate)(FIRINTERP() _q); \
|
||||
\
|
||||
/* Get sub-filter length (length of each poly-phase filter) */ \
|
||||
unsigned int FIRINTERP(_get_sub_len)(FIRINTERP() _q); \
|
||||
\
|
||||
/* Set output scaling for interpolator */ \
|
||||
/* _q : interpolator object */ \
|
||||
/* _scale : scaling factor to apply to each output sample */ \
|
||||
@ -3927,6 +4032,14 @@ unsigned int RRESAMP(_get_block_len)(RRESAMP() _q); \
|
||||
/* Get rate of resampler, \(r = P/Q\) */ \
|
||||
float RRESAMP(_get_rate)(RRESAMP() _q); \
|
||||
\
|
||||
/* Write \(Q\) input samples (after removing greatest common divisor) */ \
|
||||
/* into buffer, but do not compute output. This effectively updates the */ \
|
||||
/* internal state of the resampler. */ \
|
||||
/* _q : resamp object */ \
|
||||
/* _buf : input sample array, [size: Q x 1] */ \
|
||||
void RRESAMP(_write)(RRESAMP() _q, \
|
||||
TI * _buf); \
|
||||
\
|
||||
/* Execute rational-rate resampler on a block of input samples and */ \
|
||||
/* store the resulting samples in the output array. */ \
|
||||
/* Note that the size of the input and output buffers correspond to the */ \
|
||||
@ -3945,6 +4058,16 @@ float RRESAMP(_get_rate)(RRESAMP() _q); \
|
||||
void RRESAMP(_execute)(RRESAMP() _q, \
|
||||
TI * _x, \
|
||||
TO * _y); \
|
||||
\
|
||||
/* Execute on a block of samples */ \
|
||||
/* _q : resamp object */ \
|
||||
/* _x : input sample array, [size: Q*n x 1] */ \
|
||||
/* _n : block size */ \
|
||||
/* _y : output sample array [size: P*n x 1] */ \
|
||||
void RRESAMP(_execute_block)(RRESAMP() _q, \
|
||||
TI * _x, \
|
||||
unsigned int _n, \
|
||||
TO * _y); \
|
||||
|
||||
LIQUID_RRESAMP_DEFINE_API(LIQUID_RRESAMP_MANGLE_RRRF,
|
||||
float,
|
||||
@ -5151,6 +5274,10 @@ int gmskframesync_is_frame_open(gmskframesync _q);
|
||||
int gmskframesync_execute(gmskframesync _q,
|
||||
liquid_float_complex * _x,
|
||||
unsigned int _n);
|
||||
// frame data statistics
|
||||
int gmskframesync_reset_framedatastats(gmskframesync _q);
|
||||
framedatastats_s gmskframesync_get_framedatastats (gmskframesync _q);
|
||||
|
||||
|
||||
// debugging
|
||||
int gmskframesync_debug_enable(gmskframesync _q);
|
||||
@ -5662,6 +5789,68 @@ int SYMSTREAM(_write_samples)(SYMSTREAM() _q, \
|
||||
|
||||
LIQUID_SYMSTREAM_DEFINE_API(LIQUID_SYMSTREAM_MANGLE_CFLOAT, liquid_float_complex)
|
||||
|
||||
//
|
||||
// symbol streaming, as with symstream but arbitrary output rate
|
||||
//
|
||||
#define LIQUID_SYMSTREAMR_MANGLE_CFLOAT(name) LIQUID_CONCAT(symstreamrcf,name)
|
||||
|
||||
#define LIQUID_SYMSTREAMR_DEFINE_API(SYMSTREAMR,TO) \
|
||||
\
|
||||
/* Symbol streaming generator object */ \
|
||||
typedef struct SYMSTREAMR(_s) * SYMSTREAMR(); \
|
||||
\
|
||||
/* Create symstream object with default parameters. */ \
|
||||
/* This is equivalent to invoking the create_linear() method */ \
|
||||
/* with _ftype=LIQUID_FIRFILT_ARKAISER, _k=2, _m=7, _beta=0.3, and */ \
|
||||
/* with _ms=LIQUID_MODEM_QPSK */ \
|
||||
SYMSTREAMR() SYMSTREAMR(_create)(void); \
|
||||
\
|
||||
/* Create symstream object with linear modulation */ \
|
||||
/* _ftype : filter type (e.g. LIQUID_FIRFILT_RRC) */ \
|
||||
/* _bw : relative signal bandwidth, 0.001 <= _bw <= 1.0 */ \
|
||||
/* _m : filter delay (symbols), _m > 0 */ \
|
||||
/* _beta : filter excess bandwidth, 0 < _beta <= 1 */ \
|
||||
/* _ms : modulation scheme, e.g. LIQUID_MODEM_QPSK */ \
|
||||
SYMSTREAMR() SYMSTREAMR(_create_linear)(int _ftype, \
|
||||
float _bw, \
|
||||
unsigned int _m, \
|
||||
float _beta, \
|
||||
int _ms); \
|
||||
\
|
||||
/* Destroy symstream object, freeing all internal memory */ \
|
||||
int SYMSTREAMR(_destroy)(SYMSTREAMR() _q); \
|
||||
\
|
||||
/* Print symstream object's parameters */ \
|
||||
int SYMSTREAMR(_print)(SYMSTREAMR() _q); \
|
||||
\
|
||||
/* Reset symstream internal state */ \
|
||||
int SYMSTREAMR(_reset)(SYMSTREAMR() _q); \
|
||||
\
|
||||
/* Set internal linear modulation scheme, leaving the filter parameters */ \
|
||||
/* (interpolator) unmodified */ \
|
||||
int SYMSTREAMR(_set_scheme)(SYMSTREAMR() _q, \
|
||||
int _ms); \
|
||||
\
|
||||
/* Get internal linear modulation scheme */ \
|
||||
int SYMSTREAMR(_get_scheme)(SYMSTREAMR() _q); \
|
||||
\
|
||||
/* Set internal linear gain (before interpolation) */ \
|
||||
int SYMSTREAMR(_set_gain)(SYMSTREAMR() _q, \
|
||||
float _gain); \
|
||||
\
|
||||
/* Get internal linear gain (before interpolation) */ \
|
||||
float SYMSTREAMR(_get_gain)(SYMSTREAMR() _q); \
|
||||
\
|
||||
/* Write block of samples to output buffer */ \
|
||||
/* _q : synchronizer object */ \
|
||||
/* _buf : output buffer [size: _buf_len x 1] */ \
|
||||
/* _buf_len: output buffer size */ \
|
||||
int SYMSTREAMR(_write_samples)(SYMSTREAMR() _q, \
|
||||
TO * _buf, \
|
||||
unsigned int _buf_len); \
|
||||
|
||||
LIQUID_SYMSTREAMR_DEFINE_API(LIQUID_SYMSTREAMR_MANGLE_CFLOAT, liquid_float_complex)
|
||||
|
||||
|
||||
|
||||
//
|
||||
|
21
external/liquid-dsp/makefile.mingw32
vendored
21
external/liquid-dsp/makefile.mingw32
vendored
@ -1,4 +1,4 @@
|
||||
# Copyright (c) 2007 - 2020 Joseph Gaeddert
|
||||
# Copyright (c) 2007 - 2021 Joseph Gaeddert
|
||||
#
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
# of this software and associated documentation files (the "Software"), to deal
|
||||
@ -72,6 +72,7 @@ COVERAGE_FLAGS = # dynamic library linker needs separate flag
|
||||
CONFIG_CFLAGS = -m32 -O3 -msse4.2 -ffast-math ${COVERAGE_FLAGS}
|
||||
CPPFLAGS = $(INCLUDE_CFLAGS)
|
||||
CFLAGS = $(CONFIG_CFLAGS) -Wall -fPIC
|
||||
CXXFLAGS = $(CONFIG_CFLAGS) -Wall -fPIC -Wno-return-type-c-linkage
|
||||
LDFLAGS =
|
||||
#MINGW:
|
||||
LIBS = -lmsvcrt
|
||||
@ -358,6 +359,7 @@ fft_autotests := \
|
||||
src/fft/tests/fft_r2r_autotest.c \
|
||||
src/fft/tests/fft_shift_autotest.c \
|
||||
src/fft/tests/spgram_autotest.c \
|
||||
src/fft/tests/spwaterfall_autotest.c \
|
||||
|
||||
# additional autotest objects
|
||||
autotest_extra_obj += \
|
||||
@ -489,6 +491,7 @@ filter_autotests := \
|
||||
src/filter/tests/firdes_autotest.c \
|
||||
src/filter/tests/firdespm_autotest.c \
|
||||
src/filter/tests/firfilt_cccf_notch_autotest.c \
|
||||
src/filter/tests/firfilt_coefficients_autotest.c \
|
||||
src/filter/tests/firfilt_rnyquist_autotest.c \
|
||||
src/filter/tests/firfilt_xxxf_autotest.c \
|
||||
src/filter/tests/firhilb_autotest.c \
|
||||
@ -502,6 +505,7 @@ filter_autotests := \
|
||||
src/filter/tests/lpc_autotest.c \
|
||||
src/filter/tests/msresamp_crcf_autotest.c \
|
||||
src/filter/tests/rresamp_crcf_autotest.c \
|
||||
src/filter/tests/rresamp_crcf_partition_autotest.c \
|
||||
src/filter/tests/resamp_crcf_autotest.c \
|
||||
src/filter/tests/resamp2_crcf_autotest.c \
|
||||
src/filter/tests/symsync_crcf_autotest.c \
|
||||
@ -620,6 +624,7 @@ framing_objects := \
|
||||
src/framing/src/ofdmflexframesync.o \
|
||||
src/framing/src/presync_cccf.o \
|
||||
src/framing/src/symstreamcf.o \
|
||||
src/framing/src/symstreamrcf.o \
|
||||
src/framing/src/symtrack_cccf.o \
|
||||
src/framing/src/qdetector_cccf.o \
|
||||
src/framing/src/qpacketmodem.o \
|
||||
@ -650,6 +655,7 @@ src/framing/src/ofdmflexframesync.o : %.o : %.c $(include_headers)
|
||||
src/framing/src/presync_cccf.o : %.o : %.c $(include_headers) src/framing/src/presync.c
|
||||
src/framing/src/qpacketmodem.o : %.o : %.c $(include_headers)
|
||||
src/framing/src/symstreamcf.o : %.o : %.c $(include_headers) src/framing/src/symstream.c
|
||||
src/framing/src/symstreamrcf.o : %.o : %.c $(include_headers) src/framing/src/symstreamr.c
|
||||
src/framing/src/symtrack_cccf.o : %.o : %.c $(include_headers) src/framing/src/symtrack.c
|
||||
|
||||
|
||||
@ -692,13 +698,13 @@ math_objects := \
|
||||
src/math/src/math.complex.o \
|
||||
src/math/src/math.trig.o \
|
||||
src/math/src/modular_arithmetic.o \
|
||||
src/math/src/poly.findroots.o \
|
||||
src/math/src/windows.o \
|
||||
|
||||
|
||||
poly_includes := \
|
||||
src/math/src/poly.common.c \
|
||||
src/math/src/poly.expand.c \
|
||||
src/math/src/poly.findroots.c \
|
||||
src/math/src/poly.lagrange.c \
|
||||
|
||||
src/math/src/poly.o : %.o : %.c $(include_headers) $(poly_includes)
|
||||
@ -716,7 +722,7 @@ src/math/src/windows.o : %.o : %.c $(include_headers)
|
||||
|
||||
math_autotests := \
|
||||
src/math/tests/gcd_autotest.c \
|
||||
src/math/tests/kbd_autotest.c \
|
||||
src/math/tests/window_autotest.c \
|
||||
src/math/tests/math_autotest.c \
|
||||
src/math/tests/math_bessel_autotest.c \
|
||||
src/math/tests/math_gamma_autotest.c \
|
||||
@ -1349,10 +1355,10 @@ readme.cc.example.cc : README.md
|
||||
${SED} -n '151,172p' $< | ${SED} "s/<liquid\/liquid.h>/\"liquid.h\"/g" > $@
|
||||
|
||||
readme.cc.example.o : %.o : %.cc ${include_headers}
|
||||
${CXX} ${CPPFLAGS} ${CFLAGS} $< -c -o $@
|
||||
${CXX} ${CPPFLAGS} ${CXXFLAGS} $< -c -o $@
|
||||
|
||||
readme.cc.example : % : %.o ${ARCHIVE_LIB}
|
||||
${CXX} ${CFLAGS} ${LDFLAGS} $^ -o $@ ${LIBS}
|
||||
${CXX} ${CXXFLAGS} ${LDFLAGS} $^ -o $@ ${LIBS}
|
||||
|
||||
doc-check : readme.c.example readme.cc.example ; ./readme.c.example && ./readme.cc.example
|
||||
|
||||
@ -1582,6 +1588,7 @@ example_programs := \
|
||||
examples/random_histogram_example \
|
||||
examples/repack_bytes_example \
|
||||
examples/rresamp_crcf_example \
|
||||
examples/rresamp_crcf_partition_example \
|
||||
examples/rresamp_crcf_rnyquist_example \
|
||||
examples/rresamp_rrrf_example \
|
||||
examples/resamp_crcf_example \
|
||||
@ -1602,6 +1609,7 @@ example_programs := \
|
||||
examples/symsync_crcf_full_example \
|
||||
examples/symsync_crcf_kaiser_example \
|
||||
examples/symstreamcf_example \
|
||||
examples/symstreamrcf_example \
|
||||
examples/symtrack_cccf_example \
|
||||
examples/wdelayf_example \
|
||||
examples/windowf_example \
|
||||
@ -1687,6 +1695,7 @@ sandbox_programs = \
|
||||
sandbox/firpfbch_analysis_alignment_test \
|
||||
sandbox/firpfbch2_analysis_equivalence_test \
|
||||
sandbox/firpfbch2_test \
|
||||
sandbox/firpfbch2_flatness_test \
|
||||
sandbox/firpfbch_analysis_equivalence_test \
|
||||
sandbox/firpfbch_synthesis_equivalence_test \
|
||||
sandbox/gmskmodem_test \
|
||||
@ -1781,7 +1790,7 @@ clean-modules:
|
||||
$(RM) src/*/src/*.o src/*/bench/*.o src/*/tests/*.o
|
||||
$(RM) src/libliquid.o
|
||||
|
||||
clean: clean-modules clean-autoscript clean-check clean-coverage clean-bench clean-examples clean-sandbox
|
||||
clean: clean-modules clean-autoscript clean-check clean-coverage clean-bench clean-examples clean-sandbox clean-doc-check
|
||||
$(RM) ${ARCHIVE_LIB} ${SHARED_LIB} $(extra_clean)
|
||||
|
||||
##
|
||||
|
23
external/liquid-dsp/makefile.mingw64
vendored
23
external/liquid-dsp/makefile.mingw64
vendored
@ -1,4 +1,4 @@
|
||||
# Copyright (c) 2007 - 2020 Joseph Gaeddert
|
||||
# Copyright (c) 2007 - 2021 Joseph Gaeddert
|
||||
#
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
# of this software and associated documentation files (the "Software"), to deal
|
||||
@ -72,9 +72,10 @@ COVERAGE_FLAGS = # dynamic library linker needs separate flag
|
||||
CONFIG_CFLAGS = -O3 -msse4.2 -ffast-math ${COVERAGE_FLAGS}
|
||||
CPPFLAGS = $(INCLUDE_CFLAGS)
|
||||
CFLAGS = $(CONFIG_CFLAGS) -Wall -fPIC
|
||||
CXXFLAGS = $(CONFIG_CFLAGS) -Wall -fPIC -Wno-return-type-c-linkage
|
||||
LDFLAGS =
|
||||
#MINGW:
|
||||
LIBS = -static-libgcc
|
||||
LIBS = -lmsvcrt
|
||||
PATHSEP = /
|
||||
|
||||
#
|
||||
@ -358,6 +359,7 @@ fft_autotests := \
|
||||
src/fft/tests/fft_r2r_autotest.c \
|
||||
src/fft/tests/fft_shift_autotest.c \
|
||||
src/fft/tests/spgram_autotest.c \
|
||||
src/fft/tests/spwaterfall_autotest.c \
|
||||
|
||||
# additional autotest objects
|
||||
autotest_extra_obj += \
|
||||
@ -489,6 +491,7 @@ filter_autotests := \
|
||||
src/filter/tests/firdes_autotest.c \
|
||||
src/filter/tests/firdespm_autotest.c \
|
||||
src/filter/tests/firfilt_cccf_notch_autotest.c \
|
||||
src/filter/tests/firfilt_coefficients_autotest.c \
|
||||
src/filter/tests/firfilt_rnyquist_autotest.c \
|
||||
src/filter/tests/firfilt_xxxf_autotest.c \
|
||||
src/filter/tests/firhilb_autotest.c \
|
||||
@ -502,6 +505,7 @@ filter_autotests := \
|
||||
src/filter/tests/lpc_autotest.c \
|
||||
src/filter/tests/msresamp_crcf_autotest.c \
|
||||
src/filter/tests/rresamp_crcf_autotest.c \
|
||||
src/filter/tests/rresamp_crcf_partition_autotest.c \
|
||||
src/filter/tests/resamp_crcf_autotest.c \
|
||||
src/filter/tests/resamp2_crcf_autotest.c \
|
||||
src/filter/tests/symsync_crcf_autotest.c \
|
||||
@ -620,6 +624,7 @@ framing_objects := \
|
||||
src/framing/src/ofdmflexframesync.o \
|
||||
src/framing/src/presync_cccf.o \
|
||||
src/framing/src/symstreamcf.o \
|
||||
src/framing/src/symstreamrcf.o \
|
||||
src/framing/src/symtrack_cccf.o \
|
||||
src/framing/src/qdetector_cccf.o \
|
||||
src/framing/src/qpacketmodem.o \
|
||||
@ -650,6 +655,7 @@ src/framing/src/ofdmflexframesync.o : %.o : %.c $(include_headers)
|
||||
src/framing/src/presync_cccf.o : %.o : %.c $(include_headers) src/framing/src/presync.c
|
||||
src/framing/src/qpacketmodem.o : %.o : %.c $(include_headers)
|
||||
src/framing/src/symstreamcf.o : %.o : %.c $(include_headers) src/framing/src/symstream.c
|
||||
src/framing/src/symstreamrcf.o : %.o : %.c $(include_headers) src/framing/src/symstreamr.c
|
||||
src/framing/src/symtrack_cccf.o : %.o : %.c $(include_headers) src/framing/src/symtrack.c
|
||||
|
||||
|
||||
@ -692,13 +698,13 @@ math_objects := \
|
||||
src/math/src/math.complex.o \
|
||||
src/math/src/math.trig.o \
|
||||
src/math/src/modular_arithmetic.o \
|
||||
src/math/src/poly.findroots.o \
|
||||
src/math/src/windows.o \
|
||||
|
||||
|
||||
poly_includes := \
|
||||
src/math/src/poly.common.c \
|
||||
src/math/src/poly.expand.c \
|
||||
src/math/src/poly.findroots.c \
|
||||
src/math/src/poly.lagrange.c \
|
||||
|
||||
src/math/src/poly.o : %.o : %.c $(include_headers) $(poly_includes)
|
||||
@ -716,7 +722,7 @@ src/math/src/windows.o : %.o : %.c $(include_headers)
|
||||
|
||||
math_autotests := \
|
||||
src/math/tests/gcd_autotest.c \
|
||||
src/math/tests/kbd_autotest.c \
|
||||
src/math/tests/window_autotest.c \
|
||||
src/math/tests/math_autotest.c \
|
||||
src/math/tests/math_bessel_autotest.c \
|
||||
src/math/tests/math_gamma_autotest.c \
|
||||
@ -1349,10 +1355,10 @@ readme.cc.example.cc : README.md
|
||||
${SED} -n '151,172p' $< | ${SED} "s/<liquid\/liquid.h>/\"liquid.h\"/g" > $@
|
||||
|
||||
readme.cc.example.o : %.o : %.cc ${include_headers}
|
||||
${CXX} ${CPPFLAGS} ${CFLAGS} $< -c -o $@
|
||||
${CXX} ${CPPFLAGS} ${CXXFLAGS} $< -c -o $@
|
||||
|
||||
readme.cc.example : % : %.o ${ARCHIVE_LIB}
|
||||
${CXX} ${CFLAGS} ${LDFLAGS} $^ -o $@ ${LIBS}
|
||||
${CXX} ${CXXFLAGS} ${LDFLAGS} $^ -o $@ ${LIBS}
|
||||
|
||||
doc-check : readme.c.example readme.cc.example ; ./readme.c.example && ./readme.cc.example
|
||||
|
||||
@ -1582,6 +1588,7 @@ example_programs := \
|
||||
examples/random_histogram_example \
|
||||
examples/repack_bytes_example \
|
||||
examples/rresamp_crcf_example \
|
||||
examples/rresamp_crcf_partition_example \
|
||||
examples/rresamp_crcf_rnyquist_example \
|
||||
examples/rresamp_rrrf_example \
|
||||
examples/resamp_crcf_example \
|
||||
@ -1602,6 +1609,7 @@ example_programs := \
|
||||
examples/symsync_crcf_full_example \
|
||||
examples/symsync_crcf_kaiser_example \
|
||||
examples/symstreamcf_example \
|
||||
examples/symstreamrcf_example \
|
||||
examples/symtrack_cccf_example \
|
||||
examples/wdelayf_example \
|
||||
examples/windowf_example \
|
||||
@ -1687,6 +1695,7 @@ sandbox_programs = \
|
||||
sandbox/firpfbch_analysis_alignment_test \
|
||||
sandbox/firpfbch2_analysis_equivalence_test \
|
||||
sandbox/firpfbch2_test \
|
||||
sandbox/firpfbch2_flatness_test \
|
||||
sandbox/firpfbch_analysis_equivalence_test \
|
||||
sandbox/firpfbch_synthesis_equivalence_test \
|
||||
sandbox/gmskmodem_test \
|
||||
@ -1781,7 +1790,7 @@ clean-modules:
|
||||
$(RM) src/*/src/*.o src/*/bench/*.o src/*/tests/*.o
|
||||
$(RM) src/libliquid.o
|
||||
|
||||
clean: clean-modules clean-autoscript clean-check clean-coverage clean-bench clean-examples clean-sandbox
|
||||
clean: clean-modules clean-autoscript clean-check clean-coverage clean-bench clean-examples clean-sandbox clean-doc-check
|
||||
$(RM) ${ARCHIVE_LIB} ${SHARED_LIB} $(extra_clean)
|
||||
|
||||
##
|
||||
|
3541
external/liquid-dsp/msvc/32/libliquid.def
vendored
3541
external/liquid-dsp/msvc/32/libliquid.def
vendored
File diff suppressed because it is too large
Load Diff
BIN
external/liquid-dsp/msvc/32/libliquid.dll
vendored
BIN
external/liquid-dsp/msvc/32/libliquid.dll
vendored
Binary file not shown.
BIN
external/liquid-dsp/msvc/32/libliquid.lib
vendored
BIN
external/liquid-dsp/msvc/32/libliquid.lib
vendored
Binary file not shown.
3541
external/liquid-dsp/msvc/64/libliquid.def
vendored
3541
external/liquid-dsp/msvc/64/libliquid.def
vendored
File diff suppressed because it is too large
Load Diff
BIN
external/liquid-dsp/msvc/64/libliquid.dll
vendored
BIN
external/liquid-dsp/msvc/64/libliquid.dll
vendored
Binary file not shown.
BIN
external/liquid-dsp/msvc/64/libliquid.lib
vendored
BIN
external/liquid-dsp/msvc/64/libliquid.lib
vendored
Binary file not shown.
Loading…
Reference in New Issue
Block a user