From 01c772cc8d05869ac22a23afec28c0e3da993529 Mon Sep 17 00:00:00 2001 From: Marcus Tomlinson Date: Thu, 18 Mar 2021 16:14:44 +0000 Subject: [PATCH] Revert "Add libblkid / liblzma / libgcrypt as an explicit dependancy on Linux" (#78415) * Revert "Add libgcrypt as an explicit dependancy on Linux" This reverts commit bf65b3d03ccdc1dd21c09f34d600d72b0636a784. * libblkid & liblzma not explicitly required either --- .../linux/flutter/CMakeLists.txt | 2 - .../lib/src/base/user_messages.dart | 6 - .../lib/src/linux/linux_doctor.dart | 12 -- .../app/linux.tmpl/flutter/CMakeLists.txt | 6 - .../linux/linux_doctor_test.dart | 117 ------------------ 5 files changed, 143 deletions(-) diff --git a/dev/integration_tests/flutter_gallery/linux/flutter/CMakeLists.txt b/dev/integration_tests/flutter_gallery/linux/flutter/CMakeLists.txt index 5b465c7ecf..33fd5801e7 100644 --- a/dev/integration_tests/flutter_gallery/linux/flutter/CMakeLists.txt +++ b/dev/integration_tests/flutter_gallery/linux/flutter/CMakeLists.txt @@ -24,7 +24,6 @@ find_package(PkgConfig REQUIRED) pkg_check_modules(GTK REQUIRED IMPORTED_TARGET gtk+-3.0) pkg_check_modules(GLIB REQUIRED IMPORTED_TARGET glib-2.0) pkg_check_modules(GIO REQUIRED IMPORTED_TARGET gio-2.0) -pkg_check_modules(BLKID REQUIRED IMPORTED_TARGET blkid) set(FLUTTER_LIBRARY "${EPHEMERAL_DIR}/libflutter_linux_gtk.so") @@ -66,7 +65,6 @@ target_link_libraries(flutter INTERFACE PkgConfig::GTK PkgConfig::GLIB PkgConfig::GIO - PkgConfig::BLKID ) add_dependencies(flutter flutter_assemble) diff --git a/packages/flutter_tools/lib/src/base/user_messages.dart b/packages/flutter_tools/lib/src/base/user_messages.dart index dd6390dd71..568151ec98 100644 --- a/packages/flutter_tools/lib/src/base/user_messages.dart +++ b/packages/flutter_tools/lib/src/base/user_messages.dart @@ -232,12 +232,6 @@ class UserMessages { String pkgConfigTooOld(String minimumVersion) => 'pkg-config $minimumVersion or later is required.'; String get gtkLibrariesMissing => 'GTK 3.0 development libraries are required for Linux development.\n' 'They are likely available from your distribution (e.g.: apt install libgtk-3-dev)'; - String get blkidLibraryMissing => 'The blkid development library is required for Linux development.\n' - 'It is likely available from your distribution (e.g.: apt install libblkid-dev)'; - String get lzmaLibraryMissing => 'The lzma development library is required for Linux development.\n' - 'It is likely available from your distribution (e.g.: apt install liblzma-dev)'; - String get gcryptLibraryMissing => 'The gcrypt development library is required for Linux development.\n' - 'It is likely available from your distribution (e.g.: apt install libgcrypt20-dev)'; // Messages used in FlutterCommand String flutterElapsedTime(String name, String elapsedTime) => '"flutter $name" took $elapsedTime.'; diff --git a/packages/flutter_tools/lib/src/linux/linux_doctor.dart b/packages/flutter_tools/lib/src/linux/linux_doctor.dart index 25513539ed..27df6bdfc5 100644 --- a/packages/flutter_tools/lib/src/linux/linux_doctor.dart +++ b/packages/flutter_tools/lib/src/linux/linux_doctor.dart @@ -151,18 +151,6 @@ class LinuxDoctorValidator extends DoctorValidator { messages.add(ValidationMessage.error(_userMessages.gtkLibrariesMissing)); } } - if (!await _libraryIsPresent('blkid')) { - validationType = ValidationType.missing; - messages.add(ValidationMessage.error(_userMessages.blkidLibraryMissing)); - } - if (!await _libraryIsPresent('liblzma')) { - validationType = ValidationType.missing; - messages.add(ValidationMessage.error(_userMessages.lzmaLibraryMissing)); - } - if (!await _libraryIsPresent('libgcrypt')) { - validationType = ValidationType.missing; - messages.add(ValidationMessage.error(_userMessages.gcryptLibraryMissing)); - } return ValidationResult(validationType, messages); } diff --git a/packages/flutter_tools/templates/app/linux.tmpl/flutter/CMakeLists.txt b/packages/flutter_tools/templates/app/linux.tmpl/flutter/CMakeLists.txt index 864cc5a5d2..33fd5801e7 100644 --- a/packages/flutter_tools/templates/app/linux.tmpl/flutter/CMakeLists.txt +++ b/packages/flutter_tools/templates/app/linux.tmpl/flutter/CMakeLists.txt @@ -24,9 +24,6 @@ find_package(PkgConfig REQUIRED) pkg_check_modules(GTK REQUIRED IMPORTED_TARGET gtk+-3.0) pkg_check_modules(GLIB REQUIRED IMPORTED_TARGET glib-2.0) pkg_check_modules(GIO REQUIRED IMPORTED_TARGET gio-2.0) -pkg_check_modules(BLKID REQUIRED IMPORTED_TARGET blkid) -pkg_check_modules(LZMA REQUIRED IMPORTED_TARGET liblzma) -pkg_check_modules(GCRYPT REQUIRED IMPORTED_TARGET libgcrypt) set(FLUTTER_LIBRARY "${EPHEMERAL_DIR}/libflutter_linux_gtk.so") @@ -68,9 +65,6 @@ target_link_libraries(flutter INTERFACE PkgConfig::GTK PkgConfig::GLIB PkgConfig::GIO - PkgConfig::BLKID - PkgConfig::LZMA - PkgConfig::GCRYPT ) add_dependencies(flutter flutter_assemble) diff --git a/packages/flutter_tools/test/general.shard/linux/linux_doctor_test.dart b/packages/flutter_tools/test/general.shard/linux/linux_doctor_test.dart index 7938fc2094..4a62d3c3df 100644 --- a/packages/flutter_tools/test/general.shard/linux/linux_doctor_test.dart +++ b/packages/flutter_tools/test/general.shard/linux/linux_doctor_test.dart @@ -100,9 +100,6 @@ void main() { _ninjaPresentCommand('1.10.0'), _pkgConfigPresentCommand('0.29'), ..._gtkLibrariesPresentCommands(), - _libraryCheckCommand('blkid'), - _libraryCheckCommand('liblzma'), - _libraryCheckCommand('libgcrypt'), ]); final DoctorValidator linuxDoctorValidator = LinuxDoctorValidator( processManager: processManager, @@ -126,9 +123,6 @@ void main() { _ninjaPresentCommand('1.10.0'), _pkgConfigPresentCommand('0.29'), ..._gtkLibrariesPresentCommands(), - _libraryCheckCommand('blkid'), - _libraryCheckCommand('liblzma'), - _libraryCheckCommand('libgcrypt'), ]); final DoctorValidator linuxDoctorValidator = LinuxDoctorValidator( processManager: processManager, @@ -153,9 +147,6 @@ void main() { _ninjaPresentCommand('1.10.0'), _pkgConfigPresentCommand('0.29'), ..._gtkLibrariesPresentCommands(), - _libraryCheckCommand('blkid'), - _libraryCheckCommand('liblzma'), - _libraryCheckCommand('libgcrypt'), ]); final DoctorValidator linuxDoctorValidator = LinuxDoctorValidator( processManager: processManager, @@ -180,9 +171,6 @@ void main() { _ninjaPresentCommand('0.8.1'), _pkgConfigPresentCommand('0.29'), ..._gtkLibrariesPresentCommands(), - _libraryCheckCommand('blkid'), - _libraryCheckCommand('liblzma'), - _libraryCheckCommand('libgcrypt'), ]); final DoctorValidator linuxDoctorValidator = LinuxDoctorValidator( processManager: processManager, @@ -207,9 +195,6 @@ void main() { _ninjaPresentCommand('1.10.0'), _pkgConfigPresentCommand('0.27.0'), ..._gtkLibrariesPresentCommands(), - _libraryCheckCommand('blkid'), - _libraryCheckCommand('liblzma'), - _libraryCheckCommand('libgcrypt'), ]); final DoctorValidator linuxDoctorValidator = LinuxDoctorValidator( processManager: processManager, @@ -234,9 +219,6 @@ void main() { _ninjaPresentCommand('1.10.0'), _pkgConfigPresentCommand('0.29'), ..._gtkLibrariesPresentCommands(), - _libraryCheckCommand('blkid'), - _libraryCheckCommand('liblzma'), - _libraryCheckCommand('libgcrypt'), ]); final UserMessages userMessages = UserMessages(); final DoctorValidator linuxDoctorValidator = LinuxDoctorValidator( @@ -261,9 +243,6 @@ void main() { _ninjaPresentCommand('1.10.0'), _pkgConfigPresentCommand('0.29'), ..._gtkLibrariesPresentCommands(), - _libraryCheckCommand('blkid'), - _libraryCheckCommand('liblzma'), - _libraryCheckCommand('libgcrypt'), ]); final UserMessages userMessages = UserMessages(); final DoctorValidator linuxDoctorValidator = LinuxDoctorValidator( @@ -288,9 +267,6 @@ void main() { _missingBinaryCommand('ninja'), _pkgConfigPresentCommand('0.29'), ..._gtkLibrariesPresentCommands(), - _libraryCheckCommand('blkid'), - _libraryCheckCommand('liblzma'), - _libraryCheckCommand('libgcrypt'), ]); final UserMessages userMessages = UserMessages(); final DoctorValidator linuxDoctorValidator = LinuxDoctorValidator( @@ -315,9 +291,6 @@ void main() { _ninjaPresentCommand('1.10.0'), _missingBinaryCommand('pkg-config'), ..._gtkLibrariesPresentCommands(), - _libraryCheckCommand('blkid'), - _libraryCheckCommand('liblzma'), - _libraryCheckCommand('libgcrypt'), ]); final UserMessages userMessages = UserMessages(); final DoctorValidator linuxDoctorValidator = LinuxDoctorValidator( @@ -342,9 +315,6 @@ void main() { _ninjaPresentCommand('1.10.0'), _pkgConfigPresentCommand('0.29'), ..._gtkLibrariesMissingCommands(), - _libraryCheckCommand('blkid'), - _libraryCheckCommand('liblzma'), - _libraryCheckCommand('libgcrypt'), ]); final UserMessages userMessages = UserMessages(); final DoctorValidator linuxDoctorValidator = LinuxDoctorValidator( @@ -363,90 +333,6 @@ void main() { ]); }); - testWithoutContext('Missing validation when blkid is not available', () async { - final ProcessManager processManager = FakeProcessManager.list([ - _clangPresentCommand('4.0.1'), - _cmakePresentCommand('3.16.3'), - _ninjaPresentCommand('1.10.0'), - _pkgConfigPresentCommand('0.29'), - ..._gtkLibrariesPresentCommands(), - _libraryCheckCommand('blkid', exists: false), - _libraryCheckCommand('liblzma'), - _libraryCheckCommand('libgcrypt'), - ]); - final UserMessages userMessages = UserMessages(); - final DoctorValidator linuxDoctorValidator = LinuxDoctorValidator( - processManager: processManager, - userMessages: userMessages, - ); - final ValidationResult result = await linuxDoctorValidator.validate(); - - expect(result.type, ValidationType.missing); - expect(result.messages, [ - const ValidationMessage('clang version 4.0.1-6+build1'), - const ValidationMessage('cmake version 3.16.3'), - const ValidationMessage('ninja version 1.10.0'), - const ValidationMessage('pkg-config version 0.29'), - ValidationMessage.error(userMessages.blkidLibraryMissing), - ]); - }); - - testWithoutContext('Missing validation when liblzma is not available', () async { - final ProcessManager processManager = FakeProcessManager.list([ - _clangPresentCommand('4.0.1'), - _cmakePresentCommand('3.16.3'), - _ninjaPresentCommand('1.10.0'), - _pkgConfigPresentCommand('0.29'), - ..._gtkLibrariesPresentCommands(), - _libraryCheckCommand('blkid'), - _libraryCheckCommand('liblzma', exists: false), - _libraryCheckCommand('libgcrypt'), - ]); - final UserMessages userMessages = UserMessages(); - final DoctorValidator linuxDoctorValidator = LinuxDoctorValidator( - processManager: processManager, - userMessages: userMessages, - ); - final ValidationResult result = await linuxDoctorValidator.validate(); - - expect(result.type, ValidationType.missing); - expect(result.messages, [ - const ValidationMessage('clang version 4.0.1-6+build1'), - const ValidationMessage('cmake version 3.16.3'), - const ValidationMessage('ninja version 1.10.0'), - const ValidationMessage('pkg-config version 0.29'), - ValidationMessage.error(userMessages.lzmaLibraryMissing), - ]); - }); - - testWithoutContext('Missing validation when libgcrypt is not available', () async { - final ProcessManager processManager = FakeProcessManager.list([ - _clangPresentCommand('4.0.1'), - _cmakePresentCommand('3.16.3'), - _ninjaPresentCommand('1.10.0'), - _pkgConfigPresentCommand('0.29'), - ..._gtkLibrariesPresentCommands(), - _libraryCheckCommand('blkid'), - _libraryCheckCommand('liblzma'), - _libraryCheckCommand('libgcrypt', exists: false), - ]); - final UserMessages userMessages = UserMessages(); - final DoctorValidator linuxDoctorValidator = LinuxDoctorValidator( - processManager: processManager, - userMessages: userMessages, - ); - final ValidationResult result = await linuxDoctorValidator.validate(); - - expect(result.type, ValidationType.missing); - expect(result.messages, [ - const ValidationMessage('clang version 4.0.1-6+build1'), - const ValidationMessage('cmake version 3.16.3'), - const ValidationMessage('ninja version 1.10.0'), - const ValidationMessage('pkg-config version 0.29'), - ValidationMessage.error(userMessages.gcryptLibraryMissing), - ]); - }); - testWithoutContext('Missing validation when multiple dependencies are not available', () async { final ProcessManager processManager = FakeProcessManager.list([ _missingBinaryCommand('clang++'), @@ -454,9 +340,6 @@ void main() { _ninjaPresentCommand('1.10.0'), _pkgConfigPresentCommand('0.29'), ..._gtkLibrariesPresentCommands(), - _libraryCheckCommand('blkid'), - _libraryCheckCommand('liblzma'), - _libraryCheckCommand('libgcrypt'), ]); final DoctorValidator linuxDoctorValidator = LinuxDoctorValidator( processManager: processManager,