diff options
author | Pierre Bourdon <delroth@gmail.com> | 2024-06-05 06:02:18 +0200 |
---|---|---|
committer | Rebecca Turner <rbt@sent.as> | 2024-08-26 16:27:31 -0700 |
commit | 4f02255c205378427f5831463c0c07e45382b2b2 (patch) | |
tree | 875efcf49a86ced24b37d72587bc4dfb153c4460 /src/libstore/platform | |
parent | ca08f1217d8779971d4f2b306a19ad5622360372 (diff) |
libstore: remove static initializers for Store registrations
Ref #359.
Change-Id: Ia45530ddee25fa9fc399ff10738bb0d8bbc8b221
Diffstat (limited to 'src/libstore/platform')
-rw-r--r-- | src/libstore/platform/darwin.cc | 5 | ||||
-rw-r--r-- | src/libstore/platform/fallback.cc | 4 | ||||
-rw-r--r-- | src/libstore/platform/linux.cc | 4 |
3 files changed, 11 insertions, 2 deletions
diff --git a/src/libstore/platform/darwin.cc b/src/libstore/platform/darwin.cc index 1f7e9be23..078753bff 100644 --- a/src/libstore/platform/darwin.cc +++ b/src/libstore/platform/darwin.cc @@ -261,4 +261,9 @@ void DarwinLocalDerivationGoal::execBuilder(std::string builder, Strings args, S posix_spawn(nullptr, builder.c_str(), nullptr, &attrp, stringsToCharPtrs(args).data(), stringsToCharPtrs(envStrs).data()); } + +void registerLocalStore() { + StoreImplementations::add<DarwinLocalStore, LocalStoreConfig>(); +} + } diff --git a/src/libstore/platform/fallback.cc b/src/libstore/platform/fallback.cc index 5a01d64c8..0593ec204 100644 --- a/src/libstore/platform/fallback.cc +++ b/src/libstore/platform/fallback.cc @@ -1,5 +1,7 @@ #include "platform/fallback.hh" namespace nix { -static RegisterStoreImplementation<FallbackLocalStore, LocalStoreConfig> regLocalStore; +void registerLocalStore() { + Implementations::add<FallbackLocalStore, LocalStoreConfig>(); +} } diff --git a/src/libstore/platform/linux.cc b/src/libstore/platform/linux.cc index 03b8bc0be..f22fbe58f 100644 --- a/src/libstore/platform/linux.cc +++ b/src/libstore/platform/linux.cc @@ -25,7 +25,9 @@ namespace { constexpr const std::string_view nativeSystem = SYSTEM; } -static RegisterStoreImplementation<LinuxLocalStore, LocalStoreConfig> regLocalStore; +void registerLocalStore() { + StoreImplementations::add<LinuxLocalStore, LocalStoreConfig>(); +} static void readProcLink(const std::string & file, UncheckedRoots & roots) { |