this repo has no description
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Add a cmake option BUILD_ANDROID

And skip components not applicable on Android

* fuse: Android's kernel do support fuse, but there's no libfuse.
Instead, those who need fuse, like the /system/bin/sdcard daemon,
talks to the kernel directly.
* udev: Android doesn't use udev. They use ueventd instead.

+14 -3
+5 -2
CMakeLists.txt
··· 31 31 32 32 option(FRAMEWORK_COREAUDIO "Enable audio-related functionality" OFF) 33 33 option(FRAMEWORK_APPKIT "Enable AppKit development code" OFF) 34 + option(BUILD_ANDROID "Target Android platforms" OFF) 34 35 35 36 add_subdirectory(src) 36 37 ··· 78 79 79 80 InstallSymlink(/Volumes/SystemRoot/usr/share/zoneinfo ${CMAKE_INSTALL_PREFIX}/libexec/darling/usr/share/zoneinfo) 80 81 81 - # Our udev rules, so /dev/mach has 0666 permissions 82 - install(DIRECTORY etc/udev DESTINATION /etc) 82 + if(NOT BUILD_ANDROID) 83 + # Our udev rules, so /dev/mach has 0666 permissions 84 + install(DIRECTORY etc/udev DESTINATION /etc) 85 + endif(NOT BUILD_ANDROID) 83 86
+4 -1
src/CMakeLists.txt
··· 86 86 add_subdirectory(libc) 87 87 88 88 add_definitions(-D_LIBC_NO_FEATURE_VERIFICATION) 89 - add_subdirectory(external/darling-dmg) 89 + if(NOT BUILD_ANDROID) 90 + # Android is lack of libfuse 91 + add_subdirectory(external/darling-dmg) 92 + endif(NOT BUILD_ANDROID) 90 93 add_subdirectory(libm) 91 94 add_subdirectory(libmacho) 92 95 add_subdirectory(libgcc)
+5
src/startup/CMakeLists.txt
··· 9 9 10 10 enable_language(C ASM) 11 11 12 + if(BUILD_ANDROID) 13 + list(APPEND CMAKE_MODULE_PATH "$ENV{ANDROID_NDK}/build/cmake") 14 + include(android.toolchain) 15 + endif(BUILD_ANDROID) 16 + 12 17 set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c11") 13 18 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") 14 19 #set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,-Ttext-segment,0x400000 -Wl,-Tbss,0x410000 -Wl,-Tdata,0x420000")