boulder v1.0.2+r6+g5472ac5-2

This commit is contained in:
xhaa123 2024-04-28 00:30:52 +08:00
parent 2d80fc9ce2
commit 9d951cf9bb
2 changed files with 40 additions and 198 deletions

View File

@ -6,7 +6,7 @@
# Maintainer: Future Linux Team <future_linux@163.com>
pkgname=boulder
pkgver=v1.0.2+r6+g5472ac5
pkgrel=1
pkgrel=2
pkgdesc="Extremely flexible and powerful, yet simple to use, package build tool for the Serpent OS project. "
arch=('x86_64')
url="https://github.com/serpent-os/boulder"
@ -36,7 +36,7 @@ source=(git+https://github.com/serpent-os/boulder.git
sha256sums=(SKIP
SKIP
SKIP
513ebe2dd2ad9811fadb9c08e8afca63c9dd8118e38226f2e2d9f0efb5bf3964)
15fd0f9910f190b8063a7a4ab2fe137ad32ec2a0eb5b98ff92b7224c0d643d81)
pkgver() {
cd ${pkgname}

View File

@ -1,5 +1,5 @@
diff --git a/data/default-x86_64.conf b/data/default-x86_64.conf
index 1df61a6..53a9b60 100644
index 1df61a6..ef38b40 100644
--- a/data/default-x86_64.conf
+++ b/data/default-x86_64.conf
@@ -2,16 +2,16 @@
@ -9,7 +9,7 @@ index 1df61a6..53a9b60 100644
- uri: "https://dev.serpentos.com/volatile/x86_64/stone.index"
- description: "Volatile moss repo"
+ uri: "http://192.168.0.117/futurelinux/moss/stone.index"
+ description: "Moss repo"
+ description: "Future Linux Moss repo"
priority: 0
- local-x86_64:
@ -19,7 +19,7 @@ index 1df61a6..53a9b60 100644
- uri: "https://dev.serpentos.com/volatile/x86_64/stone.index"
- description: "Volatile moss repo"
+ uri: "http://192.168.0.117/futurelinux/moss/stone.index"
+ description: "Moss repo"
+ description: "Future Linux Moss repo"
priority: 0
- local:
@ -72,14 +72,16 @@ index 93b3068..a6d47f1 100644
-DCMAKE_INSTALL_PREFIX="%(prefix)" \
-DCMAKE_LIB_SUFFIX="%(libsuffix)"
diff --git a/data/macros/actions/meson.yml b/data/macros/actions/meson.yml
index f0390bd..a6e6f7b 100644
index f0390bd..29d4cbb 100644
--- a/data/macros/actions/meson.yml
+++ b/data/macros/actions/meson.yml
@@ -43,7 +43,7 @@ definitions:
@@ -42,8 +42,8 @@ definitions:
- options_meson: |
--prefix="%(prefix)" \
--buildtype="plain" \
--libdir="lib%(libsuffix)" \
- --libdir="lib%(libsuffix)" \
- --libexecdir="lib%(libsuffix)/%(name)" \
+ --libdir="%(libdir)" \
+ --libexecdir="%(libexecdir)" \
--sysconfdir="%(sysconfdir)" \
--localstatedir="%(localstatedir)" \
@ -98,7 +100,7 @@ index 7490352..16afbd4 100644
- host_platform : aarch64-%(vendorID)
- cc : "%(compiler_c) -m64"
diff --git a/data/macros/arch/base.yml b/data/macros/arch/base.yml
index 6a62e13..78390ab 100644
index 6a62e13..33dfdf2 100644
--- a/data/macros/arch/base.yml
+++ b/data/macros/arch/base.yml
@@ -3,7 +3,7 @@
@ -134,25 +136,22 @@ index 6a62e13..78390ab 100644
- - /usr/lib/cmake
- - /usr/lib/lib*.so
- - /usr/lib/pkgconfig
+ - /usr/lib%(libsuffix)/*.a
+ - /usr/lib%(libsuffix)/cmake
+ - /usr/lib%(libsuffix)/lib*.so
+ - /usr/lib%(libsuffix)/pkgconfig
+ - /usr/lib64/*.a
+ - /usr/lib64/cmake
+ - /usr/lib64/lib*.so
+ - /usr/lib64/pkgconfig
- /usr/share/aclocal
- /usr/share/man/man2
- /usr/share/man/man3
@@ -568,9 +568,9 @@ packages :
@@ -568,7 +568,7 @@ packages :
Install this package if you need debugging information + symbols
for the %(name) package.
paths:
- - /usr/lib/debug
+ - /usr/lib%(libsuffix)/debug
+ - /usr/lib64/debug
- # Template for a -libs sub-package which can be used by adding paths via the stone.yml file
+ # Template for a -libs sub-package which can be used by adding paths via the stone.yaml file
# Template for a -libs sub-package which can be used by adding paths via the stone.yml file
- "%(name)-libs":
summary: "Library files for %(name)"
description: |
diff --git a/data/macros/arch/emul32/x86_64.yml b/data/macros/arch/emul32/x86_64.yml
index e065dc4..6c0c7ac 100644
--- a/data/macros/arch/emul32/x86_64.yml
@ -256,151 +255,29 @@ index 62338b0..c661642 100644
+ c : "-march=x86-64-v2 -mtune=generic"
+ cxx : "-march=x86-64-v2 -mtune=generic"
d : "-mcpu=x86-64-v2"
diff --git a/source/boulder/cli/build_command.d b/source/boulder/cli/build_command.d
index e143758..1687ba6 100644
--- a/source/boulder/cli/build_command.d
+++ b/source/boulder/cli/build_command.d
@@ -26,12 +26,12 @@ import std.stdio;
public import moss.core.cli;
/**
- * The BuildCommand is responsible for handling requests to build stone.yml
+ * The BuildCommand is responsible for handling requests to build stone.yaml
* formatted files into useful binary packages.
*/
@CommandName("build") @CommandAlias("bi")
@CommandHelp("Build a binary .stone package",
- "Using the given package recipe file (defaults to stone.yml), a binary
+ "Using the given package recipe file (defaults to stone.yaml), a binary
.stone package will be built using the locally available build dependencies and
the resulting binary artefact will be emitted to the output directory, which
defaults to the current working directory.")
@@ -44,7 +44,7 @@ public struct BuildControlCommand
/**
* Main entry point into the BuildControlCommand. We expect a list of paths that
- * contain "stone.yml" formatted build description files. For each path
+ * contain "stone.yaml" formatted build description files. For each path
* we encounter, we initially check the validity and existence.
*
* Once all validation is passed, we begin building all of the passed
@@ -76,9 +76,9 @@ public struct BuildControlCommand
!unconfined, profile, compilerCache, configDir);
/* Require a recipe to continue */
- if (argv == null && !"stone.yml".exists)
+ if (argv == null && !"stone.yaml".exists)
{
- error("No recipe specified and no stone.yml file found in current directory");
+ error("No recipe specified and no stone.yaml file found in current directory");
return ExitStatus.Failure;
}
@@ -92,11 +92,11 @@ public struct BuildControlCommand
// Create a login1 inhibitor lock to prevent the system from going down during a build.
auto lock = inhibit("shutdown:sleep:idle", "boulder", "build in progress", "block");
- /* When no recipes are specified, build stone.yml recipe in current directory if it exists */
- if (argv == null && "stone.yml".exists)
+ /* When no recipes are specified, build stone.yaml recipe in current directory if it exists */
+ if (argv == null && "stone.yaml".exists)
{
- trace("No recipe specified, building stone.yml recipe found in current directory");
- res = controller.build("stone.yml");
+ trace("No recipe specified, building stone.yaml recipe found in current directory");
+ res = controller.build("stone.yaml");
}
else
{
diff --git a/source/boulder/cli/chroot_command.d b/source/boulder/cli/chroot_command.d
index 79e5385..52ee02b 100644
--- a/source/boulder/cli/chroot_command.d
+++ b/source/boulder/cli/chroot_command.d
@@ -29,7 +29,7 @@ public import moss.core.cli;
/**
* The ChrootCommand is responsible for handling requests to chroot into
- * a stone.yml's build location
+ * a stone.yaml's build location
*/
@CommandName("chroot") @CommandAlias("cr")
@CommandHelp("Chroot into a recipe's build location using moss-container.")
@@ -42,7 +42,7 @@ public struct ChrootCommand
/**
* Main entry point into the ChrootCommand where we expect a valid recipe
- * (stone.yml) file
+ * (stone.yaml) file
*
* Once all validation is passed, we chroot into the recipe's build location
* using `moss-container`.
@@ -81,8 +81,8 @@ public struct ChrootCommand
return ExitStatus.Failure;
}
- /* Use stone.yml in current dir if no args passed, otherwise the recipe is the first arg */
- immutable recipe = argv.length > 0 ? argv[0] : "stone.yml";
+ /* Use stone.yaml in current dir if no args passed, otherwise the recipe is the first arg */
+ immutable recipe = argv.length > 0 ? argv[0] : "stone.yaml";
if (!recipe.exists)
{
error(format!"Recipe not found: %s"(recipe));
diff --git a/source/boulder/cli/new_command.d b/source/boulder/cli/new_command.d
index 509b3db..04b8bcf 100644
--- a/source/boulder/cli/new_command.d
+++ b/source/boulder/cli/new_command.d
@@ -26,11 +26,11 @@ import std.format : format;
import std.experimental.logger;
/**
- * The BuildCommand is responsible for handling requests to build stone.yml
+ * The BuildCommand is responsible for handling requests to build stone.yaml
* formatted files into useful binary packages.
*/
@CommandName("new")
-@CommandHelp("Create skeletal stone.yml recipe from source archive URI")
+@CommandHelp("Create skeletal stone.yaml recipe from source archive URI")
@CommandUsage("[$URI]")
public struct NewCommand
diff --git a/data/recipeTemplate.yml b/data/recipeTemplate.yml
index 238a45a..0644275 100644
--- a/data/recipeTemplate.yml
+++ b/data/recipeTemplate.yml
@@ -1,5 +1,5 @@
#
-# SPDX-FileCopyrightText: © 2020-2024 Serpent OS Developers
+# SPDX-FileCopyrightText: © 2020-2024 Future Linux Developers
#
# SPDX-License-Identifier: MPL-2.0
#
diff --git a/dub.json b/dub.json
index 4991718..d0337fe 100644
--- a/dub.json
+++ b/dub.json
@@ -1,6 +1,6 @@
{
@@ -76,5 +76,5 @@ public struct NewCommand
/** Where to output the YML file */
@Option("o", "output", "Location to output generated build recipe")
- string outputPath = "stone.yml";
+ string outputPath = "stone.yaml";
}
diff --git a/source/boulder/stages/populate_root.d b/source/boulder/stages/populate_root.d
index 529e9b1..66aaaf6 100644
--- a/source/boulder/stages/populate_root.d
+++ b/source/boulder/stages/populate_root.d
@@ -50,7 +50,7 @@ public static immutable(Stage) stagePopulateRoot = Stage("populate-root", (Stage
auto requiredLLVM = ["clang"];
auto requiredLLVM32 = ["clang-32bit", "libcxx-32bit-devel"];
- /* Append 32bit packages if enabled in the stone.yml */
+ /* Append 32bit packages if enabled in the stone.yaml */
if (context.job.recipe.emul32)
{
requiredInstalled ~= requiredEMUL32;
diff --git a/source/drafter/package.d b/source/drafter/package.d
index b792e40..0c0411f 100644
--- a/source/drafter/package.d
+++ b/source/drafter/package.d
@@ -10,11 +10,11 @@
* Automatic generation of boulder recipes from upstream URIs
*
* Drafter is the core implementation behind the `boulder new`
- * subcommand, and allows users to generate a new `stone.yml` file
+ * subcommand, and allows users to generate a new `stone.yaml` file
* from given upstream URIs.
*
* It integrates metadata and build system detetion in an attempt
- * to provide a complete stone.yml file. It may not always be
+ * to provide a complete stone.yaml file. It may not always be
* 100% accurate, but it is designed to detect as many build deps
* and licenses as possible to save the maintainer from doing all
* of the legwork, increasing our compliance.
"authors": [
- "Serpent OS Developers"
+ "Future Linux Developers"
],
"copyright": "Copyright © 2020-2023 Serpent OS Developers",
"description": "Build Stone Packages for Moss",
diff --git a/source/mason/build/analysers/elves.d b/source/mason/build/analysers/elves.d
index 9e7ec9e..7a2adc1 100644
--- a/source/mason/build/analysers/elves.d
@ -451,19 +328,6 @@ index 69151a4..7f47120 100644
{
trace(format!"[Analyse] Rejecting libtool file: %s"(info.path));
return AnalysisReturn.IgnoreFile;
diff --git a/source/mason/build/builder.d b/source/mason/build/builder.d
index c76c739..fc449ba 100644
--- a/source/mason/build/builder.d
+++ b/source/mason/build/builder.d
@@ -52,7 +52,7 @@ public:
/**
* Construct a new Builder with the given input file. It must be
- * a stone.yml formatted file and actually be valid.
+ * a stone.yaml formatted file and actually be valid.
*/
this(string nativeArchitecture)
{
diff --git a/source/mason/build/profile.d b/source/mason/build/profile.d
index 71cc8e0..b28b54c 100644
--- a/source/mason/build/profile.d
@ -477,28 +341,6 @@ index 71cc8e0..b28b54c 100644
/* Set the relevant compilers */
if (buildContext.spec.options.toolchain == "llvm")
diff --git a/source/mason/cli/build_command.d b/source/mason/cli/build_command.d
index 54f4dd0..3bbfea5 100644
--- a/source/mason/cli/build_command.d
+++ b/source/mason/cli/build_command.d
@@ -27,7 +27,7 @@ import std.format : format;
import std.parallelism : totalCPUs;
/**
- * The BuildCommand is responsible for handling requests to build stone.yml
+ * The BuildCommand is responsible for handling requests to build stone.yaml
* formatted files into useful binary packages.
*/
@CommandName("build") @CommandAlias("bi")
@@ -45,7 +45,7 @@ public struct BuildCommand
/**
* Main entry point into the BuildCommand. We expect a list of paths that
- * contain "stone.yml" formatted build description files. For each path
+ * contain "stone.yaml" formatted build description files. For each path
* we encounter, we initially check the validity and existence.
*
* Once all validation is passed, we begin building all of the passed
diff --git a/zlib-path-test.yml b/zlib-path-test.yml
index d3620e6..145b221 100644
--- a/zlib-path-test.yml