Mercurial > hg > orthanc-java
view JavaSDK/CMakeLists.txt @ 63:1bc05cacb6fc
fix samples
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Thu, 14 Aug 2025 18:13:57 +0200 |
parents | cc91717e2354 |
children |
line wrap: on
line source
# SPDX-FileCopyrightText: 2023-2025 Sebastien Jodogne, ICTEAM UCLouvain, Belgium # SPDX-License-Identifier: GPL-3.0-or-later # Java plugin for Orthanc # Copyright (C) 2023-2025 Sebastien Jodogne, ICTEAM UCLouvain, Belgium # # This program is free software: you can redistribute it and/or # modify it under the terms of the GNU General Public License as # published by the Free Software Foundation, either version 3 of the # License, or (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. cmake_minimum_required(VERSION 3.1...4.0) project(OrthancJavaSDK) find_package(Java REQUIRED) include(UseJava) set(CMAKE_JAVA_COMPILE_FLAGS "-source" "1.8" "-target" "1.8" "-Xdoclint:all/protected") include(${CMAKE_SOURCE_DIR}/../Resources/Orthanc/CMake/AutoGeneratedCode.cmake) include(${CMAKE_SOURCE_DIR}/../OrthancSDKVersion.cmake) ##################################################################### ## Auto-generate the wrapper ##################################################################### set(ORTHANC_CODE_MODEL ${CMAKE_SOURCE_DIR}/../Resources/Orthanc/OrthancPluginCodeModel.json) if(CMAKE_VERSION VERSION_GREATER "3.11") find_package(Python REQUIRED COMPONENTS Interpreter) set(PYTHON_EXECUTABLE ${Python_EXECUTABLE}) else() include(FindPythonInterp) find_package(PythonInterp REQUIRED) endif() execute_process( COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/../CodeGeneration/JavaCodeGeneration.py --sdk ${ORTHANC_SDK} --model ${ORTHANC_CODE_MODEL} --target ${AUTOGENERATED_DIR} ) ##################################################################### ## Build the plugin ##################################################################### set(JAVA_SOURCES be/uclouvain/orthanc/Callbacks.java be/uclouvain/orthanc/OrthancException.java ) foreach(source IN LISTS JAVA_SOURCES) configure_file( ${source} ${AUTOGENERATED_DIR}/${source} COPYONLY) endforeach() file(GLOB AUTOGENERATED_SOURCES ${AUTOGENERATED_DIR}/be/uclouvain/orthanc/*.java ) set(JAVADOC_OUTPUT_DIR "${CMAKE_CURRENT_BINARY_DIR}/OrthancJavaSDKDocumentation") file(MAKE_DIRECTORY ${JAVADOC_OUTPUT_DIR}) add_jar(OrthancJavaSDK ${AUTOGENERATED_SOURCES} DEPENDS CreateJavadocDirectory ) add_custom_command(TARGET OrthancJavaSDK POST_BUILD COMMAND ${Java_JAVADOC_EXECUTABLE} -Xdoclint:all ${AUTOGENERATED_SOURCES} WORKING_DIRECTORY ${JAVADOC_OUTPUT_DIR} COMMENT "Generating SDK documentation with javadoc" VERBATIM ) install( FILES ${CMAKE_CURRENT_BINARY_DIR}/OrthancJavaSDK.jar DESTINATION . )