diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2019-06-02 21:45:28 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2019-06-02 21:45:28 +0100 |
commit | 2018227e9344edb9da15fc6a4a8298086cc2aa77 (patch) | |
tree | c18e1c09e605e94e2a1e93345ad25746cc9e14b9 /dev-java/openjfx | |
parent | 6f8038813c460b4f0572d5ef595cdfa94af3a94d (diff) |
gentoo resync : 02.06.2019
Diffstat (limited to 'dev-java/openjfx')
-rw-r--r-- | dev-java/openjfx/Manifest | 17 | ||||
-rw-r--r-- | dev-java/openjfx/files/11/disable-buildSrc-tests.patch | 13 | ||||
-rw-r--r-- | dev-java/openjfx/files/11/fix-build-on-gradle-5x.patch | 23 | ||||
-rw-r--r-- | dev-java/openjfx/files/11/glibc-compatibility.patch | 15 | ||||
-rw-r--r-- | dev-java/openjfx/files/11/respect-user-cflags.patch | 227 | ||||
-rw-r--r-- | dev-java/openjfx/files/11/use-system-swt-jar.patch | 25 | ||||
-rw-r--r-- | dev-java/openjfx/metadata.xml | 19 | ||||
-rw-r--r-- | dev-java/openjfx/openjfx-11.0.3_p1.ebuild | 220 |
8 files changed, 559 insertions, 0 deletions
diff --git a/dev-java/openjfx/Manifest b/dev-java/openjfx/Manifest new file mode 100644 index 000000000000..a1313a5f4f7d --- /dev/null +++ b/dev-java/openjfx/Manifest @@ -0,0 +1,17 @@ +AUX 11/disable-buildSrc-tests.patch 534 BLAKE2B d1cb4da89602fa9a48e5509586d1909d10b9d62e167bdd4d57b9615f2896704dd0ee925d14a86753bf53182f85fc9c21f195c3f044a0c6d38c960ee4f5494332 SHA512 ffbc3d671cea448ffddd8d92e4a4031a941008c067d5a7acb358fb82ed217c9388ef1916aa04cf4693ff2a83e0bdcf3fc5bdc919196a6231d57c8341e44ddede +AUX 11/fix-build-on-gradle-5x.patch 1214 BLAKE2B 2dd50897a5a83773c452afd57ef87e0cbd065e2f53ccf931c00f81a0521791f43e5933e5209f8f6133f855bb3327856ddae109b357da746da72128b60c228031 SHA512 e7c737d5329e872ac104ea229f74bc05447ff7d11bb88e1e3ab0ea5d108195b2af9139650566eb9b18dffedf9141123ee808c71ba01eabe1d1a2f47c2258358b +AUX 11/glibc-compatibility.patch 547 BLAKE2B e63e83d708765dc7ad5013ff3a5bf0885fa426290e4fa164684739c15e7c15652c41256b98e9720c35682193086ec19c0225dd202fabc9bd9c9f99fb0fd6d5ff SHA512 abb08198b94e38fe8fb16229f506e2cad78869ed9c4fcabe22490a87884b1851373ee4a92ae4d7dbecaf3fc9a784911d932fad2457b0611a102e63a983113981 +AUX 11/respect-user-cflags.patch 8604 BLAKE2B b4455f5580a9b310e013c0d58ba39a3d9ebe15e7ed30e75a954c1f6ba36107f1c1a5b6bbc88e5a0e0d21f21d275214ad66ed012088f8fbbf81a6384127c8edfe SHA512 3547c711515714ffdbfbeaf84e538fe0103bc8b38ebe2fc5493414af6eb95bb3a956a7e3fe28936019de4996a62f705e1e28e8ce7eb3a5dbbda6f93f058a5089 +AUX 11/use-system-swt-jar.patch 608 BLAKE2B b0083c54f5f42e6c0069812913c800c9366073e34a401187e90c498ee9cb67b619baa87b7d140cda5a1330076c3b04ff3114898cd264cd51ec4b99498acfd894 SHA512 a700c33639603a26d21b89a4f8a9299cdf42cf7f7a0dc082ec9cd4c9c2235184add1685b05d2a62f3a52bd2251b4c133476e5944471092a2c0c269c973d2604f +DIST ST4-4.0.8.jar 239543 BLAKE2B 72d257c6d0f1b3bde0afce805128dd38d8520b2073377bbb995fed3b4e18a3ea69d508d6d7554755ec68bf50940082b896ed89998a5178272d24376404b389c5 SHA512 9877289297cd5b15ad464a19467699387f57c510fe8a476e07e9d2334bd11933f9bdb9c6caa4972d4d4c84b56740c6d885cd39300dd7ce35b7c5bde536238086 +DIST antlr-complete-3.5.2.jar 2456317 BLAKE2B d9afa08ad98dbff16d30425b97a0ddac7402055916e6a7dd290c3b9a2b26a4751c02f405d8d13c186333430c370c94bd73419b14c8e46df2971f68536cc484a0 SHA512 560f208e38759b5e626de56816e1fce9c191c526c04ca782513859d468ac444d1e8e62c03870a68f8f9d8daee0f45fca465150e2bbfc71b46e46b952519044b1 +DIST gradle-4.8-bin.zip 75885015 BLAKE2B eb6592afe122690f5e013abec2821beabac070563556ceec67ce02506582d4d9ac9c5d9f97ad2c464e442446f26ff90e9ead2c04e462a564411259564e3332c6 SHA512 4b351c9c5b0970bafb3b2b9b9e2ec9f37ff681cc3ac30004852d712cf8bb83061211a58e5b1f101813cde6a0aec914badf4ef0a806eec603418b851b64a06882 +DIST gunit-3.5.2.jar 287425 BLAKE2B 86e759c5bb164758b689d93bef4b6a0bcb39eb9fee28d2a8dc113a4c97e5e8516b55ada87c27738ffa0fc512805caa338d8649f6f5c9ba36490c4c3ebed86fdd SHA512 c9f14dacec2f22f62b7d3849d1c0e9d626b3dc20eb74a85b32f1901f6279b7b84af095107128bcbe80c49ac05448a713309b60d0c3d2f88e0bca8a14690292b2 +DIST lucene-core-7.1.0.jar 2779248 BLAKE2B 9edea1cfdeca2f2ec9e5c014e575774dc32fa5cf12ba02fd419fc252da10c03cd9f6cda989203211de4bc2ffcd2e79e8b97914e9792951bb0877a203760f07ad SHA512 0cd96016de2bc7ad94779e30348c443cf6028119fdae42c6f29e33d84495876a7519640f20680762324ea40c42e21b595f79cd606a6142b9875501f1e9179678 +DIST lucene-grouping-7.1.0.jar 87200 BLAKE2B 93f4ca6938b3fbc74752e22ee9d53022a60c57489017985448ddff46bc8c527b72e615e5f28d0301c28dc8119f0e6c75f4e8a711df3e6aaa418190b8ac8d1857 SHA512 41a85eafde03718efba7cf22598a430efbc6a6a68cf68058988f9eff648d19faa6cc4cf68293fe6e39783a7636eae571f27e04006f4607250dd9f6642184c61d +DIST lucene-queries-7.1.0.jar 243126 BLAKE2B 166c3efea04c19314be7fd8c1d6b1378b2b967243289d9bded5e9768cb441a35fabbe63641d00b72a8c14aace0bad402df49c21b853f620bf81bc1e829dcecdb SHA512 34df5eccf0577ed037ef347adc9c2552c49d57e35dbff629fdbb860926765be48f8b06fd693bdacfc2edcd9c6ad711c13fe98e5317cb1d1f2157dcab938e34ea +DIST lucene-queryparser-7.1.0.jar 384680 BLAKE2B adce2572de9f534323eead31dd30f97b853b2d5e4be6828c415f0c647460c361e00680d856ff9ffbba0fe45c3e4a425d68938a3d2dc01c76491bb65673e120fa SHA512 7151ef899e318679995138262c3450577ae33580708864581dc22a027f43ca4989825d434680925547e3c04ad4453a454e7045f605d7eee0da57d63db978ed68 +DIST lucene-sandbox-7.1.0.jar 182914 BLAKE2B 70c795f84d8f0908abe47db77f632eeb6571a77e1445b8ab04a75080cea40e3b8171071965ff7fd9f6d39a450dd33144e922d19c1f07c605de54b45e3e881323 SHA512 6faf9fd9c7c082bf062adb6a28d89447e6e27152eb3f0a325081e5f791196e5440334632ccbf9c458940220676f7e73390a174889d9b7a656d088b3dade5d500 +DIST openjfx-11.0.3_p1.tar.bz2 63272033 BLAKE2B 574a622b2b2587fcdc64c91cfef0fbcc6d97baa7827e84a540bf1c8493b9fbc3629bd131e5c0972fb82687d194ceb527dfdedd6c2a00edc16d9a76850699f9b6 SHA512 8f8e07d7588b1a5fbcdfcc2837ae0389fefea3a1d91f89fdd4aab03e0bc6f5b9a1e66a824ae9388b777b36e76beb19cb6c69c963c7d904d36cad40f36c5ef0c7 +EBUILD openjfx-11.0.3_p1.ebuild 6377 BLAKE2B f3382411d65c0b93b8c53c617d0c3aad57457e8352f22948d3f421b92bce258a456887870781959e99173291cafaba9804f80aac4d55b7f3ae534c87b502cb3e SHA512 3b24289b423f9027374d53cd47aed78c62ece77529edc14fd198b312fbb0caa34100f348610f74ba01bef255a11429c106fa3f53ba6644c651886b918aa45476 +MISC metadata.xml 678 BLAKE2B 2b7537a59f3d6cb5b465322c68d374e664291178dad94a527a625243c1abe5846b3d0e066e9a715ccf8d5b12a9a58c46c58d00b13881265973e20a29c4f5b720 SHA512 889ad3984e64acb24e01041d98c1f9273d02256bf89810c8e84607911ba35bcac239fdc8341e839b91d7af999e575d06249d87a64c78a3684f63ad5a3003bd8d diff --git a/dev-java/openjfx/files/11/disable-buildSrc-tests.patch b/dev-java/openjfx/files/11/disable-buildSrc-tests.patch new file mode 100644 index 000000000000..39e247107992 --- /dev/null +++ b/dev-java/openjfx/files/11/disable-buildSrc-tests.patch @@ -0,0 +1,13 @@ +Description: Disables the buildSrc tests to work around a Gradle bug (UnsupportedOperationException: Cannot nest operations in the same thread) +Author: Emmanuel Bourg <ebourg@apache.org> +Forwarded: not-needed +--- a/buildSrc/build.gradle ++++ b/buildSrc/build.gradle +@@ -81,6 +81,7 @@ + // Java 7 but when we switch to 8 this will be needed, and probably again when + // we start building with Java 9. + test { ++ enabled = false; + enableAssertions = true; + testLogging.exceptionFormat = "full"; + scanForTestClasses = false; diff --git a/dev-java/openjfx/files/11/fix-build-on-gradle-5x.patch b/dev-java/openjfx/files/11/fix-build-on-gradle-5x.patch new file mode 100644 index 000000000000..51fde6ad39a3 --- /dev/null +++ b/dev-java/openjfx/files/11/fix-build-on-gradle-5x.patch @@ -0,0 +1,23 @@ +From 2f74649395f0242d08b95572b7b30246457b1d6b Mon Sep 17 00:00:00 2001 +From: Ty Young <BlueGoliath@users.noreply.github.com> +Date: Mon, 3 Dec 2018 20:34:07 -0600 +Subject: [PATCH] Remove final from HashSet instance + +Removes final from HashSet instance at about line 107 which causes build failure +--- + .../main/groovy/com/sun/javafx/gradle/NativeCompileTask.groovy | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/buildSrc/src/main/groovy/com/sun/javafx/gradle/NativeCompileTask.groovy b/buildSrc/src/main/groovy/com/sun/javafx/gradle/NativeCompileTask.groovy +index 10a85d62d1..13d573fe6e 100644 +--- a/buildSrc/src/main/groovy/com/sun/javafx/gradle/NativeCompileTask.groovy ++++ b/buildSrc/src/main/groovy/com/sun/javafx/gradle/NativeCompileTask.groovy +@@ -102,7 +102,7 @@ class NativeCompileTask extends DefaultTask { + updateFiles(); + def source = project.files(allFiles); + boolean forceCompile = false; +- final Set<File> files = new HashSet<File>(); ++ Set<File> files = new HashSet<File>(); + source.each { File file -> + final Map fileData = dependencies.get(file.toString()); + final boolean isModified = fileData == null || diff --git a/dev-java/openjfx/files/11/glibc-compatibility.patch b/dev-java/openjfx/files/11/glibc-compatibility.patch new file mode 100644 index 000000000000..e7e9b173bb4d --- /dev/null +++ b/dev-java/openjfx/files/11/glibc-compatibility.patch @@ -0,0 +1,15 @@ +Description: Fixes the compatibility with the version of glibc in Debian +Author: Emmanuel Bourg <ebourg@apache.org> +Forwarded: https://bugs.openjdk.java.net/browse/JDK-8211399 +--- a/modules/javafx.web/src/main/native/Source/ThirdParty/libxslt/src/libxslt/xsltlocale.h ++++ b/modules/javafx.web/src/main/native/Source/ThirdParty/libxslt/src/libxslt/xsltlocale.h +@@ -25,9 +25,6 @@ + #ifdef HAVE_LOCALE_H + #include <locale.h> + #endif +-#ifdef HAVE_XLOCALE_H +-#include <xlocale.h> +-#endif + + typedef locale_t xsltLocale; + typedef xmlChar xsltLocaleChar; diff --git a/dev-java/openjfx/files/11/respect-user-cflags.patch b/dev-java/openjfx/files/11/respect-user-cflags.patch new file mode 100644 index 000000000000..2339f905b7fa --- /dev/null +++ b/dev-java/openjfx/files/11/respect-user-cflags.patch @@ -0,0 +1,227 @@ +From a28f9aaab759d82384279c16d86bb98ab47412a3 Mon Sep 17 00:00:00 2001 +From: Georgy Yakovlev <gyakovlev@gentoo.org> +Date: Sat, 1 Jun 2019 00:12:55 -0700 +Subject: [PATCH] respect user cflags + +--- + buildSrc/linux.gradle | 7 ++++++- + .../gstreamer/projects/linux/avplugin/Makefile | 16 ++++++---------- + .../gstreamer/projects/linux/fxplugins/Makefile | 17 ++++++----------- + .../projects/linux/gstreamer-lite/Makefile | 16 ++++++---------- + .../native/jfxmedia/projects/linux/Makefile | 16 ++++++---------- + 5 files changed, 30 insertions(+), 42 deletions(-) + +diff --git a/buildSrc/linux.gradle b/buildSrc/linux.gradle +index 7a7cbc72..6705a0f3 100644 +--- a/buildSrc/linux.gradle ++++ b/buildSrc/linux.gradle +@@ -44,8 +44,11 @@ LINUX.library = { name -> return "lib${name}.so" as String } + def commonFlags = [ + "-fno-strict-aliasing", "-fPIC", "-fno-omit-frame-pointer", // optimization flags + "-fstack-protector", ++ "-Wno-error=cast-function-type", + "-Wextra", "-Wall", "-Wformat-security", "-Wno-unused", "-Wno-parentheses", "-Werror=implicit-function-declaration"] // warning flags + ++commonFlags.addAll(System.getenv("CFLAGS").trim().split(" ")) ++ + if (!IS_64) { + commonFlags += "-m32" + } +@@ -61,6 +64,8 @@ def linkFlags = ["-static-libgcc", "-static-libstdc++", "-shared", commonFlags, + "-z", "relro", + "-Wl,--gc-sections"].flatten() + ++linkFlags.addAll(System.getenv("LDFLAGS").trim().split(" ")) ++ + if (IS_DEBUG_NATIVE) { + linkFlags += "-g" + } +@@ -294,7 +299,7 @@ LINUX.iio.nativeSource = [ + LINUX.iio.compiler = compiler + LINUX.iio.ccFlags = [ccFlags].flatten() + LINUX.iio.linker = linker +-LINUX.iio.linkFlags = [linkFlags].flatten() ++LINUX.iio.linkFlags = [linkFlags, "-ljpeg"].flatten() + LINUX.iio.lib = "javafx_iio" + + LINUX.prismES2 = [:] +diff --git a/modules/javafx.media/src/main/native/gstreamer/projects/linux/avplugin/Makefile b/modules/javafx.media/src/main/native/gstreamer/projects/linux/avplugin/Makefile +index 450b55d3..f27b9479 100644 +--- a/modules/javafx.media/src/main/native/gstreamer/projects/linux/avplugin/Makefile ++++ b/modules/javafx.media/src/main/native/gstreamer/projects/linux/avplugin/Makefile +@@ -17,7 +17,7 @@ TARGET = $(BUILD_DIR)/lib$(BASE_NAME).so + OBJBASE_DIR = $(BUILD_DIR)/obj/plugins/avplugin + endif + +-CFLAGS = -fPIC \ ++CFLAGS := -fPIC \ + -Wformat \ + -Wextra \ + -Wformat-security \ +@@ -29,13 +29,8 @@ CFLAGS = -fPIC \ + -DLINUX \ + -DGST_DISABLE_LOADSAVE \ + -DGSTREAMER_LITE \ +- -ffunction-sections -fdata-sections +- +-ifeq ($(BUILD_TYPE), Release) +- CFLAGS += -Os +-else +- CFLAGS += -g -Wall +-endif ++ -ffunction-sections -fdata-sections \ ++ ${CFLAGS} + + PACKAGES_INCLUDES := $(shell pkg-config --cflags glib-2.0) + PACKAGES_LIBS := $(shell pkg-config --libs glib-2.0 gobject-2.0) +@@ -46,11 +41,12 @@ INCLUDES= -I../../../plugins \ + -I../../../gstreamer-lite/gstreamer/libs \ + $(PACKAGES_INCLUDES) + +-LDFLAGS = -L$(BUILD_DIR) \ ++LDFLAGS := -L$(BUILD_DIR) \ + -lgstreamer-lite \ + $(PACKAGES_LIBS) \ + -z relro \ +- -static-libgcc -static-libstdc++ -Wl,--gc-sections ++ -static-libgcc -static-libstdc++ -Wl,--gc-sections \ ++ ${LDFLAGS} + + ifneq ($(strip $(LIBAV_DIR)),) + INCLUDES += -I$(LIBAV_DIR)/include +diff --git a/modules/javafx.media/src/main/native/gstreamer/projects/linux/fxplugins/Makefile b/modules/javafx.media/src/main/native/gstreamer/projects/linux/fxplugins/Makefile +index 1e58d4d3..627865f9 100644 +--- a/modules/javafx.media/src/main/native/gstreamer/projects/linux/fxplugins/Makefile ++++ b/modules/javafx.media/src/main/native/gstreamer/projects/linux/fxplugins/Makefile +@@ -14,7 +14,7 @@ DIRLIST = progressbuffer \ + + TARGET = $(BUILD_DIR)/lib$(BASE_NAME).so + +-CFLAGS = -fPIC \ ++CFLAGS := -fPIC \ + -Wformat \ + -Wextra \ + -Wformat-security \ +@@ -30,14 +30,8 @@ CFLAGS = -fPIC \ + -DGST_DISABLE_LOADSAVE \ + -DGST_DISABLE_GST_DEBUG \ + -DGSTREAMER_LITE \ +- -ffunction-sections -fdata-sections +- +-ifeq ($(BUILD_TYPE), Release) +- CFLAGS += -Os +-else +- CFLAGS += -g -Wall +-endif +- ++ -ffunction-sections -fdata-sections \ ++ ${CFLAGS} + + INCLUDES = -I$(SRCBASE_DIR) \ + $(addprefix -I$(SRCBASE_DIR)/,$(DIRLIST)) \ +@@ -47,9 +41,10 @@ INCLUDES = -I$(SRCBASE_DIR) \ + PACKAGES_INCLUDES := $(shell pkg-config --cflags glib-2.0) + PACKAGES_LIBS := $(shell pkg-config --libs glib-2.0 gobject-2.0) + +-LDFLAGS = -L$(BUILD_DIR) -lgstreamer-lite $(PACKAGES_LIBS) \ ++LDFLAGS := -L$(BUILD_DIR) -lgstreamer-lite $(PACKAGES_LIBS) \ + -z relro \ +- -static-libgcc -static-libstdc++ -Wl,--gc-sections ++ -static-libgcc -static-libstdc++ -Wl,--gc-sections \ ++ ${LDFLAGS} + + ifeq ($(ARCH), x32) + CFLAGS += -m32 +diff --git a/modules/javafx.media/src/main/native/gstreamer/projects/linux/gstreamer-lite/Makefile b/modules/javafx.media/src/main/native/gstreamer/projects/linux/gstreamer-lite/Makefile +index 5baa30a1..ddf0e521 100644 +--- a/modules/javafx.media/src/main/native/gstreamer/projects/linux/gstreamer-lite/Makefile ++++ b/modules/javafx.media/src/main/native/gstreamer/projects/linux/gstreamer-lite/Makefile +@@ -37,7 +37,7 @@ DIRLIST = gstreamer/gst \ + + TARGET = $(BUILD_DIR)/lib$(BASE_NAME).so + +-CFLAGS =-fPIC \ ++CFLAGS :=-fPIC \ + -Wformat \ + -Wextra \ + -Wformat-security \ +@@ -51,13 +51,8 @@ CFLAGS =-fPIC \ + -DLINUX \ + -DGST_DISABLE_GST_DEBUG \ + -DGST_DISABLE_LOADSAVE \ +- -ffunction-sections -fdata-sections +- +-ifeq ($(BUILD_TYPE), Release) +- CFLAGS += -Os +-else +- CFLAGS += -g -Wall +-endif ++ -ffunction-sections -fdata-sections \ ++ ${CFLAGS} + + INCLUDES = -I$(BASE_DIR)/plugins \ + -I$(SRCBASE_DIR)/projects/build/linux/common \ +@@ -75,9 +70,10 @@ INCLUDES = -I$(BASE_DIR)/plugins \ + PACKAGES_INCLUDES := $(shell pkg-config --cflags alsa glib-2.0) + PACKAGES_LIBS := $(shell pkg-config --libs alsa glib-2.0 gobject-2.0 gmodule-2.0 gthread-2.0) + +-LDFLAGS = -L$(BUILD_DIR) -lm $(PACKAGES_LIBS) \ ++LDFLAGS := -L$(BUILD_DIR) -lm $(PACKAGES_LIBS) \ + -z relro \ +- -static-libgcc -static-libstdc++ -Wl,--gc-sections ++ -static-libgcc -static-libstdc++ -Wl,--gc-sections \ ++ ${LDFLAGS} + + ifeq ($(ARCH), x32) + CFLAGS += -m32 +diff --git a/modules/javafx.media/src/main/native/jfxmedia/projects/linux/Makefile b/modules/javafx.media/src/main/native/jfxmedia/projects/linux/Makefile +index ecbd859f..5881cf53 100644 +--- a/modules/javafx.media/src/main/native/jfxmedia/projects/linux/Makefile ++++ b/modules/javafx.media/src/main/native/jfxmedia/projects/linux/Makefile +@@ -17,7 +17,7 @@ DIRLIST = jni \ + + TARGET = $(BUILD_DIR)/lib$(BASE_NAME).so + +-CFLAGS = -DTARGET_OS_LINUX=1 \ ++CFLAGS := -DTARGET_OS_LINUX=1 \ + -D_GNU_SOURCE \ + -DGST_REMOVE_DEPRECATED \ + -DGST_DISABLE_GST_DEBUG \ +@@ -26,7 +26,8 @@ CFLAGS = -DTARGET_OS_LINUX=1 \ + -DHAVE_CONFIG_H \ + -DJFXMEDIA_JNI_EXPORTS \ + -DLINUX \ +- -ffunction-sections -fdata-sections ++ -ffunction-sections -fdata-sections \ ++ ${CFLAGS} + + CPPFLAGS = -fno-rtti -ffunction-sections -fdata-sections + +@@ -56,21 +57,16 @@ ifdef HOST_COMPILE + -I$(GSTREAMER_LITE_DIR)/gstreamer/libs \ + $(PACKAGES_INCLUDES) + +- LDFLAGS = -Wl,-rpath,\$$ORIGIN -L$(BUILD_DIR) -lgstreamer-lite $(PACKAGES_LIBS) \ ++ LDFLAGS := -Wl,-rpath,\$$ORIGIN -L$(BUILD_DIR) -lgstreamer-lite $(PACKAGES_LIBS) \ + -z relro \ +- -static-libgcc -static-libstdc++ -Wl,--gc-sections ++ -static-libgcc -static-libstdc++ -Wl,--gc-sections \ ++ ${LDFLAGS} + else + CFLAGS += $(EXTRA_CFLAGS) + INCLUDES = $(BASE_INCLUDES) + LDFLAGS = -Wl,-rpath,\$$ORIGIN -L$(BUILD_DIR) $(EXTRA_LDFLAGS) + endif + +-ifeq ($(BUILD_TYPE), Release) +- CFLAGS += -Os +-else +- CFLAGS += -g -Wall -D_DEBUG +-endif +- + ifeq ($(ARCH), x32) + CFLAGS += -m32 + LDFLAGS += -m32 +-- +2.21.0 + diff --git a/dev-java/openjfx/files/11/use-system-swt-jar.patch b/dev-java/openjfx/files/11/use-system-swt-jar.patch new file mode 100644 index 000000000000..34b4245bf0a0 --- /dev/null +++ b/dev-java/openjfx/files/11/use-system-swt-jar.patch @@ -0,0 +1,25 @@ +From c7a04feac8281cd3e53c8d0215a229bb6cd4fce8 Mon Sep 17 00:00:00 2001 +From: Georgy Yakovlev <gyakovlev@gentoo.org> +Date: Sat, 1 Jun 2019 00:36:04 -0700 +Subject: [PATCH] use system swt jar + +--- + build.gradle | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/build.gradle b/build.gradle +index 1e414b7..3d967bb 100644 +--- a/build.gradle ++++ b/build.gradle +@@ -2477,7 +2477,7 @@ project(":swt") { + commonModuleSetup(project, [ 'base', 'graphics' ]) + + dependencies { +- compile name: SWT_FILE_NAME ++ compile files("__gentoo_swt_jar__") + } + + classes { +-- +2.21.0 + diff --git a/dev-java/openjfx/metadata.xml b/dev-java/openjfx/metadata.xml new file mode 100644 index 000000000000..3ae082145524 --- /dev/null +++ b/dev-java/openjfx/metadata.xml @@ -0,0 +1,19 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>gyakovlev@gentoo.org</email> + <name>Georgy Yakovlev</name> + </maintainer> + <maintainer type="project"> + <email>java@gentoo.org</email> + </maintainer> + <longdescription lang="en"> + OpenJFX is an open source, next generation client application platform for desktop, + mobile and embedded systems built on Java. + </longdescription> + <use> + <flag name="media">Compile media module, based on gstreamer-minimal (does not pull gstreamer)</flag> + <flag name="source">Install JavaFX sources</flag> + </use> +</pkgmetadata> diff --git a/dev-java/openjfx/openjfx-11.0.3_p1.ebuild b/dev-java/openjfx/openjfx-11.0.3_p1.ebuild new file mode 100644 index 000000000000..02d8964eaea0 --- /dev/null +++ b/dev-java/openjfx/openjfx-11.0.3_p1.ebuild @@ -0,0 +1,220 @@ +# Copyright 2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +MY_PV=${PV/_p/+} +SLOT=${MY_PV%%[.+]*} +EGRADLE_VER="4.8" + +inherit java-pkg-2 multiprocessing + +DESCRIPTION="Java OpenJFX client application platform" +HOMEPAGE="https://openjfx.io" + +SRC_URI="https://hg.openjdk.java.net/${PN}/${SLOT}/rt/archive/${MY_PV}.tar.bz2 -> ${P}.tar.bz2 + https://downloads.gradle.org/distributions/gradle-${EGRADLE_VER}-bin.zip + https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-sandbox/7.1.0/lucene-sandbox-7.1.0.jar + https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-grouping/7.1.0/lucene-grouping-7.1.0.jar + https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-queryparser/7.1.0/lucene-queryparser-7.1.0.jar + https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-queries/7.1.0/lucene-queries-7.1.0.jar + https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-core/7.1.0/lucene-core-7.1.0.jar + https://repo.maven.apache.org/maven2/org/antlr/gunit/3.5.2/gunit-3.5.2.jar + https://repo.maven.apache.org/maven2/org/antlr/antlr-complete/3.5.2/antlr-complete-3.5.2.jar + https://repo.maven.apache.org/maven2/org/antlr/ST4/4.0.8/ST4-4.0.8.jar +" + +LICENSE="GPL-2-with-classpath-exception" +SLOT="$(ver_cut 1)" +KEYWORDS="-* ~amd64" + +IUSE="cpu_flags_x86_sse2 debug doc source +media" + +RDEPEND=" + dev-java/swt:4.10[cairo,opengl] + dev-libs/atk + dev-libs/glib:2 + dev-libs/libxml2:2 + dev-libs/libxslt + media-libs/freetype:2 + media-libs/fontconfig:1.0 + media-video/ffmpeg:0= + x11-libs/gdk-pixbuf + x11-libs/gtk+:2 + x11-libs/gtk+:3 + x11-libs/cairo[glib] + x11-libs/libX11 + x11-libs/libXtst + x11-libs/libXxf86vm + x11-libs/pango + virtual/jpeg + virtual/opengl + || ( + dev-java/openjdk-bin:${SLOT}[doc?] + dev-java/openjdk:${SLOT}[doc?] + ) +" + +DEPEND="${RDEPEND} + app-arch/unzip + app-arch/zip + >=dev-java/ant-core-1.10.5-r2:0 + dev-java/antlr:0 + dev-java/antlr:3.5 + dev-java/hamcrest-core:0 + dev-java/stringtemplate:0 + virtual/ttf-fonts + virtual/pkgconfig +" + +REQUIRED_USE="cpu_flags_x86_sse2" + +PATCHES=( + "${FILESDIR}"/11/disable-buildSrc-tests.patch + "${FILESDIR}"/11/glibc-compatibility.patch + "${FILESDIR}"/11/respect-user-cflags.patch + "${FILESDIR}"/11/use-system-swt-jar.patch + "${FILESDIR}"/11/fix-build-on-gradle-5x.patch +) + +S="${WORKDIR}/rt-${MY_PV}" + +egradle() { + local GRADLE_HOME="${WORKDIR}/gradle-${EGRADLE_VER}" + local gradle="${GRADLE_HOME}/bin/gradle" + local gradle_args=( + --info + --stacktrace + --no-build-cache + --no-daemon + --offline + --gradle-user-home "${T}/gradle_user_home" + --project-cache-dir "${T}/gradle_project_cache" + ) + + export GRADLE_HOME + + # FIXME: build.gradle believes $ANT_HOME/bin/ant shoud exist + unset ANT_HOME + + einfo "gradle "${gradle_args[@]}" ${@}" + "${gradle}" "${gradle_args[@]}" ${@} || die "gradle failed" +} + +pkg_setup() { + JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT}" + JAVA_PKG_WANT_SOURCE="${SLOT}" + JAVA_PKG_WANT_TARGET="${SLOT}" + + # The nastiness below is necessary while the gentoo-vm USE flag is + # masked. First we call java-pkg-2_pkg_setup if it looks like the + # flag was unmasked against one of the possible build VMs. If not, + # we try finding one of them in their expected locations. This would + # have been slightly less messy if openjdk-bin had been installed to + # /opt/${PN}-${SLOT} or if there was a mechanism to install a VM env + # file but disable it so that it would not normally be selectable. + + local vm + for vm in ${JAVA_PKG_WANT_BUILD_VM}; do + if [[ -d ${EPREFIX}/usr/lib/jvm/${vm} ]]; then + java-pkg-2_pkg_setup + return + fi + done + + if has_version --host-root dev-java/openjdk:${SLOT}; then + export JAVA_HOME=${EPREFIX}/usr/$(get_libdir)/openjdk-${SLOT} + export JDK_HOME="${JAVA_HOME}" + export ANT_RESPECT_JAVA_HOME=ture + + else + if [[ ${MERGE_TYPE} != "binary" ]]; then + JDK_HOME=$(best_version --host-root dev-java/openjdk-bin:${SLOT}) + [[ -n ${JDK_HOME} ]] || die "Build VM not found!" + JDK_HOME=${JDK_HOME#*/} + JDK_HOME=${EPREFIX}/opt/${JDK_HOME%-r*} + export JDK_HOME + export JAVA_HOME="${JDK_HOME}" + export ANT_RESPECT_JAVA_HOME=ture + fi + fi +} + +src_unpack() { + unpack "${P}.tar.bz2" + unpack "gradle-${EGRADLE_VER}-bin.zip" + + mkdir "${T}/jars" || die + + local line jar + for line in ${SRC_URI}; do + if [[ ${line} =~ (http|https)://[a-zA-Z0-9.-_]*/(maven2|m2|eclipse)/(.*[.]jar)$ ]]; then + jar=$(basename "${BASH_REMATCH[-1]}") + cp -v "${DISTDIR}/${jar}" "${T}/jars/" || die + fi + done +} + +src_prepare() { + default + + local d="${T}/jars" + + java-pkg_jar-from --build-only --with-dependencies --into "${d}" antlr + java-pkg_jar-from --build-only --with-dependencies --into "${d}" antlr-3.5 + java-pkg_jar-from --build-only --with-dependencies --into "${d}" stringtemplate + java-pkg_jar-from --build-only --with-dependencies --into "${d}" hamcrest-core + + sed -i "s#__gentoo_swt_jar__#$(java-pkg_getjars swt-4.10)#" "${S}"/build.gradle || die +} + +src_configure() { + #FIXME: still calls gcc, pkg-config etc by name without chost prefix + #FIXME: should we enable webkit? doubt so + + # build is very sensetive to doc presense, take extra steps + if use doc; then + local jdk_doc + if has_version --host-root dev-java/openjdk:${SLOT}[doc]; then + jdk_doc="${EROOT%/}/usr/share/doc/openjdk-${SLOT}/html/api" + elif has_version --host-root dev-java/java-sdk-docs:${SLOT}; then + jdk_doc="${EROOT%/}/usr/share/doc/java-sdk-docs-${SLOT}/html/api" + fi + [[ -r ${jdk_doc}/element-list ]] || die "JDK Docs not found, terminating build early" + fi + + cat <<- _EOF_ > "${S}"/gradle.properties + COMPILE_TARGETS = linux + COMPILE_WEBKIT = false + COMPILE_MEDIA = $(usex media true false) + JDK_DOCS = https://docs.oracle.com/en/java/javase/${SLOT}/docs/api + JDK_DOCS_LINK = $(usex doc "${jdk_doc}" "") + BUILD_LIBAV_STUBS = false + GRADLE_VERSION_CHECK = false + LINT = none + CONF = $(usex debug DebugNative Release) + NUM_COMPILE_THREADS = $(makeopts_jobs) + JFX_DEPS_URL = ${T}/jars + COMPANY_NAME = "Gentoo" + _EOF_ +} + +src_compile() { + egradle zips $(usex doc "" "--exclude-task javadoc") +} + +src_install() { + if ! use source ; then + rm -v build/sdk/lib/src.zip || die + fi + + insinto "/usr/$(get_libdir)/${PN}-${SLOT}" + doins -r build/sdk/. + doins build/javafx-exports.zip + + if use doc; then + insinto /usr/share/doc/"${PF}"/html + doins -r build/javadoc/. + dosym /usr/share/doc/"${PF}" /usr/share/doc/"${PN}-${SLOT}" + fi +} |