4a762df
%global openjfxdir %{_jvmdir}/%{name}
4a762df
4a762df
Name:           openjfx
06b2f5a
Version:        8.0.202
d43d45e
Release:        10.b07%{?dist}
4a762df
Summary:        Rich client application platform for Java
4a762df
4a762df
#fxpackager is BSD
4a762df
License:        GPL v2 with exceptions and BSD
4a762df
URL:            http://openjdk.java.net/projects/openjfx/
4a762df
2d47776
Source0:        http://hg.openjdk.java.net/openjfx/8u-dev/rt/archive/8u202-b07.tar.bz2
4a762df
Source1:        README.fedora
d43d45e
Source2:        pom-base.xml
d43d45e
Source3:        pom-builders.xml
d43d45e
Source4:        pom-controls.xml
d43d45e
Source5:        pom-fxml.xml
d43d45e
Source6:        pom-fxpackager.xml
d43d45e
Source7:        pom-graphics.xml
d43d45e
Source8:        pom-graphics_compileDecoraCompilers.xml
d43d45e
Source9:        pom-graphics_compileDecoraJavaShaders.xml
d43d45e
Source10:       pom-graphics_compileJava.xml
d43d45e
Source11:       pom-graphics_compilePrismCompilers.xml
d43d45e
Source12:       pom-graphics_compilePrismJavaShaders.xml
d43d45e
Source13:       pom-graphics_libdecora.xml
d43d45e
Source14:       pom-graphics_libglass.xml
d43d45e
Source15:       pom-graphics_libglassgtk2.xml
d43d45e
Source16:       pom-graphics_libglassgtk3.xml
d43d45e
Source17:       pom-graphics_libjavafx_font.xml
d43d45e
Source18:       pom-graphics_libjavafx_font_freetype.xml
d43d45e
Source19:       pom-graphics_libjavafx_font_pango.xml
d43d45e
Source20:       pom-graphics_libjavafx_iio.xml
d43d45e
Source21:       pom-graphics_libprism_common.xml
d43d45e
Source22:       pom-graphics_libprism_es2.xml
d43d45e
Source23:       pom-graphics_libprism_sw.xml
d43d45e
Source24:       pom-jmx.xml
d43d45e
Source25:       pom-media.xml
d43d45e
Source26:       pom-openjfx.xml
d43d45e
Source27:       pom-swing.xml
d43d45e
Source28:       pom-swt.xml
d43d45e
Source29:       pom-web.xml
d43d45e
Source30:       shade.xml
d43d45e
Source31:       build.xml
d43d45e
Source32:       buildSrc.xml
d43d45e
Source33:       fxpackager-native.xml
d43d45e
Source34:       fxpackager-so.xml
4a762df
06b2f5a
Patch0:         0000-Fix-wait-call-in-PosixPlatform.patch
d43d45e
Patch1:         0003-fix-cast-between-incompatible-function-types.patch
d43d45e
Patch2:         0004-Fix-Compilation-Flags.patch
d43d45e
Patch3:         0005-fxpackager-extract-jre-accept-symlink.patch
4a762df
d43d45e
ExclusiveArch:  x86_64
4a762df
4a762df
Requires:       java
4a762df
d43d45e
BuildRequires:  maven-local
d43d45e
BuildRequires:	ant
3b76083
BuildRequires:  gcc
3b76083
BuildRequires:  gcc-c++
06b2f5a
BuildRequires:  libstdc++-static
d43d45e
BuildRequires:  mvn(org.eclipse.swt:swt)
4a762df
BuildRequires:  mvn(antlr:antlr)
d43d45e
BuildRequires:  mvn(org.antlr:antlr)
4a762df
BuildRequires:  mvn(org.antlr:stringtemplate)
4a762df
BuildRequires:  mvn(org.apache.ant:ant)
d43d45e
BuildRequires:  mvn(org.codehaus.mojo:native-maven-plugin)
d43d45e
BuildRequires:  mvn(org.codehaus.mojo:exec-maven-plugin)
d43d45e
BuildRequires:  mvn(org.apache.maven.plugins:maven-antrun-plugin)
d43d45e
BuildRequires:  mvn(org.apache.maven.plugins:maven-shade-plugin)
4a762df
4a762df
BuildRequires:  pkgconfig(gtk+-2.0)
2d47776
BuildRequires:  pkgconfig(gtk+-3.0)
4a762df
BuildRequires:  pkgconfig(gthread-2.0)
4a762df
BuildRequires:  pkgconfig(xtst)
4a762df
BuildRequires:  pkgconfig(libjpeg)
5ef918c
BuildRequires:  pkgconfig(xxf86vm)
5ef918c
BuildRequires:  pkgconfig(gl)
4a762df
4a762df
%description
4a762df
JavaFX/OpenJFX is a set of graphics and media APIs that enables Java
4a762df
developers to design, create, test, debug, and deploy rich client
4a762df
applications that operate consistently across diverse platforms.
4a762df
4a762df
The media and web module have been removed due to missing dependencies.
4a762df
4a762df
%package devel
4a762df
Requires: %{name}%{?_isa} = %{version}-%{release}
4a762df
Requires: java-devel
4a762df
Summary: OpenJFX development tools and libraries
4a762df
4a762df
%description devel
4a762df
%{summary}.
4a762df
4a762df
%package javadoc
4a762df
Summary: Javadoc for %{name}
4a762df
4a762df
%description javadoc
4a762df
This package contains javadoc for %{name}.
4a762df
d43d45e
%global debug_package %{nil}
d43d45e
4a762df
%prep
2d47776
%setup -q -n rt-8u202-b07
4a762df
%patch0 -p1
4a762df
%patch1 -p1
5ef918c
%patch2 -p1
5ef918c
%patch3 -p1
d5ef256
 
