Skip to content

Commit

Permalink
Add jre to package
Browse files Browse the repository at this point in the history
  • Loading branch information
Tereius committed Jan 28, 2025
1 parent 62edc03 commit c822b2a
Showing 1 changed file with 17 additions and 6 deletions.
23 changes: 17 additions & 6 deletions conanfile.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
from conan.tools.files import copy, get, replace_in_file
from conan.tools.scm import Git
from conan.errors import ConanInvalidConfiguration
import json, os
import json, os, io

required_conan_version = ">=2.0"

Expand Down Expand Up @@ -53,20 +53,31 @@ def source(self):
replace_in_file(self, os.path.join(self.source_folder, "build.gradle"), "JavaLanguageVersion.of(11)", "JavaLanguageVersion.of(19)")

def build(self):

with open(os.path.join(self.build_folder, "gradle.properties"), "w") as f:
f.write('version=%s' % self.version)

stdout = io.StringIO()
if self.settings.os == "Macos" or self.settings.os == "Linux":
#self.run("./gradlew clean")
self.run("./gradlew build -x test")
self.run("./gradlew getDependencies")
self.run("jdeps --multi-release 19 --module-path \"$JAVA_HOME/lib/jmods\" -cp 'build/libs/*' --print-module-deps build/libs/Photon-%s.jar" % self.version, stdout=stdout)
self.run("jlink --compress 2 --strip-debug --no-header-files --no-man-pages --module-path \"$JAVA_HOME/lib/jmods\" --output jre --add-modules java.desktop,%s" % stdout.getvalue())
else:
#self.run("gradlew.bat clean")
self.run("gradlew.bat build -x test")
self.run("gradlew.bat getDependencies")
self.run("jdeps --multi-release 19 --module-path \"%JAVA_HOME%/lib/jmods\" -cp build/libs/* --print-module-deps build/libs/Photon-%s.jar" % self.version, stdout=stdout)
self.run("jlink --compress 2 --strip-debug --no-header-files --no-man-pages --module-path \"%JAVA_HOME%/lib/jmods\" --output jre --add-modules java.desktop,%s" % stdout.getvalue())

def package(self):
copy(self, pattern="*.jar", src=os.path.join(self.build_folder, "build", "libs"), dst=os.path.join(self.package_folder, "photon"))
copy(self, pattern="*", src=os.path.join(self.build_folder, "jre"), dst=os.path.join(self.package_folder, "jre"))
with open(os.path.join(self.package_folder, "Findphoton.cmake"), "w") as f:
f.write('file(GLOB photon_jar_files "${CMAKE_CURRENT_LIST_DIR}/photon/*.jar")\nset(photon_files ${photon_jar_files} CACHE STRING "")\nset(photon_dir "${CMAKE_CURRENT_LIST_DIR}/photon" CACHE STRING "")\nset(photon_jre_dir "${CMAKE_CURRENT_LIST_DIR}/jre" CACHE STRING "")')

def package_info(self):
self.cpp_info.set_property("cmake_find_mode", "none")
self.cpp_info.includedirs = []
self.cpp_info.libdirs = []
self.cpp_info.bindirs = []
self.cpp_info.builddirs = ['./']
copy(self, pattern="*.jar", src=os.path.join(self.build_folder, "build", "libs"), dst=os.path.join(self.package_folder, "bin"))
with open(os.path.join(self.package_folder, "Findphoton.cmake"), "w") as f:
f.write('file(GLOB photon_jar_files "${CMAKE_CURRENT_LIST_DIR}/bin/*.jar")\nset(photon_files ${photon_jar_files} PARENT_SCOPE)')

0 comments on commit c822b2a

Please # to comment.