[BACK]Return to Makefile.common CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / pkgsrc / ham / gnuradio-core

File: [cvs.NetBSD.org] / pkgsrc / ham / gnuradio-core / Makefile.common (download)

Revision 1.22, Sun Nov 3 19:32:07 2019 UTC (11 months, 2 weeks ago) by rillig
Branch: MAIN
CVS Tags: pkgsrc-2019Q4-base, pkgsrc-2019Q4
Changes since 1.21: +8 -8 lines

ham: align variable assignments

pkglint -Wall -F --only aligned --only indent -r

No manual corrections.

# $NetBSD: Makefile.common,v 1.22 2019/11/03 19:32:07 rillig 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-atsc/Makefile
# used by ham/gnuradio-channels/Makefile
# used by ham/gnuradio-companion/Makefile
# used by ham/gnuradio-core/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-fcd/Makefile
# used by ham/gnuradio-fec/Makefile

# used by ham/gnuradio-fcd/Makefile
# used by ham/gnuradio-noaa/Makefile
# used by ham/gnuradio-pager/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-wxgui/Makefile
# used by ham/gnuradio-zeromq/Makefile

.include	"../../ham/gnuradio-core/Makefile.version"

DISTNAME?=	gnuradio-${VERSION}
CATEGORIES+=	ham
MASTER_SITES=	http://s3-dist.gnuradio.org/
MASTER_SITES=	http://gnuradio.org/releases/gnuradio/

MAINTAINER?=	pkgsrc-users@NetBSD.org
HOMEPAGE?=	http://www.gnu.org/software/gnuradio/
LICENSE=	gnu-gpl-v3

USE_LANGUAGES=		c c++
USE_TOOLS=		perl gmake cmake pkg-config
USE_CMAKE=		yes
LDFLAGS.NetBSD+=	-lrt


DEPENDS+=	${PYPKGPREFIX}-cheetah-[0-9]*:../../devel/py-cheetah
DEPENDS+=	${PYPKGPREFIX}-mako-[0-9]*:../../devel/py-mako
DEPENDS+=	${PYPKGPREFIX}-six-[0-9]*:../../lang/py-six
# gr_filter_design in gnuradio-core ask for:
DEPENDS+=	${PYPKGPREFIX}-qwt-qt4-[0-9]*:../../x11/py-qwt-qt4

DISTINFO_FILE=		${.CURDIR}/../../ham/gnuradio-core/distinfo
PATCHDIR=		${.CURDIR}/../../ham/gnuradio-core/patches

PYTHON_VERSIONS_ACCEPTED= 27 # not yet ported as of 3.3.0
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
LDFLAGS.DragonFly+=	-lboost_system
LDFLAGS.SunOS+=		-lboost_system
CXXFLAGS.SunOS+=	-pthreads

INSTALLATION_DIRS+=	${EGDIR}

# --------       R E S E T  CMAKE_ARGS  H E R E  -------------
CMAKE_ARGS=

# set default as minimum
# See  http://gnuradio.org/redmine/projects/gnuradio/wiki/BuildGuide
#      http://gnuradio.org/redmine/projects/gnuradio/wiki/CygwinInstallMain

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
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+=	-DGR_LIBRARY_DIR=${PREFIX}/lib -lrt
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+=		pyvers
SUBST_FILES.pyvers=	cmake/Modules/FindSphinx.cmake
SUBST_MESSAGE.pyvers=	Fix SPHINX_EXECUTABLE NAMES(sphinx-build)
SUBST_VARS.pyvers+=	PYVERSSUFFIX
SUBST_STAGE.pyvers=	pre-configure

# REPLACE_PYTHON is some 600 files
.include	"../../ham/gnuradio-core/files/REPLACE_PYTHON"

pre-configure:
	(${MKDIR} ${WRKSRC}/build;)

do-install:
	(cd ${WRKSRC}/build; ${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"
# VOLK needs orc.h, so in the common
.include	"../../devel/orc/buildlink3.mk"
.include	"../../devel/swig2/buildlink3.mk"

.include	"../../lang/python/application.mk"
.include	"../../math/fftwf/buildlink3.mk"
.include	"../../math/gsl/buildlink3.mk"