4a762df
cp %{SOURCE1} .
4a762df
d43d45e
#Drop *src/test folders
d43d45e
rm -rf modules/{base,builders,controls,fxml,fxpackager,graphics,jmx,media,swing,swt,web}/src/test/
d43d45e
rm -rf buildSrc/src/test/
d43d45e
d43d45e
#prep for graphics
d43d45e
##cp -a modules/javafx.graphics/src/jslc/antlr modules/javafx.graphics/src/main/antlr3
d43d45e
cp -a modules/graphics/src/main/resources/com/sun/javafx/tk/quantum/*.properties modules/graphics/src/main/java/com/sun/javafx/tk/quantum
d43d45e
d43d45e
#prep for base
d43d45e
cp -a modules/base/src/main/java8/javafx modules/base/src/main/java
d43d45e
d43d45e
#prep for swt
d43d45e
cp -a modules/builders/src/main/java/javafx/embed/swt/CustomTransferBuilder.java modules/swt/src/main/java/javafx/embed/swt
4a762df
4a762df
find -name '*.class' -delete
4a762df
find -name '*.jar' -delete
4a762df
d43d45e
#copy maven files
d43d45e
cp -a %{_sourcedir}/pom-*.xml .
d43d45e
mv pom-openjfx.xml pom.xml
d43d45e
d43d45e
for MODULE in base graphics controls swing swt fxml media web builders fxpackager jmx
d43d45e
do
d43d45e
	mv pom-$MODULE.xml ./modules/$MODULE/pom.xml
d43d45e
done
d43d45e
d43d45e
#shade
d43d45e
mkdir shade
d43d45e
cp -a %{_sourcedir}/shade.xml ./shade/pom.xml
d43d45e
d43d45e
#fxpackager native exe
d43d45e
mkdir ./modules/fxpackager/native
d43d45e
cp -a %{_sourcedir}/fxpackager-native.xml ./modules/fxpackager/native/pom.xml
d43d45e
#fxpackager libpackager.so
d43d45e
mkdir ./modules/fxpackager/so
d43d45e
cp -a %{_sourcedir}/fxpackager-so.xml ./modules/fxpackager/so/pom.xml
d43d45e
d43d45e
cp -a %{_sourcedir}/buildSrc.xml ./buildSrc/pom.xml
d5ef256
d43d45e
mkdir ./modules/graphics/{compileJava,compilePrismCompilers,compilePrismJavaShaders,compileDecoraCompilers,compileDecoraJavaShaders,libdecora,libjavafx_font,libjavafx_font_freetype,libjavafx_font_pango,libglass,libglassgtk2,libglassgtk3,libjavafx_iio,libprism_common,libprism_es2,libprism_sw}
d43d45e
for GRAPHMOD in compileJava compilePrismCompilers compilePrismJavaShaders compileDecoraCompilers compileDecoraJavaShaders libdecora libjavafx_font libjavafx_font_freetype libjavafx_font_pango libglass libglassgtk2 libglassgtk3 libjavafx_iio libprism_common libprism_es2 libprism_sw
d43d45e
do
d43d45e
	mv pom-graphics_$GRAPHMOD.xml ./modules/graphics/$GRAPHMOD/pom.xml
d43d45e
done
d43d45e
d43d45e
#set VersionInfo
d43d45e
cp -a %{_sourcedir}/build.xml .
d43d45e
ant -f build.xml
d5ef256
4a762df
%build
d43d45e
d43d45e
#set openjdk8 for build
d43d45e
export JAVA_HOME=%{_jvmdir}/java-1.8.0-openjdk
d43d45e
%mvn_build
4a762df
4a762df
%install
4a762df
install -d -m 755 %{buildroot}%{openjfxdir}
d43d45e
mkdir -p %{buildroot}%{openjfxdir}/bin
d43d45e
mkdir -p %{buildroot}%{openjfxdir}/lib
d43d45e
mkdir -p %{buildroot}%{openjfxdir}/rt/lib/{amd64,ext}
d43d45e
d43d45e
cp -a shade/target/jfxrt.jar %{buildroot}%{openjfxdir}/rt/lib/ext
d43d45e
cp -a modules/swt/target/jfxswt.jar %{buildroot}%{openjfxdir}/rt/lib
d43d45e
cp -a modules/graphics/libdecora/target/libdecora_sse.so %{buildroot}%{openjfxdir}/rt/lib/amd64
d43d45e
cp -a modules/graphics/libglass/target/libglass.so %{buildroot}%{openjfxdir}/rt/lib/amd64
d43d45e
cp -a modules/graphics/libglassgtk2/target/libglassgtk2.so %{buildroot}%{openjfxdir}/rt/lib/amd64
d43d45e
cp -a modules/graphics/libglassgtk3/target/libglassgtk3.so %{buildroot}%{openjfxdir}/rt/lib/amd64
d43d45e
cp -a modules/graphics/libjavafx_font/target/libjavafx_font.so %{buildroot}%{openjfxdir}/rt/lib/amd64
d43d45e
cp -a modules/graphics/libjavafx_font_freetype/target/libjavafx_font_freetype.so %{buildroot}%{openjfxdir}/rt/lib/amd64
d43d45e
cp -a modules/graphics/libjavafx_font_pango/target/libjavafx_font_pango.so %{buildroot}%{openjfxdir}/rt/lib/amd64
d43d45e
cp -a modules/graphics/libjavafx_iio/target/libjavafx_iio.so %{buildroot}%{openjfxdir}/rt/lib/amd64
d43d45e
cp -a modules/graphics/libprism_common/target/libprism_common.so %{buildroot}%{openjfxdir}/rt/lib/amd64
d43d45e
cp -a modules/graphics/libprism_es2/target/libprism_es2.so %{buildroot}%{openjfxdir}/rt/lib/amd64
d43d45e
cp -a modules/graphics/libprism_sw/target/libprism_sw.so %{buildroot}%{openjfxdir}/rt/lib/amd64
d43d45e
cp -a modules/jmx/target/javafx-mx.jar %{buildroot}%{openjfxdir}/lib
d43d45e
cp -a modules/fxpackager/target/fxpackager-ant-javafx.jar %{buildroot}%{openjfxdir}/lib/ant-javafx.jar
d43d45e
cp -a modules/fxpackager/target/fxpackager-packager.jar %{buildroot}%{openjfxdir}/lib/packager.jar
d43d45e
cp -a modules/fxpackager/src/main/native/javapackager/shell/javapackager %{buildroot}%{openjfxdir}/bin
d43d45e
cp -a modules/fxpackager/src/main/native/javapackager/shell/javapackager %{buildroot}%{openjfxdir}/bin/javafxpackager
4a762df
4a762df
install -d -m 755 %{buildroot}%{_mandir}/man1
d43d45e
install -m 644 modules/fxpackager/src/main/man/man1/* %{buildroot}%{_mandir}/man1
4a762df
4a762df
install -d -m 755 %{buildroot}%{_mandir}/ja_JP/man1
d43d45e
install -m 644 modules/fxpackager/src/main/man/ja_JP.UTF-8/man1/* %{buildroot}%{_mandir}/ja_JP/man1
4a762df
4a762df
install -d 755 %{buildroot}%{_javadocdir}/%{name}
d43d45e
cp -a target/site/apidocs/. %{buildroot}%{_javadocdir}/%{name}
4a762df
4a762df
mkdir -p %{buildroot}%{_bindir}
4a762df
ln -s %{openjfxdir}/bin/javafxpackager %{buildroot}%{_bindir}
4a762df
ln -s %{openjfxdir}/bin/javapackager %{buildroot}%{_bindir}
4a762df
4a762df
%files
4a762df
%dir %{openjfxdir}
4a762df
%{openjfxdir}/rt
4a762df
%license LICENSE
4a762df
%doc README
4a762df
%doc README.fedora
4a762df
4a762df
%files devel
4a762df
%{openjfxdir}/lib
4a762df
%{openjfxdir}/bin
4a762df
%{_bindir}/javafxpackager
4a762df
%{_bindir}/javapackager
4a762df
%{_mandir}/man1/javafxpackager.1*
4a762df
%{_mandir}/man1/javapackager.1*
4a762df
%{_mandir}/ja_JP/man1/javafxpackager.1*
4a762df
%{_mandir}/ja_JP/man1/javapackager.1*
4a762df
%license LICENSE
4a762df
%doc README
4a762df
%doc README.fedora
4a762df
4a762df
%files javadoc
4a762df
%{_javadocdir}/%{name}
4a762df
%license LICENSE
4a762df
4a762df
%changelog
d43d45e
* Wed Feb 12 2020 Nicolas De Amicis <deamicis@bluewin.ch> - 8.0.202-10.b07
d43d45e
- Replace gradle build with maven build
d43d45e
84a63db
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 8.0.202-9.b07
84a63db
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
84a63db
d5ef256
* Wed Jul 31 2019 Nicolas De Amicis - 8.0.202-8.b07
d5ef256
- fxpackager extracts jre with symlinks (see bug 1700884) + drop SWT support for
d5ef256
  32 bits architectures (FTBFS in Fedora rawhide see bug 1736382)
d5ef256
7bdcecd
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 8.0.202-7.b07
7bdcecd
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
7bdcecd
Nicolas De Amicis 91d74fe
* Tue Mar 26 2019 Nicolas De Amicis - 8.0.202-6.b07
Nicolas De Amicis 91d74fe
- Remove orphaned dependency (javapackages-tools)
Nicolas De Amicis 91d74fe
c10af9c
* Mon Feb 04 2019 Nicolas De Amicis <deamicis@bluewin.ch> - 8.0.202-5.b07
c10af9c
- Fix compilation flags (see bug 1667675)
c10af9c
c32a983
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 8.0.202-4.b07
c32a983
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
c32a983
2d47776
* Fri Jan 18 2019 Nicolas De Amicis <deamicis@bluewin.ch> - 8.0.202-3.b07
2d47776
- Update to upstream version 8.0.202b07 and adding gtk3 support
2d47776
  (libglassgtk3.so)
2d47776
06b2f5a
* Tue Nov 27 2018 Nicolas De Amicis <deamicis@bluewin.ch> - 8.0.202-2.b02
06b2f5a
- Update to upstream version 8.0.202b02
06b2f5a
a5eb759
* Mon Nov 12 2018 Nicolas De Amicis <deamicis@bluewin.ch> - 8.0.152-19.b05
a5eb759
- Fix missing java packages in openjfx
a5eb759
e5626b4
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 8.0.152-18.b05
e5626b4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
e5626b4
5ef918c
* Thu Jun 21 2018 Mat Booth <mat.booth@redhat.com> - 8.0.152-17.b05
5ef918c
- Fix failure to build from source
5ef918c
c008389
* Thu Feb 08 2018 Fedora Release Engineering <releng@fedoraproject.org> - 8.0.152-16.b05
c008389
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
c008389
2153531
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 8.0.152-15.b05
2153531
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
2153531
35bf178
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 8.0.152-14.b05
35bf178
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
35bf178
457cd20
* Sun Jul 02 2017 Jonny Heggheim <hegjon@gmail.com> - 8.0.152-13.b05
457cd20
- Update to upstream version 8.0.152b05
457cd20
b3c0e9e
* Thu Jun 15 2017 Jonny Heggheim <hegjon@gmail.com> - 8.0.152-12.b04
b3c0e9e
- Removed BuildArch: noarch for subpackages that requires the parent package
b3c0e9e
c9d09df
* Thu Jun 15 2017 Jonny Heggheim <hegjon@gmail.com> - 8.0.152-11.b04
8324df4
- Build on i686 too
c9d09df
4a762df
* Wed May 31 2017 Jonny Heggheim <hegjon@gmail.com> - 8.0.152-10.b04
4a762df
- Update to upstream version 8.0.152b04
4a762df
4a762df
* Wed May 31 2017 Jonny Heggheim <hegjon@gmail.com> - 8.0.152-9.b03
4a762df
- Added requires on java and java-devel
4a762df
- Updated license
4a762df
4a762df
* Thu May 18 2017 Jonny Heggheim <hegjon@gmail.com> - 8.0.152-8.b03
4a762df
- Added requires on javapackages-tools
4a762df
- Added requires on parent package for subpackages devel and src
4a762df
4a762df
* Fri May 12 2017 Jonny Heggheim <hegjon@gmail.com> - 8.0.152-7.b03
4a762df
- Introduce sub-package devel
4a762df
4a762df
* Mon May 08 2017 Jonny Heggheim <hegjon@gmail.com> - 8.0.152-6.b03
4a762df
- Update to upstream version 8.0.152b03
4a762df
4a762df
* Mon May 01 2017 Jonny Heggheim <hegjon@gmail.com> - 8.0.152-5.b02
4a762df
- Update to upstream version 8.0.152b02
4a762df
4a762df
* Wed Apr 05 2017 Jonny Heggheim <hegjon@gmail.com> - 8.0.152-4.b00
4a762df
- Only build for x86 and x86_64, will fail to build on other platforms
4a762df
4a762df
* Thu Jan 19 2017 Jonny Heggheim <hegjon@gmail.com> - 8.0.152-3.b00
4a762df
- Include javadoc sub-package
4a762df
4a762df
* Tue Jan 17 2017 Jonny Heggheim <hegjon@gmail.com> - 8.0.152-2.b00
4a762df
- Include src sub-package
4a762df
4a762df
* Fri Dec 30 2016 Jonny Heggheim <hegjon@gmail.com> - 8.0.152-1.b00
4a762df
- Update to upstream version 8.0.152b00
4a762df
4a762df
* Tue Apr 26 2016 Mikolaj Izdebski <mizdebsk@redhat.com> - 8.0.91-1
4a762df
- Update to upstream version 8.0.91
4a762df
4a762df
* Tue Apr 26 2016 Mikolaj Izdebski <mizdebsk@redhat.com> - 8.0.60-1
4a762df
- Update to upstream version 8.0.60
4a762df
4a762df
* Mon Jul  6 2015 Mikolaj Izdebski <mizdebsk@redhat.com> - 8.0.40-1
4a762df
- Initial packaging