d76f3e7fa0
This yields one common package to provide libfftw3 (double) and libfftw3f (single) by default and optionally the Fortran bindings as well as OpenMP and MPI variants, and those with long double or quad precision. This changes all packages depending on fftwf in the same commit to minimize the time of inconsistency. Soon, math/fftwf will disappear.
151 lines
5.1 KiB
Text
151 lines
5.1 KiB
Text
# $NetBSD: Makefile.common,v 1.33 2021/04/29 23:30:14 thor Exp $
|
|
# This Makefile fragment is included in the package Makefiles for
|
|
# GNU Radio distributed packages (they all share common configure and build
|
|
# settings).
|
|
|
|
# used by ham/gnuradio-channels/Makefile
|
|
# used by ham/gnuradio-companion/Makefile
|
|
# used by ham/gnuradio-core/Makefile
|
|
# used by ham/gnuradio-network/Makefile
|
|
# used by ham/gnuradio-ctrlport/Makefile
|
|
# used by ham/gnuradio-digital/Makefile
|
|
# used by ham/gnuradio-doxygen/Makefile
|
|
# used by ham/gnuradio-dtv/Makefile
|
|
# used by ham/gnuradio-fec/Makefile
|
|
# used by ham/gnuradio-qtgui/Makefile
|
|
# used by ham/gnuradio-trellis/Makefile
|
|
# used by ham/gnuradio-uhd/Makefile
|
|
# used by ham/gnuradio-utils/Makefile
|
|
# used by ham/gnuradio-video-sdl/Makefile
|
|
# used by ham/gnuradio-vocoder/Makefile
|
|
# used by ham/gnuradio-wavelet/Makefile
|
|
# used by ham/gnuradio-zeromq/Makefile
|
|
|
|
.include "../../ham/gnuradio-core/version.mk"
|
|
|
|
DISTNAME?= gnuradio-${VERSION}
|
|
CATEGORIES+= ham
|
|
#MASTER_SITES= http://s3-dist.gnuradio.org/
|
|
#MASTER_SITES+= http://gnuradio.org/releases/gnuradio/
|
|
MASTER_SITES= ${MASTER_SITE_GITHUB:=gnuradio/}
|
|
GITHUB_PROJECT= gnuradio
|
|
GITHUB_TAG= v${VERSION}
|
|
|
|
MAINTAINER?= pkgsrc-users@NetBSD.org
|
|
HOMEPAGE?= https://www.gnu.org/software/gnuradio/
|
|
LICENSE= gnu-gpl-v3
|
|
|
|
USE_LANGUAGES= c c++
|
|
USE_TOOLS= perl gmake cmake pkg-config
|
|
USE_CMAKE= yes
|
|
|
|
DEPENDS+= ${PYPKGPREFIX}-scipy-[0-9]*:../../math/py-scipy
|
|
# for companion
|
|
DEPENDS+= ${PYPKGPREFIX}-gobject3-[0-9]*:../../devel/py-gobject3
|
|
DEPENDS+= ${PYPKGPREFIX}-mako-[0-9]*:../../devel/py-mako
|
|
DEPENDS+= ${PYPKGPREFIX}-cairo-[0-9]*:../../graphics/py-cairo
|
|
DEPENDS+= ${PYPKGPREFIX}-yaml-[0-9]*:../../textproc/py-yaml
|
|
|
|
DISTINFO_FILE= ${.CURDIR}/../../ham/gnuradio-core/distinfo
|
|
PATCHDIR= ${.CURDIR}/../../ham/gnuradio-core/patches
|
|
|
|
# see CMakeLists.txt GR_PYTHON_MIN_VERSION
|
|
PYTHON_VERSIONS_INCOMPATIBLE= 27
|
|
|
|
PLIST_SUBST+= PYVERSSUFFIX=${PYVERSSUFFIX}
|
|
PLIST_SUBST+= PYSITELIB=${PYSITELIB}
|
|
PY_PATCHPLIST= yes
|
|
|
|
CONFIGURE_DIRS= build
|
|
|
|
EGDIR= share/gnuradio/examples
|
|
PKG_SYSCONFSUBDIR= gnuradio/conf.d
|
|
|
|
CXXFLAGS+= -pthread
|
|
CFLAGS+= -pthread
|
|
LDFLAGS.DragonFly+= -lboost_system
|
|
LDFLAGS.NetBSD+= -lrt
|
|
LDFLAGS.SunOS+= -lboost_system
|
|
CXXFLAGS.SunOS+= -pthreads
|
|
|
|
INSTALLATION_DIRS+= ${EGDIR}
|
|
|
|
# -------- R E S E T CMAKE_ARGS H E R E -------------
|
|
CMAKE_ARGS=
|
|
|
|
CMAKE_ARGS+= -DENABLE_GNURADIO_RUNTIME=ON
|
|
CMAKE_ARGS+= -DENABLE_GR_ANALOG=ON
|
|
CMAKE_ARGS+= -DENABLE_GR_AUDIO=ON
|
|
CMAKE_ARGS+= -DENABLE_GR_BLOCKS=ON
|
|
CMAKE_ARGS+= -DENABLE_GR_FFT=ON
|
|
CMAKE_ARGS+= -DENABLE_GR_FILTER=ON
|
|
CMAKE_ARGS+= -DENABLE_PYTHON=ON
|
|
CMAKE_ARGS+= -DENABLE_VOLK=ON -DENABLE_INTERNAL_VOLK=OFF
|
|
CMAKE_ARGS+= -DCMAKE_HAVE_PTHREADS_CREATE=OFF
|
|
|
|
# Default setting (for pkgsrc)
|
|
CMAKE_ARGS+= -Wno-dev
|
|
CMAKE_ARGS+= -DCMAKE_BUILD_WITH_INSTALL_RPATH=TRUE
|
|
CMAKE_ARGS+= -DCMAKE_INCLUDE_PATH=${PREFIX}/include/portaudio2
|
|
CMAKE_ARGS+= -DCMAKE_LIBRARY_PATH=${PREFIX}/lib/portaudio2
|
|
CMAKE_ARGS+= -DCMAKE_INSTALL_RPATH=${PREFIX}/lib:${PREFIX}/lib/portaudio2
|
|
CMAKE_ARGS+= -DCMAKE_INSTALL_RPATH_USE_LINK_PATH=TRUE
|
|
CMAKE_ARGS+= -DLIBUSB_INCLUDE_DIR=${PREFIX}/include/libusb-1.0
|
|
CMAKE_ARGS+= -Dpybind11_DIR=${PREFIX}/${PYSITELIB}/pybind11/share/cmake/pybind11
|
|
|
|
CMAKE_ARGS+= -DGR_LIBRARY_DIR=${PREFIX}/lib
|
|
CMAKE_ARGS+= -DGR_PREFSDIR=${PREFIX}/share/gnuradio/examples/
|
|
|
|
# adhoc setup not to pick non default version (say python3.6)
|
|
# at configure
|
|
#MAKE_ARGS+= -DPYTHON_EXECUTABLE=${PREFIX}/bin/python${PYVERSSUFFIX}
|
|
|
|
CMAKE_ARGS+= -DZEROMQ_INCLUDE_DIRS=${PREFIX}/include
|
|
CMAKE_ARG_PATH= ../
|
|
|
|
.include "options.mk"
|
|
|
|
# disable/enable ALSA, see also patches/patch-gr-audio_lib_CMakeLists.txt
|
|
SUBST_CLASSES+= alsa
|
|
SUBST_MESSAGE.alsa= Arrange the patched line depepending on alsa is in PKG_OPTIONS or not
|
|
SUBST_FILES.alsa+= gr-audio/lib/CMakeLists.txt
|
|
## The value of ${ALSA_ENABLED} is either '#' or '' by options.mk.
|
|
SUBST_SED.alsa= -e 's,@@ALSA@@,${ALSA_ENABLED},'
|
|
SUBST_STAGE.alsa= pre-configure
|
|
|
|
SUBST_CLASSES+= prefix
|
|
SUBST_STAGE.prefix= pre-configure
|
|
SUBST_MESSAGE.prefix= Substitute PREFIX
|
|
SUBST_FILES.prefix= gnuradio-runtime/lib/constants.cc.in
|
|
SUBST_VARS.prefix= PREFIX
|
|
|
|
REPLACE_PYTHON= */*.py */*/*.py */*/*/*.py */*/*/*/*.py */*/*/*/*/*.py \
|
|
*/*/*/*/*/*/*.py */*/*/*/*/*/*/*.py */*/*/*/*/*/*/*/*.py
|
|
|
|
pre-configure:
|
|
${MKDIR} ${WRKSRC}/build
|
|
|
|
do-install:
|
|
cd ${WRKSRC}/${BUILD_DIRS} && ${GMAKE} DESTDIR=${DESTDIR} install
|
|
|
|
|
|
.include "../../audio/gsm/buildlink3.mk"
|
|
.include "../../audio/jack/buildlink3.mk"
|
|
.include "../../audio/portaudio/buildlink3.mk"
|
|
|
|
.include "../../devel/boost-headers/buildlink3.mk"
|
|
.include "../../devel/boost-libs/buildlink3.mk"
|
|
.include "../../devel/cppunit/buildlink3.mk"
|
|
.include "../../devel/gmp/buildlink3.mk"
|
|
BUILDLINK_API_DEPENDS.py-pybind11+= ${PYPKGPREFIX}-pybind11>=2.6.0
|
|
.include "../../devel/py-pybind11/buildlink3.mk"
|
|
.include "../../graphics/cairo/buildlink3.mk"
|
|
.include "../../graphics/cairo-gobject/buildlink3.mk"
|
|
.include "../../lang/python/application.mk"
|
|
.include "../../math/py-numpy/buildlink3.mk"
|
|
.include "../../math/fftw/buildlink3.mk"
|
|
.include "../../math/gsl/buildlink3.mk"
|
|
.include "../../math/volk/buildlink3.mk"
|
|
.include "../../textproc/log4cpp/buildlink3.mk"
|
|
.include "../../textproc/icu/buildlink3.mk"
|
|
.include "../../x11/gtk3/buildlink3.mk"
|