Commit Graph

21 Commits

Author SHA1 Message Date
D. Andrei Măceș
9ce12ec20d build: [FIXUP] Addendum for BusyBox get/setprop & API 24 vs 25
Change-Id: I9c909bc990210fc3ec2ed3edf0ac106248f613ba
2017-02-23 16:00:44 +01:00
Matt Mower
874136434a SELinux can be assumed for Android 4.4+
Change-Id: I7410a0c8e439eec90a955ee9201efd9a92bb9635
2017-01-18 12:40:26 -06:00
Hashcode
5733215112 build: AOSP/CM14 fixes (API 24/25, mainly BusyBox-less environment)
These changes are needed by any ROM where devices are configured to
use TOOLBOX/TOYBOX instead of BUSYBOX (i.e., TW_USE_TOOLBOX := true).

Change-Id: I68b88cc9fb857f32864556c4b6c9c8e6ee744051
2017-01-12 12:50:18 -05:00
Ethan Yonker
f117962eb2 Make it backwards compatible with 4.4
Change-Id: I668604cddc8e8afbf78709f3f872bea4e9f4aa06
2016-08-25 15:36:13 -05:00
Ethan Yonker
34ae483e02 Update to 7.0
Change-Id: I621cc47352f7ac552d9602485825ae3a6f9ae516
2016-08-24 15:32:18 -05:00
Ethan Yonker
916cae8fa3 Fix toolbox build issue when using TW_USE_TOOLBOX=true
Change-Id: I643873b495318d4886b9f8cfaf1b75555d3166c3
2016-01-22 11:34:10 -06:00
Ethan Yonker
6bb26b5f14 Add toybox getprop and setprop for M trees
Change-Id: I5827b3545f3f0118bd0d9407f812bd62fd26d97c
2016-01-15 01:27:45 +01:00
Ethan Yonker
c798c9cd24 Merge up to AOSP marshmallow-release
In order to maintain compatibility with older trees, we now have
minadbd.old and minui.old. I had to use a TARGET_GLOBAL_CFLAG to
handle ifdef issues in minui/minui.d because healthd includes
minui/minui.h and there was no other alternative to make minui.h
compatible with older trees without having to modify healthd rules
which is outside of TWRP.

Note that the new minui does not currently have support for qcom
overlay graphics. Support for this graphics mode will likely be
added in a later patch set. If you are building in a 6.0 tree and
have a device that needs qcom overlay graphics, be warned, as off
mode charging may not work properly. A dead battery in this case
could potentially brick your device if it is unable to charge as
healthd handles charging duties.

Update rules for building toolbox and add rules for making toybox

Use permissive.sh in init.rc which will follow symlinks so we do
not have to worry about what binary is supplying the setenforce
functionality (toolbox, toybox, or busybox).

Fix a few warnings in the main recovery binary source code.

Fix a few includes that were missing that prevented compiling in
6.0

Change-Id: Ia67aa2107d260883da5e365475a19bea538e8b97
2015-10-09 11:15:29 -05:00
Andrea Mennillo
7d66ce57b6 toolbox: Include setenforce into tools.h
setenforce was filtered out of toolbox tools too early. Only filter it
out just before symlinking (and only if busybox provides it).

Change-Id: Id8c77d12b440416bfc21bf52705f2387ffd897cf
2015-03-19 17:17:28 +01:00
Matt Mower
92084af6e8 toolbox: Cleanup Makefile
* Do not split the makefile in two to support pre-lollipop trees. Go
  through and mark sections with PLATFORM_SDK_VERSION.
* setenforce: Correct the handling to prevent build warnings -- if
  busybox provides this tool, then still allow it to be built, but do
  not write a symlink.
* Correct indentation throughout
* Remove dead code (LOCAL_STATIC_LIBRARIES)

Change-Id: I1b13a0e0be78ea862f7d418d683407ff79d17e4f
2015-03-11 15:46:02 +01:00
Ethan Yonker
dc3223adb2 toolbox_recovery should always include setenforce
init does not follow symlinks and we need setenforce to be able
to set permissive. toolbox_recovery will now always include the
setenforce tool even if busybox has it so that our provided
init.rc can run /sbin/toolbox setenforce 0 successfully. The
symlink for setenforce will remain pointing to busybox if busybox
has setenforce.

