Blame SPECS/java-1.7.0-openjdk.spec

d557d5
# If debug is 1, OpenJDK is built with all debug info present.
d557d5
%global debug 0
d557d5
d557d5
# we remove the build id notes explicitly to avoid generating (potentially
d557d5
# conflicting) files in the -debuginfo package
d557d5
%undefine _missing_build_ids_terminate_build
d557d5
2e7f34
%global icedtea_version 2.5.5
d557d5
%global hg_tag icedtea-{icedtea_version}
d557d5
2e7f34
%global aarch64_rev 1939c010fd37
2e7f34
%global aarch64_tag icedtea-2.6pre21
0a1101
d557d5
%global aarch64			aarch64 arm64 armv8
0a1101
#sometimes we need to distinguish big and little endian PPC64
0a1101
%global ppc64le			ppc64le
0a1101
%global ppc64be			ppc64 ppc64p7
0a1101
%global multilib_arches %{power64} sparc64 x86_64 
0a1101
%global jit_arches		%{ix86} x86_64 sparcv9 sparc64 %{ppc64be} %{ppc64le} %{aarch64}
d557d5
3c3d8d
# With disabled nss is NSS deactivated, so in NSS_LIBDIR can be wrong path
d557d5
# the initialisation must be here. LAter the pkg-connfig have bugy behaviour
d557d5
#looks liekopenjdk RPM specific bug
7d28d3
# Always set this so the nss.cfg file is not broken
d557d5
%global NSS_LIBDIR %(pkg-config --variable=libdir nss)
d557d5
d557d5
%ifarch x86_64
d557d5
%global archbuild amd64
d557d5
%global archinstall amd64
d557d5
%endif
d557d5
%ifarch ppc
d557d5
%global archbuild ppc
d557d5
%global archinstall ppc
d557d5
%global archdef PPC
d557d5
%endif
0a1101
%ifarch %{ppc64be}
d557d5
%global archbuild ppc64
d557d5
%global archinstall ppc64
d557d5
%global archdef PPC
d557d5
%endif
0a1101
%ifarch %{ppc64le}
0a1101
%global archbuild ppc64le
0a1101
%global archinstall ppc64le
0a1101
%global archdef PPC64
0a1101
%endif
d557d5
%ifarch %{ix86}
d557d5
%global archbuild i586
d557d5
%global archinstall i386
d557d5
%endif
d557d5
%ifarch ia64
d557d5
%global archbuild ia64
d557d5
%global archinstall ia64
d557d5
%endif
d557d5
%ifarch s390
d557d5
%global archbuild s390
d557d5
%global archinstall s390
d557d5
%global archdef S390
d557d5
%endif
d557d5
%ifarch s390x
d557d5
%global archbuild s390x
d557d5
%global archinstall s390x
d557d5
%global archdef S390
d557d5
%endif
d557d5
%ifarch %{arm}
d557d5
%global archbuild arm
d557d5
%global archinstall arm
d557d5
%global archdef ARM
d557d5
%endif
d557d5
%ifarch %{aarch64}
d557d5
%global archbuild aarch64
d557d5
%global archinstall aarch64
d557d5
%global archdef AARCH64
d557d5
%endif
d557d5
# 32 bit sparc, optimized for v9
d557d5
%ifarch sparcv9
d557d5
%global archbuild sparc
d557d5
%global archinstall sparc
d557d5
%endif
d557d5
# 64 bit sparc
d557d5
%ifarch sparc64
d557d5
%global archbuild sparcv9
d557d5
%global archinstall sparcv9
d557d5
%endif
d557d5
%ifnarch %{jit_arches}
d557d5
%global archbuild %{_arch}
d557d5
%global archinstall %{_arch}
d557d5
%endif
d557d5
d557d5
%if %{debug}
d557d5
%global debugbuild debug_build
d557d5
%else
d557d5
%global debugbuild %{nil}
d557d5
%endif
d557d5
3c3d8d
# If hsbootstrap is 1, build HotSpot alone first and use that in the bootstrap JDK
3c3d8d
# You can turn this on to avoid issues where HotSpot is broken in the bootstrap JDK
3c3d8d
%global hsbootstrap 0
3c3d8d
0a1101
%if %{debug}
0a1101
%global buildoutputdir openjdk/build/linux-%{archbuild}-debug
0a1101
%else
d557d5
%global buildoutputdir openjdk/build/linux-%{archbuild}
0a1101
%endif
d557d5
%global with_pulseaudio 1
d557d5
d557d5
%ifarch %{jit_arches}
d557d5
%global with_systemtap 1
d557d5
%else
d557d5
%global with_systemtap 0
d557d5
%endif
d557d5
d557d5
# Convert an absolute path to a relative path.  Each symbolic link is
d557d5
# specified relative to the directory in which it is installed so that
d557d5
# it will resolve properly within chrooted installations.
d557d5
%global script 'use File::Spec; print File::Spec->abs2rel($ARGV[0], $ARGV[1])'
d557d5
%global abs2rel %{__perl} -e %{script}
d557d5
d557d5
# Hard-code libdir on 64-bit architectures to make the 64-bit JDK
d557d5
# simply be another alternative.
d557d5
%global LIBDIR       %{_libdir}
d557d5
#backuped original one
d557d5
%ifarch %{multilib_arches}
d557d5
%global syslibdir       %{_prefix}/lib64
d557d5
%global _libdir         %{_prefix}/lib
d557d5
%else
d557d5
%global syslibdir       %{_libdir}
d557d5
%endif
d557d5
d557d5
# Standard JPackage naming and versioning defines.
d557d5
%global origin          openjdk
2e7f34
%global updatever       79
2e7f34
%global buildver        14
2e7f34
# Keep priority on 7digits in case updatever>9
2e7f34
%global priority        17000%{updatever}
d557d5
%global javaver         1.7.0
d557d5
d557d5
%global sdkdir          %{uniquesuffix}
d557d5
%global jrelnk          jre-%{javaver}-%{origin}-%{version}-%{release}.%{_arch}
d557d5
d557d5
%global jredir          %{sdkdir}/jre
d557d5
%global sdkbindir       %{_jvmdir}/%{sdkdir}/bin
d557d5
%global jrebindir       %{_jvmdir}/%{jredir}/bin
d557d5
%global jvmjardir       %{_jvmjardir}/%{uniquesuffix}
d557d5
d557d5
%global fullversion     %{name}-%{version}-%{release}
d557d5
d557d5
%global uniquesuffix          %{fullversion}.%{_arch}
d557d5
#we can copy the javadoc to not arched dir, or made it not noarch
d557d5
%global uniquejavadocdir       %{fullversion}
d557d5
d557d5
%ifarch %{jit_arches}
d557d5
# Where to install systemtap tapset (links)
d557d5
# We would like these to be in a package specific subdir,
d557d5
# but currently systemtap doesn't support that, so we have to
d557d5
# use the root tapset dir for now. To distinquish between 64
d557d5
# and 32 bit architectures we place the tapsets under the arch
d557d5
# specific dir (note that systemtap will only pickup the tapset
d557d5
# for the primary arch for now). Systemtap uses the machine name
d557d5
# aka build_cpu as architecture specific directory name.
d557d5
%global tapsetroot /usr/share/systemtap
d557d5
  %ifarch %{ix86}
d557d5
    %global tapsetdir %{tapsetroot}/tapset/i386
d557d5
  %else
d557d5
    %global tapsetdir %{tapsetroot}/tapset/%{_build_cpu}
d557d5
  %endif
