1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/mirrors-cairo

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
version.py 1.4 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Emmanuele Bassi Отправлено 30.01.2023 17:31 2be68fb
#!/usr/bin/env python3
#
# cairo version.py
#
# Extracts the version from cairo-version.h for the meson build files.
#
import os
import re
import sys
MAJOR_RE = re.compile(
r'^\s*#\s*define\s+CAIRO_VERSION_MAJOR\s+(?P<number>[0-9]+)\s*$',
re.UNICODE)
MINOR_RE = re.compile(
r'^\s*#\s*define\s+CAIRO_VERSION_MINOR\s+(?P<number>[0-9]+)\s*$',
re.UNICODE)
MICRO_RE = re.compile(
r'^\s*#\s*define\s+CAIRO_VERSION_MICRO\s+(?P<number>[0-9]+)\s*$',
re.UNICODE)
version_major = None
version_minor = None
version_micro = None
srcroot = os.path.dirname(__file__)
version_h = os.path.join(srcroot, "src", "cairo-version.h")
with open(version_h, "r", encoding="utf-8") as f:
for line in f:
res = MAJOR_RE.match(line)
if res:
assert version_major is None
version_major = res.group('number')
continue
res = MINOR_RE.match(line)
if res:
assert version_minor is None
version_minor = res.group('number')
continue
res = MICRO_RE.match(line)
if res:
assert version_micro is None
version_micro = res.group('number')
continue
if not (version_major and version_minor and version_micro):
print(f"ERROR: Could not extract version from cairo-version.h in {srcroot}", file=sys.stderr) # noqa
sys.exit(-1)
print(f"{version_major}.{version_minor}.{version_micro}")

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/mirrors-cairo.git
git@api.gitlife.ru:oschina-mirror/mirrors-cairo.git
oschina-mirror
mirrors-cairo
mirrors-cairo
master