lib: Introduce versioned symbols
As rpm-ostree evolves, it keeps driving API additions to libostree. This creates a relatively tight coupling. However, if delivering via e.g. RPM, unless one manually remembers to increment the `Requires:` in the spec file, it's possible for the two to become desynchronized. RPM handles versioned symbols and will ensure a dependency if the application starts using a newer version. To implement this, switch to `-fvisibility=hidden`, along with an annotation in the header, and finally add a `.sym` file. This matches what other projects like systemd and libvirt do. Although rather than attempting to retroactively version symbols, glom them all onto the current one.
This commit is contained in:
1 parent
2badf36cfd
commit
16979cc5ed
19 files changed
+608
-13
No files matched your search
@@ -42,32 +42,42 @@ typedef enum {
|
||||
OSTREE_SYSROOT_UPGRADER_FLAGS_IGNORE_UNCONFIGURED = (1 << 1),
|
||||
} OstreeSysrootUpgraderFlags;
|
||||
|
||||
_OSTREE_PUBLIC
|
||||
GType ostree_sysroot_upgrader_get_type (void);
|
||||
|
||||
_OSTREE_PUBLIC
|
||||
GType ostree_sysroot_upgrader_flags_get_type (void);
|
||||
|
||||
_OSTREE_PUBLIC
|
||||
OstreeSysrootUpgrader *ostree_sysroot_upgrader_new (OstreeSysroot *sysroot,
|
||||
GCancellable *cancellable,
|
||||
GError **error);
|
||||
|
||||
_OSTREE_PUBLIC
|
||||
OstreeSysrootUpgrader *ostree_sysroot_upgrader_new_for_os (OstreeSysroot *sysroot,
|
||||
const char *osname,
|
||||
GCancellable *cancellable,
|
||||
GError **error);
|
||||
|
||||
_OSTREE_PUBLIC
|
||||
OstreeSysrootUpgrader *ostree_sysroot_upgrader_new_for_os_with_flags (OstreeSysroot *sysroot,
|
||||
const char *osname,
|
||||
OstreeSysrootUpgraderFlags flags,
|
||||
GCancellable *cancellable,
|
||||
GError **error);
|
||||
|
||||
_OSTREE_PUBLIC
|
||||
GKeyFile *ostree_sysroot_upgrader_get_origin (OstreeSysrootUpgrader *self);
|
||||
_OSTREE_PUBLIC
|
||||
GKeyFile *ostree_sysroot_upgrader_dup_origin (OstreeSysrootUpgrader *self);
|
||||
_OSTREE_PUBLIC
|
||||
gboolean ostree_sysroot_upgrader_set_origin (OstreeSysrootUpgrader *self, GKeyFile *origin,
|
||||
GCancellable *cancellable, GError **error);
|
||||
|
||||
_OSTREE_PUBLIC
|
||||
char *ostree_sysroot_upgrader_get_origin_description (OstreeSysrootUpgrader *self);
|
||||
|
||||
_OSTREE_PUBLIC
|
||||
gboolean ostree_sysroot_upgrader_check_timestamps (OstreeRepo *repo,
|
||||
const char *from_rev,
|
||||
const char *to_rev,
|
||||
@@ -78,6 +88,7 @@ typedef enum {
|
||||
OSTREE_SYSROOT_UPGRADER_PULL_FLAGS_ALLOW_OLDER = (1 << 0)
|
||||
} OstreeSysrootUpgraderPullFlags;
|
||||
|
||||
_OSTREE_PUBLIC
|
||||
gboolean ostree_sysroot_upgrader_pull (OstreeSysrootUpgrader *self,
|
||||
OstreeRepoPullFlags flags,
|
||||
OstreeSysrootUpgraderPullFlags upgrader_flags,
|
||||
@@ -86,6 +97,7 @@ gboolean ostree_sysroot_upgrader_pull (OstreeSysrootUpgrader *self,
|
||||
GCancellable *cancellable,
|
||||
GError **error);
|
||||
|
||||
_OSTREE_PUBLIC
|
||||
gboolean ostree_sysroot_upgrader_pull_one_dir (OstreeSysrootUpgrader *self,
|
||||
const char *dir_to_pull,
|
||||
OstreeRepoPullFlags flags,
|
||||
@@ -95,6 +107,7 @@ gboolean ostree_sysroot_upgrader_pull_one_dir (OstreeSysrootUpgrader *self,
|
||||
GCancellable *cancellable,
|
||||
GError **error);
|
||||
|
||||
_OSTREE_PUBLIC
|
||||
gboolean ostree_sysroot_upgrader_deploy (OstreeSysrootUpgrader *self,
|
||||
GCancellable *cancellable,
|
||||
GError **error);
|
||||
|
||||
Reference in new issue
Block a user