java-1.7.0-openjdk-vl.spec 60 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748
  1. %define release_number 3
  2. # If debug is 1, OpenJDK is built with all debug info present.
  3. %global debug 0
  4. # we remove the build id notes explicitly to avoid generating (potentially
  5. # conflicting) files in the -debuginfo package
  6. %undefine _missing_build_ids_terminate_build
  7. %global icedtea_version 2.4.7
  8. %global hg_tag icedtea-{icedtea_version}
  9. %global aarch64 aarch64 arm64 armv8
  10. %global multilib_arches %{power64} sparc64 x86_64 %{aarch64}
  11. %global jit_arches %{ix86} x86_64 sparcv9 sparc64
  12. # With diabled nss is NSS deactivated, so in NSS_LIBDIR can be wrong path
  13. # the initialisation must be here. LAter the pkg-connfig have bugy behaviour
  14. #looks liekopenjdk RPM specific bug
  15. # Always set this so the nss.cfg file is not broken
  16. %global NSS_LIBDIR %(pkg-config --variable=libdir nss)
  17. %ifarch x86_64
  18. %global archbuild amd64
  19. %global archinstall amd64
  20. %endif
  21. %ifarch ppc
  22. %global archbuild ppc
  23. %global archinstall ppc
  24. %global archdef PPC
  25. %endif
  26. %ifarch %{power64}
  27. %global archbuild ppc64
  28. %global archinstall ppc64
  29. %global archdef PPC
  30. %endif
  31. %ifarch %{ix86}
  32. %global archbuild i586
  33. %global archinstall i386
  34. %endif
  35. %ifarch ia64
  36. %global archbuild ia64
  37. %global archinstall ia64
  38. %endif
  39. %ifarch s390
  40. %global archbuild s390
  41. %global archinstall s390
  42. %global archdef S390
  43. %endif
  44. %ifarch s390x
  45. %global archbuild s390x
  46. %global archinstall s390x
  47. %global archdef S390
  48. %endif
  49. %ifarch %{arm}
  50. %global archbuild arm
  51. %global archinstall arm
  52. %global archdef ARM
  53. %endif
  54. %ifarch %{aarch64}
  55. %global archbuild aarch64
  56. %global archinstall aarch64
  57. %global archdef AARCH64
  58. %endif
  59. # 32 bit sparc, optimized for v9
  60. %ifarch sparcv9
  61. %global archbuild sparc
  62. %global archinstall sparc
  63. %endif
  64. # 64 bit sparc
  65. %ifarch sparc64
  66. %global archbuild sparcv9
  67. %global archinstall sparcv9
  68. %endif
  69. %ifnarch %{jit_arches}
  70. %global archbuild %{_arch}
  71. %global archinstall %{_arch}
  72. %endif
  73. %if %{debug}
  74. %global debugbuild debug_build
  75. %else
  76. %global debugbuild %{nil}
  77. %endif
  78. %global buildoutputdir openjdk/build/linux-%{archbuild}
  79. %global with_pulseaudio 1
  80. %ifarch %{jit_arches}
  81. %global with_systemtap 1
  82. %else
  83. %global with_systemtap 0
  84. %endif
  85. # Convert an absolute path to a relative path. Each symbolic link is
  86. # specified relative to the directory in which it is installed so that
  87. # it will resolve properly within chrooted installations.
  88. %global script 'use File::Spec; print File::Spec->abs2rel($ARGV[0], $ARGV[1])'
  89. %global abs2rel %{__perl} -e %{script}
  90. # Hard-code libdir on 64-bit architectures to make the 64-bit JDK
  91. # simply be another alternative.
  92. %global LIBDIR %{_libdir}
  93. #backuped original one
  94. %ifarch %{multilib_arches}
  95. %global syslibdir %{_prefix}/lib64
  96. %global _libdir %{_prefix}/lib
  97. %else
  98. %global syslibdir %{_libdir}
  99. %endif
  100. # Standard JPackage naming and versioning defines.
  101. %global origin openjdk
  102. %global updatever 55
  103. #Fedora have an bogus 60 instead of updatever. Fix when updatever>=60 in version:
  104. %global buildver 13
  105. # Keep priority on 6digits in case updatever>9
  106. %global priority 1700%{updatever}
  107. %global javaver 1.7.0
  108. %global sdkdir %{uniquesuffix}
  109. %global jrelnk jre-%{javaver}-%{origin}-%{version}-%{release}.%{_arch}
  110. %global jredir %{sdkdir}/jre
  111. %global sdkbindir %{_jvmdir}/%{sdkdir}/bin
  112. %global jrebindir %{_jvmdir}/%{jredir}/bin
  113. %global jvmjardir %{_jvmjardir}/%{uniquesuffix}
  114. %global fullversion %{name}-%{version}-%{release}
  115. %global uniquesuffix %{fullversion}.%{_arch}
  116. #we can copy the javadoc to not arched dir, or made it not noarch
  117. %global uniquejavadocdir %{fullversion}
  118. %ifarch %{jit_arches}
  119. # Where to install systemtap tapset (links)
  120. # We would like these to be in a package specific subdir,
  121. # but currently systemtap doesn't support that, so we have to
  122. # use the root tapset dir for now. To distinquish between 64
  123. # and 32 bit architectures we place the tapsets under the arch
  124. # specific dir (note that systemtap will only pickup the tapset
  125. # for the primary arch for now). Systemtap uses the machine name
  126. # aka build_cpu as architecture specific directory name.
  127. %global tapsetroot /usr/share/systemtap
  128. %ifarch %{ix86}
  129. %global tapsetdir %{tapsetroot}/tapset/i386
  130. %else
  131. %global tapsetdir %{tapsetroot}/tapset/%{_build_cpu}
  132. %endif
  133. %endif
  134. # Prevent brp-java-repack-jars from being run.
  135. %global __jar_repack 0
  136. Name: java-%{javaver}-%{origin}
  137. Version: %{javaver}.%{updatever}
  138. Release: %{icedtea_version}.%{release_number}%{?_dist_release}
  139. # java-1.5.0-ibm from jpackage.org set Epoch to 1 for unknown reasons,
  140. # and this change was brought into RHEL-4. java-1.5.0-ibm packages
  141. # also included the epoch in their virtual provides. This created a
  142. # situation where in-the-wild java-1.5.0-ibm packages provided "java =
  143. # 1:1.5.0". In RPM terms, "1.6.0 < 1:1.5.0" since 1.6.0 is
  144. # interpreted as 0:1.6.0. So the "java >= 1.6.0" requirement would be
  145. # satisfied by the 1:1.5.0 packages. Thus we need to set the epoch in
  146. # JDK package >= 1.6.0 to 1, and packages referring to JDK virtual
  147. # provides >= 1.6.0 must specify the epoch, "java >= 1:1.6.0".
  148. # Epoch: 1
  149. Summary: OpenJDK Runtime Environment
  150. Summary(ja): OpenJDK ランタイム環境
  151. Group: Development/Languages
  152. 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
  153. URL: http://openjdk.java.net/
  154. #head
  155. #REPO=http://icedtea.classpath.org/hg/icedtea7-forest
  156. #current release
  157. #REPO=http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4
  158. # hg clone $REPO/ openjdk -r %{hg_tag}
  159. # hg clone $REPO/corba/ openjdk/corba -r %{hg_tag}
  160. # hg clone $REPO/hotspot/ openjdk/hotspot -r %{hg_tag}
  161. # hg clone $REPO/jaxp/ openjdk/jaxp -r %{hg_tag}
  162. # hg clone $REPO/jaxws/ openjdk/jaxws -r %{hg_tag}
  163. # hg clone $REPO/jdk/ openjdk/jdk -r %{hg_tag}
  164. # hg clone $REPO/langtools/ openjdk/langtools -r %{hg_tag}
  165. # find openjdk -name ".hg" -exec rm -rf '{}' \;
  166. # sh /git/java-1.7.0-openjdk/rhel-7.0/fsg.sh
  167. # tar cJf openjdk-icedtea-%{icedtea_version}.tar.xz openjdk
  168. Source0: openjdk-icedtea-%{icedtea_version}.tar.xz
  169. # README file
  170. # This source is under maintainer's/java-team's control
  171. Source2: README.src
  172. # Sources 6-12 are taken from hg clone http://icedtea.classpath.org/hg/icedtea7
  173. # Unless said differently, there is directory with required sources which should be enough to pack/rename
  174. # Class rewrite to rewrite rhino hierarchy
  175. Source5: class-rewriter.tar.gz
  176. # Systemtap tapsets. Zipped up to keep it small.
  177. # last update from http://icedtea.classpath.org/hg/icedtea7/file/8599fdfc398d/tapset
  178. Source6: systemtap-tapset-2013-10-02.tar.gz
  179. # .desktop files.
  180. Source7: policytool.desktop
  181. Source77: jconsole.desktop
  182. # nss configuration file
  183. Source8: nss.cfg
  184. # FIXME: Taken from IcedTea snapshot 877ad5f00f69, but needs to be moved out
  185. # hg clone -r 877ad5f00f69 http://icedtea.classpath.org/hg/icedtea7
  186. Source9: pulseaudio.tar.gz
  187. # Removed libraries that we link instead
  188. Source10: remove-intree-libraries.sh
  189. #http://icedtea.classpath.org/hg/icedtea7/file/933d082ec889/fsg.sh
  190. # file to clean tarball, should be ketp updated as possible
  191. Source1111: fsg.sh
  192. # Remove build ids from binaries
  193. Source11: remove-buildids.sh
  194. # Ensure we aren't using the limited crypto policy
  195. Source12: TestCryptoLevel.java
  196. Source13: java-abrt-luncher
  197. # RPM/distribution specific patches
  198. # Allow TCK to pass with access bridge wired in
  199. Patch1: java-1.7.0-openjdk-java-access-bridge-tck.patch
  200. # Disable access to access-bridge packages by untrusted apps
  201. Patch3: java-1.7.0-openjdk-java-access-bridge-security.patch
  202. # Ignore AWTError when assistive technologies are loaded
  203. Patch4: java-1.7.0-openjdk-accessible-toolkit.patch
  204. # Build docs even in debug
  205. Patch5: java-1.7.0-openjdk-debugdocs.patch
  206. # Add debuginfo where missing
  207. Patch6: %{name}-debuginfo.patch
  208. #
  209. # OpenJDK specific patches
  210. #
  211. # Add rhino support
  212. Patch100: rhino.patch
  213. Patch106: %{name}-freetype-check-fix.patch
  214. # allow to create hs_pid.log in tmp (in 700 permissions) if working directory is unwritable
  215. Patch200: abrt_friendly_hs_log_jdk7.patch
  216. #
  217. # Optional component packages
  218. #
  219. # Make the ALSA based mixer the default when building with the pulseaudio based
  220. # mixer
  221. Patch300: pulse-soundproperties.patch
  222. # Temporary patches
  223. #Workaround RH902004
  224. Patch403: PStack-808293.patch
  225. # End of tmp patches
  226. BuildRequires: autoconf
  227. BuildRequires: automake
  228. BuildRequires: gcc-c++
  229. BuildRequires: alsa-lib-devel
  230. BuildRequires: cups-devel
  231. BuildRequires: desktop-file-utils
  232. BuildRequires: giflib-devel
  233. BuildRequires: lcms2-devel >= 2.5
  234. BuildRequires: libX11-devel
  235. BuildRequires: libXi-devel
  236. BuildRequires: libXp-devel
  237. BuildRequires: libXt-devel
  238. BuildRequires: libXtst-devel
  239. BuildRequires: libjpeg-turbo-devel
  240. BuildRequires: libpng-devel
  241. BuildRequires: wget
  242. BuildRequires: libxslt
  243. BuildRequires: xorg-x11-proto-devel
  244. BuildRequires: ant
  245. BuildRequires: libXinerama-devel
  246. BuildRequires: rhino
  247. BuildRequires: lsb
  248. BuildRequires: zip
  249. BuildRequires: fontconfig
  250. BuildRequires: xorg-x11-fonts-Type1
  251. BuildRequires: zlib > 1.2.3-6
  252. BuildRequires: java-1.7.0-openjdk-devel
  253. BuildRequires: fontconfig
  254. BuildRequires: at-spi-devel
  255. BuildRequires: gawk
  256. BuildRequires: pkgconfig >= 0.9.0
  257. BuildRequires: xorg-x11-utils
  258. # PulseAudio build requirements.
  259. %if %{with_pulseaudio}
  260. BuildRequires: pulseaudio-libs-devel >= 0.9.11
  261. %endif
  262. # Zero-assembler build requirement.
  263. %ifnarch %{jit_arches}
  264. BuildRequires: libffi-devel >= 3.0.10
  265. %endif
  266. # Requirements for setting up the nss.cfg
  267. BuildRequires: nss-devel
  268. # cacerts build requirement.
  269. BuildRequires: openssl
  270. # execstack build requirement.
  271. # no prelink on ARM yet
  272. %ifnarch %{arm} %{aarch64}
  273. BuildRequires: prelink
  274. %endif
  275. %ifarch %{jit_arches}
  276. #systemtap build requirement.
  277. BuildRequires: systemtap-sdt-devel
  278. %endif
  279. Requires: fontconfig
  280. Requires: xorg-x11-fonts-Type1
  281. #requires rest of java
  282. Requires: %{name}-headless = %{?epoch}:%{version}-%{release}
  283. OrderWithRequires: %{name}-headless = %{?epoch}:%{version}-%{release}
  284. # Standard JPackage base provides.
  285. Provides: jre-%{javaver}-%{origin} = %{?epoch}:%{version}-%{release}
  286. Provides: jre-%{origin} = %{?epoch}:%{version}-%{release}
  287. Provides: jre-%{javaver} = %{?epoch}:%{version}-%{release}
  288. Provides: java-%{javaver} = %{?epoch}:%{version}-%{release}
  289. Provides: jre = %{javaver}
  290. Provides: java-%{origin} = %{?epoch}:%{version}-%{release}
  291. Provides: java = %{?epoch}:%{javaver}
  292. # Standard JPackage extensions provides.
  293. Provides: java-fonts = %{?epoch}:%{version}
  294. # Obsolete older 1.6 packages as it cannot use the new bytecode
  295. # Obsoletes: java-1.6.0-openjdk
  296. # Obsoletes: java-1.6.0-openjdk-demo
  297. # Obsoletes: java-1.6.0-openjdk-devel
  298. # Obsoletes: java-1.6.0-openjdk-javadoc
  299. # Obsoletes: java-1.6.0-openjdk-src
  300. %description
  301. The OpenJDK runtime environment.
  302. %package headless
  303. Summary: The OpenJDK runtime environment without audio and video support
  304. Summary(ja): オーディオ・ビデオサポートなしの OpenJDK ランタイム環境
  305. Group: Development/Languages
  306. Requires: lcms2 >= 2.5
  307. Requires: libjpeg = 6b
  308. # Require /etc/pki/java/cacerts.
  309. Requires: ca-certificates
  310. # Require jpackage-utils for ant.
  311. Requires: jpackage-utils >= 1.7.3-1jpp.2
  312. # Require zoneinfo data provided by tzdata-java subpackage.
  313. Requires: tzdata-java
  314. # Post requires alternatives to install tool alternatives.
  315. Requires(post): %{_sbindir}/alternatives
  316. # Postun requires alternatives to uninstall tool alternatives.
  317. Requires(postun): %{_sbindir}/alternatives
  318. Provides: jre-%{javaver}-%{origin}-headless = %{?epoch}:%{version}-%{release}
  319. Provides: jre-%{origin}-headless = %{?epoch}:%{version}-%{release}
  320. Provides: jre-%{javaver}-headless = %{?epoch}:%{version}-%{release}
  321. Provides: java-%{javaver}-headless = %{?epoch}:%{version}-%{release}
  322. Provides: jre-headless = %{?epoch}:%{javaver}
  323. Provides: java-%{origin}-headless = %{?epoch}:%{version}-%{release}
  324. Provides: java-headless = %{?epoch}:%{javaver}
  325. # Standard JPackage extensions provides.
  326. Provides: jndi = %{?epoch}:%{version}
  327. Provides: jndi-ldap = %{?epoch}:%{version}
  328. Provides: jndi-cos = %{?epoch}:%{version}
  329. Provides: jndi-rmi = %{?epoch}:%{version}
  330. Provides: jndi-dns = %{?epoch}:%{version}
  331. Provides: jaas = %{?epoch}:%{version}
  332. Provides: jsse = %{?epoch}:%{version}
  333. Provides: jce = %{?epoch}:%{version}
  334. Provides: jdbc-stdext = 4.1
  335. Provides: java-sasl = %{?epoch}:%{version}
  336. %description headless
  337. The OpenJDK runtime environment without audio and video
  338. %package devel
  339. Summary: OpenJDK Development Environment
  340. Summary(ja): OpenJDK 開発環境
  341. Group: Development/Tools
  342. # Require base package.
  343. Requires: %{name} = %{?epoch}:%{version}-%{release}
  344. OrderWithRequires: %{name}-headless = %{?epoch}:%{version}-%{release}
  345. # Post requires alternatives to install tool alternatives.
  346. Requires(post): %{_sbindir}/alternatives
  347. # Postun requires alternatives to uninstall tool alternatives.
  348. Requires(postun): %{_sbindir}/alternatives
  349. # Standard JPackage devel provides.
  350. Provides: java-sdk-%{javaver}-%{origin} = %{?epoch}:%{version}
  351. Provides: java-sdk-%{javaver} = %{?epoch}:%{version}
  352. Provides: java-sdk-%{origin} = %{?epoch}:%{version}
  353. Provides: java-sdk = %{?epoch}:%{javaver}
  354. Provides: java-%{javaver}-devel = %{?epoch}:%{version}
  355. Provides: java-devel-%{origin} = %{?epoch}:%{version}
  356. Provides: java-devel = %{?epoch}:%{javaver}
  357. %description devel
  358. The OpenJDK development tools.
  359. %package demo
  360. Summary: OpenJDK Demos
  361. Summary(ja): OpenJDK デモ
  362. Group: Development/Languages
  363. Requires: %{name} = %{?epoch}:%{version}-%{release}
  364. OrderWithRequires: %{name}-headless = %{?epoch}:%{version}-%{release}
  365. %description demo
  366. The OpenJDK demos.
  367. %package src
  368. Summary: OpenJDK Source Bundle
  369. Summary(ja): OpenJDK ソースバンドル
  370. Group: Development/Languages
  371. Requires: %{name} = %{?epoch}:%{version}-%{release}
  372. %description src
  373. The OpenJDK source bundle.
  374. %package javadoc
  375. Summary: OpenJDK API Documentation
  376. Summary(ja): OpenJDK API ドキュメント
  377. Group: Documentation
  378. Requires: jpackage-utils
  379. BuildArch: noarch
  380. OrderWithRequires: %{name}-headless = %{?epoch}:%{version}-%{release}
  381. # Post requires alternatives to install javadoc alternative.
  382. Requires(post): %{_sbindir}/alternatives
  383. # Postun requires alternatives to uninstall javadoc alternative.
  384. Requires(postun): %{_sbindir}/alternatives
  385. # Standard JPackage javadoc provides.
  386. Provides: java-javadoc = %{?epoch}:%{version}-%{release}
  387. Provides: java-%{javaver}-javadoc = %{?epoch}:%{version}-%{release}
  388. %description javadoc
  389. The OpenJDK API documentation.
  390. %package accessibility
  391. Summary: OpenJDK accessibility connector
  392. Summary(ja): OpenJDK アクセシビリティコネクタ
  393. Requires: java-atk-wrapper
  394. Requires: %{name} = %{?epoch}:%{version}-%{release}
  395. OrderWithRequires: %{name}-headless = %{?epoch}:%{version}-%{release}
  396. %description accessibility
  397. 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.
  398. 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.
  399. Although working pretty fine, there are known issues with accessibility on, so do not rather install this package unless you really need.
  400. %prep
  401. %setup -q -c -n %{uniquesuffix} -T -a 0
  402. cp %{SOURCE2} .
  403. # OpenJDK patches
  404. %patch100
  405. # pulseaudio support
  406. %if %{with_pulseaudio}
  407. %patch300
  408. %endif
  409. # Add systemtap patches if enabled
  410. %if %{with_systemtap}
  411. %endif
  412. # Remove libraries that are linked
  413. sh %{SOURCE10}
  414. # Copy jaxp, jaf and jaxws drops
  415. mkdir drops/
  416. # Extract the rewriter (to rewrite rhino classes)
  417. tar xzf %{SOURCE5}
  418. # Extract systemtap tapsets
  419. %if %{with_systemtap}
  420. tar xzf %{SOURCE6}
  421. for file in tapset/*.in; do
  422. OUTPUT_FILE=`echo $file | sed -e s:%{javaver}\.stp\.in$:%{version}-%{release}.stp:g`
  423. sed -e s:@ABS_SERVER_LIBJVM_SO@:%{_jvmdir}/%{sdkdir}/jre/lib/%{archinstall}/server/libjvm.so:g $file > $file.1
  424. # FIXME this should really be %if %{has_client_jvm}
  425. %ifarch %{ix86}
  426. sed -e s:@ABS_CLIENT_LIBJVM_SO@:%{_jvmdir}/%{sdkdir}/jre/lib/%{archinstall}/client/libjvm.so:g $file.1 > $OUTPUT_FILE
  427. %else
  428. sed -e '/@ABS_CLIENT_LIBJVM_SO@/d' $file.1 > $OUTPUT_FILE
  429. %endif
  430. sed -i -e s:@ABS_JAVA_HOME_DIR@:%{_jvmdir}/%{sdkdir}:g $OUTPUT_FILE
  431. sed -i -e s:@INSTALL_ARCH_DIR@:%{archinstall}:g $OUTPUT_FILE
  432. done
  433. %endif
  434. # Pulseaudio
  435. %if %{with_pulseaudio}
  436. tar xzf %{SOURCE9}
  437. %endif
  438. %patch3
  439. %patch4
  440. %if %{debug}
  441. %patch5
  442. %patch6
  443. %endif
  444. %patch106
  445. %patch200
  446. %patch403
  447. %build
  448. # How many cpu's do we have?
  449. %ifarch aarch64
  450. # temporary until real hardware lands
  451. export NUM_PROC=1
  452. %else
  453. export NUM_PROC=`/usr/bin/getconf _NPROCESSORS_ONLN 2> /dev/null || :`
  454. export NUM_PROC=${NUM_PROC:-1}
  455. %endif
  456. # Build IcedTea and OpenJDK.
  457. %ifarch s390x sparc64 alpha %{power64} %{aarch64}
  458. export ARCH_DATA_MODEL=64
  459. %endif
  460. %ifarch alpha
  461. export CFLAGS="$CFLAGS -mieee"
  462. %endif
  463. export CFLAGS="$CFLAGS -fstack-protector"
  464. # Build the re-written rhino jar
  465. mkdir -p rhino/{old,new}
  466. # Compile the rewriter
  467. (cd rewriter
  468. javac com/redhat/rewriter/ClassRewriter.java
  469. )
  470. # Extract rhino.jar contents and rewrite
  471. (cd rhino/old
  472. jar xf /usr/share/java/rhino.jar
  473. )
  474. java -cp rewriter com.redhat.rewriter.ClassRewriter \
  475. $PWD/rhino/old \
  476. $PWD/rhino/new \
  477. org.mozilla \
  478. sun.org.mozilla
  479. (cd rhino/old
  480. for file in `find -type f -not -name '*.class'` ; do
  481. new_file=../new/`echo $file | sed -e 's#org#sun/org#'`
  482. mkdir -pv `dirname $new_file`
  483. cp -v $file $new_file
  484. sed -ie 's#org\.mozilla#sun.org.mozilla#g' $new_file
  485. done
  486. )
  487. (cd rhino/new
  488. jar cfm ../rhino.jar META-INF/MANIFEST.MF sun
  489. )
  490. export JDK_TO_BUILD_WITH=/usr/lib/jvm/java-openjdk
  491. pushd openjdk >& /dev/null
  492. export ALT_DROPS_DIR=$PWD/../drops
  493. export ALT_BOOTDIR="$JDK_TO_BUILD_WITH"
  494. # Save old umask as jdk_generic_profile overwrites it
  495. oldumask=`umask`
  496. # Set generic profile
  497. %ifnarch %{jit_arches}
  498. export ZERO_BUILD=true
  499. %endif
  500. source jdk/make/jdk_generic_profile.sh
  501. # Restore old umask
  502. umask $oldumask
  503. make \
  504. DISABLE_INTREE_EC=true \
  505. UNLIMITED_CRYPTO=true \
  506. ANT="/usr/bin/ant" \
  507. DISTRO_NAME="Vine Linux" \
  508. DISTRO_PACKAGE_VERSION="vine-%{release}-%{_arch}" \
  509. JDK_UPDATE_VERSION=`printf "%02d" %{updatever}` \
  510. JDK_BUILD_NUMBER=b`printf "%02d" %{buildver}` \
  511. JRE_RELEASE_VERSION=%{javaver}_`printf "%02d" %{updatever}`-b`printf "%02d" %{buildver}` \
  512. MILESTONE="fcs" \
  513. ALT_PARALLEL_COMPILE_JOBS="$NUM_PROC" \
  514. HOTSPOT_BUILD_JOBS="$NUM_PROC" \
  515. STATIC_CXX="false" \
  516. RHINO_JAR="$PWD/../rhino/rhino.jar" \
  517. GENSRCDIR="$PWD/generated.build" \
  518. FT2_CFLAGS="`pkg-config --cflags freetype2` " \
  519. FT2_LIBS="`pkg-config --libs freetype2` " \
  520. DEBUG_CLASSFILES="true" \
  521. DEBUG_BINARIES="true" \
  522. STRIP_POLICY="no_strip" \
  523. %ifnarch %{jit_arches}
  524. LIBFFI_CFLAGS="`pkg-config --cflags libffi` " \
  525. LIBFFI_LIBS="-lffi " \
  526. ZERO_BUILD="true" \
  527. ZERO_LIBARCH="%{archbuild}" \
  528. ZERO_ARCHDEF="%{archdef}" \
  529. %ifarch ppc %{power64} s390 s390x
  530. ZERO_ENDIANNESS="big" \
  531. %else
  532. ZERO_ENDIANNESS="little" \
  533. ZERO_ARCHFLAG="-D_LITTLE_ENDIAN" \
  534. %endif
  535. %endif
  536. %{debugbuild}
  537. popd >& /dev/null
  538. %ifarch %{jit_arches}
  539. chmod 644 $(pwd)/%{buildoutputdir}/j2sdk-image/lib/sa-jdi.jar
  540. %endif
  541. export JAVA_HOME=$(pwd)/%{buildoutputdir}/j2sdk-image
  542. # Install java-abrt-luncher
  543. mkdir $JAVA_HOME/jre-abrt
  544. mkdir $JAVA_HOME/jre-abrt/bin
  545. mv $JAVA_HOME/jre/bin/java $JAVA_HOME/jre-abrt/bin/java
  546. ln -s %{_jvmdir}/%{sdkdir}/jre/lib $JAVA_HOME/jre-abrt/lib
  547. 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
  548. chmod 755 $JAVA_HOME/jre/bin/java
  549. # Install nss.cfg right away as we will be using the JRE above
  550. cp -a %{SOURCE8} $JAVA_HOME/jre/lib/security/
  551. sed -i -e s:@NSS_LIBDIR@:%{NSS_LIBDIR}:g $JAVA_HOME/jre/lib/security/nss.cfg
  552. # Build pulseaudio and install it to JDK build location
  553. %if %{with_pulseaudio}
  554. pushd pulseaudio
  555. make JAVA_HOME=$JAVA_HOME -f Makefile.pulseaudio
  556. cp -pPRf build/native/libpulse-java.so $JAVA_HOME/jre/lib/%{archinstall}/
  557. cp -pPRf build/pulse-java.jar $JAVA_HOME/jre/lib/ext/
  558. popd
  559. %endif
  560. # Copy tz.properties
  561. echo "sun.zoneinfo.dir=/usr/share/javazi" >> $JAVA_HOME/jre/lib/tz.properties
  562. #remove all fontconfig files. This change should be usptreamed soon
  563. rm -f %{buildoutputdir}/j2re-image/lib/fontconfig*.properties.src
  564. rm -f %{buildoutputdir}/j2re-image/lib/fontconfig*.bfc
  565. rm -f %{buildoutputdir}/j2sdk-image/jre/lib/fontconfig*.properties.src
  566. rm -f %{buildoutputdir}/j2sdk-image/jre/lib/fontconfig*.bfc
  567. rm -f %{buildoutputdir}/lib/fontconfig*.properties.src
  568. rm -f %{buildoutputdir}/lib/fontconfig*.bfc
  569. # Check unlimited policy has been used
  570. $JAVA_HOME/bin/javac -d . %{SOURCE12}
  571. $JAVA_HOME/bin/java TestCryptoLevel
  572. sh %{SOURCE11} ${JAVA_HOME}
  573. %install
  574. rm -rf $RPM_BUILD_ROOT
  575. STRIP_KEEP_SYMTAB=libjvm*
  576. # Install symlink to default soundfont
  577. install -d -m 755 $RPM_BUILD_ROOT%{_jvmdir}/%{jredir}/lib/audio
  578. pushd $RPM_BUILD_ROOT%{_jvmdir}/%{jredir}/lib/audio
  579. ln -s %{_datadir}/soundfonts/default.sf2
  580. popd
  581. pushd %{buildoutputdir}/j2sdk-image
  582. #install jsa directories so we can owe them
  583. mkdir -p $RPM_BUILD_ROOT%{_jvmdir}/%{jredir}/lib/%{archinstall}/server/
  584. mkdir -p $RPM_BUILD_ROOT%{_jvmdir}/%{jredir}/lib/%{archinstall}/client/
  585. # Install main files.
  586. install -d -m 755 $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir}
  587. cp -a jre-abrt bin include lib src.zip $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir}
  588. install -d -m 755 $RPM_BUILD_ROOT%{_jvmdir}/%{jredir}
  589. cp -a jre/bin jre/lib $RPM_BUILD_ROOT%{_jvmdir}/%{jredir}
  590. cp -a ASSEMBLY_EXCEPTION LICENSE THIRD_PARTY_README $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir}
  591. %ifarch %{jit_arches}
  592. # Install systemtap support files.
  593. install -dm 755 $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir}/tapset
  594. cp -a $RPM_BUILD_DIR/%{uniquesuffix}/tapset/*.stp $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir}/tapset/
  595. install -d -m 755 $RPM_BUILD_ROOT%{tapsetdir}
  596. pushd $RPM_BUILD_ROOT%{tapsetdir}
  597. RELATIVE=$(%{abs2rel} %{_jvmdir}/%{sdkdir}/tapset %{tapsetdir})
  598. ln -sf $RELATIVE/*.stp .
  599. popd
  600. %endif
  601. # Install cacerts symlink.
  602. rm -f $RPM_BUILD_ROOT%{_jvmdir}/%{jredir}/lib/security/cacerts
  603. pushd $RPM_BUILD_ROOT%{_jvmdir}/%{jredir}/lib/security
  604. RELATIVE=$(%{abs2rel} %{_sysconfdir}/pki/java \
  605. %{_jvmdir}/%{jredir}/lib/security)
  606. ln -sf $RELATIVE/cacerts .
  607. popd
  608. # Install extension symlinks.
  609. install -d -m 755 $RPM_BUILD_ROOT%{jvmjardir}
  610. pushd $RPM_BUILD_ROOT%{jvmjardir}
  611. RELATIVE=$(%{abs2rel} %{_jvmdir}/%{jredir}/lib %{jvmjardir})
  612. ln -sf $RELATIVE/jsse.jar jsse-%{version}.jar
  613. ln -sf $RELATIVE/jce.jar jce-%{version}.jar
  614. ln -sf $RELATIVE/rt.jar jndi-%{version}.jar
  615. ln -sf $RELATIVE/rt.jar jndi-ldap-%{version}.jar
  616. ln -sf $RELATIVE/rt.jar jndi-cos-%{version}.jar
  617. ln -sf $RELATIVE/rt.jar jndi-rmi-%{version}.jar
  618. ln -sf $RELATIVE/rt.jar jaas-%{version}.jar
  619. ln -sf $RELATIVE/rt.jar jdbc-stdext-%{version}.jar
  620. ln -sf jdbc-stdext-%{version}.jar jdbc-stdext-3.0.jar
  621. ln -sf $RELATIVE/rt.jar sasl-%{version}.jar
  622. for jar in *-%{version}.jar
  623. do
  624. if [ x%{version} != x%{javaver} ]
  625. then
  626. ln -sf $jar $(echo $jar | sed "s|-%{version}.jar|-%{javaver}.jar|g")
  627. fi
  628. ln -sf $jar $(echo $jar | sed "s|-%{version}.jar|.jar|g")
  629. done
  630. popd
  631. # Install JCE policy symlinks.
  632. install -d -m 755 $RPM_BUILD_ROOT%{_jvmprivdir}/%{uniquesuffix}/jce/vanilla
  633. # Install versioned symlinks.
  634. pushd $RPM_BUILD_ROOT%{_jvmdir}
  635. ln -sf %{jredir} %{jrelnk}
  636. popd
  637. pushd $RPM_BUILD_ROOT%{_jvmjardir}
  638. ln -sf %{sdkdir} %{jrelnk}
  639. popd
  640. # Remove javaws man page
  641. rm -f man/man1/javaws*
  642. # Install man pages.
  643. install -d -m 755 $RPM_BUILD_ROOT%{_mandir}/man1
  644. for manpage in man/man1/*
  645. do
  646. # Convert man pages to UTF8 encoding.
  647. iconv -f ISO_8859-1 -t UTF8 $manpage -o $manpage.tmp
  648. mv -f $manpage.tmp $manpage
  649. install -m 644 -p $manpage $RPM_BUILD_ROOT%{_mandir}/man1/$(basename \
  650. $manpage .1)-%{uniquesuffix}.1
  651. done
  652. # Install demos and samples.
  653. cp -a demo $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir}
  654. mkdir -p sample/rmi
  655. mv bin/java-rmi.cgi sample/rmi
  656. cp -a sample $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir}
  657. popd
  658. # Install Javadoc documentation.
  659. install -d -m 755 $RPM_BUILD_ROOT%{_javadocdir}
  660. cp -a %{buildoutputdir}/docs $RPM_BUILD_ROOT%{_javadocdir}/%{uniquejavadocdir}
  661. # Install icons and menu entries.
  662. for s in 16 24 32 48 ; do
  663. install -D -p -m 644 \
  664. openjdk/jdk/src/solaris/classes/sun/awt/X11/java-icon${s}.png \
  665. $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/${s}x${s}/apps/java-%{javaver}.png
  666. done
  667. # Install desktop files.
  668. install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/{applications,pixmaps}
  669. for e in %{SOURCE7} %{SOURCE77} ; do
  670. sed -i "s/#ARCH#/%{_arch}-%{release}/g" $e
  671. sed -i "s|/usr/bin|%{sdkbindir}/|g" $e
  672. desktop-file-install --vendor=%{uniquesuffix} --mode=644 \
  673. --dir=$RPM_BUILD_ROOT%{_datadir}/applications $e
  674. done
  675. # Install /etc/.java/.systemPrefs/ directory
  676. # See https://bugzilla.redhat.com/show_bug.cgi?id=741821
  677. mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/.java/.systemPrefs
  678. # Find JRE directories.
  679. find $RPM_BUILD_ROOT%{_jvmdir}/%{jredir} -type d \
  680. | grep -v jre/lib/security \
  681. | sed 's|'$RPM_BUILD_ROOT'|%dir |' \
  682. > %{name}.files-headless
  683. # Find JRE files.
  684. find $RPM_BUILD_ROOT%{_jvmdir}/%{jredir} -type f -o -type l \
  685. | grep -v jre/lib/security \
  686. | sed 's|'$RPM_BUILD_ROOT'||' \
  687. > %{name}.files.all
  688. #split %{name}.files to %{name}.files-headless and %{name}.files
  689. #see https://bugzilla.redhat.com/show_bug.cgi?id=875408
  690. NOT_HEADLESS=\
  691. "%{_jvmdir}/%{uniquesuffix}/jre/lib/%{archinstall}/libjsoundalsa.so
  692. %{_jvmdir}/%{uniquesuffix}/jre/lib/%{archinstall}/libpulse-java.so
  693. %{_jvmdir}/%{uniquesuffix}/jre/lib/%{archinstall}/libsplashscreen.so
  694. %{_jvmdir}/%{uniquesuffix}/jre/lib/%{archinstall}/xawt/libmawt.so
  695. %{_jvmdir}/%{uniquesuffix}/jre-abrt/lib/%{archinstall}/libjsoundalsa.so
  696. %{_jvmdir}/%{uniquesuffix}/jre-abrt/lib/%{archinstall}/libpulse-java.so
  697. %{_jvmdir}/%{uniquesuffix}/jre-abrt/lib/%{archinstall}/libsplashscreen.so
  698. %{_jvmdir}/%{uniquesuffix}/jre-abrt/lib/%{archinstall}/xawt/libmawt.so"
  699. #filter %{name}.files from %{name}.files.all to %{name}.files-headless
  700. ALL=`cat %{name}.files.all`
  701. for file in $ALL ; do
  702. INLCUDE="NO" ;
  703. for blacklist in $NOT_HEADLESS ; do
  704. #we can not match normally, because rpmbuild will evaluate !0 result as script failure
  705. q=`expr match "$file" "$blacklist"` || :
  706. l=`expr length "$blacklist"` || :
  707. if [ $q -eq $l ]; then
  708. INLCUDE="YES" ;
  709. fi;
  710. done
  711. if [ "x$INLCUDE" = "xNO" ]; then
  712. echo "$file" >> %{name}.files-headless
  713. else
  714. echo "$file" >> %{name}.files
  715. fi
  716. done
  717. # Find demo directories.
  718. find $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir}/demo \
  719. $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir}/sample -type d \
  720. | sed 's|'$RPM_BUILD_ROOT'|%dir |' \
  721. > %{name}-demo.files
  722. # FIXME: remove SONAME entries from demo DSOs. See
  723. # https://bugzilla.redhat.com/show_bug.cgi?id=436497
  724. # Find non-documentation demo files.
  725. find $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir}/demo \
  726. $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir}/sample \
  727. -type f -o -type l | sort \
  728. | grep -v README \
  729. | sed 's|'$RPM_BUILD_ROOT'||' \
  730. >> %{name}-demo.files
  731. # Find documentation demo files.
  732. find $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir}/demo \
  733. $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir}/sample \
  734. -type f -o -type l | sort \
  735. | grep README \
  736. | sed 's|'$RPM_BUILD_ROOT'||' \
  737. | sed 's|^|%doc |' \
  738. >> %{name}-demo.files
  739. # intentionally after the files generation, as it goes to separate package
  740. # Create links which leads to separately installed java-atk-bridge and allow configuration
  741. # links points to java-atk-wrapper - an dependence
  742. pushd $RPM_BUILD_ROOT/%{_jvmdir}/%{jredir}/lib/%{archinstall}
  743. ln -s %{syslibdir}/java-atk-wrapper/libatk-wrapper.so.0 libatk-wrapper.so
  744. popd
  745. pushd $RPM_BUILD_ROOT/%{_jvmdir}/%{jredir}/lib/ext
  746. ln -s %{syslibdir}/java-atk-wrapper/java-atk-wrapper.jar java-atk-wrapper.jar
  747. popd
  748. pushd $RPM_BUILD_ROOT/%{_jvmdir}/%{jredir}/lib/
  749. echo "#Config file to enable java-atk-wrapper" > accessibility.properties
  750. echo "" >> accessibility.properties
  751. echo "assistive_technologies=org.GNOME.Accessibility.AtkWrapper" >> accessibility.properties
  752. echo "" >> accessibility.properties
  753. popd
  754. %pretrans headless -p <lua>
  755. -- see https://bugzilla.redhat.com/show_bug.cgi?id=1038092 for whole issue
  756. local posix = require "posix"
  757. local currentjvm = "%{uniquesuffix}"
  758. local jvmdir = "%{_jvmdir}"
  759. local jvmDestdir = jvmdir
  760. local origname = "%{name}"
  761. local origjavaver = "%{javaver}"
  762. --trasnform substitute names to lua patterns
  763. --all percentages must be doubled for case of RPM escapingg
  764. local name = string.gsub(string.gsub(origname, "%%-", "%%%%-"), "%%.", "%%%%.")
  765. local javaver = string.gsub(origjavaver, "%%.", "%%%%.")
  766. local arch ="%{_arch}"
  767. local debug = false;
  768. local jvms = { }
  769. local caredFiles = {"jre/lib/calendars.properties",
  770. "jre/lib/content-types.properties",
  771. "jre/lib/flavormap.properties",
  772. "jre/lib/logging.properties",
  773. "jre/lib/net.properties",
  774. "jre/lib/psfontj2d.properties",
  775. "jre/lib/sound.properties",
  776. "jre/lib/tz.properties",
  777. "jre/lib/deployment.properties",
  778. "jre/lib/deployment.config",
  779. "jre/lib/security/US_export_policy.jar",
  780. "jre/lib/security/java.policy",
  781. "jre/lib/security/java.security",
  782. "jre/lib/security/local_policy.jar",
  783. "jre/lib/security/nss.cfg,",
  784. "jre/lib/ext"}
  785. function splitToTable(source, pattern)
  786. local i1 = string.gmatch(source, pattern)
  787. local l1 = {}
  788. for i in i1 do
  789. table.insert(l1, i)
  790. end
  791. return l1
  792. end
  793. if (debug) then
  794. print("started")
  795. end;
  796. foundJvms = posix.dir(jvmdir);
  797. if (foundJvms == nil) then
  798. if (debug) then
  799. print("no, or nothing in "..jvmdir.." exit")
  800. end;
  801. return
  802. end
  803. if (debug) then
  804. print("found "..#foundJvms.."jvms")
  805. end;
  806. for i,p in pairs(foundJvms) do
  807. -- regex similar to %{_jvmdir}/%{name}-%{javaver}*%{_arch} bash command
  808. --all percentages must be doubled for case of RPM escapingg
  809. if (string.find(p, name.."%%-"..javaver..".*"..arch) ~= nil ) then
  810. if (debug) then
  811. print("matched: "..p)
  812. end;
  813. table.insert(jvms, p)
  814. else
  815. if (debug) then
  816. print("NOT matched: "..p)
  817. end;
  818. end
  819. end
  820. if (#jvms <=0) then
  821. if (debug) then
  822. print("no matching jdk in "..jvmdir.." exit")
  823. end;
  824. return
  825. end;
  826. if (debug) then
  827. print("matched "..#jvms.." jdk in "..jvmdir)
  828. end;
  829. --full names are like java-1.7.0-openjdk-1.7.0.60-2.4.5.1.fc20.x86_64
  830. table.sort(jvms , function(a,b)
  831. -- version-sort
  832. -- split on non word: . -
  833. local l1 = splitToTable(a, "[^%.-]+")
  834. local l2 = splitToTable(b, "[^%.-]+")
  835. for x = 1, math.min(#l1, #l2) do
  836. local l1x = tonumber(l1[x])
  837. local l2x = tonumber(l2[x])
  838. if (l1x ~= nil and l2x ~= nil)then
  839. --if hunks are numbers, go with them
  840. if (l1x < l2x) then return true; end
  841. if (l1x > l2x) then return false; end
  842. else
  843. if (l1[x] < l2[x]) then return true; end
  844. if (l1[x] > l2[x]) then return false; end
  845. end
  846. -- if hunks are equals then move to another pair of hunks
  847. end
  848. return a<b
  849. end)
  850. if (debug) then
  851. print("sorted lsit of jvms")
  852. for i,file in pairs(jvms) do
  853. print(file)
  854. end
  855. end
  856. latestjvm = jvms[#jvms]
  857. for i,file in pairs(caredFiles) do
  858. local SOURCE=jvmdir.."/"..latestjvm.."/"..file
  859. local DEST=jvmDestdir.."/"..currentjvm.."/"..file
  860. if (debug) then
  861. print("going to copy "..SOURCE)
  862. print("to "..DEST)
  863. end;
  864. local stat1 = posix.stat(SOURCE, "type");
  865. if (stat1 ~= nil) then
  866. if (debug) then
  867. print(SOURCE.." exists")
  868. end;
  869. local s = ""
  870. local dirs = splitToTable(DEST, "[^/]+")
  871. for i,d in pairs(dirs) do
  872. if (i == #dirs) then
  873. break
  874. end
  875. s = s.."/"..d
  876. local stat2 = posix.stat(s, "type");
  877. if (stat2 == nil) then
  878. if (debug) then
  879. print(s.." does not exists, creating")
  880. end;
  881. posix.mkdir(s)
  882. else
  883. if (debug) then
  884. print(s.." exists,not creating")
  885. end;
  886. end
  887. end
  888. -- Copy with -a to keep everything intact
  889. local exe = "cp".." -ar "..SOURCE.." "..DEST
  890. if (debug) then
  891. print("executing "..exe)
  892. end;
  893. os.execute(exe)
  894. else
  895. if (debug) then
  896. print(SOURCE.." does not exists")
  897. end;
  898. end
  899. end
  900. %post
  901. update-desktop-database %{_datadir}/applications &> /dev/null || :
  902. /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
  903. exit 0
  904. # FIXME: identical binaries are copied, not linked. This needs to be
  905. # fixed upstream.
  906. %post headless
  907. %ifarch %{jit_arches}
  908. #see https://bugzilla.redhat.com/show_bug.cgi?id=513605
  909. %{jrebindir}/java -Xshare:dump >/dev/null 2>/dev/null
  910. %endif
  911. ext=.gz
  912. alternatives \
  913. --install %{_bindir}/java java %{jrebindir}/java %{priority} \
  914. --slave %{_jvmdir}/jre jre %{_jvmdir}/%{jredir} \
  915. --slave %{_jvmjardir}/jre jre_exports %{jvmjardir} \
  916. --slave %{_bindir}/keytool keytool %{jrebindir}/keytool \
  917. --slave %{_bindir}/orbd orbd %{jrebindir}/orbd \
  918. --slave %{_bindir}/pack200 pack200 %{jrebindir}/pack200 \
  919. --slave %{_bindir}/rmid rmid %{jrebindir}/rmid \
  920. --slave %{_bindir}/rmiregistry rmiregistry %{jrebindir}/rmiregistry \
  921. --slave %{_bindir}/servertool servertool %{jrebindir}/servertool \
  922. --slave %{_bindir}/tnameserv tnameserv %{jrebindir}/tnameserv \
  923. --slave %{_bindir}/unpack200 unpack200 %{jrebindir}/unpack200 \
  924. --slave %{_mandir}/man1/java.1$ext java.1$ext \
  925. %{_mandir}/man1/java-%{uniquesuffix}.1$ext \
  926. --slave %{_mandir}/man1/keytool.1$ext keytool.1$ext \
  927. %{_mandir}/man1/keytool-%{uniquesuffix}.1$ext \
  928. --slave %{_mandir}/man1/orbd.1$ext orbd.1$ext \
  929. %{_mandir}/man1/orbd-%{uniquesuffix}.1$ext \
  930. --slave %{_mandir}/man1/pack200.1$ext pack200.1$ext \
  931. %{_mandir}/man1/pack200-%{uniquesuffix}.1$ext \
  932. --slave %{_mandir}/man1/rmid.1$ext rmid.1$ext \
  933. %{_mandir}/man1/rmid-%{uniquesuffix}.1$ext \
  934. --slave %{_mandir}/man1/rmiregistry.1$ext rmiregistry.1$ext \
  935. %{_mandir}/man1/rmiregistry-%{uniquesuffix}.1$ext \
  936. --slave %{_mandir}/man1/servertool.1$ext servertool.1$ext \
  937. %{_mandir}/man1/servertool-%{uniquesuffix}.1$ext \
  938. --slave %{_mandir}/man1/tnameserv.1$ext tnameserv.1$ext \
  939. %{_mandir}/man1/tnameserv-%{uniquesuffix}.1$ext \
  940. --slave %{_mandir}/man1/unpack200.1$ext unpack200.1$ext \
  941. %{_mandir}/man1/unpack200-%{uniquesuffix}.1$ext
  942. for X in %{origin} %{javaver} ; do
  943. alternatives \
  944. --install %{_jvmdir}/jre-"$X" \
  945. jre_"$X" %{_jvmdir}/%{jredir} %{priority} \
  946. --slave %{_jvmjardir}/jre-"$X" \
  947. jre_"$X"_exports %{jvmjardir}
  948. done
  949. update-alternatives --install %{_jvmdir}/jre-%{javaver}-%{origin} jre_%{javaver}_%{origin} %{_jvmdir}/%{jrelnk} %{priority} \
  950. --slave %{_jvmjardir}/jre-%{javaver} jre_%{javaver}_%{origin}_exports %{jvmjardir}
  951. exit 0
  952. %postun
  953. update-desktop-database %{_datadir}/applications &> /dev/null || :
  954. if [ $1 -eq 0 ] ; then
  955. /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null
  956. /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
  957. fi
  958. exit 0
  959. %postun headless
  960. alternatives --remove java %{jrebindir}/java
  961. alternatives --remove jre_%{origin} %{_jvmdir}/%{jredir}
  962. alternatives --remove jre_%{javaver} %{_jvmdir}/%{jredir}
  963. alternatives --remove jre_%{javaver}_%{origin} %{_jvmdir}/%{jrelnk}
  964. # avoid unnecessary failure
  965. if [ -e %{_jvmdir}/%{uniquesuffix} ] ; then
  966. # as lua copied all necessary config files, we do not wont the double rpmnew and rpm.save
  967. rm -rf %{_jvmdir}/%{uniquesuffix}
  968. fi
  969. exit 0
  970. %posttrans
  971. /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
  972. %post devel
  973. ext=.gz
  974. alternatives \
  975. --install %{_bindir}/javac javac %{sdkbindir}/javac %{priority} \
  976. --slave %{_jvmdir}/java java_sdk %{_jvmdir}/%{sdkdir} \
  977. --slave %{_jvmjardir}/java java_sdk_exports %{_jvmjardir}/%{sdkdir} \
  978. --slave %{_bindir}/appletviewer appletviewer %{sdkbindir}/appletviewer \
  979. --slave %{_bindir}/apt apt %{sdkbindir}/apt \
  980. --slave %{_bindir}/extcheck extcheck %{sdkbindir}/extcheck \
  981. --slave %{_bindir}/idlj idlj %{sdkbindir}/idlj \
  982. --slave %{_bindir}/jar jar %{sdkbindir}/jar \
  983. --slave %{_bindir}/jarsigner jarsigner %{sdkbindir}/jarsigner \
  984. --slave %{_bindir}/javadoc javadoc %{sdkbindir}/javadoc \
  985. --slave %{_bindir}/javah javah %{sdkbindir}/javah \
  986. --slave %{_bindir}/javap javap %{sdkbindir}/javap \
  987. --slave %{_bindir}/jcmd jcmd %{sdkbindir}/jcmd \
  988. --slave %{_bindir}/jconsole jconsole %{sdkbindir}/jconsole \
  989. --slave %{_bindir}/jdb jdb %{sdkbindir}/jdb \
  990. --slave %{_bindir}/jhat jhat %{sdkbindir}/jhat \
  991. --slave %{_bindir}/jinfo jinfo %{sdkbindir}/jinfo \
  992. --slave %{_bindir}/jmap jmap %{sdkbindir}/jmap \
  993. --slave %{_bindir}/jps jps %{sdkbindir}/jps \
  994. --slave %{_bindir}/jrunscript jrunscript %{sdkbindir}/jrunscript \
  995. --slave %{_bindir}/jsadebugd jsadebugd %{sdkbindir}/jsadebugd \
  996. --slave %{_bindir}/jstack jstack %{sdkbindir}/jstack \
  997. --slave %{_bindir}/jstat jstat %{sdkbindir}/jstat \
  998. --slave %{_bindir}/jstatd jstatd %{sdkbindir}/jstatd \
  999. --slave %{_bindir}/native2ascii native2ascii %{sdkbindir}/native2ascii \
  1000. --slave %{_bindir}/policytool policytool %{sdkbindir}/policytool \
  1001. --slave %{_bindir}/rmic rmic %{sdkbindir}/rmic \
  1002. --slave %{_bindir}/schemagen schemagen %{sdkbindir}/schemagen \
  1003. --slave %{_bindir}/serialver serialver %{sdkbindir}/serialver \
  1004. --slave %{_bindir}/wsgen wsgen %{sdkbindir}/wsgen \
  1005. --slave %{_bindir}/wsimport wsimport %{sdkbindir}/wsimport \
  1006. --slave %{_bindir}/xjc xjc %{sdkbindir}/xjc \
  1007. --slave %{_mandir}/man1/appletviewer.1$ext appletviewer.1$ext \
  1008. %{_mandir}/man1/appletviewer-%{uniquesuffix}.1$ext \
  1009. --slave %{_mandir}/man1/apt.1$ext apt.1$ext \
  1010. %{_mandir}/man1/apt-%{uniquesuffix}.1$ext \
  1011. --slave %{_mandir}/man1/extcheck.1$ext extcheck.1$ext \
  1012. %{_mandir}/man1/extcheck-%{uniquesuffix}.1$ext \
  1013. --slave %{_mandir}/man1/jar.1$ext jar.1$ext \
  1014. %{_mandir}/man1/jar-%{uniquesuffix}.1$ext \
  1015. --slave %{_mandir}/man1/jarsigner.1$ext jarsigner.1$ext \
  1016. %{_mandir}/man1/jarsigner-%{uniquesuffix}.1$ext \
  1017. --slave %{_mandir}/man1/javac.1$ext javac.1$ext \
  1018. %{_mandir}/man1/javac-%{uniquesuffix}.1$ext \
  1019. --slave %{_mandir}/man1/javadoc.1$ext javadoc.1$ext \
  1020. %{_mandir}/man1/javadoc-%{uniquesuffix}.1$ext \
  1021. --slave %{_mandir}/man1/javah.1$ext javah.1$ext \
  1022. %{_mandir}/man1/javah-%{uniquesuffix}.1$ext \
  1023. --slave %{_mandir}/man1/javap.1$ext javap.1$ext \
  1024. %{_mandir}/man1/javap-%{uniquesuffix}.1$ext \
  1025. --slave %{_mandir}/man1/jconsole.1$ext jconsole.1$ext \
  1026. %{_mandir}/man1/jconsole-%{uniquesuffix}.1$ext \
  1027. --slave %{_mandir}/man1/jdb.1$ext jdb.1$ext \
  1028. %{_mandir}/man1/jdb-%{uniquesuffix}.1$ext \
  1029. --slave %{_mandir}/man1/jhat.1$ext jhat.1$ext \
  1030. %{_mandir}/man1/jhat-%{uniquesuffix}.1$ext \
  1031. --slave %{_mandir}/man1/jinfo.1$ext jinfo.1$ext \
  1032. %{_mandir}/man1/jinfo-%{uniquesuffix}.1$ext \
  1033. --slave %{_mandir}/man1/jmap.1$ext jmap.1$ext \
  1034. %{_mandir}/man1/jmap-%{uniquesuffix}.1$ext \
  1035. --slave %{_mandir}/man1/jps.1$ext jps.1$ext \
  1036. %{_mandir}/man1/jps-%{uniquesuffix}.1$ext \
  1037. --slave %{_mandir}/man1/jrunscript.1$ext jrunscript.1$ext \
  1038. %{_mandir}/man1/jrunscript-%{uniquesuffix}.1$ext \
  1039. --slave %{_mandir}/man1/jsadebugd.1$ext jsadebugd.1$ext \
  1040. %{_mandir}/man1/jsadebugd-%{uniquesuffix}.1$ext \
  1041. --slave %{_mandir}/man1/jstack.1$ext jstack.1$ext \
  1042. %{_mandir}/man1/jstack-%{uniquesuffix}.1$ext \
  1043. --slave %{_mandir}/man1/jstat.1$ext jstat.1$ext \
  1044. %{_mandir}/man1/jstat-%{uniquesuffix}.1$ext \
  1045. --slave %{_mandir}/man1/jstatd.1$ext jstatd.1$ext \
  1046. %{_mandir}/man1/jstatd-%{uniquesuffix}.1$ext \
  1047. --slave %{_mandir}/man1/native2ascii.1$ext native2ascii.1$ext \
  1048. %{_mandir}/man1/native2ascii-%{uniquesuffix}.1$ext \
  1049. --slave %{_mandir}/man1/policytool.1$ext policytool.1$ext \
  1050. %{_mandir}/man1/policytool-%{uniquesuffix}.1$ext \
  1051. --slave %{_mandir}/man1/rmic.1$ext rmic.1$ext \
  1052. %{_mandir}/man1/rmic-%{uniquesuffix}.1$ext \
  1053. --slave %{_mandir}/man1/schemagen.1$ext schemagen.1$ext \
  1054. %{_mandir}/man1/schemagen-%{uniquesuffix}.1$ext \
  1055. --slave %{_mandir}/man1/serialver.1$ext serialver.1$ext \
  1056. %{_mandir}/man1/serialver-%{uniquesuffix}.1$ext \
  1057. --slave %{_mandir}/man1/wsgen.1$ext wsgen.1$ext \
  1058. %{_mandir}/man1/wsgen-%{uniquesuffix}.1$ext \
  1059. --slave %{_mandir}/man1/wsimport.1$ext wsimport.1$ext \
  1060. %{_mandir}/man1/wsimport-%{uniquesuffix}.1$ext \
  1061. --slave %{_mandir}/man1/xjc.1$ext xjc.1$ext \
  1062. %{_mandir}/man1/xjc-%{uniquesuffix}.1$ext
  1063. for X in %{origin} %{javaver} ; do
  1064. alternatives \
  1065. --install %{_jvmdir}/java-"$X" \
  1066. java_sdk_"$X" %{_jvmdir}/%{sdkdir} %{priority} \
  1067. --slave %{_jvmjardir}/java-"$X" \
  1068. java_sdk_"$X"_exports %{_jvmjardir}/%{sdkdir}
  1069. done
  1070. update-alternatives --install %{_jvmdir}/java-%{javaver}-%{origin} java_sdk_%{javaver}_%{origin} %{_jvmdir}/%{sdkdir} %{priority} \
  1071. --slave %{_jvmjardir}/java-%{javaver}-%{origin} java_sdk_%{javaver}_%{origin}_exports %{_jvmjardir}/%{sdkdir}
  1072. update-desktop-database %{_datadir}/applications &> /dev/null || :
  1073. /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
  1074. exit 0
  1075. %postun devel
  1076. alternatives --remove javac %{sdkbindir}/javac
  1077. alternatives --remove java_sdk_%{origin} %{_jvmdir}/%{sdkdir}
  1078. alternatives --remove java_sdk_%{javaver} %{_jvmdir}/%{sdkdir}
  1079. alternatives --remove java_sdk_%{javaver}_%{origin} %{_jvmdir}/%{sdkdir}
  1080. update-desktop-database %{_datadir}/applications &> /dev/null || :
  1081. if [ $1 -eq 0 ] ; then
  1082. /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null
  1083. /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
  1084. fi
  1085. exit 0
  1086. %posttrans devel
  1087. /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
  1088. %post javadoc
  1089. alternatives \
  1090. --install %{_javadocdir}/java javadocdir %{_javadocdir}/%{uniquejavadocdir}/api \
  1091. %{priority}
  1092. exit 0
  1093. %postun javadoc
  1094. alternatives --remove javadocdir %{_javadocdir}/%{uniquejavadocdir}/api
  1095. exit 0
  1096. %files -f %{name}.files
  1097. %{_datadir}/icons/hicolor/*x*/apps/java-%{javaver}.png
  1098. %files headless -f %{name}.files-headless
  1099. %defattr(-,root,root,-)
  1100. %doc %{_jvmdir}/%{sdkdir}/ASSEMBLY_EXCEPTION
  1101. %doc %{_jvmdir}/%{sdkdir}/LICENSE
  1102. %doc %{_jvmdir}/%{sdkdir}/THIRD_PARTY_README
  1103. %dir %{_jvmdir}/%{sdkdir}
  1104. %{_jvmdir}/%{jrelnk}
  1105. %{_jvmjardir}/%{jrelnk}
  1106. %{_jvmprivdir}/*
  1107. %{jvmjardir}
  1108. %dir %{_jvmdir}/%{jredir}/lib/security
  1109. %{_jvmdir}/%{jredir}/lib/security/cacerts
  1110. %config(noreplace) %{_jvmdir}/%{jredir}/lib/security/US_export_policy.jar
  1111. %config(noreplace) %{_jvmdir}/%{jredir}/lib/security/local_policy.jar
  1112. %config(noreplace) %{_jvmdir}/%{jredir}/lib/security/java.policy
  1113. %config(noreplace) %{_jvmdir}/%{jredir}/lib/security/java.security
  1114. %config(noreplace) %{_jvmdir}/%{jredir}/lib/logging.properties
  1115. %{_mandir}/man1/java-%{uniquesuffix}.1*
  1116. %{_mandir}/man1/keytool-%{uniquesuffix}.1*
  1117. %{_mandir}/man1/orbd-%{uniquesuffix}.1*
  1118. %{_mandir}/man1/pack200-%{uniquesuffix}.1*
  1119. %{_mandir}/man1/rmid-%{uniquesuffix}.1*
  1120. %{_mandir}/man1/rmiregistry-%{uniquesuffix}.1*
  1121. %{_mandir}/man1/servertool-%{uniquesuffix}.1*
  1122. %{_mandir}/man1/tnameserv-%{uniquesuffix}.1*
  1123. %{_mandir}/man1/unpack200-%{uniquesuffix}.1*
  1124. %config(noreplace) %{_jvmdir}/%{jredir}/lib/security/nss.cfg
  1125. %{_jvmdir}/%{jredir}/lib/audio/
  1126. %ifarch %{jit_arches}
  1127. %attr(664, root, root) %ghost %{_jvmdir}/%{jredir}/lib/%{archinstall}/server/classes.jsa
  1128. %attr(664, root, root) %ghost %{_jvmdir}/%{jredir}/lib/%{archinstall}/client/classes.jsa
  1129. %endif
  1130. %{_jvmdir}/%{jredir}/lib/%{archinstall}/server/
  1131. %{_jvmdir}/%{jredir}/lib/%{archinstall}/client/
  1132. %{_sysconfdir}/.java/
  1133. %{_jvmdir}/%{sdkdir}/jre-abrt
  1134. %files devel
  1135. %defattr(-,root,root,-)
  1136. %doc %{_jvmdir}/%{sdkdir}/ASSEMBLY_EXCEPTION
  1137. %doc %{_jvmdir}/%{sdkdir}/LICENSE
  1138. %doc %{_jvmdir}/%{sdkdir}/THIRD_PARTY_README
  1139. %dir %{_jvmdir}/%{sdkdir}/bin
  1140. %dir %{_jvmdir}/%{sdkdir}/include
  1141. %dir %{_jvmdir}/%{sdkdir}/lib
  1142. %ifarch %{jit_arches}
  1143. %dir %{_jvmdir}/%{sdkdir}/tapset
  1144. %endif
  1145. %{_jvmdir}/%{sdkdir}/bin/*
  1146. %{_jvmdir}/%{sdkdir}/include/*
  1147. %{_jvmdir}/%{sdkdir}/lib/*
  1148. %ifarch %{jit_arches}
  1149. %{_jvmdir}/%{sdkdir}/tapset/*.stp
  1150. %endif
  1151. %{_jvmjardir}/%{sdkdir}
  1152. %{_datadir}/applications/*jconsole.desktop
  1153. %{_datadir}/applications/*policytool.desktop
  1154. %{_mandir}/man1/appletviewer-%{uniquesuffix}.1*
  1155. %{_mandir}/man1/apt-%{uniquesuffix}.1*
  1156. %{_mandir}/man1/extcheck-%{uniquesuffix}.1*
  1157. %{_mandir}/man1/idlj-%{uniquesuffix}.1*
  1158. %{_mandir}/man1/jar-%{uniquesuffix}.1*
  1159. %{_mandir}/man1/jarsigner-%{uniquesuffix}.1*
  1160. %{_mandir}/man1/javac-%{uniquesuffix}.1*
  1161. %{_mandir}/man1/javadoc-%{uniquesuffix}.1*
  1162. %{_mandir}/man1/javah-%{uniquesuffix}.1*
  1163. %{_mandir}/man1/javap-%{uniquesuffix}.1*
  1164. %{_mandir}/man1/jconsole-%{uniquesuffix}.1*
  1165. %{_mandir}/man1/jcmd-%{uniquesuffix}.1*
  1166. %{_mandir}/man1/jdb-%{uniquesuffix}.1*
  1167. %{_mandir}/man1/jhat-%{uniquesuffix}.1*
  1168. %{_mandir}/man1/jinfo-%{uniquesuffix}.1*
  1169. %{_mandir}/man1/jmap-%{uniquesuffix}.1*
  1170. %{_mandir}/man1/jps-%{uniquesuffix}.1*
  1171. %{_mandir}/man1/jrunscript-%{uniquesuffix}.1*
  1172. %{_mandir}/man1/jsadebugd-%{uniquesuffix}.1*
  1173. %{_mandir}/man1/jstack-%{uniquesuffix}.1*
  1174. %{_mandir}/man1/jstat-%{uniquesuffix}.1*
  1175. %{_mandir}/man1/jstatd-%{uniquesuffix}.1*
  1176. %{_mandir}/man1/native2ascii-%{uniquesuffix}.1*
  1177. %{_mandir}/man1/policytool-%{uniquesuffix}.1*
  1178. %{_mandir}/man1/rmic-%{uniquesuffix}.1*
  1179. %{_mandir}/man1/schemagen-%{uniquesuffix}.1*
  1180. %{_mandir}/man1/serialver-%{uniquesuffix}.1*
  1181. %{_mandir}/man1/wsgen-%{uniquesuffix}.1*
  1182. %{_mandir}/man1/wsimport-%{uniquesuffix}.1*
  1183. %{_mandir}/man1/xjc-%{uniquesuffix}.1*
  1184. %ifarch %{jit_arches}
  1185. %{tapsetroot}
  1186. %endif
  1187. %files demo -f %{name}-demo.files
  1188. %defattr(-,root,root,-)
  1189. %doc %{_jvmdir}/%{sdkdir}/LICENSE
  1190. %files src
  1191. %defattr(-,root,root,-)
  1192. %doc README.src
  1193. %{_jvmdir}/%{sdkdir}/src.zip
  1194. %files javadoc
  1195. %defattr(-,root,root,-)
  1196. %doc %{_javadocdir}/%{uniquejavadocdir}
  1197. %doc %{buildoutputdir}/j2sdk-image/jre/LICENSE
  1198. %files accessibility
  1199. %{_jvmdir}/%{jredir}/lib/%{archinstall}/libatk-wrapper.so
  1200. %{_jvmdir}/%{jredir}/lib/ext/java-atk-wrapper.jar
  1201. %{_jvmdir}/%{jredir}/lib/accessibility.properties
  1202. %changelog
  1203. * Mon Jul 14 2014 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 1.7.0.55-2.4.7.3
  1204. - replaced most of stuff with specfile of RHEL7.
  1205. * Fri May 30 2014 Andrew John Hughes <gnu.andrew@redhat.com> - 1.7.0.55-2.4.7.2
  1206. - Remove NSS patches. Issues with PKCS11 provider mean it shouldn't be enabled.
  1207. - Always setup nss.cfg and depend on nss-devel at build-time to do so.
  1208. - This allows users who wish to use PKCS11+NSS to just add it to java.security.
  1209. - Patches to PKCS11 provider will be included upstream in 2.4.8 (ETA July 2014)
  1210. - Resolves: rhbz#1099565
  1211. * Tue May 20 2014 Jiri Vanek <jvanek@redhat.com> - 1.7.0.55-2.4.7.0.el7
  1212. - bumped to future icedtea-forest 2.4.7
  1213. - updatever set to 55, buildver se to 13, release reset to 0
  1214. - removed upstreamed patch402 gstackbounds.patch
  1215. - removed Requires: rhino, BuildRequires is enough
  1216. - ppc64 repalced by power64 macro
  1217. - patch111 applied as dry-run (6.6 forward port)
  1218. - nss enabled, but notused as default (6.6 forward port)
  1219. - Resolves: rhbz#1099565
  1220. * Fri Apr 04 2014 Jiri Vanek <jvanek@redhat.com> - 1.7.0.51-2.4.5.5.el7
  1221. - added OrderWithRequires on headless where possible
  1222. - Resolves: rhbz#1038092
  1223. * Thu Mar 27 2014 Jiri Vanek <jvanek@redhat.com> - 1.7.0.51-2.4.5.3.el7
  1224. - synced lua script from fedora.
  1225. - Resolves: rhbz#1038092
  1226. * Fri Mar 14 2014 Jiri Vanek <jvanek@redhat.com> - 1.7.0.51-2.4.5.2.el7
  1227. - added fstack-protector-strong to CFLAGS
  1228. - Resolves: rhbz#1070816
  1229. * Thu Mar 06 2014 Jiri Vanek <jvanek@redhat.com> - 1.7.0.51-2.4.5.1.el7
  1230. - diabled NSS. Missuisng 1038092 for it as it is in hurry.
  1231. - Related: rhbz#1038092
  1232. * Thu Jan 30 2014 Jiri Vanek <jvanek@redhat.com> - 1.7.0.51-2.4.5.0.el7
  1233. - updated to icedtea 2.4.5 + sync with f21
  1234. - http://blog.fuseyism.com/index.php/2014/01/29/icedtea-2-4-5-released/
  1235. - removed buildRequires: pulseaudio >= 0.9.11, as not neccessary
  1236. - but kept libs-devel)
  1237. - removed upstreamed or unwonted patches (thanx to gnu_andrew to pointing them out)
  1238. - patch410 1015432.patch (upstreamed)
  1239. - patch411 1029588.patch
  1240. - patch412 zero-x32.diff
  1241. - patch104 java-1.7.0-ppc-zero-jdk.patch
  1242. - patch105 java-1.7.0-ppc-zero-hotspot.patch
  1243. - patch402 gstackbounds.patch and patch403 PStack-808293.patch applied always
  1244. (again thanx to gnu_andrew)
  1245. - merged other gnu_andrew's changes
  1246. - FT2_CFLAGS and FT2_LIBS hardoced values replaced by correct pkg-config calls
  1247. - buildver bumbed to 31
  1248. - added build requires nss-devel
  1249. - removed build requires mercurial
  1250. - added JRE_RELEASE_VERSION and ALT_PARALLEL_COMPILE_JOBS into make call
  1251. - Related: rhbz1038092
  1252. * Tue Jan 28 2014 Daniel Mach <dmach@redhat.com> - 1.7.0.51-2.4.4.1
  1253. - Mass rebuild 2014-01-24
  1254. * Fri Jan 10 2014 Jiri Vanek <jvanek@redhat.com> - 1.7.0.51-2.4.4.0.el7
  1255. - updated to security icedtea 2.4.4
  1256. - icedtea_version set to 2.4.4
  1257. - updatever bumped to 51
  1258. - release reset to 0
  1259. - sync with fedora
  1260. - added and applied patch411 1029588.patch (rh 1029588)
  1261. - added aand applied patch410, 1015432 (rh 1015432)
  1262. - and so removed patch121 FixPPC64StackOverflow.patch
  1263. - added patch412 zero-x32.diff to try to fix zero builds build
  1264. - Resolves: rhbz#1053280
  1265. * Fri Dec 27 2013 Daniel Mach <dmach@redhat.com> - 1.7.0.45-2.4.3.5.el7
  1266. - Mass rebuild 2013-12-27
  1267. * Thu Oct 31 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.40-2.4.3.4.fel7
  1268. - Removed obsoletes for java-1.6.0-openjdk* , until decided its presence in el7
  1269. - Resolves:rhbz#1018680
  1270. * Thu Oct 31 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.40-2.4.3.3.fel7
  1271. - just bumped release, need to confirm, that patch121, FixPPC64StackOverflow.patch
  1272. really works
  1273. - Resolves:rhbz#1018680
  1274. * Wed Oct 16 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.40-2.4.3.2.fel7
  1275. - added and applied patch121, FixPPC64StackOverflow.patch
  1276. - all redundant ppc64 strings replaced by power64 macro
  1277. - Resolves:rhbz#1018680
  1278. * Wed Oct 16 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.40-2.4.3.1.fel7
  1279. - updated to new CPU sources 2.4.3
  1280. - Resolves:rhbz#1018680
  1281. * Mon Oct 14 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.40-2.4.3.0.fel7
  1282. - updated to latest CPU sources 2.4.3
  1283. - Resolves:rhbz#1018680
  1284. * Mon Oct 14 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.40-2.4.2.12.fel7
  1285. - jdk splitted to headless and rest
  1286. - Resolves:rhbz#875408
  1287. * Fri Oct 04 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.40-2.4.2.11.fel7
  1288. - another tapset fix
  1289. - Resolves:rhbz#875408
  1290. * Fri Oct 04 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.40-2.4.2.10.fel7
  1291. - abrt changed to soft dependece
  1292. - Resolves:rhbz#875408
  1293. * Thu Oct 03 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.40-2.4.2.9.el7
  1294. - renamed tapset source to be "versioned"
  1295. - improved agent placement
  1296. - Resolves:rhbz#875408
  1297. * Wed Oct 02 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.40-2.4.2.8.el7
  1298. - updated tapset to current head (825824)
  1299. - Resolves:rhbz#875408
  1300. * Tue Oct 01 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.40-2.4.2.7.el7
  1301. - fixed incorrect _jvmdir/jre-javaver_origin to _jvmdir/jre-javaver-origin link
  1302. - Resolves:rhbz#875408
  1303. * Tue Oct 01 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.40-2.4.2.6.el7
  1304. - syncing with f20 - abrt connector
  1305. - Resolves:rhbz#875408
  1306. * Tue Oct 01 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.40-2.4.2.3.el7
  1307. - syncing with f19/rhel-6.5
  1308. - Resolves:rhbz#875408
  1309. * Wed Aug 07 2013 Deepak Bhole <dbhole@redhat.com> - 1.7.0.25-2.3.12.3.el7
  1310. - Removed obsoletes for java-1.6.0-openjdk*
  1311. * Fri Jul 26 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.25-2.3.12.2.el7
  1312. - refreshed icedtea7-forest 2.3.12
  1313. - fix broken jre_exports alternatives links (thanx to orion bug #979128)
  1314. * Thu Jul 25 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.25-2.3.11.0.el7
  1315. - added new alternatives jre-1.7.0-openjdk and java-1.7.0-openjdk
  1316. - finally merged arm and main source tarballs
  1317. - updated to icedtea 2.3.11
  1318. - http://blog.fuseyism.com/index.php/2013/07/25/icedtea-2-3-11-released/
  1319. - added removal of new jre-1.7.0-openjdk and java-1.7.0-openjdk alternatives
  1320. - removed patch 400, rhino for 2.1 and other 2.1 conditional stuff
  1321. - removed patch 103 arm-fixes.patch
  1322. - removed "dir" from files which was duplicating jre in sdk
  1323. * Fri Jul 19 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.25-2.3.10.6.el7
  1324. - jrelnk is now just lnk, everything is pointing through jredir
  1325. * Thu Jul 18 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.25-2.3.10.6.el7
  1326. - minor cleaning
  1327. - sdklnk removed, and substitued by sdkdir
  1328. * Wed Jul 03 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.25-2.3.10.5.fel7
  1329. - moved to xz compression of sources
  1330. - updated 2.1 tarball
  1331. * Thu Jun 27 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.25-2.3.10.4.el7
  1332. - Sync with upstream IcedTea7-forest 2.3.10 tag
  1333. - Fixes regressions as introduced with 1.7.0.25-2.3.10.3.el6:
  1334. rhbz#978005, rhbz#977979, rhbz#976693, IcedTeaBZ#1487.
  1335. - all patch commands repalced by patch macro
  1336. - updated java-1.7.0-openjdk-ppc-zero-hotspot.patch to pass without loose patching
  1337. * Wed Jun 19 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.25-2.3.10.3.el7
  1338. - update of IcedTea7-forest 2.3.10 tarball
  1339. - removed patch1000 MBeanFix.patch to fix regressions caused by security patches
  1340. * Thu Jun 13 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.25-2.3.10.2.el7
  1341. - added patch1000 MBeanFix.patch to fix regressions caused by security patches
  1342. * Thu Jun 13 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.25-2.3.10.1.el7
  1343. - arm tarball updated to 2.1.9
  1344. - build bumped to 25
  1345. * Wed Jun 12 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.19-2.3.10.0.el7
  1346. - fixed RH972717 by enabling patch110 java-1.7.0-openjdk-nss-icedtea-e9c857dcb964.patch
  1347. - temporarly swithced to intree lcms as it have security fixes (patch 500)
  1348. - added GENSRCDIR="$PWD/generated.build" to be able to
  1349. - removed (build)requires lcms2(-devel)
  1350. - Updated to latest IcedTea7-forest 2.3.10
  1351. * Wed Jun 05 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.19-2.3.9.14.fc19
  1352. - Added client/server directories so they can be owned
  1353. - Renamed patch 107 to 200
  1354. - Added nss support from 6.5
  1355. - Added fix for RH857717, owned /etc/.java/ and /etc/.java/.systemPrefs
  1356. - Removed ant-nodeps, should not be needed
  1357. * Tue May 28 2013 Jiri Vanek <jvanek@redhat.com> - 1.7.0.19-2.3.9.13.el7
  1358. - javadoc put into fully versioned directory, but without arch (to be kept noarch)
  1359. - uniquejavadocdir
  1360. - updated to latest 2.3.9 tarball - fixing the rhbz#967436
  1361. * Mon May 27 2013 Omair Majid <omajid@redhat.com> - 1.7.0.19-2.3.9.12.el7
  1362. - Allowed multiple OpenJDKs to be installed in parallel
  1363. - Removed archname
  1364. - Added arch to all, not only multilib arches
  1365. - uniquesuffix is now holding fully versioned name
  1366. - Intorduced source11 remove-buildids.sh
  1367. * Fri May 17 2013 Omair Majid <omajid@redhat.com> - 1.7.0.19-2.3.9.12.el7
  1368. - Replace %{name} with %{uniquesuffix} where it's used as a unique suffix.
  1369. * Thu May 16 2013 Jiri Vanek <jvanek@redhat.com>
  1370. - added variable arm_arches as restriction to some cases of not jit_arches
  1371. * Tue May 14 2013 Jiri Vanek <jvanek@redhat.com>
  1372. - patch402 gstackbounds.patch applied only to jit arches
  1373. - patch403 PStack-808293.patch likewise
  1374. * Mon May 13 2013 Jiri Vanek <jvanek@redhat.com>
  1375. - initial, not buildable, sync with f19
  1376. * Tue Mar 12 2013 Daisuke SUZUKI <daisuke@linux.or.jp> 1.7.0.9-2.3.8.1
  1377. - update to icedtea7 2.3.8
  1378. * Sun Jul 22 2012 Daisuke SUZUKI <daisuke@linux.or.jp> 1.7.0.5-2.2.1.1
  1379. - initial build for Vine Linux
  1380. * Mon Jul 09 2012 Deepak Bhole <dbhole@redhat.com> - 1.7.0.5-2.2.1.fc18.9
  1381. - Added support to build older (2.1.1/u3/hs22) version on non-jit (secondary)
  1382. arches
  1383. * Wed Jun 13 2012 jiri Vanek <jvanek@redhat.com> - 1.7.0.3-2.2.1fc18.8
  1384. - Fixed broken provides sections
  1385. - Changed java-devel requirement to be self's devel (java-1.7.0-openjdk-devel)
  1386. * Mon Jun 11 2012 jiri Vanek <jvanek@redhat.com> - 1.7.0.3-2.2.1fc18.7
  1387. - Used newly prepared tarball with security fixes
  1388. - Bump to icedtea7-forest-2.2.1
  1389. - _mandir/man1/jcmd-name.1 added to alternatives
  1390. - Updated rhino.patch
  1391. - Modified partially upstreamed patch302 - systemtap.patch
  1392. - Temporarly disabled patch102 - java-1.7.0-openjdk-size_t.patch
  1393. - Removed already upstreamed patches 104,107,108,301
  1394. - java-1.7.0-openjdk-arm-ftbfs.patch
  1395. - java-1.7.0-openjdk-system-zlib.patch
  1396. - java-1.7.0-openjdk-remove-mimpure-opt.patch
  1397. - systemtap-alloc-size-workaround.patch
  1398. - patch 105 (java-1.7.0-openjdk-ppc-zero-jdk.patch) have become 104
  1399. - patch 106 (java-1.7.0-openjdk-ppc-zero-hotspot.patch) have become 105
  1400. - Added build requires zip, which was untill now dependence of dependence
  1401. - Access gnome brridge jar forced to be 644
  1402. * Fri May 25 2012 Deepak Bhole <dbhole@redhat.com> - 1.7.0.3-2.1.fc17.7
  1403. - Miscellaneous fixes brought in from RHEL branch
  1404. - Resolves: rhbz#825255: Added ALT_STRIP_POLICY so that debug info is not stripped
  1405. - Moved Patch #7 (usage of system zlib) to #107
  1406. * Tue May 01 2012 Deepak Bhole <dbhole@redhat.com> - 1.7.0.3-2.1.fc17.6
  1407. - Removed VisualVM requirements
  1408. - Obsoleted java-1.6.0-openjdk*
  1409. - Added BR for zip
  1410. * Mon Mar 26 2012 Deepak Bhole <dbhole@redhat.com> - 1.7.0.3-2.1.fc17.5
  1411. - Added SystemTap fixes by Mark Wielaard
  1412. * Sat Mar 24 2012 Dan Horák <dan[at]danny.cz>> - 1.7.0.3-2.1.fc17.4
  1413. - update paths in the ppc patches, add missing snippet
  1414. * Wed Mar 21 2012 Deepak Bhole <dbhole@redhat.com> - 1.7.0.3-2.1.fc17.3
  1415. - Reverted fix for rhbz#740762
  1416. - Fixed PPC/PPC64 build (rh804136) -- added patches from Chris Phillips
  1417. - Moved OpenJDK specific patches to 1XX series
  1418. * Mon Mar 12 2012 Deepak Bhole <dbhole@redhat.com> - 1.7.0.3-2.1.fc17.2
  1419. - Resolved rhbz#740762: java.library.path is missing some paths
  1420. - Unified spec file for x86, x86_64, ARM and s390
  1421. - Integrated changes from Dan Horák <dhorak@redhat.com> for Zero/s390
  1422. - Integrated changes from Chris Phillips <chphilli@redhat.com> for Zero/ARM
  1423. * Fri Feb 24 2012 Deepak Bhole <dbhole@redhat.com> - 1.7.0.3-2.1.fc17.1
  1424. - Added flag so that debuginfo is built into classfiles (rhbz# 796400)
  1425. - Updated rhino.patch to build scripting support (rhbz# 796398)
  1426. * Tue Feb 14 2012 Deepak Bhole <dbhole@redhat.com> - 1.7.0.3-2.1
  1427. - Updated to OpenJDK7u3/IcedTea7 2.1
  1428. - Security fixes:
  1429. - S7112642, CVE-2012-0497: Incorrect checking for graphics rendering object
  1430. - S7082299, CVE-2011-3571: AtomicReferenceArray insufficient array type check
  1431. - S7110687, CVE-2012-0503: Unrestricted use of TimeZone.setDefault
  1432. - S7110700, CVE-2012-0505: Incomplete info in the deserialization exception
  1433. - S7110683, CVE-2012-0502: KeyboardFocusManager focus stealing
  1434. - S7088367, CVE-2011-3563: JavaSound incorrect bounds check
  1435. - S7126960, CVE-2011-5035: Add property to limit number of request headers to the HTTP Server
  1436. - S7118283, CVE-2012-0501: Off-by-one bug in ZIP reading code
  1437. - S7110704, CVE-2012-0506: CORBA fix
  1438. - Add patch to fix compilation with GCC 4.7
  1439. * Tue Nov 15 2011 Deepak Bhole <dbhole@redhat.com> - 1.7.0.1-2.0.3
  1440. - Added patch to fix bug in jdk_generic_profile.sh
  1441. - Compile with generic profile to use system libraries
  1442. - Made remove-intree-libraries.sh more robust
  1443. - Added lcms requirement
  1444. - Added patch to fix glibc name clash
  1445. - Updated java version to include -icedtea
  1446. * Sun Nov 06 2011 Deepak Bhole <dbhole@redhat.com> - 1.7.0.1-2.0.2
  1447. - Added missing changelog entry
  1448. * Sun Nov 06 2011 Deepak Bhole <dbhole@redhat.com> - 1.7.0.1-2.0.1
  1449. - Updated to IcedTea 2.0 tag in the IcedTea OpenJDK7 forest
  1450. - Removed obsoleted patches
  1451. - Added system timezone support
  1452. - Revamp version/release naming scheme to make it proper
  1453. - Security fixes
  1454. - S7000600, CVE-2011-3547: InputStream skip() information leak
  1455. - S7019773, CVE-2011-3548: mutable static AWTKeyStroke.ctor
  1456. - S7023640, CVE-2011-3551: Java2D TransformHelper integer overflow
  1457. - S7032417, CVE-2011-3552: excessive default UDP socket limit under SecurityManager
  1458. - S7046823, CVE-2011-3544: missing SecurityManager checks in scripting engine
  1459. - S7055902, CVE-2011-3521: IIOP deserialization code execution
  1460. - S7057857, CVE-2011-3554: insufficient pack200 JAR files uncompress error checks
  1461. - S7064341, CVE-2011-3389: HTTPS: block-wise chosen-plaintext attack against SSL/TLS (BEAST)
  1462. - S7070134, CVE-2011-3558: HotSpot crashes with sigsegv from PorterStemmer
  1463. - S7077466, CVE-2011-3556: RMI DGC server remote code execution
  1464. - S7083012, CVE-2011-3557: RMI registry privileged code execution
  1465. - S7096936, CVE-2011-3560: missing checkSetFactory calls in HttpsURLConnection
  1466. * Mon Aug 29 2011 Deepak Bhole <dbhole@redhat.com> - 1.7.0.0-0.1.20110823.1
  1467. - Provide a "7" version of items to enfore F-16 policy of no Java 7 builds
  1468. - Resolves: rhbz#728706, patch from Ville Skyttä <ville.skytta at iki dot fi>
  1469. * Fri Aug 05 2011 Deepak Bhole <dbhole@redhat.com> - 1.7.0.0-0.1.20110803
  1470. - Use a newer snapshot and forest on classpath.org rather than on openjdk.net
  1471. - Added in-tree-removal script to remove libraries that we manually link
  1472. - Updated snapshots
  1473. - Added DISTRO_NAME and FreeType header/lib locations
  1474. - Removed application of patch100 and patch 113 (now in forest)
  1475. * Wed Aug 03 2011 Deepak Bhole <dbhole@redhat.com> - 1.7.0.0-0.1.20110729
  1476. - Initial build from java-1.6.0-openjdk RPM