File: build_java_doc.cmake

package info (click to toggle)
gdal 3.11.3%2Bdfsg-1~exp1
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 89,016 kB
  • sloc: cpp: 1,165,048; ansic: 208,864; python: 26,958; java: 5,972; xml: 4,611; sh: 3,776; cs: 2,508; yacc: 1,306; makefile: 213
file content (40 lines) | stat: -rw-r--r-- 2,219 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
message(STATUS "Building javadoc")

file(GLOB_RECURSE SOURCE_JAVA_FILES RELATIVE "${BUILD_DIR}" "${BUILD_DIR}/org/*.java")

# Duplicate org to ogr_patched/
file(REMOVE_RECURSE "${BUILD_DIR}/org_patched")
execute_process(COMMAND ${CMAKE_COMMAND} -E copy_directory "${BUILD_DIR}/org" "${BUILD_DIR}/org_patched/org")

# Patch the generated SWIG Java files to add the Javadoc into them
# thanks to the small utility add_javadoc
execute_process(COMMAND ${ADD_JAVADOC_EXE} "${SOURCE_DIR}/javadoc.java" "${BUILD_DIR}/org_patched" ${SOURCE_JAVA_FILES})

# Generate the HTML Javadoc
file(REMOVE_RECURSE "${BUILD_DIR}/java")

file(COPY "${SOURCE_DIR}/gdal-package-info.java" DESTINATION "${BUILD_DIR}/org_patched/org/gdal/gdal")
file(RENAME "${BUILD_DIR}/org_patched/org/gdal/gdal/gdal-package-info.java" "${BUILD_DIR}/org_patched/org/gdal/gdal/package-info.java")

file(COPY "${SOURCE_DIR}/gdalconst-package-info.java" DESTINATION "${BUILD_DIR}/org_patched/org/gdal/gdalconst")
file(RENAME "${BUILD_DIR}/org_patched/org/gdal/gdalconst/gdalconst-package-info.java" "${BUILD_DIR}/org_patched/org/gdal/gdalconst/package-info.java")

file(COPY "${SOURCE_DIR}/ogr-package-info.java" DESTINATION "${BUILD_DIR}/org_patched/org/gdal/ogr")
file(RENAME "${BUILD_DIR}/org_patched/org/gdal/ogr/ogr-package-info.java" "${BUILD_DIR}/org_patched/org/gdal/ogr/package-info.java")

file(COPY "${SOURCE_DIR}/osr-package-info.java" DESTINATION "${BUILD_DIR}/org_patched/org/gdal/osr")
file(RENAME "${BUILD_DIR}/org_patched/org/gdal/osr/osr-package-info.java" "${BUILD_DIR}/org_patched/org/gdal/osr/package-info.java")

execute_process(COMMAND ${Java_JAVADOC_EXECUTABLE}
                        -overview overview.html
                        -public
                        -d "${BUILD_DIR}/java"
                        -sourcepath "${BUILD_DIR}/org_patched"
                        -subpackages org.gdal
                        -windowtitle "GDAL/OGR ${GDAL_VERSION} Java bindings API"
                WORKING_DIRECTORY "${BUILD_DIR}")

# Create a zip with the Javadoc
file(REMOVE "${BUILD_DIR}/javadoc.zip")
execute_process(COMMAND ${CMAKE_COMMAND} -E tar "cfv" "javadoc.zip" --format=zip java
                WORKING_DIRECTORY "${BUILD_DIR}")