forked from semios/semios-packages
Compare commits
3
Commits
argp-standalone
...
bash
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2a7def094d | ||
|
|
da5c4329bf | ||
|
|
05cb5c94c5 |
+3
-1
@@ -78,7 +78,7 @@ def meson_compile(rem: list[str] = []):
|
||||
subprocess.run(["meson", "compile", "-C", "_meson_build"] + rem, check=True)
|
||||
|
||||
|
||||
def meson_install(rem: list[str] | None = None, chdir: bool = True):
|
||||
def meson_install(rem: list[str] | None = None, chdir: bool = True, move: bool = True):
|
||||
default_rem = ["--destdir", f"{os.getcwd()}/../cpp_install"]
|
||||
if not rem:
|
||||
os.makedirs("../cpp_install", exist_ok=True)
|
||||
@@ -87,6 +87,8 @@ def meson_install(rem: list[str] | None = None, chdir: bool = True):
|
||||
)
|
||||
if chdir:
|
||||
os.chdir("../cpp_install")
|
||||
if chdir and move:
|
||||
_move_install()
|
||||
|
||||
|
||||
def _do_auto_pack(pc: pkgcomposer.PkgComposer, srcdir: str, dstdir: str, filter):
|
||||
|
||||
@@ -0,0 +1,84 @@
|
||||
import os
|
||||
|
||||
from lib.make import *
|
||||
from lib import cpp
|
||||
|
||||
version("5.3")
|
||||
description("the Bourne Again SHell")
|
||||
source_url("https://ftp.gnu.org/gnu/bash/bash-5.3.tar.gz")
|
||||
|
||||
builddep("shortcut/c")
|
||||
builddep("shortcut/autotools")
|
||||
builddep(f"libncurses-dev @{arch.get_target()}")
|
||||
|
||||
def build():
|
||||
cpp.configure([
|
||||
f"--prefix={get_prefix('bash')}",
|
||||
f"--datarootdir={get_prefix('bash-doc')}/share",
|
||||
f"--localedir={get_prefix('bash')}/share/locale",
|
||||
"--enable-alias",
|
||||
"--enable-alt-array-implementation",
|
||||
"--enable-arith-for-command",
|
||||
"--enable-array-variables",
|
||||
"--enable-bang-history",
|
||||
"--enable-brace-expansion",
|
||||
"--enable-casemod-attributes",
|
||||
"--enable-casemod-expansions",
|
||||
"--enable-command-timing",
|
||||
"--enable-cond-command",
|
||||
"--enable-cond-regexp",
|
||||
"--enable-coprocesses",
|
||||
"--enable-directory-stack",
|
||||
"--enable-dparen-arithmetic",
|
||||
"--enable-extended-glob",
|
||||
"--enable-function-import",
|
||||
"--enable-glob-asciiranges-default",
|
||||
"--enable-help-builtin",
|
||||
"--enable-history",
|
||||
"--enable-job-control",
|
||||
"--enable-multibyte",
|
||||
"--enable-net-redirections",
|
||||
"--enable-process-substitution",
|
||||
"--enable-progcomp",
|
||||
"--enable-prompt-string-decoding",
|
||||
"--enable-readline",
|
||||
"--enable-restricted",
|
||||
"--enable-select",
|
||||
"--enable-separate-helpfiles",
|
||||
"--enable-single-help-strings",
|
||||
"--enable-translatable-strings",
|
||||
"--without-bash-malloc",
|
||||
])
|
||||
cpp.make()
|
||||
cpp.make_install()
|
||||
|
||||
on_build(build)
|
||||
|
||||
def pack_bash(composer):
|
||||
composer.add_dir("bin", "bin")
|
||||
composer.makedir("lib")
|
||||
composer.add_dir("lib/bash", "lib/bash")
|
||||
os.remove(f"{composer.workdir}/bundle/lib/bash/loadables.h")
|
||||
os.remove(f"{composer.workdir}/bundle/lib/bash/Makefile.inc")
|
||||
os.remove(f"{composer.workdir}/bundle/lib/bash/Makefile.sample")
|
||||
composer.makedir("share")
|
||||
composer.add_dir("share/locale", "share/locale")
|
||||
|
||||
def pack_doc(composer):
|
||||
composer.makedir("share")
|
||||
composer.add_dir("share/bash", "share/bash")
|
||||
composer.add_dir("share/doc", "share/doc")
|
||||
composer.add_dir("share/info", "share/info")
|
||||
composer.add_dir("share/man", "share/man")
|
||||
|
||||
package("bash")
|
||||
dep("semi-libc @same-arch")
|
||||
dep("libncurses @same-arch")
|
||||
on_pack(pack_bash)
|
||||
|
||||
package("bash-dev")
|
||||
dep("bash (same)")
|
||||
cpp.use_auto_pack(["dev"])
|
||||
|
||||
package("bash-doc")
|
||||
on_pack(pack_doc)
|
||||
@@ -0,0 +1,122 @@
|
||||
import shutil
|
||||
import os
|
||||
|
||||
from lib.make import *
|
||||
from lib import cpp
|
||||
|
||||
upstream_version = "2.89.2"
|
||||
|
||||
version(upstream_version)
|
||||
source_url("https://download.gnome.org/sources/glib/2.89/glib-2.89.2.tar.xz")
|
||||
|
||||
builddep("shortcut/c++")
|
||||
builddep("shortcut/meson")
|
||||
builddep("gettext")
|
||||
builddep(f"libintl-dev @{arch.get_target()}")
|
||||
builddep("pcre2-tools")
|
||||
builddep(f"libpcre2-dev @{arch.get_target()}")
|
||||
builddep(f"libffi-dev @{arch.get_target()}")
|
||||
builddep("pkgconf")
|
||||
builddep(f"libz-ng-dev @{arch.get_target()}")
|
||||
builddep("libexpat")
|
||||
|
||||
|
||||
def build():
|
||||
os.environ["CFLAGS"] = os.environ.get("CFLAGS", "") + " -Wno-missing-include-dirs"
|
||||
os.environ["CXXFLAGS"] = os.environ.get("CXXLAGS", "") + os.environ["CFLAGS"]
|
||||
cpp.meson_setup([
|
||||
"-Druntime_dir=/run",
|
||||
f"-Dgio_module_dir=/lib/{arch.get_target()}/gio/modules",
|
||||
"--prefix=/",
|
||||
f"--bindir={get_prefix('glib-tools')}/bin",
|
||||
f"--libdir={get_prefix('glib')}/lib",
|
||||
f"--includedir={get_prefix('glib-dev')}/include",
|
||||
f"--libexecdir={get_prefix('libglib')}/libexec",
|
||||
f"--datadir={get_prefix('glib')}/share",
|
||||
])
|
||||
cpp.meson_compile()
|
||||
cpp.meson_install()
|
||||
|
||||
on_build(build)
|
||||
|
||||
|
||||
def pack_libxxx(composer, prefix):
|
||||
composer.makedirs("lib")
|
||||
for i in os.listdir("lib"):
|
||||
if not i.startswith(prefix):
|
||||
continue
|
||||
composer.addfile(f"lib/{i}", f"lib/{i}")
|
||||
|
||||
|
||||
def pack_libglib(composer):
|
||||
composer.add_dir("libexec", "libexec")
|
||||
pack_libxxx(composer, "libglib")
|
||||
|
||||
|
||||
package("libglib")
|
||||
dep("semi-libc @same-arch")
|
||||
dep("libpcre2 @same-arch")
|
||||
on_pack(pack_libglib)
|
||||
|
||||
|
||||
package("libgobject")
|
||||
dep("libglib (same)")
|
||||
dep("libffi @same-arch")
|
||||
on_pack(lambda composer: pack_libxxx(composer, "libgobject"))
|
||||
|
||||
package("libgthread")
|
||||
dep("libglib (same)")
|
||||
dep("semi-libc @same-arch")
|
||||
on_pack(lambda composer: pack_libxxx(composer, "libgthread"))
|
||||
|
||||
package("libgmodule")
|
||||
dep("libglib (same)")
|
||||
dep("semi-libc @same-arch")
|
||||
on_pack(lambda composer: pack_libxxx(composer, "libgmodule"))
|
||||
|
||||
package("libgio")
|
||||
dep("libglib (same)")
|
||||
dep("libgobject (same)")
|
||||
dep("libgmodule (same)")
|
||||
dep("libz @same-arch")
|
||||
dep("semi-libc @same-arch")
|
||||
on_pack(lambda composer: pack_libxxx(composer, "libgio"))
|
||||
|
||||
package("libgirepository")
|
||||
dep("libglib (same)")
|
||||
dep("libgobject (same)")
|
||||
dep("libgmodule (same)")
|
||||
dep("libffi @same-arch")
|
||||
dep("semi-libc @same-arch")
|
||||
on_pack(lambda composer: pack_libxxx(composer, "libgirepository"))
|
||||
|
||||
|
||||
def pack_glib(composer):
|
||||
composer.makedir("lib")
|
||||
for i in os.listdir("lib"):
|
||||
if not i.endswith(".so"):
|
||||
continue
|
||||
pkgname = i.split("-")[0]
|
||||
os.symlink(f"{get_prefix(pkgname)}/lib/{i}", f"{composer.workdir}/bundle/lib/{i}")
|
||||
os.symlink(f"{get_prefix('glib-dev')}/lib/glib-2.0", f"{composer.workdir}/bundle/lib/glib-2.0")
|
||||
composer.add_dir("share", "share")
|
||||
|
||||
package("glib")
|
||||
dep("libglib (same)")
|
||||
dep("libgobject (same)")
|
||||
dep("libgthread (same)")
|
||||
dep("libgmodule (same)")
|
||||
dep("libgio (same)")
|
||||
dep("libgirepository (same)")
|
||||
on_pack(pack_glib)
|
||||
|
||||
package("glib-tools")
|
||||
dep("glib (same)")
|
||||
cpp.use_auto_pack(["bin"])
|
||||
|
||||
package("glib-dev")
|
||||
dep("glib (same)")
|
||||
dep("libz-dev @same-arch")
|
||||
dep("libpcre2-dev @same-arch")
|
||||
dep("libffi-dev @same-arch")
|
||||
cpp.use_auto_pack(["dev"])
|
||||
Reference in New Issue
Block a user