[android-tools] - Update to upstream git commit 98d0789

Ivan Afonichev van at fedoraproject.org
Tue Jan 29 22:15:47 UTC 2013


commit a9435ca42428a97ad1195384474495d80d376384
Author: Ivan Afonichev <ivan.afonichev at gmail.com>
Date:   Mon Jan 28 02:17:01 2013 +0400

    - Update to upstream git commit 98d0789
    
    - Resolves: rhbz 903074 Move udev rule to docs as example
    - Resolves: rhbz 879585 Introduce adb.service with PrivateTmp

 51-android.rules   |   94 ++++++++++++++++++++++++++-------------------------
 adb.service        |   13 +++++++
 android-tools.spec |   46 +++++++++++++++++++++----
 sources            |    2 +-
 4 files changed, 100 insertions(+), 55 deletions(-)
---
diff --git a/51-android.rules b/51-android.rules
index 9e10953..5e2189e 100644
--- a/51-android.rules
+++ b/51-android.rules
@@ -1,141 +1,143 @@
+# Place this file into /etc/udev/rules.d/ if you want to autostart adb.service on plug
+#
 # http://developer.android.com/guide/developing/device.html
 # adb/usb_vendors.c
 
 # Acer
-SUBSYSTEM=="usb", ATTR{idVendor}=="0502", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="0502", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # Dell
-SUBSYSTEM=="usb", ATTR{idVendor}=="413c", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="413c", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # Foxconn
-SUBSYSTEM=="usb", ATTR{idVendor}=="0489", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="0489", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # Garmin-Asus
-SUBSYSTEM=="usb", ATTR{idVendor}=="091E", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="091E", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # Google
-SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # HTC
-SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # Huawei
-SUBSYSTEM=="usb", ATTR{idVendor}=="12d1", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="12d1", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # Kyocera
-SUBSYSTEM=="usb", ATTR{idVendor}=="0482", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="0482", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # LG
-SUBSYSTEM=="usb", ATTR{idVendor}=="1004", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="1004", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # Motorola
-SUBSYSTEM=="usb", ATTR{idVendor}=="22b8", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="22b8", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # Nvidia
-SUBSYSTEM=="usb", ATTR{idVendor}=="0955", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="0955", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # Pantech
-SUBSYSTEM=="usb", ATTR{idVendor}=="10A9", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="10A9", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # Samsung
-SUBSYSTEM=="usb", ATTR{idVendor}=="04e8", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="04e8", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # Sharp
-SUBSYSTEM=="usb", ATTR{idVendor}=="04dd", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="04dd", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # Sony Ericsson
-SUBSYSTEM=="usb", ATTR{idVendor}=="0fce", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="0fce", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # ZTE
-SUBSYSTEM=="usb", ATTR{idVendor}=="19d2", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="19d2", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # Qualcomm
-SUBSYSTEM=="usb", ATTR{idVendor}=="05c6", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="05c6", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # On-The-Go-Video
-SUBSYSTEM=="usb", ATTR{idVendor}=="2257", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="2257", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # NEC
-SUBSYSTEM=="usb", ATTR{idVendor}=="0409", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="0409", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # Panasonic
-SUBSYSTEM=="usb", ATTR{idVendor}=="04da", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="04da", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # Toshiba
-SUBSYSTEM=="usb", ATTR{idVendor}=="0930", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="0930", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # SK Telesys
-SUBSYSTEM=="usb", ATTR{idVendor}=="1f53", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="1f53", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # KT Tech
-SUBSYSTEM=="usb", ATTR{idVendor}=="2116", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="2116", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # ASUS
-SUBSYSTEM=="usb", ATTR{idVendor}=="0b05", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="0b05", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # Philips
-SUBSYSTEM=="usb", ATTR{idVendor}=="0471", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="0471", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # Texas Instruments
-SUBSYSTEM=="usb", ATTR{idVendor}=="0451", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="0451", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # Funai
-SUBSYSTEM=="usb", ATTR{idVendor}=="0f1c", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="0f1c", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # Gigabyte
-SUBSYSTEM=="usb", ATTR{idVendor}=="0414", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="0414", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # IRiver
-SUBSYSTEM=="usb", ATTR{idVendor}=="2420", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="2420", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # Compal
-SUBSYSTEM=="usb", ATTR{idVendor}=="1219", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="1219", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # T & A Mobile Phones
-SUBSYSTEM=="usb", ATTR{idVendor}=="1bbb", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="1bbb", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # LenovoMobile
-SUBSYSTEM=="usb", ATTR{idVendor}=="2006", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="2006", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # Lenovo
-SUBSYSTEM=="usb", ATTR{idVendor}=="17ef", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="17ef", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # Vizio
-SUBSYSTEM=="usb", ATTR{idVendor}=="e040", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="e040", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # K-Touch
-SUBSYSTEM=="usb", ATTR{idVendor}=="24e3", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="24e3", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # Pegatron
-SUBSYSTEM=="usb", ATTR{idVendor}=="1d4d", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="1d4d", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # Archos
-SUBSYSTEM=="usb", ATTR{idVendor}=="0e79", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="0e79", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # Positivo
-SUBSYSTEM=="usb", ATTR{idVendor}=="1662", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="1662", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # Intel
-SUBSYSTEM=="usb", ATTR{idVendor}=="8087", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="8087", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # Quanta
-SUBSYSTEM=="usb", ATTR{idVendor}=="0408", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="0408", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # INQ Mobile
-SUBSYSTEM=="usb", ATTR{idVendor}=="2314", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="2314", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # Sony
-SUBSYSTEM=="usb", ATTR{idVendor}=="054c", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="054c", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # Lab126
-SUBSYSTEM=="usb", ATTR{idVendor}=="1949", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="1949", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # Yulong Coolpad
-SUBSYSTEM=="usb", ATTR{idVendor}=="1ebf", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="1ebf", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # Kobo
-SUBSYSTEM=="usb", ATTR{idVendor}=="2237", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="2237", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
 # Teleepoch
