# a crap in less... %global debug_package %{nil} %if 0 %global build_flag -g -DDEBUG %else %global build_flag -O %endif # Determine jdk libraries %ifarch x86_64 %global build_arch amd64 %endif %ifarch ppc %global build_arch ppc %endif %ifarch %{power64} %global build_arch ppc64 %endif %ifarch %{ix86} %global build_arch i386 %endif %ifarch ia64 %global build_arch ia64 %endif # Not support this arch #E xclude Arch: %%{arm} %ifarch %{arm} %global build_arch arm %endif # [exec] DrawingSurfaceObjectAWT.o:(.ARM.exidx+0x0): undefined reference to `__aeabi_unwind_cpp_pr0' # [exec] Canvas3D.o:(.ARM.exidx+0x18): undefined reference to `__aeabi_unwind_cpp_pr0' # [exec] Canvas3D.o:(.ARM.exidx+0x80): undefined reference to `__aeabi_unwind_cpp_pr1' # [exec] GraphicsContext3D.o:(.ARM.exidx+0x0): undefined reference to `__aeabi_unwind_cpp_pr1' # [exec] NativeScreenInfo.o:(.ARM.exidx+0x0): undefined reference to `__aeabi_unwind_cpp_pr0' # [exec] NativeConfigTemplate3D.o:(.ARM.exidx+0x0): undefined reference to `__aeabi_unwind_cpp_pr0' # [exec] GeometryArrayRetained.o:(.ARM.exidx+0x0): undefined reference to `__aeabi_unwind_cpp_pr0' # [exec] GeometryArrayRetained.o:(.ARM.exidx+0x60): undefined reference to `__aeabi_unwind_cpp_pr1' # [exec] Attributes.o:(.ARM.exidx+0x0): undefined reference to `__aeabi_unwind_cpp_pr0' # [exec] Attributes.o:(.ARM.exidx+0x8): undefined reference to `__aeabi_unwind_cpp_pr1' # [exec] CgShaderProgram.o:(.ARM.exidx+0x0): undefined reference to `__aeabi_unwind_cpp_pr0' # [exec] GLSLShaderProgram.o:(.ARM.exidx+0x0): undefined reference to `__aeabi_unwind_cpp_pr0' # [exec] Lights.o:(.ARM.exidx+0x0): undefined reference to `__aeabi_unwind_cpp_pr1' # [exec] Result: 1 Name: java3d Version: 1.5.2 Release: 1%{?dist} Summary: 3D Graphics API for the Java Platform # j3d-core/src/native/ogl/panoramiXext.h MIT # j3d-core-utils/src/classes/share/com/sun/j3d/internal/Distance.java LGPL License: BSD and GPLv2 with exceptions and MIT and LGPLv2 URL: https://java.net/projects/java3d # svn export https://svn.java.net/svn/j3d-core~svn/tags/rel-1_5_2-fcs java3d-1.5.2/j3d-core # svn export https://svn.java.net/svn/j3d-core-utils~svn/tags/rel-1_5_2-fcs java3d-1.5.2/j3d-core-utils # find java3d-1.5.2 -name "*.class" -print -delete # find java3d-1.5.2 -name "*.jar" -print -delete # find java3d-1.5.2 -name "*.so" -print -delete # find java3d-1.5.2 -name "*.dll" -print -delete # find java3d-1.5.2 -name "unzip*" -print -delete # rm -rf java3d-1.5.2/j3d-core/build-tools/genzip # tar cJf java3d-1.5.2.tar.xz java3d-1.5.2 Source0: %{name}-%{version}.tar.xz # Replace use of com.sun.image.codec.jpeg.* with javax.imageio.ImageIO Patch0: %{name}-%{version}-use-ImageIO.patch Patch1: %{name}-%{version}-vecmath-classpath.patch # Define GLsizeiptr and GLintptr explicitly to prevent a FTBFS Patch2: %{name}-%{version}-typedef.patch # Use a generic ant build script for all arches Patch3: %{name}-%{version}-use_generic.patch Patch4: %{name}-%{version}-fix-incorrect-fsf-address.patch BuildRequires: ant BuildRequires: ant-junit BuildRequires: java-devel %if %{?fedora} >= 21 BuildRequires: javapackages-local %else BuildRequires: maven-local %endif BuildRequires: libX11-devel BuildRequires: libXext-devel BuildRequires: libXt-devel BuildRequires: mesa-libGL-devel BuildRequires: vecmath BuildRequires: xerces-j2 BuildRequires: xml-commons-apis Requires: %{name}-core = %{version}-%{release} %description The Java 3D API provides a set of object-oriented interfaces that support a simple, high-level programming model you can use to build, render, and control the behavior of 3D objects and visual environments. With the Java 3D API, you can incorporate high quality, scalable, platform-independent 3D graphics into applications and vecmath applets based on Java technology. %package core Summary: The Java 3D API Core URL: https://java.net/projects/j3d-core License: GPLv2 with exceptions and MIT Requires: vecmath %description core This package contains the Java 3D API Core. %package core-utils Summary: Core Utils for Java 3D URL: https://java.net/projects/j3d-core-utils License: BSD and LGPLv2 Requires: %{name}-core = %{version}-%{release} BuildArch: noarch %description core-utils This package contains the Java 3D API Core. %package javadoc Summary: Javadoc for %{name} BuildArch: noarch %description javadoc This package contains javadoc for %{name}. %prep %setup -q -n java3d-%{version} %patch0 -p0 %patch1 -p1 %patch2 -p1 %patch3 -p1 %patch4 -p0 sed -i 's/\r//' j3d-core/LICENSE.txt for d in j3d-core/COPYRIGHT.txt j3d-core-utils/COPYRIGHT.txt ; do iconv -f iso8859-1 -t utf-8 $d > $d.conv && mv -f $d.conv $d sed -i 's/\r//' $d done sed -i "s|-fPIC|-fPIC $(echo %{optflags} | sed -e 's/-g//')|" \ j3d-core/src/native/ogl/build-linux-generic.xml sed -i "s|-G -z defs|-G -z defs --build-id|" \ j3d-core/src/native/ogl/build-linux-generic.xml #%% ifarch %%{arm} # [exec] ld: cannot find -lgcc_s # [exec] ld: cannot find -lgcc_eh # [exec] Result: 1 #sed -i "s|-ldl -lGL|-ldl -lGL -lgcc_s -lgcc_eh|" \ # j3d-core/src/native/ogl/build-linux-generic.xml #%%endif sed -i 's|source="1.5"|source="1.6"|' j3d-core/src/classes/build.xml sed -i 's|target="1.5"|target="1.6"|' j3d-core/src/classes/build.xml # Remove maxmemory attribute in javadoc task sed -i '/maxmemory/d' j3d-core/src/classes/build.xml %build export ANT_OPTS="-Xms256m -Xmx256m" %ant -buildfile j3d-core/build.xml \ -Dos.arch=%{build_arch} \ -Dwstype=x11 \ -DosNativeConfigTemplate3D=X11NativeConfigTemplate3D \ -DosNativeScreenInfo=X11NativeScreenInfo \ -Dplatform=linux-generic \ -DbldType=opt \ -DbldFlag=%{build_flag} \ -Dbuild.type=stable \ jar-opt docs-public %install # Generate maven depmaps %mvn_artifact java3d:j3d-core:%{version} j3d-core/build/default/opt/lib/ext/j3dcore.jar # Fix installation directory %mvn_file java3d:j3d-core j3dcore # Split in a proper sub package %mvn_package java3d:j3d-core core %mvn_artifact java3d:j3d-core-utils:%{version} j3d-core/build/default/opt/lib/ext/j3dutils.jar %mvn_file java3d:j3d-core-utils j3dutils %mvn_package java3d:j3d-core-utils utils # Install all %mvn_install -J j3d-core/build/linux-generic/javadocs/docs-public # Install native lirary mkdir -p %{buildroot}%{_libdir}/%{name} install -pm 755 j3d-core/build/default/opt/native/libj3dcore-ogl.so \ %{buildroot}%{_libdir}/%{name} # Fix jni libraries %if %{?fedora} <= 20 mkdir -p %{buildroot}%{_jnidir} mv %{buildroot}%{_javadir}/j3dcore.jar %{buildroot}%{_jnidir}/ sed -i "s|usr/share/java/j3dcore.jar|usr/lib/java/j3dcore.jar|" .mfiles-core %endif # Link jni library in its "home" ln -s %{_jnidir}/j3dcore.jar %{buildroot}%{_libdir}/%{name}/ %files %dir %{_libdir}/%{name} %{_libdir}/%{name}/libj3dcore-ogl.so %doc j3d-core/README*.* %license j3d-core/COPYRIGHT.txt %license j3d-core/LICENSE*.* %files core -f .mfiles-core %{_libdir}/%{name}/j3dcore.jar %doc j3d-core/README*.* %license j3d-core/COPYRIGHT.txt %license j3d-core/LICENSE*.* %files core-utils -f .mfiles-utils %doc j3d-core-utils/README*.* %license j3d-core-utils/COPYRIGHT.txt %license j3d-core-utils/LICENSE*.txt %files javadoc %{_javadocdir}/%{name} %license j3d-core/COPYRIGHT.txt %license j3d-core/LICENSE*.* %changelog * Sat Mar 07 2015 gil cattaneo 1.5.2-1 - initial rpm