MTP: Build flag for setting custom MTP device/path
Change-Id: Ic19ec61dc6cb08df00eb1326d96262b46bb93bfb
diff --git a/mtp/Android.mk b/mtp/Android.mk
index ebf1a6d..683999d 100755
--- a/mtp/Android.mk
+++ b/mtp/Android.mk
@@ -30,6 +30,11 @@
mtp_MtpDatabase.cpp \
node.cpp
LOCAL_SHARED_LIBRARIES += libz libc libusbhost libstdc++ libstlport libdl libcutils libutils
+
+ifneq ($(TW_MTP_DEVICE),)
+ LOCAL_CFLAGS += -DUSB_MTP_DEVICE=$(TW_MTP_DEVICE)
+endif
+
include $(BUILD_SHARED_LIBRARY)
# Build twrpmtp binary / executable
diff --git a/mtp/mtp_MtpServer.cpp b/mtp/mtp_MtpServer.cpp
index af80f68..9df564f 100755
--- a/mtp/mtp_MtpServer.cpp
+++ b/mtp/mtp_MtpServer.cpp
@@ -47,11 +47,13 @@
int twmtp_MtpServer::setup()
{
- #define USB_MTP_DEVICE "/dev/mtp_usb"
usePtp = false;
MyMtpDatabase* mtpdb = new MyMtpDatabase();
#ifdef USB_MTP_DEVICE
- int fd = open(USB_MTP_DEVICE, O_RDWR);
+#define STRINGIFY(x) #x
+#define EXPAND(x) STRINGIFY(x)
+ MTPI("Using '%s' for MTP device.\n", EXPAND(USB_MTP_DEVICE));
+ int fd = open(EXPAND(USB_MTP_DEVICE), O_RDWR);
#else
int fd = open("/dev/mtp_usb", O_RDWR);
#endif