diff --git a/sdr/.gitignore b/sdr/.gitignore new file mode 100644 index 000000000..9e1d2593e --- /dev/null +++ b/sdr/.gitignore @@ -0,0 +1 @@ +/Kconfig diff --git a/sdr/Make.defs b/sdr/Make.defs new file mode 100644 index 000000000..0a48f77f2 --- /dev/null +++ b/sdr/Make.defs @@ -0,0 +1,21 @@ +############################################################################ +# apps/sdr/Make.defs +# +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. The +# ASF licenses this file to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance with the +# License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. +# +############################################################################ + +include $(wildcard $(APPDIR)/sdr/*/Make.defs) diff --git a/sdr/Makefile b/sdr/Makefile new file mode 100644 index 000000000..6a32e03fd --- /dev/null +++ b/sdr/Makefile @@ -0,0 +1,23 @@ +############################################################################ +# apps/sdr/Makefile +# +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. The +# ASF licenses this file to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance with the +# License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. +# +############################################################################ + +MENUDESC = "Software Define Radio Libraries" + +include $(APPDIR)/Directory.mk diff --git a/sdr/liquid_dsp/Kconfig b/sdr/liquid_dsp/Kconfig new file mode 100644 index 000000000..5a07e3b93 --- /dev/null +++ b/sdr/liquid_dsp/Kconfig @@ -0,0 +1,10 @@ +# +# For a description of the syntax of this configuration file, +# see the file kconfig-language.txt in the NuttX tools repository. +# + +config SDR_LIQUID_DSP + bool "Liquid DSP Library" + default n + ---help--- + Enable the Liquid DSP Library - https://liquidsdr.org diff --git a/sdr/liquid_dsp/Make.defs b/sdr/liquid_dsp/Make.defs new file mode 100644 index 000000000..eff26a4a8 --- /dev/null +++ b/sdr/liquid_dsp/Make.defs @@ -0,0 +1,27 @@ +############################################################################ +# apps/sdr/liquid_dsp/Make.defs +# Adds selected applications to apps/ build +# +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. The +# ASF licenses this file to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance with the +# License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. +# +############################################################################/ + +ifneq ($(CONFIG_SDR_LIQUID_DSP),) +CONFIGURED_APPS += $(APPDIR)/sdr/liquid_dsp + +CFLAGS += ${INCDIR_PREFIX}$(APPDIR)/sdr/liquid_dsp/liquid-dsp/include +CXXFLAGS += ${INCDIR_PREFIX}$(APPDIR)/sdr/liquid_dsp/liquid-dsp/include +endif diff --git a/sdr/liquid_dsp/Makefile b/sdr/liquid_dsp/Makefile new file mode 100644 index 000000000..88c3188f3 --- /dev/null +++ b/sdr/liquid_dsp/Makefile @@ -0,0 +1,244 @@ +########################################################################### +# apps/sdr/liquid_dsp/Makefile +# +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. The +# ASF licenses this file to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance with the +# License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. +# +############################################################################/ + +include $(APPDIR)/Make.defs + +LIQUID_DSP_VERSION = 1.4.0 +LIQUID_DSP_UNPACK = liquid-dsp +LIQUID_DSP_TARBALL = v$(LIQUID_DSP_VERSION).tar.gz +LIQUID_DSP_URL_BASE = https://github.com/jgaeddert/liquid-dsp/archive +LIQUID_DSP_URL = $(LIQUID_DSP_URL_BASE)/$(LIQUID_DSP_TARBALL) + +$(LIQUID_DSP_TARBALL): + $(Q) echo "Downloading $(LIQUID_DSP_TARBALL)" + $(Q) curl -O -L $(LIQUID_DSP_URL) + +$(LIQUID_DSP_UNPACK): $(LIQUID_DSP_TARBALL) + $(Q) echo "Unpacking $(LIQUID_DSP_TARBALL) to $(LIQUID_DSP_UNPACK)" + $(Q) tar xzvf $(LIQUID_DSP_TARBALL) + $(Q) mv liquid-dsp-$(LIQUID_DSP_VERSION) $(LIQUID_DSP_UNPACK) + +$(LIQUID_DSP_UNPACK)/.patch: $(LIQUID_DSP_UNPACK) + $(Q) touch $(LIQUID_DSP_UNPACK)/.patch + +CFLAGS += -std=c99 +CFLAGS += ${shell $(INCDIR) "$(CC)" $(APPDIR)/sdr/liquid_dsp} +CFLAGS += -DM_SQRT1_2=0.7071067811865475244008443621048490 +CFLAGS += -DM_SQRT2=1.4142135623730950488016887242096981 +CFLAGS += -DM_PI=3.1415926535897932384626433832795029 +CFLAGS += -DM_LN2=0.6931471805599453094172321214581765 +CFLAGS += -DM_PI_2=1.5707963267948966192313216916397514 +CFLAGS += -DM_2_PI=0.6366197723675813430755350534900574 + + +CSRCS = $(LIQUID_DSP_UNPACK)/src/agc/src/agc_crcf.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/agc/src/agc_rrrf.c + +CSRCS += $(LIQUID_DSP_UNPACK)/src/audio/src/cvsd.c + +CSRCS += $(LIQUID_DSP_UNPACK)/src/buffer/src/bufferf.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/buffer/src/buffercf.c + +CSRCS += $(LIQUID_DSP_UNPACK)/src/channel/src/channel_cccf.c + +CSRCS += $(LIQUID_DSP_UNPACK)/src/dotprod/src/dotprod_cccf.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/dotprod/src/dotprod_crcf.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/dotprod/src/dotprod_rrrf.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/dotprod/src/sumsq.c + +CSRCS += $(LIQUID_DSP_UNPACK)/src/equalization/src/equalizer_cccf.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/equalization/src/equalizer_rrrf.c + +CSRCS += $(LIQUID_DSP_UNPACK)/src/fec/src/crc.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/fec/src/fec.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/fec/src/fec_conv.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/fec/src/fec_conv_poly.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/fec/src/fec_conv_pmatrix.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/fec/src/fec_conv_punctured.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/fec/src/fec_golay2412.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/fec/src/fec_hamming74.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/fec/src/fec_hamming84.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/fec/src/fec_hamming128.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/fec/src/fec_hamming1511.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/fec/src/fec_hamming3126.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/fec/src/fec_hamming128_gentab.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/fec/src/fec_pass.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/fec/src/fec_rep3.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/fec/src/fec_rep5.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/fec/src/fec_rs.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/fec/src/fec_secded2216.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/fec/src/fec_secded3932.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/fec/src/fec_secded7264.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/fec/src/interleaver.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/fec/src/packetizer.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/fec/src/sumproduct.c + +CSRCS += $(LIQUID_DSP_UNPACK)/src/fft/src/fftf.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/fft/src/spgramcf.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/fft/src/spgramf.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/fft/src/fft_utilities.c + +CSRCS += $(LIQUID_DSP_UNPACK)/src/filter/src/bessel.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/filter/src/butter.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/filter/src/cheby1.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/filter/src/cheby2.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/filter/src/ellip.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/filter/src/filter_rrrf.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/filter/src/filter_crcf.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/filter/src/filter_cccf.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/filter/src/firdes.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/filter/src/firdespm.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/filter/src/fnyquist.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/filter/src/gmsk.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/filter/src/group_delay.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/filter/src/hM3.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/filter/src/iirdes.pll.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/filter/src/iirdes.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/filter/src/lpc.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/filter/src/rcos.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/filter/src/rkaiser.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/filter/src/rrcos.c + +CSRCS += $(LIQUID_DSP_UNPACK)/src/framing/src/bpacketgen.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/framing/src/bpacketsync.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/framing/src/bpresync_cccf.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/framing/src/bsync_rrrf.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/framing/src/bsync_crcf.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/framing/src/bsync_cccf.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/framing/src/detector_cccf.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/framing/src/dsssframegen.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/framing/src/dsssframesync.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/framing/src/framedatastats.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/framing/src/framesyncstats.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/framing/src/framegen64.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/framing/src/framesync64.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/framing/src/flexframegen.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/framing/src/flexframesync.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/framing/src/fskframegen.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/framing/src/fskframesync.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/framing/src/gmskframegen.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/framing/src/gmskframesync.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/framing/src/msourcecf.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/framing/src/ofdmflexframegen.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/framing/src/ofdmflexframesync.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/framing/src/presync_cccf.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/framing/src/symstreamcf.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/framing/src/symstreamrcf.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/framing/src/symtrack_cccf.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/framing/src/qdetector_cccf.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/framing/src/qpacketmodem.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/framing/src/qpilotgen.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/framing/src/qpilotsync.c + +CSRCS += $(LIQUID_DSP_UNPACK)/src/math/src/poly.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/math/src/polyc.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/math/src/polyf.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/math/src/polycf.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/math/src/math.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/math/src/math.bessel.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/math/src/math.gamma.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/math/src/math.complex.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/math/src/math.trig.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/math/src/modular_arithmetic.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/math/src/poly.findroots.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/math/src/windows.c + +CSRCS += $(LIQUID_DSP_UNPACK)/src/matrix/src/matrix.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/matrix/src/matrixf.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/matrix/src/matrixc.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/matrix/src/matrixcf.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/matrix/src/smatrix.common.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/matrix/src/smatrixb.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/matrix/src/smatrixf.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/matrix/src/smatrixi.c + +CSRCS += $(LIQUID_DSP_UNPACK)/src/modem/src/ampmodem.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/modem/src/cpfskdem.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/modem/src/cpfskmod.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/modem/src/fskdem.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/modem/src/fskmod.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/modem/src/gmskdem.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/modem/src/gmskmod.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/modem/src/modemcf.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/modem/src/modem_utilities.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/modem/src/modem_apsk_const.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/modem/src/modem_arb_const.c + +CSRCS += $(LIQUID_DSP_UNPACK)/src/multichannel/src/firpfbch_crcf.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/multichannel/src/firpfbch_cccf.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/multichannel/src/ofdmframe.common.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/multichannel/src/ofdmframegen.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/multichannel/src/ofdmframesync.c + +CSRCS += $(LIQUID_DSP_UNPACK)/src/nco/src/nco_crcf.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/nco/src/nco.utilities.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/nco/src/synth_crcf.c + +CSRCS += $(LIQUID_DSP_UNPACK)/src/optim/src/chromosome.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/optim/src/gasearch.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/optim/src/gradsearch.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/optim/src/optim.common.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/optim/src/qnsearch.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/optim/src/utilities.c + +CSRCS += $(LIQUID_DSP_UNPACK)/src/quantization/src/compand.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/quantization/src/quantizercf.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/quantization/src/quantizerf.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/quantization/src/quantizer.inline.c + +CSRCS += $(LIQUID_DSP_UNPACK)/src/random/src/rand.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/random/src/randn.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/random/src/randexp.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/random/src/randweib.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/random/src/randgamma.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/random/src/randnakm.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/random/src/randricek.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/random/src/scramble.c + +CSRCS += $(LIQUID_DSP_UNPACK)/src/sequence/src/bsequence.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/sequence/src/msequence.c + +CSRCS += $(LIQUID_DSP_UNPACK)/src/utility/src/bshift_array.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/utility/src/byte_utilities.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/utility/src/msb_index.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/utility/src/pack_bytes.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/utility/src/shift_array.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/utility/src/utility.c + +CSRCS += $(LIQUID_DSP_UNPACK)/src/vector/src/vectorf_add.port.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/vector/src/vectorf_norm.port.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/vector/src/vectorf_mul.port.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/vector/src/vectorf_trig.port.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/vector/src/vectorcf_add.port.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/vector/src/vectorcf_norm.port.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/vector/src/vectorcf_mul.port.c +CSRCS += $(LIQUID_DSP_UNPACK)/src/vector/src/vectorcf_trig.port.c + +CSRCS += $(LIQUID_DSP_UNPACK)/src/libliquid.c + +ifeq ($(wildcard $(LIQUID_DSP_UNPACK)/.git),) +context:: $(LIQUID_DSP_UNPACK)/.patch + +distclean:: + $(call DELDIR, $(LIQUID_DSP_UNPACK)) + $(call DELFILE, $(LIQUID_DSP_TARBALL)) +endif + +include $(APPDIR)/Application.mk diff --git a/sdr/liquid_dsp/config.h b/sdr/liquid_dsp/config.h new file mode 100644 index 000000000..50f7f4433 --- /dev/null +++ b/sdr/liquid_dsp/config.h @@ -0,0 +1,326 @@ +/**************************************************************************** + * apps/sdr/liquid_dsp/config.h + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. The + * ASF licenses this file to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance with the + * License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations + * under the License. + * + ****************************************************************************/ + +#ifndef __APPS_SRC_LIQUID_DSP_CONFIG_H +#define __APPS_SRC_LIQUID_DSP_CONFIG_H + +/* Support AVX (Advanced Vector Extensions) instructions */ + +#define HAVE_AVX 0 + +/* Define to 1 if you have the `cargf' function. */ + +#define HAVE_CARGF 1 + +/* Define to 1 if you have the `cexpf' function. */ + +#define HAVE_CEXPF 1 + +/* Define to 1 if you have the `cimagf' function. */ + +#define HAVE_CIMAGF 1 + +/* Define to 1 if you have the header file. */ + +#define HAVE_COMPLEX_H 1 + +/* Define to 1 if you have the `cosf' function. */ + +#define HAVE_COSF 1 + +/* Define to 1 if you have the `crealf' function. */ + +#define HAVE_CREALF 1 + +/* Define to 1 if you have the header file. */ + +#define HAVE_EMMINTRIN_H 0 + +/* Define to 1 if you have the `expf' function. */ + +#define HAVE_EXPF 1 + +/* Define to 1 if you have the header file. */ + +/* #undef HAVE_FEC_H */ + +/* Define to 1 if you have the header file. */ + +/* #undef HAVE_FFTW3_H */ + +/* Define to 1 if you have the header file. */ + +#define HAVE_FLOAT_H 1 + +/* Define to 1 if you have the `free' function. */ + +#define HAVE_FREE 1 + +/* Define to 1 if you have the header file. */ + +#define HAVE_GETOPT_H 1 + +/* Define to 1 if you have the header file. */ + +#define HAVE_IMMINTRIN_H 0 + +/* Define to 1 if you have the header file. */ + +#define HAVE_INTTYPES_H 1 + +/* Define to 1 if you have the `c' library (-lc). */ + +#define HAVE_LIBC 1 + +/* Define to 1 if you have the `fec' library (-lfec). */ + +/* #undef HAVE_LIBFEC */ + +/* Define to 1 if you have the `fftw3f' library (-lfftw3f). */ + +/* #undef HAVE_LIBFFTW3F */ + +/* Define to 1 if you have the `m' library (-lm). */ + +#define HAVE_LIBM 1 + +/* Define to 1 if you have the header file. */ + +#define HAVE_LIMITS_H 1 + +/* Define to 1 if you have the `malloc' function. */ + +#define HAVE_MALLOC 1 + +/* Define to 1 if you have the `memmove' function. */ + +#define HAVE_MEMMOVE 1 + +/* Define to 1 if you have the header file. */ + +#define HAVE_MEMORY_H 1 + +/* Define to 1 if you have the `memset' function. */ + +#define HAVE_MEMSET 1 + +/* Define to 1 if you have the header file. */ + +#define HAVE_MMINTRIN_H 0 + +/* Support MMX instructions */ + +#define HAVE_MMX 0 + +/* Define to 1 if you have the header file. */ + +#define HAVE_PMMINTRIN_H 0 + +/* Define to 1 if you have the `realloc' function. */ + +#define HAVE_REALLOC 1 + +/* Define to 1 if you have the `sinf' function. */ + +#define HAVE_SINF 1 + +/* Define to 1 if you have the header file. */ + +#define HAVE_SMMINTRIN_H 0 + +/* Define to 1 if you have the `sqrtf' function. */ + +#define HAVE_SQRTF 1 + +/* Support SSE (Streaming SIMD Extensions) instructions */ + +#define HAVE_SSE 0 + +/* Support SSE2 (Streaming SIMD Extensions 2) instructions */ + +#define HAVE_SSE2 0 + +/* Support SSE3 (Streaming SIMD Extensions 3) instructions */ + +#define HAVE_SSE3 0 + +/* Support SSE4.1 (Streaming SIMD Extensions 4.1) instructions */ + +#define HAVE_SSE41 0 + +/* Support SSE4.2 (Streaming SIMD Extensions 4.2) instructions */ + +#define HAVE_SSE42 0 + +/* Support SSSE3 (Supplemental Streaming SIMD Extensions 3) instructions */ + +#define HAVE_SSSE3 0 + +/* Define to 1 if you have the header file. */ + +#define HAVE_STDINT_H 1 + +/* Define to 1 if you have the header file. */ + +#define HAVE_STDIO_H 1 + +/* Define to 1 if you have the header file. */ + +#define HAVE_STDLIB_H 1 + +/* Define to 1 if you have the header file. */ + +#define HAVE_STRINGS_H 1 + +/* Define to 1 if you have the header file. */ + +#define HAVE_STRING_H 1 + +/* Define to 1 if you have the header file. */ + +#define HAVE_SYS_RESOURCE_H 1 + +/* Define to 1 if you have the header file. */ + +#define HAVE_SYS_STAT_H 1 + +/* Define to 1 if you have the header file. */ + +#define HAVE_SYS_TYPES_H 1 + +/* Define to 1 if you have the header file. */ + +#define HAVE_TMMINTRIN_H 1 + +/* Define to 1 if you have the header file. */ + +#define HAVE_UNISTD_H 1 + +/* Define to 1 if you have the header file. */ + +#define HAVE_XMMINTRIN_H 1 + +/* Force internal FFT even if libfftw is available */ + +/* #undef LIQUID_FFTOVERRIDE */ + +/* Force overriding of SIMD (use portable C code) */ + +/* #undef LIQUID_SIMDOVERRIDE */ + +/* Enable strict program exit on error */ + +/* #undef LIQUID_STRICT_EXIT */ + +/* Suppress printing errors to stderr */ + +/* #undef LIQUID_SUPPRESS_ERROR_OUTPUT */ + +/* Define to the address where bug reports for this package should be sent. */ + +#define PACKAGE_BUGREPORT "joseph@liquidsdr.org" + +/* Define to the full name of this package. */ + +#define PACKAGE_NAME "liquid-dsp" + +/* Define to the full name and version of this package. */ + +#define PACKAGE_STRING "liquid-dsp 1.4.0" + +/* Define to the one symbol short name of this package. */ + +#define PACKAGE_TARNAME "liquid-dsp" + +/* Define to the home page for this package. */ + +#define PACKAGE_URL "" + +/* Define to the version of this package. */ + +#define PACKAGE_VERSION "1.4.0" + +/* The size of `int', as computed by sizeof. */ + +#define SIZEOF_INT 4 + +/* The size of `long int', as computed by sizeof. */ + +#define SIZEOF_LONG_INT 8 + +/* The size of `long long int', as computed by sizeof. */ + +#define SIZEOF_LONG_LONG_INT 8 + +/* The size of `short int', as computed by sizeof. */ + +#define SIZEOF_SHORT_INT 2 + +/* Define to 1 if you have the ANSI C header files. */ + +#define STDC_HEADERS 1 + +/* Define for Solaris 2.5.1 so the uint32_t typedef from , + * , or is not used. If the typedef were allowed, + * the #define below would cause a syntax error. + */ + +/* #undef _UINT32_T */ + +/* Define for Solaris 2.5.1 so the uint8_t typedef from , + * , or is not used. If the typedef were allowed, + * the #define below would cause a syntax error. + */ + +/* #undef _UINT8_T */ + +/* Define to `__inline__' or `__inline' if that's what the C compiler + * calls it, or to nothing if 'inline' is not supported under any name. + */ + +#ifndef __cplusplus +/* #undef inline */ +#endif + +/* Define to rpl_malloc if the replacement function should be used. */ + +/* #undef malloc */ + +/* Define to rpl_realloc if the replacement function should be used. */ + +/* #undef realloc */ + +/* Define to `unsigned int' if does not define. */ + +/* #undef size_t */ + +/* Define to the type of an unsigned integer type of width exactly 32 bits if + * such a type exists and the standard includes do not define it. + */ + +/* #undef uint32_t */ + +/* Define to the type of an unsigned integer type of width exactly 8 bits if + * such a type exists and the standard includes do not define it. + */ + +/* #undef uint8_t */ + +#endif /* __APPS_SRC_LIQUID_DSP_CONFIG_H */