Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/VLC/contrib/src/   (VLC Media Plyer ©)  Datei vom 23.9.2026 mit Größe 2 kB image not shown  

Quelle  gen-cmake-toolchain.py   Sprache: Python

 

#!/usr/bin/env python3
import os
import argparse

# Argument parsing
parser = argparse.ArgumentParser(
    description="Generate a CMake crossfile based on environment variables")
parser.add_argument('file', type=argparse.FileType('w', encoding='UTF-8'),
    help="output file")
args = parser.parse_args()

# Helper to add env variable value to crossfile
def _add_environ_val(meson_key, env_key):
    env_value = os.environ.get(env_key)
    if env_value != None:
        if " " in env_value:
            args.file.write("set({} \"{}\")\n".format(meson_key, env_value))
        else:
            args.file.write("set({} {})\n".format(meson_key, env_value))

def _add_environ_val_not_empty(meson_key, env_key):
    env_value = os.environ.get(env_key)
    if env_value != None and env_value != '':
        args.file.write("set({} {})\n".format(meson_key, env_value))

def _add_environ_cached_val_not_empty(meson_key: str, env_key: str):
    env_value = os.environ.get(env_key)
    if env_value != None and env_value != '':
        args.file.write('set({} "{}" CACHE STRING "")\n'.format(meson_key, env_value))


# Generate meson crossfile
args.file.write("# CMake toolchain automatically generated by contrib makefile\n")

# Binaries section
_add_environ_val('CMAKE_SYSTEM_PROCESSOR', 'HOST_ARCH')
_add_environ_val_not_empty('CMAKE_SYSTEM_NAME', 'SYSTEM_NAME')
_add_environ_val('CMAKE_RC_COMPILER', 'RC_COMPILER')
_add_environ_val('CMAKE_RANLIB', 'RANLIB')
_add_environ_val('CMAKE_C_COMPILER_RANLIB', 'RANLIB')
_add_environ_val('CMAKE_CXX_COMPILER_RANLIB', 'RANLIB')
_add_environ_val('CMAKE_AR', 'AR')
_add_environ_val('CMAKE_C_COMPILER_AR', 'AR')
_add_environ_val('CMAKE_CXX_COMPILER_AR', 'AR')
_add_environ_val('CMAKE_LINKER', 'LD')

_add_environ_cached_val_not_empty('CMAKE_OSX_SYSROOT', 'OSX_SYSROOT')
_add_environ_cached_val_not_empty('CMAKE_OSX_ARCHITECTURES', 'OSX_ARCHITECTURES')
_add_environ_cached_val_not_empty('CMAKE_OSX_DEPLOYMENT_TARGET', 'OSX_DEPLOYMENT_TARGET')

_add_environ_val('CMAKE_C_COMPILER', 'CC')
_add_environ_val('CMAKE_CXX_COMPILER', 'CXX')

_add_environ_val('ANDROID_NDK', 'ANDROID_NDK')
_add_environ_val('ANDROID_ABI', 'ANDROID_ABI')
_add_environ_val('ANDROID_PLATFORM', 'ANDROID_API')

_add_environ_val('PKG_CONFIG_EXECUTABLE', 'PKG_CONFIG')

_add_environ_val('CMAKE_FIND_ROOT_PATH', 'PREFIX')

_add_environ_val('CMAKE_FIND_ROOT_PATH', 'FIND_ROOT_PATH')
args.file.write("set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)\n")
_add_environ_val('CMAKE_FIND_ROOT_PATH_MODE_LIBRARY', 'PATH_MODE_LIBRARY')
_add_environ_val('CMAKE_FIND_ROOT_PATH_MODE_INCLUDE', 'PATH_MODE_INCLUDE')
_add_environ_val('CMAKE_FIND_ROOT_PATH_MODE_PACKAGE', 'PATH_MODE_PACKAGE')

# final includes
env_value = os.environ.get('EXTRA_INCLUDE')
if env_value != None and env_value != '':
    args.file.write("include({})\n".format(env_value))

Messung
CHZG
849610093

¤ Dauer der Verarbeitung: 0.0 Sekunden  (vorverarbeitet am  2026-11-04) ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

PVS Prover

Isabelle Prover


Cephes Mathematical Library

Vienna Development Method

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.