You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
38 lines
1.2 KiB
38 lines
1.2 KiB
import io
|
|
import re
|
|
import sys
|
|
import os
|
|
|
|
librs_version = ''
|
|
if len(sys.argv) < 3:
|
|
print("Error! Usage: find_librs_version.py <absolute_path_to_librealsense> <output_dir>")
|
|
exit(1)
|
|
|
|
librealsense_dir = sys.argv[1]
|
|
output_dir = sys.argv[2]
|
|
|
|
rs_h_path = os.path.join(librealsense_dir, 'include/librealsense2/rs.h')
|
|
print("Extracting version from: ", rs_h_path)
|
|
with io.open(rs_h_path, 'r') as f:
|
|
file_content = f.read()
|
|
major = re.search(r"#define\s*RS2_API_MAJOR_VERSION\s*(\d+)",file_content)
|
|
if not major:
|
|
raise Exception('No major number')
|
|
librs_version += major.group(1)
|
|
librs_version += '.'
|
|
minor = re.search(r"#define\s*RS2_API_MINOR_VERSION\s*(\d+)",file_content)
|
|
if not minor:
|
|
raise Exception('No minor number')
|
|
librs_version += minor.group(1)
|
|
librs_version += '.'
|
|
patch = re.search(r"#define\s*RS2_API_PATCH_VERSION\s*(\d+)",file_content)
|
|
if not patch:
|
|
raise Exception('No patch number')
|
|
librs_version += patch.group(1)
|
|
|
|
print("Librealsense Version: ", librs_version)
|
|
outfile = os.path.join(output_dir, '_version.py')
|
|
print("Writing version to: ", outfile)
|
|
with open(outfile, 'w') as f:
|
|
f.write('__version__ = "{}"'.format(librs_version))
|