CMAKE_MINIMUM_REQUIRED(VERSION 2.6) PROJECT(elm-webview C) #---------------------------------------------------- # set values #---------------------------------------------------- SET(PREFIX ${CMAKE_INSTALL_PREFIX}) SET(EXEC_PREFIX "\${prefix}") SET(LIBDIR "\${prefix}/lib") SET(INCLUDEDIR "\${prefix}/include") SET(EDJEDIR "${PREFIX}/share/edje") SET(VERSION_MAJOR 1) SET(VERSION "${VERSION_MAJOR}.0.0") #---------------------------------------------------- # set source files #---------------------------------------------------- SET(SRCS elm_webview.c els_webview.c els_webview_cbhm.c els_webview_editor.c modal_utility/modal_util.c touch_processor/els_touch.c) #---------------------------------------------------- # set build type #---------------------------------------------------- IF("${CMAKE_BUILD_TYPE}" STREQUAL "") SET(CMAKE_BUILD_TYPE "Release") ENDIF("${CMAKE_BUILD_TYPE}" STREQUAL "") MESSAGE("Build type: ${CMAKE_BUILD_TYPE}") #---------------------------------------------------- # set include directories #---------------------------------------------------- INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR} ${CMAKE_SOURCE_DIR}/modal_utility ${CMAKE_SOURCE_DIR}/touch_processor) #---------------------------------------------------- # set pkg-config modules #---------------------------------------------------- INCLUDE(FindPkgConfig) pkg_check_modules(pkgs REQUIRED elementary evas ecore-imf ecore ecore-x ecore-input ewebkit appcore-efl ui-gadget dlog utilX glib-2.0) FIND_LIBRARY(LIB_GNUTLS gnutls) FOREACH(flag ${pkgs_CFLAGS}) SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}") ENDFOREACH(flag) #---------------------------------------------------- # set flags #---------------------------------------------------- SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fvisibility=hidden") SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -g -Wall") SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}") SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -O0 -g") SET(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -O2") #---------------------------------------------------- # enable constanct tbs as default tiled backingstore #---------------------------------------------------- ADD_DEFINITIONS("-DLOG_TAG=\"elm-webview\"") ADD_DEFINITIONS("-DEDJEDIR=\"${EDJEDIR}\"") #---------------------------------------------------- # set option for arm #---------------------------------------------------- FIND_PROGRAM(UNAME NAMES uname) EXEC_PROGRAM("${UNAME}" ARGS "-m" OUTPUT_VARIABLE "ARCH") IF("${ARCH}" STREQUAL "arm") ADD_DEFINITIONS("-D_TARGET") MESSAGE("add -D_TARGET") SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fpie") SET(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -mabi=aapcs-linux -mfpu=vfp -mfloat-abi=softfp") ENDIF("${ARCH}" STREQUAL "arm") #---------------------------------------------------- # make #---------------------------------------------------- ADD_LIBRARY(${PROJECT_NAME} SHARED ${SRCS}) SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES SOVERSION ${VERSION_MAJOR}) SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES VERSION ${VERSION}) TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LDFLAGS} ${LIB_GNUTLS}) # ewebview.edj ADD_CUSTOM_TARGET(ewebview.edj COMMAND edje_cc ${CMAKE_SOURCE_DIR}/ewebview.edc ${CMAKE_BINARY_DIR}/ewebview.edj DEPENDS ${CMAKE_SOURCE_DIR}/ewebview.edc ) ADD_DEPENDENCIES(${PROJECT_NAME} ewebview.edj) #---------------------------------------------------- # install #---------------------------------------------------- INSTALL(TARGETS ${PROJECT_NAME} DESTINATION lib COMPONENT RuntimeLibraries) INSTALL(FILES ${CMAKE_SOURCE_DIR}/Elementary_webview.h DESTINATION include/elementary-webview-0) #INSTALL(FILES ${CMAKE_SOURCE_DIR}/TIZEN_ElementaryWebView_PG.h DESTINATION include/elementary-webview-0) CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/${PROJECT_NAME}.pc.in ${PROJECT_NAME}.pc @ONLY) INSTALL(FILES ${CMAKE_BINARY_DIR}/${PROJECT_NAME}.pc DESTINATION lib/pkgconfig) INSTALL(FILES ${CMAKE_BINARY_DIR}/ewebview.edj DESTINATION ${EDJEDIR}) #---------------------------------------------------- # add sub directory #---------------------------------------------------- ADD_SUBDIRECTORY(modal_utility/modal_launcher)