gr_docdir = $(docdir)-$(VERSION)
# System configuration files
-gr_sysconfdir = $(sysconfdir)/$(PACKAGE)/conf.d
+gr_prefsdir = $(GR_PREFSDIR)
# Other common defines; use "+=" to add to these
STAMPS =
gnuradio-core/src/lib/filter/Makefile \
gnuradio-core/src/lib/g72x/Makefile \
gnuradio-core/src/lib/general/Makefile \
- gnuradio-core/src/lib/general/gr_prefix.cc \
+ gnuradio-core/src/lib/general/gr_constants.cc \
gnuradio-core/src/lib/gengen/Makefile \
gnuradio-core/src/lib/io/Makefile \
gnuradio-core/src/lib/missing/Makefile \
AC_CANONICAL_HOST
AC_CANONICAL_TARGET
-AM_INIT_AUTOMAKE(gnuradio,3.3svn)
+
+VERSION=3.3svn
+AC_SUBST(VERSION)
+AM_INIT_AUTOMAKE(gnuradio,$VERSION)
DEFINES=""
AC_SUBST(DEFINES)
dnl If this is being done from a subversion tree, create variables
GR_SUBVERSION
-BUILD_DATE=`date -R`
+BUILD_DATE=`date -R -u`
AC_SUBST(BUILD_DATE)
+dnl SYSCONFDIR substitution
+if test "${sysconfdir}" == "\${prefix}/etc" ; then
+ if test "${prefix}" == "NONE" ; then
+ SYSCONFDIR=["$ac_default_prefix/etc"]
+ else
+ SYSCONFDIR=["${prefix}/etc"]
+ fi
+else
+ SYSCONFDIR=[${sysconfdir}]
+fi
+AC_SUBST(SYSCONFDIR)
+
+dnl System configuration files
+GR_PREFSDIR=[$SYSCONFDIR/${PACKAGE}/conf.d]
+AC_SUBST(GR_PREFSDIR)
+
dnl Component specific configuration
dnl The order of the GR_ macros determines the order of compilation
dnl For -any- checks on $enable_all_components
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = gnuradio-core.pc
-etcdir = $(gr_sysconfdir)
+etcdir = $(gr_prefsdir)
dist_etc_DATA = gnuradio-core.conf
SUBDIRS += swig
endif
+AM_CPPFLAGS = $(STD_DEFINES_AND_INCLUDES) $(CPPUNIT_INCLUDES) $(WITH_INCLUDES)
+
# generate libgnuradio-core.la from the convenience libraries in subdirs
lib_LTLIBRARIES = libgnuradio-core.la libgnuradio-core-qa.la
runtime/libruntime-qa.la \
libgnuradio-core.la \
$(CPPUNIT_LIBS)
+
+bin_PROGRAMS = gnuradio
+gnuradio_SOURCES = gnuradio.cc
+gnuradio_LDADD = libgnuradio-core.la $(BOOST_PROGRAM_OPTIONS_LIB)
EXTRA_DIST = \
gen_sine_table.py \
- gr_prefix.cc.in
+ gr_constants.cc.in
libgeneral_la_SOURCES = \
gr_agc_cc.cc \
gr_pll_freqdet_cf.cc \
gr_pll_refout_cc.cc \
gr_pn_correlator_cc.cc \
- gr_prefix.cc \
+ gr_constants.cc \
gr_prefs.cc \
gr_probe_avg_mag_sqrd_c.cc \
gr_probe_avg_mag_sqrd_cf.cc \
gr_pll_freqdet_cf.h \
gr_pll_refout_cc.h \
gr_pn_correlator_cc.h \
- gr_prefix.h \
+ gr_constants.h \
gr_prefs.h \
gr_probe_avg_mag_sqrd_c.h \
gr_probe_avg_mag_sqrd_cf.h \
gr_pll_freqdet_cf.i \
gr_pll_refout_cc.i \
gr_pn_correlator_cc.i \
- gr_prefix.i \
+ gr_constants.i \
gr_prefs.i \
gr_probe_avg_mag_sqrd_c.i \
gr_probe_avg_mag_sqrd_cf.i \
#include <gr_pa_2x2_phase_combiner.h>
#include <gr_kludge_copy.h>
#include <gr_prefs.h>
-#include <gr_prefix.h>
+#include <gr_constants.h>
#include <gr_test_types.h>
#include <gr_test.h>
#include <gr_unpack_k_bits_bb.h>
%include "gr_pa_2x2_phase_combiner.i"
%include "gr_kludge_copy.i"
%include "gr_prefs.i"
-%include "gr_prefix.i"
+%include "gr_constants.i"
%include "gr_test_types.h"
%include "gr_test.i"
%include "gr_unpack_k_bits_bb.i"
--- /dev/null
+/* -*- c++ -*- */
+/*
+ * Copyright 2006,2009 Free Software Foundation, Inc.
+ *
+ * This file is part of GNU Radio
+ *
+ * GNU Radio is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 3, or (at your option)
+ * any later version.
+ *
+ * GNU Radio is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with GNU Radio; see the file COPYING. If not, write to
+ * the Free Software Foundation, Inc., 51 Franklin Street,
+ * Boston, MA 02110-1301, USA.
+ */
+
+#if HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <gr_constants.h>
+
+const std::string
+gr_prefix()
+{
+ return "@prefix@";
+}
+
+const std::string
+gr_sysconfdir()
+{
+ return "@SYSCONFDIR@";
+}
+
+const std::string
+gr_prefsdir()
+{
+ return "@GR_PREFSDIR@";
+}
+
+const std::string
+gr_build_date()
+{
+ return "@BUILD_DATE@";
+}
+
+const std::string
+gr_svn_date()
+{
+ return "@SVNDATE@";
+}
+
+const std::string
+gr_svn_version()
+{
+ return "@SVNVERSION@";
+}
+
+const std::string
+gr_version()
+{
+ return "@VERSION@";
+}
--- /dev/null
+/* -*- c++ -*- */
+/*
+ * Copyright 2006,2009 Free Software Foundation, Inc.
+ *
+ * This file is part of GNU Radio
+ *
+ * GNU Radio is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 3, or (at your option)
+ * any later version.
+ *
+ * GNU Radio is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with GNU Radio; see the file COPYING. If not, write to
+ * the Free Software Foundation, Inc., 51 Franklin Street,
+ * Boston, MA 02110-1301, USA.
+ */
+#ifndef INCLUDED_GR_CONSTANTS_H
+#define INCLUDED_GR_CONSTANTS_H
+
+#include <string>
+
+/*!
+ * \brief return ./configure --prefix argument. Typically /usr/local
+ */
+const std::string gr_prefix();
+
+/*!
+ * \brief return ./configure --sysconfdir argument. Typically $prefix/etc or /etc
+ */
+const std::string gr_sysconfdir();
+
+/*!
+ * \brief return preferences file directory. Typically $sysconfdir/etc/conf.d
+ */
+const std::string gr_prefsdir();
+
+/*!
+ * \brief return date/time of build, as set when 'bootstrap' is run
+ */
+const std::string gr_build_date();
+
+/*!
+ * \brief return repository date as set when 'bootstrap' is run
+ */
+const std::string gr_svn_date();
+
+/*!
+ * \brief return repository version as set when 'bootstrap' is run
+ */
+const std::string gr_svn_version();
+
+/*!
+ * \brief return version string defined in configure.ac
+ */
+const std::string gr_version();
+
+#endif /* INCLUDED_GR_CONSTANTS_H */
--- /dev/null
+/* -*- c++ -*- */
+
+%rename(prefix) gr_prefix;
+%rename(sysconfdir) gr_sysconfdir;
+%rename(prefsdir) gr_prefsdir;
+%rename(build_date) gr_build_date;
+%rename(svn_date) gr_svn_date;
+%rename(svn_version) gr_svn_version;
+%rename(version) gr_version;
+
+const std::string gr_prefix();
+const std::string gr_sysconfdir();
+const std::string gr_prefsdir();
+const std::string gr_build_date();
+const std::string gr_svn_date();
+const std::string gr_svn_version();
+const std::string gr_version();
+++ /dev/null
-/* -*- c++ -*- */
-/*
- * Copyright 2006 Free Software Foundation, Inc.
- *
- * This file is part of GNU Radio
- *
- * GNU Radio is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 3, or (at your option)
- * any later version.
- *
- * GNU Radio is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with GNU Radio; see the file COPYING. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street,
- * Boston, MA 02110-1301, USA.
- */
-
-#include <gr_prefix.h>
-
-const std::string
-gr_prefix()
-{
- return "@prefix@";
-}
+++ /dev/null
-/* -*- c++ -*- */
-/*
- * Copyright 2006 Free Software Foundation, Inc.
- *
- * This file is part of GNU Radio
- *
- * GNU Radio is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 3, or (at your option)
- * any later version.
- *
- * GNU Radio is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with GNU Radio; see the file COPYING. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street,
- * Boston, MA 02110-1301, USA.
- */
-#ifndef INCLUDED_GR_PREFIX_H
-#define INCLUDED_GR_PREFIX_H
-
-#include <string>
-
-/*!
- * \brief return ./configure --prefix argument. Typically /usr/local
- */
-const std::string gr_prefix();
-
-
-#endif /* INCLUDED_GR_PREFIX_H */
+++ /dev/null
-/* -*- c++ -*- */
-
-%rename(prefix) gr_prefix;
-
-const std::string gr_prefix();
--- /dev/null
+/* -*- c++ -*- */
+/*
+ * Copyright 2009 Free Software Foundation, Inc.
+ *
+ * This file is part of GNU Radio
+ *
+ * GNU Radio is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 3, or (at your option)
+ * any later version.
+ *
+ * GNU Radio is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with GNU Radio; see the file COPYING. If not, write to
+ * the Free Software Foundation, Inc., 51 Franklin Street,
+ * Boston, MA 02110-1301, USA.
+ */
+
+#if HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <gr_constants.h>
+#include <boost/program_options.hpp>
+#include <iostream>
+
+namespace po = boost::program_options;
+
+int
+main(int argc, char **argv)
+{
+ po::options_description desc("Program options: gnuradio [options]");
+ po::variables_map vm;
+
+ desc.add_options()
+ ("help,h", "print help message")
+ ("prefix", "print gnuradio installation prefix")
+ ("sysconfdir", "print gnuradio system configuration directory")
+ ("prefsdir", "print gnuradio preferences directory")
+ ("builddate", "print gnuradio build date (RFC2822 format)")
+ ("version,v", "print gnuradio version")
+ ("svnversion", "print SVN repository version (SVN format)")
+ ("svndate", "print SVN repository date")
+ ;
+
+ po::store(po::parse_command_line(argc, argv, desc), vm);
+ po::notify(vm);
+
+ if (vm.size() == 0 || vm.count("help")) {
+ std::cout << desc << std::endl;
+ return 1;
+ }
+
+ if (vm.count("prefix"))
+ std::cout << gr_prefix() << std::endl;
+
+ if (vm.count("sysconfdir"))
+ std::cout << gr_sysconfdir() << std::endl;
+
+ if (vm.count("prefsdir"))
+ std::cout << gr_prefsdir() << std::endl;
+
+ if (vm.count("builddate"))
+ std::cout << gr_build_date() << std::endl;
+
+ if (vm.count("version"))
+ std::cout << gr_version() << std::endl;
+
+ if (vm.count("svnversion"))
+ std::cout << gr_svn_version() << std::endl;
+
+ if (vm.count("svndate"))
+ std::cout << gr_svn_date() << std::endl;
+
+ return 0;
+}
return os.path.expanduser('~/.gnuradio/config.conf')
def _sys_prefs_dirname():
- return os.path.join(gsp.prefix(), 'etc/gnuradio/conf.d')
+ return gsp.prefsdir()
def _bool(x):
"""
pkgconfigdir = $(libdir)/pkgconfig
dist_pkgconfig_DATA = gnuradio-audio-alsa.pc
-etcdir = $(gr_sysconfdir)
+etcdir = $(gr_prefsdir)
dist_etc_DATA = gr-audio-alsa.conf
pkgconfigdir = $(libdir)/pkgconfig
dist_pkgconfig_DATA = gnuradio-audio-jack.pc
-etcdir = $(gr_sysconfdir)
+etcdir = $(gr_prefsdir)
dist_etc_DATA = gr-audio-jack.conf
pkgconfigdir = $(libdir)/pkgconfig
dist_pkgconfig_DATA = gnuradio-audio-oss.pc
-etcdir = $(gr_sysconfdir)
+etcdir = $(gr_prefsdir)
dist_etc_DATA = gr-audio-oss.conf
pkgconfigdir = $(libdir)/pkgconfig
dist_pkgconfig_DATA = gnuradio-audio-portaudio.pc
-etcdir = $(gr_sysconfdir)
+etcdir = $(gr_prefsdir)
dist_etc_DATA = gr-audio-portaudio.conf
if PYTHON
SUBDIRS = src
-etcdir = $(gr_sysconfdir)
+etcdir = $(gr_prefsdir)
dist_etc_DATA = gr-wxgui.conf
pkgconfigdir = $(libdir)/pkgconfig
ourpythondir = $(grc_src_prefix)
ourpython_PYTHON = __init__.py
-etcdir = $(gr_sysconfdir)
+etcdir = $(gr_prefsdir)
dist_etc_DATA = grc.conf
EXTRA_DIST = \