summaryrefslogtreecommitdiff
path: root/image/backends/basic.cc
diff options
context:
space:
mode:
authorA. Wilcox <AWilcox@Wilcox-Tech.com>2020-04-02 21:41:11 -0500
committerA. Wilcox <AWilcox@Wilcox-Tech.com>2020-04-02 21:41:11 -0500
commitcd52d492ec08810fa0ba2425d5e01618a2e8741a (patch)
tree58597907a0e00d2acd0da28a2d46fb0898917da4 /image/backends/basic.cc
parentb9fa31365c91cfcbc891b36b411d3adc296ff6df (diff)
downloadhorizon-cd52d492ec08810fa0ba2425d5e01618a2e8741a.tar.gz
horizon-cd52d492ec08810fa0ba2425d5e01618a2e8741a.tar.bz2
horizon-cd52d492ec08810fa0ba2425d5e01618a2e8741a.tar.xz
horizon-cd52d492ec08810fa0ba2425d5e01618a2e8741a.zip
image: Truly dynamic backend registration
This allows one backend to provide multiple types. For example, our TarBackend can provide optional .gz, .bz2, and .xz compression.
Diffstat (limited to 'image/backends/basic.cc')
-rw-r--r--image/backends/basic.cc6
1 files changed, 2 insertions, 4 deletions
diff --git a/image/backends/basic.cc b/image/backends/basic.cc
index bec3e41..0aa1afa 100644
--- a/image/backends/basic.cc
+++ b/image/backends/basic.cc
@@ -15,10 +15,8 @@
namespace Horizon {
namespace Image {
-std::vector<BackendDescriptor> known_backends = {
- {"tar", "Create a tarball (.tar)", [](std::string, std::string){ return nullptr; } },
- {"squashfs", "Create a SquashFS image (.squashfs)", [](std::string, std::string){ return nullptr; } }
-};
+std::vector<BackendDescriptor> known_backends
+__attribute__ ((init_priority(200)));
const std::vector<BackendDescriptor> BackendManager::available_backends() {
return known_backends;