pkgsrc-wip/gnuradio-core/Makefile.common

137 lines
4.4 KiB
Makefile

# $NetBSD: Makefile.common,v 1.12 2015/09/17 13:48:04 makoto 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 wip/gnuradio-atsc/Makefile
# used by wip/gnuradio-channels/Makefile
# used by wip/gnuradio-companion/Makefile
# used by wip/gnuradio-core/Makefile
# used by wip/gnuradio-ctrlport/Makefile
# used by wip/gnuradio-default/Makefile
# used by wip/gnuradio-digital/Makefile
# used by wip/gnuradio-doxygen/Makefile
# used by wip/gnuradio-dtv/Makefile
# used by wip/gnuradio-fcd/Makefile
# used by wip/gnuradio-fec/Makefile
# used by wip/gnuradio-fcd/Makefile
# used by wip/gnuradio-noaa/Makefile
# used by wip/gnuradio-pager/Makefile
# used by wip/gnuradio-qtgui/Makefile
# used by wip/gnuradio-trellis/Makefile
# used by wip/gnuradio-uhd/Makefile
# used by wip/gnuradio-utils/Makefile
# used by wip/gnuradio-video-sdl/Makefile
# used by wip/gnuradio-vocoder/Makefile
# used by wip/gnuradio-wavelet/Makefile
# used by wip/gnuradio-wxgui/Makefile
# used by wip/gnuradio-zeromq/Makefile
.include "../../wip/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
DEPENDS+= ${PYPKGPREFIX}-cheetah-[0-9]*:../../devel/py-cheetah
# gr_filter_design in gnuradio-core ask for:
DEPENDS+= ${PYPKGPREFIX}-qwt-qt4-[0-9]*:../../x11/py-qwt-qt4
DISTINFO_FILE= ${.CURDIR}/../../wip/gnuradio-core/distinfo
PATCHDIR= ${.CURDIR}/../../wip/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
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
# 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
CMAKE_ARGS+= -DGR_PREFSDIR=${PREFIX}/share/gnuradio/examples/
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= post-patch
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 "../../wip/gnuradio-core/replace-python.mk"
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-devel/buildlink3.mk"
.include "../../devel/boost-headers/buildlink3.mk"
.include "../../devel/boost-libs/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"