lib: Build libgnomesoftware as a shared library as well as static
See merge request GNOME/gnome-software!601
2ae8f99...
by
Philip Withnall <email address hidden>
contrib: Update plugin API version to match meson.build
This was missing from commit cea6300e8a.
Signed-off-by: Philip Withnall <email address hidden>
f637338...
by
Philip Withnall <email address hidden>
build: Move plugins to a subdirectory of the private libdir
Now they’re installed in
`$(prefix)/lib/gnome-software/plugins-$(api_version)` rather than
`$(prefix)/lib/gs-plugins-$(api_version)`, which makes things a bit
neater.
Signed-off-by: Philip Withnall <email address hidden>
8b8ebbe...
by
Philip Withnall <email address hidden>
lib: Drop outdated and unused pkgconfig file template
The pkgconfig file is generated using Meson’s `pkg.generate()` function
now.
Signed-off-by: Philip Withnall <email address hidden>
e7170b5...
by
Philip Withnall <email address hidden>
contrib: Factor out common dir path in gnome-software.spec.in
This introduces no functional changes, but will make the next commit a
bit tidier.
Signed-off-by: Philip Withnall <email address hidden>
4982110...
by
Philip Withnall <email address hidden>
lib: Build libgnomesoftware as a shared library as well as static
This means it can be linked to the plugins dynamically. This reduces the
installed plugin size by 50% (and correspondingly the disk reads and
memory for loading them). It doesn’t measurably affect startup time, and
overall reduces memory consumption by about 5% (although almost all of
that will be read-only mappings of the code).
Install the shared library in a private libdir to emphasise the fact
it’s not API-stable. This requires adding to the rpath for executables
which use it.
This changes the installation location for the static library to be in
the private libdir as well. The build processes of external plugins may
need to be modified to track this.
Signed-off-by: Philip Withnall <email address hidden>
f33c7c7...
by
Philip Withnall <email address hidden>
odrs: Add missing libm dependency
It was previously pulled in via libgnomesoftware, but shortly will no
longer be, as libgnomesoftware is going dynamic.
Signed-off-by: Philip Withnall <email address hidden>