-SUBSYSTEM=="usb", ATTR{idVendor}=="2340", RUN+="/usr/bin/adb start-server"
+SUBSYSTEM=="usb", ATTR{idVendor}=="2340", TAG+="systemd", ENV{SYSTEMD_WANTS}="adb.service"
 
diff --git a/adb.service b/adb.service
new file mode 100644
index 0000000..b9abc10
--- /dev/null
+++ b/adb.service
@@ -0,0 +1,13 @@
+# Systemd unit file for adb
+
+[Unit]
+Description=Android Debug Bridge (adb) service
+
+[Service]
+Type=forking
+ExecStart=/usr/bin/adb start-server
+ExecStop=/usr/bin/adb kill-server
+PrivateTmp=yes
+
+[Install]
+WantedBy=multi-user.target
diff --git a/android-tools.spec b/android-tools.spec
index d7472eb..dd7cd8f 100644
--- a/android-tools.spec
+++ b/android-tools.spec
@@ -1,5 +1,5 @@
-%global date 20121120
-%global git_commit 3ddc005
+%global date 20130123
+%global git_commit 98d0789
 %global packdname core-%{git_commit}
 #last extras ext4_utils  commit without custom libselinux requirement
 %global extras_git_commit 4ff85ad
@@ -17,7 +17,7 @@ License:       ASL 2.0 and (ASL 2.0 and BSD)
 URL:           http://developer.android.com/guide/developing/tools/
 
 #  using git archive since upstream hasn't created tarballs. 
-#  git archive --format=tar --prefix=%%{packdname}/ %%{git_commit} adb fastboot libzipfile libcutils libmincrypt mkbootimg include/cutils include/zipfile include/mincrypt | xz  > %%{packdname}.tar.xz
+#  git archive --format=tar --prefix=%%{packdname}/ %%{git_commit} adb fastboot libzipfile libcutils libmincrypt libsparse mkbootimg include/cutils include/zipfile include/mincrypt | xz  > %%{packdname}.tar.xz
 #  https://android.googlesource.com/platform/system/core.git
 #  git archive --format=tar --prefix=extras/ %%{extras_git_commit} ext4_utils | xz  > %%{extras_packdname}.tar.xz
 #  https://android.googlesource.com/platform/system/extras.git
