I tried on Android 10, kernel 4.14.117, userdata format f2fs
git clone https://git.code.sf.net/p/linuxquota/code
export NDK=~/Android/Sdk/ndk/25.1.8937393/
export TOOLCHAIN=$NDK/toolchains/llvm/prebuilt/linux-x86_64
export TARGET=armv7a-linux-androideabi
export API=31
export AR=$TOOLCHAIN/bin/llvm-ar
export CC=$TOOLCHAIN/bin/$TARGET$API-clang
export AS=$CC
export CXX=$TOOLCHAIN/bin/$TARGET$API-clang++
export LD=$TOOLCHAIN/bin/ld
export RANLIB=$TOOLCHAIN/bin/llvm-ranlib
export STRIP=$TOOLCHAIN/bin/llvm-strip
and make some diff
$ git diff
diff --git a/edquota.c b/edquota.c
index a77106c..78e3c29 100644
--- a/edquota.c
+++ b/edquota.c
@@ -238,7 +238,7 @@ int main(int argc, char **argv)
if (getuid() == geteuid() && getgid() == getegid())
tmpdir = getenv("TMPDIR");
if (!tmpdir)
- tmpdir = _PATH_TMP;
+ tmpdir = "/data/local/tmp/";
tmpfil = smalloc(strlen(tmpdir) + strlen("/EdP.aXXXXXX") + 1);
strcpy(tmpfil, tmpdir);
strcat(tmpfil, "/EdP.aXXXXXX");
diff --git a/quotaops.c b/quotaops.c
index 96086f4..b0dc2aa 100644
--- a/quotaops.c
+++ b/quotaops.c
@@ -206,7 +206,7 @@ int editprivs(char *tmpfile)
die(1, _("%s failed: %s\n"), "setuid", strerror(errno));
if (!(ed = getenv("VISUAL")))
if (!(ed = getenv("EDITOR")))
- ed = _PATH_VI;
+ ed = "/usr/bin/vim";
i = 0;
ed = actp = sstrdup(ed);
while (actp) {
diff --git a/quotasys.c b/quotasys.c
index 3f50e32..c958a2c 100644
--- a/quotasys.c
+++ b/quotasys.c
@@ -1258,7 +1258,7 @@ static int cache_mnt_table(int flags)
if (mntf)
goto alloc;
/* Fallback to fstab when mtab not available */
- if (!(mntf = setmntent(_PATH_MNTTAB, "r"))) {
+ if (!(mntf = setmntent("/etc/fstab", "r"))) {
errstr(_("Cannot open any file with mount points.\n"));
return -1;
}
upload source and prebuilt file as below
https://drive.google.com/file/d/15VNpOfMO1FH1grdizi9uLvmi6Q-IK_vJ/view?usp=sharing