From 8af32097a1ebd90ca344e0e96616fd3be7a00af6 Mon Sep 17 00:00:00 2001 From: jcorgan Date: Sun, 2 Sep 2007 21:20:24 +0000 Subject: [PATCH] Merged r6224:6268 from features/deb into trunk. Implements most of a Debian package generation system. EXPERIMENTAL. git-svn-id: http://gnuradio.org/svn/gnuradio/trunk@6269 221aa14e-8319-0410-a670-987f0aec2ac5 --- config/grc_mblock.m4 | 1 + config/grc_omnithread.m4 | 1 + config/grc_pmt.m4 | 1 + config/grc_usrp.m4 | 1 + debian/build-all.sh | 10 + debian/build-bin.sh | 14 ++ debian/build-src.sh | 11 + debian/changelog | 2 +- debian/control | 273 +++++++++++++++++++++- debian/gen-install-files.sh | 187 +++++++++++++++ debian/gnuradio-doc.install | 2 + debian/libgnuradio-core0-dev.dirs | 2 + debian/libgnuradio-core0c2a.dirs | 2 + debian/libgnuradio-core0c2a.install | 2 + debian/libgnuradio-omnithread0c2a.dirs | 2 + debian/libgnuradio-omnithread0c2a.install | 2 +- debian/libmblock0c2a.dirs | 2 + debian/libmblock0c2a.install | 4 + debian/libpmt0-dev.dirs | 1 + debian/libpmt0-dev.install | 3 + debian/libpmt0c2a.dirs | 4 + debian/libpmt0c2a.install | 4 + debian/libusrp-inband0c2a.dirs | 2 + debian/libusrp-inband0c2a.install | 3 + debian/libusrp0c2a.dirs | 2 + debian/libusrp0c2a.install | 3 + debian/make-build-area.sh | 7 + debian/rules | 75 +++--- debian/usrp-doc.install | 2 + debian/usrp-firmware.dirs | 2 + debian/usrp-firmware.install | 8 + dtools/bin/extract_install_filenames | 4 +- mblock/Makefile.am | 6 + mblock/mblock.pc.in | 11 + omnithread/Makefile.am | 4 + omnithread/gnuradio-omnithread.pc.in | 11 + pmt/Makefile.am | 6 + pmt/pmt.pc.in | 11 + usrp/Makefile.am | 12 +- usrp/usrp-inband.pc.in | 11 + usrp/usrp.pc.in | 2 +- 41 files changed, 658 insertions(+), 55 deletions(-) create mode 100755 debian/build-all.sh create mode 100755 debian/build-bin.sh create mode 100755 debian/build-src.sh create mode 100755 debian/gen-install-files.sh create mode 100644 debian/gnuradio-doc.install create mode 100644 debian/libgnuradio-core0-dev.dirs create mode 100644 debian/libmblock0c2a.dirs create mode 100644 debian/libmblock0c2a.install create mode 100644 debian/libpmt0-dev.dirs create mode 100644 debian/libpmt0-dev.install create mode 100644 debian/libpmt0c2a.dirs create mode 100644 debian/libpmt0c2a.install create mode 100644 debian/libusrp-inband0c2a.dirs create mode 100644 debian/libusrp-inband0c2a.install create mode 100644 debian/libusrp0c2a.dirs create mode 100644 debian/libusrp0c2a.install create mode 100755 debian/make-build-area.sh create mode 100644 debian/usrp-doc.install create mode 100644 debian/usrp-firmware.dirs create mode 100644 debian/usrp-firmware.install create mode 100644 mblock/mblock.pc.in create mode 100644 omnithread/gnuradio-omnithread.pc.in create mode 100644 pmt/pmt.pc.in create mode 100644 usrp/usrp-inband.pc.in diff --git a/config/grc_mblock.m4 b/config/grc_mblock.m4 index c85b428c..a96348fb 100644 --- a/config/grc_mblock.m4 +++ b/config/grc_mblock.m4 @@ -22,6 +22,7 @@ AC_DEFUN([GRC_MBLOCK],[ AC_CONFIG_FILES([\ mblock/Makefile \ + mblock/mblock.pc \ mblock/doc/Makefile \ mblock/src/Makefile \ mblock/src/lib/Makefile \ diff --git a/config/grc_omnithread.m4 b/config/grc_omnithread.m4 index 60f84e8e..f38a312c 100644 --- a/config/grc_omnithread.m4 +++ b/config/grc_omnithread.m4 @@ -22,6 +22,7 @@ AC_DEFUN([GRC_OMNITHREAD],[ AC_CONFIG_FILES([ \ omnithread/Makefile \ + omnithread/gnuradio-omnithread.pc ]) passed=yes diff --git a/config/grc_pmt.m4 b/config/grc_pmt.m4 index 24f3313e..1c1819e5 100644 --- a/config/grc_pmt.m4 +++ b/config/grc_pmt.m4 @@ -22,6 +22,7 @@ AC_DEFUN([GRC_PMT],[ AC_CONFIG_FILES([\ pmt/Makefile \ + pmt/pmt.pc pmt/doc/Makefile \ pmt/src/Makefile \ pmt/src/lib/Makefile \ diff --git a/config/grc_usrp.m4 b/config/grc_usrp.m4 index 037e214a..7462c883 100644 --- a/config/grc_usrp.m4 +++ b/config/grc_usrp.m4 @@ -23,6 +23,7 @@ AC_DEFUN([GRC_USRP],[ AC_CONFIG_FILES([ \ usrp/Makefile \ usrp/usrp.pc \ + usrp/usrp-inband.pc \ usrp/usrp.iss \ usrp/doc/Doxyfile \ usrp/doc/Makefile \ diff --git a/debian/build-all.sh b/debian/build-all.sh new file mode 100755 index 00000000..5e0c2693 --- /dev/null +++ b/debian/build-all.sh @@ -0,0 +1,10 @@ +#!/bin/sh + +cd .. +svn-buildpackage \ + --svn-ignore-new \ + -uc \ + -us \ + -rfakeroot + + diff --git a/debian/build-bin.sh b/debian/build-bin.sh new file mode 100755 index 00000000..a6298da4 --- /dev/null +++ b/debian/build-bin.sh @@ -0,0 +1,14 @@ +#!/bin/sh + +cd .. +svn-buildpackage \ + --svn-ignore-new \ + --svn-dont-clean \ + --svn-dont-purge \ + --svn-reuse \ + -uc \ + -us \ + -nc \ + -rfakeroot + + diff --git a/debian/build-src.sh b/debian/build-src.sh new file mode 100755 index 00000000..adad7c22 --- /dev/null +++ b/debian/build-src.sh @@ -0,0 +1,11 @@ +#!/bin/sh + +cd .. +svn-buildpackage \ + --svn-ignore-new \ + -S \ + -uc \ + -us \ + -rfakeroot + + diff --git a/debian/changelog b/debian/changelog index 58ffa024..65a87e47 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,4 @@ -gnuradio (3.0svn) UNRELEASED; urgency=low +gnuradio (3.0.svn) UNRELEASED; urgency=low * fix build failure with gcc-4.3 by adding a #include, closes: #420896 * update copyright assertion on the debian/ contents, since I have diff --git a/debian/control b/debian/control index f0c81465..3c3568eb 100644 --- a/debian/control +++ b/debian/control @@ -3,7 +3,7 @@ Section: comm Priority: optional Maintainer: Bdale Garbee Build-Conflicts: automake1.8, automake1.9 -Build-Depends: debhelper (>= 5.0.37.2), autotools-dev, doxygen, fftw3-dev, libasound2-dev, libboost-dev, libcppunit-dev, libjack0.100.0-dev, libsdl1.2-dev, portaudio19-dev, libtool, libusb-dev, pkg-config, python, python-all-dev, python-central (>= 0.5), python-numeric, python-numpy, python-wxgtk2.6, sdcc, swig, xmlto +Build-Depends: debhelper (>= 5.0.37.2), autotools-dev, doxygen, fftw3-dev, libasound2-dev, libboost-dev, libcppunit-dev, libjack0.100.0-dev, libsdl1.2-dev, portaudio19-dev, libtool, libusb-dev, pkg-config, python, python-all-dev, python-central (>= 0.5), python-numpy, python-wxgtk2.6, sdcc, swig, xmlto Build-Depends-Indep: python-all-dev Standards-Version: 3.7.2 XS-Python-Version: >= 2.3 @@ -11,12 +11,7 @@ XS-Python-Version: >= 2.3 Package: libgnuradio-omnithread0c2a Section: libs Architecture: any -Depends: ${shlibs:Depends}, ${misc:Depends} -Conflicts: -Replaces: -Recommends: -Suggests: -Description: Software Defined Radio +Description: GNU Radio Omnithreads Abstraction Library This package is a fork of the omniORB-4.0.1 threading library for use with GNU Radio. @@ -24,19 +19,275 @@ Package: libgnuradio-omnithread0-dev Section: libdevel Architecture: any Depends: libgnuradio-omnithread0c2a (= ${Source-Version}) -Description: Software Defined Radio +Description: GNU Radio Omnithreads Abstraction Library This package is a fork of the omniORB-4.0.1 threading library for use with GNU Radio. . This package contains header files needed by developers. +Package: libpmt0c2a +Section: libs +Architecture: any +Depends: libgnuradio-omnithread0c2a +Description: GNU Radio Polymorphic Type Library + This package implements polymorphic types. These are similar + to lisp or python data objects, and implement transparent + reference counting using the boost shared_ptr templates. + +Package: libpmt0-dev +Section: libdevel +Architecture: any +Depends: libpmt0c2a (= ${Source-Version}), libgnuradio-omnithread0-dev, libboost-dev +Description: GNU Radio Polymorphic Type Library + This package implements polymorphic types. These are similar + to lisp or python data objects, and implement transparent + reference counting using the boost shared_ptr templates. + . + This package contains header files needed by developers. + +Package: libmblock0c2a +Section: libs +Architecture: any +Depends: libgnuradio-omnithread0c2a, libpmt0c2a +Description: GNU Radio Message Block Library + This package provides the GNU Radio message block library. + +Package: libmblock0-dev +Section: libdevel +Architecture: any +Depends: libmblock0c2a (= ${Source-Version}), libgnuradio-omnithread0-dev, libpmt0-dev +Description: GNU Radio Message Block Library + This package provides the GNU Radio message block library. + . + This package contains header files needed by developers. + Package: libgnuradio-core0c2a Section: libs Architecture: any -Depends: ${shlibs:Depends}, ${misc:Depends}, libgnuradio-omnithread0c2a +Depends: libgnuradio-omnithread0c2a, fftw3 Conflicts: libgnuradio-core0, libgnuradio-core0c2 Replaces: libgnuradio-core0, libgnuradio-core0c2 -Recommends: -Suggests: +Suggests: gnuradio-doc +Description: GNU Radio Core Library + This package contains the core GNU Radio libraries. + +Package: libgnuradio-core0-dev +Section: libdevel +Architecture: any +Depends: libgnuradio-core0c2a (= ${Source-Version}), libgnuradio-omnithread0-dev, libboost-dev, fftw3-dev Description: Software Defined Radio This package contains the core GNU Radio libraries. + . + 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}, libgnuradio-core0c2a, python-numpy +Conflicts: python-gnuradio +Replaces: python-gnuradio +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-audio-alsa +Architecture: any +Depends: ${python:Depends}, python-gnuradio-core, libasound2 +Section: python +XB-Python-Version: ${python:Versions} +Description: Python bindings for GNU Radio ALSA audio driver + This package provides the Python interface to the GNU Radio ALSA + audio driver. + +Package: libusrp0c2a +Section: libs +Architecture: any +Depends: libusb-0.1-4 +Conflicts: libusrp0 +Replaces: libusrp0 +Suggests: usrp-doc +Description: Client side library for the USRP + The Universal Software Radio Peripheral (USRP) is an USB-connected, + low-cost and open board. It features four 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 library, providing an easy interface + for communicating with the USRP. + +Package: libusrp0-dev +Section: libdevel +Architecture: any +Depends: libusb-dev +Description: Client side library for the USRP + The Universal Software Radio Peripheral (USRP) is an USB-connected, + low-cost and open board. It features four 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 library, providing an easy interface + for communicating with the USRP. + . + This package contains header files needed by developers. + +Package: libusrp-inband0c2a +Section: libs +Architecture: any +Depends: libusrp0c2a, libusb-0.1-4 +Suggests: usrp-doc +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. + +Package: libusrp-inband0-dev +Section: libdevel +Architecture: any +Depends: libmblock0-dev, libusb-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. + . + This package contains header files needed by developers. + +Package: usrp-firmware +Section: contrib/comm +Architecture: all +Description: control applications and firmware for the USRP + The Universal Software Radio Peripheral (USRP) is an USB-connected, + low-cost and open board. It features four 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 basic FPGA bitstrings for normal USRP operation, + which need non-free tools to build. + +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. + +Package: python-usrp +Architecture: any +Depends: ${python:Depends}, libusrp0c2a +Conflicts: python-gnuradio +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. + +Package: python-gnuradio-usrp +Architecture: any +Depends: ${python:Depends}, python-gnuradio-core, python-usrp +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: python-gnuradio-wxgui +Architecture: any +Depends: ${python:Depends}, python-gnuradio-core, python-wxgtk2.6 +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: python-gnuradio-atsc +Architecture: any +Depends: ${python:Depends}, python-gnuradio-core +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-audio-jack +Architecture: any +Depends: ${python:Depends}, python-gnuradio-core, libjack0.100.0-0 +Section: python +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}, python-gnuradio-core +Section: python +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}, python-gnuradio-core, libportaudio2 +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-comedi +Architecture: any +Depends: ${python:Depends}, python-gnuradio-core, libcomedi-0.7.22 +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}, python-gnuradio-core +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}, python-gnuradio-core +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}, python-gnuradio-core +Section: python +XB-Python-Version: ${python:Versions} +Description: GNU Radio Trellis-Coded Modulation library + This package provides an implementation of trellis-code modulation + for GNU Radio. + +Package: python-gnuradio-video-sdl +Architecture: any +Depends: ${python:Depends}, python-gnuradio-core, libsdl1.2debian +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. diff --git a/debian/gen-install-files.sh b/debian/gen-install-files.sh new file mode 100755 index 00000000..1eaabd21 --- /dev/null +++ b/debian/gen-install-files.sh @@ -0,0 +1,187 @@ +#!/bin/sh + +EXTRACT=dtools/bin/extract_install_filenames + +# libgnuradio-core0-dev +NAME=debian/libgnuradio-core0-dev.install +rm -f $NAME +touch $NAME +$EXTRACT gnuradio-core/src/lib/filter/Makefile grinclude_HEADERS >>$NAME +$EXTRACT gnuradio-core/src/lib/filter/Makefile swiginclude_HEADERS >>$NAME +$EXTRACT gnuradio-core/src/lib/general/Makefile grinclude_HEADERS >>$NAME +$EXTRACT gnuradio-core/src/lib/general/Makefile swiginclude_HEADERS >>$NAME +$EXTRACT gnuradio-core/src/lib/gengen/Makefile grinclude_HEADERS >>$NAME +$EXTRACT gnuradio-core/src/lib/gengen/Makefile swiginclude_HEADERS >>$NAME +$EXTRACT gnuradio-core/src/lib/io/Makefile grinclude_HEADERS >>$NAME +$EXTRACT gnuradio-core/src/lib/io/Makefile swiginclude_HEADERS >>$NAME +$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/swig/Makefile grinclude_HEADERS >>$NAME +$EXTRACT gnuradio-core/src/lib/swig/Makefile swiginclude_HEADERS >>$NAME + +# libmblock0-dev +NAME=debian/libmblock0-dev.install +rm -f $NAME +touch $NAME +$EXTRACT mblock/src/lib/Makefile include_HEADERS >>$NAME +$EXTRACT mblock/src/lib/Makefile swiginclude_HEADERS >>$NAME + +# python-gnuradio-core +NAME=debian/python-gnuradio-core.install +rm -f $NAME +touch $NAME +$EXTRACT gnuradio-core/src/python/gnuradio/Makefile grpython_PYTHON >>$NAME +$EXTRACT gnuradio-core/src/lib/swig/Makefile grgrlib_LTLIBRARIES >>$NAME +$EXTRACT gnuradio-core/src/lib/swig/Makefile grgrlib_LTLIBRARIES | \ + sed -e 's/\.la$/.so/' >>$NAME +$EXTRACT gnuradio-core/src/lib/swig/Makefile grgrpython_PYTHON >>$NAME +$EXTRACT gnuradio-core/src/python/gnuradio/gr/Makefile grgrpython_PYTHON >>$NAME +$EXTRACT gnuradio-core/src/python/gnuradio/blks/Makefile grblkspython_PYTHON >>$NAME +$EXTRACT gnuradio-core/src/python/gnuradio/blks2/Makefile grblks2python_PYTHON >>$NAME +$EXTRACT gnuradio-core/src/python/gnuradio/blksimpl/Makefile grblkspython_PYTHON >>$NAME +$EXTRACT gnuradio-core/src/python/gnuradio/blksimpl2/Makefile grblkspython_PYTHON >>$NAME +$EXTRACT gnuradio-core/src/python/gnuradio/gru/Makefile grblkspython_PYTHON >>$NAME +$EXTRACT gnuradio-core/src/python/gnuradio/gruimpl/Makefile grupython_PYTHON >>$NAME + +# libusrp0-dev +NAME=debian/libusrp0-dev.install +rm -f $NAME +touch $NAME +$EXTRACT usrp/host/lib/legacy/Makefile include_HEADERS >>$NAME +$EXTRACT usrp/firmware/include/Makefile include_HEADERS >>$NAME + +# libusrp-inband0-dev +NAME=debian/libusrp-inband0-dev.install +rm -f $NAME +touch $NAME +$EXTRACT usrp/host/lib/inband/Makefile include_HEADERS >>$NAME + +# python-usrp +NAME=debian/python-usrp.install +rm -f $NAME +touch $NAME +$EXTRACT usrp/host/swig/Makefile ourlib_LTLIBRARIES >>$NAME +$EXTRACT usrp/host/swig/Makefile ourlib_LTLIBRARIES | \ + sed -e 's/\.la$/.so/' >>$NAME +$EXTRACT usrp/host/lib/legacy/Makefile usrppython_PYTHON >>$NAME +$EXTRACT usrp/host/swig/Makefile ourpython_PYTHON >>$NAME + +# python-gnuradio-usrp +NAME=debian/python-gnuradio-usrp.install +rm -f $NAME +touch $NAME +$EXTRACT gr-usrp/src/Makefile ourpython_PYTHON >>$NAME +$EXTRACT gr-usrp/src/Makefile ourlib_LTLIBRARIES >>$NAME +$EXTRACT gr-usrp/src/Makefile ourlib_LTLIBRARIES | \ + sed -e 's/\.la$/.so/' >>$NAME + +# python-gnuradio-wxgui +NAME=debian/python-gnuradio-wxgui.install +rm -f $NAME +touch $NAME +echo etc/gnuradio/conf.d/gr-wxgui.conf >>$NAME +$EXTRACT gr-wxgui/src/python/Makefile ourpython_PYTHON >>$NAME + +# python-gnuradio-atsc +NAME=debian/python-gnuradio-atsc.install +rm -f $NAME +touch $NAME +$EXTRACT gr-atsc/src/Makefile ourpython_PYTHON >>$NAME +$EXTRACT gr-atsc/src/lib/Makefile ourpython_PYTHON >>$NAME +$EXTRACT gr-atsc/src/lib/Makefile ourlib_LTLIBRARIES >>$NAME +$EXTRACT gr-atsc/src/lib/Makefile ourlib_LTLIBRARIES | \ + sed -e 's/\.la$/.so/' >>$NAME + +# python-gnuradio-audio-alsa +NAME=debian/python-gnuradio-audio-alsa.install +rm -f $NAME +touch $NAME +echo etc/gnuradio/conf.d/gr-audio-alsa.conf >>$NAME +$EXTRACT gr-audio-alsa/src/Makefile ourpython_PYTHON >>$NAME +# Note: these will migrate to libgnuradio-audio-alsa in 3.2 +# They are only separate in this package for C++ only experimentation +$EXTRACT gr-audio-alsa/src/Makefile lib_LTLIBRARIES >>$NAME +$EXTRACT gr-audio-alsa/src/Makefile lib_LTLIBRARIES | \ + sed -e 's/\.la$/.so/' >>$NAME +# +$EXTRACT gr-audio-alsa/src/Makefile ourlib_LTLIBRARIES >>$NAME +$EXTRACT gr-audio-alsa/src/Makefile ourlib_LTLIBRARIES | \ + sed -e 's/\.la$/.so/' >>$NAME + +# python-gnuradio-audio-jack +NAME=debian/python-gnuradio-audio-jack.install +rm -f $NAME +touch $NAME +echo etc/gnuradio/conf.d/gr-audio-jack.conf >>$NAME +$EXTRACT gr-audio-jack/src/Makefile ourpython_PYTHON >>$NAME +$EXTRACT gr-audio-jack/src/Makefile ourlib_LTLIBRARIES >>$NAME +$EXTRACT gr-audio-jack/src/Makefile ourlib_LTLIBRARIES | \ + sed -e 's/\.la$/.so/' >>$NAME + +# python-gnuradio-audio-oss +NAME=debian/python-gnuradio-audio-oss.install +rm -f $NAME +touch $NAME +echo etc/gnuradio/conf.d/gr-audio-oss.conf >>$NAME +$EXTRACT gr-audio-oss/src/Makefile ourpython_PYTHON >>$NAME +$EXTRACT gr-audio-oss/src/Makefile ourlib_LTLIBRARIES >>$NAME +$EXTRACT gr-audio-oss/src/Makefile ourlib_LTLIBRARIES | \ + sed -e 's/\.la$/.so/' >>$NAME + +# python-gnuradio-audio-portaudio +NAME=debian/python-gnuradio-audio-portaudio.install +rm -f $NAME +touch $NAME +echo etc/gnuradio/conf.d/gr-audio-portaudio.conf >>$NAME +$EXTRACT gr-audio-portaudio/src/Makefile ourpython_PYTHON >>$NAME +$EXTRACT gr-audio-portaudio/src/Makefile ourlib_LTLIBRARIES >>$NAME +$EXTRACT gr-audio-portaudio/src/Makefile ourlib_LTLIBRARIES | \ + sed -e 's/\.la$/.so/' >>$NAME + +# python-gnuradio-comedi +NAME=debian/python-gnuradio-comedi.install +rm -f $NAME +touch $NAME +$EXTRACT gr-comedi/src/Makefile ourpython_PYTHON >>$NAME +$EXTRACT gr-comedi/src/Makefile ourlib_LTLIBRARIES >>$NAME +$EXTRACT gr-comedi/src/Makefile ourlib_LTLIBRARIES | \ + sed -e 's/\.la$/.so/' >>$NAME + +# python-gnuradio-cvsd-vocoder +NAME=debian/python-gnuradio-cvsd-vocoder.install +rm -f $NAME +touch $NAME +$EXTRACT gr-cvsd-vocoder/src/python/Makefile grblkspython_PYTHON >>$NAME +$EXTRACT gr-cvsd-vocoder/src/lib/Makefile ourpython_PYTHON >>$NAME +$EXTRACT gr-cvsd-vocoder/src/lib/Makefile ourlib_LTLIBRARIES >>$NAME +$EXTRACT gr-cvsd-vocoder/src/lib/Makefile ourlib_LTLIBRARIES | \ + sed -e 's/\.la$/.so/' >>$NAME + +# python-gnuradio-gsm-fr-vocoder +NAME=debian/python-gnuradio-gsm-fr-vocoder.install +rm -f $NAME +touch $NAME +$EXTRACT gr-gsm-fr-vocoder/src/lib/Makefile ourpython_PYTHON >>$NAME +$EXTRACT gr-gsm-fr-vocoder/src/lib/Makefile ourlib_LTLIBRARIES >>$NAME +$EXTRACT gr-gsm-fr-vocoder/src/lib/Makefile ourlib_LTLIBRARIES | \ + sed -e 's/\.la$/.so/' >>$NAME + +# python-gnuradio-trellis +NAME=debian/python-gnuradio-trellis.install +rm -f $NAME +touch $NAME +$EXTRACT gr-trellis/src/lib/Makefile ourpython_PYTHON >>$NAME +$EXTRACT gr-trellis/src/lib/Makefile ourlib_LTLIBRARIES >>$NAME +$EXTRACT gr-trellis/src/lib/Makefile ourlib_LTLIBRARIES | \ + sed -e 's/\.la$/.so/' >>$NAME + +# python-gnuradio-video-sdl +NAME=debian/python-gnuradio-video-sdl.install +rm -f $NAME +touch $NAME +$EXTRACT gr-video-sdl/src/Makefile ourpython_PYTHON >>$NAME +$EXTRACT gr-video-sdl/src/Makefile ourlib_LTLIBRARIES >>$NAME +$EXTRACT gr-video-sdl/src/Makefile ourlib_LTLIBRARIES | \ + sed -e 's/\.la$/.so/' >>$NAME diff --git a/debian/gnuradio-doc.install b/debian/gnuradio-doc.install new file mode 100644 index 00000000..08f1e5de --- /dev/null +++ b/debian/gnuradio-doc.install @@ -0,0 +1,2 @@ +usr/share/doc/gnuradio*/html usr/share/doc/gnuradio-doc +usr/share/doc/gnuradio*/README /usr/share/doc/gnuradio-doc diff --git a/debian/libgnuradio-core0-dev.dirs b/debian/libgnuradio-core0-dev.dirs new file mode 100644 index 00000000..636247fc --- /dev/null +++ b/debian/libgnuradio-core0-dev.dirs @@ -0,0 +1,2 @@ +usr/include/gnuradio +usr/include/gnuradio/swig diff --git a/debian/libgnuradio-core0c2a.dirs b/debian/libgnuradio-core0c2a.dirs index 68457717..a0384c84 100644 --- a/debian/libgnuradio-core0c2a.dirs +++ b/debian/libgnuradio-core0c2a.dirs @@ -1 +1,3 @@ +etc/gnuradio/conf.d usr/lib +usr/lib/pkgconfig diff --git a/debian/libgnuradio-core0c2a.install b/debian/libgnuradio-core0c2a.install index fa67d183..a88f9e3f 100644 --- a/debian/libgnuradio-core0c2a.install +++ b/debian/libgnuradio-core0c2a.install @@ -1,2 +1,4 @@ +etc/gnuradio/conf.d/gnuradio-core.conf usr/lib/libgnuradio-core.la usr/lib/libgnuradio-core.so.* +usr/lib/pkgconfig/gnuradio-core.pc diff --git a/debian/libgnuradio-omnithread0c2a.dirs b/debian/libgnuradio-omnithread0c2a.dirs index f5b3beeb..c51e8f7e 100644 --- a/debian/libgnuradio-omnithread0c2a.dirs +++ b/debian/libgnuradio-omnithread0c2a.dirs @@ -1,2 +1,4 @@ usr/lib +usr/lib/pkgconfig + diff --git a/debian/libgnuradio-omnithread0c2a.install b/debian/libgnuradio-omnithread0c2a.install index e574bf64..65ecd351 100644 --- a/debian/libgnuradio-omnithread0c2a.install +++ b/debian/libgnuradio-omnithread0c2a.install @@ -1,3 +1,3 @@ usr/lib/libgromnithread.la usr/lib/libgromnithread.so - +usr/lib/pkgconfig/gnuradio-omnithread.pc diff --git a/debian/libmblock0c2a.dirs b/debian/libmblock0c2a.dirs new file mode 100644 index 00000000..b448f1a6 --- /dev/null +++ b/debian/libmblock0c2a.dirs @@ -0,0 +1,2 @@ +usr/lib +usr/lib/pkgconfig diff --git a/debian/libmblock0c2a.install b/debian/libmblock0c2a.install new file mode 100644 index 00000000..ea29c8f7 --- /dev/null +++ b/debian/libmblock0c2a.install @@ -0,0 +1,4 @@ +usr/lib/pkgconfig/mblock.pc +usr/lib/libmblock.la +usr/lib/libmblock.so + diff --git a/debian/libpmt0-dev.dirs b/debian/libpmt0-dev.dirs new file mode 100644 index 00000000..a1143b56 --- /dev/null +++ b/debian/libpmt0-dev.dirs @@ -0,0 +1 @@ +usr/include/gnuradio diff --git a/debian/libpmt0-dev.install b/debian/libpmt0-dev.install new file mode 100644 index 00000000..2d3f0d7d --- /dev/null +++ b/debian/libpmt0-dev.install @@ -0,0 +1,3 @@ +usr/include/pmt.h +usr/include/pmt_pool.h +usr/include/pmt_serial_tags.h diff --git a/debian/libpmt0c2a.dirs b/debian/libpmt0c2a.dirs new file mode 100644 index 00000000..c926d58b --- /dev/null +++ b/debian/libpmt0c2a.dirs @@ -0,0 +1,4 @@ +usr/lib +usr/lib/pkgconfig +usr/share/gnuradio + diff --git a/debian/libpmt0c2a.install b/debian/libpmt0c2a.install new file mode 100644 index 00000000..d27f75a6 --- /dev/null +++ b/debian/libpmt0c2a.install @@ -0,0 +1,4 @@ +usr/lib/libpmt.la +usr/lib/libpmt.so +usr/lib/pkgconfig/pmt.pc +usr/share/gnuradio/pmt* diff --git a/debian/libusrp-inband0c2a.dirs b/debian/libusrp-inband0c2a.dirs new file mode 100644 index 00000000..b448f1a6 --- /dev/null +++ b/debian/libusrp-inband0c2a.dirs @@ -0,0 +1,2 @@ +usr/lib +usr/lib/pkgconfig diff --git a/debian/libusrp-inband0c2a.install b/debian/libusrp-inband0c2a.install new file mode 100644 index 00000000..4c85f404 --- /dev/null +++ b/debian/libusrp-inband0c2a.install @@ -0,0 +1,3 @@ +usr/lib/pkgconfig/usrp-inband.pc +usr/lib/libusrp_inband.la +usr/lib/libusrp_inband.so.* diff --git a/debian/libusrp0c2a.dirs b/debian/libusrp0c2a.dirs new file mode 100644 index 00000000..b448f1a6 --- /dev/null +++ b/debian/libusrp0c2a.dirs @@ -0,0 +1,2 @@ +usr/lib +usr/lib/pkgconfig diff --git a/debian/libusrp0c2a.install b/debian/libusrp0c2a.install new file mode 100644 index 00000000..4fedca77 --- /dev/null +++ b/debian/libusrp0c2a.install @@ -0,0 +1,3 @@ +usr/lib/pkgconfig/usrp.pc +usr/lib/libusrp.la +usr/lib/libusrp.so.* diff --git a/debian/make-build-area.sh b/debian/make-build-area.sh new file mode 100755 index 00000000..20649a34 --- /dev/null +++ b/debian/make-build-area.sh @@ -0,0 +1,7 @@ +#!/bin/sh + +cd .. +svn-buildpackage \ + --svn-export \ + --svn-ignore-new + diff --git a/debian/rules b/debian/rules index 2fe14ac5..cc8b2bfc 100755 --- a/debian/rules +++ b/debian/rules @@ -24,6 +24,30 @@ else CFLAGS += -O2 endif +clean: + dh_testdir + dh_testroot + rm -f build-stamp configure-stamp + + if [ -f Makefile ]; \ + then\ + if [ -d .svn ]; \ + then \ + $(MAKE) maintainer-clean; \ + else \ + $(MAKE) distclean; \ + fi; \ + fi + + dh_clean + +update: + dh_testdir + -test -r /usr/share/misc/config.sub && \ + cp -f /usr/share/misc/config.sub config.sub + -test -r /usr/share/misc/config.guess && \ + cp -f /usr/share/misc/config.guess config.guess + configure: configure-stamp configure-stamp: dh_testdir @@ -37,47 +61,27 @@ configure-stamp: --disable-gr-qtgui touch configure-stamp +extract: extract-stamp +extract-stamp: configure-stamp + dh_testdir + debian/gen-install-files.sh + touch $@ + build: build-stamp -build-stamp: configure-stamp +build-stamp: extract-stamp $(MAKE) $(MAKE) check touch $@ -update: - -test -r /usr/share/misc/config.sub && \ - cp -f /usr/share/misc/config.sub config.sub - -test -r /usr/share/misc/config.guess && \ - cp -f /usr/share/misc/config.guess config.guess - -clean: - dh_testdir - dh_testroot - rm -f build-stamp configure-stamp - - if [ -f Makefile ]; \ - then\ - if [ -d .svn ]; \ - then \ - $(MAKE) maintainer-clean; \ - else \ - $(MAKE) distclean; \ - fi; \ - fi - - - dh_clean - -install: +install: install-stamp +install-stamp: build-stamp dh_testdir dh_testroot dh_clean -k dh_installdirs $(MAKE) install DESTDIR=$(CURDIR)/debian/tmp -# install -m 0755 debian/usrp.hotplug \ -# $(CURDIR)/debian/usrp/etc/hotplug.d/usb/ - : # make python scripts starting with '#!' executable for i in `find debian -mindepth 2 -type f ! -perm 755`; do \ if head -1 $$i | grep -q '^#!'; then \ @@ -88,6 +92,9 @@ install: dh_install --sourcedir=debian/tmp --list-missing +# install -m 0755 debian/usrp.hotplug \ +# $(CURDIR)/debian/usrp/etc/hotplug.d/usb/ + # cp -r gnuradio-examples/python/* \ # debian/gnuradio-examples/usr/share/gnuradio/ # find debian/gnuradio-examples -type f -name Makefile\* -exec rm {} \; @@ -101,6 +108,8 @@ install: # debian/usrp/usr/bin/usrp_ra_receiver # mv debian/usrp/usr/bin/usrp_psr_receiver.py \ # debian/usrp/usr/bin/usrp_psr_receiver + touch $@ + # Must not depend on anything. This is to be called by # binary-arch/binary-indep @@ -124,15 +133,7 @@ binary-common: # dh_installinfo dh_installman dh_link -ifneq (,$(findstring -s,$(DH_OPTIONS))) - dh_strip --no-package=libgnuradio-core0c2a --no-package=libusrp0c2a - DH_OPTIONS= dh_strip --package=libgnuradio-core0c2a \ - --dbg-package=libgnuradio-core0c2a-dbg - DH_OPTIONS= dh_strip --package=libusrp0c2a \ - --dbg-package=libusrp0c2a-dbg -else dh_strip -endif dh_compress # dh_movefiles --sourcedir=debian/gnuradio dh_fixperms diff --git a/debian/usrp-doc.install b/debian/usrp-doc.install new file mode 100644 index 00000000..b9bdb778 --- /dev/null +++ b/debian/usrp-doc.install @@ -0,0 +1,2 @@ +usr/share/doc/usrp*/html usr/share/doc/usrp-doc +usr/share/doc/usrp*/README /usr/share/doc/usrp-doc diff --git a/debian/usrp-firmware.dirs b/debian/usrp-firmware.dirs new file mode 100644 index 00000000..6195915e --- /dev/null +++ b/debian/usrp-firmware.dirs @@ -0,0 +1,2 @@ +/usr/share/usrp/rev2 +/usr/share/usrp/rev4 diff --git a/debian/usrp-firmware.install b/debian/usrp-firmware.install new file mode 100644 index 00000000..bf9fab82 --- /dev/null +++ b/debian/usrp-firmware.install @@ -0,0 +1,8 @@ +usr/share/usrp/rev2/multi_2rxhb_2tx.rbf +usr/share/usrp/rev2/std.ihx +usr/share/usrp/rev2/std_2rxhb_2tx.rbf +usr/share/usrp/rev2/std_4rx_0tx.rbf +usr/share/usrp/rev4/multi_2rxhb_2tx.rbf +usr/share/usrp/rev4/std.ihx +usr/share/usrp/rev4/std_2rxhb_2tx.rbf +usr/share/usrp/rev4/std_4rx_0tx.rbf diff --git a/dtools/bin/extract_install_filenames b/dtools/bin/extract_install_filenames index c4936053..d1520af0 100755 --- a/dtools/bin/extract_install_filenames +++ b/dtools/bin/extract_install_filenames @@ -70,9 +70,9 @@ def main(): (head, tail) = os.path.split(makefile_name) if head: # cd to directory that contained the original Makefile - cmd = 'cd %s; make -f %s extract_install_filenames' % (head, tmp_name) + cmd = 'cd %s; make -s -f %s extract_install_filenames' % (head, tmp_name) else: - cmd = 'make -f %s extract_install_filenames' % (tmp_name,) + cmd = 'make -s -f %s extract_install_filenames' % (tmp_name,) #print "cmd =", cmd make = os.popen(cmd, 'r') diff --git a/mblock/Makefile.am b/mblock/Makefile.am index 30510202..69e2f22c 100644 --- a/mblock/Makefile.am +++ b/mblock/Makefile.am @@ -21,5 +21,11 @@ include $(top_srcdir)/Makefile.common +EXTRA_DIST = \ + mblock.pc.in + SUBDIRS = src DIST_SUBDIRS = src doc + +pkgconfigdir = $(libdir)/pkgconfig +pkgconfig_DATA = mblock.pc diff --git a/mblock/mblock.pc.in b/mblock/mblock.pc.in new file mode 100644 index 00000000..2e38483b --- /dev/null +++ b/mblock/mblock.pc.in @@ -0,0 +1,11 @@ +prefix=@prefix@ +exec_prefix=@exec_prefix@ +libdir=@libdir@ +includedir=@includedir@ + +Name: mblock +Description: The GNU Radio message block library +Requires: +Version: @VERSION@ +Libs: -L${libdir} -lgromnithread -lpmt +Cflags: -I${includedir} @DEFINES@ @PTHREAD_CFLAGS@ diff --git a/omnithread/Makefile.am b/omnithread/Makefile.am index a9434bd6..526cae0e 100644 --- a/omnithread/Makefile.am +++ b/omnithread/Makefile.am @@ -49,9 +49,13 @@ libgromnithread_la_LDFLAGS = $(NO_UNDEFINED) -avoid-version libgromnithread_la_LIBADD = \ $(PTHREAD_LIBS) +pkgconfigdir = $(libdir)/pkgconfig +pkgconfig_DATA = gnuradio-omnithread.pc + # ... but this code also came with the package EXTRA_DIST = \ + gnuradio-omnithread.pc.in \ mach.cc \ nt.cc \ posix.cc \ diff --git a/omnithread/gnuradio-omnithread.pc.in b/omnithread/gnuradio-omnithread.pc.in new file mode 100644 index 00000000..8ca68ef9 --- /dev/null +++ b/omnithread/gnuradio-omnithread.pc.in @@ -0,0 +1,11 @@ +prefix=@prefix@ +exec_prefix=@exec_prefix@ +libdir=@libdir@ +includedir=@includedir@/gnuradio + +Name: gnuradio-omnithread +Description: The GNU Radio omniORB threading library +Requires: +Version: @VERSION@ +Libs: -L${libdir} +Cflags: -I${includedir} @DEFINES@ @PTHREAD_CFLAGS@ diff --git a/pmt/Makefile.am b/pmt/Makefile.am index 30510202..2c3de669 100644 --- a/pmt/Makefile.am +++ b/pmt/Makefile.am @@ -21,5 +21,11 @@ include $(top_srcdir)/Makefile.common +EXTRA_DIST = \ + pmt.pc.in + SUBDIRS = src DIST_SUBDIRS = src doc + +pkgconfigdir = $(libdir)/pkgconfig +pkgconfig_DATA = pmt.pc diff --git a/pmt/pmt.pc.in b/pmt/pmt.pc.in new file mode 100644 index 00000000..e4a5e640 --- /dev/null +++ b/pmt/pmt.pc.in @@ -0,0 +1,11 @@ +prefix=@prefix@ +exec_prefix=@exec_prefix@ +libdir=@libdir@ +includedir=@includedir@ + +Name: pmt +Description: The GNU Radio Polymorphic Type library +Requires: +Version: @VERSION@ +Libs: -L${libdir} -lgromnithread +Cflags: -I${includedir} @DEFINES@ @PTHREAD_CFLAGS@ diff --git a/usrp/Makefile.am b/usrp/Makefile.am index 697dfc62..6f5abbd5 100644 --- a/usrp/Makefile.am +++ b/usrp/Makefile.am @@ -19,8 +19,16 @@ # Boston, MA 02110-1301, USA. # -EXTRA_DIST = usrp.pc.in usrp.iss.in usrp.inf +EXTRA_DIST = \ + usrp.pc.in \ + usrp-inband.pc.in \ + usrp.iss.in \ + usrp.inf + SUBDIRS = host firmware fpga doc pkgconfigdir = $(libdir)/pkgconfig -pkgconfig_DATA = usrp.pc +pkgconfig_DATA = \ + usrp.pc \ + usrp-inband.pc + diff --git a/usrp/usrp-inband.pc.in b/usrp/usrp-inband.pc.in new file mode 100644 index 00000000..35afde39 --- /dev/null +++ b/usrp/usrp-inband.pc.in @@ -0,0 +1,11 @@ +prefix=@prefix@ +exec_prefix=@exec_prefix@ +libdir=@libdir@ +includedir=@includedir@ + +Name: usrp +Description: USRP C++ Interface with in-band signaling +Requires: +Version: @VERSION@ +Libs: -L${libdir} -lusrp-inband -lusrp -lmblock -lgromnithread -lpmt -lusb +Cflags: -I${includedir} @DEFINES@ diff --git a/usrp/usrp.pc.in b/usrp/usrp.pc.in index 49d27e7d..4f8ec6f2 100644 --- a/usrp/usrp.pc.in +++ b/usrp/usrp.pc.in @@ -4,7 +4,7 @@ libdir=@libdir@ includedir=@includedir@ Name: usrp -Description: Universal Software Radio Peripheral +Description: USRP Client Side C++ interface Requires: Version: @VERSION@ Libs: -L${libdir} -lusrp -lusb -- 2.30.2