2016-11-25 1 views
2

Xcode 프로젝트에서 알림 콘텐츠 확장을 사용하고 싶습니다. CMake를 사용하여 프로젝트를 생성합니다. 이제 프로젝트에는 하나의 대상 만 있습니다.CMake를 사용하여 앱 확장을위한 Xcode에서 새 대상을 만드는 방법은 무엇입니까?

메뉴 파일 - 새로 만들기 - 대상 - Notification 콘텐츠 확장을 사용하여 Xcode에 수동으로 새 대상으로 확장명을 추가 할 수 있습니다.

CMake를 사용하여 앱 확장을위한 추가 대상이있는 Xcode 프로젝트를 새로 만드는 방법을 보여줄 수 있습니까?

답변

1

CMake 3.8 이후로 XCODE_PRODUCT_TYPE 대상 속성을 사용하여 CMake가 특정 유형의 응용 프로그램을 생성하도록 할 수 있습니다.

최소한의 예 그건 당신의 문제를 해결해야합니다

# add app bundle 
add_executable(MyApp MACOSX_BUNDLE ${APP_SOURCE_FILES}) 

# add app extension bundle 
add_library(MyAppExtension MODULE ${APPEX_SOURCE_FILES}) 
set_target_properties(MyAppExtension PROPERTIES 
    BUNDLE YES 
    XCODE_PRODUCT_TYPE com.apple.product-type.app-extension) 

# link extension bundle with UserNotifications frameworks 
find_library(UN_LIB UserNotifications) 
find_library(UNUI_LIB UserNotificationsUI) 
target_link_libraries(MyAppExtension PRIVATE ${UN_LIB} ${UNUI_LIB}) 
관련 문제