Change-Id: I88a2a99bbed30cef3443ac5d94665e3850872237
2014-12-22 14:48:05 -06:00
Dees Troy
b47f28b05a Fix generating symlinks for older trees
Symlinks for unpigz, toolbox, and busybox were not generating in
older trees.

Change-Id: I3ca2a2047510954e66fb3cf49eef6af713d3268e
2014-12-12 15:20:55 +01:00
Ethan Yonker
738be7a3ff Use one mizip for all
The new minzip did not compile in older trees due to needing
mmap64. For older trees we will just use mmap instead. Remove all
files and code pertaining to minzipold. Updater should now build
properly in older trees as well.

Eliminate use of PLATFORM_VERSION in favor of PLATFORM_SDK_VERSION
which should be more consistent and reliable.

Change-Id: I38d2b604a73d1b17a2072c7d60e990b81ece0c10
2014-12-10 11:54:02 -06:00
erikcas
1db013bf28 bootable recovery: we upgraded to 5.0.1
Change-Id: I9e2f359dd7274e1ae885f6a3b392d5ab5ca99ac9
2014-12-03 16:05:35 +01:00
Ethan Yonker
75bf041a8a Make the android-5.0 branch compile in 4.4 to 4.1
Migrate previous minzip to minzipold replacing the existing
minzipold. This will break compatibility with trees that do not
support selinux (ICS and older). Migrate former verifier files to
verifierold.

Add fuse.h to recovery source because older trees do not have it.

Add LOCAL_MODULE_TAGS where needed for 4.1 tree.

Change-Id: Iade57cb2b0115af7fce9f56aa98636b1744a1ef4
2014-12-02 10:34:15 -06:00
Ethan Yonker
bcc502cff9 Make TWRP compile for arm64
-Remove dosfstools for arm64 until we can make it compile
-Fix TW_USE_TOOLBOX flag to work again
-Fix symlinking and handling of sh when using mksh
-Fix legacy properties to find futex_wake function
-Fix libcrecovery to not use bsd_signal anymore
-Fix rules for building with regards to libcrecovery
-Update toolbox_recovery rules to compile tools in lollipop
-Fix a few compile errors specific to arm64

Testers report that TWRP does not boot on Nexus 9 and we fail to
get a shell for adb shell. At least it compiles without errors.

Change-Id: I286be8628defb60cc527b8a548c0bdfcb0ebb574
2014-11-12 11:03:50 -06:00
Matt Mower
031163b2c6 Remove dependence on build hax in makefiles
Update makefiles to no longer rely on INTERNAL_RECOVERY_FILES. Define
LOCAL_ADDITIONAL_DEPENDENCIES instead.

Set LOCAL_LDFLAGS to properly link recovery executable.

Change-Id: I4542104c69399b5a19674b9772ab89c3709efa72
2014-11-03 13:36:03 -06:00
Matt Mower
81742fbcbc Only use SELinux tools from toolbox if not in busybox
If busybox has SELinux support, we don't need toolbox to provide SELinux
specific tools. Check busybox for restorecon to see if SELinux support
is present and then adjust the tools built by toolbox based on this.

Change-Id: I30a2b036b97ac3e26510d5e0498c52d7a8af36e1
2014-09-03 18:23:04 +02:00
Ethan Yonker
5c9336924f Add option to build TWRP with toolbox instead of busybox
Makes a smaller TWRP
Uses mksh for shell

Change-Id: If78d7745dda8919fcb2e9c9b60c6696063c14114
2014-04-04 11:28:14 -05:00
Dees Troy
bb4c0cbc4b Fix merge conflicts and update for 4.4 kitkat
Make a copy of libmincrypt in TWRP source so we do not have to
ifdef verifier.cpp for various versions of mincrypt.

Remove reboot tool from toolbox (it was removed from 4.4 and did
not compile properly on some devices in older trees)
2013-11-02 20:43:26 +00:00
Dees Troy
8d66f8bda9 Add toolbox_recovery rules
Build special limited toolbox with SELinux tools for recovery

Change-Id: Ifc76a6bd0468a72081f15ede2a68adf48af8a0f2
2013-10-16 19:46:29 +00:00