d557d5
%endif
d557d5
d557d5
# Prevent brp-java-repack-jars from being run.
d557d5
%global __jar_repack 0
d557d5
d557d5
Name:    java-%{javaver}-%{origin}
d557d5
Version: %{javaver}.%{updatever}
2e7f34
Release: %{icedtea_version}.1%{?dist}
d557d5
# java-1.5.0-ibm from jpackage.org set Epoch to 1 for unknown reasons,
d557d5
# and this change was brought into RHEL-4.  java-1.5.0-ibm packages
d557d5
# also included the epoch in their virtual provides.  This created a
d557d5
# situation where in-the-wild java-1.5.0-ibm packages provided "java =
d557d5
# 1:1.5.0".  In RPM terms, "1.6.0 < 1:1.5.0" since 1.6.0 is
d557d5
# interpreted as 0:1.6.0.  So the "java >= 1.6.0" requirement would be
d557d5
# satisfied by the 1:1.5.0 packages.  Thus we need to set the epoch in
d557d5
# JDK package >= 1.6.0 to 1, and packages referring to JDK virtual
d557d5
# provides >= 1.6.0 must specify the epoch, "java >= 1:1.6.0".
d557d5
Epoch:   1
d557d5
Summary: OpenJDK Runtime Environment
d557d5
Group:   Development/Languages
d557d5
d557d5
License:  ASL 1.1 and ASL 2.0 and GPL+ and GPLv2 and GPLv2 with exceptions and LGPL+ and LGPLv2 and MPLv1.0 and MPLv1.1 and Public Domain and W3C
d557d5
URL:      http://openjdk.java.net/
d557d5
d557d5
#head
d557d5
#REPO=http://icedtea.classpath.org/hg/icedtea7-forest
d557d5
#current release
79d80c
#REPO=http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5
d557d5
# hg clone $REPO/ openjdk -r %{hg_tag}
d557d5
# hg clone $REPO/corba/ openjdk/corba -r %{hg_tag}
d557d5
# hg clone $REPO/hotspot/ openjdk/hotspot -r %{hg_tag}
d557d5
# hg clone $REPO/jaxp/ openjdk/jaxp -r %{hg_tag}
d557d5
# hg clone $REPO/jaxws/ openjdk/jaxws -r %{hg_tag}
d557d5
# hg clone $REPO/jdk/ openjdk/jdk -r %{hg_tag}
d557d5
# hg clone $REPO/langtools/ openjdk/langtools -r %{hg_tag}
d557d5
# find openjdk -name ".hg" -exec rm -rf '{}' \;
2e7f34
# sh /git/java-1.7.0-openjdk/rhel-7.1/fsg.sh
d557d5
# tar cJf openjdk-icedtea-%{icedtea_version}.tar.xz openjdk
d557d5
Source0:  openjdk-icedtea-%{icedtea_version}.tar.xz
2e7f34
# wget -v -O %{aarch64_tag}.tar.bz2 http://icedtea.classpath.org/hg/icedtea7-forest/hotspot/archive/%{aarch64_rev}.tar.bz2
79d80c
Source1:  http://icedtea.classpath.org/hg/icedtea7-forest/hotspot/archive/%{aarch64_rev}.tar.bz2#/aarch64-%{aarch64_tag}.tar.bz2
d557d5
d557d5
# README file
d557d5
# This source is under maintainer's/java-team's control
d557d5
Source2:  README.src
d557d5
d557d5
# Sources 6-12 are taken from hg clone http://icedtea.classpath.org/hg/icedtea7
d557d5
# Unless said differently, there is directory with required sources which should be enough to pack/rename
d557d5
d557d5
# Class rewrite to rewrite rhino hierarchy
d557d5
Source5: class-rewriter.tar.gz
d557d5
d557d5
# Systemtap tapsets. Zipped up to keep it small.
d557d5
# last update from http://icedtea.classpath.org/hg/icedtea7/file/8599fdfc398d/tapset
0a1101
Source6: systemtap-tapset-2014-03-19.tar.xz
d557d5
d557d5
# .desktop files. 
d557d5
Source7:  policytool.desktop
d557d5
Source77: jconsole.desktop
d557d5
d557d5
# nss configuration file
d557d5
Source8: nss.cfg
d557d5
d557d5
# FIXME: Taken from IcedTea snapshot 877ad5f00f69, but needs to be moved out
d557d5
# hg clone -r 877ad5f00f69 http://icedtea.classpath.org/hg/icedtea7
d557d5
Source9: pulseaudio.tar.gz
d557d5
d557d5
# Removed libraries that we link instead
d557d5
Source10: remove-intree-libraries.sh
d557d5
d557d5
#http://icedtea.classpath.org/hg/icedtea7/file/933d082ec889/fsg.sh
d557d5
# file to clean tarball, should be ketp updated as possible
d557d5
Source1111: fsg.sh
d557d5
d557d5
# Remove build ids from binaries
d557d5
Source11: remove-buildids.sh
d557d5
d557d5
# Ensure we aren't using the limited crypto policy
d557d5
Source12: TestCryptoLevel.java
d557d5
d557d5
Source13: java-abrt-luncher
d557d5
d557d5
# RPM/distribution specific patches
d557d5
d557d5
# Allow TCK to pass with access bridge wired in
d557d5
Patch1:   java-1.7.0-openjdk-java-access-bridge-tck.patch
d557d5
d557d5
# Disable access to access-bridge packages by untrusted apps
d557d5
Patch3:   java-1.7.0-openjdk-java-access-bridge-security.patch
d557d5
d557d5
# Ignore AWTError when assistive technologies are loaded 
d557d5
Patch4:   java-1.7.0-openjdk-accessible-toolkit.patch
d557d5
d557d5
# Build docs even in debug
d557d5
Patch5:   java-1.7.0-openjdk-debugdocs.patch
d557d5
d557d5
# Add debuginfo where missing
d557d5
Patch6:   %{name}-debuginfo.patch
d557d5
d557d5
#
d557d5
# OpenJDK specific patches
d557d5
#
d557d5
d557d5
# Add rhino support
d557d5
Patch100: rhino.patch
d557d5
745a16
Patch106: %{name}-freetype-check-fix.patch
d557d5
d557d5
# allow to create hs_pid.log in tmp (in 700 permissions) if working directory is unwritable
d557d5
Patch200: abrt_friendly_hs_log_jdk7.patch
d557d5
d557d5
#
d557d5
# Optional component packages
d557d5
#
d557d5
d557d5
# Make the ALSA based mixer the default when building with the pulseaudio based
d557d5
# mixer
d557d5
Patch300: pulse-soundproperties.patch
d557d5
0a1101
# Make the curves reported by Java's SSL implementation match those of NSS
0a1101
Patch400: rh1022017.patch
0a1101
d557d5
# Temporary patches
0a1101
d557d5
#Workaround RH902004
d557d5
Patch403: PStack-808293.patch
3c3d8d
3c3d8d
# Use ppc64le as arch name on ppc64le, not ppc64
2e7f34
# Remove when we move to IcedTea 2.6.x
3c3d8d
Patch404: rh1191652-hotspot.patch
3c3d8d
Patch405: rh1191652-jdk.patch
3c3d8d
d557d5
# End of tmp patches
d557d5
d557d5
BuildRequires: autoconf
d557d5
BuildRequires: automake
d557d5
BuildRequires: gcc-c++
d557d5
BuildRequires: alsa-lib-devel
d557d5
BuildRequires: cups-devel
d557d5
BuildRequires: desktop-file-utils
d557d5
BuildRequires: giflib-devel
d557d5
BuildRequires: lcms2-devel >= 2.5
d557d5
BuildRequires: libX11-devel
d557d5
BuildRequires: libXi-devel
d557d5
BuildRequires: libXp-devel
d557d5
BuildRequires: libXt-devel
d557d5
BuildRequires: libXtst-devel
d557d5
BuildRequires: libjpeg-devel
d557d5
BuildRequires: libpng-devel
d557d5
BuildRequires: wget
d557d5
BuildRequires: libxslt
d557d5
BuildRequires: xorg-x11-proto-devel
d557d5
BuildRequires: ant
d557d5
BuildRequires: libXinerama-devel
d557d5
BuildRequires: rhino
d557d5
BuildRequires: redhat-lsb
d557d5
BuildRequires: zip
d557d5
BuildRequires: fontconfig
d557d5
BuildRequires: xorg-x11-fonts-Type1
d557d5
BuildRequires: zlib > 1.2.3-6
d557d5
BuildRequires: java-1.7.0-openjdk-devel
d557d5
BuildRequires: fontconfig
d557d5
BuildRequires: at-spi-devel
d557d5
BuildRequires: gawk
d557d5
BuildRequires: pkgconfig >= 0.9.0
d557d5
BuildRequires: xorg-x11-utils
0a1101
# Requirements for setting up the nss.cfg
0a1101
BuildRequires: nss-devel
0a1101
# Required for NIO2
0a1101
BuildRequires: libattr-devel
0a1101
# Build requirements for SunEC system NSS support
0a1101
#BuildRequires: nss-softokn-freebl-devel >= 3.16.1
0a1101
BuildRequires: python
d557d5
# PulseAudio build requirements.
d557d5
%if %{with_pulseaudio}
d557d5
BuildRequires: pulseaudio-libs-devel >= 0.9.11
d557d5
%endif
d557d5
# Zero-assembler build requirement.
d557d5
%ifnarch %{jit_arches}
d557d5
BuildRequires: libffi-devel >= 3.0.10
d557d5
%endif
d557d5
d557d5
# cacerts build requirement.
d557d5
BuildRequires: openssl
d557d5
# execstack build requirement.
d557d5
# no prelink on ARM yet
0a1101
%ifnarch %{arm} %{aarch64} %{ppc64le}
d557d5
BuildRequires: prelink
d557d5
%endif
d557d5
%ifarch %{jit_arches}
d557d5
#systemtap build requirement.
d557d5
BuildRequires: systemtap-sdt-devel
d557d5
%endif
d557d5
d557d5
Requires: fontconfig
d557d5
Requires: xorg-x11-fonts-Type1
d557d5
#requires rest of java
d557d5
Requires: %{name}-headless = %{epoch}:%{version}-%{release}
745a16
OrderWithRequires: %{name}-headless = %{epoch}:%{version}-%{release}
d557d5
d557d5
d557d5
# Standard JPackage base provides.
d557d5
Provides: jre-%{javaver}-%{origin} = %{epoch}:%{version}-%{release}
d557d5
Provides: jre-%{origin} = %{epoch}:%{version}-%{release}
d557d5
Provides: jre-%{javaver} = %{epoch}:%{version}-%{release}
d557d5
Provides: java-%{javaver} = %{epoch}:%{version}-%{release}
d557d5
Provides: jre = %{javaver}
d557d5
Provides: java-%{origin} = %{epoch}:%{version}-%{release}
d557d5
Provides: java = %{epoch}:%{javaver}
d557d5
# Standard JPackage extensions provides.
d557d5
Provides: java-fonts = %{epoch}:%{version}
d557d5
d557d5
# Obsolete older 1.6 packages as it cannot use the new bytecode
d557d5
# Obsoletes: java-1.6.0-openjdk
d557d5
# Obsoletes: java-1.6.0-openjdk-demo
d557d5
# Obsoletes: java-1.6.0-openjdk-devel
d557d5
# Obsoletes: java-1.6.0-openjdk-javadoc
d557d5
# Obsoletes: java-1.6.0-openjdk-src
d557d5
d557d5
%description
d557d5
The OpenJDK runtime environment.
d557d5
d557d5
%package headless
d557d5
Summary: The OpenJDK runtime environment without audio and video support
d557d5
Group:   Development/Languages
d557d5
d557d5
Requires: lcms2 >= 2.5
d557d5
Requires: libjpeg = 6b
d557d5
# Require /etc/pki/java/cacerts.
d557d5
Requires: ca-certificates
d557d5
# Require jpackage-utils for ant.
d557d5
Requires: jpackage-utils >= 1.7.3-1jpp.2
d557d5
# Require zoneinfo data provided by tzdata-java subpackage.
d557d5
Requires: tzdata-java
d557d5
# Post requires alternatives to install tool alternatives.
d557d5
Requires(post):   %{_sbindir}/alternatives
d557d5
# Postun requires alternatives to uninstall tool alternatives.
d557d5
Requires(postun): %{_sbindir}/alternatives
d557d5
d557d5
Provides: jre-%{javaver}-%{origin}-headless = %{epoch}:%{version}-%{release}
d557d5
Provides: jre-%{origin}-headless = %{epoch}:%{version}-%{release}
d557d5
Provides: jre-%{javaver}-headless = %{epoch}:%{version}-%{release}
d557d5
Provides: java-%{javaver}-headless = %{epoch}:%{version}-%{release}
745a16
Provides: jre-headless = %{epoch}:%{javaver}
d557d5
Provides: java-%{origin}-headless = %{epoch}:%{version}-%{release}
d557d5
Provides: java-headless = %{epoch}:%{javaver}
d557d5
# Standard JPackage extensions provides.
d557d5
Provides: jndi = %{epoch}:%{version}
d557d5
Provides: jndi-ldap = %{epoch}:%{version}
d557d5
Provides: jndi-cos = %{epoch}:%{version}
d557d5
Provides: jndi-rmi = %{epoch}:%{version}
d557d5
Provides: jndi-dns = %{epoch}:%{version}
d557d5
Provides: jaas = %{epoch}:%{version}
d557d5
Provides: jsse = %{epoch}:%{version}
d557d5
Provides: jce = %{epoch}:%{version}
d557d5
Provides: jdbc-stdext = 4.1
d557d5
Provides: java-sasl = %{epoch}:%{version}
d557d5
d557d5
%description headless
d557d5
The OpenJDK runtime environment without audio and video 
d557d5
d557d5
%package devel
d557d5
Summary: OpenJDK Development Environment
d557d5
Group:   Development/Tools
d557d5
d557d5
# Require base package.
d557d5
Requires:         %{name} = %{epoch}:%{version}-%{release}
745a16
OrderWithRequires: %{name}-headless = %{epoch}:%{version}-%{release}
d557d5
# Post requires alternatives to install tool alternatives.
d557d5
Requires(post):   %{_sbindir}/alternatives
d557d5
# Postun requires alternatives to uninstall tool alternatives.
d557d5
Requires(postun): %{_sbindir}/alternatives
d557d5
d557d5
# Standard JPackage devel provides.
d557d5
Provides: java-sdk-%{javaver}-%{origin} = %{epoch}:%{version}
d557d5
Provides: java-sdk-%{javaver} = %{epoch}:%{version}
d557d5
Provides: java-sdk-%{origin} = %{epoch}:%{version}
d557d5
Provides: java-sdk = %{epoch}:%{javaver}
d557d5
Provides: java-%{javaver}-devel = %{epoch}:%{version}
d557d5
Provides: java-devel-%{origin} = %{epoch}:%{version}
d557d5
Provides: java-devel = %{epoch}:%{javaver}
d557d5
d557d5
d557d5
%description devel
d557d5
The OpenJDK development tools.
d557d5
d557d5
%package demo
d557d5
Summary: OpenJDK Demos
d557d5
Group:   Development/Languages
d557d5
d557d5
Requires: %{name} = %{epoch}:%{version}-%{release}
745a16
OrderWithRequires: %{name}-headless = %{epoch}:%{version}-%{release}
d557d5
d557d5
%description demo
d557d5
The OpenJDK demos.
d557d5
d557d5
%package src
d557d5
Summary: OpenJDK Source Bundle
d557d5
Group:   Development/Languages
d557d5
d557d5
Requires: %{name} = %{epoch}:%{version}-%{release}
d557d5
d557d5
%description src
d557d5
The OpenJDK source bundle.
d557d5
d557d5
%package javadoc
d557d5
Summary: OpenJDK API Documentation
d557d5
Group:   Documentation
d557d5
Requires: jpackage-utils
d557d5
BuildArch: noarch
d557d5
745a16
OrderWithRequires: %{name}-headless = %{epoch}:%{version}-%{release}
d557d5
# Post requires alternatives to install javadoc alternative.
d557d5
Requires(post):   %{_sbindir}/alternatives
d557d5
# Postun requires alternatives to uninstall javadoc alternative.
d557d5
Requires(postun): %{_sbindir}/alternatives
d557d5
d557d5
# Standard JPackage javadoc provides.
d557d5
Provides: java-javadoc = %{epoch}:%{version}-%{release}
d557d5
Provides: java-%{javaver}-javadoc = %{epoch}:%{version}-%{release}
d557d5
d557d5
%description javadoc
d557d5
The OpenJDK API documentation.
d557d5
d557d5
%package accessibility
d557d5
Summary: OpenJDK accessibility connector
d557d5
Requires: java-atk-wrapper
d557d5
Requires: %{name} = %{epoch}:%{version}-%{release}
745a16
OrderWithRequires: %{name}-headless = %{epoch}:%{version}-%{release}
d557d5
d557d5
%description accessibility
d557d5
Enables accessibility support in OpenJDK by using java-at-wrapper. This allows compatible at-spi2 based accessibility programs to work for AWT and Swing-based programs.
d557d5
Please note, the java-atk-wrapper is still in beta, and also OpenJDK itself is still in phase of tuning to be working with accessibility features.
d557d5
Although working pretty fine, there are known issues with accessibility on, so do not rather install this package unless you really need.
d557d5
d557d5
%prep
d557d5
%setup -q -c -n %{uniquesuffix} -T -a 0
2e7f34
# https://bugzilla.redhat.com/show_bug.cgi?id=1189084
2e7f34
prioritylength=`expr length %{priority}`
2e7f34
if [ $prioritylength -ne 7 ] ; then
2e7f34
 echo "priority must be 7 digits in total, violated"
2e7f34
 exit 14
