CMAKE_MINIMUM_REQUIRED(VERSION 2.6) PROJECT(ug-camera-efl C CXX) message(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>") message("furcate arm or i686") EXEC_PROGRAM(uname ARGS -m OUTPUT_VARIABLE CMAKE_SYSTEM_VERSION) message("This package is building by ${CMAKE_SYSTEM_VERSION}") message(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>") if("${CMAKE_SYSTEM_VERSION}" MATCHES "^arm.*") SET(SRCS src/cam.c src/camera_utils.c src/cam_mm.c src/cam_app.c src/cam_animation.c src/cam_sound.c src/cam_debug.c src/cam_config.c src/cam_file.c src/cam_ta.c src/cam_continuous_shot.c src/cam_rec.c src/cam_lbs.c src/cam_popup.c src/cam_long_press.c src/cam_face_detection_focus.c src/cam_ui_effect_utils.c src/cam_ui_rotate_utils.c src/cam_menu_composer.c src/cam_typeconverter.cpp src/cam_device_capacity.cpp src/CamTypeConverter.cpp src/CamDeviceCapacity.cpp src/cam_voice_command.c src/cam_exif_info.c src/edc-callback/cam_common_edc_callback.c src/edc-callback/cam_toolbar_edc_callback.c src/edc-callback/cam_indicator_edc_callback.c src/edc-callback/cam_ev_edc_callback.c src/edc-callback/cam_zoom_edc_callback.c src/edc-callback/cam_recording_edc_callback.c ) else() SET(SRCS src/cam.c src/camera_utils.c src/cam_mm.c src/cam_app.c src/cam_sound.c src/cam_debug.c src/cam_config.c src/cam_file.c src/cam_ta.c src/cam_continuous_shot.c src/cam_rec.c src/cam_lbs.c src/cam_popup.c src/cam_long_press.c src/cam_face_detection_focus.c src/cam_ui_effect_utils.c src/cam_ui_rotate_utils.c src/cam_menu_composer.c src/cam_typeconverter.cpp src/cam_device_capacity.cpp src/CamTypeConverter.cpp src/CamDeviceCapacity.cpp src/cam_voice_command.c src/edc-callback/cam_common_edc_callback.c src/edc-callback/cam_toolbar_edc_callback.c src/edc-callback/cam_indicator_edc_callback.c src/edc-callback/cam_ev_edc_callback.c src/edc-callback/cam_zoom_edc_callback.c src/edc-callback/cam_recording_edc_callback.c ) endif() INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/include ${CMAKE_CURRENT_SOURCE_DIR}/include/edc-callback ) INCLUDE(FindPkgConfig) pkg_check_modules(pkgs REQUIRED elementary devman capi-appfw-application capi-content-media-content capi-location-manager capi-media-camera capi-media-image-util capi-media-recorder capi-media-sound-manager capi-media-wav-player capi-system-power vconf dlog ui-gadget-1 utilX ecore-x ecore ecore-evas ecore-input eina syspopup-caller capi-system-sensor ) FOREACH(flag ${pkgs_CFLAGS}) SET(EXTRA_CXXFLAGS "${EXTRA_CXXFLAGS} ${flag}") ENDFOREACH(flag) SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${EXTRA_CXXFLAGS} -Wall") SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${EXTRA_CXXFLAGS} -fPIC") SET(CMAKE_C_FLAGS ${CMAKE_CXX_FLAGS}) SET(CAMERA_UG_PACKAGE_NAME "ug-camera-efl") SET(PREFIX ${CMAKE_INSTALL_PREFIX}) SET(BINDIR "${PREFIX}/bin") SET(RESDIR "${PREFIX}/res") SET(DATADIR "/opt/usr/ug/data/${CAMERA_UG_PACKAGE_NAME}") SET(LOCALEDIR "${RESDIR}/locale") SET(EDJDIR "${RESDIR}/edje/${CAMERA_UG_PACKAGE_NAME}") SET(SOUNDDIR "${RESDIR}/sounds/${CAMERA_UG_PACKAGE_NAME}") SET(ICONDIR "${RESDIR}/icons/${CAMERA_UG_PACKAGE_NAME}") ADD_DEFINITIONS("-DPREFIX=\"${CMAKE_INSTALL_PREFIX}\"") ADD_DEFINITIONS("-DFACTORYFS=\"$ENV{PREFIX}\"") ADD_DEFINITIONS("-DRESDIR=\"${RESDIR}\"") ADD_DEFINITIONS("-DDATADIR=\"${DATADIR}\"") ADD_DEFINITIONS("-DEDJDIR=\"${EDJDIR}\"") ADD_DEFINITIONS("-DSLP_DEBUG") if(NOT "${CMAKE_SYSTEM_VERSION}" MATCHES "^arm.*") add_definitions(-DCAMERA_MACHINE_I686="${CMAKE_SYSTEM_VERSION}") endif() ADD_LIBRARY(${PROJECT_NAME} SHARED ${SRCS}) SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES SOVERSION 0.1.0) if("${CMAKE_SYSTEM_VERSION}" MATCHES "^arm.*") #TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${${PROJECT_NAME}_pkgs_LDFLAGS}) TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LDFLAGS} ${EXTPkgs_LDFLAGS} "-fpie") else() TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LDFLAGS}) endif() ###################################### EDC, Begin ################################ SET(EDC_DIR ${CMAKE_SOURCE_DIR}/edc) SET(IMAGE_DIR ${CMAKE_SOURCE_DIR}/images/edc_images) SET(EDC_FILES cam_main_layout cam_toolbar_layout cam_toolbar_layout_inverse cam_toolbar_layout_vertical cam_toolbar_layout_vertical_inverse cam_recording_edje cam_recording_edje_inverse cam_recording_edje_vertical cam_recording_edje_vertical_inverse style_ctxpopup_camera_with_radio style_slider_camera style_label_camera style_button_camera cam_indicator_layout cam_utils cam_ev_layout cam_ev_layout_inverse cam_ev_layout_vertical cam_ev_layout_vertical_inverse cam_zoom_layout cam_zoom_layout_inverse cam_zoom_layout_vertical cam_zoom_layout_vertical_inverse cam_ctxpopup_shortcuts cam_setting_popup_layout cam_images ) FOREACH(file_name ${EDC_FILES}) ADD_CUSTOM_TARGET(${file_name}.edj COMMAND edje_cc -id ${IMAGE_DIR} ${EDC_DIR}/${file_name}.edc ${EDC_DIR}/${file_name}.edj DEPENDS ${EDC_DIR}/${file_name}.edc ) ADD_DEPENDENCIES(${PROJECT_NAME} ${file_name}.edj) INSTALL(FILES ${EDC_DIR}/${file_name}.edj DESTINATION ${EDJDIR}) ENDFOREACH(file_name) ###################################### EDC, end ################################ # install library INSTALL(TARGETS ${PROJECT_NAME} DESTINATION /usr/ug/lib) # install sound & image files INSTALL(FILES ${CMAKE_SOURCE_DIR}/ug-camera-efl.xml DESTINATION /usr/share/packages/) INSTALL(FILES ${CMAKE_SOURCE_DIR}/ug-camera-efl.png DESTINATION ${ICONDIR}) INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/sounds DESTINATION ${SOUNDDIR}) # install .camera.ini file INSTALL(FILES ${CMAKE_SOURCE_DIR}/.camera.ini DESTINATION ${DATADIR}) # i18n ADD_SUBDIRECTORY(po)