#!/usr/bin/env python3

import subprocess
import sys

short_hash = subprocess.check_output(['git', 'rev-parse', '--short=8', 'HEAD']).decode().strip()
if subprocess.check_output(['git', 'status', '--porcelain=v2']) and short_hash:
    short_hash += "-modified"

if not short_hash:
    short_hash = "unknown"

with open(sys.argv[1], 'w') as f:
    f.write(fr'''/*
 * Automatically generated by Kernel/generate_version_header.py
 */

#pragma once
#include <AK/StringView.h>

namespace Kernel {{

constexpr unsigned MINERVA_MAJOR_REVISION = 1;
constexpr unsigned MINERVA_MINOR_REVISION = 0;
constexpr StringView MINERVA_VERSION = "{short_hash}"sv;

}}
''')
