Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/bareos/bareos.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Rogge <andreas.rogge@bareos.com>2022-10-28 13:06:25 +0300
committerAndreas Rogge <andreas.rogge@bareos.com>2022-11-07 19:40:27 +0300
commit00cb0943aaa713ea68d6fbc4ffec15c20483992d (patch)
tree80bd2fac4309272c8b6bbf4f142512c3c7003e53
parente81c6780ad86c133da82b53c59fada5dee433f9b (diff)
stored: statically link backend dependencies
Previously, the baseclasses for generic tape support and chunked devices were built as shared modules. As this code is never shared, we can just link it all into the resulting backends with no drawbacks at all.
-rw-r--r--core/platforms/freebsd/bareos-freebsd/bareos.com-common/pkg-plist.storage-tape1
-rw-r--r--core/platforms/packaging/bareos.spec2
-rw-r--r--core/src/stored/backends/CMakeLists.txt30
-rw-r--r--debian/bareos-storage-droplet.install.in1
-rw-r--r--debian/bareos-storage-tape.install.in1
5 files changed, 6 insertions, 29 deletions
diff --git a/core/platforms/freebsd/bareos-freebsd/bareos.com-common/pkg-plist.storage-tape b/core/platforms/freebsd/bareos-freebsd/bareos.com-common/pkg-plist.storage-tape
index b455bfc63..d1aeae197 100644
--- a/core/platforms/freebsd/bareos-freebsd/bareos.com-common/pkg-plist.storage-tape
+++ b/core/platforms/freebsd/bareos-freebsd/bareos.com-common/pkg-plist.storage-tape
@@ -1,5 +1,4 @@
-lib/libbareossd-gentape.so
lib/libbareossd-tape.so
lib/bareos/scripts/mtx-changer
@sample %%ETCDIR%%/mtx-changer.conf.sample
diff --git a/core/platforms/packaging/bareos.spec b/core/platforms/packaging/bareos.spec
index 0fc9d718c..155d1c8d4 100644
--- a/core/platforms/packaging/bareos.spec
+++ b/core/platforms/packaging/bareos.spec
@@ -1310,7 +1310,6 @@ mkdir -p %{?buildroot}/%{_libdir}/bareos/plugins/vmware_plugin
%files storage-tape
# tape specific files
%defattr(-, root, root)
-%{backend_dir}/libbareossd-gentape*.so
%{backend_dir}/libbareossd-tape*.so
%{script_dir}/mtx-changer
%config(noreplace) %{_sysconfdir}/%{name}/mtx-changer.conf
@@ -1333,7 +1332,6 @@ mkdir -p %{?buildroot}/%{_libdir}/bareos/plugins/vmware_plugin
%if 0%{?droplet}
%files storage-droplet
%defattr(-, root, root)
-%{backend_dir}/libbareossd-chunked*.so
%{backend_dir}/libbareossd-droplet*.so
%{library_dir}/libbareosdroplet.so*
%attr(0640, %{director_daemon_user},%{daemon_group}) %{_sysconfdir}/%{name}/bareos-dir.d/storage/S3_Object.conf.example
diff --git a/core/src/stored/backends/CMakeLists.txt b/core/src/stored/backends/CMakeLists.txt
index b2304f3bc..57fa560af 100644
--- a/core/src/stored/backends/CMakeLists.txt
+++ b/core/src/stored/backends/CMakeLists.txt
@@ -41,29 +41,21 @@ endif()
if(TARGET droplet)
add_sd_backend(bareossd-droplet)
- target_sources(bareossd-droplet PRIVATE droplet_device.cc)
- target_link_libraries(bareossd-droplet PRIVATE droplet)
- target_compile_definitions(
- bareossd-droplet INTERFACE HAVE_BAREOSSD_DROPLET_DEVICE
+ target_sources(
+ bareossd-droplet PRIVATE droplet_device.cc ordered_cbuf.cc
+ chunked_device.cc
)
- if(HAVE_DYNAMIC_SD_BACKENDS)
- add_library(bareossd-chunked SHARED ordered_cbuf.cc chunked_device.cc)
- install(TARGETS bareossd-chunked DESTINATION ${backenddir})
- target_link_libraries(bareossd-droplet PRIVATE bareossd-chunked)
- else()
- target_sources(bareossd-droplet PRIVATE ordered_cbuf.cc chunked_device.cc)
- endif()
-
+ target_link_libraries(bareossd-droplet PRIVATE droplet)
endif()
add_sd_backend(bareossd-file)
add_sd_backend(bareossd-fifo)
add_sd_backend(bareossd-tape)
+target_sources(bareossd-tape PRIVATE generic_tape_device.cc)
if(HAVE_WIN32)
target_sources(bareossd-file PRIVATE win32_file_device.cc)
target_sources(bareossd-fifo PRIVATE win32_fifo_device.cc)
target_sources(bareossd-tape PRIVATE win32_tape_device.cc)
-
target_link_libraries(bareossd-file PRIVATE bareos)
else()
target_sources(bareossd-file PRIVATE unix_file_device.cc)
@@ -71,17 +63,7 @@ else()
target_sources(bareossd-tape PRIVATE unix_tape_device.cc)
endif()
-if(HAVE_DYNAMIC_SD_BACKENDS)
- add_library(bareossd-gentape SHARED generic_tape_device.cc)
- install(TARGETS bareossd-gentape DESTINATION ${backenddir})
- target_link_libraries(bareossd-tape bareossd-gentape)
- if(HAVE_DARWIN_OS)
- target_link_libraries(bareossd-gentape bareos bareossd)
- endif()
-else()
- target_sources(bareossd-tape PRIVATE generic_tape_device.cc)
-endif()
-
if(HAVE_DARWIN_OS)
target_link_libraries(bareossd-fifo bareos bareossd)
+ target_link_libraries(bareossd-gentape bareos bareossd)
endif()
diff --git a/debian/bareos-storage-droplet.install.in b/debian/bareos-storage-droplet.install.in
index 84010ec30..39db51a3f 100644
--- a/debian/bareos-storage-droplet.install.in
+++ b/debian/bareos-storage-droplet.install.in
@@ -1,5 +1,4 @@
@libdir@/libbareosdroplet.so*
-@backenddir@/libbareossd-chunked.so*
@backenddir@/libbareossd-droplet.so*
@configtemplatedir@/bareos-dir.d/storage/S3_Object.conf.example
@configtemplatedir@/bareos-sd.d/device/S3_ObjectStorage.conf.example
diff --git a/debian/bareos-storage-tape.install.in b/debian/bareos-storage-tape.install.in
index cfa0d5e74..8f505071e 100644
--- a/debian/bareos-storage-tape.install.in
+++ b/debian/bareos-storage-tape.install.in
@@ -2,7 +2,6 @@
@configtemplatedir@/bareos-dir.d/storage/Tape.conf.example
@configtemplatedir@/bareos-sd.d/autochanger/autochanger-0.conf.example
@configtemplatedir@/bareos-sd.d/device/tapedrive-0.conf.example
-@backenddir@/libbareossd-gentape.so*
@backenddir@/libbareossd-tape.so*
@plugindir@/scsicrypto-sd.so
@plugindir@/scsitapealert-sd.so