Update copyright dates
[src/app-framework-binder.git] / src / afb-api-so-v3.c
index 727e9b6..66ccb15 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2018 "IoT.bzh"
+ * Copyright (C) 2015-2020 "IoT.bzh"
  * Author José Bollo <jose.bollo@iot.bzh>
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
@@ -15,6 +15,8 @@
  * limitations under the License.
  */
 
+#if WITH_DYNAMIC_BINDING
+
 #define _GNU_SOURCE
 
 #include <stdlib.h>
@@ -73,16 +75,16 @@ int afb_api_so_v3_add(const char *path, void *handle, struct afb_apiset *declare
        struct afb_api_v3 *api;
        struct afb_export *export;
 
-       /* retrieves the register function */
-       a.root = dlsym(handle, afb_api_so_v3_root);
+       /* retrieves important exported symbols */
        a.desc = dlsym(handle, afb_api_so_v3_desc);
        a.entry = dlsym(handle, afb_api_so_v3_entry);
-       if (!a.root && !a.desc && !a.entry)
+       if (!a.desc && !a.entry)
                return 0;
 
        INFO("binding [%s] looks like an AFB binding V3", path);
 
        /* basic checks */
+       a.root = dlsym(handle, afb_api_so_v3_root);
        if (!a.root) {
                ERROR("binding [%s] incomplete symbol set: %s is missing",
                        path, afb_api_so_v3_root);
@@ -135,3 +137,4 @@ error:
        return -1;
 }
 
+#endif