From babf6bd1b80a1301996e131cb443661dc86ac46e Mon Sep 17 00:00:00 2001
From: Alex <akreft@trineo.org>
Date: Thu, 29 Jul 2021 11:11:56 +0200
Subject: [PATCH] check for system-dependant names of libraries

---
 src/CaosDB.jl | 22 +++++++++++-----------
 1 file changed, 11 insertions(+), 11 deletions(-)

diff --git a/src/CaosDB.jl b/src/CaosDB.jl
index 5d09f41..d60f0b4 100644
--- a/src/CaosDB.jl
+++ b/src/CaosDB.jl
@@ -57,7 +57,7 @@ instead.
 function get_env_var(var::AbstractString, default::AbstractString = "")
 
     ret = ccall(
-        (:caosdb_utility_get_env_var, "libccaosdb"),
+        (:caosdb_utility_get_env_var, (@static Sys.iswindows() ? "ccaosdb" : "libccaosdb")),
         Cstring,
         (Cstring, Cstring),
         var,
@@ -89,7 +89,7 @@ mutable struct _Authenticator
             if t.wrapped_authenticator != C_NULL
                 # Only if pointer was filled after real initialization
                 ccall(
-                    (:caosdb_authentication_delete_authenticator, "libccaosdb"),
+                    (:caosdb_authentication_delete_authenticator, (@static Sys.iswindows() ? "ccaosdb" : "libccaosdb")),
                     Cint,
                     (Ref{_Authenticator},),
                     Ref{_Authenticator}(t),
@@ -118,7 +118,7 @@ function create_plain_password_authenticator(
     auth = Ref{_Authenticator}(_Authenticator())
 
     err_code = ccall(
-        (:caosdb_authentication_create_plain_password_authenticator, "libccaosdb"),
+        (:caosdb_authentication_create_plain_password_authenticator, (@static Sys.iswindows() ? "ccaosdb" : "libccaosdb")),
         Cint,
         (Ref{_Authenticator}, Cstring, Cstring),
         auth,
@@ -158,7 +158,7 @@ mutable struct _Connection
         function f(t)
             if t.wrapped_connection != C_NULL
                 ccall(
-                    (:caosdb_connection_delete_connection, "libccaosdb"),
+                    (:caosdb_connection_delete_connection, (@static Sys.iswindows() ? "ccaosdb" : "libccaosdb")),
                     Cint,
                     (Ref{_Connection},),
                     Ref{_Connection}(t),
@@ -184,7 +184,7 @@ mutable struct _CertificateProvider
         function f(t)
             if t.wrapped_certificate_provider != C_NULL
                 ccall(
-                    (:caosdb_connection_delete_certificate_provider, "libccaosdb"),
+                    (:caosdb_connection_delete_certificate_provider, (@static Sys.iswindows() ? "ccaosdb" : "libccaosdb")),
                     Cint,
                     (Ref{_CertificateProvider},),
                     Ref{_CertificateProvider}(t),
@@ -210,7 +210,7 @@ mutable struct _Configuration
         function f(t)
             if t.wrapped_connection_configuration != C_NULL
                 ccall(
-                    (:caosdb_connection_delete_connection_configuration, "libccaosdb"),
+                    (:caosdb_connection_delete_connection_configuration, (@static Sys.iswindows() ? "ccaosdb" : "libccaosdb")),
                     Cint,
                     (Ref{_Configuration},),
                     Ref{_Configuration}(t),
@@ -232,7 +232,7 @@ function create_pem_file_certificate_provider(path::AbstractString)
     cert_provider = Ref{_CertificateProvider}(_CertificateProvider())
 
     err_code = ccall(
-        (:caosdb_connection_create_pem_file_certificate_provider, "libccaosdb"),
+        (:caosdb_connection_create_pem_file_certificate_provider, (@static Sys.iswindows() ? "ccaosdb" : "libccaosdb")),
         Cint,
         (Ref{_CertificateProvider}, Cstring),
         cert_provider,
@@ -269,7 +269,7 @@ function create_tls_connection_configuration(
     config = Ref{_Configuration}(_Configuration())
 
     err_code = ccall(
-        (:caosdb_connection_create_tls_connection_configuration, "libccaosdb"),
+        (:caosdb_connection_create_tls_connection_configuration, (@static Sys.iswindows() ? "ccaosdb" : "libccaosdb")),
         Cint,
         (
             Ref{_Configuration},
@@ -300,7 +300,7 @@ function create_insecure_connection_configuration(host::AbstractString, port::Ci
     config = Ref{_Configuration}(_Configuration())
 
     err_code = ccall(
-        (:caosdb_connection_create_insecure_connection_configuration, "libccaosdb"),
+        (:caosdb_connection_create_insecure_connection_configuration, (@static Sys.iswindows() ? "ccaosdb" : "libccaosdb")),
         Cint,
         (Ref{_Configuration}, Cstring, Cint),
         config,
@@ -327,7 +327,7 @@ function create_connection(config::Ref{_Configuration})
     connection = Ref{_Connection}(_Connection())
 
     err_code = ccall(
-        (:caosdb_connection_create_connection, "libccaosdb"),
+        (:caosdb_connection_create_connection, (@static Sys.iswindows() ? "ccaosdb" : "libccaosdb")),
         Cint,
         (Ref{_Connection}, Ref{_Configuration}),
         connection,
@@ -355,7 +355,7 @@ function get_version_info(con::Ref{_Connection})
     info = Ref{CaosDB.Info._VersionInfo}(CaosDB.Info._VersionInfo())
 
     err_code = ccall(
-        (:caosdb_connection_get_version_info, "libccaosdb"),
+        (:caosdb_connection_get_version_info, (@static Sys.iswindows() ? "ccaosdb" : "libccaosdb")),
         Cint,
         (Ref{CaosDB.Info._VersionInfo}, Ref{_Connection}),
         info,
-- 
GitLab