2e7f34
fi
d557d5
cp %{SOURCE2} .
d557d5
0a1101
%ifarch %{aarch64}
0a1101
pushd openjdk
0a1101
rm -r hotspot
0a1101
tar xf %{SOURCE1}
0a1101
mv hotspot-%{aarch64_rev} hotspot
0a1101
popd
0a1101
%endif
0a1101
d557d5
# OpenJDK patches
d557d5
%patch100
d557d5
d557d5
# pulseaudio support
d557d5
%if %{with_pulseaudio}
d557d5
%patch300
d557d5
%endif
d557d5
0a1101
# ECC fix
0a1101
%patch400
0a1101
d557d5
# Add systemtap patches if enabled
d557d5
%if %{with_systemtap}
d557d5
%endif
d557d5
d557d5
# Remove libraries that are linked
d557d5
sh %{SOURCE10}
d557d5
d557d5
# Extract the rewriter (to rewrite rhino classes)
d557d5
tar xzf %{SOURCE5}
d557d5
d557d5
# Extract systemtap tapsets
d557d5
%if %{with_systemtap}
d557d5
0a1101
tar xf %{SOURCE6}
d557d5
d557d5
for file in tapset/*.in; do
d557d5
d557d5
    OUTPUT_FILE=`echo $file | sed -e s:%{javaver}\.stp\.in$:%{version}-%{release}.stp:g`
d557d5
    sed -e s:@ABS_SERVER_LIBJVM_SO@:%{_jvmdir}/%{sdkdir}/jre/lib/%{archinstall}/server/libjvm.so:g $file > $file.1
d557d5
# FIXME this should really be %if %{has_client_jvm}
d557d5
%ifarch %{ix86}
d557d5
    sed -e s:@ABS_CLIENT_LIBJVM_SO@:%{_jvmdir}/%{sdkdir}/jre/lib/%{archinstall}/client/libjvm.so:g $file.1 > $OUTPUT_FILE
d557d5
%else
d557d5
    sed -e '/@ABS_CLIENT_LIBJVM_SO@/d' $file.1 > $OUTPUT_FILE
d557d5
%endif
d557d5
    sed -i -e s:@ABS_JAVA_HOME_DIR@:%{_jvmdir}/%{sdkdir}:g $OUTPUT_FILE
d557d5
    sed -i -e s:@INSTALL_ARCH_DIR@:%{archinstall}:g $OUTPUT_FILE
d557d5
d557d5
done
d557d5
d557d5
%endif
d557d5
d557d5
# Pulseaudio
d557d5
%if %{with_pulseaudio}
d557d5
tar xzf %{SOURCE9}
d557d5
%endif
d557d5
d557d5
d557d5
%patch3
d557d5
%patch4
d557d5
d557d5
%if %{debug}
d557d5
%patch5
d557d5
%patch6
d557d5
%endif
d557d5
d557d5
%patch106
745a16
%patch200
d557d5
d557d5
%patch403
2e7f34
# HotSpot ppc64le patch is applied upstream
2e7f34
# on AArch64/2.6.x HotSpot.
2e7f34
%ifnarch %{aarch64}
3c3d8d
%patch404
3c3d8d
%endif
3c3d8d
%patch405
745a16
d557d5
%build
d557d5
# How many cpu's do we have?
d557d5
export NUM_PROC=`/usr/bin/getconf _NPROCESSORS_ONLN 2> /dev/null || :`
d557d5
export NUM_PROC=${NUM_PROC:-1}
d557d5
d557d5
# Build IcedTea and OpenJDK.
d557d5
%ifarch s390x sparc64 alpha %{power64} %{aarch64}
d557d5
export ARCH_DATA_MODEL=64
d557d5
%endif
d557d5
%ifarch alpha
d557d5
export CFLAGS="$CFLAGS -mieee"
d557d5
%endif
d557d5
3c3d8d
CFLAGS="$CFLAGS -fstack-protector-strong"
3c3d8d
export CFLAGS
745a16
d557d5
# Build the re-written rhino jar
d557d5
mkdir -p rhino/{old,new}
d557d5
d557d5
# Compile the rewriter
d557d5
(cd rewriter 
d557d5
 javac com/redhat/rewriter/ClassRewriter.java
d557d5
)
d557d5
d557d5
# Extract rhino.jar contents and rewrite
d557d5
(cd rhino/old 
d557d5
 jar xf /usr/share/java/rhino.jar
d557d5
)
d557d5
d557d5
java -cp rewriter com.redhat.rewriter.ClassRewriter \
d557d5
    $PWD/rhino/old \
d557d5
    $PWD/rhino/new \
d557d5
    org.mozilla \
d557d5
    sun.org.mozilla
d557d5
d557d5
(cd rhino/old
d557d5
 for file in `find -type f -not -name '*.class'` ; do
d557d5
     new_file=../new/`echo $file | sed -e 's#org#sun/org#'`
d557d5
     mkdir -pv `dirname $new_file`
d557d5
     cp -v $file $new_file
d557d5
     sed -ie 's#org\.mozilla#sun.org.mozilla#g' $new_file
d557d5
 done
d557d5
)
d557d5
d557d5
(cd rhino/new
d557d5
   jar cfm ../rhino.jar META-INF/MANIFEST.MF sun
d557d5
)
d557d5
3c3d8d
export SYSTEM_JDK_DIR=/usr/lib/jvm/java-1.7.0-openjdk
d557d5
3c3d8d
# Temporary workaround for ppc64le ; RH1191652
3c3d8d
# Need to work around the jre arch directory being
3c3d8d
# ppc64 instead of the expected ppc64le
3c3d8d
# Taken from IcedTea7 bootstrap-directory-stage1 & PR1765
3c3d8d
%ifarch %{ppc64le}
3c3d8d
STAGE1_BOOT_RUNTIME=jdk/jre/lib/rt.jar
3c3d8d
mkdir -p jdk/bin
3c3d8d
ln -sfv ${SYSTEM_JDK_DIR}/bin/java jdk/bin/java
3c3d8d
ln -sfv ${SYSTEM_JDK_DIR}/bin/javah jdk/bin/javah
3c3d8d
ln -sfv ${SYSTEM_JDK_DIR}/bin/rmic jdk/bin/rmic
3c3d8d
ln -sfv ${SYSTEM_JDK_DIR}/bin/jar jdk/bin/jar
3c3d8d
ln -sfv ${SYSTEM_JDK_DIR}/bin/native2ascii jdk/bin/native2ascii
3c3d8d
ln -sfv ${SYSTEM_JDK_DIR}/bin/javac jdk/bin/javac
3c3d8d
ln -sfv ${SYSTEM_JDK_DIR}/bin/javap jdk/bin/javap
3c3d8d
ln -sfv ${SYSTEM_JDK_DIR}/bin/idlj jdk/bin/idlj
3c3d8d
mkdir -p jdk/lib/modules
3c3d8d
mkdir -p jdk/jre/lib && \
3c3d8d
cp ${SYSTEM_JDK_DIR}/jre/lib/rt.jar ${STAGE1_BOOT_RUNTIME} && \
3c3d8d
chmod u+w ${STAGE1_BOOT_RUNTIME}
3c3d8d
mkdir -p jdk/lib && \
3c3d8d
ln -sfv ${SYSTEM_JDK_DIR}/lib/tools.jar jdk/lib/tools.jar ; \
3c3d8d
# Workaround some older ppc64le builds installing to 'ppc64' rather than 'ppc64le'
3c3d8d
if test -d ${SYSTEM_JDK_DIR}/jre/lib/ppc64 ; then \
3c3d8d
  ln -sfv ${SYSTEM_JDK_DIR}/jre/lib/ppc64 \
3c3d8d
    jdk/jre/lib/%{archinstall} ; \
3c3d8d
else \
3c3d8d
  ln -sfv ${SYSTEM_JDK_DIR}/jre/lib/%{archinstall} \
3c3d8d
    jdk/jre/lib/ ; \
3c3d8d
fi
3c3d8d
if ! test -d jdk/jre/lib/%{archinstall}; \
3c3d8d
  then \
3c3d8d
  ln -sfv ./%{archbuild} \
3c3d8d
    jdk/jre/lib/%{archinstall}; \
3c3d8d
fi
3c3d8d
mkdir -p jdk/include && \
3c3d8d
for i in ${SYSTEM_JDK_DIR}/include/*; do \
3c3d8d
  test -r ${i} | continue; \
3c3d8d
  i=`basename ${i}`; \
3c3d8d
  rm -f jdk/include/${i}; \
3c3d8d
  ln -sv ${SYSTEM_JDK_DIR}/include/${i} jdk/include/${i}; \
3c3d8d
done;
3c3d8d
export JDK_TO_BUILD_WITH=${PWD}/jdk
3c3d8d
%else
3c3d8d
export JDK_TO_BUILD_WITH=${SYSTEM_JDK_DIR}
3c3d8d
%endif
d557d5
d557d5
d557d5
pushd openjdk >& /dev/null
d557d5
d557d5
export ALT_BOOTDIR="$JDK_TO_BUILD_WITH"
d557d5
d557d5
# Save old umask as jdk_generic_profile overwrites it
d557d5
oldumask=`umask`
d557d5
d557d5
# Set generic profile
d557d5
%ifnarch %{jit_arches}
d557d5
export ZERO_BUILD=true
d557d5
%endif
d557d5
source jdk/make/jdk_generic_profile.sh
d557d5
d557d5
# Restore old umask
d557d5
umask $oldumask
d557d5
aa8380
%if %{hsbootstrap}
aa8380
aa8380
mkdir bootstrap
aa8380
aa8380
make \
aa8380
  DISABLE_INTREE_EC=true \
aa8380
  UNLIMITED_CRYPTO=true \
aa8380
  ANT="/usr/bin/ant" \
aa8380
  DISTRO_NAME="Red Hat Enterprise Linux 7" \
aa8380
  DISTRO_PACKAGE_VERSION="rhel-%{release}-%{_arch} u%{updatever}-b%{buildver}" \
aa8380
  JDK_UPDATE_VERSION=`printf "%02d" %{updatever}` \
aa8380
  JDK_BUILD_NUMBER=b`printf "%02d" %{buildver}` \
aa8380
  JRE_RELEASE_VERSION=%{javaver}_`printf "%02d" %{updatever}`-b`printf "%02d" %{buildver}` \
aa8380
  MILESTONE="fcs" \
aa8380
  ALT_PARALLEL_COMPILE_JOBS="$NUM_PROC" \
aa8380
  HOTSPOT_BUILD_JOBS="$NUM_PROC" \
aa8380
  STATIC_CXX="false" \
aa8380
  RHINO_JAR="$PWD/../rhino/rhino.jar" \
aa8380
  GENSRCDIR="$PWD/generated.build" \
aa8380
  FT2_CFLAGS="`pkg-config --cflags freetype2` " \
aa8380
  FT2_LIBS="`pkg-config --libs freetype2` " \
aa8380
  DEBUG_CLASSFILES="true" \
aa8380
  DEBUG_BINARIES="true" \
aa8380
  STRIP_POLICY="no_strip" \
aa8380
  JAVAC_WARNINGS_FATAL="false" \
aa8380
  INSTALL_LOCATION=%{_jvmdir}/%{sdkdir} \
aa8380
  BUILD_JAXP=false BUILD_JAXWS=false BUILD_LANGTOOLS=false BUILD_JDK=false BUILD_CORBA=false \
aa8380
  ALT_JDK_IMPORT_PATH=${JDK_TO_BUILD_WITH} ALT_OUTPUTDIR=${PWD}/bootstrap \
aa8380
  %{debugbuild}
aa8380
3c3d8d
export VM_DIR=bootstrap-vm/jre/lib/%{archinstall}/server
3c3d8d
cp -dR ${SYSTEM_JDK_DIR}-* bootstrap-vm
3c3d8d
rm -vf ${VM_DIR}/libjvm.so
3c3d8d
if [ ! -e ${VM_DIR} ] ; then mkdir -p ${VM_DIR}; fi
3c3d8d
cp -av bootstrap/hotspot/import/jre/lib/%{archinstall}/server/libjvm.so ${VM_DIR}
aa8380
aa8380
export ALT_BOOTDIR=${PWD}/bootstrap-vm
aa8380
  
aa8380
%endif
aa8380
3c3d8d
# ENABLE_FULL_DEBUG_SYMBOLS=0 is the internal HotSpot option
3c3d8d
# to turn off the stripping of debuginfo. FULL_DEBUG_SYMBOLS
3c3d8d
# does the same for product builds, but is ignored on non-product builds.
d557d5
make \
d557d5
  DISABLE_INTREE_EC=true \
d557d5
  UNLIMITED_CRYPTO=true \
d557d5
  ANT="/usr/bin/ant" \
d557d5
  DISTRO_NAME="Red Hat Enterprise Linux 7" \
d557d5
  DISTRO_PACKAGE_VERSION="rhel-%{release}-%{_arch} u%{updatever}-b%{buildver}" \
d557d5
  JDK_UPDATE_VERSION=`printf "%02d" %{updatever}` \
d557d5
  JDK_BUILD_NUMBER=b`printf "%02d" %{buildver}` \
745a16
  JRE_RELEASE_VERSION=%{javaver}_`printf "%02d" %{updatever}`-b`printf "%02d" %{buildver}` \
d557d5
  MILESTONE="fcs" \
745a16
  ALT_PARALLEL_COMPILE_JOBS="$NUM_PROC" \
d557d5
  HOTSPOT_BUILD_JOBS="$NUM_PROC" \
d557d5
  STATIC_CXX="false" \
d557d5
  RHINO_JAR="$PWD/../rhino/rhino.jar" \
d557d5
  GENSRCDIR="$PWD/generated.build" \
745a16
  FT2_CFLAGS="`pkg-config --cflags freetype2` " \
745a16
  FT2_LIBS="`pkg-config --libs freetype2` " \
d557d5
  DEBUG_CLASSFILES="true" \
d557d5
  DEBUG_BINARIES="true" \
d557d5
  STRIP_POLICY="no_strip" \
0a1101
  JAVAC_WARNINGS_FATAL="false" \
0a1101
  INSTALL_LOCATION=%{_jvmdir}/%{sdkdir} \
d557d5
  %{debugbuild}
d557d5
d557d5
popd >& /dev/null
d557d5
0a1101
if [ -e $(pwd)/%{buildoutputdir}/j2sdk-image/lib/sa-jdi.jar ]; then 
0a1101
  chmod 644 $(pwd)/%{buildoutputdir}/j2sdk-image/lib/sa-jdi.jar;
0a1101
fi
d557d5
d557d5
export JAVA_HOME=$(pwd)/%{buildoutputdir}/j2sdk-image
d557d5
d557d5
# Install java-abrt-luncher
d557d5
mkdir  $JAVA_HOME/jre-abrt
d557d5
mkdir  $JAVA_HOME/jre-abrt/bin
3c3d8d
mv $JAVA_HOME/jre/bin/java $JAVA_HOME/jre-abrt/bin/java
d557d5
ln -s %{_jvmdir}/%{sdkdir}/jre/lib $JAVA_HOME/jre-abrt/lib
d557d5
cat %{SOURCE13} | sed -e s:@JAVA_PATH@:%{_jvmdir}/%{sdkdir}/jre-abrt/bin/java:g -e s:@LIB_DIR@:%{LIBDIR}/libabrt-java-connector.so:g >  $JAVA_HOME/jre/bin/java
d557d5
chmod 755 $JAVA_HOME/jre/bin/java
d557d5
d557d5
# Install nss.cfg right away as we will be using the JRE above
d557d5
cp -a %{SOURCE8} $JAVA_HOME/jre/lib/security/
d557d5
sed -i -e s:@NSS_LIBDIR@:%{NSS_LIBDIR}:g $JAVA_HOME/jre/lib/security/nss.cfg
d557d5
d557d5
# Build pulseaudio and install it to JDK build location
d557d5
%if %{with_pulseaudio}
d557d5
pushd pulseaudio
d557d5
make JAVA_HOME=$JAVA_HOME -f Makefile.pulseaudio
d557d5
cp -pPRf build/native/libpulse-java.so $JAVA_HOME/jre/lib/%{archinstall}/
d557d5
cp -pPRf build/pulse-java.jar $JAVA_HOME/jre/lib/ext/
d557d5
popd
d557d5
%endif
d557d5
d557d5
# Copy tz.properties
d557d5
echo "sun.zoneinfo.dir=/usr/share/javazi" >> $JAVA_HOME/jre/lib/tz.properties
d557d5
d557d5
#remove all fontconfig files. This change should be usptreamed soon
d557d5
rm -f %{buildoutputdir}/j2re-image/lib/fontconfig*.properties.src
d557d5
rm -f %{buildoutputdir}/j2re-image/lib/fontconfig*.bfc
d557d5
rm -f %{buildoutputdir}/j2sdk-image/jre/lib/fontconfig*.properties.src
d557d5
rm -f %{buildoutputdir}/j2sdk-image/jre/lib/fontconfig*.bfc
d557d5
rm -f %{buildoutputdir}/lib/fontconfig*.properties.src
d557d5
rm -f %{buildoutputdir}/lib/fontconfig*.bfc
d557d5
d557d5
# Check unlimited policy has been used
d557d5
$JAVA_HOME/bin/javac -d . %{SOURCE12}
d557d5
$JAVA_HOME/bin/java TestCryptoLevel
d557d5
d557d5
sh %{SOURCE11} ${JAVA_HOME}
d557d5
d557d5
%install
d557d5
rm -rf $RPM_BUILD_ROOT
d557d5
STRIP_KEEP_SYMTAB=libjvm*
d557d5
d557d5
# Install symlink to default soundfont
d557d5
install -d -m 755 $RPM_BUILD_ROOT%{_jvmdir}/%{jredir}/lib/audio
d557d5
pushd $RPM_BUILD_ROOT%{_jvmdir}/%{jredir}/lib/audio
d557d5
ln -s %{_datadir}/soundfonts/default.sf2
d557d5
popd
d557d5
d557d5
pushd %{buildoutputdir}/j2sdk-image
d557d5
d557d5
#install jsa directories so we can owe them
d557d5
mkdir -p $RPM_BUILD_ROOT%{_jvmdir}/%{jredir}/lib/%{archinstall}/server/
d557d5
mkdir -p $RPM_BUILD_ROOT%{_jvmdir}/%{jredir}/lib/%{archinstall}/client/
d557d5
d557d5
  # Install main files.
d557d5
  install -d -m 755 $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir}
d557d5
  cp -a jre-abrt bin include lib src.zip $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir}
d557d5
  install -d -m 755 $RPM_BUILD_ROOT%{_jvmdir}/%{jredir}
d557d5
  cp -a jre/bin jre/lib $RPM_BUILD_ROOT%{_jvmdir}/%{jredir}
d557d5
  cp -a ASSEMBLY_EXCEPTION LICENSE THIRD_PARTY_README $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir}
d557d5
d557d5
%ifarch %{jit_arches}
d557d5
  # Install systemtap support files.
d557d5
  install -dm 755 $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir}/tapset
d557d5
  cp -a $RPM_BUILD_DIR/%{uniquesuffix}/tapset/*.stp $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir}/tapset/
d557d5
  install -d -m 755 $RPM_BUILD_ROOT%{tapsetdir}
d557d5
  pushd $RPM_BUILD_ROOT%{tapsetdir}
d557d5
    RELATIVE=$(%{abs2rel} %{_jvmdir}/%{sdkdir}/tapset %{tapsetdir})
d557d5
    ln -sf $RELATIVE/*.stp .
d557d5
  popd
d557d5
%endif
d557d5
d557d5
  # Install cacerts symlink.
d557d5
  rm -f $RPM_BUILD_ROOT%{_jvmdir}/%{jredir}/lib/security/cacerts
d557d5
  pushd $RPM_BUILD_ROOT%{_jvmdir}/%{jredir}/lib/security
d557d5
    RELATIVE=$(%{abs2rel} %{_sysconfdir}/pki/java \
d557d5
      %{_jvmdir}/%{jredir}/lib/security)
d557d5
    ln -sf $RELATIVE/cacerts .
d557d5
  popd
d557d5
d557d5
  # Install extension symlinks.
d557d5
  install -d -m 755 $RPM_BUILD_ROOT%{jvmjardir}
d557d5
  pushd $RPM_BUILD_ROOT%{jvmjardir}
d557d5
    RELATIVE=$(%{abs2rel} %{_jvmdir}/%{jredir}/lib %{jvmjardir})
d557d5
    ln -sf $RELATIVE/jsse.jar jsse-%{version}.jar
d557d5
    ln -sf $RELATIVE/jce.jar jce-%{version}.jar
d557d5
    ln -sf $RELATIVE/rt.jar jndi-%{version}.jar
d557d5
    ln -sf $RELATIVE/rt.jar jndi-ldap-%{version}.jar
d557d5
    ln -sf $RELATIVE/rt.jar jndi-cos-%{version}.jar
d557d5
    ln -sf $RELATIVE/rt.jar jndi-rmi-%{version}.jar
d557d5
    ln -sf $RELATIVE/rt.jar jaas-%{version}.jar
d557d5
    ln -sf $RELATIVE/rt.jar jdbc-stdext-%{version}.jar
d557d5
    ln -sf jdbc-stdext-%{version}.jar jdbc-stdext-3.0.jar
d557d5
    ln -sf $RELATIVE/rt.jar sasl-%{version}.jar
d557d5
    for jar in *-%{version}.jar
d557d5
    do
d557d5
      if [ x%{version} != x%{javaver} ]
d557d5
      then
d557d5
        ln -sf $jar $(echo $jar | sed "s|-%{version}.jar|-%{javaver}.jar|g")
d557d5
      fi
d557d5
      ln -sf $jar $(echo $jar | sed "s|-%{version}.jar|.jar|g")
d557d5
    done
d557d5
  popd
d557d5
d557d5
  # Install JCE policy symlinks.
d557d5
  install -d -m 755 $RPM_BUILD_ROOT%{_jvmprivdir}/%{uniquesuffix}/jce/vanilla
d557d5
d557d5
  # Install versioned symlinks.
d557d5
  pushd $RPM_BUILD_ROOT%{_jvmdir}
d557d5
    ln -sf %{jredir} %{jrelnk}
d557d5
  popd
d557d5
d557d5
  pushd $RPM_BUILD_ROOT%{_jvmjardir}
d557d5
    ln -sf %{sdkdir} %{jrelnk}
d557d5
  popd
d557d5
d557d5
  # Remove javaws man page
d557d5
  rm -f man/man1/javaws*
d557d5
d557d5
  # Install man pages.
d557d5
  install -d -m 755 $RPM_BUILD_ROOT%{_mandir}/man1
d557d5
  for manpage in man/man1/*
d557d5
  do
d557d5
    # Convert man pages to UTF8 encoding.
d557d5
    iconv -f ISO_8859-1 -t UTF8 $manpage -o $manpage.tmp
d557d5
    mv -f $manpage.tmp $manpage
d557d5
    install -m 644 -p $manpage $RPM_BUILD_ROOT%{_mandir}/man1/$(basename \
d557d5
      $manpage .1)-%{uniquesuffix}.1
d557d5
  done
d557d5
d557d5
  # Install demos and samples.
d557d5
  cp -a demo $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir}
d557d5
  mkdir -p sample/rmi
d557d5
  mv bin/java-rmi.cgi sample/rmi
d557d5
  cp -a sample $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir}
d557d5
d557d5
popd
d557d5
d557d5
d557d5
# Install Javadoc documentation.
d557d5
install -d -m 755 $RPM_BUILD_ROOT%{_javadocdir}
d557d5
cp -a %{buildoutputdir}/docs $RPM_BUILD_ROOT%{_javadocdir}/%{uniquejavadocdir}
d557d5
d557d5
# Install icons and menu entries.
d557d5
for s in 16 24 32 48 ; do
d557d5
  install -D -p -m 644 \
d557d5
    openjdk/jdk/src/solaris/classes/sun/awt/X11/java-icon${s}.png \
d557d5
    $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/${s}x${s}/apps/java-%{javaver}.png
d557d5
done
d557d5
d557d5
# Install desktop files.
d557d5
install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/{applications,pixmaps}
d557d5
for e in %{SOURCE7} %{SOURCE77} ; do
d557d5
    sed -i "s/#ARCH#/%{_arch}-%{release}/g" $e
d557d5
    sed -i "s|/usr/bin|%{sdkbindir}/|g" $e
d557d5
    desktop-file-install --vendor=%{uniquesuffix} --mode=644 \
d557d5
        --dir=$RPM_BUILD_ROOT%{_datadir}/applications $e
d557d5
done
d557d5
d557d5
# Install /etc/.java/.systemPrefs/ directory
d557d5
# See https://bugzilla.redhat.com/show_bug.cgi?id=741821
d557d5
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/.java/.systemPrefs
d557d5
d557d5
# Find JRE directories.
d557d5
find $RPM_BUILD_ROOT%{_jvmdir}/%{jredir} -type d \
d557d5
  | grep -v jre/lib/security \
d557d5
  | sed 's|'$RPM_BUILD_ROOT'|%dir |' \
d557d5
  > %{name}.files-headless
d557d5
# Find JRE files.
d557d5
find $RPM_BUILD_ROOT%{_jvmdir}/%{jredir} -type f -o -type l \
d557d5
  | grep -v jre/lib/security \
d557d5
  | sed 's|'$RPM_BUILD_ROOT'||' \
d557d5
  > %{name}.files.all
d557d5
#split %{name}.files to %{name}.files-headless and %{name}.files
d557d5
#see https://bugzilla.redhat.com/show_bug.cgi?id=875408
d557d5
NOT_HEADLESS=\
d557d5
"%{_jvmdir}/%{uniquesuffix}/jre/lib/%{archinstall}/libjsoundalsa.so 
d557d5
%{_jvmdir}/%{uniquesuffix}/jre/lib/%{archinstall}/libpulse-java.so 
d557d5
%{_jvmdir}/%{uniquesuffix}/jre/lib/%{archinstall}/libsplashscreen.so 
d557d5
%{_jvmdir}/%{uniquesuffix}/jre/lib/%{archinstall}/xawt/libmawt.so
d557d5
%{_jvmdir}/%{uniquesuffix}/jre-abrt/lib/%{archinstall}/libjsoundalsa.so 
d557d5
%{_jvmdir}/%{uniquesuffix}/jre-abrt/lib/%{archinstall}/libpulse-java.so 
d557d5
%{_jvmdir}/%{uniquesuffix}/jre-abrt/lib/%{archinstall}/libsplashscreen.so 
d557d5
%{_jvmdir}/%{uniquesuffix}/jre-abrt/lib/%{archinstall}/xawt/libmawt.so"
d557d5
#filter  %{name}.files from  %{name}.files.all to  %{name}.files-headless
d557d5
ALL=`cat %{name}.files.all`
d557d5
for file in $ALL ; do 
d557d5
  INLCUDE="NO" ; 
d557d5
  for blacklist in $NOT_HEADLESS ; do
d557d5
#we can not match normally, because rpmbuild will evaluate !0 result as script failure
d557d5
    q=`expr match "$file" "$blacklist"` || :
d557d5
    l=`expr length  "$blacklist"` || :
d557d5
    if [ $q -eq $l  ]; then 
d557d5
      INLCUDE="YES" ; 
d557d5
    fi;
d557d5
  done
d557d5
    if [ "x$INLCUDE" = "xNO"  ]; then 
d557d5
      echo "$file" >> %{name}.files-headless
d557d5
    else
d557d5
      echo "$file" >> %{name}.files
d557d5
    fi
d557d5
done
d557d5
# Find demo directories.
d557d5
find $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir}/demo \
d557d5
  $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir}/sample -type d \
d557d5
  | sed 's|'$RPM_BUILD_ROOT'|%dir |' \
d557d5
  > %{name}-demo.files
d557d5
d557d5
# FIXME: remove SONAME entries from demo DSOs.  See
d557d5
# https://bugzilla.redhat.com/show_bug.cgi?id=436497
d557d5
d557d5
# Find non-documentation demo files.
d557d5
find $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir}/demo \
d557d5
  $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir}/sample \
d557d5
  -type f -o -type l | sort \
d557d5
  | grep -v README \
d557d5
  | sed 's|'$RPM_BUILD_ROOT'||' \
d557d5
  >> %{name}-demo.files
d557d5
# Find documentation demo files.
d557d5
find $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir}/demo \
d557d5
  $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir}/sample \
d557d5
  -type f -o -type l | sort \
d557d5
  | grep README \
d557d5
  | sed 's|'$RPM_BUILD_ROOT'||' \
d557d5
  | sed 's|^|%doc |' \
d557d5
  >> %{name}-demo.files
d557d5
d557d5
# intentionally after the files generation, as it goes to separate package
d557d5
# Create links which leads to separately installed java-atk-bridge and allow configuration
d557d5
# links points to java-atk-wrapper - an dependence
d557d5
  pushd $RPM_BUILD_ROOT/%{_jvmdir}/%{jredir}/lib/%{archinstall}
d557d5
    ln -s %{syslibdir}/java-atk-wrapper/libatk-wrapper.so.0 libatk-wrapper.so
d557d5
  popd
d557d5
  pushd $RPM_BUILD_ROOT/%{_jvmdir}/%{jredir}/lib/ext
d557d5
     ln -s %{syslibdir}/java-atk-wrapper/java-atk-wrapper.jar  java-atk-wrapper.jar
d557d5
  popd
d557d5
  pushd $RPM_BUILD_ROOT/%{_jvmdir}/%{jredir}/lib/
d557d5
    echo "#Config file to  enable java-atk-wrapper" > accessibility.properties
d557d5
    echo "" >> accessibility.properties
d557d5
    echo "assistive_technologies=org.GNOME.Accessibility.AtkWrapper" >> accessibility.properties
d557d5
    echo "" >> accessibility.properties
d557d5
  popd
d557d5
745a16
%pretrans headless -p <lua>
745a16
-- see https://bugzilla.redhat.com/show_bug.cgi?id=1038092 for whole issue 
745a16
745a16
local posix = require "posix"
745a16
745a16
local currentjvm = "%{uniquesuffix}"
745a16
local jvmdir = "%{_jvmdir}"
745a16
local jvmDestdir = jvmdir
745a16
local origname = "%{name}"
745a16
local origjavaver = "%{javaver}"
745a16
--trasnform substitute names to lua patterns
745a16
--all percentages must be doubled for case of RPM escapingg
745a16
local name = string.gsub(string.gsub(origname, "%%-", "%%%%-"), "%%.", "%%%%.")
745a16
local javaver = string.gsub(origjavaver, "%%.", "%%%%.")
745a16
local arch ="%{_arch}"
745a16
local  debug = false;
745a16
745a16
local jvms = { }
745a16
745a16
local caredFiles = {"jre/lib/calendars.properties",
745a16
              "jre/lib/content-types.properties",
745a16
              "jre/lib/flavormap.properties",
745a16
              "jre/lib/logging.properties",
745a16
              "jre/lib/net.properties",
745a16
              "jre/lib/psfontj2d.properties",
745a16
              "jre/lib/sound.properties",
745a16
              "jre/lib/tz.properties",
745a16
              "jre/lib/deployment.properties",
745a16
              "jre/lib/deployment.config",
745a16
              "jre/lib/security/US_export_policy.jar",
745a16
              "jre/lib/security/java.policy",
745a16
              "jre/lib/security/java.security",
745a16
              "jre/lib/security/local_policy.jar",
745a16
              "jre/lib/security/nss.cfg,",
745a16
              "jre/lib/ext"}
745a16
745a16
function splitToTable(source, pattern)
745a16
  local i1 = string.gmatch(source, pattern) 
745a16
  local l1 = {}
745a16
  for i in i1 do
745a16
    table.insert(l1, i)
745a16
  end
745a16
  return l1
745a16
end
745a16
745a16
if (debug) then
745a16
  print("started")
745a16
end;
745a16
745a16
foundJvms = posix.dir(jvmdir);
745a16
if (foundJvms == nil) then
745a16
  if (debug) then
745a16
    print("no, or nothing in "..jvmdir.." exit")
745a16
  end;
745a16
  return
745a16
end
745a16
745a16
if (debug) then
745a16
  print("found "..#foundJvms.."jvms")
745a16
end;
745a16
745a16
for i,p in pairs(foundJvms) do
745a16
-- regex similar to %{_jvmdir}/%{name}-%{javaver}*%{_arch} bash command
745a16
--all percentages must be doubled for case of RPM escapingg
745a16
  if (string.find(p, name.."%%-"..javaver..".*"..arch) ~= nil ) then
745a16
    if (debug) then
745a16
      print("matched:  "..p)
745a16
    end;
0a1101
    if (currentjvm ==  p) then
0a1101
      if (debug) then
0a1101
        print("this jdk is already installed. exiting lua script")
0a1101
      end;
0a1101
      return
0a1101
    end ;
745a16
    table.insert(jvms, p)
745a16
  else
745a16
    if (debug) then
745a16
      print("NOT matched:  "..p)
745a16
    end;
745a16
  end
745a16
end
745a16
745a16
if (#jvms <=0) then 
745a16
  if (debug) then
745a16
    print("no matching jdk in "..jvmdir.." exit")
745a16
  end;
745a16
  return
745a16
end;
745a16
745a16
if (debug) then
745a16
  print("matched "..#jvms.." jdk in "..jvmdir)
745a16
end;
745a16
745a16
--full names are like java-1.7.0-openjdk-1.7.0.60-2.4.5.1.fc20.x86_64
745a16
table.sort(jvms , function(a,b) 
745a16
-- version-sort
745a16
-- split on non word: . - 
745a16
  local l1 = splitToTable(a, "[^%.-]+") 
745a16
  local l2 = splitToTable(b, "[^%.-]+") 
745a16
  for x = 1, math.min(#l1, #l2) do
745a16
    local l1x = tonumber(l1[x])
745a16
    local l2x = tonumber(l2[x])
745a16
    if (l1x ~= nil and l2x ~= nil)then
745a16
--if hunks are numbers, go with them 
745a16
      if (l1x < l2x) then return true; end
745a16
      if (l1x > l2x) then return false; end
745a16
    else
745a16
      if (l1[x] < l2[x]) then return true; end
745a16
      if (l1[x] > l2[x]) then return false; end
745a16
    end
745a16
-- if hunks are equals then move to another pair of hunks
745a16
  end
745a16
return a
745a16
745a16
end)
745a16
745a16
if (debug) then
745a16
  print("sorted lsit of jvms")
745a16
  for i,file in pairs(jvms) do
745a16
    print(file)
745a16
  end
745a16
end
745a16
745a16
latestjvm = jvms[#jvms]
745a16
745a16
745a16
for i,file in pairs(caredFiles) do
745a16
  local SOURCE=jvmdir.."/"..latestjvm.."/"..file
745a16
  local DEST=jvmDestdir.."/"..currentjvm.."/"..file
745a16
  if (debug) then
745a16
    print("going to copy "..SOURCE)
745a16
    print("to  "..DEST)
745a16
  end;
745a16
  local stat1 = posix.stat(SOURCE, "type");
745a16
  if (stat1 ~= nil) then
745a16
  if (debug) then
745a16
    print(SOURCE.." exists")
745a16
  end;
745a16
  local s = ""
745a16
  local dirs = splitToTable(DEST, "[^/]+") 
745a16
  for i,d in pairs(dirs) do
745a16
    if (i == #dirs) then
745a16
      break
745a16
    end
745a16
    s = s.."/"..d
745a16
    local stat2 = posix.stat(s, "type");
745a16
    if (stat2 == nil) then
745a16
      if (debug) then
745a16
        print(s.." does not exists, creating")
745a16
      end;
745a16
      posix.mkdir(s)
745a16
    else
745a16
      if (debug) then
745a16
        print(s.." exists,not creating")
745a16
      end;
745a16
    end
745a16
  end
745a16
-- Copy with -a to keep everything intact
745a16
    local exe = "cp".." -ar "..SOURCE.." "..DEST
745a16
    if (debug) then
745a16
      print("executing "..exe)
745a16
    end;    
745a16
    os.execute(exe)
745a16
  else
745a16
    if (debug) then
745a16
      print(SOURCE.." does not exists")
745a16
    end;
745a16
  end
745a16
end
745a16
745a16
d557d5
%post 
d557d5
update-desktop-database %{_datadir}/applications &> /dev/null || :
d557d5
/bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
d557d5
exit 0
d557d5
d557d5
d557d5
# FIXME: identical binaries are copied, not linked. This needs to be
d557d5
# fixed upstream.
d557d5
%post headless
79d80c
# The pretrans lua scriptlet prevents an unmodified java.security
79d80c
# from being replaced via an update. It gets created as
79d80c
# java.security.rpmnew instead. This invalidates the patch of
79d80c
# JDK-8061210 of the January 2015 CPU. We fix this via a
79d80c
# post scriptlet which runs on updates.
79d80c
if [ "$1" -gt 1 ]; then
79d80c
  javasecurity="%{_jvmdir}/%{uniquesuffix}/jre/lib/security/java.security"
79d80c
  sum=$(md5sum "${javasecurity}" | cut -d' ' -f1)
79d80c
  # This is the md5sum of an unmodified java.security file
79d80c
  if [ "${sum}" = '567d9244d9ef1ac0e557d05eb0892413' ]; then
79d80c
    if [ -f "${javasecurity}.rpmnew" ]; then
79d80c
      mv -f "${javasecurity}.rpmnew" "${javasecurity}"
79d80c
    fi
79d80c
  fi
79d80c
fi
79d80c
d557d5
%ifarch %{jit_arches}
d557d5
#see https://bugzilla.redhat.com/show_bug.cgi?id=513605
d557d5
%{jrebindir}/java -Xshare:dump >/dev/null 2>/dev/null
d557d5
%endif
d557d5
d557d5
ext=.gz
d557d5
alternatives \
d557d5
  --install %{_bindir}/java java %{jrebindir}/java %{priority} \
d557d5
  --slave %{_jvmdir}/jre jre %{_jvmdir}/%{jredir} \
d557d5
  --slave %{_jvmjardir}/jre jre_exports %{jvmjardir} \
d557d5
  --slave %{_bindir}/keytool keytool %{jrebindir}/keytool \
d557d5
  --slave %{_bindir}/orbd orbd %{jrebindir}/orbd \
d557d5
  --slave %{_bindir}/pack200 pack200 %{jrebindir}/pack200 \
d557d5
  --slave %{_bindir}/rmid rmid %{jrebindir}/rmid \
d557d5
  --slave %{_bindir}/rmiregistry rmiregistry %{jrebindir}/rmiregistry \
d557d5
  --slave %{_bindir}/servertool servertool %{jrebindir}/servertool \
d557d5
  --slave %{_bindir}/tnameserv tnameserv %{jrebindir}/tnameserv \
d557d5
  --slave %{_bindir}/unpack200 unpack200 %{jrebindir}/unpack200 \
d557d5
  --slave %{_mandir}/man1/java.1$ext java.1$ext \
d557d5
  %{_mandir}/man1/java-%{uniquesuffix}.1$ext \
d557d5
  --slave %{_mandir}/man1/keytool.1$ext keytool.1$ext \
d557d5
  %{_mandir}/man1/keytool-%{uniquesuffix}.1$ext \
d557d5
  --slave %{_mandir}/man1/orbd.1$ext orbd.1$ext \
d557d5
  %{_mandir}/man1/orbd-%{uniquesuffix}.1$ext \
d557d5
  --slave %{_mandir}/man1/pack200.1$ext pack200.1$ext \
d557d5
  %{_mandir}/man1/pack200-%{uniquesuffix}.1$ext \
d557d5
  --slave %{_mandir}/man1/rmid.1$ext rmid.1$ext \
d557d5
  %{_mandir}/man1/rmid-%{uniquesuffix}.1$ext \
d557d5
  --slave %{_mandir}/man1/rmiregistry.1$ext rmiregistry.1$ext \
d557d5
  %{_mandir}/man1/rmiregistry-%{uniquesuffix}.1$ext \
d557d5
  --slave %{_mandir}/man1/servertool.1$ext servertool.1$ext \
d557d5
  %{_mandir}/man1/servertool-%{uniquesuffix}.1$ext \
d557d5
  --slave %{_mandir}/man1/tnameserv.1$ext tnameserv.1$ext \
d557d5
  %{_mandir}/man1/tnameserv-%{uniquesuffix}.1$ext \
d557d5
  --slave %{_mandir}/man1/unpack200.1$ext unpack200.1$ext \
d557d5
  %{_mandir}/man1/unpack200-%{uniquesuffix}.1$ext
d557d5
d557d5
for X in %{origin} %{javaver} ; do
d557d5
  alternatives \
d557d5
    --install %{_jvmdir}/jre-"$X" \
d557d5
    jre_"$X" %{_jvmdir}/%{jredir} %{priority} \
d557d5
    --slave %{_jvmjardir}/jre-"$X" \
d557d5
    jre_"$X"_exports %{jvmjardir}
d557d5
done
d557d5
d557d5
update-alternatives --install %{_jvmdir}/jre-%{javaver}-%{origin} jre_%{javaver}_%{origin} %{_jvmdir}/%{jrelnk} %{priority} \
d557d5
--slave %{_jvmjardir}/jre-%{javaver}       jre_%{javaver}_%{origin}_exports      %{jvmjardir}
d557d5
0a1101
update-desktop-database %{_datadir}/applications &> /dev/null || :
0a1101
0a1101
/bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
0a1101
d557d5
exit 0
d557d5
d557d5
%postun
d557d5
update-desktop-database %{_datadir}/applications &> /dev/null || :
d557d5
d557d5
if [ $1 -eq 0 ] ; then
d557d5
    /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null
d557d5
    /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
d557d5
fi
d557d5
d557d5
exit 0
d557d5
d557d5
d557d5
%postun headless
d557d5
  alternatives --remove java %{jrebindir}/java
d557d5
  alternatives --remove jre_%{origin} %{_jvmdir}/%{jredir}
d557d5
  alternatives --remove jre_%{javaver} %{_jvmdir}/%{jredir}
d557d5
  alternatives --remove jre_%{javaver}_%{origin} %{_jvmdir}/%{jrelnk}
d557d5
745a16
  # avoid unnecessary failure
745a16
  if [ -e %{_jvmdir}/%{uniquesuffix} ]  ; then 
745a16
    # as lua copied all necessary config files, we do not wont the double rpmnew and rpm.save
745a16
    rm -rf %{_jvmdir}/%{uniquesuffix}  
745a16
  fi
d557d5
exit 0
d557d5
745a16
%posttrans
d557d5
/usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
d557d5
d557d5
d557d5
d557d5
%post devel
d557d5
ext=.gz
d557d5
alternatives \
d557d5
  --install %{_bindir}/javac javac %{sdkbindir}/javac %{priority} \
d557d5
  --slave %{_jvmdir}/java java_sdk %{_jvmdir}/%{sdkdir} \
d557d5
  --slave %{_jvmjardir}/java java_sdk_exports %{_jvmjardir}/%{sdkdir} \
d557d5
  --slave %{_bindir}/appletviewer appletviewer %{sdkbindir}/appletviewer \
d557d5
  --slave %{_bindir}/apt apt %{sdkbindir}/apt \
d557d5
  --slave %{_bindir}/extcheck extcheck %{sdkbindir}/extcheck \
d557d5
  --slave %{_bindir}/idlj idlj %{sdkbindir}/idlj \
d557d5
  --slave %{_bindir}/jar jar %{sdkbindir}/jar \
d557d5
  --slave %{_bindir}/jarsigner jarsigner %{sdkbindir}/jarsigner \
d557d5
  --slave %{_bindir}/javadoc javadoc %{sdkbindir}/javadoc \
d557d5
  --slave %{_bindir}/javah javah %{sdkbindir}/javah \
d557d5
  --slave %{_bindir}/javap javap %{sdkbindir}/javap \
d557d5
  --slave %{_bindir}/jcmd jcmd %{sdkbindir}/jcmd \
d557d5
  --slave %{_bindir}/jconsole jconsole %{sdkbindir}/jconsole \
d557d5
  --slave %{_bindir}/jdb jdb %{sdkbindir}/jdb \
d557d5
  --slave %{_bindir}/jhat jhat %{sdkbindir}/jhat \
d557d5
  --slave %{_bindir}/jinfo jinfo %{sdkbindir}/jinfo \
d557d5
  --slave %{_bindir}/jmap jmap %{sdkbindir}/jmap \
d557d5
  --slave %{_bindir}/jps jps %{sdkbindir}/jps \
d557d5
  --slave %{_bindir}/jrunscript jrunscript %{sdkbindir}/jrunscript \
d557d5
  --slave %{_bindir}/jsadebugd jsadebugd %{sdkbindir}/jsadebugd \
d557d5
  --slave %{_bindir}/jstack jstack %{sdkbindir}/jstack \
d557d5
  --slave %{_bindir}/jstat jstat %{sdkbindir}/jstat \
d557d5
  --slave %{_bindir}/jstatd jstatd %{sdkbindir}/jstatd \
d557d5
  --slave %{_bindir}/native2ascii native2ascii %{sdkbindir}/native2ascii \
d557d5
  --slave %{_bindir}/policytool policytool %{sdkbindir}/policytool \
d557d5
  --slave %{_bindir}/rmic rmic %{sdkbindir}/rmic \
d557d5
  --slave %{_bindir}/schemagen schemagen %{sdkbindir}/schemagen \
d557d5
  --slave %{_bindir}/serialver serialver %{sdkbindir}/serialver \
d557d5
  --slave %{_bindir}/wsgen wsgen %{sdkbindir}/wsgen \
d557d5
  --slave %{_bindir}/wsimport wsimport %{sdkbindir}/wsimport \
d557d5
  --slave %{_bindir}/xjc xjc %{sdkbindir}/xjc \
d557d5
  --slave %{_mandir}/man1/appletviewer.1$ext appletviewer.1$ext \
d557d5
  %{_mandir}/man1/appletviewer-%{uniquesuffix}.1$ext \
d557d5
  --slave %{_mandir}/man1/apt.1$ext apt.1$ext \
d557d5
  %{_mandir}/man1/apt-%{uniquesuffix}.1$ext \
d557d5
  --slave %{_mandir}/man1/extcheck.1$ext extcheck.1$ext \
d557d5
  %{_mandir}/man1/extcheck-%{uniquesuffix}.1$ext \
d557d5
  --slave %{_mandir}/man1/jar.1$ext jar.1$ext \
d557d5
  %{_mandir}/man1/jar-%{uniquesuffix}.1$ext \
d557d5
  --slave %{_mandir}/man1/jarsigner.1$ext jarsigner.1$ext \
d557d5
  %{_mandir}/man1/jarsigner-%{uniquesuffix}.1$ext \
d557d5
  --slave %{_mandir}/man1/javac.1$ext javac.1$ext \
d557d5
  %{_mandir}/man1/javac-%{uniquesuffix}.1$ext \
d557d5
  --slave %{_mandir}/man1/javadoc.1$ext javadoc.1$ext \
d557d5
  %{_mandir}/man1/javadoc-%{uniquesuffix}.1$ext \
d557d5
  --slave %{_mandir}/man1/javah.1$ext javah.1$ext \
d557d5
  %{_mandir}/man1/javah-%{uniquesuffix}.1$ext \
d557d5
  --slave %{_mandir}/man1/javap.1$ext javap.1$ext \
d557d5
  %{_mandir}/man1/javap-%{uniquesuffix}.1$ext \
d557d5
  --slave %{_mandir}/man1/jconsole.1$ext jconsole.1$ext \
d557d5
  %{_mandir}/man1/jconsole-%{uniquesuffix}.1$ext \
d557d5
  --slave %{_mandir}/man1/jdb.1$ext jdb.1$ext \
d557d5
  %{_mandir}/man1/jdb-%{uniquesuffix}.1$ext \
d557d5
  --slave %{_mandir}/man1/jhat.1$ext jhat.1$ext \
d557d5
  %{_mandir}/man1/jhat-%{uniquesuffix}.1$ext \
d557d5
  --slave %{_mandir}/man1/jinfo.1$ext jinfo.1$ext \
d557d5
  %{_mandir}/man1/jinfo-%{uniquesuffix}.1$ext \
d557d5
  --slave %{_mandir}/man1/jmap.1$ext jmap.1$ext \
d557d5
  %{_mandir}/man1/jmap-%{uniquesuffix}.1$ext \
d557d5
  --slave %{_mandir}/man1/jps.1$ext jps.1$ext \
d557d5
  %{_mandir}/man1/jps-%{uniquesuffix}.1$ext \
d557d5
  --slave %{_mandir}/man1/jrunscript.1$ext jrunscript.1$ext \
d557d5
  %{_mandir}/man1/jrunscript-%{uniquesuffix}.1$ext \
d557d5
  --slave %{_mandir}/man1/jsadebugd.1$ext jsadebugd.1$ext \
d557d5
  %{_mandir}/man1/jsadebugd-%{uniquesuffix}.1$ext \
d557d5
  --slave %{_mandir}/man1/jstack.1$ext jstack.1$ext \
d557d5
  %{_mandir}/man1/jstack-%{uniquesuffix}.1$ext \
d557d5
  --slave %{_mandir}/man1/jstat.1$ext jstat.1$ext \
d557d5
  %{_mandir}/man1/jstat-%{uniquesuffix}.1$ext \
d557d5
  --slave %{_mandir}/man1/jstatd.1$ext jstatd.1$ext \
d557d5
  %{_mandir}/man1/jstatd-%{uniquesuffix}.1$ext \
d557d5
  --slave %{_mandir}/man1/native2ascii.1$ext native2ascii.1$ext \
d557d5
  %{_mandir}/man1/native2ascii-%{uniquesuffix}.1$ext \
d557d5
  --slave %{_mandir}/man1/policytool.1$ext policytool.1$ext \
d557d5
  %{_mandir}/man1/policytool-%{uniquesuffix}.1$ext \
d557d5
  --slave %{_mandir}/man1/rmic.1$ext rmic.1$ext \
d557d5
  %{_mandir}/man1/rmic-%{uniquesuffix}.1$ext \
d557d5
  --slave %{_mandir}/man1/schemagen.1$ext schemagen.1$ext \
d557d5
  %{_mandir}/man1/schemagen-%{uniquesuffix}.1$ext \
d557d5
  --slave %{_mandir}/man1/serialver.1$ext serialver.1$ext \
d557d5
  %{_mandir}/man1/serialver-%{uniquesuffix}.1$ext \
d557d5
  --slave %{_mandir}/man1/wsgen.1$ext wsgen.1$ext \
d557d5
  %{_mandir}/man1/wsgen-%{uniquesuffix}.1$ext \
d557d5
  --slave %{_mandir}/man1/wsimport.1$ext wsimport.1$ext \
d557d5
  %{_mandir}/man1/wsimport-%{uniquesuffix}.1$ext \
d557d5
  --slave %{_mandir}/man1/xjc.1$ext xjc.1$ext \
d557d5
  %{_mandir}/man1/xjc-%{uniquesuffix}.1$ext
d557d5
d557d5
for X in %{origin} %{javaver} ; do
d557d5
  alternatives \
d557d5
    --install %{_jvmdir}/java-"$X" \
d557d5
    java_sdk_"$X" %{_jvmdir}/%{sdkdir} %{priority} \
d557d5
    --slave %{_jvmjardir}/java-"$X" \
d557d5
    java_sdk_"$X"_exports %{_jvmjardir}/%{sdkdir}
d557d5
done
d557d5
d557d5
update-alternatives --install %{_jvmdir}/java-%{javaver}-%{origin} java_sdk_%{javaver}_%{origin} %{_jvmdir}/%{sdkdir} %{priority} \
d557d5
--slave %{_jvmjardir}/java-%{javaver}-%{origin}       java_sdk_%{javaver}_%{origin}_exports      %{_jvmjardir}/%{sdkdir}
d557d5
d557d5
update-desktop-database %{_datadir}/applications &> /dev/null || :
d557d5
/bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
d557d5
d557d5
exit 0
d557d5
d557d5
%postun devel
d557d5
  alternatives --remove javac %{sdkbindir}/javac
d557d5
  alternatives --remove java_sdk_%{origin} %{_jvmdir}/%{sdkdir}
d557d5
  alternatives --remove java_sdk_%{javaver} %{_jvmdir}/%{sdkdir}
d557d5
  alternatives --remove java_sdk_%{javaver}_%{origin} %{_jvmdir}/%{sdkdir}
d557d5
d557d5
update-desktop-database %{_datadir}/applications &> /dev/null || :
d557d5
d557d5
if [ $1 -eq 0 ] ; then
d557d5
    /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null
d557d5
    /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
d557d5
fi
d557d5
d557d5
exit 0
d557d5
d557d5
%posttrans  devel
d557d5
/usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
d557d5
d557d5
d557d5
%post javadoc
d557d5
alternatives \
d557d5
  --install %{_javadocdir}/java javadocdir %{_javadocdir}/%{uniquejavadocdir}/api \
d557d5
  %{priority}
d557d5
d557d5
exit 0
d557d5
d557d5
%postun javadoc
d557d5
  alternatives --remove javadocdir %{_javadocdir}/%{uniquejavadocdir}/api
d557d5
d557d5
exit 0
d557d5
d557d5
d557d5
%files -f %{name}.files
d557d5
%{_datadir}/icons/hicolor/*x*/apps/java-%{javaver}.png
d557d5
0a1101
# important note, see https://bugzilla.redhat.com/show_bug.cgi?id=1038092 for whole issue 
0a1101
# all config/norepalce files (and more) have to be declared in pretrans. See pretrans
d557d5
%files headless  -f %{name}.files-headless
d557d5
%defattr(-,root,root,-)
d557d5
%doc %{_jvmdir}/%{sdkdir}/ASSEMBLY_EXCEPTION
d557d5
%doc %{_jvmdir}/%{sdkdir}/LICENSE
d557d5
%doc %{_jvmdir}/%{sdkdir}/THIRD_PARTY_README
d557d5
%dir %{_jvmdir}/%{sdkdir}
0a1101
%dir %{_jvmdir}/%{sdkdir}/jre/lib/
0a1101
%dir %{_jvmdir}/%{sdkdir}/jre/lib/%{archinstall}
0a1101
%ifarch x86_64
0a1101
%dir %{_jvmdir}/%{sdkdir}/jre/lib/%{archinstall}/xawt
0a1101
%endif
d557d5
%{_jvmdir}/%{jrelnk}
d557d5
%{_jvmjardir}/%{jrelnk}
d557d5
%{_jvmprivdir}/*
d557d5
%{jvmjardir}
d557d5
%dir %{_jvmdir}/%{jredir}/lib/security
d557d5
%{_jvmdir}/%{jredir}/lib/security/cacerts
d557d5
%config(noreplace) %{_jvmdir}/%{jredir}/lib/security/US_export_policy.jar
d557d5
%config(noreplace) %{_jvmdir}/%{jredir}/lib/security/local_policy.jar
d557d5
%config(noreplace) %{_jvmdir}/%{jredir}/lib/security/java.policy
d557d5
%config(noreplace) %{_jvmdir}/%{jredir}/lib/security/java.security
d557d5
%config(noreplace) %{_jvmdir}/%{jredir}/lib/logging.properties
d557d5
%{_mandir}/man1/java-%{uniquesuffix}.1*
d557d5
%{_mandir}/man1/keytool-%{uniquesuffix}.1*
d557d5
%{_mandir}/man1/orbd-%{uniquesuffix}.1*
d557d5
%{_mandir}/man1/pack200-%{uniquesuffix}.1*
d557d5
%{_mandir}/man1/rmid-%{uniquesuffix}.1*
d557d5
%{_mandir}/man1/rmiregistry-%{uniquesuffix}.1*
d557d5
%{_mandir}/man1/servertool-%{uniquesuffix}.1*
d557d5
%{_mandir}/man1/tnameserv-%{uniquesuffix}.1*
d557d5
%{_mandir}/man1/unpack200-%{uniquesuffix}.1*
d557d5
%config(noreplace) %{_jvmdir}/%{jredir}/lib/security/nss.cfg
d557d5
%{_jvmdir}/%{jredir}/lib/audio/
d557d5
%ifarch %{jit_arches}
d557d5
%attr(664, root, root) %ghost %{_jvmdir}/%{jredir}/lib/%{archinstall}/server/classes.jsa
d557d5
%attr(664, root, root) %ghost %{_jvmdir}/%{jredir}/lib/%{archinstall}/client/classes.jsa
d557d5
%endif
d557d5
%{_jvmdir}/%{jredir}/lib/%{archinstall}/server/
d557d5
%{_jvmdir}/%{jredir}/lib/%{archinstall}/client/
d557d5
%{_sysconfdir}/.java/
d557d5
%{_sysconfdir}/.java/.systemPrefs
d557d5
%{_jvmdir}/%{sdkdir}/jre-abrt
d557d5
d557d5
d557d5
%files devel
d557d5
%defattr(-,root,root,-)
d557d5
%doc %{_jvmdir}/%{sdkdir}/ASSEMBLY_EXCEPTION
d557d5
%doc %{_jvmdir}/%{sdkdir}/LICENSE
d557d5
%doc %{_jvmdir}/%{sdkdir}/THIRD_PARTY_README
d557d5
%dir %{_jvmdir}/%{sdkdir}/bin
d557d5
%dir %{_jvmdir}/%{sdkdir}/include
d557d5
%dir %{_jvmdir}/%{sdkdir}/lib
d557d5
%ifarch %{jit_arches}
d557d5
%dir %{_jvmdir}/%{sdkdir}/tapset
d557d5
%endif
d557d5
%{_jvmdir}/%{sdkdir}/bin/*
d557d5
%{_jvmdir}/%{sdkdir}/include/*
d557d5
%{_jvmdir}/%{sdkdir}/lib/*
d557d5
%ifarch %{jit_arches}
d557d5
%{_jvmdir}/%{sdkdir}/tapset/*.stp
d557d5
%endif
d557d5
%{_jvmjardir}/%{sdkdir}
d557d5
%{_datadir}/applications/*jconsole.desktop
d557d5
%{_datadir}/applications/*policytool.desktop
d557d5
%{_mandir}/man1/appletviewer-%{uniquesuffix}.1*
d557d5
%{_mandir}/man1/apt-%{uniquesuffix}.1*
d557d5
%{_mandir}/man1/extcheck-%{uniquesuffix}.1*
d557d5
%{_mandir}/man1/idlj-%{uniquesuffix}.1*
d557d5
%{_mandir}/man1/jar-%{uniquesuffix}.1*
d557d5
%{_mandir}/man1/jarsigner-%{uniquesuffix}.1*
d557d5
%{_mandir}/man1/javac-%{uniquesuffix}.1*
d557d5
%{_mandir}/man1/javadoc-%{uniquesuffix}.1*
d557d5
%{_mandir}/man1/javah-%{uniquesuffix}.1*
d557d5
%{_mandir}/man1/javap-%{uniquesuffix}.1*
d557d5
%{_mandir}/man1/jconsole-%{uniquesuffix}.1*
d557d5
%{_mandir}/man1/jcmd-%{uniquesuffix}.1*
d557d5
%{_mandir}/man1/jdb-%{uniquesuffix}.1*
d557d5
%{_mandir}/man1/jhat-%{uniquesuffix}.1*
d557d5
%{_mandir}/man1/jinfo-%{uniquesuffix}.1*
d557d5
%{_mandir}/man1/jmap-%{uniquesuffix}.1*
d557d5
%{_mandir}/man1/jps-%{uniquesuffix}.1*
d557d5
%{_mandir}/man1/jrunscript-%{uniquesuffix}.1*
d557d5
%{_mandir}/man1/jsadebugd-%{uniquesuffix}.1*
d557d5
%{_mandir}/man1/jstack-%{uniquesuffix}.1*
d557d5
%{_mandir}/man1/jstat-%{uniquesuffix}.1*
d557d5
%{_mandir}/man1/jstatd-%{uniquesuffix}.1*
d557d5
%{_mandir}/man1/native2ascii-%{uniquesuffix}.1*
d557d5
%{_mandir}/man1/policytool-%{uniquesuffix}.1*
d557d5
%{_mandir}/man1/rmic-%{uniquesuffix}.1*
d557d5
%{_mandir}/man1/schemagen-%{uniquesuffix}.1*
d557d5
%{_mandir}/man1/serialver-%{uniquesuffix}.1*
d557d5
%{_mandir}/man1/wsgen-%{uniquesuffix}.1*
d557d5
%{_mandir}/man1/wsimport-%{uniquesuffix}.1*
d557d5
%{_mandir}/man1/xjc-%{uniquesuffix}.1*
d557d5
%ifarch %{jit_arches}
d557d5
%{tapsetroot}
d557d5
%endif
d557d5
d557d5
%files demo -f %{name}-demo.files
d557d5
%defattr(-,root,root,-)
d557d5
%doc %{_jvmdir}/%{sdkdir}/LICENSE
d557d5
d557d5
%files src
d557d5
%defattr(-,root,root,-)
d557d5
%doc README.src
d557d5
%{_jvmdir}/%{sdkdir}/src.zip
d557d5
d557d5
%files javadoc
d557d5
%defattr(-,root,root,-)
d557d5
%doc %{_javadocdir}/%{uniquejavadocdir}
d557d5
%doc %{buildoutputdir}/j2sdk-image/jre/LICENSE
d557d5
d557d5
%files accessibility
d557d5
%{_jvmdir}/%{jredir}/lib/%{archinstall}/libatk-wrapper.so
d557d5
%{_jvmdir}/%{jredir}/lib/ext/java-atk-wrapper.jar
d557d5
%{_jvmdir}/%{jredir}/lib/accessibility.properties
d557d5
d557d5
%changelog
2e7f34
* Fri Apr 10 2015 Jiri Vanek <jvanek@redhat.com> - 1:1.7.0.75-2.5.5.1
2e7f34
- repacked sources
2e7f34
- Resolves: rhbz#1209072
2e7f34
2e7f34
* Tue Apr 07 2015 Andrew Hughes <gnu.andrew@redhat.com> - 1:1.7.0.75-2.5.5.0
2e7f34
- Bump to 2.5.5 using OpenJDK 7u79 b14.
2e7f34
- Update OpenJDK tarball creation comments
2e7f34
- Remove test case for RH1191652 now fix has been verified.
2e7f34
- Drop AArch64 version of RH1191652 HotSpot patch as included upstream.
2e7f34
- Resolves: rhbz#1209072
2e7f34
3c3d8d
* Wed Mar 04 2015 Andrew Hughes <gnu.andrew@redhat.com> - 1:1.7.0.75-2.5.4.7
3c3d8d
- ppc64le now has pulseaudio
3c3d8d
- Resolves: rhbz#1191652
3c3d8d
3c3d8d
* Tue Mar 03 2015 Andrew Hughes <gnu.andrew@redhat.com> - 1:1.7.0.75-2.5.4.6
3c3d8d
- Provide AArch64 version of RH1191652 HotSpot patch.
3c3d8d
- Resolves: rhbz#1191652
3c3d8d
3c3d8d
* Fri Feb 27 2015 Andrew Hughes <gnu.andrew@redhat.com> - 1:1.7.0.75-2.5.4.5
3c3d8d
- Turn off hsbootstrap on all archs
3c3d8d
- Resolves: rhbz#1191652
3c3d8d
3c3d8d
* Fri Feb 27 2015 Andrew Hughes <gnu.andrew@redhat.com> - 1:1.7.0.75-2.5.4.5
3c3d8d
- Add missing bracket.
3c3d8d
- Resolves: rhbz#1191652
3c3d8d
3c3d8d
* Fri Feb 27 2015 Andrew Hughes <gnu.andrew@redhat.com> - 1:1.7.0.75-2.5.4.5
3c3d8d
- Ensure VM directory exists before copying libjvm.so
3c3d8d
- Resolves: rhbz#1191652
3c3d8d
3c3d8d
* Fri Feb 27 2015 Andrew Hughes <gnu.andrew@redhat.com> - 1:1.7.0.75-2.5.4.5
3c3d8d
- Fix path to libjvm.so used in hsbootstrap to a more general one.
3c3d8d
- Resolves: rhbz#1191652
3c3d8d
3c3d8d
* Thu Feb 26 2015 Andrew Hughes <gnu.andrew@redhat.com> - 1:1.7.0.75-2.5.4.5
3c3d8d
- Fix hsbootstrap option on ppc64le where JDK_TO_BUILD_WITH is changed.
3c3d8d
- Print uname to feedback to upstream OpenJDK.
3c3d8d
- Resolves: rhbz#1191652
3c3d8d
3c3d8d
* Thu Feb 26 2015 Andrew Hughes <gnu.andrew@redhat.com> - 1:1.7.0.75-2.5.4.5
3c3d8d
- Test a hsbootstrap build on ppc64le
3c3d8d
- Resolves: rhbz#1191652
3c3d8d
3c3d8d
* Fri Feb 13 2015 Andrew Hughes <gnu.andrew@redhat.com> - 1:1.7.0.75-2.5.4.5
3c3d8d
- Adjust archbuild instead as JDK build is now using ppc64le
3c3d8d
- Resolves: rhbz#1191652
3c3d8d
3c3d8d
* Fri Feb 13 2015 Andrew Hughes <gnu.andrew@redhat.com> - 1:1.7.0.75-2.5.4.5
3c3d8d
- Add ppc64le defines for javax.sound
3c3d8d
- Resolves: rhbz#1191652
3c3d8d
3c3d8d
* Fri Feb 13 2015 Andrew Hughes <gnu.andrew@redhat.com> - 1:1.7.0.75-2.5.4.5
3c3d8d
- Add jvm.cfg for ppc64le
3c3d8d
- Resolves: rhbz#1191652
3c3d8d
3c3d8d
* Fri Feb 13 2015 Andrew Hughes <gnu.andrew@redhat.com> - 1:1.7.0.75-2.5.4.5
3c3d8d
- Add patch for RH1191652 on the JDK side
3c3d8d
- Resolves: rhbz#1191652
3c3d8d
3c3d8d
* Fri Feb 13 2015 Andrew Hughes <gnu.andrew@redhat.com> - 1:1.7.0.75-2.5.4.5
3c3d8d
- Adjust archinstall and ppc64le workaround to establish jre/lib/ppc64le
3c3d8d
- Resolves: rhbz#1191652
3c3d8d
3c3d8d
* Fri Feb 13 2015 Andrew Hughes <gnu.andrew@redhat.com> - 1:1.7.0.75-2.5.4.5
3c3d8d
- Fix patch for RH1191652 to override LIBARCH on ppc64le as there is no BUILDARCH
3c3d8d
- Resolves: rhbz#1191652
3c3d8d
3c3d8d
* Fri Feb 13 2015 Andrew Hughes <gnu.andrew@redhat.com> - 1:1.7.0.75-2.5.4.5
3c3d8d
- Fix patch for RH1191652 to apply against 2.5 (original against HEAD)
3c3d8d
- Resolves: rhbz#1191652
3c3d8d
3c3d8d
* Fri Feb 13 2015 Andrew Hughes <gnu.andrew@redhat.com> - 1:1.7.0.75-2.5.4.5
3c3d8d
- Use arch name of ppc64le on ppc64le rather than ppc64.
3c3d8d
- Resolves: rhbz#1191652
3c3d8d
3c3d8d
* Mon Feb 02 2015 Andrew Hughes <gnu.andrew@redhat.com> - 1:1.7.0.75-2.5.4.4
3c3d8d
- Symlink ppc64 directory to ppc64le
3c3d8d
- Run test application to print architecture-specific paths stored in the JDK
3c3d8d
- Resolves: rhbz#1191652
3c3d8d
3c3d8d
* Tue Jan 27 2015 Jiri Vanek <jvanek@redhat.com> - 1:1.7.0.75-2.5.4.3
3c3d8d
- removed source14 remove-origin-from-rpaths (1169097)
3c3d8d
- removed build requirement for chrpath
3c3d8d
- Resolves: rhbz#1180298
3c3d8d
79d80c
* Fri Jan 16 2015 Severin Gehwolf <sgehwolf@redhat.com> - 1:1.7.0.75-2.5.4.2
79d80c
- Replace unmodified java.security file via headless post scriptlet.
3c3d8d
- Resolves: rhbz#1180298
79d80c
79d80c
* Sun Jan 11 2015 Andrew Hughes <gnu.andrew@redhat.com> - 1:1.7.0.75-2.5.4.1
79d80c
- Fix macro expansion in changelog
3c3d8d
- Resolves: rhbz#1180298
79d80c
79d80c
* Fri Jan 09 2015 Andrew Hughes <gnu.andrew@redhat.com> - 1:1.7.0.75-2.5.4.1
79d80c
- Fix elliptic curve list as part of fsg.sh
3c3d8d
- Resolves: rhbz#1180298
3c3d8d
3c3d8d
* Fri Jan 09 2015 Andrew Hughes <gnu.andrew@redhat.com> - 1:1.7.0.75-2.5.4.1
3c3d8d
- Bump release so that the RHEL 7.1 version is built on AArch64.
3c3d8d
- Resolves: rhbz#1180298
79d80c
79d80c
* Fri Jan 09 2015 Andrew Hughes <gnu.andrew@redhat.com> - 1:1.7.0.75-2.5.4.0
79d80c
- Bump to 2.5.4 using OpenJDK 7u75 b13.
79d80c
- Bump AArch64 port to 2.6.0pre17.
3c3d8d
- Fix abrt_friendly_hs_log_jdk7.patch to apply again and enable on all archs.
3c3d8d
- Remove OpenJDK 8 / AArch64 version of PStack patch as this is no longer needed.
3c3d8d
- Resolves: rhbz#1180298
3c3d8d
3c3d8d
* Tue Dec 16 2014 Jiri Vanek <jvanek@redhat.com> - 1:1.7.0.71-2.5.3.4
3c3d8d
- aarch64 sources updated to most recent stable tag
3c3d8d
- adapted patch4030 PStack-808293-aarch64.patch
3c3d8d
- removed upstreamed CPU patches (patch500-509, 20141014*)
3c3d8d
- Resolves: rhbz#1125260
79d80c
3c3d8d
* Mon Oct 06 2014 Andrew Hughes <gnu.andrew@redhat.com> - 1:1.7.0.71-2.5.3.3
3c3d8d
- Set ENABLE_FULL_DEBUG_SYMBOLS=0 for aarch64 to retain debuginfo in files.
3c3d8d
- Resolves: rhbz#1148894
79d80c
3c3d8d
* Sat Oct 04 2014 Andrew Hughes <gnu.andrew@redhat.com> - 1:1.7.0.71-2.5.3.2
3c3d8d
- Add HS security patches for aarch64.
3c3d8d
- Resolves: rhbz#1148894
3c3d8d
3c3d8d
* Fri Oct 03 2014 Andrew Hughes <gnu.andrew@redhat.com> - 1:1.7.0.71-2.5.3.1
aa8380
- Bump to 2.5.3 for latest security fixes.
3c3d8d
- Remove obsolete patches and CFLAGS which are now upstream.
aa8380
- Add hsbootstrap option to pre-build HotSpot when required.
3c3d8d
- Resolves: rhbz#1148894
3c3d8d
3c3d8d
* Thu Oct 02 2014 Severin Gehwolf <sgehwolf@redhat.com> - 1.7.0.65-2.5.1.12
3c3d8d
- Bump release for self-build.
3c3d8d
- Resolves: RHBZ#1125557.
3c3d8d
3c3d8d
* Tue Sep 23 2014 Severin Gehwolf <sgehwolf@redhat.com> - 1.7.0.65-2.5.1.11
3c3d8d
- Add hotspot compiler flag -fno-tree-vectorize which fixes the segfault in
3c3d8d
  the bytecode verifier on ppc/ppc64.
3c3d8d
3c3d8d
* Tue Sep 23 2014 Severin Gehwolf <sgehwolf@redhat.com> - 1.7.0.65-2.5.1.10
3c3d8d
- Add patches for PPC zero build.
3c3d8d
- Fixes stack overflow problem. See RHBZ#1015432.
3c3d8d
- Fixes missing memory barrier in Atomic::xchg*
3c3d8d
- Fixes missing PPC32/PPC64 defines for Zero builds on power.
3c3d8d
3c3d8d
* Mon Sep 22 2014 Severin Gehwolf <sgehwolf@redhat.com> - 1.7.0.65-2.5.1.9
3c3d8d
- Remove obsolete PPC/PPC64 patches.
3c3d8d
3c3d8d
* Thu Sep 11 2014 Omair Majid <omajid@redhat.com> - 1.7.0.65-2.5.1.8
3c3d8d
- Update aarch64 port to jdk7u60_b04_aarch64_834
3c3d8d
- Resolves: rhbz#1082779
3c3d8d
3c3d8d
* Tue Aug 19 2014 Jiri Vanek  <jvanek@redhat.com> - 1.7.0.65-2.5.1.7
3c3d8d
- added and applied patch666 stackoverflow-ppc32_64-20140828.patch
3c3d8d
- returned ppc (rebuild in brew must be done by 2.4.x)
3c3d8d
- Resolves: rhbz#1125557
3c3d8d
3c3d8d
* Tue Aug 19 2014 Jiri Vanek  <jvanek@redhat.com> - 1.7.0.65-2.5.1.6
3c3d8d
- added ExcludeArch: ppc
3c3d8d
- Resolves: rhbz#1125557
3c3d8d
3c3d8d
* Mon Aug 04 2014 Andrew Hughes <gnu.andrew@redhat.com> - 1:1.7.0.65-2.5.1.5
3c3d8d
- Add workaround to build on ppc64le where arch directory is still ppc64le, not ppc64
3c3d8d
- Resolves: rhbz#1125557
3c3d8d
3c3d8d
* Wed Jul 30 2014 Omair Majid <omajid@redhat.com> - 1.7.0.65-2.5.1.4
3c3d8d
- Bump release to build package on aarch64
3c3d8d
- Resolves: rhbz#1082779
3c3d8d
3c3d8d
* Wed Jul 30 2014 Jiri Vanek  <jvanek@redhat.com> - 1.7.0.65-2.5.1.3
3c3d8d
- Update aarch64 to latest version
3c3d8d
- Resolves: rhbz#1082779
aa8380
0a1101
* Mon Jul 14 2014 Jiri Vanek  <jvanek@redhat.com> - 1.7.0.65-2.5.1.2
0a1101
- added and applied fix for samrtcard io patch405, pr1864_smartcardIO.patch
3c3d8d
- Resolves: rhbz#1115877
0a1101
0a1101
* Mon Jul 07 2014 Jiri Vanek  <jvanek@redhat.com> - 1.7.0.65-2.5.1.1
0a1101
- updated to security patched icedtea7-forest-2.5.1
3c3d8d
- Resolves: rhbz#1115877
0a1101
3c3d8d
* Wed Jul 02 2014 Jiri Vanek  <jvanek@redhat.com> - 1.7.0.60-2.5.0.3
0a1101
- updated to icedtea7-forest-2.5.0 (rh1114934)
3c3d8d
- Resolves: rhbz#1099566
0a1101
7d28d3
* Fri May 30 2014 Andrew John Hughes <gnu.andrew@redhat.com> - 1.7.0.55-2.4.7.2
7d28d3
- Remove NSS patches. Issues with PKCS11 provider mean it shouldn't be enabled.
7d28d3
- Always setup nss.cfg and depend on nss-devel at build-time to do so.
7d28d3
- This allows users who wish to use PKCS11+NSS to just add it to java.security.
7d28d3
- Patches to PKCS11 provider will be included upstream in 2.4.8 (ETA July 2014)
7d28d3
- Resolves: rhbz#1099565
7d28d3
7d28d3
* Tue May 20 2014 Jiri Vanek <jvanek@redhat.com> - 1.7.0.55-2.4.7.0.el7
7d28d3
- bumped to future icedtea-forest 2.4.7
7d28d3
- updatever set to 55, buildver se to 13, release reset to 0
7d28d3
- removed upstreamed patch402 gstackbounds.patch
7d28d3
- removed Requires: rhino, BuildRequires is enough
7d28d3
- ppc64 repalced by power64 macro
7d28d3
- patch111 applied as dry-run (6.6 forward port)
7d28d3
- nss enabled, but notused as default (6.6 forward port)
7d28d3
- Resolves: rhbz#1099565
7d28d3
745a16
* Fri Apr 04 2014 Jiri Vanek <jvanek@redhat.com> - 1.7.0.51-2.4.5.5.el7
745a16
- added OrderWithRequires on headless where possible
745a16
- Resolves: rhbz#1038092
745a16
745a16
* Thu Mar 27 2014 Jiri Vanek <jvanek@redhat.com> - 1.7.0.51-2.4.5.3.el7
745a16
- synced lua script from fedora.
745a16
- Resolves: rhbz#1038092
745a16
745a16
* Fri Mar 14 2014 Jiri Vanek <jvanek@redhat.com> - 1.7.0.51-2.4.5.2.el7
745a16
- added fstack-protector-strong to CFLAGS
745a16
- Resolves: rhbz#1070816
745a16
745a16
* Thu Mar 06 2014 Jiri Vanek <jvanek@redhat.com> - 1.7.0.51-2.4.5.1.el7
745a16
- diabled NSS. Missuisng 1038092 for it as it is in hurry.
745a16
- Related: rhbz#1038092
745a16
745a16
* Thu Jan 30 2014 Jiri Vanek <jvanek@redhat.com> - 1.7.0.51-2.4.5.0.el7
745a16
- updated to icedtea 2.4.5 + sync with f21
745a16
 - http://blog.fuseyism.com/index.php/2014/01/29/icedtea-2-4-5-released/
745a16
- removed buildRequires: pulseaudio >= 0.9.11, as not neccessary
745a16
 -  but kept libs-devel)
745a16
- removed upstreamed or unwonted patches (thanx to gnu_andrew to pointing them out)
745a16
 - patch410 1015432.patch (upstreamed)
745a16
 - patch411 1029588.patch
745a16
 - patch412 zero-x32.diff
745a16
 - patch104 java-1.7.0-ppc-zero-jdk.patch
745a16
 - patch105 java-1.7.0-ppc-zero-hotspot.patch
745a16
- patch402 gstackbounds.patch and patch403 PStack-808293.patch applied always
745a16
 (again thanx to gnu_andrew)
745a16
- merged other gnu_andrew's changes
745a16
 - FT2_CFLAGS and FT2_LIBS hardoced values replaced by correct pkg-config calls 
745a16
 - buildver bumbed to 31
745a16
- added build requires  nss-devel
745a16
- removed build requires mercurial
745a16
- added JRE_RELEASE_VERSION and ALT_PARALLEL_COMPILE_JOBS into make call
745a16
- Related: rhbz1038092
745a16
745a16
* Tue Jan 28 2014 Daniel Mach <dmach@redhat.com> - 1.7.0.51-2.4.4.1
745a16
- Mass rebuild 2014-01-24
745a16
745a16
* Fri Jan 10 2014 Jiri Vanek <jvanek@redhat.com> - 1.7.0.51-2.4.4.0.el7
745a16
- updated to security icedtea 2.4.4
745a16
 - icedtea_version set to 2.4.4
745a16
 - updatever bumped to       51
745a16
 - release reset to 0
745a16
- sync with fedora
745a16
 - added and applied patch411 1029588.patch (rh 1029588)
745a16
 - added aand applied patch410, 1015432 (rh 1015432)
745a16
 - and so removed patch121 FixPPC64StackOverflow.patch
745a16
- added patch412 zero-x32.diff to try to fix zero builds build
745a16
- Resolves: rhbz#1053280
745a16
745a16
* Fri Dec 27 2013 Daniel Mach <dmach@redhat.com> - 1.7.0.45-2.4.3.5.el7 
745a16
- Mass rebuild 2013-12-27
745a16
d557d5
* Thu Oct 31 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.40-2.4.3.4.fel7
d557d5
- Removed obsoletes for java-1.6.0-openjdk* ,  until decided its presence in el7
d557d5
- Resolves:rhbz#1018680
d557d5
d557d5
* Thu Oct 31 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.40-2.4.3.3.fel7
d557d5
- just bumped release, need to confirm, that   patch121, FixPPC64StackOverflow.patch
d557d5
  really works
d557d5
- Resolves:rhbz#1018680
d557d5
d557d5
* Wed Oct 16 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.40-2.4.3.2.fel7
d557d5
- added and applied patch121, FixPPC64StackOverflow.patch
d557d5
- all redundant ppc64 strings replaced by power64 macro
d557d5
- Resolves:rhbz#1018680
d557d5
d557d5
* Wed Oct 16 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.40-2.4.3.1.fel7
d557d5
- updated to new  CPU sources 2.4.3
d557d5
- Resolves:rhbz#1018680
d557d5
d557d5
* Mon Oct 14 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.40-2.4.3.0.fel7
d557d5
- updated to latest CPU sources 2.4.3
d557d5
- Resolves:rhbz#1018680
d557d5
d557d5
* Mon Oct 14 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.40-2.4.2.12.fel7
d557d5
- jdk splitted to headless and rest
d557d5
- Resolves:rhbz#875408
d557d5
d557d5
* Fri Oct 04 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.40-2.4.2.11.fel7
d557d5
- another tapset fix 
d557d5
- Resolves:rhbz#875408
d557d5
d557d5
* Fri Oct 04 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.40-2.4.2.10.fel7
d557d5
- abrt changed to soft dependece
d557d5
- Resolves:rhbz#875408
d557d5
d557d5
* Thu Oct 03 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.40-2.4.2.9.el7
d557d5
- renamed tapset source to be "versioned"
d557d5
- improved agent placement
d557d5
- Resolves:rhbz#875408
d557d5
d557d5
* Wed Oct 02 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.40-2.4.2.8.el7
d557d5
- updated tapset to current head (825824)
d557d5
- Resolves:rhbz#875408
d557d5
d557d5
* Tue Oct 01 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.40-2.4.2.7.el7
d557d5
- fixed incorrect  _jvmdir/jre-javaver_origin to  _jvmdir/jre-javaver-origin link
d557d5
- Resolves:rhbz#875408
d557d5
d557d5
* Tue Oct 01 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.40-2.4.2.6.el7
d557d5
- syncing with f20 - abrt connector
d557d5
- Resolves:rhbz#875408
d557d5
d557d5
* Tue Oct 01 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.40-2.4.2.3.el7
d557d5
- syncing with f19/rhel-6.5
d557d5
- Resolves:rhbz#875408
d557d5
d557d5
d557d5
* Wed Aug 07 2013 Deepak Bhole <dbhole@redhat.com> - 1.7.0.25-2.3.12.3.el7
d557d5
- Removed obsoletes for java-1.6.0-openjdk*
d557d5
d557d5
* Fri Jul 26 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.25-2.3.12.2.el7
d557d5
- refreshed icedtea7-forest 2.3.12
d557d5
- fix broken jre_exports alternatives links (thanx to orion bug #979128)
d557d5
d557d5
* Thu Jul 25 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.25-2.3.11.0.el7
d557d5
- added new alternatives jre-1.7.0-openjdk and java-1.7.0-openjdk 
d557d5
- finally merged arm and main source tarballs
d557d5
- updated to icedtea 2.3.11
d557d5
 - http://blog.fuseyism.com/index.php/2013/07/25/icedtea-2-3-11-released/
d557d5
- added removal of new jre-1.7.0-openjdk and java-1.7.0-openjdk alternatives
d557d5
- removed patch 400, rhino for 2.1 and other 2.1 conditional stuff
d557d5
- removed patch 103 arm-fixes.patch
d557d5
- removed "dir" from files which was duplicating jre in sdk
d557d5
d557d5
* Fri Jul 19 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.25-2.3.10.6.el7
d557d5
- jrelnk is now just lnk, everything is pointing through jredir
d557d5
d557d5
* Thu Jul 18 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.25-2.3.10.6.el7
d557d5
- minor cleaning
d557d5
- sdklnk removed, and substitued by  sdkdir
d557d5
d557d5
* Wed Jul 03 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.25-2.3.10.5.fel7
d557d5
- moved to xz compression of sources
d557d5
- updated 2.1 tarball
d557d5
d557d5
* Thu Jun 27 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.25-2.3.10.4.el7
d557d5
- Sync with upstream IcedTea7-forest 2.3.10 tag
d557d5
- Fixes regressions as introduced with 1.7.0.25-2.3.10.3.el6:
d557d5
  rhbz#978005, rhbz#977979, rhbz#976693, IcedTeaBZ#1487.
d557d5
- all patch commands repalced by patch macro
d557d5
  - updated java-1.7.0-openjdk-ppc-zero-hotspot.patch to pass without loose patching
d557d5
d557d5
* Wed Jun 19 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.25-2.3.10.3.el7
d557d5
- update of IcedTea7-forest 2.3.10 tarball
d557d5
- removed patch1000 MBeanFix.patch to fix regressions caused by security patches
d557d5
d557d5
d557d5
* Thu Jun 13 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.25-2.3.10.2.el7
d557d5
- added patch1000 MBeanFix.patch to fix regressions caused by security patches
d557d5
d557d5
* Thu Jun 13 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.25-2.3.10.1.el7
d557d5
- arm tarball updated to 2.1.9
d557d5
- build bumped to 25
d557d5
d557d5
* Wed Jun 12 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.19-2.3.10.0.el7
d557d5
- fixed RH972717 by enabling patch110 java-1.7.0-openjdk-nss-icedtea-e9c857dcb964.patch
d557d5
- temporarly swithced to intree lcms as it have security fixes (patch 500)
d557d5
 - added  GENSRCDIR="$PWD/generated.build" to be able to
d557d5
 - removed (build)requires  lcms2(-devel)
d557d5
- Updated to latest IcedTea7-forest 2.3.10
d557d5
d557d5
* Wed Jun 05 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.19-2.3.9.14.fc19
d557d5
- Added client/server directories so they can be owned
d557d5
- Renamed patch 107 to 200
d557d5
- Added nss support from 6.5
d557d5
- Added fix for RH857717, owned /etc/.java/ and /etc/.java/.systemPrefs
d557d5
- Removed ant-nodeps, should not be needed
d557d5
d557d5
* Tue May 28 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.19-2.3.9.13.el7
d557d5
- javadoc put into fully versioned directory, but without arch (to be kept noarch)
d557d5
 - uniquejavadocdir
d557d5
- updated to latest 2.3.9 tarball - fixing the rhbz#967436
d557d5
d557d5
* Mon May 27 2013 Omair Majid <omajid@redhat.com> - 1.7.0.19-2.3.9.12.el7
d557d5
- Allowed multiple OpenJDKs to be installed in parallel
d557d5
- Removed archname
d557d5
- Added arch to all, not only multilib arches
d557d5
- uniquesuffix is now holding fully versioned name
d557d5
- Intorduced source11 remove-buildids.sh
d557d5
d557d5
* Fri May 17 2013 Omair Majid <omajid@redhat.com> - 1.7.0.19-2.3.9.12.el7
79d80c
- Replace %%{name} with %%{uniquesuffix} where it's used as a unique suffix.
d557d5
d557d5
* Thu May 16 2013 Jiri Vanek <jvanek@redhat.com>
d557d5
- added variable arm_arches as restriction to some cases of not jit_arches
d557d5
d557d5
* Tue May 14 2013 Jiri Vanek <jvanek@redhat.com>
d557d5
- patch402 gstackbounds.patch applied only to jit arches
d557d5
- patch403 PStack-808293.patch likewise
d557d5
d557d5
* Mon May 13 2013 Jiri Vanek <jvanek@redhat.com>
d557d5
- initial, not buildable, sync with f19