aboutsummaryrefslogtreecommitdiff
path: root/version.py
diff options
context:
space:
mode:
authorTaylor Holberton <taylorcholberton@gmail.com>2018-12-17 08:53:43 -0500
committerGitHub <noreply@github.com>2018-12-17 08:53:43 -0500
commita4ac5f5a3b09f3d646ad8e777f43810a8c5ba3da (patch)
treea830e853561fb5215850b1de748d23f7fe4562c2 /version.py
parentc3cdfc490bf902e45e250702a2106c6d2a5ea5ab (diff)
parent443542bfd30318ddbe3d1c7c029f90386b541347 (diff)
Merge pull request #121 from tp-m/meson-extract-version-from-header
meson: extract project version from header file and version .so
Diffstat (limited to 'version.py')
-rwxr-xr-xversion.py25
1 files changed, 25 insertions, 0 deletions
diff --git a/version.py b/version.py
new file mode 100755
index 0000000..892dbdb
--- /dev/null
+++ b/version.py
@@ -0,0 +1,25 @@
+#!/usr/bin/env python3
+#
+# tinyalsa version.py: Extracts versions from TINYALSA_VERSION_STRING in
+# include/tinyalsa/version.h header file for Meson build.
+import os
+import sys
+
+if __name__ == '__main__':
+ try:
+ srcroot = os.environ['MESON_SOURCE_ROOT']
+ except:
+ srcroot = os.getcwd()
+ print('Warning: MESON_SOURCE_ROOT env var not set, assuming source code is in', srcroot, file=sys.stderr)
+
+ # API version
+ api_version = None
+ f = open(os.path.join(srcroot, 'include', 'tinyalsa', 'version.h'), 'r')
+ for line in f:
+ if line.startswith('#define TINYALSA_VERSION_STRING '):
+ api_version = line[32:].strip().replace('"', '')
+ print(api_version)
+ sys.exit(0)
+
+ print('Warning: Could not extract API version from TINYALSA_VERSION_STRING in include/tinyalsa/version.h in', srcroot, file=sys.stderr)
+ sys.exit(-1)