[M5+] swap toolchain to gcc15Stdenv + libstdc++
This commit is contained in:
@@ -14,12 +14,6 @@ struct Recipe {
|
||||
std::string find_package; // post-substitution
|
||||
std::vector<std::string> targets; // post-substitution
|
||||
std::string source; // 'curated' | 'manual' | etc.
|
||||
// Set when the dep needs `.override { stdenv = llvmPkgs.libcxxStdenv; }`
|
||||
// to link against the user's libc++-built project (e.g. nixpkgs ships
|
||||
// it built against libstdc++ — abseil-cpp, llvm). verify_link toggles
|
||||
// this on after a libstdc++/libc++ link failure. Codegen wraps the
|
||||
// buildInputs entry in the override expression when true.
|
||||
bool requires_libcxx_override = false;
|
||||
|
||||
bool operator==(const Recipe&) const = default;
|
||||
};
|
||||
@@ -43,7 +37,6 @@ struct OverlayRow {
|
||||
std::vector<std::string> targets;
|
||||
std::string source;
|
||||
std::int64_t verified_at = 0;
|
||||
bool requires_libcxx_override = false;
|
||||
};
|
||||
|
||||
// RAII wrapper for an open sqlite3 connection used by the overlay database.
|
||||
@@ -97,13 +90,6 @@ auto overlay_delete_recipe(OverlayState& state, const std::string& package,
|
||||
const std::string& source)
|
||||
-> cargoxx::util::Result<void>;
|
||||
|
||||
// Toggle the libcxx-override flag for an existing row. Used by
|
||||
// `verify_link` after a libstdc++/libc++ link mismatch.
|
||||
auto overlay_set_libcxx_override(OverlayState& state, const std::string& package,
|
||||
const std::string& version_range,
|
||||
const std::string& source, bool value)
|
||||
-> cargoxx::util::Result<void>;
|
||||
|
||||
// Drops every overlay row for `package` whose source is not "manual".
|
||||
// Used by `cargoxx add` to invalidate stale auto-discovered recipes
|
||||
// when the resolver/scanner logic has changed under the user — they
|
||||
@@ -146,11 +132,6 @@ class Database {
|
||||
const std::string& version_range,
|
||||
const std::string& source) -> util::Result<void>;
|
||||
|
||||
auto set_libcxx_override(const std::string& package,
|
||||
const std::string& version_range,
|
||||
const std::string& source, bool value)
|
||||
-> util::Result<void>;
|
||||
|
||||
// Evict every non-manual overlay row for `package`. Called by
|
||||
// `cargoxx add` so users never have to manually drop stale
|
||||
// auto-discovered recipes when cargoxx's resolver/scanner logic
|
||||
|
||||
Reference in New Issue
Block a user