123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539 |
- # If gcjbootstrap is 1 OpenJDK is bootstrapped against
- # java-1.5.0-gcj-devel. If gcjbootstrap is 0 OpenJDK is built against
- # java-devel >= 1.6.0
- %global gcjbootstrap 0
- # If debug is 1, OpenJDK is built with all debug info present.
- %global debug 0
- # If runtests is 0 test suites will not be run.
- %global runtests 0
- %global icedtea_version 2.2.1
- %global hg_tag icedtea-{icedtea_version}
- %global accessmajorver 1.23
- %global accessminorver 0
- %global accessver %{accessmajorver}.%{accessminorver}
- %global accessurl http://ftp.gnome.org/pub/GNOME/sources/java-access-bridge/
- %global mauvedate 2008-10-22
- %global multilib_arches ppc64 sparc64 x86_64
- %global jit_arches %{ix86} x86_64 sparcv9 sparc64
- %ifarch x86_64
- %global archbuild amd64
- %global archinstall amd64
- %endif
- %ifarch ppc
- %global archbuild ppc
- %global archinstall ppc
- %global archdef PPC
- %endif
- %ifarch ppc64
- %global archbuild ppc64
- %global archinstall ppc64
- %global archdef PPC
- %endif
- %ifarch %{ix86}
- %global archbuild i586
- %global archinstall i386
- %endif
- %ifarch ia64
- %global archbuild ia64
- %global archinstall ia64
- %endif
- %ifarch s390
- %global archbuild s390
- %global archinstall s390
- %global archdef S390
- %endif
- %ifarch s390x
- %global archbuild s390x
- %global archinstall s390x
- %global archdef S390
- %endif
- %ifarch %{arm}
- %global archbuild arm
- %global archinstall arm
- %global archdef ARM
- %endif
- # 32 bit sparc, optimized for v9
- %ifarch sparcv9
- %global archbuild sparc
- %global archinstall sparc
- %endif
- # 64 bit sparc
- %ifarch sparc64
- %global archbuild sparcv9
- %global archinstall sparcv9
- %endif
- %ifnarch %{jit_arches}
- %global archbuild %{_arch}
- %global archinstall %{_arch}
- %endif
- %if %{debug}
- %global debugbuild debug_build
- %else
- %global debugbuild %{nil}
- %endif
- %global buildoutputdir openjdk/build/linux-%{archbuild}
- %global with_pulseaudio 1
- %ifarch %{jit_arches}
- %global with_systemtap 0
- %else
- %global with_systemtap 0
- %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.
- %global script 'use File::Spec; print File::Spec->abs2rel($ARGV[0], $ARGV[1])'
- %global abs2rel %{__perl} -e %{script}
- # Hard-code libdir on 64-bit architectures to make the 64-bit JDK
- # simply be another alternative.
- %ifarch %{multilib_arches}
- %global syslibdir %{_prefix}/lib64
- %global _libdir %{_prefix}/lib
- %global archname %{name}.%{_arch}
- %else
- %global syslibdir %{_libdir}
- %global archname %{name}
- %endif
- # Standard JPackage naming and versioning defines.
- %global origin openjdk
- %global buildver 5
- # Keep priority on 5digits in case buildver>9
- %global priority 1700%{buildver}
- %global javaver 1.7.0
- # Standard JPackage directories and symbolic links.
- # Make 64-bit JDKs just another alternative on 64-bit architectures.
- %ifarch %{multilib_arches}
- %global sdklnk java-%{javaver}-%{origin}.%{_arch}
- %global jrelnk jre-%{javaver}-%{origin}.%{_arch}
- %global sdkdir %{name}-%{version}.%{_arch}
- %else
- %global sdklnk java-%{javaver}-%{origin}
- %global jrelnk jre-%{javaver}-%{origin}
- %global sdkdir %{name}-%{version}
- %endif
- %global jredir %{sdkdir}/jre
- %global sdkbindir %{_jvmdir}/%{sdklnk}/bin
- %global jrebindir %{_jvmdir}/%{jrelnk}/bin
- %ifarch %{multilib_arches}
- %global jvmjardir %{_jvmjardir}/%{name}-%{version}.%{_arch}
- %else
- %global jvmjardir %{_jvmjardir}/%{name}-%{version}
- %endif
- %if %{with_systemtap}
- # 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.
- %global tapsetroot /usr/share/systemtap
- %global tapsetdir %{tapsetroot}/tapset/%{_build_cpu}
- %endif
- # Prevent brp-java-repack-jars from being run.
- %global __jar_repack 0
- Name: java-%{javaver}-%{origin}
- Version: %{javaver}.%{buildver}
- Release: %{icedtea_version}.1%{?_dist_release}
- Summary: OpenJDK Runtime Environment
- Summary(ja): OpenJDK ランタイム環境
- Group: Development/Languages
- 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
- URL: http://openjdk.java.net/
- #head
- #REPO=http://icedtea.classpath.org/hg/icedtea7-forest
- #current release
- #REPO=http://icedtea.classpath.org/hg/release/icedtea7-forest-2.2
- # hg clone $REPO/ openjdk -r %{hg_tag}
- # hg clone $REPO/corba/ openjdk/corba -r %{hg_tag}
- # hg clone $REPO/hotspot/ openjdk/hotspot -r %{hg_tag}
- # hg clone $REPO/jaxp/ openjdk/jaxp -r %{hg_tag}
- # hg clone $REPO/jaxws/ openjdk/jaxws -r %{hg_tag}
- # hg clone $REPO/jdk/ openjdk/jdk -r %{hg_tag}
- # hg clone $REPO/langtools/ openjdk/langtools -r %{hg_tag}
- # find openjdk -name ".hg" -exec rm -rf '{}' \;
- # find openjdk -name ".hgtags" -exec rm -rf '{}' \;
- # tar czf openjdk-icedtea-%{icedtea_version}.tar.gz openjdk
- Source0: openjdk-icedtea-%{icedtea_version}.tar.gz
- # Gnome access bridge
- Source1: %{accessurl}%{accessmajorver}/java-access-bridge-%{accessver}.tar.bz2
- # README file
- Source2: README.src
- # Mauve test suite
- # FIXME: Is this applicable for 7?
- Source3: mauve-%{mauvedate}.tar.gz
- Source4: mauve_tests
- # javac wrapper (used during bootstrap to strip what ecj doesn't support)
- Source5: javac-wrapper
- # Auto-generated files (used only in bootstrap)
- # To reproduce:
- # build OpenJDK7 tarball above with any JDK
- # mv generated.build generated
- # tar czf generated-files.tar.gz generated
- Source6: generated-files.tar.gz
- # Class rewrite to rewrite rhino hierarchy
- Source7: class-rewriter.tar.gz
- # Systemtap tapsets. Zipped up to keep it small.
- Source8: systemtap-tapset.tar.gz
- # .desktop files. Zipped up to keep it small.
- Source9: desktop-files.tar.gz
- # nss configuration file
- Source10: nss.cfg
- # FIXME: Taken from IcedTea snapshot 877ad5f00f69, but needs to be moved out
- # hg clone -r 877ad5f00f69 http://icedtea.classpath.org/hg/icedtea7
- Source11: pulseaudio.tar.gz
- # Removed libraries that we link instead
- Source12: remove-intree-libraries.sh
- # For primary arches, build latest and for secondary, use hs22
- # base (icedtea-2.2.1 tag)
- # http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1
- # hg tag: icedtea-2.1.1
- Source100: openjdk-icedtea-2.1.1.tar.gz
- # RPM/distribution specific patches
- # Allow TCK to pass with access bridge wired in
- Patch1: java-1.7.0-openjdk-java-access-bridge-tck.patch
- # Adjust idlj compilation switches to match what system idlj supports
- Patch2: java-1.7.0-openjdk-java-access-bridge-idlj.patch
- # Disable access to access-bridge packages by untrusted apps
- Patch3: java-1.7.0-openjdk-java-access-bridge-security.patch
- # Ignore AWTError when assistive technologies are loaded
- Patch4: java-1.7.0-openjdk-accessible-toolkit.patch
- # Build docs even in debug
- Patch5: java-1.7.0-openjdk-debugdocs.patch
- # Add debuginfo where missing
- Patch6: %{name}-debuginfo.patch
- #
- # OpenJDK specific patches
- #
- # Add rhino support
- Patch100: rhino.patch
- # Type fixing for s390
- Patch101: %{name}-bitmap.patch
- Patch102: %{name}-size_t.patch
- # Patches for Arm
- Patch103: %{name}-arm-fixes.patch
- # Patch for PPC/PPC64
- Patch104: %{name}-ppc-zero-jdk.patch
- Patch105: %{name}-ppc-zero-hotspot.patch
- #
- # Bootstrap patches (code with this is never shipped)
- #
- # Explicitly set javac, so that the bootstrap version is used
- Patch200: bootstrap-ant-javac.patch
- # Adjusted generated sources path to use prebuilt ones
- Patch201: bootstrap-corba-defs.patch
- # Do not use idlj to generate sources, as we use prebuilt ones
- Patch202: bootstrap-corba-idlj.patch
- # Disable decending into sources dir for generation
- Patch203: bootstrap-corba-no-gen.patch
- # Explicitly compile ORB.java
- Patch204: bootstrap-corba-orb.patch
- # Don't build demos in bootstrap
- Patch205: bootstrap-demos.patch
- # Change hex constants to be numbers instead of 0x... so that ecj can compile them right
- Patch206: bootstrap-ecj-fphexconstants.patch
- # Adjust opt flags to remove what ecj doesn't support
- Patch207: bootstrap-ecj-opts.patch
- # use pre-generated font config files
- Patch208: bootstrap-fontconfig.patch
- # Don't write auto-generation message in bootstrap
- Patch209: bootstrap-generated-comments.patch
- # Adjust bootclasspath to match what ecj has
- Patch210: bootstrap-xbootclasspath.patch
- # Wire in icedtea rt.jar (FIXME: name needs update, kept same for now to match icedtea name)
- Patch211: bootstrap-icedteart.patch
- # Wire in custom compiles rt classes
- Patch212: bootstrap-jar.patch
- # Compile inner opengl class explicitly
- Patch213: bootstrap-javah.patch
- # Disable ct.sym creation for bootstrap
- Patch214: bootstrap-symbols.patch
- # Disable icon generation for bootstrap
- Patch215: bootstrap-tobin.patch
- # Don't run test_gamma
- Patch216: bootstrap-test_gamma.patch
- # Disable requirement of module_lib path which bootstrap java_home doesn't have
- Patch217: bootstrap-tools.jar.patch
- # Allow -J opts to jar only if jar knows of them
- Patch218: bootstrap-jopt.patch
- # Explicitly add jaxp classes to classpath
- Patch219: bootstrap-jaxp-dependency.patch
- # Don't fork when generating stubs
- Patch220: bootstrap-genstubs-nofork.patch
- # Remove dependency on ProcessBuilder which is package private to Oracle implementation
- Patch221: bootstrap-break-processbuilder-dependency.patch
- # Allow to build with 1.5
- Patch222: bootstrap-revert-6973616.patch
- # Avoid trying to load system zone info provider and failing
- Patch223: bootstrap-revert-6941137.patch
- # Replace usage of string switch with if/elseif/else
- Patch224: bootstrap-ecj-stringswitch.patch
- # Allow langtools to use older jdk
- Patch225: bootstrap-langtools-force-old-jdk.patch
- # Access JDK sources and classes from langtools build
- Patch226: bootstrap-corba-dependencies.patch
- # Access langtools classes for Javadoc
- Patch227: bootstrap-jaxws-langtools-dependency.patch
- # Access JDK sources for com.sun.net.httpserver
- Patch228: bootstrap-jaxws-jdk-dependency.patch
- # Access JDK and generated sources to build servicability agent
- Patch229: bootstrap-hotspot-jdk-dependency.patch
- # Remove use of multi-catch and replace with regular multi-level catch
- Patch230: bootstrap-ecj-multicatch.patch
- # Remove use of try-with-resources and replace with manual close
- Patch231: bootstrap-ecj-trywithresources.patch
- # Disable auto-boxing and manally cast
- Patch232: bootstrap-ecj-autoboxing.patch
- # Use custom xslt processor
- Patch233: bootstrap-xsltproc.patch
- # Use constants from interface rather than impl
- Patch234: bootstrap-pr40188.patch
- # Remove use of diamond operator and replace with manual
- Patch235: bootstrap-ecj-diamond.patch
- # Adjust javah switches to only use what bootstrap version supports
- Patch236: bootstrap-javah-xbootclasspath.patch
- #
- # Optional component packages
- #
- # Make the ALSA based mixer the default when building with the pulseaudio based
- # mixer
- Patch300: pulse-soundproperties.patch
- # SystemTap support
- # Workaround for RH613824
- Patch302: systemtap.patch
- #
- # IcedTea 2.1.1/hs22 specific patches
- #
- # Rhino support
- Patch400: rhino-icedtea-2.1.1.patch
- BuildRequires: autoconf
- BuildRequires: automake
- BuildRequires: alsa-lib-devel
- BuildRequires: cups-devel
- BuildRequires: desktop-file-utils
- BuildRequires: giflib-devel
- BuildRequires: lcms2-devel
- BuildRequires: libX11-devel
- BuildRequires: libXi-devel
- BuildRequires: libXp-devel
- BuildRequires: libXt-devel
- BuildRequires: libXtst-devel
- BuildRequires: libjpeg-turbo-devel
- BuildRequires: libpng-devel
- BuildRequires: wget
- BuildRequires: libxslt
- BuildRequires: xorg-x11-proto-devel
- BuildRequires: mercurial
- BuildRequires: ant
- BuildRequires: libXinerama-devel
- BuildRequires: rhino
- BuildRequires: lsb
- BuildRequires: zip
- %if %{gcjbootstrap}
- BuildRequires: java-1.5.0-gcj-devel
- %else
- BuildRequires: java-devel >= 1.6.0
- %endif
- # Mauve build requirements.
- BuildRequires: xorg-x11-server-Xvfb
- BuildRequires: xorg-x11-fonts-Type1
- BuildRequires: xorg-x11-fonts-misc
- BuildRequires: freetype2-devel >= 2.3.0
- BuildRequires: fontconfig
- BuildRequires: ecj
- # Java Access Bridge for GNOME build requirements.
- BuildRequires: at-spi-devel
- BuildRequires: gawk
- BuildRequires: libbonobo-devel
- BuildRequires: pkgconfig >= 0.9.0
- BuildRequires: xorg-x11-utils
- # PulseAudio build requirements.
- %if %{with_pulseaudio}
- BuildRequires: pulseaudio-libs-devel >= 0.9.11
- BuildRequires: pulseaudio >= 0.9.11
- %endif
- # Zero-assembler build requirement.
- %ifnarch %{jit_arches}
- BuildRequires: libffi-devel >= 3.0.10
- %endif
- # cacerts build requirement.
- BuildRequires: openssl
- # execstack build requirement.
- # no prelink on ARM yet
- %ifnarch %{arm}
- BuildRequires: prelink
- %endif
- %if %{with_systemtap}
- #systemtap build requirement.
- BuildRequires: systemtap-sdt-devel
- %endif
- Requires: rhino
- Requires: lcms2
- Requires: libjpeg-turbo
- # Require /etc/pki/java/cacerts.
- Requires: ca-certificates
- # Require jpackage-utils for ant.
- Requires: jpackage-utils
- # Require zoneinfo data provided by tzdata-java subpackage.
- Requires: tzdata-java
- # Post requires alternatives to install tool alternatives.
- Requires(post): alternatives
- # Postun requires alternatives to uninstall tool alternatives.
- Requires(postun): alternatives
- # Standard JPackage base provides.
- Provides: jre-%{javaver}-%{origin} = %{version}-%{release}
- Provides: jre-%{origin} = %{version}-%{release}
- Provides: jre-%{javaver} = %{version}-%{release}
- Provides: java-%{javaver} = %{version}-%{release}
- Provides: jre = %{javaver}
- Provides: java-%{origin} = %{version}-%{release}
- Provides: java = %{javaver}
- # Standard JPackage extensions provides.
- Provides: jndi = %{version}
- Provides: jndi-ldap = %{version}
- Provides: jndi-cos = %{version}
- Provides: jndi-rmi = %{version}
- Provides: jndi-dns = %{version}
- Provides: jaas = %{version}
- Provides: jsse = %{version}
- Provides: jce = %{version}
- Provides: jdbc-stdext = 4.1
- Provides: java-sasl = %{version}
- Provides: java-fonts = %{version}
- # Obsolete older 1.6 packages as it cannot use the new bytecode
- Obsoletes: java-1.6.0-openjdk
- Obsoletes: java-1.6.0-openjdk-demo
- Obsoletes: java-1.6.0-openjdk-devel
- Obsoletes: java-1.6.0-openjdk-javadoc
- Obsoletes: java-1.6.0-openjdk-src
- %description
- The OpenJDK runtime environment.
- %package devel
- Summary: OpenJDK Development Environment
- Summary(ja): OpenJDK 開発環境
- Group: Development/Tools
- # Require base package.
- Requires: %{name} = %{version}-%{release}
- # Post requires alternatives to install tool alternatives.
- Requires(post): alternatives
- # Postun requires alternatives to uninstall tool alternatives.
- Requires(postun): alternatives
- # Standard JPackage devel provides.
- Provides: java-sdk-%{javaver}-%{origin} = %{version}
- Provides: java-sdk-%{javaver} = %{version}
- Provides: java-sdk-%{origin} = %{version}
- Provides: java-sdk = %{javaver}
- Provides: java-%{javaver}-devel = %{version}
- Provides: java-devel-%{origin} = %{version}
- Provides: java-devel = %{javaver}
- %description devel
- The OpenJDK development tools.
- %package demo
- Summary: OpenJDK Demos
- Summary(ja): OpenJDK デモ
- Group: Development/Languages
- Requires: %{name} = %{version}-%{release}
- %description demo
- The OpenJDK demos.
- %package src
- Summary: OpenJDK Source Bundle
- Summary(ja): OpenJDK ソースバンドル
- Group: Development/Languages
- Requires: %{name} = %{version}-%{release}
- %description src
- The OpenJDK source bundle.
- %package javadoc
- Summary: OpenJDK API Documentation
- Summary(ja): OpenJDK API ドキュメント
- Group: Documentation
- Requires: jpackage-utils
- BuildArch: noarch
- # Post requires alternatives to install javadoc alternative.
- Requires(post): alternatives
- # Postun requires alternatives to uninstall javadoc alternative.
- Requires(postun): alternatives
- # Standard JPackage javadoc provides.
- Provides: java-javadoc = %{version}-%{release}
- Provides: java-%{javaver}-javadoc = %{version}-%{release}
- %description javadoc
- The OpenJDK API documentation.
- %prep
- %ifarch %{jit_arches}
- %global source_num 0
- %else
- %global source_num 100
- %endif
- %setup -q -c -n %{name} -T -a %{source_num}
- %setup -q -n %{name} -T -D -a 3
- %setup -q -n %{name} -T -D -a 1
- cp %{SOURCE2} .
- cp %{SOURCE4} .
- # OpenJDK patches
- # Rhino patch -- one default version (100) and one specific to 2.1.1 (400)
- %ifarch %{jit_arches}
- %patch100
- %else
- %patch400
- %endif
- # pulseaudio support
- %if %{with_pulseaudio}
- %patch300
- %endif
- # Add systemtap patches if enabled
- %if %{with_systemtap}
- %patch302
- %endif
- # Remove libraries that are linked
- sh %{SOURCE12}
- # Copy jaxp, jaf and jaxws drops
- mkdir drops/
- # Extract the generated files
- tar xzf %{SOURCE6}
- # Extract the rewriter (to rewrite rhino classes)
- tar xzf %{SOURCE7}
- # Extract systemtap tapsets
- %if %{with_systemtap}
- tar xzf %{SOURCE8}
- for file in tapset/*.in; do
- OUTPUT_FILE=`echo $file | sed -e s:\.in$::g`
- sed -e s:@ABS_SERVER_LIBJVM_SO@:%{_jvmdir}/%{sdkdir}/jre/lib/amd64/server/libjvm.so:g $file > $OUTPUT_FILE
- sed -i -e '/@ABS_CLIENT_LIBJVM_SO@/d' $OUTPUT_FILE
- sed -i -e s:@ABS_JAVA_HOME_DIR@:%{_jvmdir}/%{sdkdir}:g $OUTPUT_FILE
- sed -i -e s:@INSTALL_ARCH_DIR@:%{archinstall}:g $OUTPUT_FILE
- done
- %endif
- # Pulseaudio
- %if %{with_pulseaudio}
- tar xzf %{SOURCE11}
- %endif
- # Extract desktop files
- tar xzf %{SOURCE9}
- # If bootstrapping, apply additional patches
- %if %{gcjbootstrap}
- cp -a openjdk openjdk-boot
- # Add bootstrap patches
- %patch200
- %patch201
- %patch202
- %patch203
- %patch204
- %patch205
- %patch206
- %patch207
- %patch208
- %patch209
- %patch210
- %patch211
- %patch212
- %patch213
- %patch214
- %patch215
- %patch216
- %patch217
- %patch218
- %patch219
- %patch220
- %patch221
- %patch222
- %patch223
- %patch224
- %patch225
- %patch226
- %patch227
- %patch228
- %patch229
- %patch230
- %patch231
- %patch232
- %patch233
- %patch234
- %patch235
- %patch236
- %endif
- %build
- # How many cpu's do we have?
- export NUM_PROC=`/usr/bin/getconf _NPROCESSORS_ONLN 2> /dev/null || :`
- export NUM_PROC=${NUM_PROC:-1}
- # Build IcedTea and OpenJDK.
- %ifarch s390x sparc64 alpha ppc64
- export ARCH_DATA_MODEL=64
- %endif
- %ifarch alpha
- export CFLAGS="$CFLAGS -mieee"
- %endif
- patch -l -p0 < %{PATCH3}
- patch -l -p0 < %{PATCH4}
- %if %{debug}
- patch -l -p0 < %{PATCH5}
- patch -l -p0 < %{PATCH6}
- %endif
- # Type fixes for s390
- %ifarch s390 s390x
- patch -l -p0 < %{PATCH101}
- patch -l -p0 < %{PATCH102}
- %endif
- # Arm fixes
- %ifarch %{arm}
- patch -l -p0 < %{PATCH103}
- %endif
- %ifarch ppc ppc64
- # PPC fixes
- patch -l -p0 < %{PATCH104}
- patch -l -p0 < %{PATCH105}
- %endif
- # Add a "-icedtea" tag to the version
- sed -i "s#BUILD_VARIANT_RELEASE)#BUILD_VARIANT_RELEASE)-icedtea#" openjdk/jdk/make/common/shared/Defs.gmk
- # Build the re-written rhino jar
- mkdir -p rhino/{old,new}
- # Compile the rewriter
- (cd rewriter
- javac com/redhat/rewriter/ClassRewriter.java
- )
- # Extract rhino.jar contents and rewrite
- (cd rhino/old
- jar xf /usr/share/java/rhino.jar
- )
- java -cp rewriter com.redhat.rewriter.ClassRewriter \
- $PWD/rhino/old \
- $PWD/rhino/new \
- org.mozilla \
- sun.org.mozilla
- (cd rhino/old
- for file in `find -type f -not -name '*.class'` ; do
- new_file=../new/`echo $file | sed -e 's#org#sun/org#'`
- mkdir -pv `dirname $new_file`
- cp -v $file $new_file
- sed -ie 's#org\.mozilla#sun.org.mozilla#g' $new_file
- done
- )
- (cd rhino/new
- jar cfm ../rhino.jar META-INF/MANIFEST.MF sun
- )
- %if %{gcjbootstrap}
- mkdir -p bootstrap/boot
- # Copy over JAVA_HOME from /usr/lib/jvm/java-gcj/
- cp -aL %{_jvmdir}/java-gcj/* bootstrap/boot/ || : # broken symlinks can be non-fatal but may cause this to fail
- # Replace javac with a wrapper that does some magic
- cp -af %{SOURCE5} bootstrap/boot/bin/javac
- chmod u+x bootstrap/boot/bin/javac # SOURCE5 may not be +x
- sed -i -e s:@RT_JAR@:$PWD/bootstrap/boot/jre/lib/rt.jar:g bootstrap/boot/bin/javac
- # Link the native2ascii binary
- ln -sf /usr/bin/gnative2ascii bootstrap/boot/bin/native2ascii
- # We don't need a disassebler, fake it
- echo "#!/bin/sh
- exit 0" > bootstrap/boot/bin/javap
- chmod u+rx bootstrap/boot/bin/javap # We need to run this during build
- # Modules directory
- mkdir -p bootstrap/boot/lib/modules
- # jdk1.6.0 link
- rm -f bootstrap/jdk1.6.0
- ln -sf boot bootstrap/jdk1.6.0
- # Update rt.jar with newer classes
- # Extra classes to compile for reasons like
- # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42003
- echo "openjdk-boot/jdk/src/share/classes/java/util/regex/Matcher.java
- openjdk-boot/jdk/src/share/classes/javax/management/remote/JMXServiceURL.java
- openjdk-boot/jdk/src/share/classes/javax/management/modelmbean/ModelMBeanInfo.java
- openjdk-boot/jdk/src/share/classes/javax/swing/plaf/basic/BasicDirectoryModel.java
- openjdk-boot/langtools/src/share/classes/javax/tools/JavaFileManager.java" > rt-source-files
- mkdir -p rt
- bootstrap/jdk1.6.0/bin/javac -g -encoding utf-8 -source 6 -target 6 -d rt \
- -classpath %{_jvmdir}/java-gcj/jre/lib/rt.jar \
- -sourcepath 'generated:openjdk-boot/jdk/src/share/classes:openjdk-boot/jdk/src/solaris/classes:openjdk-boot/langtools/src/share/classes:openjdk-boot/corba/src/share/classes' \
- -bootclasspath "\'\'" @rt-source-files
- pushd rt
- zip -qur ../bootstrap/jdk1.6.0/jre/lib/rt.jar *
- popd
- # clean up
- rm -f rt-source-files
- rm -rf rt
- # Build it
- pushd openjdk-boot
- cp -a ../generated generated.build
- chmod u+rwx generated.build
- export ALT_DROPS_DIR=$PWD/../drops
- export ALT_JDK_IMPORT_PATH="$PWD/../bootstrap/jdk1.6.0"
- # Set generic profile
- source jdk/make/jdk_generic_profile.sh
- make \
- ANT="/usr/bin/ant" \
- ALT_BOOTDIR="$PWD/../bootstrap/jdk1.6.0" \
- ICEDTEA_RT="$PWD/../bootstrap/jdk1.6.0/jre/lib/rt.jar" \
- HOTSPOT_BUILD_JOBS="$NUM_PROC" \
- NO_DOCS="true" \
- RHINO_JAR="$PWD/../rhino/rhino.jar" \
- GENSRCDIR="$PWD/generated.build" \
- DISABLE_NIMBUS="true" \
- XSLT="/usr/bin/xsltproc" \
- FT2_CFLAGS="-I/usr/include/freetype2 " \
- FT2_LIBS="-lfreetype " \
- %ifnarch %{jit_arches}
- LIBFFI_CFLAGS="`pkg-config --cflags libffi` " \
- LIBFFI_LIBS="-lffi " \
- ZERO_BUILD="true" \
- ZERO_LIBARCH="%{archbuild}" \
- ZERO_ARCHDEF="%{archdef}" \
- %ifarch ppc ppc64 s390 s390x
- ZERO_ENDIANNESS="big" \
- %else
- ZERO_ENDIANNESS="little" \
- %endif
- %endif
- %{nil}
- export JDK_TO_BUILD_WITH=$PWD/build/linux-%{archbuild}/j2sdk-image
- popd
- %else
- export JDK_TO_BUILD_WITH=/usr/lib/jvm/java-openjdk
- %endif
- pushd openjdk >& /dev/null
- export ALT_DROPS_DIR=$PWD/../drops
- export ALT_BOOTDIR="$JDK_TO_BUILD_WITH"
- # Save old umask as jdk_generic_profile overwrites it
- oldumask=`umask`
- # Set generic profile
- source jdk/make/jdk_generic_profile.sh
- # Restore old umask
- umask $oldumask
- make \
- ANT="/usr/bin/ant" \
- DISTRO_NAME="Fedora" \
- DISTRO_PACKAGE_VERSION="fedora-%{release}-%{_arch}" \
- %ifarch %{jit_arches}
- JDK_UPDATE_VERSION=`printf "%02d" %{buildver}` \
- %else
- JDK_UPDATE_VERSION="03" \
- %endif
- MILESTONE="fcs" \
- HOTSPOT_BUILD_JOBS="$NUM_PROC" \
- STATIC_CXX="false" \
- RHINO_JAR="$PWD/../rhino/rhino.jar" \
- GENSRCDIR="$PWD/generated.build" \
- FT2_CFLAGS="-I/usr/include/freetype2 " \
- FT2_LIBS="-lfreetype " \
- DEBUG_CLASSFILES="true" \
- DEBUG_BINARIES="true" \
- ALT_STRIP_POLICY="no_strip" \
- %ifnarch %{jit_arches}
- LIBFFI_CFLAGS="`pkg-config --cflags libffi` " \
- LIBFFI_LIBS="-lffi " \
- ZERO_BUILD="true" \
- ZERO_LIBARCH="%{archbuild}" \
- ZERO_ARCHDEF="%{archdef}" \
- %ifarch ppc ppc64 s390 s390x
- ZERO_ENDIANNESS="big" \
- %else
- ZERO_ENDIANNESS="little" \
- %endif
- %endif
- %{debugbuild}
- popd >& /dev/null
- export JAVA_HOME=$(pwd)/%{buildoutputdir}/j2sdk-image
- # Build pulseaudio and install it to JDK build location
- %if %{with_pulseaudio}
- pushd pulseaudio
- make JAVA_HOME=$JAVA_HOME -f Makefile.pulseaudio
- cp -pPRf build/native/libpulse-java.so $JAVA_HOME/jre/lib/%{archinstall}/
- cp -pPRf build/pulse-java.jar $JAVA_HOME/jre/lib/ext/
- popd
- %endif
- # Build Java Access Bridge for GNOME.
- pushd java-access-bridge-%{accessver}
- patch -l -p1 < %{PATCH1}
- patch -l -p1 < %{PATCH2}
- OLD_PATH=$PATH
- export PATH=$JAVA_HOME/bin:$OLD_PATH
- ./configure
- make
- export PATH=$OLD_PATH
- cp -a bridge/accessibility.properties $JAVA_HOME/jre/lib
- chmod 644 gnome-java-bridge.jar
- cp -a gnome-java-bridge.jar $JAVA_HOME/jre/lib/ext
- popd
- # Copy tz.properties
- echo "sun.zoneinfo.dir=/usr/share/javazi" >> $JAVA_HOME/jre/lib/tz.properties
- %if %{runtests}
- # 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}
- ./configure
- 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 %{SOURCE4} -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
- STRIP_KEEP_SYMTAB=libjvm*
- 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.
- install -dm 755 $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir}/tapset
- cp -a $RPM_BUILD_DIR/%{name}/tapset/*.stp $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir}/tapset/
- 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
- ln -sf $RELATIVE/rt.jar jndi-%{version}.jar
- ln -sf $RELATIVE/rt.jar jndi-ldap-%{version}.jar
- ln -sf $RELATIVE/rt.jar jndi-cos-%{version}.jar
- ln -sf $RELATIVE/rt.jar jndi-rmi-%{version}.jar
- ln -sf $RELATIVE/rt.jar jaas-%{version}.jar
- ln -sf $RELATIVE/rt.jar jdbc-stdext-%{version}.jar
- ln -sf jdbc-stdext-%{version}.jar jdbc-stdext-3.0.jar
- ln -sf $RELATIVE/rt.jar sasl-%{version}.jar
- for jar in *-%{version}.jar
- do
- if [ x%{version} != x%{javaver} ]
- then
- ln -sf $jar $(echo $jar | sed "s|-%{version}.jar|-%{javaver}.jar|g")
- fi
- ln -sf $jar $(echo $jar | sed "s|-%{version}.jar|.jar|g")
- 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
- # Remove javaws man page
- rm -f man/man1/javaws*
- # 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
- mv bin/java-rmi.cgi sample/rmi
- cp -a sample $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir}
- popd
- # Install nss.cfg
- install -m 644 %{SOURCE10} $RPM_BUILD_ROOT%{_jvmdir}/%{jredir}/lib/security/
- # 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-%{javaver}.png
- done
- # Install desktop files.
- install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/{applications,pixmaps}
- for e in jconsole policytool ; do
- desktop-file-install --vendor=%{name} --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
- # FIXME: identical binaries are copied, not linked. This needs to be
- # fixed upstream.
- %post
- ext=.gz
- 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}/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/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
- alternatives \
- --install %{_jvmdir}/jre-%{origin} \
- jre_%{origin} %{_jvmdir}/%{jrelnk} %{priority} \
- --slave %{_jvmjardir}/jre-%{origin} \
- jre_%{origin}_exports %{_jvmjardir}/%{jrelnk}
- alternatives \
- --install %{_jvmdir}/jre-%{javaver} \
- jre_%{javaver} %{_jvmdir}/%{jrelnk} %{priority} \
- --slave %{_jvmjardir}/jre-%{javaver} \
- jre_%{javaver}_exports %{_jvmjardir}/%{jrelnk}
- update-desktop-database %{_datadir}/applications &> /dev/null || :
- touch --no-create %{_datadir}/icons/hicolor
- if [ -x %{_bindir}/gtk-update-icon-cache ] ; then
- %{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor
- fi
- exit 0
- %postun
- if [ $1 -eq 0 ]
- then
- alternatives --remove java %{jrebindir}/java
- alternatives --remove jre_%{origin} %{_jvmdir}/%{jrelnk}
- alternatives --remove jre_%{javaver} %{_jvmdir}/%{jrelnk}
- fi
- update-desktop-database %{_datadir}/applications &> /dev/null || :
- touch --no-create %{_datadir}/icons/hicolor
- if [ -x %{_bindir}/gtk-update-icon-cache ] ; then
- %{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor
- fi
- exit 0
- %post devel
- ext=.gz
- 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}/policytool policytool %{sdkbindir}/policytool \
- --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/policytool.1$ext policytool.1$ext \
- %{_mandir}/man1/policytool-%{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
- alternatives \
- --install %{_jvmdir}/java-%{origin} \
- java_sdk_%{origin} %{_jvmdir}/%{sdklnk} %{priority} \
- --slave %{_jvmjardir}/java-%{origin} \
- java_sdk_%{origin}_exports %{_jvmjardir}/%{sdklnk}
- 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
- alternatives --remove javac %{sdkbindir}/javac
- alternatives --remove java_sdk_%{origin} %{_jvmdir}/%{sdklnk}
- alternatives --remove java_sdk_%{javaver} %{_jvmdir}/%{sdklnk}
- fi
- exit 0
- %post javadoc
- alternatives \
- --install %{_javadocdir}/java javadocdir %{_javadocdir}/%{name}/api \
- %{priority}
- exit 0
- %postun javadoc
- if [ $1 -eq 0 ]
- then
- 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
- %dir %{_jvmdir}/%{sdkdir}
- %{_jvmdir}/%{jrelnk}
- %{_jvmjardir}/%{jrelnk}
- %{_jvmprivdir}/*
- %{jvmjardir}
- %dir %{_jvmdir}/%{jredir}/lib/security
- %{_jvmdir}/%{jredir}/lib/security/cacerts
- %config(noreplace) %{_jvmdir}/%{jredir}/lib/security/java.policy
- %config(noreplace) %{_jvmdir}/%{jredir}/lib/security/java.security
- %{_datadir}/icons/hicolor/*x*/apps/java-%{javaver}.png
- %{_mandir}/man1/java-%{name}.1*
- %{_mandir}/man1/keytool-%{name}.1*
- %{_mandir}/man1/orbd-%{name}.1*
- %{_mandir}/man1/pack200-%{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*
- %{_jvmdir}/%{jredir}/lib/security/nss.cfg
- %files devel
- %defattr(-,root,root,-)
- %doc %{buildoutputdir}/j2sdk-image/ASSEMBLY_EXCEPTION
- %doc %{buildoutputdir}/j2sdk-image/LICENSE
- %doc %{buildoutputdir}/j2sdk-image/THIRD_PARTY_README
- %dir %{_jvmdir}/%{sdkdir}/bin
- %dir %{_jvmdir}/%{sdkdir}/include
- %dir %{_jvmdir}/%{sdkdir}/lib
- %if %{with_systemtap}
- %dir %{_jvmdir}/%{sdkdir}/tapset
- %endif
- %{_jvmdir}/%{sdkdir}/bin/*
- %{_jvmdir}/%{sdkdir}/include/*
- %{_jvmdir}/%{sdkdir}/lib/*
- %if %{with_systemtap}
- %{_jvmdir}/%{sdkdir}/tapset/*.stp
- %endif
- %{_jvmdir}/%{sdklnk}
- %{_jvmjardir}/%{sdklnk}
- %{_datadir}/applications/*jconsole.desktop
- %{_datadir}/applications/*policytool.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*
- %ifarch %{jit_arches} # Only in u4+
- %{_mandir}/man1/jcmd-%{name}.1*
- %endif
- %{_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/policytool-%{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}
- %{tapsetroot}
- %endif
- %files demo -f %{name}-demo.files
- %defattr(-,root,root,-)
- %doc %{buildoutputdir}/j2sdk-image/jre/LICENSE
- %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}
- %doc %{buildoutputdir}/j2sdk-image/jre/LICENSE
- %changelog
- * Sun Jul 22 2012 Daisuke SUZUKI <daisuke@linux.or.jp> 1.7.0.5-2.2.1.1
- - initial build for Vine Linux
- * Mon Jul 09 2012 Deepak Bhole <dbhole@redhat.com> - 1.7.0.5-2.2.1.fc18.9
- - Added support to build older (2.1.1/u3/hs22) version on non-jit (secondary)
- arches
- * Wed Jun 13 2012 jiri Vanek <jvanek@redhat.com> - 1.7.0.3-2.2.1fc18.8
- - Fixed broken provides sections
- - Changed java-devel requirement to be self's devel (java-1.7.0-openjdk-devel)
- * Mon Jun 11 2012 jiri Vanek <jvanek@redhat.com> - 1.7.0.3-2.2.1fc18.7
- - Used newly prepared tarball with security fixes
- - Bump to icedtea7-forest-2.2.1
- - _mandir/man1/jcmd-name.1 added to alternatives
- - Updated rhino.patch
- - Modified partially upstreamed patch302 - systemtap.patch
- - Temporarly disabled patch102 - java-1.7.0-openjdk-size_t.patch
- - Removed already upstreamed patches 104,107,108,301
- - java-1.7.0-openjdk-arm-ftbfs.patch
- - java-1.7.0-openjdk-system-zlib.patch
- - java-1.7.0-openjdk-remove-mimpure-opt.patch
- - systemtap-alloc-size-workaround.patch
- - patch 105 (java-1.7.0-openjdk-ppc-zero-jdk.patch) have become 104
- - patch 106 (java-1.7.0-openjdk-ppc-zero-hotspot.patch) have become 105
- - Added build requires zip, which was untill now dependence of dependence
- - Access gnome brridge jar forced to be 644
- * Fri May 25 2012 Deepak Bhole <dbhole@redhat.com> - 1.7.0.3-2.1.fc17.7
- - Miscellaneous fixes brought in from RHEL branch
- - Resolves: rhbz#825255: Added ALT_STRIP_POLICY so that debug info is not stripped
- - Moved Patch #7 (usage of system zlib) to #107
- * Tue May 01 2012 Deepak Bhole <dbhole@redhat.com> - 1.7.0.3-2.1.fc17.6
- - Removed VisualVM requirements
- - Obsoleted java-1.6.0-openjdk*
- - Added BR for zip
- * Mon Mar 26 2012 Deepak Bhole <dbhole@redhat.com> - 1.7.0.3-2.1.fc17.5
- - Added SystemTap fixes by Mark Wielaard
- * Sat Mar 24 2012 Dan Horák <dan[at]danny.cz>> - 1.7.0.3-2.1.fc17.4
- - update paths in the ppc patches, add missing snippet
- * Wed Mar 21 2012 Deepak Bhole <dbhole@redhat.com> - 1.7.0.3-2.1.fc17.3
- - Reverted fix for rhbz#740762
- - Fixed PPC/PPC64 build (rh804136) -- added patches from Chris Phillips
- - Moved OpenJDK specific patches to 1XX series
- * Mon Mar 12 2012 Deepak Bhole <dbhole@redhat.com> - 1.7.0.3-2.1.fc17.2
- - Resolved rhbz#740762: java.library.path is missing some paths
- - Unified spec file for x86, x86_64, ARM and s390
- - Integrated changes from Dan Horák <dhorak@redhat.com> for Zero/s390
- - Integrated changes from Chris Phillips <chphilli@redhat.com> for Zero/ARM
- * Fri Feb 24 2012 Deepak Bhole <dbhole@redhat.com> - 1.7.0.3-2.1.fc17.1
- - Added flag so that debuginfo is built into classfiles (rhbz# 796400)
- - Updated rhino.patch to build scripting support (rhbz# 796398)
- * Tue Feb 14 2012 Deepak Bhole <dbhole@redhat.com> - 1.7.0.3-2.1
- - Updated to OpenJDK7u3/IcedTea7 2.1
- - Security fixes:
- - S7112642, CVE-2012-0497: Incorrect checking for graphics rendering object
- - S7082299, CVE-2011-3571: AtomicReferenceArray insufficient array type check
- - S7110687, CVE-2012-0503: Unrestricted use of TimeZone.setDefault
- - S7110700, CVE-2012-0505: Incomplete info in the deserialization exception
- - S7110683, CVE-2012-0502: KeyboardFocusManager focus stealing
- - S7088367, CVE-2011-3563: JavaSound incorrect bounds check
- - S7126960, CVE-2011-5035: Add property to limit number of request headers to the HTTP Server
- - S7118283, CVE-2012-0501: Off-by-one bug in ZIP reading code
- - S7110704, CVE-2012-0506: CORBA fix
- - Add patch to fix compilation with GCC 4.7
- * Tue Nov 15 2011 Deepak Bhole <dbhole@redhat.com> - 1.7.0.1-2.0.3
- - Added patch to fix bug in jdk_generic_profile.sh
- - Compile with generic profile to use system libraries
- - Made remove-intree-libraries.sh more robust
- - Added lcms requirement
- - Added patch to fix glibc name clash
- - Updated java version to include -icedtea
- * Sun Nov 06 2011 Deepak Bhole <dbhole@redhat.com> - 1.7.0.1-2.0.2
- - Added missing changelog entry
- * Sun Nov 06 2011 Deepak Bhole <dbhole@redhat.com> - 1.7.0.1-2.0.1
- - Updated to IcedTea 2.0 tag in the IcedTea OpenJDK7 forest
- - Removed obsoleted patches
- - Added system timezone support
- - Revamp version/release naming scheme to make it proper
- - 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
- * Mon Aug 29 2011 Deepak Bhole <dbhole@redhat.com> - 1.7.0.0-0.1.20110823.1
- - Provide a "7" version of items to enfore F-16 policy of no Java 7 builds
- - Resolves: rhbz#728706, patch from Ville Skyttä <ville.skytta at iki dot fi>
- * Fri Aug 05 2011 Deepak Bhole <dbhole@redhat.com> - 1.7.0.0-0.1.20110803
- - Use a newer snapshot and forest on classpath.org rather than on openjdk.net
- - Added in-tree-removal script to remove libraries that we manually link
- - Updated snapshots
- - Added DISTRO_NAME and FreeType header/lib locations
- - Removed application of patch100 and patch 113 (now in forest)
- * Wed Aug 03 2011 Deepak Bhole <dbhole@redhat.com> - 1.7.0.0-0.1.20110729
- - Initial build from java-1.6.0-openjdk RPM
|