Merge "reference-ril: add owner from emulator team" into pi-dev
diff --git a/CleanSpec.mk b/CleanSpec.mk
index cca8c69..e6a3da7 100644
--- a/CleanSpec.mk
+++ b/CleanSpec.mk
@@ -54,3 +54,5 @@
 $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/lib64/libril.so)
 $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/lib/librilutils.so)
 $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/lib64/librilutils.so)
+$(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/vendor/etc/init/rild.rc)
+$(call add-clean-step, rm -rf $(PRODUCT_OUT)/vendor/etc/init/rild.rc)
diff --git a/rild/Android.mk b/rild/Android.mk
index 57a9d48..cc51332 100644
--- a/rild/Android.mk
+++ b/rild/Android.mk
@@ -29,7 +29,12 @@
 LOCAL_MODULE_RELATIVE_PATH := hw
 LOCAL_PROPRIETARY_MODULE := true
 LOCAL_MODULE:= rild
+ifeq ($(PRODUCT_COMPATIBLE_PROPERTY),true)
 LOCAL_INIT_RC := rild.rc
+LOCAL_CFLAGS += -DPRODUCT_COMPATIBLE_PROPERTY
+else
+LOCAL_INIT_RC := rild.legacy.rc
+endif
 
 include $(BUILD_EXECUTABLE)
 
diff --git a/rild/rild.c b/rild/rild.c
index 685ef70..c554a9f 100644
--- a/rild/rild.c
+++ b/rild/rild.c
@@ -35,8 +35,13 @@
 #include <sys/types.h>
 #include <libril/ril_ex.h>
 
+#if defined(PRODUCT_COMPATIBLE_PROPERTY)
+#define LIB_PATH_PROPERTY   "vendor.rild.libpath"
+#define LIB_ARGS_PROPERTY   "vendor.rild.libargs"
+#else
 #define LIB_PATH_PROPERTY   "rild.libpath"
 #define LIB_ARGS_PROPERTY   "rild.libargs"
+#endif
 #define MAX_LIB_ARGS        16
 
 static void usage(const char *argv0) {
diff --git a/rild/rild.legacy.rc b/rild/rild.legacy.rc
new file mode 100644
index 0000000..b27e1da
--- /dev/null
+++ b/rild/rild.legacy.rc
@@ -0,0 +1,5 @@
+service ril-daemon /vendor/bin/hw/rild
+    class main
+    user radio
+    group radio cache inet misc audio log readproc wakelock
+    capabilities BLOCK_SUSPEND NET_ADMIN NET_RAW
diff --git a/rild/rild.rc b/rild/rild.rc
index b27e1da..f6beb54 100644
--- a/rild/rild.rc
+++ b/rild/rild.rc
@@ -1,4 +1,4 @@
-service ril-daemon /vendor/bin/hw/rild
+service vendor.ril-daemon /vendor/bin/hw/rild
     class main
     user radio
     group radio cache inet misc audio log readproc wakelock