From 83da3bb1e8c7db5434ae77a16415003367df0a3a Mon Sep 17 00:00:00 2001 From: Aleksey Kulikov Date: Tue, 1 Jun 2021 20:40:31 +0300 Subject: [PATCH] feat: add utilities for library --- lib/src/util.dart | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 lib/src/util.dart diff --git a/lib/src/util.dart b/lib/src/util.dart new file mode 100644 index 0000000..94fd18b --- /dev/null +++ b/lib/src/util.dart @@ -0,0 +1,21 @@ +import 'dart:ffi'; +import 'dart:io'; +import 'bindings/libgit2_bindings.dart'; + +DynamicLibrary loadLibrary() { + if (Platform.isLinux || Platform.isAndroid || Platform.isFuchsia) { + return DynamicLibrary.open( + '${Directory.current.path}/libgit2-1.1.0/libgit2.so'); + } + if (Platform.isMacOS) { + return DynamicLibrary.open( + '${Directory.current.path}/libgit2-1.1.0/libgit2.dylib'); + } + if (Platform.isWindows) { + return DynamicLibrary.open( + '${Directory.current.path}/libgit2-1.1.0/libgit2.dll'); + } + throw Exception('Platform not implemented'); +} + +final libgit2 = Libgit2(loadLibrary());