You've already forked craft-blueprints-heurams
54 lines
2.1 KiB
Python
54 lines
2.1 KiB
Python
# SPDX-License-Identifier: BSD-2-Clause
|
||
# SPDX-FileCopyrightText: 2026 pluvium27 <pluvium27@outlook.com>
|
||
|
||
import info
|
||
from Package.CMakePackageBase import *
|
||
|
||
class subinfo(info.infoclass):
|
||
def setTargets(self):
|
||
self.displayName = "HeurAMS"
|
||
self.description = "Kirigami frontend for HeurAMS memory scheduler"
|
||
self.webpage = "https://git.pluv27.top/pluv/heurams-k"
|
||
|
||
# 定义源码来源
|
||
self.svnTargets['master'] = '[git]https://git.pluv27.top/pluv/heurams-k.git|master'
|
||
self.defaultTarget = 'master'
|
||
|
||
def setDependencies(self):
|
||
# 运行时依赖(KDE 框架)
|
||
self.runtimeDependencies["kde/frameworks/tier1/kirigami"] = None
|
||
self.runtimeDependencies["kde/frameworks/tier1/kcoreaddons"] = None
|
||
self.runtimeDependencies["kde/frameworks/tier1/kconfig"] = None
|
||
self.runtimeDependencies["kde/frameworks/tier1/ki18n"] = None
|
||
self.runtimeDependencies["kde/frameworks/tier3/qqc2-desktop-style"] = None
|
||
# Kirigami Addons
|
||
self.runtimeDependencies["kde/unreleased/kirigami-addons"] = None
|
||
|
||
# Qt6 核心模块
|
||
self.runtimeDependencies["libs/qt6/qtbase"] = None
|
||
self.runtimeDependencies["libs/qt6/qtdeclarative"] = None
|
||
|
||
# 未来会添加 Python 支持
|
||
# self.runtimeDependencies["libs/python3"] = None
|
||
# self.runtimeDependencies["kde/pyotherside"] = None
|
||
|
||
|
||
class Package(CMakePackageBase):
|
||
def __init__(self, **kwargs):
|
||
super().__init__(**kwargs)
|
||
# 禁用测试(项目目前没有)
|
||
self.subinfo.options.configure.args += ["-DBUILD_TESTING=OFF"]
|
||
# 指定 Release 构建类型
|
||
self.subinfo.options.configure.args += ["-DCMAKE_BUILD_TYPE=Release"]
|
||
|
||
def createPackage(self):
|
||
self.defines["appname"] = "heurams-k"
|
||
# 如果有桌面图标,可以设置
|
||
# self.defines["icon"] = os.path.join(self.sourceDir(), "path/to/icon.png")
|
||
self.defines["shortcuts"] = [{
|
||
"name": "HeurAMS-K",
|
||
"target": "bin/heurams-k",
|
||
"description": self.subinfo.description
|
||
}]
|
||
return super().createPackage()
|