@@ -28,11 +28,15 @@ Source2:       core-Makefile
 Source3:       adb-Makefile
 Source4:       fastboot-Makefile
 Source5:       51-android.rules
+Source6:       adb.service
 
-Requires:      udev
+Requires(post): systemd-units
+Requires(preun): systemd-units
+Requires(postun): systemd-units
 BuildRequires: zlib-devel
 BuildRequires: openssl-devel
 BuildRequires: libselinux-devel
+BuildRequires: systemd-units
 
 Provides:      adb
 Provides:      fastboot
@@ -63,26 +67,52 @@ setup between the host and the target phone as adb.
 cp -p %{SOURCE2} Makefile
 cp -p %{SOURCE3} adb/Makefile
 cp -p %{SOURCE4} fastboot/Makefile
+cp -p %{SOURCE5} 51-android.rules
 
 %build
 make %{?_smp_mflags}
 
 %install
 install -d -m 0755 ${RPM_BUILD_ROOT}%{_bindir}
-install -d -m 0755 ${RPM_BUILD_ROOT}/lib/udev/rules.d
-install -D -m 0644 %{SOURCE5} ${RPM_BUILD_ROOT}/lib/udev/rules.d/51-android.rules
 make install DESTDIR=$RPM_BUILD_ROOT BINDIR=%{_bindir}
+install -p -D -m 0644 %{SOURCE6} \
+    %{buildroot}%{_unitdir}/adb.service
+
+%post
+if [ "$1" -eq "1" ] ; then 
+    # Initial installation 
+    /bin/systemctl daemon-reload >/dev/null 2>&1 || :
+fi
+
+%preun
+if [ "$1" -eq "0" ] ; then
+    # Package removal, not upgrade
+    /bin/systemctl --no-reload disable adb.service > /dev/null 2>&1 || :
+    /bin/systemctl stop adb.service > /dev/null 2>&1 || :
+fi
+
+%postun
+/bin/systemctl daemon-reload >/dev/null 2>&1 || :
+if [ "$1" -ge "1" ] ; then
+    # Package upgrade, not uninstall
+    /bin/systemctl try-restart adb.service >/dev/null 2>&1 || :
+fi
 
 %files
-%doc adb/OVERVIEW.TXT adb/SERVICES.TXT adb/NOTICE adb/protocol.txt
+%doc adb/OVERVIEW.TXT adb/SERVICES.TXT adb/NOTICE adb/protocol.txt 51-android.rules
+%{_unitdir}/adb.service
 #ASL2.0
 %{_bindir}/adb
 #ASL2.0 and BSD.
 %{_bindir}/fastboot
-/lib/udev/rules.d/51-android.rules
 
 
 %changelog
+* Mon Jan 28 2013 Ivan Afonichev <ivan.afonichev at gmail.com> - 20130123git98d0789-1
+- Update to upstream git commit 98d0789
+- Resolves: rhbz 903074 Move udev rule to docs as example
+- Resolves: rhbz 879585 Introduce adb.service with PrivateTmp
+
 * Tue Nov 20 2012 Ivan Afonichev <ivan.afonichev at gmail.com> - 20121120git3ddc005-1
 - Update to upstream git commit 3ddc005
 - Added more udev devices
diff --git a/sources b/sources
index 163f7f8..340709c 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-651906a658de90a24301ba7d09525641  core-3ddc005.tar.xz
 e6c0b8dd70952e97a068c3a61f812968  extras-4ff85ad.tar.xz
+8852699267ef36482ea917cc4381f583  core-98d0789.tar.xz


More information about the scm-commits mailing list