sysutils/bareos19-server: fix fs_violations

This is basically the same as the fix for bareos18-server,
although the upstream CMake code has been slightly
reformatted. Don't symlink in /usr/local/lib, do it
in ${DESTDIR}${libdir}, relatively, and fix the .so
versioning while here.
This commit is contained in:
Adriaan de Groot 2021-04-14 00:15:43 +02:00
parent 98e5e22741
commit 343a3e98db
2 changed files with 39 additions and 1 deletions

View file

@ -1,7 +1,7 @@
PORTNAME= bareos
DISTVERSIONPREFIX= Release/
DISTVERSION= 19.2.9
PORTREVISION?= 1
PORTREVISION?= 2
CATEGORIES?= sysutils
PKGNAMEPREFIX?= #
PKGNAMESUFFIX?= 19-server

View file

@ -0,0 +1,38 @@
--- core/cmake/bareos-symlink-default-db-backend.cmake.orig 2020-12-11 13:44:43 UTC
+++ core/cmake/bareos-symlink-default-db-backend.cmake
@@ -16,15 +16,33 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
# 02110-1301, USA.
+
+# The ${libdir} and ${backenddir} are absolute, so figure out
+# a relative path (${backenddir} lives under ${libdir}) instead.
+# Make the link relative, placing the libbareoscats.so in ${libdir}.
+# Within this script, VERSION is set to BAREOS_NUMERIC_VERSION (see
+# core/src/cats/CMakeLists.txt).
message(
STATUS
"${CMAKE_COMMAND} -E create_symlink ${libdir}/libbareoscats${CMAKE_SHARED_LIBRARY_SUFFIX} ${backenddir}/libbareoscats-${default_db_backend}${CMAKE_SHARED_LIBRARY_SUFFIX}"
)
+file(
+ RELATIVE_PATH
+ _rel
+ ${libdir}
+ ${backenddir}/libbareoscats-${default_db_backend}${CMAKE_SHARED_LIBRARY_SUFFIX}
+)
+message(
+ STATUS
+ ".. actually ${_rel} in $ENV{DESTDIR} v ${VERSION}"
+)
+
execute_process(
COMMAND
${CMAKE_COMMAND}
-E
create_symlink
- ${backenddir}/libbareoscats-${default_db_backend}${CMAKE_SHARED_LIBRARY_SUFFIX}
- ${libdir}/libbareoscats${CMAKE_SHARED_LIBRARY_SUFFIX}.${BAREOS_NUMERIC_VERSION}
+ ${_rel}
+ libbareoscats${CMAKE_SHARED_LIBRARY_SUFFIX}.${VERSION}
+ WORKING_DIRECTORY $ENV{DESTDIR}${libdir} COMMAND_ECHO STDOUT
)