DispatchAppleOptions.cmake 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. set(WITH_APPLE_PTHREAD_SOURCE "" CACHE PATH "Path to Apple's libpthread")
  2. set(WITH_APPLE_LIBPLATFORM_SOURCE "" CACHE PATH "Path to Apple's libplatform")
  3. set(WITH_APPLE_LIBCLOSURE_SOURCE "" CACHE PATH "Path to Apple's libclosure")
  4. set(WITH_APPLE_XNU_SOURCE "" CACHE PATH "Path to Apple's XNU")
  5. set(WITH_APPLE_OBJC4_SOURCE "" CACHE PATH "Path to Apple's ObjC4")
  6. if(WITH_APPLE_PTHREAD_SOURCE)
  7. include_directories(SYSTEM "${WITH_APPLE_PTHREAD_SOURCE}")
  8. endif()
  9. if(WITH_APPLE_LIBPLATFORM_SOURCE)
  10. include_directories(SYSTEM "${WITH_APPLE_LIBPLATFORM_SOURCE}/include")
  11. endif()
  12. if(WITH_APPLE_LIBCLOSURE_SOURCE)
  13. include_directories(SYSTEM "${WITH_APPLE_LIBCLOSURE_SOURCE}")
  14. endif()
  15. if(WITH_APPLE_XNU_SOURCE)
  16. # FIXME(compnerd) this should use -idirafter
  17. include_directories("${WITH_APPLE_XNU_SOURCE}/libkern")
  18. include_directories(SYSTEM
  19. "${WITH_APPLE_XNU_SOURCE}/bsd"
  20. "${WITH_APPLE_XNU_SOURCE}/libsyscall"
  21. "${WITH_APPLE_XNU_SOURCE}/libsyscall/wrappers/libproc")
  22. # hack for xnu/bsd/sys/event.h EVFILT_SOCK declaration
  23. add_definitions(-DPRIVATE=1)
  24. endif()
  25. if(IS_DIRECTORY "/System/Library/Frameworks/System.framework/PrivateHeaders")
  26. include_directories(SYSTEM
  27. "/System/Library/Frameworks/System.framework/PrivateHeaders")
  28. endif()
  29. option(ENABLE_APPLE_TSD_OPTIMIZATIONS "use non-portable pthread TSD optimizations" OFF)
  30. if(ENABLE_APPLE_TSD_OPTIMIZATIONS)
  31. set(USE_APPLE_TSD_OPTIMIZATIONS 1)
  32. else()
  33. set(USE_APPLE_TSD_OPTIMIZATIONS 0)
  34. endif()
  35. # TODO(compnerd) link in libpthread headers