996169b34d
Point users at cairo>=1.18.
169 lines
5.7 KiB
Makefile
169 lines
5.7 KiB
Makefile
# $NetBSD: Makefile.common,v 1.51 2023/11/14 13:58:35 wiz 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-soapy-sdr/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_CMAKE= yes
|
|
USE_LANGUAGES= c c++
|
|
USE_TOOLS= gmake perl pkg-config
|
|
|
|
USE_CXX_FEATURES+= c++20
|
|
|
|
.include "../../mk/bsd.prefs.mk"
|
|
|
|
.if ${OPSYS} == "NetBSD" && ${OPSYS_VERSION} < 099915
|
|
USE_PKGSRC_GCC= yes
|
|
USE_PKGSRC_GCC_RUNTIME= yes
|
|
.endif
|
|
|
|
DEPENDS+= ${PYPKGPREFIX}-jsonschema-[0-9]*:../../textproc/py-jsonschema
|
|
DEPENDS+= ${PYPKGPREFIX}-scipy-[0-9]*:../../math/py-scipy
|
|
DEPENDS+= ${PYPKGPREFIX}-packaging-[0-9]*:../../devel/py-packaging
|
|
DEPENDS+= ${PYPKGPREFIX}-pygccxml-[0-9]*:../../textproc/py-pygccxml
|
|
# for companion
|
|
DEPENDS+= ${PYPKGPREFIX}-cairo-[0-9]*:../../graphics/py-cairo
|
|
DEPENDS+= ${PYPKGPREFIX}-gobject3-[0-9]*:../../devel/py-gobject3
|
|
DEPENDS+= ${PYPKGPREFIX}-mako-[0-9]*:../../devel/py-mako
|
|
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
|
|
|
|
# three digit version number for shared library ex 3.10.2.0 -> 3.10.2
|
|
PKGVER_MICRO= ${PKGVERSION_NOREV:C/([0-9]+)\.([0-9]+)\.([0-9]+)\.([0-9]+)/\1.\2.\3/}
|
|
|
|
PLIST_SUBST+= PYVERSSUFFIX=${PYVERSSUFFIX}
|
|
PLIST_SUBST+= PYSITELIB=${PYSITELIB}
|
|
# avoid using the name PKGVERSION in variable, see Nocore.mk
|
|
PLIST_SUBST+= PKGVER_MICRO=${PKGVER_MICRO}
|
|
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+= -DLIB_SUFFIX=""
|
|
|
|
# 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+= -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
|
|
#CMAKE_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_TARGET}
|
|
|
|
.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"
|
|
.include "../../devel/spdlog/buildlink3.mk"
|
|
BUILDLINK_API_DEPENDS.py-pybind11+= ${PYPKGPREFIX}-pybind11>=2.6.0
|
|
.include "../../devel/py-pybind11/buildlink3.mk"
|
|
BUILDLINK_API_DEPENDS.cairo+= cairo>=1.18
|
|
.include "../../graphics/cairo/buildlink3.mk"
|
|
# FIXME should be optional
|
|
.include "../../lang/libunwind/buildlink3.mk"
|
|
.include "../../lang/python/application.mk"
|
|
.include "../../math/fftw/buildlink3.mk"
|
|
.include "../../math/gsl/buildlink3.mk"
|
|
.include "../../math/py-numpy/buildlink3.mk"
|
|
.include "../../math/volk/buildlink3.mk"
|
|
.include "../../textproc/icu/buildlink3.mk"
|
|
.include "../../textproc/fmtlib/buildlink3.mk"
|
|
.include "../../x11/gtk3/buildlink3.mk"
|