From ba2ba86ed3a084a117b56bfe48044fe726a7b2ef Mon Sep 17 00:00:00 2001 From: jan Date: Thu, 20 May 2021 18:17:50 +0200 Subject: [PATCH 1/2] hotfix publishment --- ultralight-java-glfw-opengl-util/build.gradle | 33 +++++++++++++++++++ .../build.gradle.kts | 24 -------------- 2 files changed, 33 insertions(+), 24 deletions(-) create mode 100644 ultralight-java-glfw-opengl-util/build.gradle delete mode 100644 ultralight-java-glfw-opengl-util/build.gradle.kts diff --git a/ultralight-java-glfw-opengl-util/build.gradle b/ultralight-java-glfw-opengl-util/build.gradle new file mode 100644 index 0000000..912a603 --- /dev/null +++ b/ultralight-java-glfw-opengl-util/build.gradle @@ -0,0 +1,33 @@ +plugins { + id("java-library") + id("maven-publish") +} + +group = "com.labymedia" + +jar { + manifest { + attributes( + 'Automatic-Module-Name': 'com.labymedia.ultralight.util' + ) + } +} + +repositories { + mavenCentral() +} + +dependencies { + implementation(project(":ultralight-java-base")) + implementation(project(":ultralight-java-gpu")) + + implementation(group: "org.lwjgl", name: "lwjgl-glfw", version: "3.2.2") + implementation(group: "org.lwjgl", name: "lwjgl-opengl", version: "3.2.2") +} + +commonPublish(project) { + pom { + name = "UltralightJavaGlfwOpenGLUtil" + description = "Ultralight Java Glfw OpenGL Util" + } +} \ No newline at end of file diff --git a/ultralight-java-glfw-opengl-util/build.gradle.kts b/ultralight-java-glfw-opengl-util/build.gradle.kts deleted file mode 100644 index cb4058b..0000000 --- a/ultralight-java-glfw-opengl-util/build.gradle.kts +++ /dev/null @@ -1,24 +0,0 @@ -plugins { - id("java-library") - id("maven-publish") -} - -group = "com.labymedia" - -tasks.getByName("jar", Jar::class) { - manifest { - attributes(mapOf("Automatic-Module-Name" to "com.labymedia.ultralight")) - } -} - -repositories{ - mavenCentral() -} - -dependencies { - implementation(project(":ultralight-java-base")) - implementation(project(":ultralight-java-gpu")) - - implementation(group = "org.lwjgl", name = "lwjgl-glfw", version = "3.2.2") - implementation(group = "org.lwjgl", name = "lwjgl-opengl", version = "3.2.2") -} \ No newline at end of file From 8aeb44fa4fb832a42e3d60b97b34f01be63ab800 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Brachth=C3=A4user?= Date: Fri, 21 May 2021 20:18:58 +0200 Subject: [PATCH 2/2] Fix windows build cleanup code --- .github/workflows/ci.yml | 4 ++-- VERSION | 2 +- ultralight-java-base/build.gradle | 1 + .../util/UltralightGlfwOpenGLContext.java | 16 ++++++++-------- .../util/UltralightGlfwOpenGLGPUDriver.java | 2 +- .../util/UltralightGlfwOpenGLWindow.java | 5 ++--- .../util/UltralightOpenGLGPUDriver.java | 2 +- ultralight-java-gpu-native/CMakeLists.txt | 7 +++++++ ultralight-java-gpu/build.gradle | 1 + ultralight-java-native/CMakeLists.txt | 7 +++++++ 10 files changed, 31 insertions(+), 16 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a8a20dc..4bc7979 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -60,12 +60,12 @@ jobs: uses: actions/upload-artifact@v1 with: name: native-binaries-ultralight - path: native-binaries/ultralight/Debug + path: native-binaries/ultralight - name: Upload gpu artifacts uses: actions/upload-artifact@v1 with: name: native-binaries-ultralight-gpu - path: native-binaries/ultralight-gpu/Debug + path: native-binaries/ultralight-gpu build-jars: needs: [ build-binaries-unix, build-binaries-windows ] diff --git a/VERSION b/VERSION index cb498ab..76914dd 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.4.8 +0.4.9 diff --git a/ultralight-java-base/build.gradle b/ultralight-java-base/build.gradle index e547597..bcecb2a 100644 --- a/ultralight-java-base/build.gradle +++ b/ultralight-java-base/build.gradle @@ -19,6 +19,7 @@ processResources { } from(rootProject.file(project.getProperties().getOrDefault("ultralight-java.base.native-binaries-folder", project(":ultralight-java-native").buildDir.toPath().toString() + "/nativeBinaries").toString())) { into "native-binaries" + include("*.dll", "*.so", "*.dylib") } } diff --git a/ultralight-java-glfw-opengl-util/src/main/java/com/labymedia/ultralight/util/UltralightGlfwOpenGLContext.java b/ultralight-java-glfw-opengl-util/src/main/java/com/labymedia/ultralight/util/UltralightGlfwOpenGLContext.java index 9e6c38f..a5a6804 100644 --- a/ultralight-java-glfw-opengl-util/src/main/java/com/labymedia/ultralight/util/UltralightGlfwOpenGLContext.java +++ b/ultralight-java-glfw-opengl-util/src/main/java/com/labymedia/ultralight/util/UltralightGlfwOpenGLContext.java @@ -30,7 +30,6 @@ import java.util.concurrent.*; import java.util.function.Consumer; -import static org.lwjgl.glfw.GLFW.glfwInit; import static org.lwjgl.opengl.GL.createCapabilities; /** @@ -63,16 +62,17 @@ private UltralightGlfwOpenGLContext(int mainWindowWidth, int mainWindowHeight, S this.driver = driver; this.thread = new UltralightThread(); this.subWindows = new HashSet<>(); - this.postAndWait(() -> initialize(mainWindowWidth, mainWindowHeight, mainWindowTitle, parentWindow)); + initialize(mainWindowWidth, mainWindowHeight, mainWindowTitle, parentWindow); } private void initialize(int mainWindowWidth, int mainWindowHeight, String mainWindowTitle, long parentWindow) { - glfwInit(); this.mainWindow = UltralightGlfwOpenGLWindow.create(this, mainWindowWidth, mainWindowHeight, mainWindowTitle, parentWindow); - this.mainWindow.makeContext(); - createCapabilities(); - this.platform = UltralightPlatform.instance(); - this.driver.initialise(this); + this.postAndWait(() -> { + this.mainWindow.makeContext(); + createCapabilities(); + this.platform = UltralightPlatform.instance(); + this.driver.initialize(this); + }); } /** @@ -203,7 +203,7 @@ public UltralightGlfwOpenGLContext updateJavaScript() { * @param window the window to render * @return this * @see UltralightOpenGLGPUDriver#renderTexture(UltralightGlfwOpenGLWindow) - * @see UltralightOpenGLGPUDriver#initialise(UltralightGlfwOpenGLContext) + * @see UltralightOpenGLGPUDriver#initialize(UltralightGlfwOpenGLContext) * @see UltralightPlatform#setGPUDriver(UltralightGPUDriverNative) * @see UltralightPlatform#setGPUDriver(UltralightGPUDriver) * @see UltralightPlatform#setGPUDriverPointer(long) diff --git a/ultralight-java-glfw-opengl-util/src/main/java/com/labymedia/ultralight/util/UltralightGlfwOpenGLGPUDriver.java b/ultralight-java-glfw-opengl-util/src/main/java/com/labymedia/ultralight/util/UltralightGlfwOpenGLGPUDriver.java index f41de5a..3ca300b 100644 --- a/ultralight-java-glfw-opengl-util/src/main/java/com/labymedia/ultralight/util/UltralightGlfwOpenGLGPUDriver.java +++ b/ultralight-java-glfw-opengl-util/src/main/java/com/labymedia/ultralight/util/UltralightGlfwOpenGLGPUDriver.java @@ -43,7 +43,7 @@ private UltralightGlfwOpenGLGPUDriver(boolean msaa) { * Set the {@link UltralightOpenGLGPUDriverNative} instance to the {@link com.labymedia.ultralight.UltralightPlatform}. */ @Override - public void initialise(UltralightGlfwOpenGLContext context) { + public void initialize(UltralightGlfwOpenGLContext context) { this.driverNative = new UltralightOpenGLGPUDriverNative(context.getMainWindow().getWindowHandle(), this.msaa, GLFW.Functions.GetProcAddress); this.context = context; this.context.getPlatform().setGPUDriver(this.driverNative); diff --git a/ultralight-java-glfw-opengl-util/src/main/java/com/labymedia/ultralight/util/UltralightGlfwOpenGLWindow.java b/ultralight-java-glfw-opengl-util/src/main/java/com/labymedia/ultralight/util/UltralightGlfwOpenGLWindow.java index 6c0480c..ffdc938 100644 --- a/ultralight-java-glfw-opengl-util/src/main/java/com/labymedia/ultralight/util/UltralightGlfwOpenGLWindow.java +++ b/ultralight-java-glfw-opengl-util/src/main/java/com/labymedia/ultralight/util/UltralightGlfwOpenGLWindow.java @@ -22,7 +22,6 @@ import com.labymedia.ultralight.UltralightPlatform; import com.labymedia.ultralight.UltralightView; import com.labymedia.ultralight.config.UltralightViewConfig; -import com.labymedia.ultralight.gpu.UltralightGPUDriverNativeUtil; import com.labymedia.ultralight.plugin.render.UltralightGPUDriver; import com.labymedia.ultralight.plugin.render.UltralightGPUDriverNative; import org.lwjgl.glfw.GLFW; @@ -55,7 +54,7 @@ public class UltralightGlfwOpenGLWindow { */ private UltralightGlfwOpenGLWindow(UltralightGlfwOpenGLContext context, int width, int height, String title, long sharedWindow) { this.context = context; - this.context.postAndWait(() -> initialize(width, height, title, sharedWindow)); + initialize(width, height, title, sharedWindow); } private void initialize(int width, int height, String title, long sharedWindow) { @@ -95,7 +94,7 @@ public long getWindowHandle() { * * @return this * @see UltralightOpenGLGPUDriver#renderTexture(UltralightGlfwOpenGLWindow) - * @see UltralightOpenGLGPUDriver#initialise(UltralightGlfwOpenGLContext) + * @see UltralightOpenGLGPUDriver#initialize(UltralightGlfwOpenGLContext) * @see UltralightPlatform#setGPUDriver(UltralightGPUDriverNative) * @see UltralightPlatform#setGPUDriver(UltralightGPUDriver) * @see UltralightPlatform#setGPUDriverPointer(long) diff --git a/ultralight-java-glfw-opengl-util/src/main/java/com/labymedia/ultralight/util/UltralightOpenGLGPUDriver.java b/ultralight-java-glfw-opengl-util/src/main/java/com/labymedia/ultralight/util/UltralightOpenGLGPUDriver.java index 245e0bf..e097e42 100644 --- a/ultralight-java-glfw-opengl-util/src/main/java/com/labymedia/ultralight/util/UltralightOpenGLGPUDriver.java +++ b/ultralight-java-glfw-opengl-util/src/main/java/com/labymedia/ultralight/util/UltralightOpenGLGPUDriver.java @@ -29,7 +29,7 @@ public interface UltralightOpenGLGPUDriver { * * @param context the context to initialize */ - void initialise(UltralightGlfwOpenGLContext context); + void initialize(UltralightGlfwOpenGLContext context); /** * Update web content and render it to an OpenGL texture. diff --git a/ultralight-java-gpu-native/CMakeLists.txt b/ultralight-java-gpu-native/CMakeLists.txt index 7870066..4844237 100644 --- a/ultralight-java-gpu-native/CMakeLists.txt +++ b/ultralight-java-gpu-native/CMakeLists.txt @@ -16,6 +16,13 @@ include(CheckSymbolExists) set(CMAKE_CXX_STANDARD 17) set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_CURRENT_LIST_DIR}/../3rdparty/cmake") +foreach(OUTPUTCONFIG ${CMAKE_CONFIGURATION_TYPES}) + string(TOUPPER ${OUTPUTCONFIG} OUTPUTCONFIG) + set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_${OUTPUTCONFIG} ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}) + set(CMAKE_LIBRARY_OUTPUT_DIRECTORY_${OUTPUTCONFIG} ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}) + set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY_${OUTPUTCONFIG} ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}) +endforeach(OUTPUTCONFIG CMAKE_CONFIGURATION_TYPES) + ################################ # Set up 3rdparty dependencies # ################################ diff --git a/ultralight-java-gpu/build.gradle b/ultralight-java-gpu/build.gradle index 39308a1..fc1d069 100644 --- a/ultralight-java-gpu/build.gradle +++ b/ultralight-java-gpu/build.gradle @@ -19,6 +19,7 @@ processResources { } from(rootProject.file(project.getProperties().getOrDefault("ultralight-java.gpu.native-binaries-folder", project(":ultralight-java-gpu-native").buildDir.toPath().toString() + "/nativeBinaries").toString())) { into "native-binaries" + include("*.dll", "*.so", "*.dylib") } } diff --git a/ultralight-java-native/CMakeLists.txt b/ultralight-java-native/CMakeLists.txt index 994aee7..7509f90 100644 --- a/ultralight-java-native/CMakeLists.txt +++ b/ultralight-java-native/CMakeLists.txt @@ -16,6 +16,13 @@ include(CheckSymbolExists) set(CMAKE_CXX_STANDARD 17) set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_CURRENT_LIST_DIR}/../3rdparty/cmake") +foreach(OUTPUTCONFIG ${CMAKE_CONFIGURATION_TYPES}) + string(TOUPPER ${OUTPUTCONFIG} OUTPUTCONFIG) + set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_${OUTPUTCONFIG} ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}) + set(CMAKE_LIBRARY_OUTPUT_DIRECTORY_${OUTPUTCONFIG} ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}) + set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY_${OUTPUTCONFIG} ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}) +endforeach(OUTPUTCONFIG CMAKE_CONFIGURATION_TYPES) + ################################ # Set up 3rdparty dependencies # ################################