%define with_systemtap 1 %ifarch %arm %mips %define with_systemtap 0 %endif #and If gcjbootstrap is 1 IcedTea is bootstrapped against # java-1.5.0-gcj-devel. If gcjbootstrap is 0 IcedTea is built against # java-1.6.0-openjdk-devel. %define gcjbootstrap 0 # If runtests is 0 test suites will not be run. %define runtests 0 # update the first part of the release tag when upgrading icedtea %define icedteaver 1.10.6 %define icedteasnapshot %{nil} %define openjdkver b22 %define openjdkdate 28_feb_2011 %define genurl http://cvs.fedoraproject.org/viewcvs/devel/java-1.6.0-openjdk/ %define accessmajorver 1.23 %define accessminorver 0 %define accessver %{accessmajorver}.%{accessminorver} %define accessurl http://ftp.gnome.org/pub/GNOME/sources/java-access-bridge/ %define hotspoturl http://hg.openjdk.java.net/hsx/hsx20/master/archive/ %define jaxpurl https://jaxp.dev.java.net/files/documents/913/150648/ %define jafurl https://jax-ws.dev.java.net/files/documents/4202/150725/ %define jaxwsurl https://jax-ws.dev.java.net/files/documents/4202/150724/ %define openjdkurlbase http://www.java.net/download/openjdk/jdk6/promoted/ %define openjdkurl %{openjdkurlbase}%{openjdkver}/ %define fedorazip openjdk-6-src-%{openjdkver}-%{openjdkdate}-fedora.tar.gz %define mauvedate 2008-10-22 %define multilib_arches ppc64 sparc64 x86_64 %define jit_arches %{ix86} x86_64 sparcv9 sparc64 %ifarch %{ix86} %define archbuild i586 %define archinstall i386 %endif %ifarch x86_64 %define archbuild amd64 %define archinstall amd64 %endif # 32 bit sparc, optimized for v9 %ifarch sparcv9 %define archbuild sparc %define archinstall sparc %endif # 64 bit sparc %ifarch sparc64 %define archbuild sparcv9 %define archinstall sparcv9 %endif %ifnarch %{jit_arches} %define archbuild %{_arch} %define archinstall %{_arch} %endif # Reduce build time from 27 hours to 12 hours by only running test # suites on JIT architectures. %ifnarch %{jit_arches} %define runtests 0 %endif %define buildoutputdir openjdk.build %if %{gcjbootstrap} %ifarch %{jit_arches} %define icedteaopt --enable-systemtap %else %define icedteaopt %{nil} %endif %else %ifarch %{jit_arches} %define icedteaopt --disable-bootstrap --with-jdk-home=/usr/lib/jvm/java-openjdk --enable-systemtap %else %define icedteaopt --disable-bootstrap --with-jdk-home=/usr/lib/jvm/java-openjdk %endif %endif # Convert an absolute path to a relative path. Each symbolic link is # specified relative to the directory in which it is installed so that # it will resolve properly within chrooted installations. %define script 'use File::Spec; print File::Spec->abs2rel($ARGV[0], $ARGV[1])' %define abs2rel %{__perl} -e %{script} # Hard-code libdir on 64-bit architectures to make the 64-bit JDK # simply be another alternative. %ifarch %{multilib_arches} %define syslibdir %{_prefix}/lib64 %define _libdir %{_prefix}/lib %define archname %{name}.%{_arch} %else %define syslibdir %{_libdir} %define archname %{name} %endif # Standard JPackage naming and versioning defines. %define origin openjdk %define priority 16000 %define javaver 1.6.0 %define buildver 0 # Standard JPackage directories and symbolic links. # Make 64-bit JDKs just another alternative on 64-bit architectures. %ifarch %{multilib_arches} %define sdklnk java-%{javaver}-%{origin}.%{_arch} %define jrelnk jre-%{javaver}-%{origin}.%{_arch} %define sdkdir %{name}-%{version}.%{_arch} %else %define sdklnk java-%{javaver}-%{origin} %define jrelnk jre-%{javaver}-%{origin} %define sdkdir %{name}-%{version} %endif %define jredir %{sdkdir}/jre %define sdkbindir %{_jvmdir}/%{sdklnk}/bin %define jrebindir %{_jvmdir}/%{jrelnk}/bin %ifarch %{multilib_arches} %define jvmjardir %{_jvmjardir}/%{name}-%{version}.%{_arch} %else %define jvmjardir %{_jvmjardir}/%{name}-%{version} %endif %ifarch %{jit_arches} # Where to install systemtap tapset (links) # We would like these to be in a package specific subdir, # but currently systemtap doesn't support that, so we have to # use the root tapset dir for now. To distinquish between 64 # and 32 bit architectures we place the tapsets under the arch # specific dir (note that systemtap will only pickup the tapset # for the primary arch for now). Systemtap uses the machine name # aka build_cpu as architecture specific directory name. #define tapsetdir /usr/share/systemtap/tapset/%{sdkdir} %define tapsetdir /usr/share/systemtap/tapset/%{_build_cpu} %endif # Prevent brp-java-repack-jars from being run. %define __jar_repack 0 %define release %mkrel 26.%{openjdkver}.1 Name: java-%{javaver}-%{origin} Version: %{javaver}.%{buildver} Release: %{release} # java-1.5.0-ibm from jpackage.org set Epoch to 1 for unknown reasons, # and this change was brought into RHEL-4. java-1.5.0-ibm packages # also included the epoch in their virtual provides. This created a # situation where in-the-wild java-1.5.0-ibm packages provided "java = # 1:1.5.0". In RPM terms, "1.6.0 < 1:1.5.0" since 1.6.0 is # interpreted as 0:1.6.0. So the "java >= 1.6.0" requirement would be # satisfied by the 1:1.5.0 packages. Thus we need to set the epoch in # JDK package >= 1.6.0 to 1, and packages referring to JDK virtual # provides >= 1.6.0 must specify the epoch, "java >= 1:1.6.0". # ... but that doesn't apply to Mandriva. Epoch: 0 Summary: OpenJDK Runtime Environment Group: Development/Java License: GPLv2 with exceptions URL: http://icedtea.classpath.org/ # hg clone http://icedtea.classpath.org/hg/icedtea6 && rm -rf icedtea6/.hg && tar cjf icedtea6.tar.bz2 icedtea6 Source0: %{url}download/source/icedtea6-%{icedteaver}%{icedteasnapshot}.tar.gz # Fedora sources Source1: openjdk-6-src-%{openjdkver}-%{openjdkdate}-fedora.tar.gz Source3: http://cvs.fedoraproject.org/viewcvs/devel/java-1.6.0-openjdk/generate-fedora-zip.sh Source4: README.src Source5: mauve-%{mauvedate}.tar.gz Source6: mauve_tests Source7: %{hotspoturl}hotspot.tar.gz Source8: %{jaxpurl}jaxp144_01.zip Source9: %{jafurl}jdk6-jaf-b20.zip Source10: %{jaxwsurl}/jdk6-jaxws-b20.zip Patch1: makefile-xalan-deps.patch Patch2: java-1.6.0-openjdk-accessible-toolkit.patch # corrects #55005 - "unpleasant" bitmap scaled fonts Patch3: java-1.6.0-openjdk-fontpath.patch BuildRequires: alsa-lib-devel BuildRequires: ant-nodeps BuildRequires: cups-devel BuildRequires: desktop-file-utils BuildRequires: ungif-devel BuildRequires: lesstif-devel BuildRequires: x11-proto-devel BuildRequires: libxi-devel BuildRequires: libxp-devel BuildRequires: libxt-devel BuildRequires: libxtst-devel BuildRequires: jpeg-devel BuildRequires: png-devel BuildRequires: wget BuildRequires: xalan-j2 BuildRequires: xerces-j2 BuildRequires: ant BuildRequires: libxinerama-devel BuildRequires: rhino BuildRequires: libstdc++-static-devel BuildRequires: zip %if %{with_systemtap} BuildRequires: systemtap %endif %if %{gcjbootstrap} BuildRequires: java-1.5.0-gcj-devel %else BuildRequires: java-1.6.0-openjdk-devel %endif %if %{runtests} # Mauve build requirements. BuildRequires: x11-server-xvfb BuildRequires: x11-font-type1 BuildRequires: x11-font-misc %endif BuildRequires: libxrender-devel BuildRequires: freetype2-devel >= 2.3.0 BuildRequires: fontconfig BuildRequires: eclipse-ecj BuildRequires: eclipse-jdt # Java Access Bridge for GNOME build requirements. Requires: java-access-bridge BuildRequires: java-access-bridge # PulseAudio build requirements. BuildRequires: pulseaudio-devel >= 0.9.11 BuildRequires: pulseaudio >= 0.9.11 # Zero-assembler build requirement. %ifnarch %{jit_arches} BuildRequires: libffi-devel %endif # Require /etc/pki/java/cacerts. Requires: rootcerts-java Requires: rhino # Require jpackage-utils for ant. Requires: jpackage-utils >= 1.7.3-1jpp.2 # Require zoneinfo data provided by tzdata-java subpackage. Requires: tzdata-java # Post requires alternatives to install tool alternatives. Requires(post): update-alternatives # Postun requires alternatives to uninstall tool alternatives. Requires(postun): update-alternatives # FIXME fonts-ttf-dejavu-lgc is the default, but currently is not directly # available in Mandriva Requires: fonts-ttf-dejavu # Standard JPackage base provides. Provides: jre-%{javaver}-%{origin} = %{epoch}:%{version}-%{release} Provides: jre-%{origin} = %{epoch}:%{version}-%{release} Provides: jre-%{javaver} = %{epoch}:%{version}-%{release} Provides: java-%{javaver} = %{epoch}:%{version}-%{release} Provides: jre = %{javaver} Provides: java-%{origin} = %{epoch}:%{version}-%{release} Provides: java = %{epoch}:%{javaver} # Standard JPackage extensions provides. Provides: jndi = %{epoch}:%{version} Provides: jndi-ldap = %{epoch}:%{version} Provides: jndi-cos = %{epoch}:%{version} Provides: jndi-rmi = %{epoch}:%{version} Provides: jndi-dns = %{epoch}:%{version} Provides: jaas = %{epoch}:%{version} Provides: jsse = %{epoch}:%{version} Provides: jce = %{epoch}:%{version} Provides: jdbc-stdext = 3.0 Provides: java-sasl = %{epoch}:%{version} Provides: java-fonts = %{epoch}:%{version} %description The OpenJDK runtime environment. %package devel Summary: OpenJDK Development Environment Group: Development/Java # Require base package. Requires: %{name} = %{epoch}:%{version}-%{release} # Post requires alternatives to install tool alternatives. Requires(post): update-alternatives # Postun requires alternatives to uninstall tool alternatives. Requires(postun): update-alternatives # Standard JPackage devel provides. Provides: java-sdk-%{javaver}-%{origin} = %{epoch}:%{version} Provides: java-sdk-%{javaver} = %{epoch}:%{version} Provides: java-sdk-%{origin} = %{epoch}:%{version} Provides: java-sdk = %{epoch}:%{javaver} Provides: java-%{javaver}-devel = %{epoch}:%{version} Provides: java-devel-%{origin} = %{epoch}:%{version} Provides: java-devel = %{epoch}:%{javaver} %description devel The OpenJDK development tools. %package demo Summary: OpenJDK Demos Group: Development/Java Requires: %{name} = %{epoch}:%{version}-%{release} %description demo The OpenJDK demos. %package src Summary: OpenJDK Source Bundle Group: Development/Java BuildArch: noarch Requires: %{name} = %{epoch}:%{version}-%{release} %description src The OpenJDK source bundle. %package javadoc Summary: OpenJDK API Documentation Group: Development/Java BuildArch: noarch # Post requires alternatives to install javadoc alternative. Requires(post): update-alternatives # Postun requires alternatives to uninstall javadoc alternative. Requires(postun): update-alternatives # Standard JPackage javadoc provides. Provides: java-javadoc = %{epoch}:%{version}-%{release} Provides: java-%{javaver}-javadoc = %{epoch}:%{version}-%{release} %description javadoc The OpenJDK API documentation. %prep %setup -q -n icedtea6-%{icedteaver} %setup -q -n icedtea6-%{icedteaver} -T -D -a 5 cp %{SOURCE4} . cp %{SOURCE6} . %{_bindir}/find . -type f -name "*.sh" -o -type f -name "*.cgi" | %{_bindir}/xargs %{__chmod} 0755 %{_bindir}/autoreconf -i -v -f %patch1 -p0 ./autogen.sh %build # Build IcedTea and OpenJDK. # (Anssi 07/2008) do not hardcode /usr/bin, to allow using ccache et al: export ALT_COMPILER_PATH= export CFLAGS="%{optflags} -fno-tree-vrp" %configure2_5x %{icedteaopt} --with-openjdk-src-zip=%{SOURCE1} \ --with-pkgversion=fedora-%{release}-%{_arch} --enable-pulse-java \ --with-hotspot-build=hs20 --with-hotspot-src-zip=%{SOURCE7} \ --with-jaf-drop-zip=%{SOURCE9} \ --with-jaxp-drop-zip=%{SOURCE8} --with-jaxws-drop-zip=%{SOURCE10} \ --with-abs-install-dir=%{_jvmdir}/%{sdkdir} %if %{gcjbootstrap} make stamps/patch-ecj.stamp %endif make patch # patch cannot be applied before, # macro %patch will not work outside of %prep patch -l -p0 < %{PATCH2} patch -l -p1 < %{PATCH3} make STATIC_CXX=false MOZILLA_LIBS="" pushd %{buildoutputdir}/j2sdk-image/jre/lib %{__ln_s}f %{_javadir}/accessibility.properties accessibility.properties %{__ln_s}f %{_javadir}/gnome-java-bridge.jar ext/gnome-java-bridge.jar popd %check %if %{runtests} touch mauve-%{mauvedate}/mauve_output # Run jtreg test suite. { echo ====================JTREG TESTING======================== export DISPLAY=:20 Xvfb :20 -screen 0 1x1x24 -ac& echo $! > Xvfb.pid make jtregcheck -k kill -9 `cat Xvfb.pid` unset DISPLAY rm -f Xvfb.pid echo ====================JTREG TESTING END==================== } || : # Run Mauve test suite. { pushd mauve-%{mauvedate} %{configure2_5x} make echo ====================MAUVE TESTING======================== export DISPLAY=:20 Xvfb :20 -screen 0 1x1x24 -ac& echo $! > Xvfb.pid $JAVA_HOME/bin/java Harness -vm $JAVA_HOME/bin/java \ -file %{SOURCE6} -timeout 30000 2>&1 | tee mauve_output kill -9 `cat Xvfb.pid` unset DISPLAY rm -f Xvfb.pid echo ====================MAUVE TESTING END==================== popd } || : %endif %install rm -rf $RPM_BUILD_ROOT pushd %{buildoutputdir}/j2sdk-image # Install main files. install -d -m 755 $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir} cp -a bin include lib src.zip $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir} install -d -m 755 $RPM_BUILD_ROOT%{_jvmdir}/%{jredir} cp -a jre/bin jre/lib $RPM_BUILD_ROOT%{_jvmdir}/%{jredir} %if %{with_systemtap} # Install systemtap support files. cp -a tapset $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir} install -d -m 755 $RPM_BUILD_ROOT%{tapsetdir} pushd $RPM_BUILD_ROOT%{tapsetdir} RELATIVE=$(%{abs2rel} %{_jvmdir}/%{sdkdir}/tapset %{tapsetdir}) ln -sf $RELATIVE/*.stp . popd %endif # Install cacerts symlink. rm -f $RPM_BUILD_ROOT%{_jvmdir}/%{jredir}/lib/security/cacerts pushd $RPM_BUILD_ROOT%{_jvmdir}/%{jredir}/lib/security RELATIVE=$(%{abs2rel} %{_sysconfdir}/pki/java \ %{_jvmdir}/%{jredir}/lib/security) ln -sf $RELATIVE/cacerts . popd # Install extension symlinks. install -d -m 755 $RPM_BUILD_ROOT%{jvmjardir} pushd $RPM_BUILD_ROOT%{jvmjardir} RELATIVE=$(%{abs2rel} %{_jvmdir}/%{jredir}/lib %{jvmjardir}) ln -sf $RELATIVE/jsse.jar jsse-%{version}.jar ln -sf $RELATIVE/jce.jar jce-%{version}.jar for i in jndi jndi-ldap jndi-cos jndi-rmi jaas jdbc-stdext sasl ; do ln -sf $RELATIVE/rt.jar $i-%{version}.jar done ln -sf jdbc-stdext-%{version}.jar jdbc-stdext-3.0.jar for jar in *-%{version}.jar do if [ x%{version} != x%{javaver} ] then ln -sf $jar ${jar/-%{version}.jar/-%{javaver}.jar} fi ln -sf $jar ${jar/-%{version}.jar/.jar} done popd # Install JCE policy symlinks. install -d -m 755 $RPM_BUILD_ROOT%{_jvmprivdir}/%{archname}/jce/vanilla # Install versionless symlinks. pushd $RPM_BUILD_ROOT%{_jvmdir} ln -sf %{jredir} %{jrelnk} ln -sf %{sdkdir} %{sdklnk} popd pushd $RPM_BUILD_ROOT%{_jvmjardir} ln -sf %{sdkdir} %{jrelnk} ln -sf %{sdkdir} %{sdklnk} popd # Install man pages. install -d -m 755 $RPM_BUILD_ROOT%{_mandir}/man1 for manpage in man/man1/* do # Convert man pages to UTF8 encoding. iconv -f ISO_8859-1 -t UTF8 $manpage -o $manpage.tmp mv -f $manpage.tmp $manpage install -m 644 -p $manpage $RPM_BUILD_ROOT%{_mandir}/man1/$(basename \ $manpage .1)-%{name}.1 done # Install demos and samples. cp -a demo $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir} mkdir -p sample/rmi # XXX: (walluck): fix -ba --short-circuit test -f bin/sample.cgi && mv bin/java-rmi.cgi sample/rmi cp -a sample $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir} popd # Install Javadoc documentation. install -d -m 755 $RPM_BUILD_ROOT%{_javadocdir} cp -a %{buildoutputdir}/docs $RPM_BUILD_ROOT%{_javadocdir}/%{name} # Install icons and menu entries. for s in 16 24 32 48 ; do install -D -p -m 644 \ openjdk/jdk/src/solaris/classes/sun/awt/X11/java-icon${s}.png \ $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/${s}x${s}/apps/java.png done for e in jconsole policytool ; do desktop-file-install --vendor="" --mode=644 \ --dir=$RPM_BUILD_ROOT%{_datadir}/applications $e.desktop done # Find JRE directories. find $RPM_BUILD_ROOT%{_jvmdir}/%{jredir} -type d \ | grep -v jre/lib/security \ | sed 's|'$RPM_BUILD_ROOT'|%dir |' \ > %{name}.files # Find JRE files. find $RPM_BUILD_ROOT%{_jvmdir}/%{jredir} -type f -o -type l \ | grep -v jre/lib/security \ | sed 's|'$RPM_BUILD_ROOT'||' \ >> %{name}.files # Find demo directories. find $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir}/demo \ $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir}/sample -type d \ | sed 's|'$RPM_BUILD_ROOT'|%dir |' \ > %{name}-demo.files # FIXME: remove SONAME entries from demo DSOs. See # https://bugzilla.redhat.com/show_bug.cgi?id=436497 # Find non-documentation demo files. find $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir}/demo \ $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir}/sample \ -type f -o -type l | sort \ | grep -v README \ | sed 's|'$RPM_BUILD_ROOT'||' \ >> %{name}-demo.files # Find documentation demo files. find $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir}/demo \ $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir}/sample \ -type f -o -type l | sort \ | grep README \ | sed 's|'$RPM_BUILD_ROOT'||' \ | sed 's|^|%doc |' \ >> %{name}-demo.files # (Anssi 05/2008) for update-alternatives: install -d -m755 %{buildroot}%{syslibdir}/mozilla/plugins cp -fa %{buildroot}%{_jvmdir}/%{jredir}/lib/fontconfig.properties{.src,} %clean rm -rf $RPM_BUILD_ROOT # FIXME: identical binaries are copied, not linked. This needs to be # fixed upstream. %post ext=%{_extension} update-alternatives\ --install %{_bindir}/java java %{jrebindir}/java %{priority} \ --slave %{_jvmdir}/jre jre %{_jvmdir}/%{jrelnk} \ --slave %{_jvmjardir}/jre jre_exports %{_jvmjardir}/%{jrelnk} \ --slave %{_bindir}/keytool keytool %{jrebindir}/keytool \ --slave %{_bindir}/orbd orbd %{jrebindir}/orbd \ --slave %{_bindir}/pack200 pack200 %{jrebindir}/pack200 \ --slave %{_bindir}/policytool policytool %{jrebindir}/policytool \ --slave %{_bindir}/rmid rmid %{jrebindir}/rmid \ --slave %{_bindir}/rmiregistry rmiregistry %{jrebindir}/rmiregistry \ --slave %{_bindir}/servertool servertool %{jrebindir}/servertool \ --slave %{_bindir}/tnameserv tnameserv %{jrebindir}/tnameserv \ --slave %{_bindir}/unpack200 unpack200 %{jrebindir}/unpack200 \ --slave %{_mandir}/man1/java.1$ext java.1$ext \ %{_mandir}/man1/java-%{name}.1$ext \ --slave %{_mandir}/man1/keytool.1$ext keytool.1$ext \ %{_mandir}/man1/keytool-%{name}.1$ext \ --slave %{_mandir}/man1/orbd.1$ext orbd.1$ext \ %{_mandir}/man1/orbd-%{name}.1$ext \ --slave %{_mandir}/man1/pack200.1$ext pack200.1$ext \ %{_mandir}/man1/pack200-%{name}.1$ext \ --slave %{_mandir}/man1/policytool.1$ext policytool.1$ext \ %{_mandir}/man1/policytool-%{name}.1$ext \ --slave %{_mandir}/man1/rmid.1$ext rmid.1$ext \ %{_mandir}/man1/rmid-%{name}.1$ext \ --slave %{_mandir}/man1/rmiregistry.1$ext rmiregistry.1$ext \ %{_mandir}/man1/rmiregistry-%{name}.1$ext \ --slave %{_mandir}/man1/servertool.1$ext servertool.1$ext \ %{_mandir}/man1/servertool-%{name}.1$ext \ --slave %{_mandir}/man1/tnameserv.1$ext tnameserv.1$ext \ %{_mandir}/man1/tnameserv-%{name}.1$ext \ --slave %{_mandir}/man1/unpack200.1$ext unpack200.1$ext \ %{_mandir}/man1/unpack200-%{name}.1$ext update-alternatives\ --install %{_jvmdir}/jre-%{origin} \ jre_%{origin} %{_jvmdir}/%{jrelnk} %{priority} \ --slave %{_jvmjardir}/jre-%{origin} \ jre_%{origin}_exports %{_jvmjardir}/%{jrelnk} update-alternatives\ --install %{_jvmdir}/jre-%{javaver} \ jre_%{javaver} %{_jvmdir}/%{jrelnk} %{priority} \ --slave %{_jvmjardir}/jre-%{javaver} \ jre_%{javaver}_exports %{_jvmjardir}/%{jrelnk} exit 0 %postun if [ $1 -eq 0 ] then update-alternatives --remove java %{jrebindir}/java update-alternatives --remove jre_%{origin} %{_jvmdir}/%{jrelnk} update-alternatives --remove jre_%{javaver} %{_jvmdir}/%{jrelnk} fi exit 0 %post devel ext=%{_extension} update-alternatives\ --install %{_bindir}/javac javac %{sdkbindir}/javac %{priority} \ --slave %{_jvmdir}/java java_sdk %{_jvmdir}/%{sdklnk} \ --slave %{_jvmjardir}/java java_sdk_exports %{_jvmjardir}/%{sdklnk} \ --slave %{_bindir}/appletviewer appletviewer %{sdkbindir}/appletviewer \ --slave %{_bindir}/apt apt %{sdkbindir}/apt \ --slave %{_bindir}/extcheck extcheck %{sdkbindir}/extcheck \ --slave %{_bindir}/jar jar %{sdkbindir}/jar \ --slave %{_bindir}/jarsigner jarsigner %{sdkbindir}/jarsigner \ --slave %{_bindir}/javadoc javadoc %{sdkbindir}/javadoc \ --slave %{_bindir}/javah javah %{sdkbindir}/javah \ --slave %{_bindir}/javap javap %{sdkbindir}/javap \ --slave %{_bindir}/jconsole jconsole %{sdkbindir}/jconsole \ --slave %{_bindir}/jdb jdb %{sdkbindir}/jdb \ --slave %{_bindir}/jhat jhat %{sdkbindir}/jhat \ --slave %{_bindir}/jinfo jinfo %{sdkbindir}/jinfo \ --slave %{_bindir}/jmap jmap %{sdkbindir}/jmap \ --slave %{_bindir}/jps jps %{sdkbindir}/jps \ --slave %{_bindir}/jrunscript jrunscript %{sdkbindir}/jrunscript \ --slave %{_bindir}/jsadebugd jsadebugd %{sdkbindir}/jsadebugd \ --slave %{_bindir}/jstack jstack %{sdkbindir}/jstack \ --slave %{_bindir}/jstat jstat %{sdkbindir}/jstat \ --slave %{_bindir}/jstatd jstatd %{sdkbindir}/jstatd \ --slave %{_bindir}/native2ascii native2ascii %{sdkbindir}/native2ascii \ --slave %{_bindir}/rmic rmic %{sdkbindir}/rmic \ --slave %{_bindir}/schemagen schemagen %{sdkbindir}/schemagen \ --slave %{_bindir}/serialver serialver %{sdkbindir}/serialver \ --slave %{_bindir}/wsgen wsgen %{sdkbindir}/wsgen \ --slave %{_bindir}/wsimport wsimport %{sdkbindir}/wsimport \ --slave %{_bindir}/xjc xjc %{sdkbindir}/xjc \ --slave %{_mandir}/man1/appletviewer.1$ext appletviewer.1$ext \ %{_mandir}/man1/appletviewer-%{name}.1$ext \ --slave %{_mandir}/man1/apt.1$ext apt.1$ext \ %{_mandir}/man1/apt-%{name}.1$ext \ --slave %{_mandir}/man1/extcheck.1$ext extcheck.1$ext \ %{_mandir}/man1/extcheck-%{name}.1$ext \ --slave %{_mandir}/man1/jar.1$ext jar.1$ext \ %{_mandir}/man1/jar-%{name}.1$ext \ --slave %{_mandir}/man1/jarsigner.1$ext jarsigner.1$ext \ %{_mandir}/man1/jarsigner-%{name}.1$ext \ --slave %{_mandir}/man1/javac.1$ext javac.1$ext \ %{_mandir}/man1/javac-%{name}.1$ext \ --slave %{_mandir}/man1/javadoc.1$ext javadoc.1$ext \ %{_mandir}/man1/javadoc-%{name}.1$ext \ --slave %{_mandir}/man1/javah.1$ext javah.1$ext \ %{_mandir}/man1/javah-%{name}.1$ext \ --slave %{_mandir}/man1/javap.1$ext javap.1$ext \ %{_mandir}/man1/javap-%{name}.1$ext \ --slave %{_mandir}/man1/jconsole.1$ext jconsole.1$ext \ %{_mandir}/man1/jconsole-%{name}.1$ext \ --slave %{_mandir}/man1/jdb.1$ext jdb.1$ext \ %{_mandir}/man1/jdb-%{name}.1$ext \ --slave %{_mandir}/man1/jhat.1$ext jhat.1$ext \ %{_mandir}/man1/jhat-%{name}.1$ext \ --slave %{_mandir}/man1/jinfo.1$ext jinfo.1$ext \ %{_mandir}/man1/jinfo-%{name}.1$ext \ --slave %{_mandir}/man1/jmap.1$ext jmap.1$ext \ %{_mandir}/man1/jmap-%{name}.1$ext \ --slave %{_mandir}/man1/jps.1$ext jps.1$ext \ %{_mandir}/man1/jps-%{name}.1$ext \ --slave %{_mandir}/man1/jrunscript.1$ext jrunscript.1$ext \ %{_mandir}/man1/jrunscript-%{name}.1$ext \ --slave %{_mandir}/man1/jsadebugd.1$ext jsadebugd.1$ext \ %{_mandir}/man1/jsadebugd-%{name}.1$ext \ --slave %{_mandir}/man1/jstack.1$ext jstack.1$ext \ %{_mandir}/man1/jstack-%{name}.1$ext \ --slave %{_mandir}/man1/jstat.1$ext jstat.1$ext \ %{_mandir}/man1/jstat-%{name}.1$ext \ --slave %{_mandir}/man1/jstatd.1$ext jstatd.1$ext \ %{_mandir}/man1/jstatd-%{name}.1$ext \ --slave %{_mandir}/man1/native2ascii.1$ext native2ascii.1$ext \ %{_mandir}/man1/native2ascii-%{name}.1$ext \ --slave %{_mandir}/man1/rmic.1$ext rmic.1$ext \ %{_mandir}/man1/rmic-%{name}.1$ext \ --slave %{_mandir}/man1/schemagen.1$ext schemagen.1$ext \ %{_mandir}/man1/schemagen-%{name}.1$ext \ --slave %{_mandir}/man1/serialver.1$ext serialver.1$ext \ %{_mandir}/man1/serialver-%{name}.1$ext \ --slave %{_mandir}/man1/wsgen.1$ext wsgen.1$ext \ %{_mandir}/man1/wsgen-%{name}.1$ext \ --slave %{_mandir}/man1/wsimport.1$ext wsimport.1$ext \ %{_mandir}/man1/wsimport-%{name}.1$ext \ --slave %{_mandir}/man1/xjc.1$ext xjc.1$ext \ %{_mandir}/man1/xjc-%{name}.1$ext update-alternatives\ --install %{_jvmdir}/java-%{origin} \ java_sdk_%{origin} %{_jvmdir}/%{sdklnk} %{priority} \ --slave %{_jvmjardir}/java-%{origin} \ java_sdk_%{origin}_exports %{_jvmjardir}/%{sdklnk} update-alternatives\ --install %{_jvmdir}/java-%{javaver} \ java_sdk_%{javaver} %{_jvmdir}/%{sdklnk} %{priority} \ --slave %{_jvmjardir}/java-%{javaver} \ java_sdk_%{javaver}_exports %{_jvmjardir}/%{sdklnk} exit 0 %postun devel if [ $1 -eq 0 ] then update-alternatives --remove javac %{sdkbindir}/javac update-alternatives --remove java_sdk_%{origin} %{_jvmdir}/%{sdklnk} update-alternatives --remove java_sdk_%{javaver} %{_jvmdir}/%{sdklnk} fi %post javadoc update-alternatives\ --install %{_javadocdir}/java javadocdir %{_javadocdir}/%{name}/api \ %{priority} exit 0 %postun javadoc if [ $1 -eq 0 ] then update-alternatives --remove javadocdir %{_javadocdir}/%{name}/api fi exit 0 %files -f %{name}.files %defattr(-,root,root,-) %doc %{buildoutputdir}/j2sdk-image/jre/ASSEMBLY_EXCEPTION %doc %{buildoutputdir}/j2sdk-image/jre/LICENSE %doc %{buildoutputdir}/j2sdk-image/jre/THIRD_PARTY_README # FIXME: The TRADEMARK file should be in j2sdk-image. %doc openjdk/TRADEMARK %doc AUTHORS %doc COPYING %doc NEWS %doc README %dir %{_jvmdir}/%{sdkdir} %{_jvmdir}/%{jrelnk} %{_jvmjardir}/%{jrelnk} %{_jvmprivdir}/* %{jvmjardir} %dir %{_jvmdir}/%{jredir}/lib/security %{_jvmdir}/%{jredir}/lib/security/cacerts # FIXME: These should be replaced by symlinks into /etc. %config(noreplace) %{_jvmdir}/%{jredir}/lib/security/java.policy %config(noreplace) %{_jvmdir}/%{jredir}/lib/security/java.security %config(noreplace) %{_jvmdir}/%{jredir}/lib/security/nss.cfg %{_datadir}/applications/*policytool.desktop %{_datadir}/icons/hicolor/*x*/apps/java.png %{_mandir}/man1/java-%{name}.1* %{_mandir}/man1/keytool-%{name}.1* %{_mandir}/man1/orbd-%{name}.1* %{_mandir}/man1/pack200-%{name}.1* %{_mandir}/man1/policytool-%{name}.1* %{_mandir}/man1/rmid-%{name}.1* %{_mandir}/man1/rmiregistry-%{name}.1* %{_mandir}/man1/servertool-%{name}.1* %{_mandir}/man1/tnameserv-%{name}.1* %{_mandir}/man1/unpack200-%{name}.1* # FIXME: This should be %config %{_jvmdir}/%{jredir}/lib/fontconfig.properties %files devel %defattr(-,root,root,-) %doc ChangeLog %doc %{buildoutputdir}/j2sdk-image/ASSEMBLY_EXCEPTION %doc %{buildoutputdir}/j2sdk-image/LICENSE %doc %{buildoutputdir}/j2sdk-image/THIRD_PARTY_README # FIXME: The TRADEMARK file should be in j2sdk-image. %doc openjdk/TRADEMARK %dir %{_jvmdir}/%{sdkdir}/bin %dir %{_jvmdir}/%{sdkdir}/include %dir %{_jvmdir}/%{sdkdir}/lib %{_jvmdir}/%{sdkdir}/bin/* %{_jvmdir}/%{sdkdir}/include/* %{_jvmdir}/%{sdkdir}/lib/* %{_jvmdir}/%{sdklnk} %{_jvmjardir}/%{sdklnk} %{_datadir}/applications/*jconsole.desktop %{_mandir}/man1/appletviewer-%{name}.1* %{_mandir}/man1/apt-%{name}.1* %{_mandir}/man1/extcheck-%{name}.1* %{_mandir}/man1/idlj-%{name}.1* %{_mandir}/man1/jar-%{name}.1* %{_mandir}/man1/jarsigner-%{name}.1* %{_mandir}/man1/javac-%{name}.1* %{_mandir}/man1/javadoc-%{name}.1* %{_mandir}/man1/javah-%{name}.1* %{_mandir}/man1/javap-%{name}.1* %{_mandir}/man1/jconsole-%{name}.1* %{_mandir}/man1/jdb-%{name}.1* %{_mandir}/man1/jhat-%{name}.1* %{_mandir}/man1/jinfo-%{name}.1* %{_mandir}/man1/jmap-%{name}.1* %{_mandir}/man1/jps-%{name}.1* %{_mandir}/man1/jrunscript-%{name}.1* %{_mandir}/man1/jsadebugd-%{name}.1* %{_mandir}/man1/jstack-%{name}.1* %{_mandir}/man1/jstat-%{name}.1* %{_mandir}/man1/jstatd-%{name}.1* %{_mandir}/man1/native2ascii-%{name}.1* %{_mandir}/man1/rmic-%{name}.1* %{_mandir}/man1/schemagen-%{name}.1* %{_mandir}/man1/serialver-%{name}.1* %{_mandir}/man1/wsgen-%{name}.1* %{_mandir}/man1/wsimport-%{name}.1* %{_mandir}/man1/xjc-%{name}.1* %if %{with_systemtap} %dir %{_jvmdir}/%{sdkdir}/tapset %{_jvmdir}/%{sdkdir}/tapset/* %dir %{tapsetdir} %{tapsetdir}/*.stp %endif %files demo -f %{name}-demo.files %defattr(-,root,root,-) %files src %defattr(-,root,root,-) %doc README.src %{_jvmdir}/%{sdkdir}/src.zip %if %{runtests} # FIXME: put these in a separate testresults subpackage. %doc mauve_tests %doc mauve-%{mauvedate}/mauve_output %doc test/jtreg-summary.log %endif %files javadoc %defattr(-,root,root,-) %doc %{_javadocdir}/%{name} %changelog * Sun Apr 08 2012 luigiwalser <luigiwalser> 0:1.6.0.0-26.b22.1.mga1 + Revision: 229639 - Updated to IcedTea6 1.10.6 (mga #4563) - Security fixes: - CVE-2011-3563: fix issues in java sound - CVE-2011-3571: fix in AtomicReferenceArray - CVE-2011-5035: add property to limit number of request headers to the HTTP Server - CVE-2012-0497: incorrect checking for graphics rendering object - CVE-2012-0498, CVE-2012-0499, CVE-2012-0500: multiple unspecified vulnerabilities allow remote attackers to affect confidentiality, integrity, and availability via unknown vectors - CVE-2012-0501: better input parameter checking in zip file processing - CVE-2012-0502: issues with some KeyboardFocusManager methods - CVE-2012-0503: issues with TimeZone class - CVE-2012-0505: enhance exception throwing mechanism in ObjectStreamClass - CVE-2012-0506: issues with some methods in corba + dmorgan <dmorgan> - updated to icedtea6 1.10.4 - Security fixes - S7000600, CVE-2011-3547: InputStream skip() information leak - S7019773, CVE-2011-3548: mutable static AWTKeyStroke.ctor - S7023640, CVE-2011-3551: Java2D TransformHelper integer overflow - S7032417, CVE-2011-3552: excessive default UDP socket limit under SecurityManager - S7046823, CVE-2011-3544: missing SecurityManager checks in scripting engine - S7055902, CVE-2011-3521: IIOP deserialization code execution - S7057857, CVE-2011-3554: insufficient pack200 JAR files uncompress error checks - S7064341, CVE-2011-3389: HTTPS: block-wise chosen-plaintext attack against SSL/TLS (BEAST) - S7070134, CVE-2011-3558: HotSpot crashes with sigsegv from PorterStemmer - S7077466, CVE-2011-3556: RMI DGC server remote code execution - S7083012, CVE-2011-3557: RMI registry privileged code execution - S7096936, CVE-2011-3560: missing checkSetFactory calls in HttpsURLConnection - Bug fixes - RH727195 : Japanese font mappings are broken - Backports - S6826104, RH730015: Getting a NullPointer exception when clicked on Application & Toolkit Modal dialog - Zero/Shark - PR690: Shark fails to JIT using hs20. - PR696: Zero fails to handle fast_aldc and fast_aldc_w in hs20. - Sync with cauldron version - Resolves: rhbz#709375 - Bumped to IcedTea6 1.10.2 - RH706250, S6213702, CVE-2011-0872: (so) non-blocking sockets with TCP urgent disabled get still selected for read ops (win) - RH706106, S6618658, CVE-2011-0865: Vulnerability in deserialization - RH706111, S7012520, CVE-2011-0815: Heap overflow vulnerability in FileDialog.show() (win) - RH706139, S7013519, CVE-2011-0822, CVE-2011-0862: Integer overflows in 2D code - RH706153, S7013969, CVE-2011-0867: NetworkInterface.toString can reveal bindings - RH706234, S7013971, CVE-2011-0869: Vulnerability in SAAJ - RH706239, S7016340, CVE-2011-0870: Vulnerability in SAAJ - RH706241, S7016495, CVE-2011-0868: Crash in Java 2D transforming an image with scale close to zero - RH706248, S7020198, CVE-2011-0871: ImageIcon creates Component with null acc - RH706245, S7020373, CVE-2011-0864: JSR rewriting can overflow memory address size variables * Wed Apr 20 2011 misc <misc> 0:1.6.0.0-14.b22.5.mga1 + Revision: 89216 - rebuilt to make sure the package can be uploaded - fix patch application as %%patch is only valid in %%prep - renumber the patch, and remove those not applied - java-1.6.0-openjdk-optflags.patch is not applied - java-1.6.0-openjdk-fix-RA.patch is only applied on i386 and i686 ( so not on i586 ) - icedtea6-1.8.2-mutex_and_leak.patch is not even referenced in the spec - remove visualvm switch, as it has no effect except changing description - use some bashism to have a cleaner spec - do not requires XVfb if we do not run the test - remove define everywhere when they are used only in one place - patch0 seems to not be applied, so remove it - simplify the interleaved options between jit_arch and systemtap - remove another old Provides/Obsoletes couple - clean the last remaining part of arch conditional stuff - remove old comment about old patches - use regular macro for patch application - remove old Provides/Obsoletes, as they date back to 2009.0 - run tests in the proper section - drop alpha/sparc64 define ( we do not have theses archs ) - revert wrong commit, cause breakage * Tue Apr 19 2011 dmorgan <dmorgan> 1:1.6.0.0-14.b22.3.mga1 + Revision: 88409 - Increase epoch to be in sync with fedora * Sat Apr 09 2011 ahmad <ahmad> 0:1.6.0.0-14.b22.3.mga1 + Revision: 82491 - don't provide/obsolete java-1.6.0-openjdk-plugin here, will be done in icedtea-web package * Fri Apr 08 2011 dmorgan <dmorgan> 0:1.6.0.0-14.b22.2.mga1 + Revision: 82080 - Fix typo - Obsoletes java-1.6.0-openjdk-plugin * Thu Apr 07 2011 dmorgan <dmorgan> 0:1.6.0.0-14.b22.1.mga1 + Revision: 81916 - Remove patch112 - Add libxrender-devel as a builrequire - Remove patch - Remove patch 103 - Update to B22 ( sync with fedora ) - Try to build without bootstrap - Update to version 1.9.7 * Sat Mar 26 2011 dmorgan <dmorgan> 0:1.6.0.0-13.1.9.6.1.mga1 + Revision: 77584 - Add buildrequires - Change numbering - Revert to latest building version - Enable systemtap support - Enable bootstrap - New version 1.9.7 * Fri Feb 04 2011 dmorgan <dmorgan> 0:1.6.0.0-12.b20.2.mga1 + Revision: 46849 - updated to icedtea 1.9.5 - Resolves: rhbz#672262 +- Security updates - RH672262, CVE-2011-0025: IcedTea jarfile signature verification bypass - Backports - S6687968: PNGImageReader leaks native memory through an Inflater - S6541476, RH665355: PNG imageio plugin incorrectly handles iTXt chunk - S6782079: PNG: reading metadata may cause OOM on truncated images - Fixes - RH647157, RH582455: Update fontconfig files for rhel 6 - PR619: Improper finalization by the plugin can crash the browser * Mon Jan 31 2011 dmorgan <dmorgan> 0:1.6.0.0-12.b20.1.mga1 + Revision: 45138 - New version 1.9.4 - New version 1.9.4 * Wed Jan 19 2011 dmorgan <dmorgan> 0:1.6.0.0-11.b20.mga1 + Revision: 23660 - Add systemtap as buildrequire - Fix buildrequires - Fix buildrequires - Fix openjdkver - Fix error in spec - Update to IcedTea 1.9.3 ( Sync with fedora ) + ahmad <ahmad> - adapt java-1.6.0-openjdk-fontpath.patch - disable %%mandriva_branch for now; we'll see what to do when we need to backport - drop uneeded and old scriptlets - configure with --with-pkgversion=mageia* - imported package java-1.6.0-openjdk