aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Braun <martin.braun@ettus.com>2021-12-17 14:04:58 +0100
committerAaron Rossetto <aaron.rossetto@ni.com>2021-12-17 11:18:53 -0600
commit30b157e4cf12dfe7e8a174548d8cfddd64d47c42 (patch)
tree77e2153225412f15b6a6cd66382997ed549c4d8a
parentc369b7046e1687bdb7b67a0fae2f1168f0088783 (diff)
downloaduhd-30b157e4cf12dfe7e8a174548d8cfddd64d47c42.tar.gz
uhd-30b157e4cf12dfe7e8a174548d8cfddd64d47c42.tar.bz2
uhd-30b157e4cf12dfe7e8a174548d8cfddd64d47c42.zip
images: Clear out code from days of yore
The images/ subdir is used to create images packages for release tags. However, it contained a lot of code from many releases ago, prior to the usage of the cache/ directory. This simply removes all the old code that is no longer required for creating release packages.
-rw-r--r--images/Makefile317
-rwxr-xr-ximages/create_imgs_package.py12
-rwxr-xr-ximages/populate_images.py16
-rw-r--r--images/uhdimgs.py90
4 files changed, 17 insertions, 418 deletions
diff --git a/images/Makefile b/images/Makefile
deleted file mode 100644
index 85501459a..000000000
--- a/images/Makefile
+++ /dev/null
@@ -1,317 +0,0 @@
-#
-# Copyright 2010-2013 Ettus Research LLC
-#
-# This program 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 of the License, or
-# (at your option) any later version.
-#
-# This program 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, see <http://www.gnu.org/licenses/>.
-#
-
-all:
- @echo "Pick a specific target"
-
-########################################################################
-# Common Variables
-########################################################################
-TOP_DIR = $(shell pwd)
-TOP_FW_DIR = $(TOP_DIR)/../firmware
-TOP_FPGA_DIR = $(TOP_DIR)/../fpga
-BUILT_IMAGES_DIR = $(TOP_DIR)/images
-CMAKE_BUILD_DIR = $(TOP_DIR)/build
-
-##filled in below
-IMAGES_LIST =
-
-##little rule to make the images directory
-$(BUILT_IMAGES_DIR):
- mkdir $@
- mkdir $@/bit
-
-GLOBAL_DEPS = $(BUILT_IMAGES_DIR)
-
-########################################################################
-# Utility Checks
-########################################################################
-ifeq ($(shell sdcc --help > /dev/null 2>&1 && echo $$?),0)
- HAS_SDCC=1
-endif
-
-ifeq ($(shell zpu-elf-gcc --help > /dev/null 2>&1 && echo $$?),0)
- HAS_ZPU_GCC=1
-endif
-
-ifeq ($(shell xtclsh -h > /dev/null 2>&1 && echo $$?),0)
- HAS_XTCLSH=1
-endif
-
-ifeq ($(shell avr-gcc --version > /dev/null 2>&1 && echo $$?),0)
- ifeq ($(shell avr-objcopy --version > /dev/null 2>&1 && echo $$?),0)
- HAS_AVR_UTILS=1
- endif
-endif
-
-########################################################################
-# USRP1 and B100 firmware
-########################################################################
-ifdef HAS_SDCC
-
-_usrp1_fw_dir = $(TOP_FW_DIR)/fx2
-_usrp1_fw_ihx = $(BUILT_IMAGES_DIR)/usrp1_fw.ihx
-_usrp_b100_fw_ihx = $(BUILT_IMAGES_DIR)/usrp_b100_fw.ihx
-IMAGES_LIST += $(_usrp1_fw_ihx) $(_usrp_b100_fw_ihx)
-
-$(_usrp1_fw_ihx): $(GLOBAL_DEPS)
- cd $(_usrp1_fw_dir) && rm -rf build
- cd $(_usrp1_fw_dir) && mkdir build
- cd $(_usrp1_fw_dir)/build && cmake ../
- cd $(_usrp1_fw_dir)/build && make
- cp $(_usrp1_fw_dir)/build/usrp1/usrp1_fw.ihx $@
-
-$(_usrp_b100_fw_ihx): $(_usrp1_fw_ihx)
- cp $(_usrp1_fw_dir)/build/b100/b100_fw.ihx $(_usrp_b100_fw_ihx)
-
-endif
-
-########################################################################
-# USRP1 fpga
-########################################################################
-_usrp1_fpga_dir = $(TOP_FPGA_DIR)/usrp1/rbf/rev4
-_usrp1_fpga_rbf = $(BUILT_IMAGES_DIR)/usrp1_fpga.rbf
-_usrp1_fpga_4rx_rbf = $(BUILT_IMAGES_DIR)/usrp1_fpga_4rx.rbf
-IMAGES_LIST += $(_usrp1_fpga_rbf) $(_usrp1_fpga_4rx_rbf)
-
-$(_usrp1_fpga_rbf): $(GLOBAL_DEPS)
- cp $(_usrp1_fpga_dir)/std_2rxhb_2tx.rbf $@
-
-$(_usrp1_fpga_4rx_rbf): $(GLOBAL_DEPS)
- cp $(_usrp1_fpga_dir)/std_4rx_0tx.rbf $@
-
-########################################################################
-# USRP-B100 fpga
-########################################################################
-ifdef HAS_XTCLSH
-
-_usrp_b100_fpga_dir = $(TOP_FPGA_DIR)/usrp2/top/B100
-_usrp_b100_fpga_bin = $(BUILT_IMAGES_DIR)/usrp_b100_fpga.bin
-_usrp_b100_fpga_2rx_bin = $(BUILT_IMAGES_DIR)/usrp_b100_fpga_2rx.bin
-IMAGES_LIST += $(_usrp_b100_fpga_bin) $(_usrp_b100_fpga_2rx_bin)
-
-$(_usrp_b100_fpga_bin): $(GLOBAL_DEPS)
- cd $(_usrp_b100_fpga_dir) && make -f Makefile.B100 clean
- cd $(_usrp_b100_fpga_dir) && make -f Makefile.B100 bin
- cp $(_usrp_b100_fpga_dir)/build-B100/B100.bin $@
-
-$(_usrp_b100_fpga_2rx_bin): $(GLOBAL_DEPS)
- cd $(_usrp_b100_fpga_dir) && make -f Makefile.B100_2RX clean
- cd $(_usrp_b100_fpga_dir) && make -f Makefile.B100_2RX bin
- cp $(_usrp_b100_fpga_dir)/build-B100_2RX/B100.bin $@
-
-endif
-
-########################################################################
-# USRP2 and N-Series firmware
-########################################################################
-ifdef HAS_ZPU_GCC
-
-_usrp2_fw_dir = $(TOP_FW_DIR)/zpu
-_usrp2_fw_bin = $(BUILT_IMAGES_DIR)/usrp2_fw.bin
-_usrp_n200_fw_bin = $(BUILT_IMAGES_DIR)/usrp_n200_fw.bin
-_usrp_n210_fw_bin = $(BUILT_IMAGES_DIR)/usrp_n210_fw.bin
-IMAGES_LIST += $(_usrp2_fw_bin) $(_usrp_n200_fw_bin) $(_usrp_n210_fw_bin)
-
-$(_usrp2_fw_bin): $(GLOBAL_DEPS)
- cd $(_usrp2_fw_dir) && rm -rf build
- cd $(_usrp2_fw_dir) && mkdir build
- cd $(_usrp2_fw_dir)/build && cmake ../
- cd $(_usrp2_fw_dir)/build && make
- cp $(_usrp2_fw_dir)/build/usrp2/usrp2_txrx_uhd.bin $@
-
-$(_usrp_n200_fw_bin): $(_usrp2_fw_bin)
- cp $(_usrp2_fw_dir)/build/usrp2p/usrp2p_txrx_uhd.bin $@
-
-$(_usrp_n210_fw_bin): $(_usrp2_fw_bin)
- cp $(_usrp2_fw_dir)/build/usrp2p/usrp2p_txrx_uhd.bin $@
-
-endif
-
-########################################################################
-# USRP2 FPGA
-########################################################################
-ifdef HAS_XTCLSH
-
-_usrp2_fpga_dir = $(TOP_FPGA_DIR)/usrp2/top/USRP2
-_usrp2_fpga_bin = $(BUILT_IMAGES_DIR)/usrp2_fpga.bin
-IMAGES_LIST += $(_usrp2_fpga_bin)
-
-$(_usrp2_fpga_bin): $(GLOBAL_DEPS)
- cd $(_usrp2_fpga_dir) && make clean
- cd $(_usrp2_fpga_dir) && make bin
- cp $(_usrp2_fpga_dir)/build/u2_rev3.bin $@
-
-endif
-
-########################################################################
-# USRP N200 R2/R3 FPGA
-########################################################################
-ifdef HAS_XTCLSH
-
-_usrp_n200_r3_fpga_dir = $(TOP_FPGA_DIR)/usrp2/top/N2x0
-_usrp_n200_r3_fpga_bin = $(BUILT_IMAGES_DIR)/usrp_n200_r3_fpga.bin
-_usrp_n200_r3_fpga_bit = $(BUILT_IMAGES_DIR)/bit/usrp_n200_r3_fpga.bit
-IMAGES_LIST += $(_usrp_n200_r3_fpga_bin) $(_usrp_n200_r3_fpga_bit)
-
-$(_usrp_n200_r3_fpga_bin): $(GLOBAL_DEPS)
- cd $(_usrp_n200_r3_fpga_dir) && make -f Makefile.N200R3 clean
- cd $(_usrp_n200_r3_fpga_dir) && make -f Makefile.N200R3 bin
- cp $(_usrp_n200_r3_fpga_dir)/build-N200R3/u2plus.bin $@
-
-$(_usrp_n200_r3_fpga_bit): $(_usrp_n200_r3_fpga_bin)
- cp $(_usrp_n200_r3_fpga_dir)/build-N200R3/u2plus.bit $@
-
-#its called r2 on the silkscreen, so make an r2
-_usrp_n200_r2_fpga_bin = $(BUILT_IMAGES_DIR)/usrp_n200_r2_fpga.bin
-IMAGES_LIST += $(_usrp_n200_r2_fpga_bin)
-$(_usrp_n200_r2_fpga_bin): $(_usrp_n200_r3_fpga_bin)
- cp $< $@
-
-endif
-
-########################################################################
-# USRP N210 R2/R3 FPGA
-########################################################################
-ifdef HAS_XTCLSH
-
-_usrp_n210_r3_fpga_dir = $(TOP_FPGA_DIR)/usrp2/top/N2x0
-_usrp_n210_r3_fpga_bin = $(BUILT_IMAGES_DIR)/usrp_n210_r3_fpga.bin
-_usrp_n210_r3_fpga_bit = $(BUILT_IMAGES_DIR)/bit/usrp_n210_r3_fpga.bit
-IMAGES_LIST += $(_usrp_n210_r3_fpga_bin) $(_usrp_n210_r3_fpga_bit)
-
-$(_usrp_n210_r3_fpga_bin): $(GLOBAL_DEPS)
- cd $(_usrp_n210_r3_fpga_dir) && make -f Makefile.N210R3 clean
- cd $(_usrp_n210_r3_fpga_dir) && make -f Makefile.N210R3 bin
- cp $(_usrp_n210_r3_fpga_dir)/build-N210R3/u2plus.bin $@
-
-$(_usrp_n210_r3_fpga_bit): $(_usrp_n210_r3_fpga_bin)
- cp $(_usrp_n210_r3_fpga_dir)/build-N210R3/u2plus.bit $@
-
-#its called r2 on the silkscreen, so make an r2
-_usrp_n210_r2_fpga_bin = $(BUILT_IMAGES_DIR)/usrp_n210_r2_fpga.bin
-IMAGES_LIST += $(_usrp_n210_r2_fpga_bin)
-$(_usrp_n210_r2_fpga_bin): $(_usrp_n210_r3_fpga_bin)
- cp $< $@
-
-endif
-
-########################################################################
-# USRP N200 R4 FPGA
-########################################################################
-ifdef HAS_XTCLSH
-
-_usrp_n200_r4_fpga_dir = $(TOP_FPGA_DIR)/usrp2/top/N2x0
-_usrp_n200_r4_fpga_bin = $(BUILT_IMAGES_DIR)/usrp_n200_r4_fpga.bin
-_usrp_n200_r4_fpga_bit = $(BUILT_IMAGES_DIR)/bit/usrp_n200_r4_fpga.bit
-IMAGES_LIST += $(_usrp_n200_r4_fpga_bin) $(_usrp_n200_r4_fpga_bit)
-
-$(_usrp_n200_r4_fpga_bin): $(GLOBAL_DEPS)
- cd $(_usrp_n200_r4_fpga_dir) && make -f Makefile.N200R4 clean
- cd $(_usrp_n200_r4_fpga_dir) && make -f Makefile.N200R4 bin
- cp $(_usrp_n200_r4_fpga_dir)/build-N200R4/u2plus.bin $@
-
-$(_usrp_n200_r4_fpga_bit): $(_usrp_n200_r4_fpga_bin)
- cp $(_usrp_n200_r4_fpga_dir)/build-N200R4/u2plus.bit $@
-
-endif
-
-########################################################################
-# USRP N210 R4 FPGA
-########################################################################
-ifdef HAS_XTCLSH
-
-_usrp_n210_r4_fpga_dir = $(TOP_FPGA_DIR)/usrp2/top/N2x0
-_usrp_n210_r4_fpga_bin = $(BUILT_IMAGES_DIR)/usrp_n210_r4_fpga.bin
-_usrp_n210_r4_fpga_bit = $(BUILT_IMAGES_DIR)/bit/usrp_n210_r4_fpga.bit
-IMAGES_LIST += $(_usrp_n210_r4_fpga_bin) $(_usrp_n210_r4_fpga_bit)
-
-$(_usrp_n210_r4_fpga_bin): $(GLOBAL_DEPS)
- cd $(_usrp_n210_r4_fpga_dir) && make -f Makefile.N210R4 clean
- cd $(_usrp_n210_r4_fpga_dir) && make -f Makefile.N210R4 bin
- cp $(_usrp_n210_r4_fpga_dir)/build-N210R4/u2plus.bin $@
-
-$(_usrp_n210_r4_fpga_bit): $(_usrp_n210_r4_fpga_bin)
- cp $(_usrp_n210_r4_fpga_dir)/build-N210R4/u2plus.bit $@
-
-endif
-
-########################################################################
-# USRP E100 FPGA
-########################################################################
-ifdef HAS_XTCLSH
-
-_usrp_e100_fpga_dir = $(TOP_FPGA_DIR)/usrp2/top/E1x0
-_usrp_e100_fpga_bin = $(BUILT_IMAGES_DIR)/usrp_e100_fpga_v2.bin
-IMAGES_LIST += $(_usrp_e100_fpga_bin)
-
-$(_usrp_e100_fpga_bin): $(GLOBAL_DEPS)
- cd $(_usrp_e100_fpga_dir) && make -f Makefile.E100 clean
- cd $(_usrp_e100_fpga_dir) && make -f Makefile.E100 bin
- cp $(_usrp_e100_fpga_dir)/build-E100/E1x0.bin $@
-
-endif
-
-########################################################################
-# USRP E110 FPGA
-########################################################################
-ifdef HAS_XTCLSH
-
-_usrp_e110_fpga_dir = $(TOP_FPGA_DIR)/usrp2/top/E1x0
-_usrp_e110_fpga_bin = $(BUILT_IMAGES_DIR)/usrp_e110_fpga.bin
-IMAGES_LIST += $(_usrp_e110_fpga_bin)
-
-$(_usrp_e110_fpga_bin): $(GLOBAL_DEPS)
- cd $(_usrp_e110_fpga_dir) && make -f Makefile.E110 clean
- cd $(_usrp_e110_fpga_dir) && make -f Makefile.E110 bin
- cp $(_usrp_e110_fpga_dir)/build-E110/E1x0.bin $@
-
-endif
-
-########################################################################
-# OctoClock firmware
-########################################################################
-
-ifdef HAS_AVR_UTILS
-
-_octoclock_fw_dir = $(TOP_FW_DIR)/octoclock
-_octoclock_fw_bin = $(BUILT_IMAGES_DIR)/octoclock_r4_fw.hex
-IMAGES_LIST += $(_octoclock_fw_bin)
-
-$(_octoclock_fw_bin): $(GLOBAL_DEPS)
- cd $(_octoclock_fw_dir) && mkdir build
- cd $(_octoclock_fw_dir)/build && cmake ..
- cd $(_octoclock_fw_dir)/build && make
- cp $(TOP_FW_DIR)/octoclock/build/octoclock_r4_fw.hex $@
-endif
-
-########################################################################
-# Build rules
-########################################################################
-images: $(IMAGES_LIST)
- find $(BUILT_IMAGES_DIR) -type f | xargs chmod -x
- find $(TOP_FPGA_DIR) -name "*.twr" | xargs grep constraint | grep met
-
-package:
- mkdir -p $(CMAKE_BUILD_DIR)
- cd $(CMAKE_BUILD_DIR) && cmake -DUHD_RELEASE_MODE=OFF ..
- cd $(CMAKE_BUILD_DIR) && cmake -DCPACK_GENERATOR=TGZ .. && make package
- cd $(CMAKE_BUILD_DIR) && cmake -DCPACK_GENERATOR=ZIP .. && make package
-
-clean:
- $(RM) -rf $(BUILT_IMAGES_DIR)
- $(RM) -rf $(CMAKE_BUILD_DIR)
diff --git a/images/create_imgs_package.py b/images/create_imgs_package.py
index 416242db1..a55e7902c 100755
--- a/images/create_imgs_package.py
+++ b/images/create_imgs_package.py
@@ -19,12 +19,13 @@
Command-line utility to create a .zip-file with the current image set.
"""
+import sys
import re
import os
import subprocess
import argparse
import shutil
-import uhdimgs
+import populate_images
def parse_args():
""" Parse args, duh """
@@ -39,7 +40,6 @@ def download_images(img_root_dir):
"""
Run the images downloader
"""
- import populate_images
populate_images.download_images(img_root_dir)
def get_version():
@@ -51,18 +51,18 @@ def get_version():
git_output = subprocess.check_output(git_cmd).decode('UTF-8')
except subprocess.CalledProcessError as ex:
print(ex.output)
- exit(1)
+ sys.exit(1)
print("Detected tag: {}".format(git_output))
version_mobj = re.search(r'[0-9]+\.[0-9]+\.[0-9]+\.[0-9]', git_output)
if version_mobj is None:
print("Error: Failure to resolve version from tag!")
- exit(1)
+ sys.exit(1)
return version_mobj.group(0)
def main():
""" Go, go, go! """
args = parse_args()
- img_root_dir = os.path.join(uhdimgs.get_images_dir(), 'images')
+ img_root_dir = os.path.join(populate_images.get_images_dir(), 'images')
print("== Clearing out the images directory at {}, if present...".format(img_root_dir))
shutil.rmtree(img_root_dir, ignore_errors=True)
print("== Downloading images...")
@@ -76,7 +76,7 @@ def main():
subprocess.call(archive_cmd)
except subprocess.CalledProcessError as ex:
print(ex.output)
- exit(1)
+ sys.exit(1)
print("== Done!")
if __name__ == "__main__":
diff --git a/images/populate_images.py b/images/populate_images.py
index cd95c2086..f54ca8b9d 100755
--- a/images/populate_images.py
+++ b/images/populate_images.py
@@ -10,19 +10,25 @@ Populates the current directory with a valid set of binaries for the
current commit.
"""
-from __future__ import print_function
import os
+import sys
import subprocess
-import uhdimgs
+
+def get_images_dir():
+ """
+ Returns the absolute position of the images/ subdir
+ in the UHD source tree.
+ """
+ return os.path.dirname(__file__)
def download_images(img_root_dir=None):
" Go, go, go! "
# Switch to correct dir
- img_root_dir = img_root_dir or os.path.join(uhdimgs.get_images_dir(), 'images')
+ img_root_dir = img_root_dir or os.path.join(get_images_dir(), 'images')
if not os.path.isdir(img_root_dir):
print("== Creating images directory...")
os.mkdir(img_root_dir)
- os.chdir(uhdimgs.get_images_dir())
+ os.chdir(get_images_dir())
print("== Starting download...")
try:
downloader_cmd = [
@@ -34,7 +40,7 @@ def download_images(img_root_dir=None):
subprocess.check_call(downloader_cmd)
except (subprocess.CalledProcessError, OSError):
print("[ERROR] Failed to run downloader script.")
- exit(1)
+ sys.exit(1)
print("== Done!")
if __name__ == "__main__":
diff --git a/images/uhdimgs.py b/images/uhdimgs.py
deleted file mode 100644
index fa0b0ac86..000000000
--- a/images/uhdimgs.py
+++ /dev/null
@@ -1,90 +0,0 @@
-#!/usr/bin/env python
-#
-# Copyright 2014 Ettus Research LLC
-# Copyright 2018 Ettus Research, a National Instruments Company
-#
-# SPDX-License-Identifier: GPL-3.0-or-later
-#
-"""
-Utility module for packaging and handling UHD binary images.
-"""
-
-from __future__ import print_function
-import re
-import os
-import sys
-import hashlib
-
-_DEFAULT_BASE_URL = "http://files.ettus.com/binaries/images"
-_DEFAULT_BUFFER_SIZE = 8192
-_CMAKE_MAIN_FILE = "../host/CMakeLists.txt"
-_CMAKE_IMG_TPL = """
-# This section is written automatically by /images/create_imgs_package.py
-# Any manual changes in here will be overwritten.
-SET(UHD_IMAGES_MD5SUM "{}")
-SET(UHD_IMAGES_DOWNLOAD_SRC "{}")
-"""
-
-def get_cmake_main_file():
- """ Returns a path to the CMakeLists.txt file that contains the image info. """
- return _CMAKE_MAIN_FILE
-
-def get_base_url():
- """ Returns the base URL """
- if os.environ.get("UHD_IMAGES_BASE_URL") is not None and os.environ.get("UHD_IMAGES_BASE_URL") != "":
- return os.environ.get("UHD_IMAGES_BASE_URL")
- else:
- return _DEFAULT_BASE_URL
-
-def base_url_is_local(base_url):
- """ Returns true if the base URL is actually a http URL
- instead of a local path. """
- return not (base_url.find('http') == 0)
-
-def get_images_dir():
- """
- Returns the absolute position of the images/ subdir
- in the UHD source tree.
- """
- return os.path.dirname(__file__)
-
-def update_main_cmake_file(md5, zipfilename):
- """
- Update the section in host/CMakeLists.txt that contains
- the ZIP filename and the MD5 hash.
- """
- cmakef = open(_CMAKE_MAIN_FILE, 'r').read()
- new_section = _CMAKE_IMG_TPL.format(md5, zipfilename)
- regex = re.compile("(?<={{{IMG_SECTION)(.*)(?=#}}})", flags=re.MULTILINE|re.DOTALL)
- cmakef = regex.sub(new_section, cmakef, count=1)
- open(_CMAKE_MAIN_FILE, 'w').write(cmakef)
-
-def get_total_md5(img_dir):
- """ Creates an md5sum of everything in the images directory """
- def _update_md5_for_dir_recursive(dir_root, md5_obj):
- for (root, dirnames, filenames) in os.walk(dir_root):
- for filename in filenames:
- md5_obj.update(open(os.path.join(root, filename), 'rb').read())
- sys.stdout.write('.')
- sys.stdout.flush()
- for dirname in dirnames:
- _update_md5_for_dir_recursive(os.path.join(root, dirname), md5_obj)
- md5 = hashlib.md5()
- _update_md5_for_dir_recursive(img_dir, md5)
- print("")
- return md5.hexdigest()
-
-def md5_checksum(filePath):
- """ Return MD5 checksum of a single file. """
- try:
- with open(filePath, 'rb') as fh:
- m = hashlib.md5()
- while True:
- data = fh.read(_DEFAULT_BUFFER_SIZE)
- if not data:
- break
- m.update(data)
- return m.hexdigest()
- except Exception as e:
- print("Failed to calculated MD5 sum of: %s (%s)" % (filePath, e))
- raise e