%global openjfxdir %{_jvmdir}/%{name} Name: openjfx Version: 8.0.202 Release: 8.b07%{?dist} Summary: Rich client application platform for Java #fxpackager is BSD License: GPL v2 with exceptions and BSD URL: http://openjdk.java.net/projects/openjfx/ Source0: http://hg.openjdk.java.net/openjfx/8u-dev/rt/archive/8u202-b07.tar.bz2 Source1: README.fedora Patch0: 0000-Fix-wait-call-in-PosixPlatform.patch Patch1: 0001-Change-SWT-and-Lucene.patch Patch2: 0002-Allow-build-to-work-on-newer-gradles.patch Patch3: 0003-fix-cast-between-incompatible-function-types.patch Patch4: 0004-Fix-Compilation-Flags.patch Patch5: 0005-fxpackager-extract-jre-accept-symlink.patch Patch6: 0006-Drop-SWT-32bits-and-Lucene.patch ExclusiveArch: %{ix86} x86_64 Requires: java BuildRequires: gradle-local BuildRequires: gcc BuildRequires: gcc-c++ BuildRequires: libstdc++-static BuildRequires: mvn(antlr:antlr) BuildRequires: mvn(junit:junit) BuildRequires: mvn(org.antlr:antlr:3.1.3) BuildRequires: mvn(org.antlr:stringtemplate) BuildRequires: mvn(org.apache.ant:ant) %ifarch s390x x86_64 aarch64 ppc64le BuildRequires: mvn(org.eclipse.swt:swt) %endif BuildRequires: pkgconfig(gtk+-2.0) BuildRequires: pkgconfig(gtk+-3.0) BuildRequires: pkgconfig(gthread-2.0) BuildRequires: pkgconfig(xtst) BuildRequires: pkgconfig(libjpeg) BuildRequires: pkgconfig(xxf86vm) BuildRequires: pkgconfig(gl) BuildRequires: bison BuildRequires: flex BuildRequires: gperf %description JavaFX/OpenJFX is a set of graphics and media APIs that enables Java developers to design, create, test, debug, and deploy rich client applications that operate consistently across diverse platforms. The media and web module have been removed due to missing dependencies. %package devel Requires: %{name}%{?_isa} = %{version}-%{release} Requires: java-devel Summary: OpenJFX development tools and libraries %description devel %{summary}. %package src Requires: %{name}%{?_isa} = %{version}-%{release} Summary: OpenJFX Source Bundle %description src %{summary}. %package javadoc Summary: Javadoc for %{name} %description javadoc This package contains javadoc for %{name}. %prep %setup -q -n rt-8u202-b07 %patch0 -p1 %ifarch s390 %{arm} %{ix86} %patch -P 6 -p1 %else %patch1 -p1 %endif %patch2 -p1 %patch3 -p1 %patch4 -p1 %patch5 -p1 cp %{SOURCE1} . cat > gradle.properties << EOF COMPILE_WEBKIT = false COMPILE_MEDIA = false %ifarch s390 %{arm} %{ix86} COMPILE_SWT = false %endif BUILD_JAVADOC = true BUILD_SRC_ZIP = true GRADLE_VERSION_CHECK = false CONF = DebugNative EOF find -name '*.class' -delete find -name '*.jar' -delete #Bundled libraries rm -rf modules/media/src/main/native/gstreamer/3rd_party/glib rm -rf modules/media/src/main/native/gstreamer/gstreamer-lite #Drop SWT for 32 bits build %ifarch s390 %{arm} %{ix86} rm -rf modules/swt rm -rf modules/graphics/src/main/java/com/sun/glass/ui/swt rm -rf modules/builders/src/main/java/javafx/embed/swt %endif %build #Tests do not run by default, tests in web fails and one test in graphics fail: #UnsatisfiedLinkError: libjavafx_iio.so: undefined symbol: jpeg_resync_to_restart gradle-local --no-daemon --offline %install install -d -m 755 %{buildroot}%{openjfxdir} cp -a build/sdk/{bin,lib,rt} %{buildroot}%{openjfxdir} install -d -m 755 %{buildroot}%{_mandir}/man1 install -m 644 build/sdk/man/man1/* %{buildroot}%{_mandir}/man1 install -d -m 755 %{buildroot}%{_mandir}/ja_JP/man1 install -m 644 build/sdk/man/ja_JP.UTF-8/man1/* %{buildroot}%{_mandir}/ja_JP/man1 install -m 644 build/sdk/javafx-src.zip %{buildroot}%{openjfxdir}/javafx-src.zip install -d 755 %{buildroot}%{_javadocdir}/%{name} cp -a build/sdk/docs/api/. %{buildroot}%{_javadocdir}/%{name} mkdir -p %{buildroot}%{_bindir} ln -s %{openjfxdir}/bin/javafxpackager %{buildroot}%{_bindir} ln -s %{openjfxdir}/bin/javapackager %{buildroot}%{_bindir} %files %dir %{openjfxdir} %{openjfxdir}/rt %license LICENSE %doc README %doc README.fedora %files devel %{openjfxdir}/lib %{openjfxdir}/bin %{_bindir}/javafxpackager %{_bindir}/javapackager %{_mandir}/man1/javafxpackager.1* %{_mandir}/man1/javapackager.1* %{_mandir}/ja_JP/man1/javafxpackager.1* %{_mandir}/ja_JP/man1/javapackager.1* %license LICENSE %doc README %doc README.fedora %files src %{openjfxdir}/javafx-src.zip %files javadoc %{_javadocdir}/%{name} %license LICENSE %changelog * Wed Jul 31 2019 Nicolas De Amicis - 8.0.202-8.b07 - fxpackager extracts jre with symlinks (see bug 1700884) + drop SWT support for 32 bits architectures (FTBFS in Fedora rawhide see bug 1736382) * Thu Jul 25 2019 Fedora Release Engineering - 8.0.202-7.b07 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild * Tue Mar 26 2019 Nicolas De Amicis - 8.0.202-6.b07 - Remove orphaned dependency (javapackages-tools) * Mon Feb 04 2019 Nicolas De Amicis - 8.0.202-5.b07 - Fix compilation flags (see bug 1667675) * Fri Feb 01 2019 Fedora Release Engineering - 8.0.202-4.b07 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild * Fri Jan 18 2019 Nicolas De Amicis - 8.0.202-3.b07 - Update to upstream version 8.0.202b07 and adding gtk3 support (libglassgtk3.so) * Tue Nov 27 2018 Nicolas De Amicis - 8.0.202-2.b02 - Update to upstream version 8.0.202b02 * Mon Nov 12 2018 Nicolas De Amicis - 8.0.152-19.b05 - Fix missing java packages in openjfx * Fri Jul 13 2018 Fedora Release Engineering - 8.0.152-18.b05 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild * Thu Jun 21 2018 Mat Booth - 8.0.152-17.b05 - Fix failure to build from source * Thu Feb 08 2018 Fedora Release Engineering - 8.0.152-16.b05 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild * Thu Aug 03 2017 Fedora Release Engineering - 8.0.152-15.b05 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild * Thu Jul 27 2017 Fedora Release Engineering - 8.0.152-14.b05 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild * Sun Jul 02 2017 Jonny Heggheim - 8.0.152-13.b05 - Update to upstream version 8.0.152b05 * Thu Jun 15 2017 Jonny Heggheim - 8.0.152-12.b04 - Removed BuildArch: noarch for subpackages that requires the parent package * Thu Jun 15 2017 Jonny Heggheim - 8.0.152-11.b04 - Build on i686 too * Wed May 31 2017 Jonny Heggheim - 8.0.152-10.b04 - Update to upstream version 8.0.152b04 * Wed May 31 2017 Jonny Heggheim - 8.0.152-9.b03 - Added requires on java and java-devel - Updated license * Thu May 18 2017 Jonny Heggheim - 8.0.152-8.b03 - Added requires on javapackages-tools - Added requires on parent package for subpackages devel and src * Fri May 12 2017 Jonny Heggheim - 8.0.152-7.b03 - Introduce sub-package devel * Mon May 08 2017 Jonny Heggheim - 8.0.152-6.b03 - Update to upstream version 8.0.152b03 * Mon May 01 2017 Jonny Heggheim - 8.0.152-5.b02 - Update to upstream version 8.0.152b02 * Wed Apr 05 2017 Jonny Heggheim - 8.0.152-4.b00 - Only build for x86 and x86_64, will fail to build on other platforms * Thu Jan 19 2017 Jonny Heggheim - 8.0.152-3.b00 - Include javadoc sub-package * Tue Jan 17 2017 Jonny Heggheim - 8.0.152-2.b00 - Include src sub-package * Fri Dec 30 2016 Jonny Heggheim - 8.0.152-1.b00 - Update to upstream version 8.0.152b00 * Tue Apr 26 2016 Mikolaj Izdebski - 8.0.91-1 - Update to upstream version 8.0.91 * Tue Apr 26 2016 Mikolaj Izdebski - 8.0.60-1 - Update to upstream version 8.0.60 * Mon Jul 6 2015 Mikolaj Izdebski - 8.0.40-1 - Initial packaging