Add support for java examples programs compilation
Signed-off-by: Shine <yll@radxa.com>
This commit is contained in:
@@ -1,6 +1,12 @@
|
|||||||
add_subdirectory (c)
|
add_subdirectory (c)
|
||||||
add_subdirectory (platform)
|
add_subdirectory (platform)
|
||||||
|
|
||||||
|
if ( (DEFINED ENV{JAVA_HOME_NATIVE}) OR (DEFINED ENV{JAVA_HOME}) )
|
||||||
|
#add_subdirectory (java)
|
||||||
|
else ()
|
||||||
|
#message ( WARNING "You haven't configured the Java environment variables yet!")
|
||||||
|
endif ()
|
||||||
|
|
||||||
if (NOT ANDROID_TOOLCHAIN)
|
if (NOT ANDROID_TOOLCHAIN)
|
||||||
add_subdirectory (c++)
|
add_subdirectory (c++)
|
||||||
endif ()
|
endif ()
|
||||||
|
36
examples/java/CMakeLists.txt
Normal file
36
examples/java/CMakeLists.txt
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
if (NOT DEFINED ENV{JAVA_HOME_NATIVE})
|
||||||
|
if (NOT DEFINED ENV{JAVA_HOME})
|
||||||
|
message (FATAL_ERROR "Neither JAVA_HOME nor JAVA_HOME_NATIVE are set")
|
||||||
|
endif()
|
||||||
|
set (JAVA_HOME_NATIVE $ENV{JAVA_HOME})
|
||||||
|
set (JAVAC $ENV{JAVA_HOME}/bin/javac)
|
||||||
|
set (JAR $ENV{JAVA_HOME}/bin/jar)
|
||||||
|
else ()
|
||||||
|
set (JAVAC $ENV{JAVA_HOME_NATIVE}/bin/javac)
|
||||||
|
set (JAR $ENV{JAVA_HOME_NATIVE}/bin/jar)
|
||||||
|
endif ()
|
||||||
|
|
||||||
|
set (Main_Class_Name_list
|
||||||
|
AioA0 BlinkIO BlinkOnboard Bmp85
|
||||||
|
CyclePwm3 Example FTDITest GpioMmapped
|
||||||
|
GpioRead6 HelloEdison I2cCompass Isr
|
||||||
|
SpiMAX7219 SpiMCP4261 UartExample)
|
||||||
|
|
||||||
|
foreach (Main_Class_Name ${Main_Class_Name_list})
|
||||||
|
configure_file (
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/manifest.txt.in
|
||||||
|
${CMAKE_CURRENT_BINARY_DIR}/${Main_Class_Name}/manifest.txt
|
||||||
|
@ONLY
|
||||||
|
)
|
||||||
|
|
||||||
|
if (EXISTS "${CMAKE_CURRENT_BINARY_DIR}/../../src/java/mraa.jar")
|
||||||
|
set (mraa_jar_path ${CMAKE_CURRENT_BINARY_DIR}/../../src/java/mraa.jar)
|
||||||
|
elseif (EXISTS "/usr/local/lib/java/mraa.jar")
|
||||||
|
set (mraa_jar_path /usr/local/lib/java/mraa.jar)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
add_custom_target (${Main_Class_Name}_jar ALL
|
||||||
|
COMMAND ${JAVAC} -cp ${mraa_jar_path} -d ${CMAKE_CURRENT_BINARY_DIR}/${Main_Class_Name} ${CMAKE_CURRENT_SOURCE_DIR}/${Main_Class_Name}.java
|
||||||
|
COMMAND cd ${CMAKE_CURRENT_BINARY_DIR}/${Main_Class_Name}/ && ${JAR} -cmvf manifest.txt ${Main_Class_Name}.jar ${Main_Class_Name}.class
|
||||||
|
)
|
||||||
|
endforeach ()
|
Reference in New Issue
Block a user