Skip to content

Instantly share code, notes, and snippets.

@saidinesh5
Last active April 21, 2017 17:18
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save saidinesh5/3262c31c88776445544c8b2804ee02df to your computer and use it in GitHub Desktop.
Save saidinesh5/3262c31c88776445544c8b2804ee02df to your computer and use it in GitHub Desktop.
SF Droid build scripts
#!/bin/bash
source build/envsetup.sh
DEVICE=cancro
breakfast $DEVICE
function build_path {
echo "============= "Building : " `basename $1` =================="
pushd $1
mm || exit -1
popd
}
build_path hardware/libhardware #For libhardware.so
build_path system/netd/server #For bin/netd
build_path frameworks/native/services/surfaceflinger #For libsurfaceflinger.so
build_path frameworks/native/services/sensorservice #For libsensorservice.so
build_path hardware/libhardware/modules/sfdroid_sensors #For sfdroid_sensors.default.so
build_path frameworks/native/services/inputflinger #For libinputflinger.so
build_path frameworks/av/media/mediaserver #For mediaserver
build_path hardware/libhardware/modules/sharebuffer #For sharebuffer.default.so
build_path frameworks/base/core/res #For framework.jar, ext.jar
build_path frameworks/base/core/java/android/net
build_path frameworks/base/services/java/com/android/server #For services.jar
build_path frameworks/base/services/core/jni #For libandroid_servers.so
build_path frameworks/base/core/jni #For libandroid_runtime.so
build_path external/dbus #For libdbus.so
build_path packages/apps/Settings #For Settings.apk
build_path frameworks/base/packages/SystemUI/src/com/android/systemui #For SystemUI.apk
build_path frameworks/opt/net/ethernet/java/com/android/server #For ethernet-service.jar
build_path frameworks/opt/net/wifi/service/java/com/android/server/wifi #For wifi-service.jar
build_path frameworks/base/cmds/am/src/com/android/commands/am/ #For am.jar
echo === DONE ===
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<remove-project name="CyanogenMod/android_hardware_libhardware" />
<project name="sfdroid/android_hardware_libhardware" path="hardware/libhardware" revision="sfdroid-12.1-YOG7D" />
<remove-project name="CyanogenMod/android_frameworks_native" />
<project name="sfdroid/android_frameworks_native" path="frameworks/native" revision="sfdroid-12.1-YOG7D" />
<remove-project name="CyanogenMod/android_frameworks_base" />
<project name="sfdroid/android_frameworks_base" path="frameworks/base" revision="sfdroid-12.1-YOG7D" />
<!-- <remove-project name="CyanogenMod/android_frameworks_av" />
<project name="sfdroid/android_frameworks_av" path="frameworks/base" revision="hammerhead_12" /> -->
<remove-project name="CyanogenMod/android_packages_apps_Settings" />
<project name="sfdroid/android_packages_apps_Settings" path="packages/apps/Settings" revision="sfdroid-12.1-YOG7D" />
<remove-project name="CyanogenMod/android_system_netd" />
<project name="sfdroid/android_system_netd" path="system/netd" revision="sfdroid-12.1-YOG7D" />
<remove-project name="CyanogenMod/android_frameworks_opt_net_wifi" />
<project name="sfdroid/android_frameworks_opt_net_wifi" path="frameworks/opt/net/wifi" revision="sfdroid-12.1-YOG7D" />
<remove-project name="CyanogenMod/android_frameworks_opt_net_ethernet" />
<project name="sfdroid/android_frameworks_opt_net_ethernet" path="frameworks/opt/net/ethernet" revision="sfdroid-12.1-YOG7D" />
<project name="sfdroid/sfdroid-init" path="sfdroid-init" revision="sfdroid-12.1-YOG7D" />
<project name="sfdroid/android_external_dbus" path="external/dbus" revision="sfdroid-12.1-YOG7D" />
</manifest>
Name: sfdroid_core-cancro
Summary: System files of Xioami Mi3/Mi4(cancro) for sfdroid
Version: 0.0.1
Release: 1
Group: System/System Control
License: LICENSE
URL: https://github.com/sfdroid
Source0: %{name}-%{version}.tar.bz2
BuildRequires: droid-hal-devel
AutoReqProv: no
%description
%{summary}
%prep
%setup -q -n %{name}-%{version}
%build
#make
#TODO: put in actual build instructions here
%install
%define sfdroid_rootdir /usr/libexec/sfdroid
%define sfdroid_bindir %{sfdroid_rootdir}/system/bin
%define sfdroid_libdir %{sfdroid_rootdir}/system/lib
%define sfdroid_hwdir %{sfdroid_rootdir}/system/lib/hw
%define sfdroid_frameworkdir %{sfdroid_rootdir}/system/framework
%define sfdroid_appdir %{sfdroid_rootdir}/system/priv-app
%define src_base out/target/product/cancro/system
mkdir -p %{buildroot}%{sfdroid_rootdir}/
mkdir -p %{buildroot}%{sfdroid_bindir}/
mkdir -p %{buildroot}%{sfdroid_libdir}/
mkdir -p %{buildroot}%{sfdroid_hwdir}/
mkdir -p %{buildroot}%{sfdroid_frameworkdir}/
mkdir -p %{buildroot}%{sfdroid_appdir}/Settings/
mkdir -p %{buildroot}%{sfdroid_appdir}/SystemUI/
cp -p %{src_base}/framework/framework.jar %{buildroot}%{sfdroid_frameworkdir}/
cp -p %{src_base}/framework/ext.jar %{buildroot}%{sfdroid_frameworkdir}/
cp -p %{src_base}/framework/services.jar %{buildroot}%{sfdroid_frameworkdir}/
cp -p %{src_base}/framework/ethernet-service.jar %{buildroot}%{sfdroid_frameworkdir}/
cp -p %{src_base}/framework/wifi-service.jar %{buildroot}%{sfdroid_frameworkdir}/
cp -p %{src_base}/framework/am.jar %{buildroot}%{sfdroid_frameworkdir}/
cp -p %{src_base}/lib/libhardware.so %{buildroot}%{sfdroid_libdir}/
cp -p %{src_base}/lib/libandroid_servers.so %{buildroot}%{sfdroid_libdir}/
cp -p %{src_base}/lib/libandroid_runtime.so %{buildroot}%{sfdroid_libdir}/
cp -p %{src_base}/lib/libdbus.so %{buildroot}%{sfdroid_libdir}/
cp -p %{src_base}/lib/libsurfaceflinger.so %{buildroot}%{sfdroid_libdir}/
cp -p %{src_base}/lib/libinputflinger.so %{buildroot}%{sfdroid_libdir}/
cp -p %{src_base}/lib/libsensorservice.so %{buildroot}%{sfdroid_libdir}/
cp -p %{src_base}/lib/liblog.so %{buildroot}%{sfdroid_libdir}/
cp -p %{src_base}/lib/hw/sfdroid_sensors.default.so %{buildroot}%{sfdroid_hwdir}/
cp -p %{src_base}/lib/hw/sharebuffer.default.so %{buildroot}%{sfdroid_hwdir}/
cp -p %{src_base}/bin/netd %{buildroot}%{sfdroid_bindir}/
cp -p %{src_base}/bin/mediaserver %{buildroot}%{sfdroid_bindir}/
cp -p %{src_base}/priv-app/Settings/Settings.apk %{buildroot}%{sfdroid_appdir}/Settings/
cp -p %{src_base}/priv-app/SystemUI/SystemUI.apk %{buildroot}%{sfdroid_appdir}/SystemUI/
cp -p external/sfdroid-init/init.sfdroid.rc %{buildroot}
%files
%defattr(644,root,root,755)
%{sfdroid_frameworkdir}/framework.jar
%{sfdroid_frameworkdir}/ext.jar
%{sfdroid_frameworkdir}/services.jar
%{sfdroid_frameworkdir}/ethernet-service.jar
%{sfdroid_frameworkdir}/wifi-service.jar
%{sfdroid_frameworkdir}/am.jar
%{sfdroid_libdir}/libhardware.so
%{sfdroid_libdir}/libandroid_servers.so
%{sfdroid_libdir}/libandroid_runtime.so
%{sfdroid_libdir}/libdbus.so
%{sfdroid_libdir}/libsurfaceflinger.so
%{sfdroid_libdir}/libinputflinger.so
%{sfdroid_libdir}/libsensorservice.so
%{sfdroid_libdir}/liblog.so
%{sfdroid_hwdir}/sfdroid_sensors.default.so
%{sfdroid_hwdir}/sharebuffer.default.so
%attr(755,root,root) %{sfdroid_bindir}/netd
%attr(755,root,root) %{sfdroid_bindir}/mediaserver
%attr(755,root,root) %{sfdroid_appdir}/Settings/Settings.apk
%attr(755,root,root) %{sfdroid_appdir}/SystemUI/SystemUI.apk
/init.sfdroid.rc
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment