mirror of
https://github.com/eclipse/upm.git
synced 2025-03-15 04:57:30 +03:00
cordova: added Cordova binding based on Java binding
The Cordova plugins for each Java packages will be created if BUILDCORDOVA=ON and BUILDSWIGJAVA=ON.
This commit is contained in:
parent
090ce2040e
commit
8dc6aea73f
@ -8,6 +8,7 @@ option (BUILDFTI "Build Funtion Table Interface (FTI) in C sensor libraries" OFF
|
||||
option (BUILDSWIGPYTHON "Build swig python modules" ON)
|
||||
option (BUILDSWIGNODE "Build swig node modules" ON)
|
||||
option (BUILDSWIGJAVA "Build swig java modules" OFF)
|
||||
option (BUILDCORDOVA "Build cordova bindings" OFF)
|
||||
option (BUILDEXAMPLES "Build C/C++/JAVA examples" OFF)
|
||||
option (IPK "Generate IPK using CPack" OFF)
|
||||
option (RPM "Generate RPM using CPack" OFF)
|
||||
@ -169,6 +170,17 @@ if (BUILDSWIGJAVA)
|
||||
find_library(MRAAJAVA_LIBRARY NAMES mraajava HINTS ${MRAA_LIBDIR})
|
||||
endif (BUILDSWIGJAVA)
|
||||
|
||||
# Cordova binding
|
||||
if (BUILDCORDOVA)
|
||||
if (NOT BUILDSWIGJAVA)
|
||||
message(FATAL_ERROR "Cordova bindings require JAVA packages, please enable BUILDSWIGJAVA (-DBUILDSWIGJAVA=on).")
|
||||
endif()
|
||||
|
||||
find_package (Node REQUIRED)
|
||||
find_package (Npm REQUIRED)
|
||||
find_package (Cordova REQUIRED)
|
||||
endif (BUILDCORDOVA)
|
||||
|
||||
# Find swig if any wrapper is enabled
|
||||
if (BUILDSWIGPYTHON OR BUILDSWIGNODE OR BUILDSWIGJAVA)
|
||||
find_package (SWIG 3.0.5 REQUIRED)
|
||||
|
8
cmake/modules/FindCordova.cmake
Normal file
8
cmake/modules/FindCordova.cmake
Normal file
@ -0,0 +1,8 @@
|
||||
find_program(UPM_CORDOVA_BINDING NAMES upm-cordova-binding
|
||||
)
|
||||
|
||||
if(UPM_CORDOVA_BINDING)
|
||||
message(STATUS "The npm package to build cordova bindings found at ${UPM_CORDOVA_BINDING}")
|
||||
else()
|
||||
message(FATAL_ERROR "Unable to find the npm package for building cordova bindings, please install by 'npm install -g upm-cordova-binding'")
|
||||
endif()
|
@ -668,6 +668,17 @@ if (BUILDSWIGNODE)
|
||||
endmacro(createpackagejson)
|
||||
endif(BUILDSWIGNODE)
|
||||
|
||||
# Cordova binding
|
||||
if (BUILDCORDOVA)
|
||||
add_custom_target(cordova_binding ALL
|
||||
COMMAND upm-cordova-binding ${CMAKE_BINARY_DIR}/src ${CMAKE_BINARY_DIR}/cordova ${VERSION}
|
||||
COMMENT "Building cordova bindings based on swig java modules")
|
||||
|
||||
install(DIRECTORY ${CMAKE_BINARY_DIR}/cordova
|
||||
DESTINATION ${CMAKE_INSTALL_PREFIX}
|
||||
COMPONENT ${CMAKE_PROJECT_NAME}-cordova)
|
||||
endif (BUILDCORDOVA)
|
||||
|
||||
# Process C/C++ sensor modules
|
||||
# This function pre-processes sensor library input and hands off the
|
||||
# necessary global variables to upm_module_init for library creation,
|
||||
@ -821,6 +832,13 @@ function(upm_module_init)
|
||||
endif (BUILDSWIGJAVA)
|
||||
endif (NOT IS_C_LIBRARY)
|
||||
|
||||
# Skip if the libname is in the blacklist
|
||||
if (BUILDCORDOVA)
|
||||
if (NOT IS_C_LIBRARY AND NOT ";${JAVASWIG_BLACKLIST};" MATCHES ";${libname};")
|
||||
add_dependencies(cordova_binding javaupm_${libname})
|
||||
endif()
|
||||
endif (BUILDCORDOVA)
|
||||
|
||||
# Add additional properties to this target (used later for .pc/pom file creation)
|
||||
set_target_properties(${libname} PROPERTIES PKG_CONFIG_NAME "${libprefix}${basename}")
|
||||
set_target_properties(${libname} PROPERTIES PKG_CONFIG_DESCRIPTION "${libdescription}")
|
||||
|
Loading…
x
Reference in New Issue
Block a user