From d8b0bea3d4350b8450d612ed461c5bdf26b562b0 Mon Sep 17 00:00:00 2001 From: jcorgan Date: Thu, 7 May 2009 00:11:08 +0000 Subject: [PATCH] Merged r10948:10959 from jcorgan/deb into trunk. Trunk passes distcheck. Part 1 of Debian/Ubuntu binary packaging update for 3.2 release. Creates all C++ API binary and dev packages, with their associated runtime dependencies. * Runtime shared-library packages: -libgruel -libgnuradio-omnithread -libpmt -libmblock -libgnuradio-core -libgnuradio-alsa -libgnuradio-qtgui -libusrp -libusrp2 -libgnuradio-usrp -libgnuradio-usrp2 * C++ development headers and pkg-config files for the above: -libgruel-dev -libgnuradio-omnithread-dev -libpmt-dev -libmblock-dev -libgnuradio-core-dev -libgnuradio-alsa-dev -libgnuradio-qtgui-dev -libusrp-dev -libusrp2-dev NOTE: For consistency, libqtgui.so has been renamed to libgnuradio-qtgui.so, and libgr-usrp2.so has been renamed to libgnuradio-usrp2.so. A 'gnuradio-dev' virtual package will be created that will depend upon the above -dev packages, so installing that one package will pull in all that is needed to do pure C++ development in GNU Radio. git-svn-id: http://gnuradio.org/svn/gnuradio/trunk@10981 221aa14e-8319-0410-a670-987f0aec2ac5 --- config/grc_gr_usrp2.m4 | 1 + debian/changelog | 6 +- debian/control | 426 ++++++++++--------------------- debian/gen-install-files.sh | 114 ++++++--- debian/libmblock-dev.install | 3 + debian/libusrp2.dirs | 2 + debian/libusrp2.install | 5 + debian/libusrp2.limits | 1 + debian/libusrp2.postinst | 18 ++ debian/libusrp2.postrm | 11 + debian/rules | 10 +- gr-qtgui/src/lib/Makefile.am | 10 +- gr-usrp2/Makefile.am | 5 +- gr-usrp2/gnuradio-usrp2.pc.in | 11 + gr-usrp2/src/Makefile.am | 8 +- usrp/host/lib/legacy/Makefile.am | 18 +- 16 files changed, 302 insertions(+), 347 deletions(-) create mode 100644 debian/libmblock-dev.install create mode 100644 debian/libusrp2.dirs create mode 100644 debian/libusrp2.install create mode 100644 debian/libusrp2.limits create mode 100644 debian/libusrp2.postinst create mode 100644 debian/libusrp2.postrm create mode 100644 gr-usrp2/gnuradio-usrp2.pc.in diff --git a/config/grc_gr_usrp2.m4 b/config/grc_gr_usrp2.m4 index 223cac03..4cac5ca0 100644 --- a/config/grc_gr_usrp2.m4 +++ b/config/grc_gr_usrp2.m4 @@ -26,6 +26,7 @@ AC_DEFUN([GRC_GR_USRP2],[ AC_CONFIG_FILES([ \ gr-usrp2/Makefile \ + gr-usrp2/gnuradio-usrp2.pc \ gr-usrp2/src/Makefile \ gr-usrp2/src/run_tests \ ]) diff --git a/debian/changelog b/debian/changelog index 4040cfc4..ccc89b9c 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,9 +1,9 @@ -gnuradio (3.1.svn) unstable; urgency=low +gnuradio (3.2.svn) unstable; urgency=low - * post release 3.1 trunk repository packages + * post release 3.2 trunk repository packages * see http://gnuradio.org/trac/wiki for stable branch - -- Johnathan Corgan Mon, 24 Feb 2008 18:12:00 -0800 + -- Johnathan Corgan Mon, 4 May 2009 18:00:00 -0800 gnuradio (3.0.svn) unstable; urgency=low diff --git a/debian/control b/debian/control index 15414c77..1de95d8e 100644 --- a/debian/control +++ b/debian/control @@ -1,16 +1,24 @@ +################################################################################ +# Single source deb for entire distribution # +################################################################################ + Source: gnuradio Section: comm Priority: optional Maintainer: Johnathan Corgan Build-Conflicts: automake1.8, automake1.9 -Build-Depends: debhelper (>= 5.0.37.2), build-essential, automake, libtool, pkg-config, python-dev, swig, fftw3-dev | libfftw3-dev, libcppunit-dev, libboost1.35-dev, libgsl0-dev, guile-1.8, libasound2-dev, python-wxgtk2.8, python-numpy, doxygen, xmlto, sdcc-nf, libusb-dev, libjack-dev, portaudio19-dev, libsdl1.2-dev, python-cheetah, python-gtk2, python-lxml +Build-Depends: debhelper (>= 5.0.37.2), build-essential, automake, libtool, pkg-config, python-dev, swig, fftw3-dev | libfftw3-dev, libcppunit-dev, libboost1.37-dev, libgsl0-dev, guile-1.8, libasound2-dev, python-wxgtk2.8, python-numpy, doxygen, xmlto, sdcc-nf, libusb-dev, libjack-dev, portaudio19-dev, libsdl1.2-dev, python-cheetah, python-gtk2, python-lxml Standards-Version: 3.7.2 XS-Python-Version: >= 2.5 +################################################################################ +# C++ auxiliary libraries # +################################################################################ + Package: libgruel Section: libs Architecture: any -Depends: ${shlibs:Depends} +Depends: libboost-date-time1.37.0, libboost-thread1.37.0 Description: GNU Radio Utility Etcetera Library This package implements a variety of low-level utility routines for GNU Radio. @@ -18,7 +26,7 @@ Description: GNU Radio Utility Etcetera Library Package: libgruel-dev Section: libdevel Architecture: any -Depends: libgruel (= ${binary:Version}), libboost1.35-dev +Depends: libgruel (= ${binary:Version}), libboost-date-time1.37-dev, libboost-thread1.37-dev Description: GNU Radio Utility Etcetera Library This package implements a variety of low-level utility routines for GNU Radio. @@ -30,7 +38,6 @@ Section: libs Architecture: any Replaces: libgnuradio-omnithread0c2a Conflicts: libgnuradio-omnithread0c2a -Depends: ${shlibs:Depends} Description: GNU Radio Omnithreads Abstraction Library This package is a fork of the omniORB-4.0.1 threading library for use with GNU Radio. @@ -47,33 +54,12 @@ Description: GNU Radio Omnithreads Abstraction Library . This package contains header files needed by developers. -Package: libgnuradio-core -Section: libs -Architecture: any -Depends: ${shlibs:Depends} -Conflicts: libgnuradio-core0, libgnuradio-core0c2, libgnuradio-core0c2a -Replaces: libgnuradio-core0, libgnuradio-core0c2, libgnuradio-core0c2a -Suggests: gnuradio-doc -Description: The GNU Sofware Radio Core Library - This package contains the core GNU Radio libraries. - -Package: libgnuradio-core-dev -Section: libdevel -Architecture: any -Replaces: libgnuradio-core0-dev -Conflicts: libgnuradio-core0-dev -Depends: libgnuradio-core (= ${binary:Version}), libgnuradio-omnithread-dev, libboost1.35-dev, libgruel-dev, libgsl0-dev, fftw3-dev | libfftw3-dev -Description: The GNU Software Radio Core Library - This package contains the core GNU Radio libraries. - . - This package contains header files needed by developers. - Package: libpmt Section: libs Architecture: any Replaces: libpmt0c2a Conflicts: libpmt0c2a -Depends: ${shlibs:Depends} +Depends: libgnuradio-omnithread (= ${binary:Version}) Description: GNU Radio Polymorphic Type Library This package implements polymorphic types. These are similar to lisp or Python data objects, and implement transparent @@ -84,7 +70,7 @@ Section: libdevel Architecture: any Replaces: libpmt0-dev Conflicts: libpmt0-dev -Depends: libpmt (= ${binary:Version}), libgnuradio-omnithread-dev, libboost1.35-dev +Depends: libpmt (= ${binary:Version}), libgnuradio-omnithread-dev (= ${binary:Version}) Description: GNU Radio Polymorphic Type Library This package implements polymorphic types. These are similar to lisp or Python data objects, and implement transparent @@ -92,12 +78,16 @@ Description: GNU Radio Polymorphic Type Library . This package contains header files needed by developers. +################################################################################ +# C++ M-Block library packages # +################################################################################ + Package: libmblock Section: libs Architecture: any Replaces: libmblock0c2a Conflicts: libmblock0c2a -Depends: ${shlibs:Depends} +Depends: libpmt (= ${binary:Version}), libgnuradio-omnithread (= ${binary:Version}) Description: GNU Radio Message Block Library This package provides the GNU Radio message block library. @@ -106,178 +96,20 @@ Section: libdevel Architecture: any Replaces: libmblock0-dev Conflicts: libmblock0-dev -Depends: libmblock (= ${binary:Version}), libgnuradio-omnithread-dev, libpmt-dev +Depends: libmblock (= ${binary:Version}), libgnuradio-omnithread-dev (= ${binary:Version}), libpmt-dev (= ${binary:Version}) Description: GNU Radio Message Block Library This package provides the GNU Radio message block library. . This package contains header files needed by developers. -Package: gnuradio-doc -Section: doc -Architecture: all -Description: Software Defined Radio - This package contains the documentation for the GNU Radio software - defined radio system. - -Package: python-gnuradio-core -Architecture: any -Depends: ${python:Depends}, ${shlibs:Depends}, python-numpy -Conflicts: python-gnuradio (< 3.1) -Provides: ${python:Provides} -Section: python -XB-Python-Version: ${python:Versions} -Description: Python bindings for GNU Radio core library - This package provides the modules that enable one to use gnuradio - from Python scripts. - -Package: python-gnuradio-wxgui -Architecture: any -Depends: ${python:Depends}, python-gnuradio-core, python-wxgtk2.8, python-opengl -Provides: ${python:Provides} -Section: python -XB-Python-Version: ${python:Versions} -Description: GNU Radio Graphical Interface Routines based on wxPython - This package provides high level GUI construction classes based - upon the wxPython bindings for wxWidgets. - -Package: libgnuradio-audio-alsa -Section: libs -Architecture: any -Depends: ${shlibs:Depends} -Description: GNU Radio C++ block for ALSA sound system - This package contains the ALSA sound system driver for GNU Radio. - -Package: libgnuradio-audio-alsa-dev -Section: libdevel -Architecture: any -Depends: ${shlibs:Depends} -Description: GNU Radio C++ block for ALSA sound system - This package contains the ALSA sound system driver for GNU Radio. - . - This package contains header files needed by developers. - -Package: python-gnuradio-audio-alsa -Architecture: any -Depends: ${python:Depends}, ${shlibs:Depends}, python-gnuradio-core -Section: python -Provides: ${python:Provides}, python-gnuradio-audio -XB-Python-Version: ${python:Versions} -Description: Python bindings for GNU Radio ALSA audio driver - This package provides the Python wrappers around the GNU Radio ALSA - audio driver. - -Package: python-gnuradio-audio-jack -Architecture: any -Depends: ${python:Depends}, ${shlibs:Depends}, python-gnuradio-core -Section: python -Provides: ${python:Provides}, python-gnuradio-audio -XB-Python-Version: ${python:Versions} -Description: GNU Radio Python JACK Audio Driver - This package provides the Python interface to the GNU Radio driver - for the JACK audio system. - -Package: python-gnuradio-audio-oss -Architecture: any -Depends: ${python:Depends}, ${shlibs:Depends}, python-gnuradio-core -Section: python -Provides: ${python:Provides}, python-gnuradio-audio -XB-Python-Version: ${python:Versions} -Description: GNU Radio Python OSS Audio Driver - This package provides the Python interface to the GNU Radio driver - for the OSS audio system. - -Package: python-gnuradio-audio-portaudio -Architecture: any -Depends: ${python:Depends}, ${shlibs:Depends}, python-gnuradio-core -Provides: ${python:Provides}, python-gnuradio-audio -Section: python -XB-Python-Version: ${python:Versions} -Description: GNU Radio Python PortAudio Driver - This package provides the Python interface to the GNU Radio driver - for the PortAudio audio system. - -Package: python-gnuradio-atsc -Architecture: any -Depends: ${python:Depends}, ${shlibs:Depends}, python-gnuradio-core -Provides: ${python:Provides} -Section: python -XB-Python-Version: ${python:Versions} -Description: GNU Radio ATSC Receiver - This package provides a decoder for ATSC waveforms using GNU Radio. - -#Package: python-gnuradio-comedi -#Architecture: any -#Depends: ${python:Depends}, ${shlibs:Depends}, python-gnuradio-core -#Provides: ${python:Provides} -#Section: python -#XB-Python-Version: ${python:Versions} -#Description: GNU Radio Python Comedilib Driver -# This package provides the Python interface to the GNU Radio driver -# for the comedilib data acquisition hardware library. - -Package: python-gnuradio-cvsd-vocoder -Architecture: any -Depends: ${python:Depends}, ${shlibs:Depends}, python-gnuradio-core -Provides: ${python:Provides} -Section: python -XB-Python-Version: ${python:Versions} -Description: GNU Radio CVSD Vocoder - This package provides an implementation of a CVSD vocoder for - GNU Radio. - -Package: python-gnuradio-gsm-fr-vocoder -Architecture: any -Depends: ${python:Depends}, ${shlibs:Depends}, python-gnuradio-core -Provides: ${python:Provides} -Section: python -XB-Python-Version: ${python:Versions} -Description: GNU Radio GSM Full-Rate Vocoder - This package provides an implementation of a full-rate GSM vocoder - for GNU Radio. - -Package: python-gnuradio-trellis -Architecture: any -Depends: ${python:Depends}, ${shlibs:Depends}, python-gnuradio-core -Provides: ${python:Provides} -Section: python -XB-Python-Version: ${python:Versions} -Description: GNU Radio Trellis-Coded Modulation library - This package provides an implementation of trellis-coded modulation - for GNU Radio. - -Package: python-gnuradio-video-sdl -Architecture: any -Depends: ${python:Depends}, ${shlibs:Depends}, python-gnuradio-core -Provides: ${python:Provides} -Section: python -XB-Python-Version: ${python:Versions} -Description: GNU Radio SDL Interface Library - This package provides an interface to the SDL rendering library - for GNU Radio. - -Package: python-gnuradio -Section: python -Architecture: all -Recommends: python-gnuradio-core, python-gnuradio-wxgui, python-gnuradio-audio-alsa | python-gnuradio-audio, python-gnuradio-atsc, python-gnuradio-cvsd-vocoder, python-gnuradio-gsm-fr-vocoder, python-gnuradio-trellis, python-gnuradio-video-sdl -Provides: ${python:Provides} -XB-Python-Version: ${python:Versions} -Description: Python Libraries for GNU Radio Components - This is a virtual package that depends upon all the Python components - for GNU Radio. - -Package: gnuradio-dev -Section: libdevel -Architecture: all -Recommends: libgnuradio-audio-alsa-dev -Depends: libgnuradio-core-dev, libmblock-dev, libpmt-dev -Description: Development headers for GNU Radio C++ development - This is a virtual package that depends on all the development header packages - for the various GNU Radio components. It is only needed if you intend to - develop custom GNU Radio signal processing blocks in C++. +################################################################################ +# C++ USRP/USRP2 library packages # +################################################################################ Package: libusrp Section: comm Architecture: any +Depends: libusb-0.1-4 Replaces: libusrp0, libusrp0c2a, usrp-firmware Suggests: usrp-doc Description: Client side library for the USRP(1) hardware @@ -309,127 +141,141 @@ Description: Client side library for the USRP(1) hardware . This package contains header files needed by developers. -Package: libusrp-inband -Section: libs +Package: libusrp2 +Section: comm Architecture: any -Depends: ${shlibs:Depends} -Description: Client side library for the USRP with in-band signaling - The package is an alternative C++ interface to the USRP that implements - an experimental in-band signaling method across the USB. +Depends: libboost-thread1.37.0, libgruel (= ${binary:Version}), libgnuradio-omnithread (= ${binary:Version}) +Suggests: usrp-doc +Description: Client side library for the USRP2 hardware + The Universal Software Radio Peripheral 2 (USRP2) is a GbE-connected, + low-cost and open board. It features two high-speed analog-to-digital + and digital-to-analog converters, an FPGA and a microcontroller. It's + ideal for capturing or transmitting various signals, usually in + combination with GNU Radio. The design schemas are available under a + free license. + . + This package contains the client-side C++ library, providing the low- + level (non-GNU Radio) hardware interface. -Package: libusrp-inband-dev +Package: libusrp2-dev Section: libdevel Architecture: any -Depends: libusrp-inband (= ${binary:Version}), libusrp-dev -Description: Client side library for the USRP with in-band signaling - The package is an alternative C++ interface to the USRP that implements - an experimental in-band signaling method across the USB. +Depends: libusrp2 (= ${binary:Version}), libboost1.37-dev, libgnuradio-omnithread-dev (= ${binary:Version}), libgruel-dev (= ${binary:Version}) +Description: Client side library for the USRP(1) hardware + The Universal Software Radio Peripheral 2 (USRP2) is a GbE-connected, + low-cost and open board. It features two high-speed analog-to-digital + and digital-to-analog converters, an FPGA and a microcontroller. It's + ideal for capturing or transmitting various signals, usually in + combination with GNU Radio. The design schemas are available under a + free license. + . + This package contains the client-side C++ library, providing the low- + level (non-GNU Radio) hardware interface. . This package contains header files needed by developers. -Package: usrp-doc -Section: doc -Architecture: all -Description: Software Defined Radio - This package contains the documentation for the Universal Software Radio - Peripheral (USRP) hardware and interface library. +################################################################################ +# C++ GNU Radio block library packages # +################################################################################ -Package: python-usrp +Package: libgnuradio-core +Section: libs Architecture: any -Depends: ${python:Depends}, ${shlibs:Depends} -Provides: ${python:Provides} -Section: python -XB-Python-Version: ${python:Versions} -Description: Python bindings for the USRP library - This package provides the modules that enable one to use the USRP as a - standalone device from Python, independent of GNU Radio proper. +Depends: libgruel (= ${binary:Version}), libgnuradio-omnithread (= ${binary:Version}), libboost-thread1.37.0, libboost-date-time1.37.0, libfftw3-3, libgsl0ldbl +Conflicts: libgnuradio-core0, libgnuradio-core0c2, libgnuradio-core0c2a +Replaces: libgnuradio-core0, libgnuradio-core0c2, libgnuradio-core0c2a +Suggests: gnuradio-doc +Description: The GNU Sofware Radio Core Library + This package contains the core GNU Radio libraries. -Package: python-gnuradio-usrp -Architecture: any -Depends: ${python:Depends}, ${shlibs:Depends}, python-gnuradio-core, python-usrp -Provides: ${python:Provides} -Section: python -XB-Python-Version: ${python:Versions} -Description: Python bindings for GNU Radio USRP driver - This package provides the Python interface to the GNU Radio USRP - driver and daughterboard drivers. +Package: libgnuradio-core-dev +Section: libdevel +Architecture: any +Replaces: libgnuradio-core0-dev +Conflicts: libgnuradio-core0-dev +Depends: libgnuradio-core (= ${binary:Version}), libgruel-dev (= ${binary:Version}), libgnuradio-omnithread-dev (= ${binary:Version}), libboost-thread1.37-dev, libboost-date-time1.37-dev, libgsl0-dev, libfftw3-dev +Description: The GNU Software Radio Core Library + This package contains the core GNU Radio libraries. + . + This package contains header files needed by developers. -Package: gnuradio-utils +Package: libgnuradio-audio-alsa +Section: libs Architecture: any -Depends: ${python:Depends}, ${shlibs:Depends}, python-gnuradio-usrp, python-gnuradio-wxgui, python-matplotlib, python-tk, python-scipy -Provides: ${python:Provides} -Section: comm -XB-Python-Version: ${python:Versions} -Description: GNU Radio Utilities - This package provides commonly used utilities for GNU Radio - -Package: usrp -Section: comm -Architecture: all -Depends: usrp-doc, libusrp -Description: The Universal Software Radio Peripheral - This is a virtual package that depends on the non-GNU Radio USRP - software collection. +Depends: libgnuradio-core (= ${binary:Version}), libasound2 +Description: GNU Radio C++ block for ALSA sound system + This package contains the ALSA sound system driver for GNU Radio. -Package: gnuradio-examples +Package: libgnuradio-audio-alsa-dev +Section: libdevel Architecture: any -Depends: ${python:Depends}, python-gnuradio-core -Recommends: python-gnuradio-wxgui, python-gnuradio-audio-alsa | python-gnuradio-audio, python-gnuradio-usrp -Section: comm -XB-Python-Version: ${python:Versions} -Description: GNU Radio Example Programs - This package provides examples of GNU Radio usage using Python +Depends: libgnuradio-audio-alsa (= ${binary:Version}), libgnuradio-core-dev (= ${binary:Version}), libasound2-dev +Description: GNU Radio C++ block for ALSA sound system + This package contains the ALSA sound system driver for GNU Radio. + . + This package contains header files needed by developers. -Package: gnuradio -Section: comm -Architecture: all -Recommends: gnuradio-doc, python-gnuradio, gnuradio-examples, gnuradio-utils -Description: GNU Software Defined Radio - This is a virtual package that depends the entire GNU Radio collection of - components. If you are using a USRP, you should also install the usrp package. +Package: libgnuradio-qtgui +Section: libs +Architecture: any +Depends: libgnuradio-core (= ${binary:Version}), libqt4-opengl, libqtcore4, libqtgui4, libqwt5-qt4, libqwtplot3d-qt4 +Description: GNU Radio C++ blocks fro QT-based GUI applications + This package contains the C++ library for using GNU Radio inside + QT-based GUI applications. -Package: gnuradio-pager +Package: libgnuradio-qtgui-dev +Section: libdevel Architecture: any -Depends: ${python:Depends}, ${shlibs:Depends}, python-gnuradio-usrp -Section: comm -XB-Python-Version: ${python:Versions} -Description: GNU Radio FLEX Pager Decoder - This package provides a decoder for the FLEX paging protocol for GNU Radio +Depends: libgnuradio-qtgui (= ${binary:Version}), libgnuradio-core-dev (= ${binary:Version}), libqt4-dev, libqwtplot3d-qt4-dev +Description: GNU Radio C++ blocks fro QT-based GUI applications + This package contains the C++ library for using GNU Radio inside + QT-based GUI applications. + . + This package contains header files needed by developers. -Package: gnuradio-sounder +Package: libgnuradio-usrp +Section: libs Architecture: any -Replaces: gnuradio-sounder-firmware -Conflicts: gnuradio-sounder-firmware -Depends: ${python:Depends}, ${shlibs:Depends}, python-gnuradio-usrp -Section: comm -XB-Python-Version: ${python:Versions} -Description: GNU Radio Channel Sounder Application - This package provides an RF channel sounder application for GNU Radio +Depends: libgnuradio-core (= ${binary:Version}), libusrp (= ${binary:Version}) +Description: GNU Radio C++ blocks for USRP(1) hardware + This package contains the C++ API blocks for the Universal Software Radio + Peripheral. -Package: gnuradio-gpio +Package: libgnuradio-usrp-dev +Section: libdevel Architecture: any -Replaces: gnuradio-gpio-firmware -Conflicts: gnuradio-gpio-firmware -Depends: ${python:Depends}, ${shlibs:Depends}, python-gnuradio-usrp -Section: comm -XB-Python-Version: ${python:Versions} -Description: GNU Radio Streaming Digital Application - This package provides a streaming digital GPIO capabilities for GNU Radio +Depends: libgnuradio-usrp (= ${binary:Version}), libgnuradio-core-dev (= ${binary:Version}), libusrp-dev (= ${binary:Version}) +Description: GNU Radio C++ blocks for USRP(1) hardware + This package contains the C++ API blocks for the Universal Software Radio + Peripheral. + . + This package contains header files needed by developers. -Package: gnuradio-radar-mono +Package: libgnuradio-usrp2 +Section: libs Architecture: any -Replaces: gnuradio-radar-mono-firmware -Conflicts: gnuradio-radar-mono-firmware -Depends: ${python:Depends}, ${shlibs:Depends}, python-gnuradio-usrp -Section: comm -XB-Python-Version: ${python:Versions} -Description: GNU Radio Monostatic Radar Application - This package provides a monostatic radar application for GNU Radio +Depends: libgnuradio-core (= ${binary:Version}), libusrp2 (= ${binary:Version}) +Description: GNU Radio C++ blocks for USRP(1) hardware + This package contains the C++ API blocks for the Universal Software Radio + Peripheral. -Package: gnuradio-radio-astronomy +Package: libgnuradio-usrp2-dev +Section: libdevel Architecture: any -Depends: ${python:Depends}, ${shlibs:Depends}, python-gnuradio-usrp, python-gnuradio-wxgui -Section: comm -XB-Python-Version: ${python:Versions} -Description: GNU Radio Radio Astronomy Applications - This package provides radio astronomy applications for GNU Radio +Depends: libgnuradio-usrp2 (= ${binary:Version}), libgnuradio-core-dev (= ${binary:Version}), libusrp2-dev (= ${binary:Version}) +Description: GNU Radio C++ blocks for USRP(1) hardware + This package contains the C++ API blocks for the Universal Software Radio + Peripheral. + . + This package contains header files needed by developers. + +################################################################################ +# Documentation packages # +################################################################################ + +Package: gnuradio-doc +Section: doc +Architecture: all +Description: Software Defined Radio + This package contains the documentation for the GNU Radio software + defined radio system. diff --git a/debian/gen-install-files.sh b/debian/gen-install-files.sh index 9c680d34..9e6d779d 100755 --- a/debian/gen-install-files.sh +++ b/debian/gen-install-files.sh @@ -2,6 +2,23 @@ EXTRACT=dtools/bin/extract_install_filenames +# libusrp-dev +NAME=debian/libusrp-dev.install +rm -f $NAME +touch $NAME +$EXTRACT usrp/host/lib/legacy/Makefile include_HEADERS >>$NAME +$EXTRACT usrp/firmware/include/Makefile include_HEADERS >>$NAME +echo usr/lib/libusrp.so >>$NAME +echo usr/lib/pkgconfig/usrp.pc >>$NAME + +# libusrp2-dev +NAME=debian/libusrp2-dev.install +rm -f $NAME +touch $NAME +$EXTRACT usrp2/host/include/usrp2/Makefile usrp2include_HEADERS >>$NAME +echo usr/lib/libusrp2.so >>$NAME +echo usr/lib/pkgconfig/usrp2.pc >>$NAME + # libgnuradio-core-dev NAME=debian/libgnuradio-core-dev.install rm -f $NAME @@ -18,19 +35,78 @@ $EXTRACT gnuradio-core/src/lib/reed-solomon/Makefile grinclude_HEADERS >>$NAME $EXTRACT gnuradio-core/src/lib/reed-solomon/Makefile swiginclude_HEADERS >>$NAME $EXTRACT gnuradio-core/src/lib/runtime/Makefile grinclude_HEADERS >>$NAME $EXTRACT gnuradio-core/src/lib/runtime/Makefile swiginclude_HEADERS >>$NAME +$EXTRACT gnuradio-core/src/lib/hier/Makefile grinclude_HEADERS >>$NAME +$EXTRACT gnuradio-core/src/lib/hier/Makefile swiginclude_HEADERS >>$NAME $EXTRACT gnuradio-core/src/lib/swig/Makefile grinclude_HEADERS >>$NAME $EXTRACT gnuradio-core/src/lib/swig/Makefile swiginclude_HEADERS >>$NAME echo usr/lib/libgnuradio-core.so >>$NAME echo usr/lib/pkgconfig/gnuradio-core.pc >>$NAME -# libmblock-dev -NAME=debian/libmblock-dev.install +# libgnuradio-audio-alsa +NAME=debian/libgnuradio-audio-alsa.install +rm -f $NAME +touch $NAME +$EXTRACT gr-audio-alsa/src/Makefile lib_LTLIBRARIES >>$NAME +$EXTRACT gr-audio-alsa/src/Makefile lib_LTLIBRARIES | \ + sed -e 's/\.la$/.so.*/' >>$NAME +echo etc/gnuradio/conf.d/gr-audio-alsa.conf >>$NAME + +# libgnuradio-audio-alsa-dev +NAME=debian/libgnuradio-audio-alsa-dev.install +rm -f $NAME +touch $NAME +$EXTRACT gr-audio-alsa/src/Makefile grinclude_HEADERS >>$NAME +echo usr/lib/libgnuradio-audio-alsa.so >>$NAME +echo usr/lib/pkgconfig/gr-audio-alsa.pc >>$NAME + +# libgnuradio-qtgui +NAME=debian/libgnuradio-qtgui.install +rm -f $NAME +touch $NAME +$EXTRACT gr-qtgui/src/lib/Makefile lib_LTLIBRARIES >>$NAME +$EXTRACT gr-qtgui/src/lib/Makefile lib_LTLIBRARIES | \ + sed -e 's/\.la$/.so.*/' >>$NAME + +# libgnuradio-qtgui-dev +NAME=debian/libgnuradio-qtgui-dev.install +rm -f $NAME +touch $NAME +$EXTRACT gr-qtgui/src/lib/Makefile grinclude_HEADERS >>$NAME +echo usr/lib/libgnuradio-qtgui.so >>$NAME + +# libgnuradio-usrp +NAME=debian/libgnuradio-usrp.install +rm -f $NAME +touch $NAME +$EXTRACT gr-usrp/src/Makefile lib_LTLIBRARIES >>$NAME +$EXTRACT gr-usrp/src/Makefile lib_LTLIBRARIES | \ + sed -e 's/\.la$/.so.*/' >>$NAME +echo usr/lib/pkgconfig/gnuradio-usrp.pc >> $NAME + +# libgnuradio-usrp-dev +NAME=debian/libgnuradio-usrp-dev.install +rm -f $NAME +touch $NAME +$EXTRACT gr-usrp/src/Makefile grinclude_HEADERS >>$NAME +echo usr/lib/libgnuradio-usrp.so >>$NAME + +# libgnuradio-usrp2 +NAME=debian/libgnuradio-usrp2.install +rm -f $NAME +touch $NAME +$EXTRACT gr-usrp2/src/Makefile lib_LTLIBRARIES >>$NAME +$EXTRACT gr-usrp2/src/Makefile lib_LTLIBRARIES | \ + sed -e 's/\.la$/.so.*/' >>$NAME +echo usr/lib/pkgconfig/gnuradio-usrp2.pc >> $NAME + +# libgnuradio-usrp2-dev +NAME=debian/libgnuradio-usrp2-dev.install rm -f $NAME touch $NAME -$EXTRACT mblock/src/lib/Makefile include_HEADERS >>$NAME -$EXTRACT mblock/src/lib/Makefile swiginclude_HEADERS >>$NAME -echo usr/lib/libmblock.so >>$NAME -echo usr/lib/pkgconfig/mblock.pc >>$NAME +$EXTRACT gr-usrp2/src/Makefile grinclude_HEADERS >>$NAME +echo usr/lib/libgnuradio-usrp2.so >>$NAME + +exit 0 # python-gnuradio-core NAME=debian/python-gnuradio-core.install @@ -48,15 +124,6 @@ $EXTRACT gnuradio-core/src/python/gnuradio/gru/Makefile grblkspython_PYTHON >>$N $EXTRACT gnuradio-core/src/python/gnuradio/gruimpl/Makefile grupython_PYTHON >>$NAME $EXTRACT gnuradio-core/src/python/gnuradio/vocoder/Makefile grvocoderpython_PYTHON >>$NAME -# libusrp-dev -NAME=debian/libusrp-dev.install -rm -f $NAME -touch $NAME -$EXTRACT usrp/host/lib/legacy/Makefile include_HEADERS >>$NAME -$EXTRACT usrp/firmware/include/Makefile include_HEADERS >>$NAME -echo usr/lib/libusrp.so >>$NAME -echo usr/lib/pkgconfig/usrp.pc >>$NAME - # libusrp-inband-dev NAME=debian/libusrp-inband-dev.install rm -f $NAME @@ -104,23 +171,6 @@ $EXTRACT gr-atsc/src/lib/Makefile ourlib_LTLIBRARIES | \ sed -e 's/\.la$/.so/' >>$NAME $EXTRACT gr-atsc/src/python/Makefile ourdata_DATA >>$NAME -# libgnuradio-audio-alsa -NAME=debian/libgnuradio-audio-alsa.install -rm -f $NAME -touch $NAME -$EXTRACT gr-audio-alsa/src/Makefile lib_LTLIBRARIES >>$NAME -$EXTRACT gr-audio-alsa/src/Makefile lib_LTLIBRARIES | \ - sed -e 's/\.la$/.so.*/' >>$NAME -echo etc/gnuradio/conf.d/gr-audio-alsa.conf >>$NAME - -# libgnuradio-audio-alsa-dev -NAME=debian/libgnuradio-audio-alsa-dev.install -rm -f $NAME -touch $NAME -$EXTRACT gr-audio-alsa/src/Makefile grinclude_HEADERS >>$NAME -echo usr/lib/libgnuradio-audio-alsa.so >>$NAME -echo usr/lib/pkgconfig/gr-audio-alsa.pc >>$NAME - # python-gnuradio-audio-alsa NAME=debian/python-gnuradio-audio-alsa.install rm -f $NAME diff --git a/debian/libmblock-dev.install b/debian/libmblock-dev.install new file mode 100644 index 00000000..6f81d8eb --- /dev/null +++ b/debian/libmblock-dev.install @@ -0,0 +1,3 @@ +usr/include/mblock/* +usr/lib/libmblock.so +usr/lib/pkgconfig/mblock.pc diff --git a/debian/libusrp2.dirs b/debian/libusrp2.dirs new file mode 100644 index 00000000..6c09e0d5 --- /dev/null +++ b/debian/libusrp2.dirs @@ -0,0 +1,2 @@ +etc/security/limits.d + diff --git a/debian/libusrp2.install b/debian/libusrp2.install new file mode 100644 index 00000000..dfe91f8b --- /dev/null +++ b/debian/libusrp2.install @@ -0,0 +1,5 @@ +usr/lib/libusrp2.la +usr/lib/libusrp2.so.* +usr/bin/usrp2_socket_opener +usr/bin/find_usrps +etc/security/limits.d/libusrp2.limits diff --git a/debian/libusrp2.limits b/debian/libusrp2.limits new file mode 100644 index 00000000..f259b299 --- /dev/null +++ b/debian/libusrp2.limits @@ -0,0 +1 @@ +@usrp - rtprio 50 diff --git a/debian/libusrp2.postinst b/debian/libusrp2.postinst new file mode 100644 index 00000000..dc1a6440 --- /dev/null +++ b/debian/libusrp2.postinst @@ -0,0 +1,18 @@ +#! /bin/sh + +set -e + +if [ "$1" != "configure" ]; then + exit 0 +fi + +# Create usrp group for access +if ! getent group usrp >/dev/null; then + addgroup --system usrp +fi + +# Create setuid root for group usrp on socket opener +chown root.usrp /usr/bin/usrp2_socket_opener +chmod 04750 /usr/bin/usrp2_socket_opener + +exit 0 diff --git a/debian/libusrp2.postrm b/debian/libusrp2.postrm new file mode 100644 index 00000000..aebdd3e9 --- /dev/null +++ b/debian/libusrp2.postrm @@ -0,0 +1,11 @@ +#! /bin/sh + +set -e + +if [ "$1" != "remove" ]; then + exit 0 +fi + +rm -f /etc/security/limits.d/libusrp2.limits + +exit 0 diff --git a/debian/rules b/debian/rules index 2bbec0fa..db6bd935 100755 --- a/debian/rules +++ b/debian/rules @@ -48,7 +48,7 @@ configure-stamp: --enable-doxygen --enable-html-docs \ --sysconfdir=/etc --enable-all-components \ --disable-gr-audio-osx --disable-gr-audio-windows \ - --disable-gr-qtgui --disable-gcell --disable-gr-gcell \ + --disable-gcell --disable-gr-gcell \ --disable-gr-comedi --disable-usrp2-firmware touch configure-stamp @@ -61,7 +61,7 @@ extract-stamp: configure-stamp debian/gen-install-files.sh build: build-stamp build-stamp: extract-stamp - $(MAKE) + $(MAKE) -j $(MAKE) check touch $@ @@ -85,6 +85,10 @@ install-stamp: build-stamp install -m 0644 -D debian/libusrp.udev \ debian/tmp/etc/udev/rules.d/40-usrp.rules + : # Deposit rule to allow group 'usrp' access to USRP2 hardware + install -m 0644 -D debian/libusrp2.limits \ + debian/tmp/etc/security/limits.d/libusrp2.limits + dh_install --sourcedir=debian/tmp touch $@ @@ -107,7 +111,7 @@ binary-common: dh_shlibdeps dh_gencontrol dh_md5sums - dh_builddeb + dh_builddeb --destdir=../debfiles # Build architecture independant packages using the common target. binary-indep: build install diff --git a/gr-qtgui/src/lib/Makefile.am b/gr-qtgui/src/lib/Makefile.am index 3c05d28f..6543a71c 100644 --- a/gr-qtgui/src/lib/Makefile.am +++ b/gr-qtgui/src/lib/Makefile.am @@ -40,10 +40,10 @@ endif EXTRA_DIST = spectrumdisplayform.ui # Build the normal library for C++ apps to link against -lib_LTLIBRARIES = libqtgui.la +lib_LTLIBRARIES = libgnuradio-qtgui.la # These are the source files that go into the shared library -libqtgui_la_SOURCES = \ +libgnuradio_qtgui_la_SOURCES = \ FrequencyDisplayPlot.cc \ TimeDomainDisplayPlot.cc \ WaterfallDisplayPlot.cc \ @@ -90,9 +90,9 @@ else endif # magic flags -libqtgui_la_LDFLAGS = $(NO_UNDEFINED) -version-info 0:0:0 +libgnuradio_qtgui_la_LDFLAGS = $(NO_UNDEFINED) -version-info 0:0:0 -libqtgui_la_LIBADD = \ +libgnuradio_qtgui_la_LIBADD = \ $(GNURADIO_CORE_LA) \ -lstdc++ \ $(QT_LIBS) @@ -112,7 +112,7 @@ qtgui_pythondir_category = \ # additional libraries for linking with the SWIG-generated library qtgui_la_swig_libadd = \ - libqtgui.la + libgnuradio-qtgui.la include $(top_srcdir)/Makefile.swig diff --git a/gr-usrp2/Makefile.am b/gr-usrp2/Makefile.am index a9a7a3a8..2a0fbe20 100644 --- a/gr-usrp2/Makefile.am +++ b/gr-usrp2/Makefile.am @@ -1,5 +1,5 @@ # -# Copyright 2001,2006,2008 Free Software Foundation, Inc. +# Copyright 2001,2006,2008,2009 Free Software Foundation, Inc. # # This file is part of GNU Radio # @@ -22,3 +22,6 @@ include $(top_srcdir)/Makefile.common SUBDIRS = src + +pkgconfigdir = $(libdir)/pkgconfig +pkgconfig_DATA = gnuradio-usrp2.pc diff --git a/gr-usrp2/gnuradio-usrp2.pc.in b/gr-usrp2/gnuradio-usrp2.pc.in new file mode 100644 index 00000000..403e5f1c --- /dev/null +++ b/gr-usrp2/gnuradio-usrp2.pc.in @@ -0,0 +1,11 @@ +prefix=@prefix@ +exec_prefix=@exec_prefix@ +libdir=@libdir@ +includedir=@includedir@/gnuradio + +Name: gnuradio-usrp2 +Description: GNU Software Radio support for Universal Software Radio Peripheral 2 +Requires: gnuradio-core usrp2 +Version: @VERSION@ +Libs: -L${libdir} -lgnuradio-usrp2 +Cflags: -I${includedir} diff --git a/gr-usrp2/src/Makefile.am b/gr-usrp2/src/Makefile.am index bd9034f1..77da2bd4 100644 --- a/gr-usrp2/src/Makefile.am +++ b/gr-usrp2/src/Makefile.am @@ -49,9 +49,9 @@ AM_CPPFLAGS = \ $(USRP2_INCLUDES) \ $(WITH_INCLUDES) -lib_LTLIBRARIES = libgr-usrp2.la +lib_LTLIBRARIES = libgnuradio-usrp2.la -libgr_usrp2_la_SOURCES = \ +libgnuradio_usrp2_la_SOURCES = \ rx_16sc_handler.cc \ rx_32fc_handler.cc \ usrp2_base.cc \ @@ -62,7 +62,7 @@ libgr_usrp2_la_SOURCES = \ usrp2_sink_16sc.cc \ usrp2_sink_32fc.cc -libgr_usrp2_la_LIBADD = \ +libgnuradio_usrp2_la_LIBADD = \ $(USRP2_LA) \ $(GNURADIO_CORE_LA) @@ -102,7 +102,7 @@ usrp2_swig_args = \ # additional libraries for linking with the SWIG-generated library usrp2_la_swig_libadd = \ - libgr-usrp2.la + libgnuradio-usrp2.la include $(top_srcdir)/Makefile.swig diff --git a/usrp/host/lib/legacy/Makefile.am b/usrp/host/lib/legacy/Makefile.am index a9053dcb..e2fabc22 100644 --- a/usrp/host/lib/legacy/Makefile.am +++ b/usrp/host/lib/legacy/Makefile.am @@ -143,6 +143,15 @@ endif include_HEADERS = \ db_base.h \ + db_basic.h \ + db_dbs_rx.h \ + db_dtt754.h \ + db_dtt768.h \ + db_flexrf.h \ + db_flexrf_mimo.h \ + db_tv_rx.h \ + db_util.h \ + db_xcvr2450.h \ usrp_basic.h \ usrp_bytesex.h \ usrp_config.h \ @@ -156,17 +165,8 @@ include_HEADERS = \ noinst_HEADERS = \ ad9862.h \ db_base_impl.h \ - db_basic.h \ db_boards.h \ - db_dbs_rx.h \ - db_dtt754.h \ - db_dtt768.h \ - db_flexrf.h \ - db_flexrf_mimo.h \ - db_tv_rx.h \ - db_util.h \ db_wbx.h \ - db_xcvr2450.h \ fusb.h \ fusb_darwin.h \ fusb_generic.h \ -- 2.30.2