summaryrefslogtreecommitdiff
path: root/grc/scripts/grcc
diff options
context:
space:
mode:
authorSebastian Koslowski <koslowski@kit.edu>2016-11-17 21:20:55 +0100
committerSebastian Koslowski <koslowski@kit.edu>2016-11-17 21:21:08 +0100
commit7f25c0120fc7bc6a6eeee87878cf387647d51614 (patch)
treeab510060a2c5625d00e7f19f4c7d699861b98cea /grc/scripts/grcc
parente1acf2d27760d606cc7cba200aa380e885f2ffaf (diff)
parent1d50d70f0b990b909357a803881955623dea94d8 (diff)
Merge remote-tracking branch 'upstream/next' into gtk3
Diffstat (limited to 'grc/scripts/grcc')
-rwxr-xr-xgrc/scripts/grcc64
1 files changed, 64 insertions, 0 deletions
diff --git a/grc/scripts/grcc b/grc/scripts/grcc
new file mode 100755
index 0000000000..c3a53a91a6
--- /dev/null
+++ b/grc/scripts/grcc
@@ -0,0 +1,64 @@
+#!/usr/bin/env python
+# Copyright 2016 Free Software Foundation, Inc.
+# This file is part of GNU Radio
+#
+# GNU Radio Companion 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 2
+# of the License, or (at your option) any later version.
+#
+# GNU Radio Companion 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 this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
+
+import os
+import sys
+
+
+GR_IMPORT_ERROR_MESSAGE = """\
+Cannot import gnuradio.
+
+Is the model path environment variable set correctly?
+ All OS: PYTHONPATH
+
+Is the library path environment variable set correctly?
+ Linux: LD_LIBRARY_PATH
+ Windows: PATH
+ MacOSX: DYLD_LIBRARY_PATH
+"""
+
+
+def die(error, message):
+ msg = "{0}\n\n({1})".format(message, error)
+ exit(type(error).__name__ + '\n\n' + msg)
+
+
+def check_gnuradio_import():
+ try:
+ from gnuradio import gr
+ except ImportError as err:
+ die(err, GR_IMPORT_ERROR_MESSAGE)
+
+
+def run_main():
+ script_path = os.path.dirname(os.path.abspath(__file__))
+ source_tree_subpath = "/grc/scripts"
+
+ if not script_path.endswith(source_tree_subpath):
+ # run the installed version
+ from gnuradio.grc.compiler import main
+ else:
+ print("Running from source tree")
+ sys.path.insert(1, script_path[:-len(source_tree_subpath)])
+ from grc.compiler import main
+ exit(main())
+
+
+if __name__ == '__main__':
+ check_gnuradio_import()
+ run_main()