Compare commits
1
Commits
master
..
ecc0f56143
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ecc0f56143 |
@@ -1,24 +0,0 @@
|
|||||||
This is free and unencumbered software released into the public domain.
|
|
||||||
|
|
||||||
Anyone is free to copy, modify, publish, use, compile, sell, or
|
|
||||||
distribute this software, either in source code form or as a compiled
|
|
||||||
binary, for any purpose, commercial or non-commercial, and by any
|
|
||||||
means.
|
|
||||||
|
|
||||||
In jurisdictions that recognize copyright laws, the author or authors
|
|
||||||
of this software dedicate any and all copyright interest in the
|
|
||||||
software to the public domain. We make this dedication for the benefit
|
|
||||||
of the public at large and to the detriment of our heirs and
|
|
||||||
successors. We intend this dedication to be an overt act of
|
|
||||||
relinquishment in perpetuity of all present and future rights to this
|
|
||||||
software under copyright law.
|
|
||||||
|
|
||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
||||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
||||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
|
||||||
IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
|
|
||||||
OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
|
|
||||||
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
|
||||||
OTHER DEALINGS IN THE SOFTWARE.
|
|
||||||
|
|
||||||
For more information, please refer to <https://unlicense.org/>
|
|
||||||
@@ -1,47 +0,0 @@
|
|||||||
# SemiOS Packages
|
|
||||||
|
|
||||||
This is the SemiOS source package collection.
|
|
||||||
|
|
||||||
## Usage
|
|
||||||
|
|
||||||
To build a package for your native target, run:
|
|
||||||
|
|
||||||
```shell
|
|
||||||
./x build <package name>
|
|
||||||
```
|
|
||||||
|
|
||||||
To cross-build a package for another target, run:
|
|
||||||
|
|
||||||
```shell
|
|
||||||
./x --target <target triple> build <package name>
|
|
||||||
```
|
|
||||||
|
|
||||||
After a package is successfully built, you can find the build artifacts
|
|
||||||
at `./packages/<package name>/target/*.pkg`.
|
|
||||||
|
|
||||||
To clean building files for a package, run:
|
|
||||||
|
|
||||||
```shell
|
|
||||||
./x clean <package name> # Clean a package
|
|
||||||
./x clean --all # Clean all packages
|
|
||||||
```
|
|
||||||
|
|
||||||
## Targets
|
|
||||||
|
|
||||||
This repository is for SemiOS targets only. Other targets are not guaranteed to work.
|
|
||||||
Currently, we support:
|
|
||||||
|
|
||||||
- aarch64-semios-linux
|
|
||||||
- riscv64-semios-linux
|
|
||||||
- x86_64-semios-linux
|
|
||||||
|
|
||||||
## Atom Builds
|
|
||||||
|
|
||||||
*Atom Build* is a technology to make reproducible building environments. To build a
|
|
||||||
package in its atom environment, run:
|
|
||||||
|
|
||||||
```shell
|
|
||||||
./x --atombuild build <package name>
|
|
||||||
```
|
|
||||||
|
|
||||||
You can use the `--atombuild` flag with other flags described above.
|
|
||||||
@@ -117,7 +117,6 @@ def _is_dev_file(ent) -> bool:
|
|||||||
or ent.name.endswith(".la")
|
or ent.name.endswith(".la")
|
||||||
or ent.name.endswith(".pc")
|
or ent.name.endswith(".pc")
|
||||||
or ent.name.endswith(".h")
|
or ent.name.endswith(".h")
|
||||||
or ent.name.endswith(".hpp")
|
|
||||||
or ent.name.endswith(".cmake")
|
or ent.name.endswith(".cmake")
|
||||||
or ent.name.endswith(".inc")
|
or ent.name.endswith(".inc")
|
||||||
or ("Makefile" in ent.name)
|
or ("Makefile" in ent.name)
|
||||||
|
|||||||
+1
-1
@@ -32,7 +32,7 @@ def _depcommon(s: str):
|
|||||||
if ")" in s:
|
if ")" in s:
|
||||||
return s.replace(")", f", +python{PY3_VERSION})")
|
return s.replace(")", f", +python{PY3_VERSION})")
|
||||||
else:
|
else:
|
||||||
return s.replace(".py", f".py (+python{PY3_VERSION})")
|
return s.replace(".py", f" (+python{PY3_VERSION})")
|
||||||
else:
|
else:
|
||||||
return None
|
return None
|
||||||
|
|
||||||
|
|||||||
+10
-42
@@ -4,7 +4,6 @@ import sys
|
|||||||
import tarfile
|
import tarfile
|
||||||
import urllib.parse
|
import urllib.parse
|
||||||
import urllib.request
|
import urllib.request
|
||||||
import zipfile
|
|
||||||
|
|
||||||
|
|
||||||
def filename(url):
|
def filename(url):
|
||||||
@@ -129,25 +128,6 @@ def tar_common_root(tar: tarfile.TarFile) -> str | None:
|
|||||||
return root
|
return root
|
||||||
|
|
||||||
|
|
||||||
def zip_common_root(zip_file: zipfile.ZipFile) -> str | None:
|
|
||||||
members = zip_file.infolist()
|
|
||||||
if not members:
|
|
||||||
return None
|
|
||||||
root = None
|
|
||||||
for member in members:
|
|
||||||
path = member.filename.replace('\\', '/').lstrip('./').lstrip('/')
|
|
||||||
if not path:
|
|
||||||
continue
|
|
||||||
this_root = path.split('/')[0]
|
|
||||||
if this_root in ('', '.', '..'):
|
|
||||||
continue
|
|
||||||
if root is None:
|
|
||||||
root = this_root
|
|
||||||
elif this_root != root:
|
|
||||||
return None
|
|
||||||
return root
|
|
||||||
|
|
||||||
|
|
||||||
def sources_dir_name() -> str:
|
def sources_dir_name() -> str:
|
||||||
with open("./target/sources.tag") as file:
|
with open("./target/sources.tag") as file:
|
||||||
return file.read()
|
return file.read()
|
||||||
@@ -159,28 +139,16 @@ def source_url(url: str):
|
|||||||
download_path = f"./target/{filename(url)}"
|
download_path = f"./target/{filename(url)}"
|
||||||
download(url, download_path)
|
download(url, download_path)
|
||||||
|
|
||||||
if download_path.endswith(".zip"):
|
with tarfile.open(download_path, "r") as tar:
|
||||||
with zipfile.ZipFile(download_path, "r") as zip:
|
common_root = tar_common_root(tar)
|
||||||
common_root = zip_common_root(zip)
|
extract_dir = "./target"
|
||||||
else:
|
sources_dir = f"./target/{common_root}"
|
||||||
with tarfile.open(download_path, "r") as tar:
|
if common_root in ["", ".", "None"]:
|
||||||
common_root = tar_common_root(tar)
|
extract_dir = "./target/sources"
|
||||||
|
sources_dir = "./target/sources"
|
||||||
extract_dir = "./target"
|
tar.extractall(extract_dir)
|
||||||
sources_dir = f"./target/{common_root}"
|
with open("./target/sources.tag", "wt+") as file:
|
||||||
if common_root in ["", ".", None]:
|
file.write(sources_dir)
|
||||||
extract_dir = "./target/sources"
|
|
||||||
sources_dir = "./target/sources"
|
|
||||||
|
|
||||||
if download_path.endswith(".zip"):
|
|
||||||
with zipfile.ZipFile(download_path, "r") as zip:
|
|
||||||
zip.extractall(extract_dir)
|
|
||||||
else:
|
|
||||||
with tarfile.open(download_path, "r") as tar:
|
|
||||||
tar.extractall(extract_dir)
|
|
||||||
|
|
||||||
with open("./target/sources.tag", "wt+") as file:
|
|
||||||
file.write(sources_dir)
|
|
||||||
|
|
||||||
|
|
||||||
def _git_repo_name(url: str) -> str:
|
def _git_repo_name(url: str) -> str:
|
||||||
|
|||||||
@@ -1,29 +0,0 @@
|
|||||||
import os
|
|
||||||
|
|
||||||
from lib.make import *
|
|
||||||
from lib import python
|
|
||||||
|
|
||||||
|
|
||||||
python.version("1.4.1")
|
|
||||||
description("A super-fast templating language that borrows the best ideas from the existing templating languages.")
|
|
||||||
maintainer("sisungo <[email protected]>")
|
|
||||||
source_url("https://files.pythonhosted.org/packages/2a/12/b5fa2353e2754cd67fb9f83793fa48ff42c213a5da7e719869d2301f6ab8/mako-1.4.1.tar.gz")
|
|
||||||
|
|
||||||
python.builddep("$shortcut")
|
|
||||||
python.builddep("MarkupSafe.py")
|
|
||||||
|
|
||||||
|
|
||||||
def build():
|
|
||||||
python.build()
|
|
||||||
python.install()
|
|
||||||
os.chdir("lib")
|
|
||||||
while len(os.listdir(".")) == 1:
|
|
||||||
os.chdir(os.listdir(".")[0])
|
|
||||||
|
|
||||||
on_build(build)
|
|
||||||
|
|
||||||
|
|
||||||
package("Mako.py")
|
|
||||||
python.dep("python")
|
|
||||||
python.dep("MarkupSafe.py")
|
|
||||||
python.use_auto_pack()
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
from lib.make import *
|
|
||||||
from lib import python
|
|
||||||
|
|
||||||
|
|
||||||
python.version("3.0.3")
|
|
||||||
description("Safely add untrusted strings to HTML/XML markup.")
|
|
||||||
maintainer("sisungo <[email protected]>")
|
|
||||||
source_url("https://files.pythonhosted.org/packages/7e/99/7690b6d4034fffd95959cbe0c02de8deb3098cc577c67bb6a24fe5d7caa7/markupsafe-3.0.3.tar.gz")
|
|
||||||
|
|
||||||
python.builddep("$shortcut")
|
|
||||||
|
|
||||||
|
|
||||||
def build():
|
|
||||||
python.build()
|
|
||||||
python.install()
|
|
||||||
|
|
||||||
on_build(build)
|
|
||||||
|
|
||||||
|
|
||||||
package("MarkupSafe.py")
|
|
||||||
python.dep("python")
|
|
||||||
python.use_auto_pack()
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
from lib.make import *
|
|
||||||
from lib import python
|
|
||||||
|
|
||||||
|
|
||||||
python.version("6.0.3")
|
|
||||||
description("YAML parser and emitter for Python")
|
|
||||||
maintainer("sisungo <[email protected]>")
|
|
||||||
source_url("https://files.pythonhosted.org/packages/05/8e/961c0007c59b8dd7729d542c61a4d537767a59645b82a0b521206e1e25c2/pyyaml-6.0.3.tar.gz")
|
|
||||||
|
|
||||||
python.builddep("$shortcut")
|
|
||||||
|
|
||||||
|
|
||||||
def build():
|
|
||||||
python.build()
|
|
||||||
python.install()
|
|
||||||
|
|
||||||
on_build(build)
|
|
||||||
|
|
||||||
|
|
||||||
package("PyYAML.py")
|
|
||||||
python.dep("python")
|
|
||||||
python.use_auto_pack()
|
|
||||||
@@ -1,37 +0,0 @@
|
|||||||
from lib.make import *
|
|
||||||
from lib import cpp, arch
|
|
||||||
|
|
||||||
|
|
||||||
version("22.1.5")
|
|
||||||
description("A tool and a library for bi-directional translation between SPIR-V and LLVM IR")
|
|
||||||
maintainer("sisungo <[email protected]>")
|
|
||||||
source_url("https://github.com/KhronosGroup/SPIRV-LLVM-Translator/archive/refs/tags/v22.1.5.tar.gz")
|
|
||||||
|
|
||||||
builddep("shortcut/cmake")
|
|
||||||
builddep("shortcut/c++")
|
|
||||||
builddep(f"libllvm-dev (~22.1.0) @{arch.get_target()}")
|
|
||||||
builddep(f"libllvm-static (~22.1.0) @{arch.get_target()}")
|
|
||||||
builddep("pkgconf")
|
|
||||||
builddep("spirv-headers")
|
|
||||||
|
|
||||||
|
|
||||||
def build():
|
|
||||||
cpp.cmake([
|
|
||||||
"-DLLVM_EXTERNAL_SPIRV_HEADERS_SOURCE_DIR=ON",
|
|
||||||
f"-DLLVM_DIR=/lib/{arch.get_target()}/cmake/llvm",
|
|
||||||
f"-DSPIRV-Headers_SOURCE_DIR=/lib/{arch.get_target()}",
|
|
||||||
f"-DCMAKE_INSTALL_PREFIX={get_prefix('libllvmspirv-dev')}",
|
|
||||||
])
|
|
||||||
cpp.ninja()
|
|
||||||
cpp.ninja_install()
|
|
||||||
|
|
||||||
on_build(build)
|
|
||||||
|
|
||||||
|
|
||||||
package("libllvmspirv-dev")
|
|
||||||
cpp.use_auto_pack(["dev"])
|
|
||||||
|
|
||||||
package("llvm-spirv")
|
|
||||||
dep("libllvm (~22.1.0) @same-arch")
|
|
||||||
dep("libcxx @same-arch")
|
|
||||||
cpp.use_auto_pack(["bin"])
|
|
||||||
@@ -0,0 +1,43 @@
|
|||||||
|
from lib import arch, cpp
|
||||||
|
from lib.make import *
|
||||||
|
|
||||||
|
|
||||||
|
version("2.14.3")
|
||||||
|
description("a freely available software library to render fonts")
|
||||||
|
maintainer("sisungo <[email protected]>")
|
||||||
|
source_url("https://download.savannah.gnu.org/releases/freetype/freetype-2.14.3.tar.xz")
|
||||||
|
|
||||||
|
builddep("shortcut/c")
|
||||||
|
builddep("shortcut/autotools")
|
||||||
|
builddep("pkgconf")
|
||||||
|
builddep(f"libz-ng-dev @{arch.get_target()}")
|
||||||
|
builddep(f"libbzip2-dev @{arch.get_target()}")
|
||||||
|
builddep(f"libpng-dev @{arch.get_target()}")
|
||||||
|
builddep(f"libbrotli-dev @{arch.get_target()}")
|
||||||
|
|
||||||
|
|
||||||
|
def build():
|
||||||
|
cpp.configure([
|
||||||
|
f"--libdir={get_prefix('libfreetype')}/lib",
|
||||||
|
f"--includedir={get_prefix('libfreetype-dev')}/include"
|
||||||
|
])
|
||||||
|
cpp.make()
|
||||||
|
cpp.make_install()
|
||||||
|
|
||||||
|
on_build(build)
|
||||||
|
|
||||||
|
|
||||||
|
package("libfreetype")
|
||||||
|
dep("libz @same-arch")
|
||||||
|
dep("libpng @same-arch")
|
||||||
|
dep("libbzip2 @same-arch")
|
||||||
|
dep("libbrotli @same-arch")
|
||||||
|
cpp.use_auto_pack(["lib"])
|
||||||
|
|
||||||
|
package("libfreetype-dev")
|
||||||
|
dep("libfreetype (same)")
|
||||||
|
dep("libz-dev @same-arch")
|
||||||
|
dep("libpng-dev @same-arch")
|
||||||
|
dep("libbzip2-dev @same-arch")
|
||||||
|
dep("libbrotli-dev @same-arch")
|
||||||
|
cpp.use_auto_pack(["dev"])
|
||||||
@@ -31,7 +31,7 @@ def build():
|
|||||||
f"-Dgio_module_dir=/lib/{arch.get_target()}/gio/modules",
|
f"-Dgio_module_dir=/lib/{arch.get_target()}/gio/modules",
|
||||||
"--prefix=/",
|
"--prefix=/",
|
||||||
f"--bindir={get_prefix('glib-tools')}/bin",
|
f"--bindir={get_prefix('glib-tools')}/bin",
|
||||||
f"--libdir={get_prefix('glib-dev')}/lib",
|
f"--libdir={get_prefix('glib')}/lib",
|
||||||
f"--includedir={get_prefix('glib-dev')}/include",
|
f"--includedir={get_prefix('glib-dev')}/include",
|
||||||
f"--libexecdir={get_prefix('libglib')}/libexec",
|
f"--libexecdir={get_prefix('libglib')}/libexec",
|
||||||
f"--datadir={get_prefix('glib')}/share",
|
f"--datadir={get_prefix('glib')}/share",
|
||||||
|
|||||||
@@ -1,24 +0,0 @@
|
|||||||
from lib import arch, cpp
|
|
||||||
from lib.make import *
|
|
||||||
|
|
||||||
|
|
||||||
version("3.3")
|
|
||||||
description("GNU perfect hash function generator")
|
|
||||||
maintainer("sisungo <[email protected]>")
|
|
||||||
source_url("https://ftp.gnu.org/pub/gnu/gperf/gperf-3.3.tar.gz")
|
|
||||||
|
|
||||||
builddep("shortcut/c++")
|
|
||||||
builddep("shortcut/autotools")
|
|
||||||
|
|
||||||
|
|
||||||
def build():
|
|
||||||
cpp.configure()
|
|
||||||
cpp.make()
|
|
||||||
cpp.make_install()
|
|
||||||
|
|
||||||
on_build(build)
|
|
||||||
|
|
||||||
|
|
||||||
package("gperf")
|
|
||||||
dep("libcxx @same-arch")
|
|
||||||
cpp.use_auto_pack(["bin"])
|
|
||||||
@@ -1,48 +0,0 @@
|
|||||||
import os
|
|
||||||
|
|
||||||
import lib.cpp as cpp
|
|
||||||
from lib.make import *
|
|
||||||
|
|
||||||
|
|
||||||
version("1.3.15")
|
|
||||||
description("Graphite is a \"smart font\" system developed specifically to handle the complexities of lesser-known languages of the world.")
|
|
||||||
maintainer("sisungo <[email protected]>")
|
|
||||||
source_url("https://github.com/silnrsi/graphite/releases/download/1.3.15/graphite2-1.3.15.tgz")
|
|
||||||
|
|
||||||
builddep("shortcut/c++")
|
|
||||||
builddep("shortcut/cmake")
|
|
||||||
|
|
||||||
|
|
||||||
def build():
|
|
||||||
cpp.cmake([
|
|
||||||
f"-DCMAKE_INSTALL_PREFIX={get_prefix('libgraphite-dev')}",
|
|
||||||
])
|
|
||||||
cpp.ninja()
|
|
||||||
cpp.ninja_install()
|
|
||||||
|
|
||||||
on_build(build)
|
|
||||||
|
|
||||||
|
|
||||||
def pack_dev(composer):
|
|
||||||
composer.add_dir("bin", "bin")
|
|
||||||
composer.add_dir("include", "include")
|
|
||||||
composer.add_dir("share", "share")
|
|
||||||
composer.makedir("lib")
|
|
||||||
composer.add_dir("lib/pkgconfig", "lib/pkgconfig")
|
|
||||||
for i in os.listdir("lib"):
|
|
||||||
if not os.path.isfile(f"lib/{i}"):
|
|
||||||
continue
|
|
||||||
if ".so" in i:
|
|
||||||
os.symlink(f"{get_prefix('libgraphite')}/lib/{i}", f"{composer.workdir}/bundle/lib/{i}")
|
|
||||||
else:
|
|
||||||
composer.addfile(f"lib/{i}", f"lib/{i}")
|
|
||||||
|
|
||||||
|
|
||||||
package("libgraphite")
|
|
||||||
dep("semi-libc @same-arch")
|
|
||||||
cpp.use_auto_pack(["lib"])
|
|
||||||
|
|
||||||
package("libgraphite-dev")
|
|
||||||
dep("libgraphite (same)")
|
|
||||||
dep("semi-libc-dev @same-arch")
|
|
||||||
on_pack(pack_dev)
|
|
||||||
@@ -1,123 +0,0 @@
|
|||||||
import os
|
|
||||||
|
|
||||||
from lib import cpp, arch
|
|
||||||
from lib.make import *
|
|
||||||
|
|
||||||
upstream_version = "3.2.25"
|
|
||||||
|
|
||||||
version(upstream_version)
|
|
||||||
source_url("https://www.infradead.org/~tgr/libnl/files/libnl-3.2.25.tar.gz")
|
|
||||||
|
|
||||||
builddep("shortcut/c")
|
|
||||||
builddep("shortcut/autotools")
|
|
||||||
builddep("flex")
|
|
||||||
builddep("bison")
|
|
||||||
builddep(f"linux-dev @{arch.get_target()}")
|
|
||||||
|
|
||||||
def build():
|
|
||||||
cpp.configure([
|
|
||||||
"--prefix=/",
|
|
||||||
"--sysconfdir=/var/config",
|
|
||||||
f"--includedir={get_prefix('libnl-dev')}/include",
|
|
||||||
])
|
|
||||||
cpp.make()
|
|
||||||
cpp.make_install()
|
|
||||||
|
|
||||||
|
|
||||||
on_build(build)
|
|
||||||
|
|
||||||
SO_SUFFIX = ["", ".200", ".200.20.0"]
|
|
||||||
|
|
||||||
|
|
||||||
def pack_core(composer):
|
|
||||||
composer.makedir("lib")
|
|
||||||
for i in SO_SUFFIX:
|
|
||||||
composer.addfile(f"lib/libnl-3.so{i}", f"lib/libnl-3.so{i}")
|
|
||||||
|
|
||||||
package("libnl-core")
|
|
||||||
dep("semi-libc @same-arch")
|
|
||||||
on_pack(pack_core)
|
|
||||||
|
|
||||||
def pack_genl(composer):
|
|
||||||
composer.makedir("lib")
|
|
||||||
for i in SO_SUFFIX:
|
|
||||||
composer.addfile(f"lib/libnl-genl-3.so{i}", f"lib/libnl-genl-3.so{i}")
|
|
||||||
|
|
||||||
package("libnl-genl")
|
|
||||||
dep("libnl-core (same)")
|
|
||||||
on_pack(pack_genl)
|
|
||||||
|
|
||||||
def pack_idiag(composer):
|
|
||||||
composer.makedir("lib")
|
|
||||||
for i in SO_SUFFIX:
|
|
||||||
composer.addfile(f"lib/libnl-idiag-3.so{i}", f"lib/libnl-idiag-3.so{i}")
|
|
||||||
|
|
||||||
package("libnl-idiag")
|
|
||||||
dep("libnl-core (same)")
|
|
||||||
on_pack(pack_idiag)
|
|
||||||
|
|
||||||
def pack_route(composer):
|
|
||||||
composer.makedir("lib")
|
|
||||||
for i in SO_SUFFIX:
|
|
||||||
composer.addfile(f"lib/libnl-route-3.so{i}", f"lib/libnl-route-3.so{i}")
|
|
||||||
|
|
||||||
package("libnl-route")
|
|
||||||
dep("libnl-core (same)")
|
|
||||||
on_pack(pack_route)
|
|
||||||
|
|
||||||
def pack_nf(composer):
|
|
||||||
composer.makedir("lib")
|
|
||||||
for i in SO_SUFFIX:
|
|
||||||
composer.addfile(f"lib/libnl-nf-3.so{i}", f"lib/libnl-nf-3.so{i}")
|
|
||||||
|
|
||||||
package("libnl-nf")
|
|
||||||
dep("libnl-core (same)")
|
|
||||||
dep("libnl-route (same)")
|
|
||||||
on_pack(pack_nf)
|
|
||||||
|
|
||||||
def pack_cli(composer):
|
|
||||||
composer.makedir("lib")
|
|
||||||
for i in SO_SUFFIX:
|
|
||||||
composer.addfile(f"lib/libnl-cli-3.so{i}", f"lib/libnl-cli-3.so{i}")
|
|
||||||
|
|
||||||
package("libnl-cli")
|
|
||||||
dep("libnl-core (same)")
|
|
||||||
dep("libnl-nf (same)")
|
|
||||||
dep("libnl-route (same)")
|
|
||||||
on_pack(pack_cli)
|
|
||||||
|
|
||||||
def pack_libnl(composer):
|
|
||||||
composer.makedir("lib")
|
|
||||||
for soname in ["-3", "-nf-3", "-route-3", "-idiag-3", "-genl-3"]:
|
|
||||||
if soname == "-3":
|
|
||||||
pkgname = "libnl-core"
|
|
||||||
elif "nf" in soname:
|
|
||||||
pkgname = "libnl-nf"
|
|
||||||
elif "route" in soname:
|
|
||||||
pkgname = "libnl-route"
|
|
||||||
elif "idiag" in soname:
|
|
||||||
pkgname = "libnl-idiag"
|
|
||||||
elif "genl" in soname:
|
|
||||||
pkgname = "libnl-genl"
|
|
||||||
for suffix in SO_SUFFIX:
|
|
||||||
fullname = f"libnl{soname}.so{suffix}"
|
|
||||||
os.symlink(
|
|
||||||
f"/pkg/{pkgname}={upstream_version}@{arch.get_target()}/lib/{fullname}",
|
|
||||||
f"{composer.workdir}/bundle/lib/{fullname}",
|
|
||||||
)
|
|
||||||
|
|
||||||
package("libnl")
|
|
||||||
dep("libnl-core (same)")
|
|
||||||
dep("libnl-nf (same)")
|
|
||||||
dep("libnl-route (same)")
|
|
||||||
dep("libnl-idiag (same)")
|
|
||||||
dep("libnl-genl (same)")
|
|
||||||
on_pack(pack_libnl)
|
|
||||||
|
|
||||||
package("libnl-tools")
|
|
||||||
dep("libnl (same)")
|
|
||||||
cpp.use_auto_pack(["bin"])
|
|
||||||
|
|
||||||
package("libnl-dev")
|
|
||||||
dep("libnl (same)")
|
|
||||||
cpp.use_auto_pack(["dev"])
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
from lib.make import *
|
|
||||||
from lib import python
|
|
||||||
|
|
||||||
|
|
||||||
python.version("3.0")
|
|
||||||
description("C parser in Python")
|
|
||||||
maintainer("sisungo <[email protected]>")
|
|
||||||
source_url("https://files.pythonhosted.org/packages/1b/7d/92392ff7815c21062bea51aa7b87d45576f649f16458d78b7cf94b9ab2e6/pycparser-3.0.tar.gz")
|
|
||||||
|
|
||||||
python.builddep("$shortcut")
|
|
||||||
|
|
||||||
|
|
||||||
def build():
|
|
||||||
python.build()
|
|
||||||
python.install()
|
|
||||||
|
|
||||||
on_build(build)
|
|
||||||
|
|
||||||
|
|
||||||
package("pycparser.py")
|
|
||||||
python.dep("python")
|
|
||||||
python.use_auto_pack()
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
from lib.make import *
|
|
||||||
from lib import python
|
|
||||||
|
|
||||||
|
|
||||||
python.version("84.0.0")
|
|
||||||
description("Most extensible Python build backend with support for C/C++ extension modules")
|
|
||||||
maintainer("sisungo <[email protected]>")
|
|
||||||
source_url("https://files.pythonhosted.org/packages/6d/44/f5da03a8ef95d369145c5bb53050e7877c9f3d312e128605fd9504829143/setuptools-84.0.0.tar.gz")
|
|
||||||
|
|
||||||
python.builddep("$shortcut")
|
|
||||||
|
|
||||||
|
|
||||||
def build():
|
|
||||||
python.build()
|
|
||||||
python.install()
|
|
||||||
|
|
||||||
on_build(build)
|
|
||||||
|
|
||||||
|
|
||||||
package("setuptools.py")
|
|
||||||
python.dep("python")
|
|
||||||
python.use_auto_pack()
|
|
||||||
@@ -1,43 +0,0 @@
|
|||||||
import os
|
|
||||||
import shutil
|
|
||||||
|
|
||||||
from lib.make import *
|
|
||||||
from lib import cpp, arch
|
|
||||||
|
|
||||||
|
|
||||||
sdk_version = "1.4.357.0"
|
|
||||||
|
|
||||||
version(sdk_version)
|
|
||||||
description("an API and commands for processing SPIR-V modules")
|
|
||||||
maintainer("sisungo <[email protected]>")
|
|
||||||
source_url("https://github.com/KhronosGroup/SPIRV-Tools/archive/refs/tags/vulkan-sdk-1.4.357.0.tar.gz")
|
|
||||||
|
|
||||||
builddep("shortcut/cmake")
|
|
||||||
builddep("shortcut/c++")
|
|
||||||
builddep(f"spirv-headers (={sdk_version}) @{arch.get_target()}")
|
|
||||||
|
|
||||||
|
|
||||||
def build():
|
|
||||||
cpp.cmake([
|
|
||||||
f"-DSPIRV-Headers_SOURCE_DIR=/lib/{arch.get_target()}",
|
|
||||||
"-DCMAKE_CXX_FLAGS=-Wno-error=switch",
|
|
||||||
f"-DCMAKE_INSTALL_PREFIX={get_prefix('spirv-tools-dev')}",
|
|
||||||
])
|
|
||||||
cpp.ninja()
|
|
||||||
cpp.ninja_install()
|
|
||||||
try:
|
|
||||||
os.rename("lib64", "lib")
|
|
||||||
os.rename("lib32", "lib")
|
|
||||||
except:
|
|
||||||
pass
|
|
||||||
|
|
||||||
on_build(build)
|
|
||||||
|
|
||||||
|
|
||||||
package("spirv-tools")
|
|
||||||
dep("libcxx @same-arch")
|
|
||||||
cpp.use_auto_pack(["bin"])
|
|
||||||
|
|
||||||
package("spirv-tools-dev")
|
|
||||||
dep("spirv-tools (same)")
|
|
||||||
cpp.use_auto_pack(["lib", "dev"])
|
|
||||||
@@ -119,7 +119,6 @@ def cmd_build_package(package: str):
|
|||||||
"version": pkgver,
|
"version": pkgver,
|
||||||
"arch": pkgarch,
|
"arch": pkgarch,
|
||||||
"description": pkginfo[lib.make._key_description],
|
"description": pkginfo[lib.make._key_description],
|
||||||
"maintainers": pkginfo[lib.make._key_maintainers],
|
|
||||||
"dependencies": pkginfo[lib.make._key_dependencies],
|
"dependencies": pkginfo[lib.make._key_dependencies],
|
||||||
"provides": pkginfo[lib.make._key_provides],
|
"provides": pkginfo[lib.make._key_provides],
|
||||||
"recommendations": pkginfo[lib.make._key_recommendations],
|
"recommendations": pkginfo[lib.make._key_recommendations],
|
||||||
|
|||||||
Reference in New Issue
Block a user