[arch-commits] Commit in android-tools/trunk (4 files)
Anatol Pomozov
anatolik at archlinux.org
Fri Jan 19 23:05:43 UTC 2018
Date: Friday, January 19, 2018 @ 23:05:42
Author: anatolik
Revision: 284249
upgpkg: android-tools 8.1.0_r7-1
FS#56955 add Android specific mke2fs, e2fsdroid, ext2simg tools. Patch fastboot to use custom mke2fs.
Added:
android-tools/trunk/fix_build_e2fsprogs.patch
Modified:
android-tools/trunk/PKGBUILD
android-tools/trunk/fix_build_core.patch
android-tools/trunk/generate_build.rb
---------------------------+
PKGBUILD | 15 +++-
fix_build_core.patch | 13 ++++
fix_build_e2fsprogs.patch | 43 +++++++++++++
generate_build.rb | 141 +++++++++++++++++++++++++++++++++++++++++++-
4 files changed, 207 insertions(+), 5 deletions(-)
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2018-01-19 23:03:25 UTC (rev 284248)
+++ PKGBUILD 2018-01-19 23:05:42 UTC (rev 284249)
@@ -4,7 +4,7 @@
# Contributor: Alucryd <alucryd at gmail dot com>
pkgname=android-tools
-pkgver=8.1.0_r1
+pkgver=8.1.0_r7
pkgrel=1
pkgdesc='Android platform tools'
arch=(x86_64)
@@ -18,10 +18,12 @@
git+https://android.googlesource.com/platform/system/extras#tag=android-$pkgver
git+https://android.googlesource.com/platform/external/selinux#tag=android-$pkgver
git+https://android.googlesource.com/platform/external/f2fs-tools#tag=android-$pkgver
+ git+https://android.googlesource.com/platform/external/e2fsprogs#tag=android-$pkgver
git+https://boringssl.googlesource.com/boringssl#commit=$_boringssl_commit
generate_build.rb
fix_build_core.patch
fix_build_selinux.patch
+ fix_build_e2fsprogs.patch
bash_completion.fastboot)
# Bash completion file was taken from https://github.com/mbrubeck/android-completion
sha1sums=('SKIP'
@@ -29,9 +31,11 @@
'SKIP'
'SKIP'
'SKIP'
- 'fa0e4579f2f26a0e0efe53549e9a91ef3a334eff'
- '640db48e8e915f8c7f525dd044f16a3b502d4689'
+ 'SKIP'
+ 'caf4dd68f94e7c745b915778c3f33946c0478eae'
+ 'e6ab688d0decfae64302d1402e1eee6678fc2549'
'ec473160d7445f97bccabd1c32ac0ae2f77900c1'
+ '8ccb2ef791a5b517b4371af7f529f4e731ce7260'
'7004dbd0c193668827174880de6f8434de8ceaee')
prepare() {
@@ -43,6 +47,9 @@
cd $srcdir/selinux
patch -p1 < ../fix_build_selinux.patch
+ cd $srcdir/e2fsprogs
+ patch -p1 < ../fix_build_e2fsprogs.patch
+
mkdir -p $srcdir/boringssl/build && cd $srcdir/boringssl/build && cmake -GNinja ..; ninja
}
@@ -52,6 +59,6 @@
package(){
install -m755 -d "$pkgdir"/usr/bin
- install -m755 -t "$pkgdir"/usr/bin fastboot adb core/mkbootimg/mkbootimg
+ install -m755 -t "$pkgdir"/usr/bin fastboot adb mke2fs.android e2fsdroid ext2simg core/mkbootimg/mkbootimg
install -Dm 644 bash_completion.fastboot "$pkgdir"/usr/share/bash-completion/completions/fastboot
}
Modified: fix_build_core.patch
===================================================================
--- fix_build_core.patch 2018-01-19 23:03:25 UTC (rev 284248)
+++ fix_build_core.patch 2018-01-19 23:05:42 UTC (rev 284249)
@@ -67,6 +67,19 @@
// For getprogname(3) or program_invocation_short_name.
#if defined(__ANDROID__) || defined(__APPLE__)
+diff --git a/fastboot/fs.cpp b/fastboot/fs.cpp
+index 709f061bd6..77629a882b 100644
+--- a/fastboot/fs.cpp
++++ b/fastboot/fs.cpp
+@@ -108,7 +108,7 @@ static int generate_ext4_image(const char* fileName, long long partSize,
+ static constexpr int block_size = 4096;
+ const std::string exec_dir = android::base::GetExecutableDirectory();
+
+- const std::string mke2fs_path = exec_dir + "/mke2fs";
++ const std::string mke2fs_path = exec_dir + "/mke2fs.android";
+ std::vector<const char*> mke2fs_args = {mke2fs_path.c_str(), "-t", "ext4", "-b"};
+
+ std::string block_size_str = std::to_string(block_size);
diff --git a/libsparse/sparse_read.cpp b/libsparse/sparse_read.cpp
index bd668735a3..6168f2e248 100644
--- a/libsparse/sparse_read.cpp
Added: fix_build_e2fsprogs.patch
===================================================================
--- fix_build_e2fsprogs.patch (rev 0)
+++ fix_build_e2fsprogs.patch 2018-01-19 23:05:42 UTC (rev 284249)
@@ -0,0 +1,43 @@
+diff --git a/contrib/android/perms.c b/contrib/android/perms.c
+index 9ae8e586..433506fd 100644
+--- a/contrib/android/perms.c
++++ b/contrib/android/perms.c
+@@ -5,6 +5,7 @@
+ #include "support/nls-enable.h"
+ #include <time.h>
+ #include <sys/stat.h>
++#include "private/android_filesystem_capability.h"
+
+ #ifndef XATTR_SELINUX_SUFFIX
+ # define XATTR_SELINUX_SUFFIX "selinux"
+diff --git a/lib/ext2fs/bitops.h b/lib/ext2fs/bitops.h
+index 505b3c9c..7be5105f 100644
+--- a/lib/ext2fs/bitops.h
++++ b/lib/ext2fs/bitops.h
+@@ -233,11 +233,11 @@ extern errcode_t ext2fs_find_first_set_generic_bmap(ext2fs_generic_bitmap bitmap
+ #if (__STDC_VERSION__ >= 199901L)
+ #define _INLINE_ extern inline
+ #else
+-#define _INLINE_ inline
++#define _INLINE_ static inline
+ #endif
+ #else /* !INCLUDE_INLINE FUNCS */
+ #if (__STDC_VERSION__ >= 199901L)
+-#define _INLINE_ inline
++#define _INLINE_ static inline
+ #else /* not C99 */
+ #ifdef __GNUC__
+ #define _INLINE_ extern __inline__
+diff --git a/lib/ext2fs/ext2fs.h b/lib/ext2fs/ext2fs.h
+index e153c817..dcae5947 100644
+--- a/lib/ext2fs/ext2fs.h
++++ b/lib/ext2fs/ext2fs.h
+@@ -1736,7 +1736,7 @@ extern const struct ext2_inode *ext2fs_const_inode(const struct ext2_inode_large
+ #define _INLINE_ extern
+ #else
+ #if (__STDC_VERSION__ >= 199901L)
+-#define _INLINE_ inline
++#define _INLINE_ static inline
+ #else
+ #ifdef __GNUC__
+ #define _INLINE_ extern __inline__
Modified: generate_build.rb
===================================================================
--- generate_build.rb 2018-01-19 23:03:25 UTC (rev 284248)
+++ generate_build.rb 2018-01-19 23:05:42 UTC (rev 284249)
@@ -141,8 +141,10 @@
sockets.cpp
android_get_control_file.cpp
threads.c
+ fs_config.cpp
+ canned_fs_config.c
)
-libcutils = compile(expand('core/libcutils', cutilsfiles), '-D_GNU_SOURCE -Icore/include')
+libcutils = compile(expand('core/libcutils', cutilsfiles), '-D_GNU_SOURCE -Icore/libcutils/include -Icore/include')
diagnoseusbfiles = %w(
diagnose_usb.cpp
@@ -273,3 +275,140 @@
libsepol = compile(expand('selinux/libsepol/src', libsepolfiles), '-Iselinux/libsepol/include')
link('fastboot', libsparse + libzip + libcutils + liblog + libutil + libbase + libext4 + f2fs + libselinux + libsepol + libfastboot + libdiagnoseusb, '-lz -lpcre2-8 -lpthread -ldl')
+
+
+# mke2fs.android - a ustom version of mke2fs that supports --android_sparse (FS#56955)
+libext2fsfiles = %w(
+ lib/blkid/cache.c
+ lib/blkid/dev.c
+ lib/blkid/devname.c
+ lib/blkid/devno.c
+ lib/blkid/getsize.c
+ lib/blkid/llseek.c
+ lib/blkid/probe.c
+ lib/blkid/read.c
+ lib/blkid/resolve.c
+ lib/blkid/save.c
+ lib/blkid/tag.c
+ lib/e2p/feature.c
+ lib/e2p/hashstr.c
+ lib/e2p/mntopts.c
+ lib/e2p/ostype.c
+ lib/e2p/parse_num.c
+ lib/e2p/uuid.c
+ lib/et/com_err.c
+ lib/et/error_message.c
+ lib/et/et_name.c
+ lib/ext2fs/alloc.c
+ lib/ext2fs/alloc_sb.c
+ lib/ext2fs/alloc_stats.c
+ lib/ext2fs/alloc_tables.c
+ lib/ext2fs/atexit.c
+ lib/ext2fs/badblocks.c
+ lib/ext2fs/bb_inode.c
+ lib/ext2fs/bitmaps.c
+ lib/ext2fs/bitops.c
+ lib/ext2fs/blkmap64_ba.c
+ lib/ext2fs/blkmap64_rb.c
+ lib/ext2fs/blknum.c
+ lib/ext2fs/block.c
+ lib/ext2fs/bmap.c
+ lib/ext2fs/closefs.c
+ lib/ext2fs/crc16.c
+ lib/ext2fs/crc32c.c
+ lib/ext2fs/csum.c
+ lib/ext2fs/dirblock.c
+ lib/ext2fs/dir_iterate.c
+ lib/ext2fs/expanddir.c
+ lib/ext2fs/ext2_err.c
+ lib/ext2fs/ext_attr.c
+ lib/ext2fs/extent.c
+ lib/ext2fs/fallocate.c
+ lib/ext2fs/fileio.c
+ lib/ext2fs/freefs.c
+ lib/ext2fs/gen_bitmap64.c
+ lib/ext2fs/gen_bitmap.c
+ lib/ext2fs/get_num_dirs.c
+ lib/ext2fs/getsectsize.c
+ lib/ext2fs/getsize.c
+ lib/ext2fs/i_block.c
+ lib/ext2fs/ind_block.c
+ lib/ext2fs/initialize.c
+ lib/ext2fs/inline.c
+ lib/ext2fs/inline_data.c
+ lib/ext2fs/inode.c
+ lib/ext2fs/io_manager.c
+ lib/ext2fs/ismounted.c
+ lib/ext2fs/link.c
+ lib/ext2fs/llseek.c
+ lib/ext2fs/lookup.c
+ lib/ext2fs/mkdir.c
+ lib/ext2fs/mkjournal.c
+ lib/ext2fs/mmp.c
+ lib/ext2fs/namei.c
+ lib/ext2fs/newdir.c
+ lib/ext2fs/openfs.c
+ lib/ext2fs/progress.c
+ lib/ext2fs/punch.c
+ lib/ext2fs/rbtree.c
+ lib/ext2fs/read_bb.c
+ lib/ext2fs/read_bb_file.c
+ lib/ext2fs/res_gdt.c
+ lib/ext2fs/rw_bitmaps.c
+ lib/ext2fs/sparse_io.c
+ lib/ext2fs/symlink.c
+ lib/ext2fs/undo_io.c
+ lib/ext2fs/unix_io.c
+ lib/ext2fs/valid_blk.c
+ lib/support/dict.c
+ lib/support/mkquota.c
+ lib/support/parse_qtype.c
+ lib/support/plausible.c
+ lib/support/prof_err.c
+ lib/support/profile.c
+ lib/support/quotaio.c
+ lib/support/quotaio_tree.c
+ lib/support/quotaio_v2.c
+ lib/uuid/gen_uuid.c
+ lib/uuid/isnull.c
+ lib/uuid/pack.c
+ lib/uuid/parse.c
+ lib/uuid/unpack.c
+ lib/uuid/unparse.c
+ misc/create_inode.c
+)
+libext2fs = compile(expand('e2fsprogs', libext2fsfiles), '-Ie2fsprogs/lib -Icore/libsparse/include')
+
+
+mke2fsfiles = %w(
+ misc/default_profile.c
+ misc/mke2fs.c
+ misc/mk_hugefiles.c
+ misc/util.c
+)
+mke2fs = compile(expand('e2fsprogs', mke2fsfiles), '-Ie2fsprogs/lib')
+
+link('mke2fs.android', mke2fs + libext2fs + libsparse + libbase + libzip + liblog + libutil, '-lpthread -lz')
+
+
+e2fsdroidfiles = %w(
+ contrib/android/e2fsdroid.c
+ contrib/android/basefs_allocator.c
+ contrib/android/block_range.c
+ contrib/android/hashmap.c
+ contrib/android/base_fs.c
+ contrib/android/fsmap.c
+ contrib/android/block_list.c
+ contrib/android/perms.c
+)
+e2fsdroid = compile(expand('e2fsprogs', e2fsdroidfiles), '-Ie2fsprogs/lib -Iselinux/libselinux/include -Icore/libcutils/include -Ie2fsprogs/misc')
+
+link('e2fsdroid', e2fsdroid + libext2fs + libsparse + libbase + libzip + liblog + libutil + libselinux + libsepol + libcutils, '-lz -lpthread -lpcre2-8')
+
+
+ext2simgfiles = %w(
+ contrib/android/ext2simg.c
+)
+ext2simg = compile(expand('e2fsprogs', ext2simgfiles), '-Ie2fsprogs/lib -Icore/libsparse/include')
+
+link('ext2simg', ext2simg + libext2fs + libsparse + libbase + libzip + liblog + libutil, '-lz -lpthread')
\ No newline at end of file
More information about the arch-commits
mailing list