tis-llvm icon

llvm

Paquet d’installation silencieuse pour llvm

22.1.1-2

Les paquets PREPROD sont des paquets construits via LUTI. Ils restent généralement 5 jours en PREPROD, après quoi un deuxième scan VirusTotal est effectué pour vérifier que le status n'a pas changé.
Si le paquet réussit ce dernier contrôle, il est promu en PROD et publié sur le store.

  • package: tis-llvm
  • name: llvm
  • version: 22.1.1-2
  • maintainer: Amel FRADJ
  • target_os: windows
  • architecture: x64
  • signature_date:
  • size: 455.65 Mo

package           : tis-llvm
version           : 22.1.1-2
architecture      : x64
section           : base
priority          : optional
name              : llvm
categories        : 
maintainer        : Amel FRADJ
description       : The LLVM Project is a collection of modular and reusable compiler and toolchain technologies
depends           : 
conflicts         : 
maturity          : PREPROD
locale            : 
target_os         : windows
min_wapt_version  : 
sources           : 
installed_size    : 
impacted_process  : 
description_fr    : Le projet LLVM est un ensemble de technologies modulaires et réutilisables de compilateurs et de chaînes d'outils
description_pl    : Projekt LLVM jest zbiorem modułowych kompilatorów wielokrotnego użytku i technologii toolchain
description_de    : Das LLVM-Projekt ist eine Sammlung von modularen und wiederverwendbaren Compiler- und Toolchain-Technologien
description_es    : El proyecto LLVM es una colección de tecnologías de compiladores y cadenas de herramientas modulares y reutilizables
description_pt    : O Projeto LLVM é uma coleção de tecnologias modulares e reutilizáveis de compiladores e cadeias de ferramentas
description_it    : Il progetto LLVM è una raccolta di tecnologie modulari e riutilizzabili per compilatori e toolchain
description_nl    : Het LLVM Project is een verzameling van modulaire en herbruikbare compiler- en toolchaintechnologieën
description_ru    : Проект LLVM - это коллекция модульных и многократно используемых технологий компиляторов и инструментальных цепочек
audit_schedule    : 
editor            : 
keywords          : 
licence           : 
homepage          : 
package_uuid      : dec97189-aa35-422b-afcb-4fd1f5264f6a
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : 
min_os_version    : 
max_os_version    : 
icon_sha256sum    : 4acf467171987fbdd8bd05eef15fd2a5f395de21078c7dd7375354f64e93ebf2
signer            : test
signer_fingerprint: b82fc8ef4a4475c0f69ac168176c2bfc58f572eb716c4eadd65e4785c155dd8e
signature_date    : 2026-03-12T13:40:12.000000
signed_attributes : package,version,architecture,section,priority,name,categories,maintainer,description,depends,conflicts,maturity,locale,target_os,min_wapt_version,sources,installed_size,impacted_process,description_fr,description_pl,description_de,description_es,description_pt,description_it,description_nl,description_ru,audit_schedule,editor,keywords,licence,homepage,package_uuid,valid_from,valid_until,forced_install_on,changelog,min_os_version,max_os_version,icon_sha256sum,signer,signer_fingerprint,signature_date,signed_attributes
signature         : i5ivUWxX9HBf6YxhpMrUIvpwRcwEXm4fnPM7jEQvMl56GI3iQBs2evFVhvAQm+ljd3mgE0BGfsGSxMHey1k9+pmsqiuJVBJ8lGQ9MHc4dAn2rZ5OdV7fD930kM0AJuTXe6j6uEZTdNIJIQy5irVpy1Yi2HQvDAUCTK7xHT9cGS8qikwNK3Yh34cMZUbetvJt1srcfenyoyV/LZScwcWZ4eQ4XrUns9mNGo723YiU3uLhWxWu7eUbTEIWstmtDVwp8wiYNPmKT3AF4tjrvTq8nilEFw27ss0G6rEDq8AbYHllQ3MY9TPNIyi+qC/Cs54lMLGVWJviZlngu7li7LE5kw==

# -*- coding: utf-8 -*-
from setuphelpers import *

r"""
Usable WAPT package functions: install(), uninstall(), session_setup(), audit(), update_package()
{
   "key":"LLVM",
   "name":"LLVM",
   "version":"18.1.6",
   "install_date":"",
   "install_location":"",
   "uninstall_string":"C:\\Program Files\\LLVM\\Uninstall.exe",
   "publisher":"LLVM",
   "system_component":0,
   "win64":false
  }

"""


def install():
    # Declaring local variables
    bin_name = glob.glob(f"LLVM-*-win64.exe")[0]
    
    # Installing the software
    install_exe_if_needed(bin_name,
        silentflags='/S',
        key='LLVM',
        min_version=control.get_software_version(),
    )



# -*- coding: utf-8 -*-
from setuphelpers import *
from setupdevhelpers import *


def update_package():
    # Declaring local variables
    package_updated = False
    proxies = get_proxies()
    if not proxies:
        proxies = get_proxies_from_wapt_console()
    app_name = control.name

    dict_arch = {
        "x64": "-win64.exe", 
        "x86": "-win32.exe",
        "arm64": "-woa64.exe"
    }    
    url_api = "https://api.github.com/repos/llvm/llvm-project/releases/latest"

    print("API used is: %s" % url_api)
    json_load = wgets(url_api, proxies=proxies, as_json=True)

    for download in json_load["assets"]:
        if dict_arch[control.architecture] in download["name"]:
            download_url = download["browser_download_url"]
            version = download["name"].split('-')[-2]
            latest_bin = download["name"]
            latest_bin_extension = latest_bin.rsplit('.', 1)[-1]
            break

    # Downloading latest binaries
    print(f"Latest {app_name} version is: {version}")
    print(f"Download URL is: {download_url}")
    if not isfile(latest_bin):
        print(f"Downloading: {latest_bin}")
        wget(download_url, latest_bin, proxies=proxies)
    else:
        print(f"Binary is present: {latest_bin}")

    # Changing version of the package
    if Version(version) > Version(control.get_software_version()):
        print(f"Software version updated (from: {control.get_software_version()} to: {Version(version)})")
        package_updated = True
    else:
        print(f"Software version up-to-date ({Version(version)})")

    for f in glob.glob(f'*.{latest_bin_extension}'):
        if f != latest_bin:
            remove_file(f)

    control.set_software_version(version)
    control.save_control_to_wapt()

    return package_updated

e7fec06b4696be82bf8d4b846ebf6b810ed6f27d9eefdce46baf5330ea6e9ed4 : LLVM-22.1.1-win64.exe
01ca7fe94636e5a08fcb73849d3b5df25d51e2c82f4dd1a08f01798b25899819 : WAPT/certificate.crt
fb924dec779f9c16e4145150c7bd823ab8973574857f66a6261cb94c3979a3ec : WAPT/control
4acf467171987fbdd8bd05eef15fd2a5f395de21078c7dd7375354f64e93ebf2 : WAPT/icon.png
c528fa5a20fe80889cb15c986148012c0b331247ea3d6238480e28028f9cc5eb : luti.json
4f6245e55d00b6cb3f9ce2ff73e8ec317a11dd8de19bd7aaa9a267388846ac90 : setup.py
246e71519020c8050f8c7fab2383f15f158321002ccb63a42213e74e30fa48fb : update_package.py