From f8c7c81d097f5c8e229e5d48cc6dd0bfa1fd3b03 Mon Sep 17 00:00:00 2001 From: Aleksey Kulikov Date: Wed, 27 Oct 2021 12:44:49 +0300 Subject: [PATCH] feat: add support for windows (#2) and macos (#3) --- bin/setup.dart | 2 +- lib/src/util.dart | 16 ++++------------ 2 files changed, 5 insertions(+), 13 deletions(-) diff --git a/bin/setup.dart b/bin/setup.dart index b1b316b..223a0c6 100644 --- a/bin/setup.dart +++ b/bin/setup.dart @@ -8,7 +8,7 @@ import 'package:libgit2dart/src/util.dart'; bool libgit2IsPresent(String platform) { final result = File.fromUri( Directory.current.uri - .resolve('.dart_tool/libgit2/$platform/${getLibName(platform)}'), + .resolve('.dart_tool/libgit2/$platform/${getLibName()}'), ).existsSync(); return result; } diff --git a/lib/src/util.dart b/lib/src/util.dart index 3e9b91a..b96b7b1 100644 --- a/lib/src/util.dart +++ b/lib/src/util.dart @@ -13,7 +13,7 @@ const libUrl = const libgit2Version = '1.3.0'; const libDir = '.dart_tool/libgit2/'; -String getLibName(String platform) { +String getLibName() { var ext = 'so'; if (Platform.isWindows) { @@ -34,7 +34,7 @@ bool _doesFileExist(Uri uri) { String? _resolveLibUri(String name) { var libUri = Directory.current.uri.resolve(name); - final dartTool = '.dart_tool/libgit2/${Platform.operatingSystem}'; + final dartToolDir = '$libDir${Platform.operatingSystem}'; // If lib is in Present Working Directory. if (_doesFileExist(libUri)) { @@ -42,7 +42,7 @@ String? _resolveLibUri(String name) { } // If lib is in Present Working Directory's .dart_tool folder. - libUri = Directory.current.uri.resolve('$dartTool/$name'); + libUri = Directory.current.uri.resolve('$dartToolDir/$name'); if (_doesFileExist(libUri)) { return libUri.toFilePath(windows: Platform.isWindows); } @@ -71,17 +71,9 @@ DynamicLibrary loadLibrary(String name) { logger.stdout(ansi.none); rethrow; } - // if (Platform.isMacOS) { - // return DynamicLibrary.open( - // '${Directory.current.path}/libgit2/libgit2-1.2.0.dylib'); - // } - // if (Platform.isWindows) { - // return DynamicLibrary.open( - // '${Directory.current.path}/libgit2/libgit2-1.2.0.dll'); - // } } -final libgit2 = Libgit2(loadLibrary(getLibName(Platform.operatingSystem))); +final libgit2 = Libgit2(loadLibrary(getLibName())); String getVersionNumber() { libgit2.git_libgit2_init();