From 5971ec8ebab527fa17c91eaebe012d2a89a838db Mon Sep 17 00:00:00 2001
From: munix9 <44939650+munix9@users.noreply.github.com>
Date: Fri, 4 Jun 2021 11:58:23 +0200
Subject: [PATCH] Install e2fsdroid and ext2simg

---
 vendor/CMakeLists.mke2fs.txt | 22 ++++++++++++++++++++++
 vendor/CMakeLists.txt        |  2 +-
 2 files changed, 23 insertions(+), 1 deletion(-)

diff --git a/vendor/CMakeLists.mke2fs.txt b/vendor/CMakeLists.mke2fs.txt
index a8f89fd..f828f8e 100644
--- a/vendor/CMakeLists.mke2fs.txt
+++ b/vendor/CMakeLists.mke2fs.txt
@@ -115,3 +115,25 @@ target_link_libraries("${ANDROID_MKE2FS_NAME}"
 	libext2fs libsparse libbase libzip liblog libutil pthread z)
 target_include_directories("${ANDROID_MKE2FS_NAME}" PRIVATE
 	e2fsprogs/lib)
+
+add_executable(e2fsdroid
+	e2fsprogs/contrib/android/e2fsdroid.c
+	e2fsprogs/contrib/android/basefs_allocator.c
+	e2fsprogs/contrib/android/block_range.c
+	e2fsprogs/contrib/android/base_fs.c
+	e2fsprogs/contrib/android/fsmap.c
+	e2fsprogs/contrib/android/block_list.c
+	e2fsprogs/contrib/android/perms.c)
+
+target_link_libraries(e2fsdroid
+	libext2fs libsparse libzip libcutils liblog libutil libbase libselinux libsepol z pcre2-8 pthread)
+target_include_directories(e2fsdroid PRIVATE
+	e2fsprogs/lib e2fsprogs/lib/ext2fs selinux/libselinux/include core/libcutils/include e2fsprogs/misc)
+
+add_executable(ext2simg
+	e2fsprogs/contrib/android/ext2simg.c)
+
+target_link_libraries(ext2simg
+	libext2fs libsparse libbase libzip liblog libutil z pthread)
+target_include_directories(ext2simg PRIVATE
+	e2fsprogs/lib core/libsparse/include)
diff --git a/vendor/CMakeLists.txt b/vendor/CMakeLists.txt
index 6f1c05b..b540f80 100644
--- a/vendor/CMakeLists.txt
+++ b/vendor/CMakeLists.txt
@@ -63,7 +63,7 @@ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_FILE_OFFSET_BITS=64")
 
 # Targets which should be installed by `make install`.
 install(TARGETS adb fastboot "${ANDROID_MKE2FS_NAME}"
-	simg2img img2simg append2simg DESTINATION bin)
+	simg2img img2simg append2simg e2fsdroid ext2simg DESTINATION bin)
 
 # Install common completion files.
 install(FILES adb/adb.bash RENAME adb DESTINATION "${COMPLETION_COMMON_DIR}")
