updater: only include tune2fs support when libtune2fs is available
Change-Id: Iebf965bb7f5352115be4039aa6ca5be5a6a6d219
diff --git a/updater/Android.mk b/updater/Android.mk
index cc22061..0045d6f 100644
--- a/updater/Android.mk
+++ b/updater/Android.mk
@@ -53,7 +53,10 @@
libext2_uuid_static \
libext2_e2p \
libext2fs
-LOCAL_STATIC_LIBRARIES += libtune2fs $(tune2fs_static_libraries)
+ifneq ($(wildcard external/e2fsprogs/misc/tune2fs.h),)
+ LOCAL_STATIC_LIBRARIES += libtune2fs $(tune2fs_static_libraries)
+ LOCAL_CFLAGS += -DHAVE_LIBTUNE2FS
+endif
LOCAL_C_INCLUDES += external/e2fsprogs/misc
LOCAL_C_INCLUDES += $(LOCAL_PATH)/..
diff --git a/updater/install.c b/updater/install.c
index 20ee431..7a73f28 100644
--- a/updater/install.c
+++ b/updater/install.c
@@ -48,7 +48,9 @@
#include "applypatch/applypatch.h"
#include "flashutils/flashutils.h"
#include "install.h"
+#ifdef HAVE_LIBTUNE2FS
#include "tune2fs.h"
+#endif
#ifdef USE_EXT4
#include "make_ext4fs.h"
@@ -1491,6 +1493,7 @@
}
Value* Tune2FsFn(const char* name, State* state, int argc, Expr* argv[]) {
+#ifdef HAVE_LIBTUNE2FS
if (argc == 0) {
return ErrorAbort(state, "%s() expects args, got %d", name, argc);
}
@@ -1519,6 +1522,9 @@
return ErrorAbort(state, "%s() returned error code %d", name, result);
}
return StringValue(strdup("t"));
+#else
+ return ErrorAbort(state, "%s() support not present, no libtune2fs", name);
+#endif // HAVE_LIBTUNE2FS
}
void RegisterInstallFunctions() {