Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -198,6 +198,10 @@ jobs:
choco install doxygen.install -y > $null
Invoke-WebRequest -UserAgent "Wget" "https://sourceforge.net/projects/swig/files/swigwin/swigwin-4.2.1/swigwin-4.2.1.zip/download" -OutFile swig.zip
tar xf swig.zip
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: '17'
- uses: actions/setup-python@v5
if: matrix.platform != 'arm64'
with:
Expand Down
1 change: 1 addition & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,7 @@ else()
endif()
find_package(SWIG)
if(SWIG_FOUND)
find_package(Java COMPONENTS Development)
find_package(JNI)
find_package(Python3 COMPONENTS Development)
if((WIN32 OR APPLE) AND CMAKE_VERSION VERSION_GREATER_EQUAL "3.24")
Expand Down
1 change: 1 addition & 0 deletions debian/libdigidocpp-java.install
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
usr/include/ee/ria/libdigidocpp/
usr/lib/*/libdigidoc_java.so
usr/share/*/*.jar
2 changes: 1 addition & 1 deletion examples/android/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ buildscript {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:8.7.3'
classpath 'com.android.tools.build:gradle:8.8.1'
}
}

Expand Down
2 changes: 1 addition & 1 deletion examples/android/gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.9-all.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-all.zip
7 changes: 6 additions & 1 deletion examples/java/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ plugins {
id 'java'
}
group 'ee.ria'
sourceSets.main.java.srcDirs += ['/Library/libdigidocpp/include', '/usr/include']
java {
targetCompatibility JavaVersion.VERSION_17
sourceCompatibility JavaVersion.VERSION_17
Expand All @@ -15,3 +14,9 @@ jar {
attributes 'Main-Class': 'ee.ria.libdigidocpp.libdigidocpp'
}
}
def digidocppJarPath = file('/usr/share/digidocpp/digidocpp.jar').exists() ?
'/usr/share/digidocpp/digidocpp.jar' :
'/Library/Java/Extensions/digidocpp.jar'
dependencies {
implementation files(digidocppJarPath)
}
2 changes: 1 addition & 1 deletion examples/java/gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.9-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
Expand Down
1 change: 1 addition & 0 deletions libdigidocpp.wxs
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,7 @@
<?ifdef var.swig ?>
<File Name="digidoc_csharp.dll" />
<File Name="digidoc_java.dll" />
<File Source="$(var.libdigidocpp)\share\digidocpp\digidocpp.jar" />
<?ifndef var.disablePython ?>
<File Name="_digidoc_python.pyd" />
<File Name="digidoc.py" />
Expand Down
17 changes: 17 additions & 0 deletions src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -187,6 +187,23 @@ if(SWIG_FOUND)
if(WIN32)
install(FILES $<TARGET_PDB_FILE:digidoc_java> DESTINATION ${CMAKE_INSTALL_BINDIR} OPTIONAL)
endif()
if(Java_Development_FOUND)
file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/glob_java_files.cmake "
file(GLOB_RECURSE JAVA_COMPILE_FILELISTS \${JAVA_DIR}/*.java)
file(WRITE \${CMAKE_CURRENT_BINARY_DIR}/java_file_list \"\")
foreach(JAVA_FILE \${JAVA_COMPILE_FILELISTS})
file(APPEND \${CMAKE_CURRENT_BINARY_DIR}/java_file_list \"\${JAVA_FILE}\n\")
endforeach()
")
add_custom_command(TARGET digidoc_java POST_BUILD
COMMAND ${CMAKE_COMMAND} -D JAVA_DIR=${CMAKE_CURRENT_BINARY_DIR}/java -P ${CMAKE_CURRENT_BINARY_DIR}/glob_java_files.cmake
BYPRODUCTS ${CMAKE_CURRENT_BINARY_DIR}/java_file_list
)
include(UseJava)
set(CMAKE_JAVA_COMPILE_FLAGS --release 11)
add_jar(digidocpp_jar SOURCES @${CMAKE_CURRENT_BINARY_DIR}/java_file_list OUTPUT_NAME digidocpp)
install_jar(digidocpp_jar DESTINATION $<IF:$<PLATFORM_ID:Darwin>,/Library/Java/Extensions,${CMAKE_INSTALL_DATADIR}/digidocpp>)
endif()
endif()
if(Python3_FOUND)
set(CMAKE_SWIG_FLAGS -py3)
Expand Down