Compare commits

..

774 Commits

Author SHA1 Message Date
Roberto Castañeda Lozano
39e98e7bbf 8303513: C2: LoadKlassNode::make fails with 'expecting TypeKlassPtr'
Reviewed-by: thartmann
Backport-of: 83d92672d4
2023-06-15 12:09:27 +00:00
Martin Doerr
07d20dc86a 8309613: [Windows] hs_err files sometimes miss information about the code containing the error
Reviewed-by: mbaesken
Backport-of: bd79db3930
2023-06-15 10:49:49 +00:00
Aleksey Shipilev
0ac92753dd 8309956: Shenandoah: Strengthen the mark word check in string dedup
Reviewed-by: rkennke
Backport-of: 57b8251241
2023-06-15 07:51:16 +00:00
Chen Liang
6711041f55 8307508: IndirectVarHandle.isAccessModeSupported throws NPE
Reviewed-by: mchung
Backport-of: 75dcc4ef94
2023-06-14 00:01:24 +00:00
Stuart Marks
f7cd0aec92 8309882: LinkedHashMap adds an errant serializable field
Reviewed-by: rriggs
Backport-of: e138685648
2023-06-13 21:09:38 +00:00
Raffaello Giulietti
e18993c006 8309955: Matcher uses @since {@inheritDoc}
Reviewed-by: bpb
Backport-of: bfef3c3e80
2023-06-13 19:06:24 +00:00
Mandy Chung
3363050f9e 8309303: jdk/internal/misc/VM/RuntimeArguments test ignores jdk/internal/vm/options
Reviewed-by: alanb
Backport-of: 679a6d8935
2023-06-13 16:48:42 +00:00
Markus Grönlund
ea4ab656b0 8309862: Unsafe list operations in JfrStringPool
Reviewed-by: egahlin
Backport-of: 05f896a153
2023-06-13 12:34:06 +00:00
Martin Doerr
08eff92b5e 8309462: [AIX] vmTestbase/nsk/jvmti/RunAgentThread/agentthr001/TestDescription.java crashing due to empty while loop
Reviewed-by: mbaesken
Backport-of: cf9e6353cc
2023-06-13 08:27:55 +00:00
Jan Lahoda
83ea293581 8309467: Pattern dominance should be adjusted
Reviewed-by: vromero
Backport-of: 408cadb351
2023-06-13 07:33:27 +00:00
Joe Darcy
b743405033 8309870: Using -proc:full should be considered requesting explicit annotation processing
Reviewed-by: jjg
Backport-of: 3ce1240ca1
2023-06-12 20:03:42 +00:00
Maurizio Cimadamore
20371fd918 8308645: Javadoc of FFM API needs to be refreshed
8309398: ValueLayout:: arrayElementVarHandle doesn't throws UnsupportedOperationException - if byteAlignment() > byteSize()
8308812: SequenceLayout::withElementCount(long elementCount) doesn't throw IllegalArgumentException - if elementCount < 0 for some cases

Reviewed-by: jvernee
2023-06-12 15:24:51 +00:00
Chris Hegarty
73a9f486ae 8309727: Assert privileges while reading the jdk.incubator.vector.VECTOR_ACCESS_OOB_CHECK system property
Reviewed-by: uschindler, rriggs
Backport-of: cee5724d09
2023-06-12 15:07:02 +00:00
Matthias Baesken
005006e7c4 8309703: AIX build fails after JDK-8280982
Reviewed-by: mdoerr
Backport-of: 3981297fd3
2023-06-12 14:41:57 +00:00
Daniel D. Daugherty
4bf6babda5 8309760: ProblemList serviceability/jvmti/vthread/FollowReferences/VThreadStackRefTest.java#default with ZGC
Reviewed-by: darcy
Backport-of: aace3dc28c
2023-06-10 16:36:39 +00:00
Daniel D. Daugherty
406ba341fe 8309702: Exclude java/lang/ScopedValue/StressStackOverflow.java from JTREG_TEST_THREAD_FACTORY=Virtual runs
Reviewed-by: darcy
Backport-of: 307085618d
2023-06-10 01:13:01 +00:00
Stefan Karlsson
430ffe7ae6 8309675: Generational ZGC: compiler/gcbarriers/UnsafeIntrinsicsTest.java fails in nmt_commit
Reviewed-by: dcubed
Backport-of: c4e6542514
2023-06-08 20:02:55 +00:00
Stefan Karlsson
bb377b2673 8306841: Generational ZGC: NMT reports Java heap size larger than max heap size
Reviewed-by: eosterlund, stuefe
2023-06-08 14:06:27 +00:00
Chen Liang
ac3ce2bf75 8304425: ClassHierarchyResolver from Reflection
Reviewed-by: asotona
2023-06-08 07:29:56 +00:00
Aggelos Biboudis
79a4ac791c 8309235: Unnamed Variables (_) can't be used in JShell
Co-authored-by: Jan Lahoda <jlahoda@openjdk.org>
Co-authored-by: Aggelos Biboudis <abimpoudis@openjdk.org>
Reviewed-by: asotona
2023-06-08 07:25:25 +00:00
Nagata-Haruhito
9d64a9d220 8306431: File.listRoots method description should be re-examined
Reviewed-by: bpb, alanb
2023-06-08 07:03:29 +00:00
Serguei Spitsyn
5af9d2a0ac 8309602: update JVMTI history table for jdk 21
Reviewed-by: alanb, iris
2023-06-08 04:04:05 +00:00
David Holmes
6646272a05 8308764: Reporting errors from create_vm may crash
Reviewed-by: stuefe, coleenp, kbarrett
2023-06-08 03:30:11 +00:00
Sergey Bylokhov
73dd03cc5a 8308152: PropertyDescriptor should work with overridden generic getter method
Reviewed-by: azvegint
2023-06-08 02:51:36 +00:00
Martin Balao
760cb04a2e 8309569: sun/security/pkcs11/Signature/TestRSAKeyLength.java fails after JDK-8301553
Co-authored-by: Martin Balao <mbalao@openjdk.org>
Co-authored-by: Francisco Ferrari Bihurriet <fferrari@redhat.com>
Reviewed-by: valeriep
2023-06-08 01:24:26 +00:00
Mandy Chung
e8a59843f2 8309630: Clean up tests that reference deploy modules
Reviewed-by: bchristi
2023-06-08 01:00:44 +00:00
Raffaello Giulietti
90027ff204 8309515: Stale cached data from Matcher.namedGroups() after Matcher.usePattern()
Reviewed-by: rriggs
2023-06-07 21:39:53 +00:00
Alexey Ivanov
ea41907396 8297923: java.awt.ScrollPane broken after multiple scroll up/down
Reviewed-by: honkar, prr, serb
2023-06-07 21:18:50 +00:00
Yudi Zheng
99749c597b 8309562: [JVMCI] Export symbols used by VirtualThread notifyJvmti intrinsics to JVMCI compilers.
Reviewed-by: dnsimon, kvn
2023-06-07 21:18:03 +00:00
Eric Nothum
92beb85510 8309474: [IR Framework] Wrong @ForceCompile link in README
Reviewed-by: chagedorn, thartmann
2023-06-07 20:16:51 +00:00
Daniel D. Daugherty
6402004852 8256302: releasing oopStorage when deflating allows for faster deleting
Reviewed-by: dholmes, rehn, coleenp
2023-06-07 19:59:13 +00:00
Mandy Chung
02bce0b145 8309532: java/lang/Class/getDeclaredField/FieldSetAccessibleTest should filter modules that depend on JVMCI
Reviewed-by: alanb, dfuchs
2023-06-07 18:44:27 +00:00
Joe Darcy
4ffc8cc216 8309574: Improve core reflection tests for JEP 445
Reviewed-by: mchung
2023-06-07 18:11:56 +00:00
Chris Plummer
e3f3ac0825 8309420: com/sun/jdi/StepTest.java fails with virtual thread wrapper
Reviewed-by: sspitsyn, amenkov
2023-06-07 18:03:49 +00:00
Chris Plummer
c38abbfcaa 8309510: com/sun/jdi/RedefineNestmateAttr/TestNestmateAttr.java no longer needs to override startUp() method
Reviewed-by: sspitsyn, amenkov
2023-06-07 17:57:23 +00:00
Joe Darcy
c24b0bada2 8309503: Improve javax.lang.model tests for JEP 445
Reviewed-by: jlahoda, jjg, jlaskey
2023-06-07 17:55:47 +00:00
Chris Plummer
a54f4d4ab9 8309509: com/sun/jdi/RedefineNestmateAttr/TestNestmateAttr.java fails with virtual test thread factory
Reviewed-by: sspitsyn, amenkov
2023-06-07 17:49:05 +00:00
Daniel D. Daugherty
33bb64f24f 8309614: [BACKOUT] JDK-8307153 JVMTI GetThreadState on carrier should return STATE_WAITING
Reviewed-by: azvegint
2023-06-07 15:17:43 +00:00
JoKern65
5b147eb5e4 8308288: Fix xlc17 clang warnings and build errors in hotspot
Reviewed-by: goetz, mbaesken
2023-06-07 13:44:42 +00:00
JoKern65
89f5bacaf6 8309225: Fix xlc17 clang 15 warnings in security and servicability
Reviewed-by: goetz, mdoerr, clanger
2023-06-07 13:42:42 +00:00
JoKern65
6eddbe26dd 8309219: Fix xlc17 clang 15 warnings in java.base
Reviewed-by: goetz, mdoerr
2023-06-07 13:42:03 +00:00
Serguei Spitsyn
177e8327d6 8307153: JVMTI GetThreadState on carrier should return STATE_WAITING
Reviewed-by: amenkov, cjplummer
2023-06-07 13:16:40 +00:00
Aleksey Shipilev
f0236edfba 8309543: Micro-optimize x86 assembler UseCondCardMark
Reviewed-by: kvn, mdoerr
2023-06-07 13:11:32 +00:00
Alexander Zvegintsev
9d7bf5329e 8280982: [Wayland] [XWayland] java.awt.Robot taking screenshots
Reviewed-by: prr, kizune, psadhukhan
2023-06-07 13:08:11 +00:00
Frederic Thevenet
a1ab377d99 8309550: jdk.jfr.internal.Utils::formatDataAmount method should gracefully handle amounts equal to Long.MIN_VALUE
Reviewed-by: stuefe, mgronlun
2023-06-07 12:58:57 +00:00
Jorn Vernee
c49129f545 8308445: Linker should check that capture state segment is big enough
Reviewed-by: mcimadamore
2023-06-07 12:25:28 +00:00
Jorn Vernee
fa791119f0 8308031: Linkers should reject unpromoted variadic parameters
Reviewed-by: mcimadamore
2023-06-07 12:14:55 +00:00
Jim Laskey
16ebf47fe3 8309594: Cleanup naming in JavacParser related to unnamed classes
Reviewed-by: jlahoda
2023-06-07 11:54:50 +00:00
Stefan Karlsson
5722903d53 8307374: Add a JFR event for tracking RSS
Reviewed-by: stuefe, rcastanedalo
2023-06-07 11:41:20 +00:00
Eric Nothum
1de40f360f 8302145: ddepth should be uint in PhaseIdealLoop::register_node()
Reviewed-by: chagedorn, thartmann
2023-06-07 11:39:31 +00:00
Jim Laskey
a6726b66db 8309568: javac crashes attempting to -Xprint on a class file of an unnamed class
Reviewed-by: darcy, jlahoda
2023-06-07 11:34:23 +00:00
Boris Ulasevich
8cdd95e8a2 8305959: x86: Improve itable_stub
Reviewed-by: phh, shade, aph
2023-06-07 11:27:52 +00:00
Matthias Baesken
9233dcc838 8309297: Adjust ShenandoahHeap print_heap_regions_on
Reviewed-by: ysr, mdoerr
2023-06-07 10:51:10 +00:00
Dhamoder Nalla
749d480193 8305763: Parsing a URI with an underscore goes through a silent exception, negatively impacting performance
Reviewed-by: dfuchs
2023-06-07 09:50:08 +00:00
Jaikiran Pai
3ccb3c0e09 8305906: HttpClient may use incorrect key when finding pooled HTTP/2 connection for IPv6 address
Reviewed-by: djelinski, dfuchs
2023-06-07 09:44:14 +00:00
Serguei Spitsyn
a25b7b8b55 8295976: GetThreadListStackTraces returns wrong state for blocked VirtualThread
Reviewed-by: cjplummer, amenkov
2023-06-07 07:51:37 +00:00
Daniel Jeliński
fadcd65018 8309527: Improve test proxy performance
Reviewed-by: dfuchs, jpai
2023-06-07 07:51:05 +00:00
Christian Hagedorn
0ed4af76c0 8309472: IGV: Add dump_igv(custom_name) for improved debugging
Reviewed-by: roland, thartmann
2023-06-07 07:38:21 +00:00
Alan Bateman
f1c7afcc3f 8306647: Implementation of Structured Concurrency (Preview)
8306572: Implementation of Scoped Values (Preview)

Co-authored-by: Alan Bateman <alanb@openjdk.org>
Co-authored-by: Andrew Haley <aph@openjdk.org>
Reviewed-by: psandoz, dfuchs, mchung
2023-06-07 06:41:09 +00:00
Ichiroh Takiguchi
a08c5cb3f1 8307953: [AIX] C locale's font setting was changed by JEP 400
Reviewed-by: naoto, prr
2023-06-06 22:20:03 +00:00
Daniel D. Daugherty
0ceb43227d 8309570: ProblemList sun/security/pkcs11/Signature/TestRSAKeyLength.java
Reviewed-by: jjg, darcy
2023-06-06 22:08:43 +00:00
Chris Plummer
65bdbc7a8c 8309396: com/sun/jdi/JdbMethodExitTest.java fails with virtual threads due to a bug in determining the main thread id
Reviewed-by: amenkov, sspitsyn
2023-06-06 21:57:18 +00:00
Martin Balao
4a75fd462c 8301553: Support Password-Based Cryptography in SunPKCS11
Co-authored-by: Francisco Ferrari Bihurriet <fferrari@redhat.com>
Co-authored-by: Martin Balao <mbalao@openjdk.org>
Reviewed-by: valeriep
2023-06-06 19:39:34 +00:00
Hannes Wallnöfer
0a4f9ad637 8292157: Incorrect error: "block element not allowed within inline element <a>"
Reviewed-by: jjg
2023-06-06 19:33:35 +00:00
Chris Plummer
16ab7bfe22 8309505: com/sun/jdi/MethodEntryExitEvents.java due to finding wrong main thread
Reviewed-by: amenkov, sspitsyn
2023-06-06 18:34:18 +00:00
Joe Darcy
d82436e4e3 8295071: Spec Clarification : ClassFileFormatVersion: System property java.class.version | Java class format version number
Reviewed-by: iris, alanb, rriggs
2023-06-06 18:33:42 +00:00
Chris Plummer
571fbdc311 8309506: com/sun/jdi/MultiBreakpointsTest.java fails with virtual test thread factory
Reviewed-by: amenkov, sspitsyn
2023-06-06 18:17:47 +00:00
Joe Darcy
7d1147ee5c 8309554: Update descriptions in SourceVersion
Reviewed-by: jlaskey, jjg, rriggs
2023-06-06 18:16:44 +00:00
Stuart Marks
9526190863 8307840: SequencedMap view method specification and implementation adjustments
Reviewed-by: darcy, alanb
2023-06-06 17:02:32 +00:00
Mandy Chung
74dc50b7f0 8301721: lookup.findSpecial fails on Object method call from interface
Reviewed-by: alanb
2023-06-06 16:19:46 +00:00
Doug Simon
0f0fda7abc 8309542: compiler/jvmci/TestEnableJVMCIProduct.java fails with "JVMCI compiler 'graal' specified by jvmci.Compiler not found"
Reviewed-by: kvn, never
2023-06-06 16:12:37 +00:00
Chen Liang
38cef2adbd 8309413: Improve the performance of MethodTypeDesc::descriptorString
8304932: MethodTypeDescImpl can be mutated by argument passed to MethodTypeDesc.of

Reviewed-by: mchung
2023-06-06 15:56:36 +00:00
Tom Rodriguez
7edd0540e0 8309501: Remove workaround in bin/idea.sh for non standard JVMCI file layout
Reviewed-by: dnsimon, erikj
2023-06-06 15:53:54 +00:00
Brian Burkhalter
9188142698 8309216: Cast from jchar* to char* in test java/io/GetXSpace.java
Reviewed-by: rriggs, naoto
2023-06-06 15:15:32 +00:00
Brian Burkhalter
d709c25cbf 8307887: (fs) Files.createSymbolicLink throws less specific exception when in developer mode and file already exists
Reviewed-by: alanb
2023-06-06 15:14:57 +00:00
Jim Laskey
ca6f07f9ab 8309534: @JEP(number=430, title="String Templates") should use default status
Reviewed-by: alanb
2023-06-06 13:01:04 +00:00
Rudi Horn
8f0839bc55 8308748: JNU_GetStringPlatformChars may write to String's internal memory array
Reviewed-by: dholmes, rriggs, alanb
2023-06-06 12:58:24 +00:00
Pavel Rappo
01455a07a7 8304878: ConcurrentModificationException in javadoc tool
Reviewed-by: jjg
2023-06-06 10:06:52 +00:00
Gui Cao
7d25bf7722 8309419: RISC-V: Relax register constraint for AddReductionVF & AddReductionVD nodes
Reviewed-by: fyang, luhenry, yzhu
2023-06-06 09:19:27 +00:00
Dingli Zhang
5146a58249 8309418: RISC-V: Make use of vl1r.v & vfabs.v pseudo-instructions where appropriate
Reviewed-by: fyang, luhenry, gcao
2023-06-06 09:07:39 +00:00
Maxim Kartashev
41bf2ad159 8308875: java/awt/Toolkit/GetScreenInsetsCustomGC/GetScreenInsetsCustomGC.java failed with 'Cannot invoke "sun.awt.X11GraphicsDevice.getInsets()" because "device" is null'
Reviewed-by: avu, prr
2023-06-06 08:26:01 +00:00
quadhier
a7a0913005 8309346: Extend hs_err logging for all VM operations deriving from VM_GC_Operation
Reviewed-by: tschatzl, stefank
2023-06-06 07:29:25 +00:00
Matthias Baesken
3b85f84f02 8309340: Provide sctpHandleSocketErrorWithMessage
Reviewed-by: clanger
2023-06-06 07:08:10 +00:00
Alan Bateman
2e9eff5641 8309406: Change jdk.trackAllThreads to default to true
Reviewed-by: rpressler, mchung, cjplummer
2023-06-06 06:01:38 +00:00
Stuart Marks
6d155a47f1 8308167: SequencedMap::firstEntry throws NPE when first entry has null key or value
Reviewed-by: bchristi
2023-06-06 00:19:50 +00:00
Serguei Spitsyn
4b1534989b 8304438: jcmd JVMTI.agent_load should obey EnableDynamicAgentLoading
Reviewed-by: cjplummer, alanb, amenkov
2023-06-06 00:00:11 +00:00
Doug Simon
b3c9d6785e 8309136: [JVMCI] add -XX:+UseGraalJIT flag
Reviewed-by: dholmes, kvn
2023-06-05 20:47:50 +00:00
Jim Laskey
98b53c06cf 8306112: Implementation of JEP 445: Unnamed Classes and Instance Main Methods (Preview)
8308613: javax.lang.model updates for JEP 445 (preview)
8308913: Update core reflection for JEP 445 (preview)

Co-authored-by: Maurizio Cimadamore <mcimadamore@openjdk.org>
Co-authored-by: Joe Darcy <darcy@openjdk.org>
Co-authored-by: Jan Lahoda <jlahoda@openjdk.org>
Co-authored-by: Jim Laskey <jlaskey@openjdk.org>
Co-authored-by: Adam Sotona <asotona@openjdk.org>
Reviewed-by: mcimadamore, vromero, darcy
2023-06-05 18:45:39 +00:00
Calvin Cheung
e970ddbc60 8309170: CDS archive heap is always relocated for larger heap
Reviewed-by: stuefe, iklam
2023-06-05 18:33:54 +00:00
Adam Sotona
4b8922f576 8308842: Consolidate exceptions thrown from Class-File API
Reviewed-by: briangoetz
2023-06-05 18:25:51 +00:00
Joe Darcy
2b38343e4d 8309416: Misstatement in semantics of methods in javax.lang.model.ElementFilter
Reviewed-by: prappo
2023-06-05 16:36:19 +00:00
Alexander Zvegintsev
73352b68c4 8280994: [XWayland] Drag and Drop does not work in java -> wayland app direction
Reviewed-by: prr, psadhukhan
2023-06-05 16:34:45 +00:00
Antonios Printezis
5cd8af7622 8308726: RISC-V: avoid unnecessary slli in the vectorized arraycopy stubs for bytes
Reviewed-by: fyang, luhenry
2023-06-05 15:40:10 +00:00
Antonios Printezis
80232b7e75 8308969: make test-prebuilt doesn't return the correct exit code
Reviewed-by: erikj
2023-06-05 15:35:42 +00:00
changpeng1997
6d511f1376 8309129: AArch64: guarantee(T != T2S) failed: "incorrect arrangement" after JDK-8307795
Reviewed-by: thartmann, xgong, eastigeevich
2023-06-05 11:32:53 +00:00
Jan Lahoda
9be5769a68 8291966: SwitchBootstrap.typeSwitch could be faster
Reviewed-by: asotona
2023-06-05 10:48:25 +00:00
Hannes Wallnöfer
db0857ddd8 8306578: Report error if no label given in @see and {@link} when no default is available
Reviewed-by: jjg
2023-06-05 09:39:19 +00:00
Prasanta Sadhukhan
8c9d21e519 8296920: Regression Test DialogOrient.java fails on MacOS
Reviewed-by: honkar, dnguyen, achung, jdv
2023-06-05 09:15:13 +00:00
Christoph Langer
ac41c03003 8303465: KeyStore of type KeychainStore, provider Apple does not show all trusted certificates
Reviewed-by: mbaesken, weijun
2023-06-05 08:36:47 +00:00
David Leopoldseder
11fb5b2209 8309104: [JVMCI] compiler/unsafe/UnsafeGetStableArrayElement test asserts wrong values with Graal
Reviewed-by: dnsimon, thartmann
2023-06-05 07:54:42 +00:00
Vladimir Kempik
a02d8001fa 8309405: RISC-V: is_deopt may produce unaligned memory read
Reviewed-by: fyang, luhenry
2023-06-05 07:30:28 +00:00
Roberto Castañeda Lozano
3fa776d66a 8302673: [SuperWord] MaxReduction and MinReduction should vectorize for int
Co-authored-by: Jatin Bhateja <jbhateja@openjdk.org>
Reviewed-by: epeter, kvn
2023-06-05 07:08:33 +00:00
Emanuel Peter
22a9a86be0 8309268: C2: "assert(in_bb(n)) failed: must be" after JDK-8306302
Reviewed-by: rcastanedalo, kvn, thartmann
2023-06-05 06:43:13 +00:00
Jan Lahoda
b6c9232b8b 8305225: A service broken error despite annotation processor generating it if directives listed
Reviewed-by: asotona
2023-06-05 06:30:44 +00:00
Jan Lahoda
05fb6c6648 8309336: Incorrect switch in enum not reported properly
Reviewed-by: vromero
2023-06-05 06:25:00 +00:00
Gui Cao
08c91c2212 8309332: RISC-V: Improve PrintOptoAssembly output of vector nodes
Reviewed-by: yzhu, fyang
2023-06-05 00:18:51 +00:00
Chris Plummer
ecb17532dc 8309334: ProcessTools.main() does not properly set thread names when using the virtual thread wrapper
Reviewed-by: amenkov, lmesnik, sspitsyn, alanb
2023-06-04 18:18:11 +00:00
Jaikiran Pai
ac1597bcc7 8309409: Update HttpInputStreamTest and BodyProcessorInputStreamTest to use hg.openjdk.org
Reviewed-by: dfuchs
2023-06-04 09:48:11 +00:00
Chris Plummer
fdb5893bf0 8309391: Remove non-failing tests from test/jdk/ProblemList-Virtual.txt
Reviewed-by: dcubed, lmesnik
2023-06-03 20:26:46 +00:00
Guoxiong Li
6edd786bf6 8309265: Serial: Remove the code related to GC overheap limit
Reviewed-by: ayang, tschatzl
2023-06-03 03:45:21 +00:00
Dingli Zhang
61bb014a86 8309254: Implement fast-path for ASCII-compatible CharsetEncoders on RISC-V
Reviewed-by: luhenry, yzhu, fyang, fjiang
2023-06-03 02:27:18 +00:00
Alex Menkov
62c935d4fa 8308978: regression with a deadlock involving FollowReferences
Reviewed-by: sspitsyn, lmesnik
2023-06-02 22:02:04 +00:00
Joe Wang
aff9cea054 8303530: Redefine JAXP Configuration File
Reviewed-by: naoto, lancea, alanb, smarks
2023-06-02 20:09:44 +00:00
Chris Plummer
1bb037bdc6 8309329: com/sun/jdi/DeferredStepTest.java fails with virtual threads due to not waiting for threads to exit
Reviewed-by: sspitsyn, lmesnik, amenkov
2023-06-02 19:09:56 +00:00
Mandy Chung
a23bbea959 8309241: ClassForNameLeak fails intermittently as the class loader hasn't been unloaded
Reviewed-by: dnsimon, bchristi
2023-06-02 18:12:19 +00:00
Daniel Fuchs
931913fbb2 8309200: java/net/httpclient/ExecutorShutdown fails intermittently, if connection closed during upgrade
Reviewed-by: jpai, djelinski
2023-06-02 14:34:54 +00:00
Andrew Haley
dc21e8aa83 8296411: AArch64: Accelerated Poly1305 intrinsics
Reviewed-by: redestad, adinn
2023-06-02 14:28:44 +00:00
Poonam Bajaj
59d9d9fcb9 8303215: Make thread stacks not use huge pages
Reviewed-by: stuefe, dholmes
2023-06-02 13:32:22 +00:00
Albert Mingkun Yang
cb1e5e3f0f 8309286: G1: Remove unused G1HeapRegionAttr::is_valid_gen
Reviewed-by: tschatzl
2023-06-02 12:47:17 +00:00
Stefan Karlsson
e8268d9163 8309210: Extend VM Operations hs_err logging
Reviewed-by: dholmes, stuefe, eosterlund, sjohanss
2023-06-02 12:06:31 +00:00
Christian Hagedorn
7dbdad50a6 8308892: Bad graph detected in build_loop_late after JDK-8305635
Reviewed-by: rcastanedalo, roland, thartmann
2023-06-02 12:00:11 +00:00
Severin Gehwolf
dc8bc6c98c 8308090: Add container tests for on-the-fly resource quota updates
Reviewed-by: dholmes, mseledtsov
2023-06-02 08:58:20 +00:00
Jan Kratochvil
73e7af9e28 8309287: Add fontconfig requirement to building.md for Debian
Reviewed-by: erikj
2023-06-02 08:41:28 +00:00
Sibabrata Sahoo
aeb53e67f9 8308711: Develop additional Tests for KEM implementation
Reviewed-by: weijun
2023-06-02 08:13:12 +00:00
JoKern65
dcd9590fed 8309224: Fix xlc17 clang 15 warnings in java.desktop
Reviewed-by: prr, goetz
2023-06-02 07:34:24 +00:00
Erik Österlund
8f1ce78907 8308752: Generational ZGC: Avoid final marking through stack chunks
Reviewed-by: stefank, aboldtch
2023-06-02 06:54:20 +00:00
Axel Boldt-Christmas
7b0a33600e 8308387: CLD created and unloading list sharing _next node pointer leads to concurrent YC missing CLD roots
Reviewed-by: stefank, coleenp, dholmes, eosterlund
2023-06-02 06:35:24 +00:00
Roberto Castañeda Lozano
60f3b87d96 8309295: C2: MaxNode::signed_min() returns nullptr for int operands
Reviewed-by: thartmann
2023-06-02 06:34:15 +00:00
Aggelos Biboudis
8007599756 8309093: Underscore with brackets
Reviewed-by: jlahoda
2023-06-02 06:14:57 +00:00
Alan Bateman
5bd2af26e6 8307478: Implementation of Prepare to Restrict The Dynamic Loading of Agents
Reviewed-by: sspitsyn, cjplummer
2023-06-02 05:57:01 +00:00
Tejesh R
325940b091 8307105: JFileChooser InvalidPathException when selecting some system folders on Windows
Reviewed-by: aivanov, abhiscxk, dnguyen
2023-06-02 04:29:33 +00:00
Matias Saavedra Silva
101bf2290d 8308891: TestCDSVMCrash.java needs @requires vm.cds
Reviewed-by: dcubed
2023-06-01 20:37:21 +00:00
Doug Simon
2bb1972483 8308954: [JVMCI] code installation increments decompile_count for call_site_target_value failures
Reviewed-by: never
2023-06-01 19:24:07 +00:00
Martin Doerr
0ab09630c6 8308469: [PPC64] Implement alternative fast-locking scheme
Reviewed-by: rrich, lucy
2023-06-01 17:24:50 +00:00
Zdenek Zambersky
ec55539534 8309138: Fix container tests for jdks with symlinked conf dir
Reviewed-by: sgehwolf
2023-06-01 16:25:53 +00:00
Chris Plummer
e8271649e0 8309146: extend JDI StackFrame.setValue() and JDWP StackFrame.setValues minimal support for virtual threads
Reviewed-by: sspitsyn, alanb
2023-06-01 15:33:20 +00:00
Chen Liang
be36096a19 8302822: Method/Field/Constructor/RecordComponent::getGenericInfo() is not thread safe
Reviewed-by: stsypanov, redestad
2023-06-01 15:31:51 +00:00
Chris Plummer
c6f20db945 8308232: nsk/jdb tests don't pass -verbose flag to the debuggee
Reviewed-by: sspitsyn, lmesnik
2023-06-01 15:28:58 +00:00
Mark Powers
d987176412 8307794: Test for HSS/LMS Signature Verification
Reviewed-by: mullan
2023-06-01 14:09:36 +00:00
Ferenc Rakoczi
050425b141 8298127: HSS/LMS Signature Verification
Reviewed-by: weijun, mullan
2023-06-01 12:31:07 +00:00
Adam Sotona
a6109bf1ea 8308856: jdk.internal.classfile.impl.EntryMap::nextPowerOfTwo math problem
Reviewed-by: jlahoda
2023-06-01 11:50:20 +00:00
Jan Lahoda
6adc242cf3 8308943: jdk.internal.le build fails on AIX
Reviewed-by: asotona
2023-06-01 11:14:12 +00:00
Volker Simonis
39f6d807db 8307990: jspawnhelper must close its writing side of a pipe before reading from it
Reviewed-by: stuefe, rriggs
2023-06-01 10:56:31 +00:00
Aleksey Shipilev
4460429d7a 8308803: Improve java/util/UUID/UUIDTest.java
Reviewed-by: jpai, rriggs
2023-06-01 08:55:56 +00:00
Christian Hagedorn
dfd3da3f52 8307683: Loop Predication should not hoist range checks with trap on success projection by negating their condition
Reviewed-by: thartmann, roland
2023-06-01 08:04:45 +00:00
Thomas Schatzl
96ed1392d1 8308766: TLAB initialization may cause div by zero
Reviewed-by: shade, ayang
2023-06-01 06:57:45 +00:00
Yanhong Zhu
6c7225f819 8303417: RISC-V: Merge vector instructs with similar match rules
Reviewed-by: fyang, rehn, dzhang
2023-06-01 02:44:08 +00:00
Hao Sun
a46b5acc15 8308503: AArch64: SIGILL when running with -XX:UseBranchProtection=pac-ret on hardware without PAC feature
Reviewed-by: aph, ngasson, dlong
2023-05-31 23:49:13 +00:00
Sandhya Viswanathan
f9ad7df4da 8300865: C2: product reduction in ProdRed_Double is not vectorized
Reviewed-by: fgao, epeter, kvn
2023-05-31 22:39:54 +00:00
Justin King
8eda97dc8d 8305320: DbgStrings and AsmRemarks are leaking
Reviewed-by: coleenp, fparain
2023-05-31 21:41:46 +00:00
Jonathan Gibbons
09514745fc 8309150: Need to escape " inside attribute values
Reviewed-by: prappo
2023-05-31 21:20:05 +00:00
David Holmes
0119969816 8309171: Test vmTestbase/nsk/jvmti/scenarios/jni_interception/JI05/ji05t001/TestDescription.java fails after JDK-8308341
Reviewed-by: dcubed, gziemski
2023-05-31 21:13:30 +00:00
Dean Long
f8a924a749 8308975: Fix signed integer overflow in compiler code, part 2
Reviewed-by: aph, coleenp, kvn
2023-05-31 20:51:53 +00:00
Chris Plummer
5531f6ba1b 8308819: add JDWP and JDI virtual thread support for ThreadReference.ForceEarlyReturn
Reviewed-by: sspitsyn, alanb
2023-05-31 20:50:22 +00:00
Daniel D. Daugherty
e42a4b659a 8309236: ProblemList java/util/concurrent/locks/Lock/OOMEInAQS.java with ZGC and Generational ZGC again
Reviewed-by: bpb, azvegint
2023-05-31 20:41:11 +00:00
Brian Burkhalter
8dbd384003 8308678: (fs) UnixPath::toRealPath needs additional permissions when running with SM (macOS)
Reviewed-by: lancea, alanb
2023-05-31 19:40:23 +00:00
Roger Riggs
c3cd481a9a 8304914: Use OperatingSystem, Architecture, and Version in jpackage
Reviewed-by: asemenyuk
2023-05-31 19:32:21 +00:00
Chris Plummer
eae1f59da9 8309159: Some minor comment and code cleanup in jdk/com/sun/jdi/PopFramesTest.java
Reviewed-by: sspitsyn, lmesnik
2023-05-31 17:38:18 +00:00
Daniel D. Daugherty
45473ef235 8309230: ProblemList jdk/incubator/vector/Float64VectorTests.java on aarch64
8309231: ProblemList vmTestbase/nsk/jvmti/scenarios/jni_interception/JI05/ji05t001/TestDescription.java

Reviewed-by: darcy
2023-05-31 16:50:09 +00:00
Chen Liang
78aa5f3fc1 8299505: findVirtual on array classes incorrectly restricts the receiver type
Reviewed-by: mchung
2023-05-31 16:28:26 +00:00
Xue-Lei Andrew Fan
42ca6e6942 8308022: update for deprecated sprintf for java.base
Reviewed-by: naoto
2023-05-31 16:26:48 +00:00
Naoto Sato
1264902517 8308316: Default decomposition mode in Collator
Reviewed-by: rriggs
2023-05-31 15:56:40 +00:00
Matthias Baesken
70670b4af6 8308872: enhance logging and some exception in krb5/Config.java
Reviewed-by: weijun
2023-05-31 14:43:07 +00:00
Matias Saavedra Silva
024d9b131d 8308910: Allow executeAndLog to accept running process
Reviewed-by: ccheung, iklam
2023-05-31 13:50:04 +00:00
Emanuel Peter
25b9803056 8308917: C2 SuperWord::output: assert before bailout with CountedLoopReserveKit
Reviewed-by: kvn, thartmann
2023-05-31 13:17:45 +00:00
Yadong Wang
d66b6d8fd2 8308765: RISC-V: Expand size of stub routines for zgc only
Reviewed-by: fjiang, fyang
2023-05-31 13:13:20 +00:00
Daniel Fuchs
4aea7dab15 8309120: java/net/httpclient/AsyncShutdownNow.java fails intermittently
Reviewed-by: jpai
2023-05-31 10:49:20 +00:00
Albert Mingkun Yang
a990322429 8309111: Removing unused constructor of PerfLongCounter and PerfLongVariable
Reviewed-by: dholmes
2023-05-31 10:19:58 +00:00
Aggelos Biboudis
4f3a95af2f 8309054: Parsing of erroneous patterns succeeds
Reviewed-by: jlahoda
2023-05-31 09:37:58 +00:00
Johan Sjölen
4f16161607 8309044: Replace NULL with nullptr, final sweep of hotspot code
Reviewed-by: stefank, dholmes, kvn, amitkumar
2023-05-31 09:19:47 +00:00
Leo Korinth
88236263dc 8309048: Remove malloc locker test case
Reviewed-by: dholmes, tschatzl, coleenp, lmesnik
2023-05-31 08:53:47 +00:00
Kim Barrett
927a9ed683 8240774: [REDO] G1DirtyCardQueue destructor has useless flush
Reviewed-by: dholmes, ayang, tschatzl
2023-05-31 01:52:05 +00:00
Dingli Zhang
119994f3ce 8308997: RISC-V: Sign extend when comparing 32-bit value with zero instead of testing the sign bit
Co-authored-by: zifeihan <caogui@iscas.ac.cn>
Reviewed-by: fjiang, fyang
2023-05-31 01:31:50 +00:00
Leonid Mesnik
327733c93d 8308986: Disable svc tests failing with virtual thread factory
Reviewed-by: dholmes, dcubed, sspitsyn
2023-05-31 00:11:05 +00:00
David Holmes
1e6770fb97 8308341: JNI_GetCreatedJavaVMs returns a partially initialized JVM
Reviewed-by: jsjolen, gziemski
2023-05-30 22:46:06 +00:00
Joe Darcy
cb40db052c 8309134: Augment test/langtools/tools/javac/versions/Versions.java for JDK 21 language changes
Reviewed-by: jjg
2023-05-30 21:58:50 +00:00
Mandy Chung
de7fd1c306 8307944: ClassFileDumper should only load java.nio.file.Path if enabled
Reviewed-by: rriggs
2023-05-30 21:01:12 +00:00
Valerie Peng
7891de331a 8297885: misc sun/security/pkcs11 tests timed out
Reviewed-by: xuelei
2023-05-30 17:50:53 +00:00
Roger Riggs
323d6ceda6 8308960: Decouple internal Version and OperatingSystem classes
Reviewed-by: mchung
2023-05-30 17:07:02 +00:00
Joe Darcy
1b8e6bf31c 8308987: Update java.lang.Class to use javadoc snippets
Reviewed-by: alanb
2023-05-30 16:47:02 +00:00
Daniel Fuchs
04b0e785f6 8307648: java/net/httpclient/ExpectContinueTest.java timed out
Reviewed-by: djelinski
2023-05-30 16:32:11 +00:00
Weijun Wang
6b90b0519e 8297878: KEM: Implementation
Reviewed-by: ascarpino, mullan
2023-05-30 16:29:19 +00:00
Brian Burkhalter
21af8bae38 8290499: new File(parent, "/") breaks normalization – creates File with slash at the end
Reviewed-by: rriggs
2023-05-30 16:16:45 +00:00
Jorn Vernee
804f198c73 8308992: New test TestHFA fails with zero
Reviewed-by: mcimadamore
2023-05-30 15:28:40 +00:00
Jasmine Karthikeyan
fb0b1f0c23 8051725: Improve expansion of Conv2B nodes in the middle-end
Reviewed-by: thartmann, qamai, sviswanathan
2023-05-30 14:11:12 +00:00
Paul Hohensee
3eced01f9e 8304074: [JMX] Add an approximation of total bytes allocated on the Java heap by the JVM
Reviewed-by: dholmes, mchung
2023-05-30 13:44:02 +00:00
Jie Fu
15e028530a 8309110: Build failure after JDK-8307795 due to warnings in micro-benchmark StoreMaskTrueCount.java
Reviewed-by: thartmann
2023-05-30 13:43:14 +00:00
Antonios Printezis
4526282266 8308977: gtest:codestrings fails on riscv
Reviewed-by: fyang
2023-05-30 13:08:15 +00:00
changpeng1997
f600d0369a 8307795: AArch64: Optimize VectorMask.truecount() on Neon
Reviewed-by: aph, eliu
2023-05-30 12:45:33 +00:00
Renjith
07f2070411 8309095: Remove UTF-8 character from TaskbarPositionTest.java
Reviewed-by: aivanov
2023-05-30 12:11:34 +00:00
Maurizio Cimadamore
2b186e246e 8309042: MemorySegment::reinterpret cleanup action is not called for all overloads
Reviewed-by: jvernee
2023-05-30 10:24:10 +00:00
Erik Österlund
78aac241b8 8308881: Strong CLD oop handle roots are demoted to non-roots concurrently
Reviewed-by: stefank, coleenp
2023-05-30 07:29:46 +00:00
Emanuel Peter
1f1f604071 8302670: use-after-free related to PhaseIterGVN interaction with Unique_Node_List and Node_Stack
Co-authored-by: Justin King <jcking@openjdk.org>
Reviewed-by: thartmann, chagedorn, jcking
2023-05-30 07:14:50 +00:00
Tobias Hartmann
d35a550f6d 8309077: Problemlist compiler/jvmci/TestUncaughtErrorInCompileMethod.java
Reviewed-by: chagedorn
2023-05-30 05:36:46 +00:00
Gui Cao
457e1cb827 8308817: RISC-V: Support VectorTest node for Vector API
Co-authored-by: Dingli Zhang <dingli@iscas.ac.cn>
Reviewed-by: fjiang, fyang
2023-05-30 00:39:53 +00:00
Ioi Lam
7508d9f9e0 8308906: Make CIPrintCompilerName a diagnostic flag
Reviewed-by: kvn, stuefe
2023-05-29 20:25:57 +00:00
Prasanta Sadhukhan
a4bae3a9e2 8309060: Compilation Error in javax/swing/event/FocusEventCauseTest.java
Reviewed-by: abhiscxk, aivanov
2023-05-29 18:25:19 +00:00
Renjith
d73fc70ea2 8289547: Update javax/swing/Popup/TaskbarPositionTest.java
Reviewed-by: aivanov, dmarkov, honkar
2023-05-29 12:52:15 +00:00
Markus Grönlund
7cf6eecdc8 8307488: Incorrect weight of the first ObjectAllocationSample JFR event
Reviewed-by: egahlin
2023-05-29 10:53:08 +00:00
Doug Simon
a5d8d59469 8308930: [JVMCI] TestUncaughtErrorInCompileMethod times out
Reviewed-by: never
2023-05-29 10:04:31 +00:00
Prasanta Sadhukhan
70130d3b16 8306119: Many components respond to a mouse event by requesting focus without supplying the MOUSE_EVENT cause
Reviewed-by: jdv
2023-05-29 08:40:13 +00:00
Albert Mingkun Yang
6360b49931 8308948: Remove unimplemented ThreadLocalAllocBuffer::reset
Reviewed-by: tschatzl
2023-05-29 08:06:41 +00:00
Dingli Zhang
e21f865d84 8308915: RISC-V: Improve temporary vector register usage avoiding the use of v0
Reviewed-by: yzhu, fyang
2023-05-29 01:03:01 +00:00
Christian Stein
547a8b40b3 8306560: Add TOOLING.jsh load file
Reviewed-by: jlahoda
2023-05-28 08:14:37 +00:00
Gerard Ziemski
ca54f4e007 8306428: RunThese30M.java crashed with assert(early->flag() == current->flag() || early->flag() == mtNone)
Reviewed-by: jsjolen, stuefe
2023-05-27 18:28:49 +00:00
Erik Gahlin
5fdb22f911 8308876: JFR: Deserialization of EventTypeInfo uses incorrect attribute names
Reviewed-by: mgronlun
2023-05-27 06:18:26 +00:00
Serguei Spitsyn
bd113ee048 8308814: extend SetLocalXXX minimal support for virtual threads
Reviewed-by: cjplummer
2023-05-27 02:43:50 +00:00
Hannes Wallnöfer
a92363461d 8286470: Support searching for sections in class/package javadoc
Reviewed-by: jjg
2023-05-26 18:36:45 +00:00
Calvin Cheung
55d297fdda 8308594: Use atomic bitset function for PackageEntry::_defined_by_cds_in_class_path
Reviewed-by: coleenp, lfoltan
2023-05-26 18:04:01 +00:00
Xue-Lei Andrew Fan
c72b547425 8308801: update for deprecated sprintf for libnet in java.base
Reviewed-by: djelinski, rriggs
2023-05-26 16:47:39 +00:00
Erik Gahlin
77c5adb09e 8308935: jdk.management.jfr.RecordingInfo.toString() lacks test coverage
Reviewed-by: mgronlun
2023-05-26 16:00:12 +00:00
Ashutosh Mehra
ce5251aff7 8308657: ReplayInline is not availabe in production build
Reviewed-by: kvn, roland, thartmann
2023-05-26 14:48:14 +00:00
Stefan Karlsson
cc0976bf7f 8308589: gc/cslocker/TestCSLocker.java timed out
Reviewed-by: eosterlund
2023-05-26 13:51:31 +00:00
Kevin Walls
17ef8a44a9 8299665: /proc/self/stat parsing in libmanagement broken by execname with spaces
Reviewed-by: sspitsyn, amenkov
2023-05-26 10:51:39 +00:00
Tejesh R
c494770ca0 8306812: Open source several AWT Miscellaneous tests
Reviewed-by: psadhukhan
2023-05-26 10:50:49 +00:00
Erik Österlund
d3b9b364da 8308009: Generational ZGC: OOM before clearing all SoftReferences
Reviewed-by: stefank, aboldtch
2023-05-26 10:12:50 +00:00
Roland Westrelin
bac02b6e9d 8305189: C2 failed "assert(_outcnt==1) failed: not unique"
Reviewed-by: chagedorn, thartmann
2023-05-26 09:04:31 +00:00
Johan Sjölen
62537d200f 8299974: Replace NULL with nullptr in share/adlc/
Reviewed-by: dlong, kvn
2023-05-26 08:44:01 +00:00
Doug Simon
f09345b3a4 8308931: Problemlist compiler/jvmci/TestUncaughtErrorInCompileMethod.java
Reviewed-by: thartmann
2023-05-26 08:14:26 +00:00
Stefan Karlsson
7c072dbd9d 8308844: ProblemList gc/z/TestHighUsage.java with Generational ZGC on windows x64
Reviewed-by: aboldtch, tschatzl
2023-05-26 07:52:53 +00:00
Tejesh R
4becb7bcb6 8306137: Open source several AWT ScrollPane related tests
Reviewed-by: aivanov
2023-05-26 07:50:10 +00:00
Roland Westrelin
199b1bf500 8308583: SIGSEGV in GraphKit::gen_checkcast
Reviewed-by: thartmann, kvn, never
2023-05-26 07:03:35 +00:00
Justin Lu
46c4da7fdd 8159023: Engineering notation of DecimalFormat does not work as documented
Reviewed-by: naoto
2023-05-25 21:54:58 +00:00
Daniel D. Daugherty
ee321c70e5 8308907: ProblemList java/awt/Toolkit/GetScreenInsetsCustomGC/GetScreenInsetsCustomGC.java on linux-x64
8308908: ProblemList javax/sound/sampled/Clip/ClipIsRunningAfterStop.java on linux-x64
8308909: ProblemList sun/java2d/DirectX/OnScreenRenderingResizeTest/OnScreenRenderingResizeTest.java on linux-x64

Reviewed-by: mikael
2023-05-25 21:35:50 +00:00
Calvin Cheung
dc7683a051 8308073: ClassLoaderExt::append_boot_classpath should handle dynamic archive
Reviewed-by: iklam, matsaave
2023-05-25 21:26:54 +00:00
Erik Gahlin
4870234552 8304375: jdk/jfr/api/consumer/filestream/TestOrdered.java failed with "Expected at least some events to be out of order! Reuse = false"
Reviewed-by: mgronlun
2023-05-25 21:01:37 +00:00
Ashutosh Mehra
7d2a7ce240 8308672: Add version number in the replay file generated by DumpInline
Reviewed-by: kvn
2023-05-25 18:31:56 +00:00
Naoto Sato
27ba8bd4ed 8308108: Support Unicode extension for collation settings
Reviewed-by: iris, rriggs, jlu, alanb
2023-05-25 17:20:02 +00:00
Doug Simon
89b3c375ac 8307125: compiler/jvmci/compilerToVM/MaterializeVirtualObjectTest.java hits assert(!Continuation::is_frame_in_continuation(thread(), fr())) failed: No support for deferred values in continuations
Reviewed-by: never
2023-05-25 16:26:26 +00:00
Erik Gahlin
98acce13d5 8306703: JFR: Summary views
Reviewed-by: mgronlun
2023-05-25 15:39:45 +00:00
Maurizio Cimadamore
534de6d8ae 8300491: SymbolLookup::libraryLookup accepts strings with terminators
Reviewed-by: psandoz
2023-05-25 15:22:27 +00:00
Tyler Steele
48d21bd089 8286597: Implement PollerProvider on AIX
Reviewed-by: mdoerr, alanb, vtewari
2023-05-25 14:59:11 +00:00
Michael McMahon
e7edf8d145 8300038: Make new version of JNU_GetStringPlatformChars which checks for null characters
Reviewed-by: dfuchs, naoto
2023-05-25 14:57:29 +00:00
Erik Gahlin
90e57fd5a9 8308335: JFR: Remove @Experimental from Virtual Threads events
Reviewed-by: alanb, mgronlun
2023-05-25 12:19:38 +00:00
Albert Mingkun Yang
7e2e05d836 8308098: G1: Remove redundant checks in G1ObjectCountIsAliveClosure
Reviewed-by: tschatzl, iwalulya
2023-05-25 11:59:01 +00:00
Coleen Phillimore
2599ada152 8308655: Narrow types of ConstantPool and ConstMethod returns
Reviewed-by: fparain, matsaave
2023-05-25 11:52:40 +00:00
Roberto Castañeda Lozano
5a0a238f67 8308746: C2 IR test failures for TestFpMinMaxReductions.java with SSE2
Co-authored-by: Jatin Bhateja <jbhateja@openjdk.org>
Reviewed-by: chagedorn, thartmann
2023-05-25 11:07:10 +00:00
Pavel Rappo
38367d3c3a 8308735: Typos in parameter names
Reviewed-by: naoto, iris, bpb
2023-05-25 10:22:41 +00:00
Christian Hagedorn
4f096eb7c9 8305635: Replace Parse Predicate IfNode with new ParsePredicateNode and route predicate queries through dedicated classes
Reviewed-by: thartmann, kvn
2023-05-25 09:40:19 +00:00
Sergey Bylokhov
f27bc59f85 8307132: Cleanup the code of sun.java2d.cmm.lcms package
Reviewed-by: prr
2023-05-25 09:36:12 +00:00
Jaikiran Pai
426ebf4fe9 8308475: Make the thread dump files generated by jcmd Thread.dump_to_file jtreg failure handler action easily accessible
Reviewed-by: lmesnik
2023-05-25 09:23:48 +00:00
Axel Boldt-Christmas
8d8153e98a 8307958: Metaspace verification is slow causing extreme class unloading times
Reviewed-by: stuefe, coleenp
2023-05-25 09:03:30 +00:00
Christian Stein
d87713440a 8144891: ToolBox should use java.nio.file.Path internally, instead of java.io.File
Reviewed-by: jjg
2023-05-25 08:56:42 +00:00
Leo Korinth
aaa61899c9 8308506: Reduce testing time by removing combinations tested
Reviewed-by: tschatzl, lmesnik
2023-05-25 08:56:07 +00:00
Aggelos Biboudis
4500bb7a67 8308727: Compiler should accept final unnamed variables in try-with-resources
Reviewed-by: jlahoda
2023-05-25 08:10:02 +00:00
Hannes Wallnöfer
3272e2597a 8305710: Line breaks in search tags cause invalid JSON in index file
Reviewed-by: jjg
2023-05-25 07:40:44 +00:00
Hannes Wallnöfer
3f4abff59c 8305958: Use links instead of buttons for auto-generated header links
Reviewed-by: jjg
2023-05-25 07:30:03 +00:00
Adam Sotona
bfcae68ed1 8308549: Classfile API should fail to generate over-sized Code attribute
Reviewed-by: mchung
2023-05-25 07:13:33 +00:00
Vladimir Kempik
2a18e537d6 8308656: RISC-V: vstring_compare doesnt manifest usage of all vector registers
Reviewed-by: yzhu, fyang
2023-05-25 05:08:39 +00:00
Guoxiong Li
a291f002cd 8288619: Unexpected parsing for @see
Reviewed-by: jjg
2023-05-25 03:25:50 +00:00
Serguei Spitsyn
89b99143ac 8308400: add ForceEarlyReturn support for virtual threads
Reviewed-by: alanb, lmesnik
2023-05-25 02:29:22 +00:00
Chen Liang
1451ac1770 8307652: sealed class hierarchy graph doesn't distinguish non-sealed classes
Reviewed-by: pminborg, jjg
2023-05-24 21:03:47 +00:00
Alex Menkov
207fbcb083 8299414: JVMTI FollowReferences should support references from VirtualThread stack
Reviewed-by: sspitsyn, kevinw
2023-05-24 20:26:10 +00:00
Jim Laskey
b44fa365ca 8308040: Evaluate new public types in non-public classes
Reviewed-by: rriggs, darcy
2023-05-24 19:08:39 +00:00
Tom Rodriguez
ac89e3045b 8308291: compiler/jvmci/meta/ProfilingInfoTest.java fails with -XX:TieredStopAtLevel=1
Reviewed-by: kvn, chagedorn
2023-05-24 18:39:30 +00:00
Coleen Phillimore
bacf652311 8297887: Update Siphash
Reviewed-by: lfoltan
2023-05-24 18:07:03 +00:00
Chris Plummer
89f2d458a2 8308237: add JDWP and JDI virtual thread support for ThreadReference.PopFrames
8308481: JDI TestScaffold does not support passing app arguments to the debuggee
8305632: Test com/sun/jdi/PopAndInvokeTest.java fails with OpaqueFrameException

Reviewed-by: alanb, sspitsyn, lmesnik
2023-05-24 16:54:05 +00:00
Erik Gahlin
d10467e27b 8307738: JFR: EventStream.openRepository() drops events
Reviewed-by: mgronlun
2023-05-24 16:38:50 +00:00
Daniel Fuchs
736b90d54b 8308310: HttpClient: Avoid logging or locking from within synchronized blocks
Reviewed-by: jpai
2023-05-24 14:23:24 +00:00
Martin Doerr
7764f46e9e 8308761: New test TestHFA needs adaptation for JDK-8308276
Reviewed-by: mcimadamore, mbaesken
2023-05-24 13:45:57 +00:00
Maxim Kartashev
d7245f70e7 8305578: X11GraphicsDevice.pGetBounds() is slow in remote X11 sessions
Reviewed-by: avu, serb
2023-05-24 12:48:37 +00:00
Viktor Klang
544978cb76 8298066: java/util/concurrent/locks/Lock/OOMEInAQS.java timed out
Reviewed-by: alanb
2023-05-24 12:41:27 +00:00
Thomas Schatzl
65c8dbe693 8171221: Remove -XX:+CheckMemoryInitialization
Reviewed-by: ayang, shade
2023-05-24 12:02:04 +00:00
Xiaolin Zheng
2d4d850813 8308091: Remove unused iRegIHeapbase() matching operand
Reviewed-by: fyang, thartmann
2023-05-24 09:42:26 +00:00
Emanuel Peter
b7a84b0fd7 8308758: Problemlist compiler/c2/irTests/TestVectorConditionalMove.java
Reviewed-by: chagedorn
2023-05-24 09:38:45 +00:00
Martin Doerr
20f15352a3 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview)
Reviewed-by: jvernee, rrich
2023-05-24 08:38:34 +00:00
Tobias Holenstein
466ec300fc 8302736: Major performance regression in Math.log on aarch64
Reviewed-by: thartmann, dlong, aph
2023-05-24 07:29:25 +00:00
Doug Simon
05c095cf39 8308151: [JVMCI] capture JVMCI exceptions in hs-err
Reviewed-by: never
2023-05-24 07:15:12 +00:00
Emanuel Peter
beb75e651f 8306302: C2 Superword fix: use VectorMaskCmp and VectorBlend instead of CMoveVF/D
Reviewed-by: fgao, jbhateja
2023-05-24 07:00:27 +00:00
Jamil Nimeh
2836c34b64 8179502: Enhance OCSP, CRL and Certificate Fetch Timeouts
Reviewed-by: mullan
2023-05-23 21:32:28 +00:00
Chen Liang
8ffa264cf0 8306698: Add overloads to MethodTypeDesc::of
Reviewed-by: mchung
2023-05-23 21:26:25 +00:00
Valerie Peng
6b27dad76e 8301154: SunPKCS11 KeyStore deleteEntry results in dangling PrivateKey entries
Reviewed-by: weijun, hchao
2023-05-23 21:11:38 +00:00
Daniel D. Daugherty
ed0e956fc2 8308716: ProblemList java/util/concurrent/ScheduledThreadPoolExecutor/BasicCancelTest.java with genzgc on windows-x64
8308718: ProblemList three mlvm/indy/func/jvmti tests on windows-x64 in Xcomp mode
8308720: ProblemList java/awt/event/SequencedEvent/MultipleContextsFunctionalTest.java on macosx-x64

Reviewed-by: azvegint, darcy
2023-05-23 20:43:20 +00:00
Afshin Zafari
bddf48380e 8303942: os::write should write completely
Reviewed-by: coleenp, iklam, dholmes, mgronlun
2023-05-23 17:08:08 +00:00
Quan Anh Mai
ab241b3428 8306706: Support out-of-line code generation for MachNodes
Reviewed-by: thartmann, kvn
2023-05-23 17:06:25 +00:00
Brian Burkhalter
710453c676 8308016: Use snippets in java.io package
Reviewed-by: rriggs
2023-05-23 16:00:40 +00:00
Axel Boldt-Christmas
e9320f31dc 8308116: jdk.test.lib.compiler.InMemoryJavaCompiler.compile does not close files
Reviewed-by: lmesnik, stefank, jlahoda
2023-05-23 15:33:08 +00:00
changpeng1997
97d3b2731e 8307523: [vectorapi] Optimize MaskFromLongBenchmark.java
Reviewed-by: qamai, xgong, ngasson
2023-05-23 14:46:55 +00:00
Jamil Nimeh
bb0ff48aa9 8305091: Change ChaCha20 cipher init behavior to match AES-GCM
Reviewed-by: djelinski, ascarpino
2023-05-23 14:31:08 +00:00
Jan Kratochvil
c0c4d77192 8308544: Fix compilation regression from JDK-8306983 on musl libc
Reviewed-by: bpb, stuefe
2023-05-23 13:50:58 +00:00
Daniel Fuchs
9e196b3631 8308565: HttpClient: Sanitize logging while stopping
Reviewed-by: jpai
2023-05-23 12:07:23 +00:00
Daniel Fuchs
582ddeb2b2 8308545: java/net/httpclient/ShutdownNow.java fails with "stream 1 cancelled"
Reviewed-by: jpai
2023-05-23 12:02:58 +00:00
Jan Lahoda
1cfb265bef 8307814: In the case of two methods with Record Patterns, the second one contains a line number from the first method
Reviewed-by: vromero, godin
2023-05-23 11:47:00 +00:00
Per Minborg
eb11508eff 8308281: Java snippets in the FFM API need to be updated
Reviewed-by: mcimadamore
2023-05-23 11:29:05 +00:00
Emanuel Peter
26227a6ff8 8305073: Fix VerifyLoopOptimizations - step 2 - verify idom
Reviewed-by: chagedorn, thartmann, kvn
2023-05-23 11:25:01 +00:00
Aggelos Biboudis
80d7de7074 8305582: Compiler crash when compiling record patterns with var
Reviewed-by: vromero, jlahoda
2023-05-23 11:18:55 +00:00
Axel Boldt-Christmas
e55961331e 8308500: ZStatSubPhase::register_start should not call register_gc_phase_start if ZAbort::should_abort()
Reviewed-by: stefank, eosterlund
2023-05-23 10:45:01 +00:00
Emanuel Peter
bdd240283e 8260943: C2 SuperWord: Remove dead vectorization optimization added by 8076284
Reviewed-by: kvn, thartmann
2023-05-23 09:51:19 +00:00
Amit Kumar
4f0f776187 8308403: [s390x] separate remaining_cargs from z_abi_160
Reviewed-by: mdoerr, lucy
2023-05-23 08:32:27 +00:00
Emanuel Peter
06b0a5e038 8302652: [SuperWord] Reduction should happen after loop, when possible
Reviewed-by: kvn, pli, jbhateja, sviswanathan
2023-05-23 08:05:13 +00:00
Matthias Baesken
69f508a2ac 8308300: enhance exceptions in MappedMemoryUtils.c
Reviewed-by: alanb, clanger, bpb
2023-05-23 07:43:14 +00:00
Adam Sotona
c4408278d1 8308093: Disable language preview features use in JDK
Reviewed-by: liach, erikj, alanb, darcy
2023-05-23 07:23:37 +00:00
Doug Simon
422128b70a 8306992: [JVMCI] mitigate more against JVMCI related OOME causing VM to exit
Reviewed-by: never
2023-05-23 07:20:00 +00:00
Alan Bateman
fe8c689eee 8308038: java/util/concurrent/ThreadPerTaskExecutor/ThreadPerTaskExecutorTest.java timed out
Reviewed-by: dfuchs, jpai
2023-05-23 07:05:44 +00:00
Alan Bateman
ada416e66c 8308235: ThreadContainer registry accumulates weak refs
Reviewed-by: jpai
2023-05-23 07:05:07 +00:00
Ichiroh Takiguchi
5d8ba938be 8308046: Move Solaris related charsets from java.base to jdk.charsets module
Reviewed-by: naoto
2023-05-23 00:41:59 +00:00
Thomas Stuefe
878162b362 8306507: [linux] Print number of memory mappings in error reports
Reviewed-by: adinn, sgehwolf
2023-05-22 19:59:02 +00:00
Johan Sjölen
90d5041b6a 8300086: Replace NULL with nullptr in share/c1/
Reviewed-by: thartmann, chagedorn
2023-05-22 19:41:59 +00:00
Yi-Fan Tsai
8474e693b4 8308465: Reduce memory accesses in AArch64 MD5 intrinsic
Reviewed-by: aph, phh
2023-05-22 16:53:23 +00:00
quadhier
f99ad11dd1 8302218: CHeapBitMap::free frees with incorrect size
Reviewed-by: aboldtch, iklam, tschatzl
2023-05-22 16:51:20 +00:00
Joe Darcy
d77a41033a 8308388: Update description of SourceVersion.RELEASE_21
Reviewed-by: iris
2023-05-22 16:30:37 +00:00
Matias Saavedra Silva
3f4cfbdd36 8307190: Refactor ref_at methods in Constant Pool
Reviewed-by: coleenp, iklam
2023-05-22 16:27:17 +00:00
Jiangli Zhou
491bdeaa90 8308458: Windows build failure with disassembler.cpp(792): warning C4267: '=': conversion from 'size_t' to 'int'
Reviewed-by: jiefu
2023-05-22 16:24:45 +00:00
Calvin Cheung
b58980b73d 8308034: Some CDS tests need to use @requires vm.flagless
Reviewed-by: iklam
2023-05-22 15:53:04 +00:00
George Adams
29b8d3d9e7 8307573: Implementation of JEP 449: Deprecate the Windows 32-bit x86 Port for Removal
Reviewed-by: erikj
2023-05-22 15:44:52 +00:00
Maurizio Cimadamore
5fc9b5787d 8308276: Change layout API to work with bytes, not bits
Reviewed-by: psandoz, pminborg
2023-05-22 14:57:00 +00:00
Maurizio Cimadamore
91aeb5de58 8287834: Add SymbolLookup::or method
Reviewed-by: psandoz
2023-05-22 14:51:09 +00:00
Thomas Obermeier
4f88437b7f 8307908: [ppc] Add failing RTM tests to ProblemList until 8307907 is fixed.
Reviewed-by: clanger, goetz
2023-05-22 12:37:43 +00:00
Andrew Leonard
dc30e68651 8308407: libjvm library not reproducibly comparable between vendors
Co-authored-by: Simon Tooke <stooke@openjdk.org>
Reviewed-by: andrew, dholmes
2023-05-22 12:23:45 +00:00
Matthew Donovan
18e2446420 8301381: Verify DTLS 1.0 cannot be negotiated
Reviewed-by: xuelei
2023-05-22 12:03:13 +00:00
Prasanta Sadhukhan
b3cb82b859 8307311: Timeouts on one macOS 12.6.1 host of two Swing JTableHeader tests
Reviewed-by: dnguyen, azvegint
2023-05-22 11:42:11 +00:00
Alexander Zvegintsev
3d550f7485 8280993: [XWayland] Popup is not closed on click outside of area controlled by XWayland
Reviewed-by: prr
2023-05-22 11:37:12 +00:00
Darragh Clarke
05e99db466 7065228: To interpret case-insensitive string locale independently
Reviewed-by: dfuchs, naoto, djelinski, jpai, michaelm
2023-05-22 10:53:59 +00:00
Jan Lahoda
a9705196ce 8306983: Do not invoke external programs when switch terminal to raw mode on selected platforms
Co-authored-by: Adam Sotona <asotona@openjdk.org>
Reviewed-by: erikj, vromero, bpb
2023-05-22 10:39:26 +00:00
Andrey Turbanov
6b65e5754c 8305785: Avoid redundant HashMap.containsKey call in java.util.regex
Reviewed-by: stsypanov, jpai
2023-05-22 10:27:13 +00:00
Erik Österlund
8011ba74a2 8308181: Generational ZGC: Remove CLDG_lock from old gen root scanning
Reviewed-by: ayang, aboldtch
2023-05-22 10:20:45 +00:00
Aggelos Biboudis
8aa50288a1 8302344: Compiler Implementation for Unnamed patterns and variables (Preview)
8307444: java.lang.AssertionError when using unnamed patterns
8307482: Compiler should accept var _ in nested patterns in switch case
8307007: Implementation for javax.lang.model for unnamed variables (Preview)
8308312: Compiler should fail when a local variable declaration does not include an Identifier and does not have an initializer
8308309: Compiler should accept mixed masked and unmasked variables in lambda parameters

Co-authored-by: Jan Lahoda <jlahoda@openjdk.org>
Co-authored-by: Aggelos Biboudis <abimpoudis@openjdk.org>
Reviewed-by: vromero, darcy
2023-05-22 08:52:36 +00:00
Leo Korinth
b588797900 8307804: Reorganize ArrayJuggle test cases
Reviewed-by: dholmes, lmesnik
2023-05-22 08:17:53 +00:00
Serguei Spitsyn
928fcf9751 8308000: add PopFrame support for virtual threads
Reviewed-by: lmesnik, alanb
2023-05-22 07:34:35 +00:00
Emanuel Peter
41beb448d2 8308084: C2 fix idom bug in PhaseIdealLoop::create_new_if_for_predicate
Reviewed-by: chagedorn, thartmann, kvn
2023-05-22 06:26:55 +00:00
Emanuel Peter
b6a9f5c304 8307619: C2 failed: Not monotonic (AndI CastII LShiftI) in TestShiftCastAndNotification.java
Reviewed-by: chagedorn, thartmann
2023-05-22 06:23:19 +00:00
Jan Lahoda
eaa80ad08c 8300543: Compiler Implementation for Pattern Matching for switch
8300545: Compiler Implementation for Record Patterns

Co-authored-by: Aggelos Biboudis <abimpoudis@openjdk.org>
Reviewed-by: vromero, mcimadamore
2023-05-22 04:24:06 +00:00
Ioi Lam
5ccc962942 8308342: Remove MetaspaceClosure::Ref::keep_after_pushing()
Reviewed-by: ccheung
2023-05-21 05:32:36 +00:00
Daniel D. Daugherty
a0f4a948bb 8307783: runtime/reflect/ReflectOutOfMemoryError.java timed out
8308468: ProblemList containers/docker/TestMemoryAwareness.java on linux-x64
8308470: ProblemList javax/management/remote/mandatory/connection/BrokenConnectionTest.java on linux-all
8308471: ProblemList javax/management/remote/mandatory/loading/MissingClassTest.java on windows-x64 w/ loom
8308472: ProblemList javax/management/remote/mandatory/loading/RMIDownloadTest.java on windows-x64 w/ loom
8308473: ProblemList java/lang/instrument/NativeMethodPrefixAgent.java with loom

Reviewed-by: lmesnik
2023-05-20 16:40:05 +00:00
Kevin Walls
939344b843 8304685: Fix whitespace parsing in libjdwp
Reviewed-by: cjplummer, amenkov, sspitsyn
2023-05-19 18:57:55 +00:00
Leonid Mesnik
241455fcd1 8307962: Exclude gc/g1/TestSkipRebuildRemsetPhase.java fails with virtual test thread factory
Reviewed-by: sspitsyn
2023-05-19 18:42:23 +00:00
Justin Lu
34468e1c91 8308021: Update IANA Language Subtag Registry to Version 2023-05-11
Reviewed-by: lancea, naoto
2023-05-19 18:22:50 +00:00
Weijun Wang
f0aebc8141 8305972: Update XML Security for Java to 3.0.2
Reviewed-by: mullan
2023-05-19 17:46:41 +00:00
Coleen Phillimore
265f40b4f7 8308396: Fix offset_of conversion warnings in runtime code
Reviewed-by: amitkumar, jsjolen, fparain
2023-05-19 17:16:04 +00:00
Brian Burkhalter
a5343fa605 8281149: (fs) java/nio/file/FileStore/Basic.java fails with java.lang.RuntimeException: values differ by more than 1GB
Reviewed-by: jpai, rriggs
2023-05-19 15:37:37 +00:00
Maurizio Cimadamore
44218b1c9e 8308248: Revisit alignment of layout constants on 32-bit platforms
Reviewed-by: psandoz, pminborg
2023-05-19 14:28:14 +00:00
Adam Sotona
80ef5c228b 8308410: broken compilation of test\jdk\tools\launcher\exeJliLaunchTest.c
Reviewed-by: alanb
2023-05-19 13:11:41 +00:00
Kick-it11
326d778ccf 8306057: False arguments calling dispatch_base for aarch64
Reviewed-by: aph, fyang
2023-05-19 12:59:46 +00:00
Jie Fu
690d3969b8 8308408: Build failure with -Werror=maybe-uninitialized in libjli/java.c with GCC8
Reviewed-by: alanb
2023-05-19 11:13:37 +00:00
Adam Sotona
fa14314853 8303669: SelectVersion indexes past the end of the argv array
Reviewed-by: vromero
2023-05-19 08:09:37 +00:00
Raffaello Giulietti
25868b95ee 8132995: Matcher$ImmutableMatchResult should be optimized to reduce space usage
Reviewed-by: redestad, smarks
2023-05-19 08:04:32 +00:00
Aleksey Shipilev
6765761075 8308118: Avoid multiarray allocations in AESCrypt.makeSessionKey
Reviewed-by: xuelei
2023-05-19 06:53:50 +00:00
Dingli Zhang
97ade57fb2 8307609: RISC-V: Added support for Extract, Compress, Expand and other nodes for Vector API
Co-authored-by: zifeihan <caogui@iscas.ac.cn>
Reviewed-by: fyang, fjiang
2023-05-19 03:09:13 +00:00
Feilong Jiang
e520cdc882 8308277: RISC-V: Improve vectorization of Match.sqrt() on floats
Reviewed-by: fyang
2023-05-19 00:49:28 +00:00
Leonid Mesnik
42948c04b9 8307865: Invalid is_in_any_VTMS_transition() check in post_dynamic_code_generated_while_holding_locks
Reviewed-by: sspitsyn, cjplummer
2023-05-18 23:57:10 +00:00
Chris Plummer
4a6d6d5a59 8308187: jdi/EventSet/resume/resume008 failed with "EventHandler> Unexpected event: ThreadStartEvent in thread resume008-thread0"
Reviewed-by: dcubed
2023-05-18 22:08:10 +00:00
Weijun Wang
148df533af 8308010: X509Key and PKCS8Key allows garbage bytes at the end
Reviewed-by: mullan
2023-05-18 21:23:29 +00:00
Ashutosh Mehra
d3feedf511 8308192: Error in parsing replay file when staticfield is an array of single dimension
Reviewed-by: thartmann, kvn
2023-05-18 19:50:05 +00:00
Alexander Zvegintsev
02dc95e6b9 8308370: Fix build failures related to the java.awt.Robot documentation
Reviewed-by: dcubed
2023-05-18 18:51:46 +00:00
Alexander Zvegintsev
21aa057faf 8307779: Relax the java.awt.Robot specification
Reviewed-by: mkartashev, prr
2023-05-18 18:14:05 +00:00
Joe Darcy
42ecc8a37f 8308245: Add -proc:full to describe current default annotation processing policy
Reviewed-by: vromero
2023-05-18 17:05:28 +00:00
Calvin Cheung
bb24c36759 8279993: Assert that a shared class is not loaded more than once
Reviewed-by: iklam, stuefe
2023-05-18 16:02:55 +00:00
Alisen Chung
1b154e4fd3 8307083: Open source some drag and drop tests 3
Reviewed-by: prr, serb
2023-05-18 15:45:12 +00:00
Jasmine Karthikeyan
cc5c9b5da2 8305787: Wrong debugging information printed with TraceOptoOutput
Reviewed-by: thartmann, kvn
2023-05-18 15:09:45 +00:00
Thomas Stuefe
808dc1b047 8308350: Increase buffer size for jspawnhelper arguments
Reviewed-by: rriggs
2023-05-18 14:01:08 +00:00
Amit Kumar
a58e0ca9d2 8308347: [s390x] build broken after JDK-8304913
Reviewed-by: stuefe, rriggs
2023-05-18 13:51:34 +00:00
bobpengxie
bfc3ccd90d 8308283: Build failure with GCC12 & GCC13
Reviewed-by: erikj, jiefu
2023-05-18 12:26:45 +00:00
Jan Kratochvil
57b8ed1398 8308290: Add fontconfig requirement to building.md
Reviewed-by: erikj
2023-05-18 08:48:16 +00:00
Chen Liang
3c9ec26370 8306457: Classfile API components implementations should not be exposed
Reviewed-by: asotona
2023-05-18 06:54:01 +00:00
Adam Sotona
f4f5542f8d 8306842: Classfile API performance improvements
Reviewed-by: redestad
2023-05-18 06:02:47 +00:00
Thomas Stuefe
95da499ef2 8308285: Assert on -Xshare:dump when running with -Xlog:cds=trace
Reviewed-by: ccheung, iklam
2023-05-18 05:47:23 +00:00
Ioi Lam
6f75dd8741 8308236: Remove SystemDictionaryShared::clone_dumptime_tables()
Reviewed-by: vlivanov, ccheung
2023-05-18 04:10:49 +00:00
Boris Ulasevich
83c096d6e2 8308270: ARM32 build broken after JDK-8304913
Reviewed-by: stuefe, rriggs
2023-05-18 03:14:38 +00:00
Jiangli Zhou
902585bec1 8308110: Resolve multiple definition of 'JNI_OnLoad_jsound' linking error
Reviewed-by: alanb, rasbold
2023-05-17 21:04:34 +00:00
Eric Caspole
6073edf3cd 8307483: New micros for j.u.c.LockSupport
Co-authored-by: Sergey Kuksenko <skuksenko@openjdk.org>
Reviewed-by: shade, redestad
2023-05-17 20:39:26 +00:00
Patricio Chilano Mateo
24094482f0 8307365: JvmtiStressModule hit SIGSEGV in JvmtiEventControllerPrivate::recompute_thread_enabled
Reviewed-by: sspitsyn, dcubed, lmesnik
2023-05-17 20:16:21 +00:00
Alisen Chung
950c5df859 8307299: Move more DnD tests to open
Reviewed-by: prr, serb
2023-05-17 18:57:59 +00:00
Leonid Mesnik
8bedf2efd7 8308292: Problemlist vmTestbase/nsk/jvmti/AttachOnDemand/attach020/TestDescription.java
Reviewed-by: sspitsyn
2023-05-17 17:24:38 +00:00
Brian Burkhalter
6d4782bc73 8307976: (fs) Files.createDirectories(dir) returns dir::toAbsolutePath instead of dir
Reviewed-by: alanb
2023-05-17 16:04:08 +00:00
Joe Darcy
f57c78337e 8308239: Tighten up accessibility of nested classes in java.lang.invoke
Reviewed-by: alanb
2023-05-17 15:31:03 +00:00
Martin Doerr
64f6681cc7 8308246: PPC64le build broken after JDK-8304913
Reviewed-by: shade, mbaesken
2023-05-17 15:10:46 +00:00
Adam Sotona
5763be7267 8307326: Package jdk.internal.classfile.java.lang.constant become obsolete
Reviewed-by: erikj, liach
2023-05-17 12:45:19 +00:00
JoKern65
c7951cf674 8306304: Fix xlc17 clang warnings in ppc and aix code
Reviewed-by: erikj, tsteele, mbaesken
2023-05-17 11:48:56 +00:00
Erik Österlund
285c833ffa 8308043: Deadlock in TestCSLocker.java due to blocking GC while allocating
Reviewed-by: stefank, ayang, tschatzl
2023-05-17 11:47:30 +00:00
Jaikiran Pai
1a6f9810cd 8308185: Update Http2TestServerConnection to use SSLSocket.startHandshake()
Reviewed-by: djelinski
2023-05-17 10:06:22 +00:00
Aleksey Shipilev
b300e73a4a 8308088: Improve class check in CollectedHeap::is_oop
Reviewed-by: zgu, tschatzl, ayang, stuefe
2023-05-17 09:19:08 +00:00
Axel Boldt-Christmas
e34ecc97e6 8296469: Instrument VMError::report with reentrant iteration step for register and stack printing
Reviewed-by: eosterlund, stuefe
2023-05-17 07:07:41 +00:00
Matthias Baesken
5a92aae1d9 8308156: VerifyCACerts.java misses blank in error output
Reviewed-by: mullan, rhalade
2023-05-17 06:42:19 +00:00
Guoxiong Li
2f1c65486b 8307955: Prefer to PTRACE_GETREGSET instead of PTRACE_GETREGS in method 'ps_proc.c::process_get_lwp_regs'
Reviewed-by: cjplummer, kevinw
2023-05-17 03:07:56 +00:00
Ashutosh Mehra
d3e5065284 8306460: Clear JVM_ACC_QUEUED flag on methods when dumping dynamic CDS archive
Reviewed-by: coleenp, iklam
2023-05-16 22:36:44 +00:00
Leonid Mesnik
563152f32d 8308223: failure handler missed jcmd.vm.info command
Reviewed-by: stefank
2023-05-16 19:44:38 +00:00
Erik Helin
cb8b8cdd68 8307458: Add periodic heap usage JFR events
Reviewed-by: stefank, aboldtch
2023-05-16 18:53:58 +00:00
Naoto Sato
f9a785e855 8307547: Support variant collations
Reviewed-by: srl, jlu, alanb
2023-05-16 18:00:45 +00:00
Justin Lu
4e92991809 8300794: Use @snippet in java.util:i18n
Reviewed-by: naoto, lancea
2023-05-16 17:10:21 +00:00
Chris Plummer
64d5157116 8306467: Fix nsk/jdb/kill/kill001 to work with new JVMTI StopThread support for virtual threads.
Reviewed-by: sspitsyn, amenkov
2023-05-16 17:02:12 +00:00
Coleen Phillimore
488330d53b 8307533: Use atomic bitset functions for metadata flags
Reviewed-by: ccheung, kbarrett
2023-05-16 16:46:09 +00:00
Stefan Karlsson
60ab1358da 8308097: Generational ZGC: Update constructor syntax
Reviewed-by: eosterlund, aboldtch
2023-05-16 16:13:58 +00:00
Stefan Karlsson
599fa774b8 8308092: Replace NULL with nullptr in gc/x
Reviewed-by: eosterlund, aboldtch, tschatzl, dholmes
2023-05-16 16:12:20 +00:00
Stefan Karlsson
682359cb48 8299075: TestStringDeduplicationInterned.java fails because extra deduplication
Reviewed-by: kbarrett, tschatzl
2023-05-16 16:04:18 +00:00
Johan Sjölen
9d5bab11f0 8300081: Replace NULL with nullptr in share/asm/
Reviewed-by: coleenp
2023-05-16 15:40:39 +00:00
Amit Kumar
41ee125a0f 8278411: Implement UseHeavyMonitors consistently, s390 port
Reviewed-by: mdoerr, stuefe, lucy
2023-05-16 15:25:19 +00:00
Stefan Karlsson
316bc79e0e 8308188: ProblemList java/util/concurrent/locks/Lock/OOMEInAQS.java with ZGC on all platforms
Reviewed-by: dcubed
2023-05-16 14:48:46 +00:00
Calvin Cheung
8686a36b40 8307315: Missing ResourceMark in CDS and JVMTI code
Reviewed-by: coleenp, iklam
2023-05-16 14:42:33 +00:00
Christoph Dreis
23cbb2d170 8306860: Avoid unnecessary allocation in List.map() when list is empty
Reviewed-by: vromero
2023-05-16 14:22:40 +00:00
Leonid Mesnik
be54b54fb3 8307369: Add execution of all svc tests in CI
Reviewed-by: cjplummer, sspitsyn
2023-05-16 13:39:04 +00:00
Christian Hagedorn
19c8c30d1c 8305634: Renaming predicates, simple cleanups, and adding summary about current predicates
Reviewed-by: epeter, thartmann, roland
2023-05-16 13:30:07 +00:00
Daniel Fuchs
72294c5402 8308024: HttpClient (HTTP/1.1) sends an extraneous empty chunk if the BodyPublisher supplies an empty buffer
Reviewed-by: djelinski, michaelm
2023-05-16 09:13:17 +00:00
Doug Simon
c9b6bb5bd7 8308041: [JVMCI] WB_IsGCSupportedByJVMCICompiler must enter correct JVMCI env
Reviewed-by: thartmann
2023-05-16 08:50:22 +00:00
Kevin Walls
0790f704fd 8306806: JMX agent with JDP enabled won't start when PerfData is disabled
Reviewed-by: dholmes, cjplummer
2023-05-16 08:28:53 +00:00
Serguei Spitsyn
c2ef302468 8307968: serviceability/jvmti/vthread/StopThreadTest/StopThreadTest.java timed out
Reviewed-by: cjplummer, lmesnik
2023-05-16 07:20:01 +00:00
Jaikiran Pai
d22bcc813e 8307403: java/util/zip/DeInflate.java timed out
Reviewed-by: simonis, lancea
2023-05-16 05:06:46 +00:00
Jayathirth D V
2210e06788 8306638: Open source some AWT tests related to datatransfer and Toolkit
Reviewed-by: prr, serb, dnguyen
2023-05-16 04:09:08 +00:00
Ioi Lam
05b51c75b9 8307567: Avoid relocating global roots to metaspaceObjs in CDS dump
Reviewed-by: matsaave, ccheung
2023-05-16 01:40:07 +00:00
Justin Lu
316837226e 8306597: Improve string formatting in EquivMapsGenerator.java
Reviewed-by: naoto
2023-05-15 23:19:02 +00:00
Joe Darcy
7b0b9b570b 8308049: Refactor nested class declarations in FdLibm.java
Reviewed-by: smarks
2023-05-15 20:09:12 +00:00
Chris Plummer
cc80ada739 8306593: Fix nsk/jdi/stop/stop001 for virtual threads and remove from problem list
Reviewed-by: lmesnik, sspitsyn
2023-05-15 18:59:08 +00:00
Yi-Fan Tsai
43c8c650af 8307555: Reduce memory reads in x86 MD5 intrinsic
Reviewed-by: simonis, phh
2023-05-15 18:41:53 +00:00
Roger Riggs
01892f9c6e 8304913: Use OperatingSystem, Architecture, and Version in jlink
Reviewed-by: jpai, alanb, mchung
2023-05-15 18:03:24 +00:00
Roger Riggs
0f7b1c549f 8299340: CreateProcessW lpCommandLine must be mutable
Reviewed-by: naoto
2023-05-15 18:02:43 +00:00
Ioi Lam
57e7a3fbea 8307959: Remove explicit type casts from SerializeClosure::do_xxx() calls
Reviewed-by: matsaave, ccheung
2023-05-15 16:33:37 +00:00
Stefan Karlsson
97b2ca3de7 8307997: gtest:ZIndexDistributorTest fails on PPC64
Reviewed-by: mdoerr
2023-05-15 13:52:34 +00:00
Aleksey Shipilev
ffab1ea9e7 8308086: GHA: x86_32 host configuration failing with unmet dependencies
Reviewed-by: stuefe
2023-05-15 13:51:04 +00:00
Tobias Hartmann
ad348a8cec 8303512: Race condition when computing is_loaded property of TypePtr::InterfaceSet
Reviewed-by: roland, qamai, kvn
2023-05-15 11:06:20 +00:00
gaogao-mem
911cc7cb07 8305819: LogConfigurationTest intermittently fails on AArch64
Reviewed-by: aph, dholmes, xliu
2023-05-15 09:16:32 +00:00
Tobias Hartmann
8d49ba9e8d 8308072: [BACKOUT] update for deprecated sprintf for src/utils
Reviewed-by: iris
2023-05-15 05:42:23 +00:00
Julian Waters
0ee196bef1 8307163: JLONG_FORMAT_SPECIFIER should be updated on Windows
Reviewed-by: stuefe
2023-05-14 13:57:42 +00:00
Vladimir Kempik
3709344166 8291550: RISC-V: jdk uses misaligned memory access when AvoidUnalignedAccess enabled
Co-authored-by: Xiaolin Zheng <xlinzheng@openjdk.org>
Co-authored-by: Feilong Jiang <fjiang@openjdk.org>
Reviewed-by: fjiang, fyang
2023-05-14 06:56:03 +00:00
Kim Barrett
646747fd7c 8307926: Support byte-sized atomic bitset operations
Reviewed-by: aboldtch, coleenp
2023-05-13 23:03:06 +00:00
Daniel D. Daugherty
f030937a51 8305670: Performance regression in LockSupport.unpark with lots of idle threads
Co-authored-by: Robbin Ehn <rehn@openjdk.org>
Reviewed-by: rehn, dholmes
2023-05-13 14:44:57 +00:00
Daniel D. Daugherty
ceca198ef2 8307068: store a JavaThread* in the java.lang.Thread object after the JavaThread* is added to the main ThreadsList
Reviewed-by: dholmes, rehn, apangin
2023-05-13 14:41:19 +00:00
Daniel D. Daugherty
5e26e64cbf 8307067: remove broken EnableThreadSMRExtraValidityChecks option
Reviewed-by: coleenp, dholmes, sspitsyn, rehn
2023-05-13 14:39:58 +00:00
Thomas Stuefe
e54051ae9e 8307935: Class space argument processing can be simplified
Reviewed-by: stefank, coleenp
2023-05-13 06:35:17 +00:00
Valerie Peng
46e3d24a6f 8155191: Specify that SecureRandom.nextBytes(byte[]) throws NullPointerException when byte array is null
Reviewed-by: mullan
2023-05-12 23:00:00 +00:00
Alisen Chung
3bf3876185 8307297: Move some DnD tests to open
Reviewed-by: prr, serb
2023-05-12 21:23:25 +00:00
Chen Liang
d8afc7beeb 8300204: Sealed-class hierarchy graph missing nodes
Reviewed-by: jjg
2023-05-12 20:59:31 +00:00
Chris Plummer
38838b344a 8307480: Improve SA "transported core" documentation for windows
Reviewed-by: sspitsyn, kevinw, poonam
2023-05-12 20:36:38 +00:00
Jonathan Gibbons
9842ff4129 8306607: Apply 80-column output to javac supported version output
Reviewed-by: darcy
2023-05-12 20:29:06 +00:00
Chris Plummer
d809823fe4 8306471: Add virtual threads support to JDWP ThreadReference.Stop and JDI ThreadReference.stop()
Reviewed-by: sspitsyn, alanb
2023-05-12 20:05:21 +00:00
Justin Lu
4441a2306f 6714245: [Col] Collator - Faster Comparison for identical strings.
Reviewed-by: rriggs, naoto
2023-05-12 19:58:37 +00:00
Sergey Chernyshev
a284920b34 8168469: Memory leak in JceSecurity
Reviewed-by: valeriep
2023-05-12 19:24:45 +00:00
Jonathan Gibbons
7455bb23c1 8308015: Syntax of "import static" is incorrect in com.sun.source.tree.ImportTree.java
Reviewed-by: jlaskey, darcy
2023-05-12 17:18:37 +00:00
Maurizio Cimadamore
6ebea8973f 8307911: javadoc for MemorySegment::reinterpret has duplicate restricted method paragraph
Reviewed-by: jvernee
2023-05-12 16:18:00 +00:00
Daniel Fuchs
3c68c352fc 8307535: java.util.logging.Handlers should be more VirtualThread friendly
Reviewed-by: jpai
2023-05-12 15:24:11 +00:00
Brian Burkhalter
9fa8b9a4a6 8307409: Refactor usage examples to use @snippet in the java.nio packages
Reviewed-by: alanb, rriggs
2023-05-12 15:17:22 +00:00
Thomas Schatzl
e512a20679 8306541: Refactor collection set candidate handling to prepare for JDK-8140326
Reviewed-by: iwalulya, ayang
2023-05-12 15:07:48 +00:00
Xue-Lei Andrew Fan
4b0f4213a5 8307855: update for deprecated sprintf for src/utils
Reviewed-by: thartmann
2023-05-12 14:52:28 +00:00
Afshin Zafari
39dc40fed4 8305081: Remove finalize() from test/hotspot/jtreg/compiler/runtime/Test8168712
Reviewed-by: coleenp, thartmann
2023-05-12 14:25:46 +00:00
Albert Mingkun Yang
f7bbbc6590 8307808: G1: Remove partial object-count report after gc
Reviewed-by: tschatzl, iwalulya
2023-05-12 13:13:34 +00:00
Maurizio Cimadamore
13a3fce29e 8307961: java/foreign/enablenativeaccess/TestEnableNativeAccess.java fails with ShouldNotReachHere
Reviewed-by: jvernee
2023-05-12 10:38:27 +00:00
Kim Barrett
f09a0f5ca7 8307806: Rename Atomic::fetch_and_add and friends
Reviewed-by: stefank, dholmes
2023-05-12 09:50:52 +00:00
Yasumasa Suenaga
b6bcbc0cbc 8305770: os::Linux::available_memory() should refer MemAvailable in /proc/meminfo
Reviewed-by: stuefe, sgehwolf, rcastanedalo, dholmes
2023-05-12 08:48:29 +00:00
Afshin Zafari
e1e758a7b4 8305083: Remove finalize() from test/hotspot/jtreg/vmTestbase/nsk/share/ and /jpda that are used in serviceability/dcmd/framework tests
Reviewed-by: coleenp, dholmes
2023-05-12 07:32:46 +00:00
Thomas Schatzl
1ce1611ead 8307518: Remove G1 workaround in jstat about zero sized generation sizes
Reviewed-by: kbarrett, ayang
2023-05-12 07:23:28 +00:00
Xiaolin Zheng
e32de7efd6 8306667: RISC-V: Fix storeImmN0 matching rule by using zr register
Reviewed-by: shade, gli, fyang
2023-05-12 07:10:53 +00:00
Matthias Baesken
f3bd031ccd 8307891: ProblemList gtest/NMTGtest.java subtests on aix
Reviewed-by: mdoerr, lucy
2023-05-12 07:06:45 +00:00
JoKern65
5f1f9460d7 8307520: set minimum supported CPU architecture to Power8 on AIX
Reviewed-by: mbaesken, erikj
2023-05-12 07:02:45 +00:00
Jie Fu
ccb4dd6144 8307969: [zgc] Missing includes in gc/z/zTracer.cpp
Reviewed-by: stefank
2023-05-12 06:31:09 +00:00
Abhishek Kumar
73491fa452 8306996: Open source Swing MenuItem related tests
Reviewed-by: dnguyen, honkar, psadhukhan
2023-05-12 02:52:43 +00:00
Ningsheng Jian
33d9a85730 8307572: AArch64: Vector registers are clobbered by some macroassemblers
Reviewed-by: aph, adinn
2023-05-12 02:05:18 +00:00
Daniel D. Daugherty
9a7b4431ec 8307966: ProblemList java/util/concurrent/locks/Lock/OOMEInAQS.java on linux-x64
Reviewed-by: naoto, lmesnik
2023-05-12 00:51:49 +00:00
Chris Plummer
54c06d2d91 8307559: Add better checking in com/sun/jdi tests for debuggee exiting unexpectedly with an exception
Reviewed-by: kevinw, lmesnik
2023-05-11 23:16:22 +00:00
Jie Fu
ce5907727e 8307945: Build of Client VM is broken after JDK-8307058
Reviewed-by: kvn
2023-05-11 22:35:40 +00:00
Matias Saavedra Silva
a667213ec5 8281715: Move "base CDS archive not loaded" tests to SharedArchiveFileOption.java
Reviewed-by: ccheung, iklam
2023-05-11 19:37:16 +00:00
Joe Darcy
29b8242e07 8307954: Update string template regression tests to be robust on release updates
Reviewed-by: jlaskey
2023-05-11 18:22:10 +00:00
Guoxiong Li
4f355c3525 8307653: Adjust delay time and gc log argument in TestAbortOnVMOperationTimeout
Reviewed-by: dholmes, dcubed
2023-05-11 18:21:30 +00:00
Xue-Lei Andrew Fan
15358636cf 8307848: update for deprecated sprintf for jdk.attach
Reviewed-by: sspitsyn, cjplummer
2023-05-11 18:09:43 +00:00
Xue-Lei Andrew Fan
cbecf422df 8307850: update for deprecated sprintf for jdk.jdi
Reviewed-by: cjplummer
2023-05-11 18:07:54 +00:00
Dean Long
7fcb0fdcd4 8307139: Fix signed integer overflow in compiler code, part 1
Reviewed-by: thartmann, rcastanedalo, kvn
2023-05-11 18:06:43 +00:00
Robert Toyonaga
5d6cce0f85 8307298: JFR: Ensure jdk.jfr.internal.TypeLibrary is initialized only once
Reviewed-by: sgehwolf, egahlin
2023-05-11 18:05:58 +00:00
Serguei Spitsyn
51b8f3cfb9 8306034: add support of virtual threads to JVMTI StopThread
Reviewed-by: cjplummer
2023-05-11 17:48:39 +00:00
Chris Plummer
489658dbd2 8307885: com/sun/jdi/ConnectedVMs.java fails with "Invalid debuggee exitValue: 0"
Reviewed-by: kevinw, sspitsyn
2023-05-11 17:07:27 +00:00
Daniel Fuchs
9ad38cbeaf 8307626: java/net/httpclient/FlowAdapter* tests should close the HttpClient instances
Reviewed-by: aefimov, jpai
2023-05-11 16:31:04 +00:00
Fredrik Bredberg
2bf7ac58b7 8297657: name demangling intermittently fails
Reviewed-by: stefank, coleenp
2023-05-11 14:02:54 +00:00
Stefan Karlsson
d20034b09c 8307058: Implementation of Generational ZGC
Co-authored-by: Stefan Karlsson <stefank@openjdk.org>
Co-authored-by: Erik Österlund <eosterlund@openjdk.org>
Co-authored-by: Axel Boldt-Christmas <aboldtch@openjdk.org>
Co-authored-by: Per Liden <pliden@openjdk.org>
Co-authored-by: Stefan Johansson <sjohanss@openjdk.org>
Co-authored-by: Albert Mingkun Yang <ayang@openjdk.org>
Co-authored-by: Erik Helin <ehelin@openjdk.org>
Co-authored-by: Roberto Castañeda Lozano <rcastanedalo@openjdk.org>
Co-authored-by: Nils Eliasson <neliasso@openjdk.org>
Co-authored-by: Martin Doerr <mdoerr@openjdk.org>
Co-authored-by: Leslie Zhai <lzhai@openjdk.org>
Co-authored-by: Fei Yang <fyang@openjdk.org>
Co-authored-by: Yadong Wang <yadongwang@openjdk.org>
Reviewed-by: eosterlund, aboldtch, rcastanedalo
2023-05-11 13:59:37 +00:00
Yudi Zheng
0cbfbc400a 8307813: [JVMCI] Export markWord::lock_mask_in_place to JVMCI compilers.
Reviewed-by: dnsimon, kvn, never
2023-05-11 10:38:28 +00:00
Maurizio Cimadamore
ba9714d44c 8307610: Linker::nativeLinker should not be restricted (mainline)
Reviewed-by: jvernee
2023-05-11 09:45:45 +00:00
Thomas Stuefe
ecc1d85dbe 8307869: Remove unnecessary log statements from arm32 fastlocking code
Reviewed-by: shade
2023-05-11 09:24:30 +00:00
JoKern65
08fa269886 8307349: Support xlc17 clang toolchain on AIX
Reviewed-by: erikj, mbaesken
2023-05-11 07:40:38 +00:00
Thomas Stuefe
8ac7186331 8305416: runtime/Thread/TestAlwaysPreTouchStacks.java failed with "Did not find expected NMT output"
Reviewed-by: dholmes, gziemski
2023-05-11 04:50:37 +00:00
Thomas Stuefe
984fbbbcab 8307810: Consistently use LockingMode instead of UseHeavyMonitors
Reviewed-by: dcubed, mdoerr, dholmes, amitkumar
2023-05-11 04:47:14 +00:00
Feilong Jiang
39f4e4d3c3 8307758: RISC-V: Improve bit test code introduced by JDK-8291555
Co-authored-by: Fei Yang <fyang@openjdk.org>
Reviewed-by: fyang
2023-05-11 01:32:29 +00:00
David Holmes
3cb606ef5b 8306965: osThread allocation failures should not abort the VM
Reviewed-by: lfoltan
2023-05-11 00:51:15 +00:00
Justin Lu
4795c395e9 8281103: Give example for Locale that is English and follows the ISO standards
Reviewed-by: rriggs, lancea, naoto
2023-05-10 23:57:48 +00:00
Jonathan Gibbons
958d4a7505 8307563: make most fields final in JavacTrees
Reviewed-by: vromero
2023-05-10 22:23:04 +00:00
Jonathan Gibbons
f250ab2c2a 8307377: Remove use of tagName from TagletWriterImpl.linkSeeReferenceOutput
Reviewed-by: hannesw
2023-05-10 22:05:58 +00:00
Ashutosh Mehra
cc9f7ad9ce 8307765: DynamicArchiveHeader contents are missing in CDS mapfile
Reviewed-by: iklam, ccheung
2023-05-10 21:51:36 +00:00
Daniel D. Daugherty
edc4adb77e 8307860: [BACKOUT] JDK-8307194 Add make target for optionally building a complete set of all JDK and hotspot libjvm static libraries
Reviewed-by: erikj
2023-05-10 21:08:28 +00:00
Daniel D. Daugherty
df90df298e 8307857: validate-source fails after JDK-8306758
Reviewed-by: rriggs, cjplummer
2023-05-10 19:38:24 +00:00
Chris Plummer
268836482d 8306758: com/sun/jdi/ConnectedVMs.java fails with "Non-zero debuggee exitValue: 143"
Reviewed-by: amenkov, sspitsyn
2023-05-10 19:09:24 +00:00
Jiangli Zhou
1964954da9 8307194: Add make target for optionally building a complete set of all JDK and hotspot libjvm static libraries
Reviewed-by: erikj, sgehwolf
2023-05-10 17:26:02 +00:00
Kevin Walls
9af1787ebe 8307244: Remove redundant class RMIIIOPServerImpl
Reviewed-by: sspitsyn, dfuchs, alanb
2023-05-10 16:44:49 +00:00
Viktor Klang
8a95020ab6 8151531: Add notes to BaseStream.spliterator/iterator docs regarding them being escape hatches
Reviewed-by: psandoz
2023-05-10 16:29:34 +00:00
Archie Cobbs
0198afca3a 8305748: Clarify reentrant behavior of close() in FileInputStream, FileOutputStream, and RandomAccessFile
Reviewed-by: alanb, bpb
2023-05-10 16:24:00 +00:00
Daniel D. Daugherty
1bca05eace 8307799: Newly added java/awt/dnd/MozillaDnDTest.java has invalid jtreg @requires clause
Reviewed-by: rriggs, azvegint
2023-05-10 14:40:56 +00:00
Johan Sjölen
cc396895e5 8300245: Replace NULL with nullptr in share/jfr/
Reviewed-by: mgronlun, coleenp
2023-05-10 12:35:21 +00:00
Coleen Phillimore
4251b56214 8306843: JVMTI tag map extremely slow after JDK-8292741
Reviewed-by: sspitsyn, iklam
2023-05-10 12:32:06 +00:00
Afshin Zafari
ab34cb98c8 8305082: Remove finalize() from test/hotspot/jtreg/runtime/linkResolver/InterfaceObjectTest.java
Reviewed-by: coleenp, dholmes
2023-05-10 12:20:00 +00:00
Johannes Bechberger
0da48f19cb 8307732: build-test-lib is broken
Reviewed-by: erikj, djelinski
2023-05-10 12:13:22 +00:00
Jim Laskey
4aa65cbeef 8285932: Implementation of JEP 430 String Templates (Preview)
Reviewed-by: mcimadamore, rriggs, darcy
2023-05-10 11:34:01 +00:00
Aleksei Efimov
da2c930262 8302845: Replace finalizer usage in JNDI DNS provider with Cleaner
Reviewed-by: alanb, dfuchs, djelinski
2023-05-10 09:39:00 +00:00
Oli Gillespie
540c706bbc 8307348: Parallelize heap walk for ObjectCount(AfterGC) JFR event collection
Reviewed-by: shade, ayang, tschatzl
2023-05-10 08:54:18 +00:00
Fredrik Bredberg
d993432d44 8306930: Incorrect assert in BitMap::count_one_bits
Reviewed-by: stefank, tschatzl, kbarrett
2023-05-10 07:55:11 +00:00
Tobias Hotz
4b4c80bb31 8307351: (CmpI/L(AndI/L reg1 reg2)) on x86 can be optimized
Reviewed-by: sviswanathan, qamai, thartmann
2023-05-10 05:48:02 +00:00
Feilong Jiang
d3e6d04e3e 8307651: RISC-V: stringL_indexof_char instruction has wrong format string
Reviewed-by: fyang
2023-05-10 03:10:31 +00:00
Serguei Spitsyn
2be1f10fec 8307399: get rid of compatibility ThreadStart/ThreadEnd events for virtual threads
Reviewed-by: alanb, pchilanomate, cjplummer
2023-05-10 01:48:03 +00:00
Alex Menkov
f5a6b7f7c0 8306027: Clarify JVMTI heap functions spec about virtual thread stack.
Reviewed-by: alanb, sspitsyn
2023-05-09 21:14:17 +00:00
Leonid Mesnik
a1c3adb88d 8307370: Add tier1 testing with thread factory in CI
Reviewed-by: sspitsyn
2023-05-09 21:03:25 +00:00
Roger Riggs
356667f155 8307466: java.time.Instant calculation bug in until and between methods
Co-authored-by: Raffaello Giulietti <rgiulietti@openjdk.org>
Reviewed-by: scolebourne, naoto
2023-05-09 20:51:33 +00:00
Alisen Chung
723582c524 8306881: Update FreeType to 2.13.0
Reviewed-by: prr, dnguyen
2023-05-09 19:30:50 +00:00
Alisen Chung
98294242a9 8307128: Open source some drag and drop tests 4
Reviewed-by: prr
2023-05-09 19:14:12 +00:00
Leonid Mesnik
7f05f6f7c7 8307307: Improve ProcessTools.java to don't try to run Virtual wrapper for incompatible processes
Reviewed-by: alanb
2023-05-09 18:06:40 +00:00
Thiago Henrique Hüpner
dde557e312 8304148: Remapping a class with Invokedynamic constant loses static bootstrap arguments
Reviewed-by: asotona
2023-05-09 17:33:27 +00:00
Justin Lu
82bcee76ea 8159337: Introduce a method in Locale class to return the language tags as per RFC 5646 convention
Reviewed-by: naoto, rriggs
2023-05-09 17:15:06 +00:00
Leonid Mesnik
3aff5eacbd 8307486: ProcessTools.java should wait until vthread is completed before checking exceptions
Reviewed-by: dholmes, alanb
2023-05-09 16:36:21 +00:00
Xue-Lei Andrew Fan
44fa12e751 8303830: update for deprecated sprintf for jdk.accessibility
Reviewed-by: kizune
2023-05-09 15:49:28 +00:00
Viktor Klang
fdbfc8a73b 8133773: clarify specification of Spliterator.tryAdvance
Reviewed-by: psandoz, tvaleev, rriggs
2023-05-09 15:37:23 +00:00
Matthew Donovan
5842fd5beb 8306015: Update sun.security.ssl TLS tests to use SSLContextTemplate or SSLEngineTemplate
Reviewed-by: xuelei
2023-05-09 14:25:40 +00:00
Axel Boldt-Christmas
672bade522 8306738: Select num workers for safepoint ParallelCleanupTask
Reviewed-by: shade, coleenp, tschatzl
2023-05-09 14:04:26 +00:00
Adam Sotona
a05560d993 8305990: Stripping debug info of ASM 9.5 fails
Reviewed-by: mcimadamore
2023-05-09 13:13:17 +00:00
Josef Eisl
040cb7b5a9 8307588: [JVMCI] HotSpotConstantPool#lookupBootstrapMethodInvocation broken by JDK-8301995
Reviewed-by: dnsimon, never, kvn
2023-05-09 12:29:27 +00:00
Maurizio Cimadamore
f92d095e16 8307411: Test java/foreign/channels/TestAsyncSocketChannels.java failed: IllegalStateException: Already closed
Reviewed-by: jvernee
2023-05-09 11:11:15 +00:00
Maurizio Cimadamore
7a3bea1f6a 8307629: FunctionDescriptor::toMethodType should allow sequence layouts (mainline)
Reviewed-by: jvernee
2023-05-09 11:09:39 +00:00
Roland Westrelin
d2b3eef0f2 8307131: C2: assert(false) failed: malformed control flow
Reviewed-by: kvn, chagedorn, thartmann
2023-05-09 09:54:22 +00:00
Chen Liang
cd5d0ff5b2 8304031: Classfile API cannot encode Primitive Class as Condy
Reviewed-by: asotona
2023-05-09 09:14:18 +00:00
Sean Coffey
07f55c5ea2 8305950: Have -XshowSettings option display tzdata version
Reviewed-by: rriggs
2023-05-09 06:05:58 +00:00
Damon Nguyen
d9052b9466 8307130: Open source few Swing JMenu tests
Reviewed-by: prr
2023-05-08 22:29:48 +00:00
Tom Rodriguez
5e1fe43080 8299229: [JVMCI] add support for UseZGC
Reviewed-by: eosterlund, kvn
2023-05-08 18:40:18 +00:00
Damon Nguyen
14df5c130e 8307165: java/awt/dnd/NoFormatsDropTest/NoFormatsDropTest.java timed out
Reviewed-by: prr
2023-05-08 17:56:27 +00:00
Roman Kennke
7f6358a8b5 8291555: Implement alternative fast-locking scheme
Co-authored-by: Fei Yang <fyang@openjdk.org>
Co-authored-by: Thomas Stuefe <stuefe@openjdk.org>
Reviewed-by: dcubed, stuefe, shade, dholmes, dlong
2023-05-08 17:51:39 +00:00
Volker Simonis
4116b109f0 8306461: ObjectInputStream::readObject() should handle negative array sizes without throwing NegativeArraySizeExceptions
Co-authored-by: Yakov Shafranovich <yakovsh@amazon.com>
Reviewed-by: shade, rriggs
2023-05-08 14:56:05 +00:00
Raffaello Giulietti
93ee19f58a 8305486: Add split() variants that keep the delimiters to String and j.u.r.Pattern
Reviewed-by: jpai, rriggs
2023-05-08 14:51:35 +00:00
Conor Cleary
ad90fb6da3 8293786: HttpClient will not send more than 64 kb of data from the 2nd request in http2
Reviewed-by: dfuchs, djelinski
2023-05-08 14:49:43 +00:00
Fredrik Bredberg
5a259d875e 8303153: Native interpreter frame missing mirror
Reviewed-by: coleenp, fyang
2023-05-08 14:44:54 +00:00
Darragh Clarke
4b02956d42 8054022: HttpURLConnection timeouts with Expect: 100-Continue and no chunking
Reviewed-by: djelinski, dfuchs
2023-05-08 14:33:44 +00:00
Tyler Steele
9f34e4f8d9 8304434: [AIX] Update minimum xlclang version
Reviewed-by: erikj, mbaesken
2023-05-08 14:29:51 +00:00
Matthias Baesken
d2e0e534d7 8307604: gcc12 based Alpine build broken build after JDK-8307301
Reviewed-by: lucy, mdoerr, erikj
2023-05-08 14:16:08 +00:00
Zhengyu Gu
e91f0d3dba 8307571: Remove unused SomeConstants in WatcherThread class
Reviewed-by: dholmes
2023-05-08 14:10:14 +00:00
Dingli Zhang
26755a9686 8306408: Fix the format of several tables in building.md
Reviewed-by: erikj
2023-05-08 14:00:05 +00:00
Jie Fu
64c0962866 8307569: Build with gcc8 is broken after JDK-8307301
Reviewed-by: erikj
2023-05-08 13:56:45 +00:00
Matthias Baesken
bb3e44d8b6 8307603: [AIX] Broken build after JDK-8307301
Reviewed-by: mdoerr
2023-05-08 12:24:41 +00:00
Arno Zeller
5c7ede94ae 8307347: serviceability/sa/ClhsdbDumpclass.java could leave files owned by root on macOS
Reviewed-by: stuefe, cjplummer
2023-05-08 08:36:52 +00:00
Albert Mingkun Yang
89b7d07597 8307100: Remove ReferentBasedDiscovery reference discovery policy
Reviewed-by: kbarrett, dholmes, tschatzl
2023-05-08 08:31:04 +00:00
Hannes Wallnöfer
f6ea89795b 8306285: Missing file in search test
Reviewed-by: jjg
2023-05-08 08:03:49 +00:00
Stefan Karlsson
33245d6b38 8307517: Add VMErrorCallback infrastructure to extend hs_err dumping
Reviewed-by: eosterlund, aboldtch, dholmes, stuefe
2023-05-08 07:58:06 +00:00
Stefan Karlsson
7a1cb64bc1 8293547: Add relaxed add_and_fetch for macos aarch64 atomics
Reviewed-by: dholmes, eosterlund
2023-05-08 07:54:08 +00:00
Stefan Karlsson
68f385c1ca 8307428: jstat tests doesn't tolerate dash in the O column
Reviewed-by: kevinw, cjplummer
2023-05-08 07:52:25 +00:00
Amit Kumar
8bbd264c6e 8307423: [s390x] Represent Registers as values
Reviewed-by: mdoerr, lucy
2023-05-08 07:51:29 +00:00
Stefan Karlsson
959e62ca3e 8307521: Introduce check_oop infrastructure to check oops in the oop class
Reviewed-by: eosterlund, aboldtch, coleenp
2023-05-08 07:48:45 +00:00
Emanuel Peter
ad0e5a99ca 8304720: SuperWord::schedule should rebuild C2-graph from SuperWord dependency-graph
Reviewed-by: kvn, fgao
2023-05-08 06:09:10 +00:00
Gui Cao
495f2688d6 8306966: RISC-V: Support vector cast node for Vector API
Co-authored-by: Dingli Zhang <dingli@iscas.ac.cn>
Reviewed-by: fyang, fjiang
2023-05-08 01:15:12 +00:00
changpeng1997
0dca573ca5 8301739: AArch64: Add optimized rules for vector compare with immediate for SVE
Reviewed-by: aph, eliu
2023-05-06 07:20:20 +00:00
Alexander Zvegintsev
3d3eaed913 8306941: Open source several datatransfer and dnd AWT tests
Reviewed-by: prr
2023-05-06 02:16:32 +00:00
Feilong Jiang
1f57ce0a06 8307446: RISC-V: Improve performance of floating point to integer conversion
Reviewed-by: fyang, vkempik, gli
2023-05-06 01:23:40 +00:00
Ioi Lam
4e4828eaff 8307553: Remove dead code MetaspaceClosure::push_method_entry
Reviewed-by: coleenp, ccheung
2023-05-06 01:20:03 +00:00
Alexander Zvegintsev
7d58978f62 8280031: Deprecate GTK2 for removal
Reviewed-by: prr
2023-05-05 20:16:26 +00:00
Weijun Wang
b5922c3b86 8305846: Support compilation in Proc test utility
Reviewed-by: valeriep
2023-05-05 20:03:11 +00:00
Oli Gillespie
73ac710533 8307425: Socket input stream read burns CPU cycles with back-to-back poll(0) calls
Reviewed-by: alanb
2023-05-05 19:36:35 +00:00
Leonid Mesnik
e2b1013f11 8306326: [BACKOUT] 8277573: VmObjectAlloc is not generated by intrinsics methods which allocate objects
Reviewed-by: sspitsyn, thartmann, kvn
2023-05-05 18:57:33 +00:00
Harshitha Onkar
4386d42d31 8307381: Open Source JFrame, JIF related Swing Tests
Reviewed-by: dnguyen, kizune
2023-05-05 18:12:48 +00:00
Matias Saavedra Silva
27764e6035 8306583: Add JVM crash check in CDSTestUtils.executeAndLog
Reviewed-by: iklam, ccheung
2023-05-05 18:06:19 +00:00
Rajat Mahajan
6c71859ac2 6176679: Application freezes when copying an animated gif image to the system clipboard
Reviewed-by: aivanov, dmarkov
2023-05-05 18:03:58 +00:00
Calvin Cheung
65a54883b3 8306712: CDS DeterministicDump.java test fails with -XX:+UseStringDeduplication
Reviewed-by: iklam, matsaave
2023-05-05 17:39:40 +00:00
Harshitha Onkar
d8b230c384 8307301: Update HarfBuzz to 7.2.0
Reviewed-by: prr
2023-05-05 17:33:25 +00:00
Damon Nguyen
b5a48277ab 8306871: Open source more AWT Drag & Drop tests
Reviewed-by: prr
2023-05-05 16:28:03 +00:00
Maurizio Cimadamore
47422be2d1 8307375: Alignment check on layouts used as sequence element is not correct
Reviewed-by: jvernee
2023-05-05 15:59:13 +00:00
Roman Kennke
3968ab5db5 8307395: Add missing STS to Shenandoah
Reviewed-by: shade
2023-05-05 15:56:10 +00:00
Roman Kennke
12d6ec66a6 8307236: Rendezvous GC threads under STS for monitor deflation
Reviewed-by: eosterlund, shade
2023-05-05 14:35:33 +00:00
Matias Saavedra Silva
6fe959c62d 8307306: Change some ConstantPool::name_ref_at calls to uncached_name_ref_at
Co-authored-by: Ioi Lam <iklam@openjdk.org>
Reviewed-by: coleenp, fparain
2023-05-05 14:24:40 +00:00
Matthew Donovan
3f6a3545a2 8305169: java/security/cert/CertPathValidator/OCSP/GetAndPostTests.java -- test server didn't start in timely manner
Reviewed-by: ssahoo, jnimeh
2023-05-05 14:17:00 +00:00
Afshin Zafari
f143bf7c45 8305084: Remove the removal warnings for finalize() from test/hotspot/jtreg/serviceability/dcmd/gc/FinalizerInfoTest.java and RunFinalizationTest.java
Reviewed-by: dholmes, cjplummer
2023-05-05 13:22:01 +00:00
Weibing Xiao
746f8d1333 8305714: Add an extra test for JDK-8292755
Reviewed-by: coffeys
2023-05-05 13:19:20 +00:00
Afshin Zafari
1a1ce66dc9 8305080: Suppress the 'removal' warning for finalize() from test/hotspot/jtreg/compiler/jvmci/common/testcases that used in compiler/jvmci/compilerToVM/ tests
Reviewed-by: dnsimon, coleenp
2023-05-05 13:12:19 +00:00
Adam Sotona
3b430b9f73 8250596: Update remaining manpage references from "OS X" to "macOS"
Reviewed-by: mullan, cjplummer, dholmes, sspitsyn
2023-05-05 08:54:53 +00:00
Johan Sjölen
948f3b3c24 8301493: Replace NULL with nullptr in cpu/aarch64
Reviewed-by: tschatzl, gziemski, dholmes
2023-05-05 08:54:05 +00:00
Andrew Dinn
f94f957734 8307331: Correctly update line maps when class redefine rewrites bytecodes
Reviewed-by: sspitsyn
2023-05-05 07:50:21 +00:00
Thomas Schatzl
302bc2fd7f 8307421: Fix comment in g1CollectionSetChooser.hpp after JDK-8306836
Reviewed-by: shade
2023-05-05 06:36:08 +00:00
Kim Barrett
e19cf26d65 8307196: Dangling pointer warning for MetadataAllocationRequest
Reviewed-by: dholmes, eosterlund
2023-05-05 06:20:32 +00:00
William Kemper
1b143ba787 8307378: Allow collectors to provide specific values for GC notifications' actions
Reviewed-by: kdnilsen, stefank
2023-05-05 05:43:05 +00:00
Leonid Mesnik
a44e8908a1 8307308: Add serviceability_ttf_virtual group to exclude jvmti tests developed for virtual threads
Reviewed-by: sspitsyn
2023-05-05 00:43:59 +00:00
Eric Liu
46df171d53 8304948: [vectorapi] C2 crashes when expanding VectorBox
Reviewed-by: thartmann, qamai
2023-05-05 00:34:12 +00:00
Daniel D. Daugherty
111858f3ff 8307489: ProblemList jdk/incubator/vector/LoadJsvmlTest.java on windows-x64
8307490: ProblemList sun/security/pkcs11/Cipher/TestKATForGCM.java on linux-x64 and macosx-x64
8307491: ProblemList sanity/client/SwingSet/src/EditorPaneDemoTest.java on linux-x64

Reviewed-by: darcy
2023-05-04 21:32:35 +00:00
Kevin Driver
197d0cc603 8294983: SSLEngine throws ClassCastException during handshake
Co-authored-by: Daniel Jeliński <djelinski@openjdk.org>
Reviewed-by: wetmore, xuelei
2023-05-04 19:25:01 +00:00
Coleen Phillimore
a87262efb2 8307295: Add warning to not create new ACC flags
Reviewed-by: dholmes, fparain
2023-05-04 17:42:14 +00:00
Markus Grönlund
0c6529d2d3 8307156: native_thread not protected by TLH
Reviewed-by: coleenp, dcubed
2023-05-04 17:26:31 +00:00
Phil Race
5ca0b08a75 8307133: Open source some JTable jtreg tests
Reviewed-by: serb
2023-05-04 16:44:24 +00:00
Alexander Zvegintsev
2adb3b409e 8306943: Open source several dnd AWT tests
Reviewed-by: prr, serb
2023-05-04 15:39:08 +00:00
Chen Liang
dc4096ce13 8304937: BufferedFieldBuilder.Model missing writeTo(DirectClassBuilder)
Reviewed-by: asotona
2023-05-04 13:24:08 +00:00
Stefan Johansson
29233e0a00 8307448: Test RedefineSharedClassJFR fail due to wrong assumption
Reviewed-by: eosterlund, coleenp
2023-05-04 12:48:56 +00:00
Stefan Johansson
408cec516b 8306929: Avoid CleanClassLoaderDataMetaspaces safepoints when previous versions are shared
Reviewed-by: coleenp, sspitsyn
2023-05-04 11:00:44 +00:00
Maurizio Cimadamore
cecf817f5e 8307181: MemoryLayout.structLayout uses undocumented strict alignment constraints
Reviewed-by: jvernee
2023-05-04 09:44:31 +00:00
Oli Gillespie
3f1927a7f3 8307346: Add missing gc+phases logging for ObjectCount(AfterGC) JFR event collection code
Reviewed-by: tschatzl, shade, ayang
2023-05-04 09:19:19 +00:00
Kevin Walls
e206d57bfc 8307362: Remove test com/sun/jdi/JdbLastErrorTest.java
Reviewed-by: dcubed
2023-05-04 06:31:15 +00:00
Abhishek Kumar
82a8e91ef7 8306489: Open source AWT List related tests
Reviewed-by: prr, serb
2023-05-04 06:08:31 +00:00
Tejesh R
465bdd9e41 8307091: A few client tests intermittently throw ConcurrentModificationException
Reviewed-by: prr, dnguyen
2023-05-04 04:52:00 +00:00
Leonid Mesnik
caee1beaaf 8307305: Update debugger tests to support JTREG_TEST_THREAD_FACTORY mode
Reviewed-by: cjplummer
2023-05-04 03:51:24 +00:00
Kim Barrett
3599448ad8 8307147: [x86] Dangling pointer warning for Assembler::_attributes
Reviewed-by: dholmes, aph
2023-05-04 02:08:07 +00:00
Leonid Mesnik
64ac9a05e8 8306946: jdk/test/lib/process/ProcessToolsStartProcessTest.java fails with "wrong number of lines in OutputAnalyzer output"
Reviewed-by: dholmes
2023-05-04 01:10:54 +00:00
Jiangli Zhou
03030d47eb 8307134: Add GTS root CAs
Co-authored-by: Andy Warner <awarner@google.com>
Co-authored-by: Rajan Halade <rhalade@openjdk.org>
Reviewed-by: mullan, rhalade
2023-05-03 21:09:22 +00:00
jeremy
63cd0a36da 4200096: OffScreenImageSource.removeConsumer NullPointerException
Reviewed-by: prr, serb
2023-05-03 20:48:07 +00:00
Kevin Driver
db8b3cd084 8305963: Typo in java.security.Security.getProperty
Co-authored-by: Sean Coffey <coffeys@openjdk.org>
Reviewed-by: coffeys, wetmore
2023-05-03 20:47:23 +00:00
Martin Desruisseaux
dcb2f3f502 8306320: BufferedImage spec needs clarification w.r.t its implementation of the WritableRenderedImage interface
Reviewed-by: prr
2023-05-03 20:45:57 +00:00
Harshitha Onkar
14874779ee 8305815: Update Libpng to 1.6.39
Reviewed-by: prr
2023-05-03 19:39:12 +00:00
Matthew Donovan
705ad7d829 8306014: Update javax.net.ssl TLS tests to use SSLContextTemplate or SSLEngineTemplate
Reviewed-by: xuelei
2023-05-03 18:00:10 +00:00
Jonathan Gibbons
3930709af4 8068925: Add @Override in javax.tools classes
Reviewed-by: darcy, iris
2023-05-03 17:32:24 +00:00
Thomas Schatzl
fc76687c2f 8306836: Remove pinned tag for G1 heap regions
Reviewed-by: ayang, cjplummer, sspitsyn
2023-05-03 13:50:02 +00:00
Roland Westrelin
ccf91f881c 8306933: C2: "assert(false) failed: infinite loop" failure
Reviewed-by: chagedorn, thartmann
2023-05-03 11:14:53 +00:00
Emanuel Peter
e9807a4b0f 8306042: C2: failed: Missed optimization opportunity in PhaseCCP (adding LShift->Cast->Add notification)
Reviewed-by: thartmann, chagedorn, kvn
2023-05-03 10:45:30 +00:00
Aleksey Shipilev
fcb280a48b 8305092: Improve Thread.sleep(millis, nanos) for sub-millisecond granularity
Reviewed-by: dholmes, alanb
2023-05-03 09:39:57 +00:00
Albert Mingkun Yang
891530fbc9 8307005: Make CardTableBarrierSet::initialize non-virtual
Reviewed-by: dholmes
2023-05-03 09:26:27 +00:00
Roland Westrelin
e0774bed2d 8306997: C2: "malformed control flow" assert due to missing safepoint on backedge with a switch
Reviewed-by: thartmann, kvn
2023-05-03 08:29:01 +00:00
Erik Österlund
462b1df758 8307106: Allow concurrent GCs to walk CLDG without ClassLoaderDataGraph_lock
Reviewed-by: stefank, aboldtch, coleenp, dholmes
2023-05-03 08:16:15 +00:00
Adam Sotona
c8f37564bf 8306729: Add nominal descriptors of modules and packages to Constants API
Reviewed-by: mchung
2023-05-03 06:34:58 +00:00
Feilong Jiang
0b5b6429a0 8307150: RISC-V: Remove remaining StoreLoad barrier with UseCondCardMark for Serial/Parallel GC
Reviewed-by: shade, fyang
2023-05-03 02:23:41 +00:00
Damon Nguyen
418a82551a 8306466: Open source more AWT Drag & Drop related tests
Reviewed-by: prr
2023-05-02 23:45:44 +00:00
Eamonn McManus
74667e3d56 8303919: Instant.ofEpochMilli says it can throw an exception that it can't
Reviewed-by: rriggs
2023-05-02 23:26:01 +00:00
Harshitha Onkar
76991c8129 8282232: [Win] GetMousePositionWithPopup test fails due to wrong mouse position
Reviewed-by: prr
2023-05-02 23:22:17 +00:00
Stuart Marks
05b9b5821d 8302496: Runtime.exit incorrectly says it never throws an exception
Reviewed-by: alanb
2023-05-02 23:19:30 +00:00
Kim Barrett
8a70664e52 8293117: Add atomic bitset functions
Reviewed-by: shade, coleenp, dholmes
2023-05-02 21:27:01 +00:00
Liam Miller-Cushon
8c106b0c8e 8303784: no-@Target annotations should be applicable to type parameter declarations
Reviewed-by: vromero
2023-05-02 18:19:03 +00:00
Jonathan Gibbons
b76f320e76 8307123: Fix deprecation warnings in DPrinter
Reviewed-by: vromero
2023-05-02 16:54:39 +00:00
Jorn Vernee
a8bf2acb7d 8304888: Add dedicated VMProps for linker and fallback linker
Reviewed-by: alanb, mcimadamore
2023-05-02 13:56:32 +00:00
Johan Sjölen
75a4edca6b 8301223: Replace NULL with nullptr in share/gc/g1/
Reviewed-by: tschatzl, kbarrett
2023-05-02 13:04:14 +00:00
Yoshiki Sato
544bd260b6 8305505: NPE in javazic compiler
Reviewed-by: naoto
2023-05-02 12:42:15 +00:00
Thomas Stuefe
ea9201f420 8306510: Print number of threads and stack sizes in error reports
Reviewed-by: gziemski, dholmes
2023-05-02 12:18:23 +00:00
Fredrik Bredberg
a8d16dea8e 8300197: Freeze/thaw an interpreter frame using a single copy_to_chunk() call
Reviewed-by: rrich, pchilanomate, fyang
2023-05-02 12:14:12 +00:00
Jorn Vernee
1532a1b0bd 8307164: TestSegmentCopy times out (mainline)
Reviewed-by: mcimadamore
2023-05-02 10:42:49 +00:00
Martin Doerr
860bf9b35f 8307104: [AIX] VM crashes with UseRTMLocking on Power10
Reviewed-by: clanger, lucy
2023-05-02 09:19:49 +00:00
Alan Bateman
86f97fe70c 8305919: java/lang/Thread/virtual/HoldsLock.java#id0 failed, ThreadInfo.getLockInfo() return null
Reviewed-by: jpai
2023-05-02 07:20:19 +00:00
Joe Wang
2179a8f2d6 8298087: XML Schema Validation reports an required attribute twice via ErrorHandler
Reviewed-by: naoto
2023-05-02 03:12:06 +00:00
Serguei Spitsyn
1227a275a1 8306028: separate ThreadStart/ThreadEnd events posting code in JVMTI VTMS transitions
8304444: Reappearance of NULL in jvmtiThreadState.cpp

Reviewed-by: pchilanomate, lmesnik
2023-05-02 02:40:50 +00:00
Vicente Romero
35e75c131d 8301455: comments in TestTypeAnnotations still refer to resolved JDK-8068737
Reviewed-by: jjg
2023-05-01 20:28:50 +00:00
Sergey Tsypanov
561ec9c5a0 8300818: Reduce complexity of padding with DateTimeFormatter
Reviewed-by: redestad, rriggs
2023-05-01 18:24:07 +00:00
Chris Plummer
ae5f678fba 8282384: [LOOM] Need test for ThreadReference.interrupt() on a vthread
Reviewed-by: lmesnik, sspitsyn
2023-05-01 18:13:11 +00:00
Rajan Halade
c7e1df8328 8304760: Add 2 Microsoft TLS roots
Reviewed-by: mullan
2023-05-01 18:03:54 +00:00
Roger Riggs
6acf032db8 8306678: Replace use of os.version with an internal Version record
Reviewed-by: mchung
2023-05-01 17:56:04 +00:00
Roger Riggs
f00a748bc5 8304915: Create jdk.internal.util.Architecture enum and apply
Reviewed-by: erikj, mdoerr, amitkumar
2023-05-01 15:22:07 +00:00
Jorn Vernee
7d07d19523 8305201: Improve error message for GroupLayouts that are too large on SysV
Reviewed-by: mcimadamore
2023-05-01 14:12:51 +00:00
Jorn Vernee
67dd841432 8305093: Linker cache should not take layout names into account
Reviewed-by: mcimadamore
2023-05-01 13:41:00 +00:00
Archie Cobbs
d437c61f5b 8305672: Surprising definite assignment error after JDK-8043179
Reviewed-by: kcr, vromero
2023-05-01 13:23:37 +00:00
Jorn Vernee
b39a9bffda 8301703: java.base jdk.internal.foreign.abi.BindingSpecializer uses ASM to generate classes
Reviewed-by: mcimadamore, asotona
2023-05-01 13:15:16 +00:00
Jorn Vernee
1de1a38859 8303002: Reject packed structs from linker
8300784: Specify exactly how padding should be presented to the linker
8304803: NPE thrown during downcall classification under Linux/x64
8303524: Check FunctionDescriptor byte order when linking

Reviewed-by: mcimadamore
2023-05-01 13:00:41 +00:00
Coleen Phillimore
316d303c1d 8306851: Move Method access flags
Reviewed-by: cjplummer, dholmes, dnsimon, matsaave, fparain
2023-05-01 11:33:22 +00:00
Aleksey Shipilev
a6b4f25bd5 8306825: Monitor deflation might be accidentally disabled by zero intervals
Reviewed-by: dcubed, eastigeevich, phh
2023-05-01 07:56:07 +00:00
Prasanta Sadhukhan
2d7c50791b 8305778: javax/swing/JTableHeader/6884066/bug6884066.java: Unexpected header's value; index = 4 value = E
Reviewed-by: serb, jdv
2023-05-01 04:49:40 +00:00
Prasanta Sadhukhan
e1b06eac72 8305780: javax/swing/JTable/7068740/bug7068740.java fails on Ubunutu 20.04
Reviewed-by: serb, tr
2023-05-01 04:45:38 +00:00
Prasanta Sadhukhan
b54c4a33c6 8299713: Test javax/swing/JTableHeader/6889007/bug6889007.java failed: Wrong type of cursor
Reviewed-by: serb, tr
2023-05-01 04:41:22 +00:00
Hannes Greule
b3dbf28bc0 8292275: javac does not emit SYNTHETIC and MANDATED flags for parameters by default
Co-authored-by: Chen Liang <liach@openjdk.org>
Reviewed-by: vromero, jwaters
2023-04-30 07:34:09 +00:00
Alexander Zuev
6d6d00b69c 8306954: Open source five Focus related tests
Reviewed-by: prr
2023-04-29 18:19:11 +00:00
Lance Andersen
bb7608bacc 8307088: Allow the jdbc.drivers system property to be searchable
Reviewed-by: naoto, joehw
2023-04-29 14:37:13 +00:00
SirYwell
a2d3fc83b0 8304837: Classfile API throws IOOBE for MethodParameters attribute without parameter names
Reviewed-by: asotona, jwaters, vromero
2023-04-29 07:48:14 +00:00
Sergey Bylokhov
d43a5a289f 8307135: java/awt/dnd/NotReallySerializableTest/NotReallySerializableTest.java failed
Reviewed-by: jiefu, prr
2023-04-29 01:29:13 +00:00
Phil Race
1f689241cf 8306955: Open source several JComboBox jtreg tests
Reviewed-by: kizune
2023-04-28 22:42:11 +00:00
Phil Race
b8de39431d 8307080: Open source some more JComboBox jtreg tests
Reviewed-by: kizune
2023-04-28 22:39:17 +00:00
Jorn Vernee
4818c798bc 8307110: zero build broken after JDK-8304265
Reviewed-by: erikj
2023-04-28 21:43:33 +00:00
Stuart Marks
da9efee1c2 8296935: Arrays.asList() can return a List that throws undocumented ArrayStoreException
Reviewed-by: rriggs, lancea
2023-04-28 19:45:29 +00:00
Damon Nguyen
05af487a2d 8306681: Open source more AWT DnD related tests
Reviewed-by: prr, serb
2023-04-28 19:20:16 +00:00
Damon Nguyen
ec5c7926f3 8306133: Open source few AWT Drag & Drop related tests
Reviewed-by: prr, psadhukhan
2023-04-28 19:16:12 +00:00
Alexander Zuev
6d6f726b74 8307078: Opensource and clean up five more AWT Focus related tests
Reviewed-by: serb, prr
2023-04-28 18:46:48 +00:00
Phil Race
89711f3767 8307079: Update test java/awt/Choice/DragOffNoSelect.java
Reviewed-by: azvegint, serb
2023-04-28 18:17:24 +00:00
Weijun Wang
9ff555083a 8307077: Convert CRLF to LF in java.xml.crypto
Reviewed-by: mullan
2023-04-28 16:24:50 +00:00
Madjosz
f83e7302c1 8302983: ZoneRulesProvider.registerProvider() twice will remove provider
Reviewed-by: naoto
2023-04-28 16:23:13 +00:00
Rajan Halade
82ccfe3a21 8305975: Add TWCA Global Root CA
Reviewed-by: mullan
2023-04-28 16:18:02 +00:00
Dean Long
a177152f22 8306331: assert((cnt > 0.0f) && (prob > 0.0f)) failed: Bad frequency assignment in if
Reviewed-by: thartmann, chagedorn
2023-04-28 15:48:39 +00:00
Calvin Cheung
e1196584d5 8303475: potential null pointer dereference in filemap.cpp
Reviewed-by: dholmes
2023-04-28 15:45:44 +00:00
Coleen Phillimore
cf799ba232 8306950: [REDO] JDK-8305252 make_method_handle_intrinsic may call java code under a lock
Reviewed-by: dholmes, matsaave, iklam
2023-04-28 15:14:30 +00:00
Tejesh R
485a0691f4 8306432: Open source several AWT Text Component related tests
Reviewed-by: prr
2023-04-28 14:35:16 +00:00
Tejesh R
169a7c27a7 8306640: Open source several AWT TextArea related tests
Reviewed-by: prr, serb
2023-04-28 14:27:38 +00:00
JoKern65
5d9baa2f93 8306672: support offset in dll_address_to_library_name on AIX
Reviewed-by: stuefe, clanger, mbaesken
2023-04-28 13:07:53 +00:00
Antonios Printezis
83a98c66f1 8307063: When cross-compiling with hsdis/binutils, buildjdk creation fails
Reviewed-by: erikj
2023-04-28 12:31:48 +00:00
Jie Fu
452cb8432f 8307103: Two TestMetaspaceAllocationMT tests fail after JDK-8306696
Reviewed-by: dholmes
2023-04-28 12:27:16 +00:00
Amit Kumar
fee02f0668 8299748: java/util/zip/Deinflate.java failing on s390x
Reviewed-by: jpai, lancea, simonis, aturbanov
2023-04-28 11:55:59 +00:00
Aleksei Voitylov
60a29a668c 8305387: JDK-8301995 breaks arm 32-bit
Reviewed-by: shade, matsaave
2023-04-28 09:41:55 +00:00
Matthias Baesken
3d9d84b742 8307006: ProblemList gtest/NMTGtest.java on aix
Reviewed-by: mdoerr
2023-04-28 06:50:06 +00:00
Afshin Zafari
84df74ca39 8305079: Remove finalize() from compiler/c2/Test719030
Reviewed-by: thartmann, coleenp
2023-04-28 06:32:25 +00:00
Thomas Stuefe
0b5c504ad0 8306696: Remove MetaspaceReclaimPolicy=aggressive and obsolete MetaspaceReclaimPolicy
Reviewed-by: dholmes, rkennke, coleenp
2023-04-28 06:08:24 +00:00
Richard Reingruber
eb3af8abe9 8306901: Macro offset_of confuses Eclipse CDT
Reviewed-by: stuefe, kbarrett
2023-04-28 06:06:56 +00:00
Kim Barrett
d3abfec8b7 8305566: Change StringDedup thread to derive from JavaThread
Reviewed-by: stefank, cjplummer, tschatzl
2023-04-28 03:11:00 +00:00
Justin Lu
f3c90f0445 8306711: Improve diagnosis of IntlTest framework
Reviewed-by: naoto, lancea
2023-04-28 00:16:29 +00:00
Roger Riggs
b827ce8334 8298993: (process) java/lang/ProcessBuilder/UnblockSignals.java fails
Reviewed-by: bchristi
2023-04-27 20:36:40 +00:00
Jonathan Gibbons
7871390930 8306952: improve generic signature of internal DCInlineTag class
Reviewed-by: iris
2023-04-27 19:13:03 +00:00
Naoto Sato
6983d05b73 8306927: Collator treats "v" and "w" as the same letter for Swedish language locale.
Reviewed-by: jlu, iris, joehw
2023-04-27 18:12:41 +00:00
Brian Burkhalter
80fae514b1 8306959: (bf) CharBuffer.append(CharSequence,int,int) throws BufferOverflowException where IndexOutOfBoundsException expected
Reviewed-by: alanb
2023-04-27 17:20:08 +00:00
Raffaello Giulietti
eb358619df 8205592: BigDecimal.doubleValue() is depressingly slow
Reviewed-by: darcy
2023-04-27 17:01:56 +00:00
Abhishek Kumar
41ba05e450 8306850: Open source AWT Model related tests
Reviewed-by: serb, azvegint
2023-04-27 15:59:42 +00:00
Jiangli Zhou
fed262a9cf 8306949: Resolve miscellaneous multiple symbol definition issues when statically linking JDK/VM natives with standard launcher
Reviewed-by: alanb
2023-04-27 15:57:51 +00:00
Albert Mingkun Yang
96cdf93b42 8306833: Change CardTable::_covered to static array
Reviewed-by: tschatzl, kbarrett
2023-04-27 11:40:50 +00:00
Roberto Castañeda Lozano
1be80a4445 8287087: C2: perform SLP reduction analysis on-demand
Reviewed-by: epeter, jbhateja, thartmann
2023-04-27 09:39:53 +00:00
bobpengxie
ba43649530 8306976: UTIL_REQUIRE_SPECIAL warning on grep
Reviewed-by: clanger, mbaesken
2023-04-27 09:19:13 +00:00
Per Minborg
cbccc4c817 8304265: Implementation of Foreign Function and Memory API (Third Preview)
Co-authored-by: Maurizio Cimadamore <mcimadamore@openjdk.org>
Co-authored-by: Jorn Vernee <jvernee@openjdk.org>
Co-authored-by: Paul Sandoz <psandoz@openjdk.org>
Co-authored-by: Feilong Jiang <fjiang@openjdk.org>
Co-authored-by: Per Minborg <pminborg@openjdk.org>
Reviewed-by: erikj, jvernee, vlivanov, psandoz
2023-04-27 09:00:58 +00:00
Daniel Fuchs
41d58533ac 8306940: test/jdk/java/net/httpclient/XxxxInURI.java should call HttpClient::close
Reviewed-by: jpai, djelinski
2023-04-27 08:25:40 +00:00
Thomas Schatzl
d94ce6566d 8306858: Remove some remnants of CMS from SA agent
Reviewed-by: shade, cjplummer, kbarrett, ysr
2023-04-27 07:28:06 +00:00
Thomas Stuefe
a83c02fe2c 8306654: Disable NMT location_printing_cheap_dead_xx tests again
Reviewed-by: dholmes
2023-04-27 07:26:34 +00:00
Dmitry Cherepanov
de0c05da07 6995195: Static initialization deadlock in sun.java2d.loops.Blit and GraphicsPrimitiveMgr
Reviewed-by: serb, aivanov
2023-04-27 07:06:24 +00:00
Axel Boldt-Christmas
748476fd80 8306732: TruncatedSeq::predict_next() attempts linear regression with only one data point
Reviewed-by: tschatzl, kbarrett
2023-04-27 06:56:22 +00:00
Thomas Stuefe
27c5c1070a 8306883: Thread stacksize is reported with wrong units in os::create_thread logging
Reviewed-by: shade
2023-04-27 04:57:29 +00:00
David Holmes
9ebcda2165 8229147: Linux os::create_thread() overcounts guardpage size with newer glibc (>=2.27)
Reviewed-by: shade, stuefe
2023-04-26 22:47:54 +00:00
Archie Cobbs
1e4eafb4fe 8071693: Introspector ignores default interface methods
Reviewed-by: prr, aivanov, serb
2023-04-26 22:45:10 +00:00
Ioi Lam
750bece0c2 8305771: SA ClassWriter.java fails to skip overpass methods
Reviewed-by: kevinw, cjplummer
2023-04-26 20:54:39 +00:00
Coleen Phillimore
b81c9c8442 8306951: [BACKOUT] JDK-8305252 make_method_handle_intrinsic may call java code under a lock
Reviewed-by: dcubed
2023-04-26 20:03:47 +00:00
Abhishek Kumar
732179ca84 8306409: Open source AWT KeyBoardFocusManger, LightWeightComponent related tests
Reviewed-by: psadhukhan, tr, serb
2023-04-26 19:07:25 +00:00
Chris Plummer
38cc0391f3 8306705: com/sun/jdi/PopAndInvokeTest.java fails with NativeMethodException
Reviewed-by: lmesnik, amenkov, sspitsyn
2023-04-26 17:32:05 +00:00
Weijun Wang
01b8512911 8302182: Update Public Suffix List to 88467c9
Reviewed-by: mullan
2023-04-26 17:30:22 +00:00
Justin Lu
8e36c05d6c 8305853: java/text/Format/DateFormat/DateFormatRegression.java fails with "Uncaught exception thrown in test method Test4089106"
Reviewed-by: naoto, lancea
2023-04-26 16:53:43 +00:00
Brian Burkhalter
d0e8aec041 8306374: (bf) Improve performance of DirectCharBuffer::append(CharSequence[,int,int])
Reviewed-by: liach, alanb
2023-04-26 16:37:18 +00:00
Amit Kumar
a18191fee8 8302328: [s390x] Simplify asm_assert definition
Reviewed-by: lucy, mdoerr
2023-04-26 16:06:55 +00:00
Jiangli Zhou
9bc6a212f7 8306033: Resolve multiple definition of 'throwIOException' and friends when statically linking with JDK native libraries
Reviewed-by: alanb
2023-04-26 16:04:48 +00:00
Xin Liu
35e802374c 8306872: Rename Node_Array::Size()
Reviewed-by: kvn, thartmann, shade
2023-04-26 16:02:53 +00:00
Leonid Mesnik
2e340e855b 8233725: ProcessTools.startProcess() has output issues when using an OutputAnalyzer at the same time
Reviewed-by: cjplummer, sspitsyn
2023-04-26 14:53:33 +00:00
Amit Kumar
35e7bc21d3 8306855: [s390x] fix difference in abi sizes
Reviewed-by: mdoerr, lucy
2023-04-26 11:12:42 +00:00
Aleksey Shipilev
9ad6dc881d 8306774: Make runtime/Monitor/GuaranteedAsyncDeflationIntervalTest.java more reliable
Reviewed-by: stuefe, dcubed
2023-04-26 11:11:54 +00:00
Albert Mingkun Yang
c5910fa065 8306749: Make CardTable::invalidate non-virtual
Reviewed-by: tschatzl
2023-04-26 10:58:50 +00:00
Ivan Walulya
86f41a4c42 8306735: G1: G1FullGCScope remove unnecessary member _explicit_gc
Reviewed-by: ayang, tschatzl
2023-04-26 10:09:56 +00:00
Martin Doerr
d74769826d 8306823: Native memory leak in SharedRuntime::notify_jvmti_unmount/mount.
Reviewed-by: pchilanomate, sspitsyn
2023-04-26 08:29:06 +00:00
Roberto Castañeda Lozano
8d899925dc 8298189: Regression in SPECjvm2008-MonteCarlo for pre-Cascade Lake Intel processors
Co-authored-by: Quan Anh Mai <qamai@openjdk.org>
Reviewed-by: shade, thartmann, kvn
2023-04-26 08:25:11 +00:00
Tejesh R
44d9f55d0b 8306072: Open source several AWT MouseInfo related tests
Reviewed-by: serb, psadhukhan
2023-04-26 05:44:13 +00:00
Emanuel Peter
cc894d849a 8303466: C2: failed: malformed control flow. Limit type made precise with MaxL/MinL
Reviewed-by: roland, kvn, chagedorn, thartmann
2023-04-26 05:42:26 +00:00
Abhishek Kumar
ed1ebd242a 8306652: Open source AWT MenuItem related tests
Reviewed-by: prr, psadhukhan
2023-04-26 05:17:48 +00:00
Prasanta Sadhukhan
f3e8bd1d11 8306755: Open source few Swing JComponent and AbstractButton tests
Reviewed-by: prr
2023-04-26 03:13:56 +00:00
Dingli Zhang
1c1a73f715 8302908: RISC-V: Support masked vector arithmetic instructions for Vector API
Co-authored-by: zifeihan <caogui@iscas.ac.cn>
Reviewed-by: fyang, fjiang, yzhu
2023-04-26 02:24:49 +00:00
Chen Liang
adf62febe6 8304918: Remove unused decl field from AnnotatedType implementations
Reviewed-by: stsypanov, darcy
2023-04-25 23:24:08 +00:00
Justin Lu
00b1eacad6 8306031: Update IANA Language Subtag Registry to Version 2023-04-13
Reviewed-by: naoto
2023-04-25 20:32:24 +00:00
Alexander Zvegintsev
88d9ebf8e8 8306752: Open source several container and component AWT tests
Reviewed-by: prr
2023-04-25 20:27:34 +00:00
Alexander Zvegintsev
1c2dadc31e 8306683: Open source several clipboard and color AWT tests
Reviewed-by: prr
2023-04-25 20:26:45 +00:00
Alexander Zvegintsev
b372f28ad4 8306753: Open source several container AWT tests
Reviewed-by: prr
2023-04-25 20:25:16 +00:00
Brian Burkhalter
e3ccaa6541 8306623: (bf) CharBuffer::allocate throws unexpected exception type with some CharSequences
Reviewed-by: alanb, lancea
2023-04-25 20:18:19 +00:00
Joe Darcy
d819debaa5 8304423: Refactor FdLibm.java
Reviewed-by: bpb
2023-04-25 19:33:22 +00:00
Aleksey Shipilev
28829f308f 8306734: Shenandoah: Missing barriers on deoptimization path
Reviewed-by: eosterlund, rkennke
2023-04-25 18:46:55 +00:00
Alexander Zuev
9beae21864 8306718: Optimize and opensource some old AWT tests
Reviewed-by: prr
2023-04-25 18:32:03 +00:00
Phil Race
36d61c3106 8306765: Some client related jtreg problem list entries are malformed
Reviewed-by: iris
2023-04-25 18:10:52 +00:00
Zhengyu Gu
5f4965d422 8306687: Relax memory ordering constraints on metaspace atomic counters
Reviewed-by: shade, minqi
2023-04-25 17:55:57 +00:00
Valerie Peng
33d6614150 8304845: Update PCSC-Lite for Suse Linux to 1.9.9 and fix incomplete license wording
Reviewed-by: manc, mullan
2023-04-25 17:48:42 +00:00
Eirik Bjorsnos
c92883a3d5 8306772: Remove sun.security.x509.CertException, sun.security.x509.CertParseError
Reviewed-by: mullan
2023-04-25 16:33:24 +00:00
Quan Anh Mai
0ff3a2784e 8306008: Several Vector API tests fail for client VM after JDK-8304450
Reviewed-by: psandoz
2023-04-25 16:13:45 +00:00
Quan Anh Mai
e8f62de1cf 8304676: [vectorapi] x86_32: Crash in Assembler::kmovql(Address, KRegister)
Reviewed-by: shade, thartmann, jbhateja
2023-04-25 16:13:03 +00:00
Daniel Fuchs
98e8616a0c 8301169: java/net/httpclient/ThrowingSubscribersAsInputStream.java,ThrowingSubscribersAsInputStreamAsync.java, and other httpclient tests failing on windows: Unable to establish loopback connection
Reviewed-by: aefimov, djelinski
2023-04-25 15:48:12 +00:00
Prasanta Sadhukhan
07ea445b43 8306838: GetGraphicsTest needs to be headful
Reviewed-by: jiefu, dcubed
2023-04-25 15:29:28 +00:00
Stuart Marks
17ce0976e4 8266571: Sequenced Collections
Reviewed-by: alanb
2023-04-25 15:19:08 +00:00
Christoph Langer
bad6aa68e4 8289735: UTIL_LOOKUP_PROGS fails on pathes with space
Reviewed-by: erikj, mbaesken
2023-04-25 14:20:50 +00:00
Roger Riggs
5f50e991ca 8306770: (fs) Remove obsolete os.version check from sun.nio.fs.BsdFileStore.supportsFileAttributeView
Reviewed-by: bpb, iris, lancea, alanb
2023-04-25 14:07:28 +00:00
Albert Mingkun Yang
9d1fe6565c 8306740: G1: Change G1CardSetHashTableScan to lambda
Reviewed-by: kbarrett, tschatzl
2023-04-25 13:35:38 +00:00
Thomas Schatzl
a4a5385831 8306733: Remove template parameter of G1DetermineCompactionQueueClosure::free_pinned_region
Reviewed-by: ayang, iwalulya
2023-04-25 10:39:45 +00:00
Ivan Walulya
a98f58756d 8306766: Reduce heap size for TestJNICriticalStressTest
Reviewed-by: ayang, tschatzl
2023-04-25 10:27:22 +00:00
Prasanta Sadhukhan
d53a5eed0f 8306067: Open source AWT Graphics,GridBagLayout related tests
Reviewed-by: serb
2023-04-25 08:55:00 +00:00
Dmitry Cherepanov
f968da97a5 8305352: updateIconImages may lead to deadlock after JDK-8276849
Reviewed-by: aivanov, serb
2023-04-25 06:56:32 +00:00
Aleksey Shipilev
2985738f15 8306773: Problemlist jdk/incubator/vector/ShortMaxVectorTests.java on x86_32
Reviewed-by: kvn
2023-04-25 05:59:09 +00:00
Prasanta Sadhukhan
31a73b0d70 8306714: Open source few Swing event and AbstractAction tests
Reviewed-by: serb, prr
2023-04-25 04:54:56 +00:00
Kim Barrett
8063aa2e4a 8306695: Divide by zero in G1Policy::logged_cards_processing_time
Reviewed-by: iwalulya, tschatzl
2023-04-25 04:19:32 +00:00
Christian Stein
2471919020 8304036: Use CommandLine class from shared module
Reviewed-by: jjg, mchung
2023-04-25 04:16:58 +00:00
Phil Race
f39641ccbd 8306682: Open source a few more AWT Choice tests
Reviewed-by: serb
2023-04-25 02:46:13 +00:00
Phil Race
b5362dadc5 8306484: Open source several AWT Choice jtreg tests
Reviewed-by: serb
2023-04-25 02:45:22 +00:00
Coleen Phillimore
2ea62c1369 8303276: Secondary assertion failure in AdapterHandlerLibrary::contains during crash reporting
Reviewed-by: iklam, stuefe
2023-04-24 21:23:56 +00:00
Tyler Steele
0dc03c9d54 8305922: [aix,linux] Avoid comparing 'this' to nullptr
Reviewed-by: mdoerr, dholmes
2023-04-24 20:32:49 +00:00
Daniel D. Daugherty
328e512d12 8306780: ProblemList java/lang/Thread/virtual/HoldsLock.java#id0 in Xcomp
Reviewed-by: darcy
2023-04-24 19:35:51 +00:00
Aleksey Shipilev
937dd3456c 8306775: Problemlist runtime/Monitor/GuaranteedAsyncDeflationIntervalTest.java
Reviewed-by: dcubed
2023-04-24 19:29:42 +00:00
Michael McMahon
314db55f6d 8304818: Prune HttpURLConnection cache when corresponding Authenticator is garbage collected
Reviewed-by: dfuchs, djelinski
2023-04-24 17:25:32 +00:00
Aleksey Shipilev
6b81342c22 8305994: Guarantee eventual async monitor deflation
Reviewed-by: simonis, stuefe, dcubed
2023-04-24 17:02:59 +00:00
Kevin Walls
41d6be4d80 8301065: Handle control characters in java_lang_String::print
Reviewed-by: iklam, dholmes
2023-04-24 16:33:54 +00:00
Daniel D. Daugherty
4b23bef51d 8301377: adjust timeout for JLI GetObjectSizeIntrinsicsTest.java subtest again
8302607: increase timeout for ContinuousCallSiteTargetChange.java
8305502: adjust timeouts in three more M&M tests

Reviewed-by: naoto, lmesnik, thartmann
2023-04-24 16:10:44 +00:00
Naoto Sato
f32adaf89f 8304836: Make MALLOC_MIN4 macro more robust
Reviewed-by: bchristi
2023-04-24 15:37:35 +00:00
Christian Stein
2763cf14e6 8304896: Update to use jtreg 7.2
Reviewed-by: erikj, lmesnik, iris
2023-04-24 15:36:19 +00:00
Johan Sjölen
b2ccc9731e 8306444: Don't leak memory in PhaseChaitin::PhaseChaitin
Reviewed-by: kvn, roland
2023-04-24 15:13:24 +00:00
Christoph Langer
d980cb4879 8306658: GHA: MSVC installation could be optional since it might already be pre-installed
Reviewed-by: shade, goetz
2023-04-24 15:00:09 +00:00
Matias Saavedra Silva
62acc882bf 8306476: CDS ArchiveHeapTestClass.java test asserts when vm_exit is called on VM thread
Reviewed-by: ccheung
2023-04-24 14:13:53 +00:00
Coleen Phillimore
7400aff3b8 8305252: make_method_handle_intrinsic may call java code under a lock
Reviewed-by: dholmes, matsaave, iklam
2023-04-24 12:55:15 +00:00
Vladimir Kempik
f239695b56 8305056: Avoid unaligned access in emit_intX methods if it's unsupported
Reviewed-by: aph
2023-04-24 11:31:49 +00:00
Alexander Zvegintsev
136dad7197 8306566: Open source several clipboard AWT tests
Reviewed-by: serb
2023-04-24 10:56:50 +00:00
Albert Mingkun Yang
30fa50d158 8305062: Refactor CardTable::resize_covered_region
Reviewed-by: tschatzl, iwalulya
2023-04-24 10:27:16 +00:00
Ivan Walulya
4a9f8efa86 8057586: Explicit GC ignored if GCLocker is active
Reviewed-by: tschatzl, ayang
2023-04-24 08:47:23 +00:00
Leo Korinth
ce493dda90 8306435: Juggle04/TestDescription.java should be a booleanArr test and not a byteArr one
Reviewed-by: tschatzl, lmesnik, shade
2023-04-24 08:02:40 +00:00
Prasanta Sadhukhan
f7d45b85a5 8306076: Open source AWT misc tests
Reviewed-by: serb
2023-04-24 07:51:47 +00:00
Ramkumar Sunderbabu
4900517479 8306636: Disable compiler/c2/Test6905845.java with -XX:TieredStopAtLevel=3
Reviewed-by: kvn
2023-04-24 02:19:10 +00:00
Afshin Zafari
0f51e63263 8305590: Remove nothrow exception specifications from operator new
Reviewed-by: coleenp, kbarrett
2023-04-23 15:20:18 +00:00
Alexander Zuev
8d696aea9e 8306575: Clean up and open source four Dialog related tests
Reviewed-by: prr
2023-04-22 00:14:51 +00:00
Harshitha Onkar
9ed456fac8 8306634: Open source AWT Event related tests
Reviewed-by: prr, serb
2023-04-21 23:56:04 +00:00
Calvin Cheung
b2240bf870 8304696: Duplicate class names in dynamicArchive tests can lead to test failure
Reviewed-by: iklam
2023-04-21 22:11:40 +00:00
Mikael Vidstedt
cb158ffb8a 8296153: Bump minimum boot jdk to JDK 20
Reviewed-by: erikj, darcy, iris
2023-04-21 20:51:50 +00:00
Sergey Bylokhov
117c5b116b 8279216: Investigate implementation of premultiplied alpha in the Little-CMS 2.13
Reviewed-by: prr
2023-04-21 19:17:39 +00:00
Ioi Lam
723037a79d 8298048: Combine CDS archive heap into a single block
Co-authored-by: Thomas Schatzl <tschatzl@openjdk.org>
Reviewed-by: matsaave, tschatzl
2023-04-21 15:29:45 +00:00
Thomas Schatzl
d518dbf726 8306440: Rename PSS:_num_optional_regions to _max_num_optional_regions
Reviewed-by: ayang, iwalulya
2023-04-21 14:16:34 +00:00
Thomas Schatzl
9cd5741c14 8306436: Rename PSS*:_n_workers to PSS*:_num_workers
Reviewed-by: ayang, iwalulya
2023-04-21 14:05:16 +00:00
Johan Sjölen
6e77e14fdb 8306456: Don't leak _worklist's memory in PhaseLive::compute
Reviewed-by: kvn, dlong
2023-04-21 13:36:36 +00:00
Leonid Mesnik
be6031b87d 8303703: Add support of execution tests using virtual thread factory jtreg plugin
Reviewed-by: erikj, jpai
2023-04-21 13:31:45 +00:00
Christoph Langer
5a00617b1b 8306543: GHA: MSVC installation is failing
Reviewed-by: shade, mdoerr
2023-04-21 11:34:36 +00:00
Oli Gillespie
3da987adac 8306075: Micro-optimize Enum.hashCode
Co-authored-by: Aleksey Shipilev <shade@openjdk.org>
Reviewed-by: redestad, shade, rriggs, liach, apangin, jvernee
2023-04-21 09:51:36 +00:00
Doug Simon
fdaabd6eec 8306581: JVMCI tests failed when run with -XX:TypeProfileLevel=222 after JDK-8303431
Reviewed-by: never, kvn
2023-04-21 07:13:50 +00:00
Jayathirth D V
36ec05d52a 8306430: Open source some AWT tests related to TextComponent and Toolkit
Reviewed-by: serb
2023-04-21 05:38:17 +00:00
Prasanta Sadhukhan
8346ae2bc1 8305942: Open source several AWT Focus related tests
Reviewed-by: prr
2023-04-21 02:51:12 +00:00
Prasanta Sadhukhan
9a68d1d952 8306060: Open source few AWT Insets related tests
Reviewed-by: serb, prr
2023-04-21 02:42:55 +00:00
sunguoyun
2c70828e7d 8305236: Some LoadLoad barriers in the interpreter are unnecessary after JDK-8220051
Reviewed-by: dholmes, fyang, aph
2023-04-21 00:47:24 +00:00
5141 changed files with 254335 additions and 140566 deletions

212
.github/README.md vendored
View File

@@ -1,212 +0,0 @@
[![official JetBrains project](http://jb.gg/badges/official.svg)](https://confluence.jetbrains.com/display/ALL/JetBrains+on+GitHub)
# Welcome to JetBrains Runtime!
JetBrains Runtime is a fork of [OpenJDK](https://github.com/openjdk/jdk) available for Windows, Mac OS X, and Linux.
It supports enhanced class redefinition ([DCEVM](https://ssw.jku.at/dcevm/)),
features optional [JCEF](https://github.com/JetBrains/jcef), a framework for embedding Chromium-based browsers,
includes a number of improvements in font rendering, keyboards support,
windowing/focus subsystems, HiDPI, accessibility, and performance, provides better desktop integration
and bugfixes not yet present in OpenJDK.
> **_NOTE_**: This is a **development** branch that is periodically synchronized with
> the [OpenJDK master](https://github.com/openjdk/jdk/tree/master) branch.
>
Release builds are based on these branches:
* [jbr11](https://github.com/JetBrains/JetBrainsRuntime/tree/jbr11) (JDK 11)
* [jbr17](https://github.com/JetBrains/JetBrainsRuntime/tree/jbr17) (JDK 17)
Download the latest releases of JetBrains Runtime to use with JetBrains IDEs. The full list
can be found on the [releases page](https://github.com/JetBrains/JetBrainsRuntime/releases).
## Releases based on JDK 17
| IDE Version | Latest JBR | Date Released |
|-------------|--------------------------------------------------------------------------------------------------------|---------------|
| 2023.1 | [17.0.6-b829.9](https://github.com/JetBrains/JetBrainsRuntime/releases/tag/jbr-release-17.0.6b829.9) | 10-Apr-2023 |
| 2022.3 | [17.0.6-b653.34](https://github.com/JetBrains/JetBrainsRuntime/releases/tag/jbr-release-17.0.6b653.34) | 28-Feb-2023 |
| 2022.2 | [17.0.6-b469.82](https://github.com/JetBrains/JetBrainsRuntime/releases/tag/jbr-release-17.0.6b469.82) | 06-Mar-2023 |
## Releases based on JDK 11
| IDE Version | Latest JBR | Date Released |
|-------------|-------------------------------------------------------------------------------------------------------|---------------|
| 2022.1 | [11_0_16-b2043.64](https://github.com/JetBrains/JetBrainsRuntime/releases/tag/jbr11_0_16b2043.64) | 10-Nov-2022 |
| 2021.3 | [11_0_14_1-b1751.46](https://github.com/JetBrains/JetBrainsRuntime/releases/tag/jbr11_0_14_1b1751.46) | 21-Feb-2022 |
| 2021.2 | [11_0_13-b1504.49](https://github.com/JetBrains/JetBrainsRuntime/releases/tag/jb11_0_13-b1504.49) | 15-Nov-2021 |
| 2021.1 | [11.0.11+9-b1341.60](https://github.com/JetBrains/JetBrainsRuntime/issues/171#issuecomment-1248891540)| 15-Jun-2021 |
| 2020.3 | [11_0_10-b1145.115](https://github.com/JetBrains/JetBrainsRuntime/issues/171#issuecomment-1249243977) | 21-Jun-2021 |
## Contents
- [Welcome to JetBrains Runtime](#welcome-to-jetbrains-runtime)
- [Why Use JetBrains Runtime?](#why-use-jetbrains-runtime)
- [Products Built on JetBrains Runtime](#products-built-on-jetbrains-runtime)
- [Getting Sources](#getting-sources)
- [macOS, Linux](#macos-linux)
- [Windows](#sources-windows)
- [Configuring the Build Environment](#configuring-the-build-environment)
- [Linux (Docker)](#linux-docker)
- [Ubuntu Linux](#ubuntu-linux)
- [Windows](#build-windows)
- [macOS](#macos)
- [Developing](#developing)
- [Contributing](#contributing)
- [Resources](#resources)
## Why Use JetBrains Runtime?
* **Embedded browser**: JetBrains Runtime includes the Java Chromium Embedded Framework ([JCEF](https://github.com/JetBrains/jcef)), which
enables you to embed a Chromium-based browsers in your JVM-based application.
To use it, [download a build with JCEF](https://github.com/JetBrains/JetBrainsRuntime/releases).
* **Enhanced class re-definition** with the [DCEVM](https://ssw.jku.at/dcevm/) technology that makes it easier to reload
changed code without restarting JVM; this feature needs to be explicitly enabled with `-XX:+AllowEnhancedClassRedefinition`.
* **Better FPS performance** for graphics-intensive applications.
* **Improved font rendering**, **keyboard input** (such as shortcuts and multinational keyboards),
**HiDPI** and **accessibility** support.
* **Robust desktop experience**: GUI-related fixes often reach JetBrains Runtime much earlier than the corresponding version of OpenJDK.
## Products Built on JetBrains Runtime
* [Android Studio](https://developer.android.com/studio). The official IDE for Google's Android operating system.
* [CLion](https://www.jetbrains.com/clion/). A cross-platform IDE for C and C++ from JetBrains.
* [DataGrip](https://www.jetbrains.com/datagrip/). The IDE for Databases and SQL from JetBrains.
* [GoLand](https://www.jetbrains.com/go/). The cross-platform Go IDE from JetBrains.
* [IntelliJ IDEA](https://www.jetbrains.com/idea/). The IDE for JVM from JetBrains.
* [JProfiler](https://www.ej-technologies.com/products/jprofiler/overview.html). The Java profiler.
* [PhpStorm](https://www.jetbrains.com/phpstorm/). The PHP IDE from JetBrains.
* [PyCharm](https://www.jetbrains.com/pycharm/). The Python IDE from JetBrains.
* [Rider](https://www.jetbrains.com/rider/). The cross-platform .NET IDE from JetBrains.
* [RubyMine](https://www.jetbrains.com/ruby/). The Ruby and Rails IDE from JetBrains.
* [Toolbox App](https://www.jetbrains.com/toolbox-app/). JetBrains IDE manager.
* [WebStorm](https://www.jetbrains.com/webstorm/). The JavaScript IDE from JetBrains.
* [YourKit](https://www.yourkit.com/). Java and .NET profilers.
## Getting Sources
### macOS, Linux
```
git config --global core.autocrlf input
git clone git@github.com:JetBrains/JetBrainsRuntime.git
```
### Windows
<a name="sources-windows"></a>
```
git config --global core.autocrlf false
git clone git@github.com:JetBrains/JetBrainsRuntime.git
```
## Configuring the Build Environment
Here are quick per-platform instructions for those who can't wait to get started.
Please refer to [OpenJDK build docs](https://openjdk.java.net/groups/build/doc/building.html) for in-depth
coverage of all the details.
> **_TIP:_** To get a preliminary report of what's missing, run `./configure` and check its output.
> It would usually have meaningful advice on how to solve the problem.
### Linux (Docker)
Create a container:
```
$ cd jb/project/docker
$ docker build .
...
Successfully built 942ea9900054
```
Run these commands in the new container:
```
$ docker run -v `pwd`../../../../:/JetBrainsRuntime -it 942ea9900054
# cd /JetBrainsRuntime
# sh ./configure
# make images CONF=linux-x86_64-normal-server-release
```
### Ubuntu Linux
Install the necessary tools, libraries, and headers with:
```
$ sudo apt-get install autoconf make build-essential libx11-dev libxext-dev libxrender-dev libxtst-dev \
libxt-dev libxrandr-dev libcups2-dev libfontconfig1-dev libasound2-dev
```
Get Java 18 (for instance, [Azul Zulu Builds of OpenJDK 18](https://www.azul.com/downloads/?version=java-18-sts&os=linux&package=jdk)).
Then run the following:
```
$ cd JetBrainsRuntime
$ git checkout main
$ sh ./configure
$ make images
```
This will build the release configuration under `./build/linux-x86_64-server-release/`.
### Windows
<a name="build-windows"></a>
Install the following:
* [Cygwin x64](http://www.cygwin.com/).
Required packages: `autoconf`, `binutils`, `cpio`, `diffutils`, `file`, `gawk`, `gcc-core`, `make`, `m4`, `unzip`, `zip`.
Install those together with Cygwin.
* [Visual Studio compiler toolset](https://visualstudio.microsoft.com/downloads/).
Install with the desktop development kit, which includes Windows SDK and compilers.
Visual Studio 2019 is supported by default.
* Java 18 (for instance, [Azul Zulu Builds of OpenJDK 18](https://www.azul.com/downloads/?version=java-18-sts&os=windows&package=jdk)).
If you have problems while configuring, read [Java tips on Cygwin](http://horstmann.com/articles/cygwin-tips.html).
From the command line:
```
"C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat" amd64
"c:\Program_Files\cygwin64\bin\mintty.exe" /bin/bash -l
```
The first command sets up environment variables, the second starts a Cygwin shell with the proper environment.
In the Cygwin shell:
```
$ cd JetBrainsRuntime
$ git checkout main
$ bash configure --with-toolchain-version=2019
$ make images
```
This will build the release configuration under `./build/windows-x86_64-server-release/`.
### macOS
Install the following:
* Xcode command line developer tools and `autoconf` via [Homebrew](https://brew.sh/).
* Java 18 (for instance, [Azul Zulu Builds of OpenJDK 18](https://www.azul.com/downloads/?version=java-18-sts&os=macos&package=jdk)).
From the command line:
```
$ cd JetBrainsRuntime
$ git checkout main
$ sh ./configure
$ make images
```
This will build the release configuration under `./build/macosx-x86_64-server-release/`.
## Developing
You can use [CLion](https://www.jetbrains.com/clion/) to develop native parts of the JetBrains Runtime and
[IntelliJ IDEA](https://www.jetbrains.com/idea/) for the parts written in Java.
Both require projects to be created.
### CLion
Run
```
$ make compile-commands
```
in the git root and open the resulting `build/.../compile_commands.json` file as a project.
Then use `Tools | Compilation Database | Change Project Root` to point to git root of this repository.
See also this detailed step-by-step tutorial for all platforms:
[How to develop OpenJDK with CLion](https://blog.jetbrains.com/clion/2020/03/openjdk-with-clion/).
### IDEA
Run
```
$ sh ./bin/idea.sh
```
in the git root to generate project files (add `--help` for options). If you have multiple
configurations (for example, `release` and `fastdebug`), supply the `--conf <conf_name>` argument.
Then open the git root directory as a project in IDEA.
## Contributing
We are happy to receive your pull requests!
Before you submit one, please sign our [Contributor License Agreement (CLA)](https://www.jetbrains.com/agreements/cla/).
## Resources
* [JetBrains Runtime on GitHub](https://github.com/JetBrains/JetBrainsRuntime).
* [OpenJDK build instructions](https://openjdk.java.net/groups/build/doc/building.html).
* [OpenJDK test instructions](https://htmlpreview.github.io/?https://raw.githubusercontent.com/openjdk/jdk/master/doc/building.html#running-tests).
* [How to develop OpenJDK with CLion](https://blog.jetbrains.com/clion/2020/03/openjdk-with-clion/).

View File

@@ -98,12 +98,26 @@ jobs:
id: gtest
uses: ./.github/actions/get-gtest
- name: 'Check toolchain installed'
id: toolchain-check
run: |
set +e
'/c/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/vc/auxiliary/build/vcvars64.bat' -vcvars_ver=${{ inputs.msvc-toolset-version }}
if [ $? -eq 0 ]; then
echo "Toolchain is already installed"
echo "toolchain-installed=true" >> $GITHUB_OUTPUT
else
echo "Toolchain is not yet installed"
echo "toolchain-installed=false" >> $GITHUB_OUTPUT
fi
- name: 'Install toolchain and dependencies'
run: |
# Run Visual Studio Installer
'/c/Program Files (x86)/Microsoft Visual Studio/Installer/vs_installer.exe' \
modify --quiet --installPath 'C:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise' \
modify --quiet --installPath 'C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise' \
--add Microsoft.VisualStudio.Component.VC.${{ inputs.msvc-toolset-version }}.${{ inputs.msvc-toolset-architecture }}
if: steps.toolchain-check.outputs.toolchain-installed != 'true'
- name: 'Configure'
run: >

View File

@@ -26,6 +26,10 @@
name: 'OpenJDK GHA Sanity Checks'
on:
push:
branches-ignore:
- master
- pr/*
workflow_dispatch:
inputs:
platforms:
@@ -55,8 +59,7 @@ jobs:
outputs:
linux-x64: ${{ steps.include.outputs.linux-x64 }}
linux-x86: ${{ steps.include.outputs.linux-x86 }}
# additional build options for linux-x64 are disabled
# linux-x64-variants: ${{ steps.include.outputs.linux-x64-variants }}
linux-x64-variants: ${{ steps.include.outputs.linux-x64-variants }}
linux-cross-compile: ${{ steps.include.outputs.linux-cross-compile }}
macos-x64: ${{ steps.include.outputs.macos-x64 }}
macos-aarch64: ${{ steps.include.outputs.macos-aarch64 }}
@@ -145,7 +148,7 @@ jobs:
apt-architecture: 'i386'
# Some multilib libraries do not have proper inter-dependencies, so we have to
# install their dependencies manually.
apt-extra-packages: 'libfreetype6-dev:i386 libtiff-dev:i386 libcupsimage2-dev:i386 libc6-i386'
apt-extra-packages: 'libfreetype6-dev:i386 libtiff-dev:i386 libcupsimage2-dev:i386 libc6-i386 libgcc-s1:i386 libstdc++6:i386'
extra-conf-options: '--with-target-bits=32'
configure-arguments: ${{ github.event.inputs.configure-arguments }}
make-arguments: ${{ github.event.inputs.make-arguments }}

View File

@@ -1,270 +0,0 @@
#
# Copyright 2000-2023 JetBrains s.r.o.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#
name: 'Build OpenJDK on pull request'
on:
pull_request:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
###
### Determine platforms to include
###
select:
name: 'Select platforms'
runs-on: ubuntu-22.04
outputs:
linux-x64: ${{ steps.include.outputs.linux-x64 }}
linux-x86: ${{ steps.include.outputs.linux-x86 }}
linux-cross-compile: ${{ steps.include.outputs.linux-cross-compile }}
macos-x64: ${{ steps.include.outputs.macos-x64 }}
macos-aarch64: ${{ steps.include.outputs.macos-aarch64 }}
windows-x64: ${{ steps.include.outputs.windows-x64 }}
windows-aarch64: ${{ steps.include.outputs.windows-aarch64 }}
windows-x86: ${{ steps.include.outputs.windows-x86 }}
steps:
# This function must be inlined in main.yml, or we'd be forced to checkout the repo
- name: 'Check what jobs to run'
id: include
run: |
# Determine which platform jobs to run
# Returns 'true' if the input platform list matches any of the platform monikers given as argument,
# 'false' otherwise.
# arg $1: platform name or names to look for
function check_platform() {
if [[ $GITHUB_EVENT_NAME == workflow_dispatch ]]; then
input='${{ github.event.inputs.platforms }}'
elif [[ $GITHUB_EVENT_NAME == push ]]; then
if [[ '${{ !secrets.JDK_SUBMIT_FILTER || startsWith(github.ref, 'refs/heads/submit/') }}' == 'false' ]]; then
# If JDK_SUBMIT_FILTER is set, and this is not a "submit/" branch, don't run anything
>&2 echo 'JDK_SUBMIT_FILTER is set and not a "submit/" branch'
echo 'false'
return
else
input='${{ secrets.JDK_SUBMIT_PLATFORMS }}'
fi
fi
normalized_input="$(echo ,$input, | tr -d ' ')"
if [[ "$normalized_input" == ",," ]]; then
# For an empty input, assume all platforms should run
echo 'true'
return
else
# Check for all acceptable platform names
for part in $* ; do
if echo "$normalized_input" | grep -q -e ",$part," ; then
echo 'true'
return
fi
done
fi
echo 'false'
}
echo "linux-x64=$(check_platform linux-x64 linux x64)" >> $GITHUB_OUTPUT
echo "linux-x86=$(check_platform linux-x86 linux x86)" >> $GITHUB_OUTPUT
echo "linux-x64-variants=$(check_platform linux-x64-variants variants)" >> $GITHUB_OUTPUT
echo "linux-cross-compile=$(check_platform linux-cross-compile cross-compile)" >> $GITHUB_OUTPUT
echo "macos-x64=$(check_platform macos-x64 macos x64)" >> $GITHUB_OUTPUT
echo "macos-aarch64=$(check_platform macos-aarch64 macos aarch64)" >> $GITHUB_OUTPUT
echo "windows-x64=$(check_platform windows-x64 windows x64)" >> $GITHUB_OUTPUT
echo "windows-x86=$(check_platform windows-x86 windows x86)" >> $GITHUB_OUTPUT
echo "windows-aarch64=$(check_platform windows-aarch64 windows aarch64)" >> $GITHUB_OUTPUT
echo "docs=$(check_platform docs)" >> $GITHUB_OUTPUT
###
### Build jobs
###
build-linux-x64:
name: linux-x64
needs: select
uses: ./.github/workflows/build-linux.yml
with:
platform: linux-x64
gcc-major-version: '10'
apt-gcc-version: '10.4.0-4ubuntu1~22.04'
configure-arguments: ${{ github.event.inputs.configure-arguments }}
make-arguments: ${{ github.event.inputs.make-arguments }}
# The linux-x64 jdk bundle is used as buildjdk for the cross-compile job
if: needs.select.outputs.linux-x64 == 'true' || needs.select.outputs.linux-cross-compile == 'true'
build-linux-x86:
name: linux-x86
needs: select
uses: ./.github/workflows/build-linux.yml
with:
platform: linux-x86
gcc-major-version: '10'
gcc-package-suffix: '-multilib'
apt-gcc-version: '10.4.0-4ubuntu1~22.04'
apt-architecture: 'i386'
# Some multilib libraries do not have proper inter-dependencies, so we have to
# install their dependencies manually.
apt-extra-packages: 'libfreetype6-dev:i386 libtiff-dev:i386 libcupsimage2-dev:i386 libc6-i386'
extra-conf-options: '--with-target-bits=32'
configure-arguments: ${{ github.event.inputs.configure-arguments }}
make-arguments: ${{ github.event.inputs.make-arguments }}
if: needs.select.outputs.linux-x86 == 'true'
build-linux-cross-compile:
name: linux-cross-compile
needs:
- select
- build-linux-x64
uses: ./.github/workflows/build-cross-compile.yml
with:
gcc-major-version: '10'
apt-gcc-version: '10.4.0-4ubuntu1~22.04'
apt-gcc-cross-version: '10.4.0-4ubuntu1~22.04cross1'
configure-arguments: ${{ github.event.inputs.configure-arguments }}
make-arguments: ${{ github.event.inputs.make-arguments }}
if: needs.select.outputs.linux-cross-compile == 'true'
build-macos-x64:
name: macos-x64
needs: select
uses: ./.github/workflows/build-macos.yml
with:
platform: macos-x64
xcode-toolset-version: '12.5.1'
configure-arguments: ${{ github.event.inputs.configure-arguments }}
make-arguments: ${{ github.event.inputs.make-arguments }}
if: needs.select.outputs.macos-x64 == 'true'
build-macos-aarch64:
name: macos-aarch64
needs: select
uses: ./.github/workflows/build-macos.yml
with:
platform: macos-aarch64
xcode-toolset-version: '12.5.1'
extra-conf-options: '--openjdk-target=aarch64-apple-darwin'
configure-arguments: ${{ github.event.inputs.configure-arguments }}
make-arguments: ${{ github.event.inputs.make-arguments }}
if: needs.select.outputs.macos-aarch64 == 'true'
build-windows-x64:
name: windows-x64
needs: select
uses: ./.github/workflows/build-windows.yml
with:
platform: windows-x64
msvc-toolset-version: '14.29'
msvc-toolset-architecture: 'x86.x64'
configure-arguments: ${{ github.event.inputs.configure-arguments }}
make-arguments: ${{ github.event.inputs.make-arguments }}
if: needs.select.outputs.windows-x64 == 'true'
build-windows-x86:
name: windows-x86
needs: select
uses: ./.github/workflows/build-windows.yml
with:
platform: windows-x86
msvc-toolset-version: '14.29'
msvc-toolset-architecture: 'x86'
configure-arguments: ${{ github.event.inputs.configure-arguments }}
make-arguments: ${{ github.event.inputs.make-arguments }}
if: needs.select.outputs.windows-x86 == 'true'
build-windows-aarch64:
name: windows-aarch64
needs: select
uses: ./.github/workflows/build-windows.yml
with:
platform: windows-aarch64
msvc-toolset-version: '14.29'
msvc-toolset-architecture: 'arm64'
make-target: 'hotspot'
extra-conf-options: '--openjdk-target=aarch64-unknown-cygwin'
configure-arguments: ${{ github.event.inputs.configure-arguments }}
make-arguments: ${{ github.event.inputs.make-arguments }}
if: needs.select.outputs.windows-aarch64 == 'true'
build-docs:
name: docs
needs: select
uses: ./.github/workflows/build-linux.yml
with:
platform: linux-x64
debug-levels: '[ "debug" ]'
make-target: 'docs-jdk-bundles'
# Make sure we never try to make full docs, since that would require a
# build JDK, and we do not need the additional testing of the graphs.
extra-conf-options: '--disable-full-docs'
gcc-major-version: '10'
apt-gcc-version: '10.4.0-4ubuntu1~22.04'
configure-arguments: ${{ github.event.inputs.configure-arguments }}
make-arguments: ${{ github.event.inputs.make-arguments }}
if: needs.select.outputs.docs == 'true'
# Remove bundles so they are not misconstrued as binary distributions from the JDK project
remove-bundles:
name: 'Remove bundle artifacts'
runs-on: ubuntu-22.04
if: always()
needs:
- build-linux-x64
- build-linux-x86
- build-linux-cross-compile
- build-macos-x64
- build-macos-aarch64
- build-windows-x64
- build-windows-aarch64
- build-windows-x86
steps:
# Hack to get hold of the api environment variables that are only defined for actions
- name: 'Get API configuration'
id: api
uses: actions/github-script@v6
with:
script: 'return { url: process.env["ACTIONS_RUNTIME_URL"], token: process.env["ACTIONS_RUNTIME_TOKEN"] }'
- name: 'Remove bundle artifacts'
run: |
# Find and remove all bundle artifacts
ALL_ARTIFACT_URLS="$(curl -s \
-H 'Accept: application/json;api-version=6.0-preview' \
-H 'Authorization: Bearer ${{ fromJson(steps.api.outputs.result).token }}' \
'${{ fromJson(steps.api.outputs.result).url }}_apis/pipelines/workflows/${{ github.run_id }}/artifacts?api-version=6.0-preview')"
BUNDLE_ARTIFACT_URLS="$(echo "$ALL_ARTIFACT_URLS" | jq -r -c '.value | map(select(.name|startswith("bundles-"))) | .[].url')"
for url in $BUNDLE_ARTIFACT_URLS; do
echo "Removing $url"
curl -s \
-H 'Accept: application/json;api-version=6.0-preview' \
-H 'Authorization: Bearer ${{ fromJson(steps.api.outputs.result).token }}' \
-X DELETE "$url" \
|| echo "Failed to remove bundle"
done

View File

@@ -1,5 +1,3 @@
[![official JetBrains project](http://jb.gg/badges/official.svg)](https://confluence.jetbrains.com/display/ALL/JetBrains+on+GitHub)
# Welcome to the JDK!
For build instructions please see the

View File

@@ -25,26 +25,7 @@
# Shell script for generating an IDEA project from a given list of modules
usage() {
echo "Usage: $0 [-h|--help] [-q|--quiet] [-a|--absolute-paths] [-r|--root <path>] [-o|--output <path>] [-c|--conf <conf_name>] [modules...]"
echo " -h | --help"
echo " -q | --quiet
No stdout output"
echo " -a | --absolute-paths
Use absolute paths to this jdk, so that generated .idea
project files can be moved independently of jdk sources"
echo " -r | --root <path>
Project content root
Default: $TOPLEVEL_DIR"
echo " -o | --output <path>
Where .idea directory with project files will be generated
(e.g. using '-o .' will place project files in './.idea')
Default: same as --root"
echo " -c | --conf <conf_name>
make configuration (release, slowdebug etc)"
echo " [modules...]
Generate project modules for specific java modules
(e.g. 'java.base java.desktop')
Default: all existing modules (java.* and jdk.*)"
echo "usage: $0 [-h|--help] [-v|--verbose] [-o|--output <path>] [-c|--conf <conf_name>] [modules]+"
exit 1
}
@@ -52,13 +33,10 @@ SCRIPT_DIR=`dirname $0`
#assume TOP is the dir from which the script has been called
TOP=`pwd`
cd $SCRIPT_DIR; SCRIPT_DIR=`pwd`
if [ "x$TOPLEVEL_DIR" = "x" ] ; then
cd .. ; TOPLEVEL_DIR=`pwd`
fi
cd $TOP;
VERBOSE=true
ABSOLUTE_PATHS=false
IDEA_OUTPUT=$TOP/.idea
VERBOSE="false"
CONF_ARG=
while [ $# -gt 0 ]
do
@@ -67,24 +45,14 @@ do
usage
;;
-q | --quiet )
VERBOSE=false
;;
-a | --absolute-paths )
ABSOLUTE_PATHS=true
;;
-r | --root )
TOPLEVEL_DIR="$2"
shift
-v | --vebose )
VERBOSE="true"
;;
-o | --output )
IDEA_OUTPUT="$2/.idea"
IDEA_OUTPUT=$2/.idea
shift
;;
-c | --conf )
CONF_ARG="CONF_NAME=$2"
shift
@@ -101,17 +69,20 @@ do
shift
done
if [ "x$IDEA_OUTPUT" = "x" ] ; then
IDEA_OUTPUT="$TOPLEVEL_DIR/.idea"
if [ -e $IDEA_OUTPUT ] ; then
rm -r $IDEA_OUTPUT
fi
mkdir -p $IDEA_OUTPUT || exit 1
cd $IDEA_OUTPUT; IDEA_OUTPUT=`pwd`
if [ "x$TOPLEVEL_DIR" = "x" ] ; then
cd $SCRIPT_DIR/..
TOPLEVEL_DIR=`pwd`
cd $IDEA_OUTPUT
fi
mkdir -p $IDEA_OUTPUT || exit 1
cd "$TOP" ; cd $TOPLEVEL_DIR; TOPLEVEL_DIR=`pwd`
cd "$TOP" ; cd $IDEA_OUTPUT; IDEA_OUTPUT=`pwd`
cd ..; IDEA_OUTPUT_PARENT=`pwd`
cd "$SCRIPT_DIR/.." ; OPENJDK_DIR=`pwd`
IDEA_MAKE="$OPENJDK_DIR/make/ide/idea/jdk"
MAKE_DIR="$SCRIPT_DIR/../make"
IDEA_MAKE="$MAKE_DIR/ide/idea/jdk"
IDEA_TEMPLATE="$IDEA_MAKE/template"
cp -r "$IDEA_TEMPLATE"/* "$IDEA_OUTPUT"
@@ -123,31 +94,31 @@ if [ -d "$TEMPLATES_OVERRIDE" ] ; then
done
fi
if [ "$VERBOSE" = true ] ; then
echo "Will generate IDEA project files in \"$IDEA_OUTPUT\" for project \"$TOPLEVEL_DIR\""
if [ "$VERBOSE" = "true" ] ; then
echo "output dir: $IDEA_OUTPUT"
echo "idea template dir: $IDEA_TEMPLATE"
fi
cd $TOP ; make -f "$IDEA_MAKE/idea.gmk" -I "$OPENJDK_DIR" idea TOPLEVEL_DIR="$TOPLEVEL_DIR" \
MAKEOVERRIDES= IDEA_OUTPUT_PARENT="$IDEA_OUTPUT_PARENT" OUT="$IDEA_OUTPUT/env.cfg" MODULES="$*" $CONF_ARG || exit 1
cd $TOP ; make -f "$IDEA_MAKE/idea.gmk" -I $MAKE_DIR/.. idea MAKEOVERRIDES= OUT=$IDEA_OUTPUT/env.cfg MODULES="$*" $CONF_ARG || exit 1
cd $SCRIPT_DIR
. $IDEA_OUTPUT/env.cfg
# Expect MODULES, MODULE_NAMES, RELATIVE_PROJECT_DIR, RELATIVE_BUILD_DIR to be set
if [ "xMODULES" = "x" ] ; then
echo "FATAL: MODULES is empty" >&2; exit 1
# Expect MODULE_ROOTS, MODULE_NAMES, BOOT_JDK & SPEC to be set
if [ "x$MODULE_ROOTS" = "x" ] ; then
echo "FATAL: MODULE_ROOTS is empty" >&2; exit 1
fi
if [ "x$MODULE_NAMES" = "x" ] ; then
echo "FATAL: MODULE_NAMES is empty" >&2; exit 1
fi
if [ "x$RELATIVE_PROJECT_DIR" = "x" ] ; then
echo "FATAL: RELATIVE_PROJECT_DIR is empty" >&2; exit 1
if [ "x$BOOT_JDK" = "x" ] ; then
echo "FATAL: BOOT_JDK is empty" >&2; exit 1
fi
if [ "x$RELATIVE_BUILD_DIR" = "x" ] ; then
echo "FATAL: RELATIVE_BUILD_DIR is empty" >&2; exit 1
if [ "x$SPEC" = "x" ] ; then
echo "FATAL: SPEC is empty" >&2; exit 1
fi
if [ -d "$TOPLEVEL_DIR/.hg" ] ; then
@@ -158,43 +129,6 @@ if [ -d "$TOPLEVEL_DIR/.git" ] ; then
VCS_TYPE="Git"
fi
if [ "$ABSOLUTE_PATHS" = true ] ; then
if [ "x$PATHTOOL" != "x" ]; then
PROJECT_DIR="`$PATHTOOL -am $OPENJDK_DIR`"
TOPLEVEL_PROJECT_DIR="`$PATHTOOL -am $TOPLEVEL_DIR`"
else
PROJECT_DIR="$OPENJDK_DIR"
TOPLEVEL_PROJECT_DIR="$TOPLEVEL_DIR"
fi
MODULE_DIR="$PROJECT_DIR"
TOPLEVEL_MODULE_DIR="$TOPLEVEL_PROJECT_DIR"
cd "$IDEA_OUTPUT_PARENT" && cd "$RELATIVE_BUILD_DIR" && BUILD_DIR="`pwd`"
CLION_SCRIPT_TOPDIR="$OPENJDK_DIR"
CLION_PROJECT_DIR="$PROJECT_DIR"
else
if [ "$RELATIVE_PROJECT_DIR" = "." ] ; then
PROJECT_DIR=""
else
PROJECT_DIR="/$RELATIVE_PROJECT_DIR"
fi
if [ "$RELATIVE_TOPLEVEL_PROJECT_DIR" = "." ] ; then
TOPLEVEL_PROJECT_DIR=""
else
TOPLEVEL_PROJECT_DIR="/$RELATIVE_TOPLEVEL_PROJECT_DIR"
fi
MODULE_DIR="\$MODULE_DIR\$$PROJECT_DIR"
PROJECT_DIR="\$PROJECT_DIR\$$PROJECT_DIR"
TOPLEVEL_MODULE_DIR="\$MODULE_DIR\$$TOPLEVEL_PROJECT_DIR"
TOPLEVEL_PROJECT_DIR="\$PROJECT_DIR\$$TOPLEVEL_PROJECT_DIR"
BUILD_DIR="\$PROJECT_DIR\$/$RELATIVE_BUILD_DIR"
CLION_SCRIPT_TOPDIR="$CLION_RELATIVE_PROJECT_DIR"
CLION_PROJECT_DIR="\$PROJECT_DIR\$/$CLION_SCRIPT_TOPDIR"
fi
if [ "$VERBOSE" = true ] ; then
echo "Project root: $PROJECT_DIR"
echo "Generating IDEA project files..."
fi
### Replace template variables
NUM_REPLACEMENTS=0
@@ -218,106 +152,116 @@ add_replacement() {
eval TO$NUM_REPLACEMENTS='$2'
}
add_replacement "###PATHTOOL###" "$PATHTOOL"
add_replacement "###CLION_SCRIPT_TOPDIR###" "$CLION_SCRIPT_TOPDIR"
add_replacement "###CLION_PROJECT_DIR###" "$CLION_PROJECT_DIR"
add_replacement "###PROJECT_DIR###" "$PROJECT_DIR"
add_replacement "###MODULE_DIR###" "$MODULE_DIR"
add_replacement "###TOPLEVEL_PROJECT_DIR###" "$TOPLEVEL_PROJECT_DIR"
add_replacement "###TOPLEVEL_MODULE_DIR###" "$TOPLEVEL_MODULE_DIR"
add_replacement "###MODULE_NAMES###" "$MODULE_NAMES"
add_replacement "###VCS_TYPE###" "$VCS_TYPE"
add_replacement "###BUILD_DIR###" "$BUILD_DIR"
add_replacement "###RELATIVE_BUILD_DIR###" "$RELATIVE_BUILD_DIR"
if [ "x$PATHTOOL" != "x" ]; then
add_replacement "###BASH_RUNNER_PREFIX###" "\$PROJECT_DIR\$/.idea/bash.bat"
else
add_replacement "###BASH_RUNNER_PREFIX###" ""
fi
if [ "x$PATHTOOL" != "x" ]; then
SPEC_DIR=`dirname $SPEC`
if [ "x$CYGPATH" != "x" ]; then
add_replacement "###BUILD_DIR###" "`$CYGPATH -am $SPEC_DIR`"
add_replacement "###IMAGES_DIR###" "`$CYGPATH -am $SPEC_DIR`/images/jdk"
add_replacement "###ROOT_DIR###" "`$CYGPATH -am $TOPLEVEL_DIR`"
add_replacement "###IDEA_DIR###" "`$CYGPATH -am $IDEA_OUTPUT`"
if [ "x$JT_HOME" = "x" ]; then
add_replacement "###JTREG_HOME###" ""
else
add_replacement "###JTREG_HOME###" "`$PATHTOOL -am $JT_HOME`"
add_replacement "###JTREG_HOME###" "`$CYGPATH -am $JT_HOME`"
fi
elif [ "x$WSL_DISTRO_NAME" != "x" ]; then
add_replacement "###BUILD_DIR###" "`wslpath -am $SPEC_DIR`"
add_replacement "###IMAGES_DIR###" "`wslpath -am $SPEC_DIR`/images/jdk"
add_replacement "###ROOT_DIR###" "`wslpath -am $TOPLEVEL_DIR`"
add_replacement "###IDEA_DIR###" "`wslpath -am $IDEA_OUTPUT`"
if [ "x$JT_HOME" = "x" ]; then
add_replacement "###JTREG_HOME###" ""
else
add_replacement "###JTREG_HOME###" "`wslpath -am $JT_HOME`"
fi
else
add_replacement "###BUILD_DIR###" "$SPEC_DIR"
add_replacement "###JTREG_HOME###" "$JT_HOME"
add_replacement "###IMAGES_DIR###" "$SPEC_DIR/images/jdk"
add_replacement "###ROOT_DIR###" "$TOPLEVEL_DIR"
add_replacement "###IDEA_DIR###" "$IDEA_OUTPUT"
fi
MODULE_IMLS=""
TEST_MODULE_DEPENDENCIES=""
for module in $MODULE_NAMES; do
MODULE_IMLS="$MODULE_IMLS<module fileurl=\"file://\$PROJECT_DIR$/.idea/$module.iml\" filepath=\"\$PROJECT_DIR$/.idea/$module.iml\" /> "
TEST_MODULE_DEPENDENCIES="$TEST_MODULE_DEPENDENCIES<orderEntry type=\"module\" module-name=\"$module\" scope=\"TEST\" /> "
SOURCE_PREFIX="<sourceFolder url=\"file://"
SOURCE_POSTFIX="\" isTestSource=\"false\" />"
for root in $MODULE_ROOTS; do
if [ "x$CYGPATH" != "x" ]; then
root=`$CYGPATH -am $root`
elif [ "x$WSL_DISTRO_NAME" != "x" ]; then
root=`wslpath -am $root`
fi
SOURCES=$SOURCES" $SOURCE_PREFIX""$root""$SOURCE_POSTFIX"
done
add_replacement "###MODULE_IMLS###" "$MODULE_IMLS"
add_replacement "###TEST_MODULE_DEPENDENCIES###" "$TEST_MODULE_DEPENDENCIES"
add_replacement "###SOURCE_ROOTS###" "$SOURCES"
replace_template_dir "$IDEA_OUTPUT"
### Generate module project files
### Compile the custom Logger
if [ "$VERBOSE" = true ] ; then
echo "Generating project modules:"
fi
(
DEFAULT_IFS="$IFS"
IFS='#'
for value in $MODULES; do
(
eval "$value"
if [ "$VERBOSE" = true ] ; then
echo " $module"
fi
MAIN_SOURCE_DIRS=""
CONTENT_ROOTS=""
IFS=' '
for dir in $moduleSrcDirs; do
case $dir in
"src/"*) MAIN_SOURCE_DIRS="$MAIN_SOURCE_DIRS <sourceFolder url=\"file://$MODULE_DIR/$dir\" isTestSource=\"false\" />" ;;
*"/support/gensrc/$module") ;; # Exclude generated sources to avoid module-info conflicts, see https://youtrack.jetbrains.com/issue/IDEA-185108
*) CONTENT_ROOTS="$CONTENT_ROOTS <content url=\"file://$MODULE_DIR/$dir\">\
<sourceFolder url=\"file://$MODULE_DIR/$dir\" isTestSource=\"false\" generated=\"true\" /></content>" ;;
esac
done
if [ "x$MAIN_SOURCE_DIRS" != "x" ] ; then
CONTENT_ROOTS="<content url=\"file://$MODULE_DIR/src/$module\">$MAIN_SOURCE_DIRS</content>$CONTENT_ROOTS"
fi
add_replacement "###MODULE_CONTENT_ROOTS###" "$CONTENT_ROOTS"
DEPENDENCIES=""
for dep in $moduleDependencies; do
case $MODULE_NAMES in # Exclude skipped modules from dependencies
*"$dep"*) DEPENDENCIES="$DEPENDENCIES<orderEntry type=\"module\" module-name=\"$dep\" /> "
esac
done
add_replacement "###DEPENDENCIES###" "$DEPENDENCIES"
cp "$IDEA_OUTPUT/module.iml" "$IDEA_OUTPUT/$module.iml"
IFS="$DEFAULT_IFS"
replace_template_file "$IDEA_OUTPUT/$module.iml"
)
done
)
rm "$IDEA_OUTPUT/module.iml"
CLASSES=$IDEA_OUTPUT/classes
### Create shell script runner for Windows
if [ "x$PATHTOOL" != "x" ]; then
echo "@echo off" > "$IDEA_OUTPUT/bash.bat"
if [ "x$WSL_DISTRO_NAME" != "x" ] ; then
echo "wsl -d $WSL_DISTRO_NAME --cd \"%cd%\" -e %*" >> "$IDEA_OUTPUT/bash.bat"
if [ "x$ANT_HOME" = "x" ] ; then
# try some common locations
if [ -f "/usr/share/ant/lib/ant.jar" ] ; then
ANT_HOME="/usr/share/ant"
else
echo "$WINENV_ROOT\bin\bash.exe -l -c \"cd %CD:\=/%/ && %*\"" >> "$IDEA_OUTPUT/bash.bat"
try_ant=$(ls /opt/homebrew/Cellar/ant/*/libexec/lib/ant.jar 2> /dev/null | sort -r | head -n 1)
if [ "x$try_ant" != "x" ] ; then
ANT_HOME=$(cd $(dirname $try_ant)/.. && pwd)
else
try_ant=$(ls /usr/local/Cellar/ant/*/libexec/lib/ant.jar 2> /dev/null | sort -r | head -n 1)
if [ "x$try_ant" != "x" ] ; then
ANT_HOME=$(cd $(dirname $try_ant)/.. && pwd)
fi
fi
fi
else
if [ ! -f "$ANT_HOME/lib/ant.jar" ] ; then
echo "FATAL: ANT_HOME is incorrect. Try removing it and use autodetection, or fix the value" >&2; exit 1
fi
fi
if [ "x$ANT_HOME" = "x" ] ; then
echo "FATAL: cannot find ant. Try setting ANT_HOME." >&2; exit 1
fi
CP=$ANT_HOME/lib/ant.jar
rm -rf $CLASSES; mkdir $CLASSES
# If we have a Windows boot JDK, we need a .exe suffix
if [ -e "$BOOT_JDK/bin/java.exe" ] ; then
JAVAC=javac.exe
else
JAVAC=javac
fi
if [ "$VERBOSE" = true ] ; then
IDEA_PROJECT_DIR="`dirname $IDEA_OUTPUT`"
if [ "x$PATHTOOL" != "x" ]; then
IDEA_PROJECT_DIR="`$PATHTOOL -am $IDEA_PROJECT_DIR`"
fi
echo "
Now you can open \"$IDEA_PROJECT_DIR\" as IDEA project
You can also run 'bash \"$IDEA_OUTPUT/jdk-clion/update-project.sh\"' to generate Clion project"
fi
# If we are on WSL, the boot JDK might be either Windows or Linux,
# and we need to use realpath instead of CYGPATH to make javac work on both.
# We need to handle this case first since CYGPATH might be set on WSL.
if [ "x$WSL_DISTRO_NAME" != "x" ]; then
JAVAC_SOURCE_FILE=`realpath --relative-to=./ $IDEA_OUTPUT/src/idea/IdeaLoggerWrapper.java`
JAVAC_SOURCE_PATH=`realpath --relative-to=./ $IDEA_OUTPUT/src`
JAVAC_CLASSES=`realpath --relative-to=./ $CLASSES`
ANT_TEMP=`mktemp -d -p ./`
cp $ANT_HOME/lib/ant.jar $ANT_TEMP/ant.jar
JAVAC_CP=$ANT_TEMP/ant.jar
elif [ "x$CYGPATH" != "x" ] ; then ## CYGPATH may be set in env.cfg
JAVAC_SOURCE_FILE=`$CYGPATH -am $IDEA_OUTPUT/src/idea/IdeaLoggerWrapper.java`
JAVAC_SOURCE_PATH=`$CYGPATH -am $IDEA_OUTPUT/src`
JAVAC_CLASSES=`$CYGPATH -am $CLASSES`
JAVAC_CP=`$CYGPATH -am $CP`
else
JAVAC_SOURCE_FILE=$IDEA_OUTPUT/src/idea/IdeaLoggerWrapper.java
JAVAC_SOURCE_PATH=$IDEA_OUTPUT/src
JAVAC_CLASSES=$CLASSES
JAVAC_CP=$CP
fi
$BOOT_JDK/bin/$JAVAC -d $JAVAC_CLASSES -sourcepath $JAVAC_SOURCE_PATH -cp $JAVAC_CP $JAVAC_SOURCE_FILE
if [ "x$WSL_DISTRO_NAME" != "x" ]; then
rm -rf $ANT_TEMP
fi

0
configure vendored Executable file → Normal file
View File

View File

@@ -80,6 +80,7 @@ id="toc-getting-jdk-binaries">Getting JDK binaries</a></li>
id="toc-external-library-requirements">External Library Requirements</a>
<ul>
<li><a href="#freetype" id="toc-freetype">FreeType</a></li>
<li><a href="#fontconfig" id="toc-fontconfig">Fontconfig</a></li>
<li><a href="#cups" id="toc-cups">CUPS</a></li>
<li><a href="#x11" id="toc-x11">X11</a></li>
<li><a href="#alsa" id="toc-alsa">ALSA</a></li>
@@ -323,6 +324,7 @@ GB of free disk space is required.</p>
<p>Even for 32-bit builds, it is recommended to use a 64-bit build
machine, and instead create a 32-bit target using
<code>--with-target-bits=32</code>.</p>
<p>Note: The Windows 32-bit x86 port is deprecated and may be removed in a future release.</p>
<h3 id="building-on-aarch64">Building on aarch64</h3>
<p>At a minimum, a machine with 8 cores is advisable, as well as 8 GB of
RAM. (The more cores to use, the more memory you need.) At least 6 GB of
@@ -353,22 +355,22 @@ to date at the time of writing.</p>
<table>
<thead>
<tr class="header">
<th style="text-align: left;">Operating system</th>
<th style="text-align: left;">Vendor/version used</th>
<th>Operating system</th>
<th>Vendor/version used</th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td style="text-align: left;">Linux</td>
<td style="text-align: left;">Oracle Enterprise Linux 6.4 / 7.6</td>
<td>Linux</td>
<td>Oracle Enterprise Linux 6.4 / 7.6</td>
</tr>
<tr class="even">
<td style="text-align: left;">macOS</td>
<td style="text-align: left;">Mac OS X 10.13 (High Sierra)</td>
<td>macOS</td>
<td>Mac OS X 10.13 (High Sierra)</td>
</tr>
<tr class="odd">
<td style="text-align: left;">Windows</td>
<td style="text-align: left;">Windows Server 2012 R2</td>
<td>Windows</td>
<td>Windows Server 2012 R2</td>
</tr>
</tbody>
</table>
@@ -399,6 +401,7 @@ to the build system, e.g. in arguments to <code>configure</code>. So,
use <code>--with-msvcr-dll=/cygdrive/c/msvcr100.dll</code> rather than
<code>--with-msvcr-dll=c:\msvcr100.dll</code>. For details on this
conversion, see the section on <a href="#fixpath">Fixpath</a>.</p>
<p>Note: The Windows 32-bit x86 port is deprecated and may be removed in a future release.</p>
<h4 id="cygwin">Cygwin</h4>
<p>A functioning <a href="http://www.cygwin.com/">Cygwin</a> environment
is required for building the JDK on Windows. If you have a 64-bit OS, we
@@ -677,6 +680,19 @@ copy.</p>
<p>Use <code>--with-freetype-include=&lt;path&gt;</code> and
<code>--with-freetype-lib=&lt;path&gt;</code> if <code>configure</code>
does not automatically locate the platform FreeType files.</p>
<h3 id="fontconfig">Fontconfig</h3>
<p>Fontconfig from <a href="http://fontconfig.org">freedesktop.org
Fontconfig</a> is required on all platforms except Windows and
macOS.</p>
<ul>
<li>To install on an apt-based Linux, try running
<code>sudo apt-get install libfontconfig-dev</code>.</li>
<li>To install on an rpm-based Linux, try running
<code>sudo yum install fontconfig-devel</code>.</li>
</ul>
<p>Use <code>--with-fontconfig-include=&lt;path&gt;</code> and
<code>--with-fontconfig=&lt;path&gt;</code> if <code>configure</code>
does not automatically locate the platform Fontconfig files.</p>
<h3 id="cups">CUPS</h3>
<p>CUPS, <a href="http://www.cups.org">Common UNIX Printing System</a>
header files are required on all platforms, except Windows. Often these
@@ -1195,27 +1211,27 @@ following targets are known to work:</p>
<table>
<thead>
<tr class="header">
<th style="text-align: left;">Supported devkit targets</th>
<th>Supported devkit targets</th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td style="text-align: left;">x86_64-linux-gnu</td>
<td>x86_64-linux-gnu</td>
</tr>
<tr class="even">
<td style="text-align: left;">aarch64-linux-gnu</td>
<td>aarch64-linux-gnu</td>
</tr>
<tr class="odd">
<td style="text-align: left;">arm-linux-gnueabihf</td>
<td>arm-linux-gnueabihf</td>
</tr>
<tr class="even">
<td style="text-align: left;">ppc64-linux-gnu</td>
<td>ppc64-linux-gnu</td>
</tr>
<tr class="odd">
<td style="text-align: left;">ppc64le-linux-gnu</td>
<td>ppc64le-linux-gnu</td>
</tr>
<tr class="even">
<td style="text-align: left;">s390x-linux-gnu</td>
<td>s390x-linux-gnu</td>
</tr>
</tbody>
</table>
@@ -1417,112 +1433,119 @@ example <code>${sysroot}/usr/lib/${target}/</code></p></li>
<p>Architectures that are known to successfully cross-compile like this
are:</p>
<table>
<colgroup>
<col style="width: 13%" />
<col style="width: 13%" />
<col style="width: 15%" />
<col style="width: 27%" />
<col style="width: 29%" />
</colgroup>
<thead>
<tr class="header">
<th style="text-align: left;">Target</th>
<th style="text-align: left;">Debian tree</th>
<th style="text-align: left;">Debian arch</th>
<th style="text-align: left;"><code>--openjdk-target=...</code></th>
<th>Target</th>
<th>Debian tree</th>
<th>Debian arch</th>
<th><code>--openjdk-target=...</code></th>
<th><code>--with-jvm-variants=...</code></th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td style="text-align: left;">x86</td>
<td style="text-align: left;">buster</td>
<td style="text-align: left;">i386</td>
<td style="text-align: left;">i386-linux-gnu</td>
<td>x86</td>
<td>buster</td>
<td>i386</td>
<td>i386-linux-gnu</td>
<td>(all)</td>
</tr>
<tr class="even">
<td style="text-align: left;">arm</td>
<td style="text-align: left;">buster</td>
<td style="text-align: left;">armhf</td>
<td style="text-align: left;">arm-linux-gnueabihf</td>
<td>arm</td>
<td>buster</td>
<td>armhf</td>
<td>arm-linux-gnueabihf</td>
<td>(all)</td>
</tr>
<tr class="odd">
<td style="text-align: left;">aarch64</td>
<td style="text-align: left;">buster</td>
<td style="text-align: left;">arm64</td>
<td style="text-align: left;">aarch64-linux-gnu</td>
<td>aarch64</td>
<td>buster</td>
<td>arm64</td>
<td>aarch64-linux-gnu</td>
<td>(all)</td>
</tr>
<tr class="even">
<td style="text-align: left;">ppc64le</td>
<td style="text-align: left;">buster</td>
<td style="text-align: left;">ppc64el</td>
<td style="text-align: left;">powerpc64le-linux-gnu</td>
<td>ppc64le</td>
<td>buster</td>
<td>ppc64el</td>
<td>powerpc64le-linux-gnu</td>
<td>(all)</td>
</tr>
<tr class="odd">
<td style="text-align: left;">s390x</td>
<td style="text-align: left;">buster</td>
<td style="text-align: left;">s390x</td>
<td style="text-align: left;">s390x-linux-gnu</td>
<td>s390x</td>
<td>buster</td>
<td>s390x</td>
<td>s390x-linux-gnu</td>
<td>(all)</td>
</tr>
<tr class="even">
<td style="text-align: left;">mipsle</td>
<td style="text-align: left;">buster</td>
<td style="text-align: left;">mipsel</td>
<td style="text-align: left;">mipsel-linux-gnu</td>
<td>mipsle</td>
<td>buster</td>
<td>mipsel</td>
<td>mipsel-linux-gnu</td>
<td>zero</td>
</tr>
<tr class="odd">
<td style="text-align: left;">mips64le</td>
<td style="text-align: left;">buster</td>
<td style="text-align: left;">mips64el</td>
<td style="text-align: left;">mips64el-linux-gnueabi64</td>
<td>mips64le</td>
<td>buster</td>
<td>mips64el</td>
<td>mips64el-linux-gnueabi64</td>
<td>zero</td>
</tr>
<tr class="even">
<td style="text-align: left;">armel</td>
<td style="text-align: left;">buster</td>
<td style="text-align: left;">arm</td>
<td style="text-align: left;">arm-linux-gnueabi</td>
<td>armel</td>
<td>buster</td>
<td>arm</td>
<td>arm-linux-gnueabi</td>
<td>zero</td>
</tr>
<tr class="odd">
<td style="text-align: left;">ppc</td>
<td style="text-align: left;">sid</td>
<td style="text-align: left;">powerpc</td>
<td style="text-align: left;">powerpc-linux-gnu</td>
<td>ppc</td>
<td>sid</td>
<td>powerpc</td>
<td>powerpc-linux-gnu</td>
<td>zero</td>
</tr>
<tr class="even">
<td style="text-align: left;">ppc64be</td>
<td style="text-align: left;">sid</td>
<td style="text-align: left;">ppc64</td>
<td style="text-align: left;">powerpc64-linux-gnu</td>
<td>ppc64be</td>
<td>sid</td>
<td>ppc64</td>
<td>powerpc64-linux-gnu</td>
<td>(all)</td>
</tr>
<tr class="odd">
<td style="text-align: left;">m68k</td>
<td style="text-align: left;">sid</td>
<td style="text-align: left;">m68k</td>
<td style="text-align: left;">m68k-linux-gnu</td>
<td>m68k</td>
<td>sid</td>
<td>m68k</td>
<td>m68k-linux-gnu</td>
<td>zero</td>
</tr>
<tr class="even">
<td style="text-align: left;">alpha</td>
<td style="text-align: left;">sid</td>
<td style="text-align: left;">alpha</td>
<td style="text-align: left;">alpha-linux-gnu</td>
<td>alpha</td>
<td>sid</td>
<td>alpha</td>
<td>alpha-linux-gnu</td>
<td>zero</td>
</tr>
<tr class="odd">
<td style="text-align: left;">sh4</td>
<td style="text-align: left;">sid</td>
<td style="text-align: left;">sh4</td>
<td style="text-align: left;">sh4-linux-gnu</td>
<td>sh4</td>
<td>sid</td>
<td>sh4</td>
<td>sh4-linux-gnu</td>
<td>zero</td>
</tr>
<tr class="even">
<td style="text-align: left;">riscv64</td>
<td style="text-align: left;">sid</td>
<td style="text-align: left;">riscv64</td>
<td style="text-align: left;">riscv64-linux-gnu</td>
<td>riscv64</td>
<td>sid</td>
<td>riscv64</td>
<td>riscv64-linux-gnu</td>
<td>(all)</td>
</tr>
</tbody>

View File

@@ -126,6 +126,8 @@ space is required.
Even for 32-bit builds, it is recommended to use a 64-bit build machine, and
instead create a 32-bit target using `--with-target-bits=32`.
Note: The Windows 32-bit x86 port is deprecated and may be removed in a future release.
### Building on aarch64
At a minimum, a machine with 8 cores is advisable, as well as 8 GB of RAM.
@@ -162,11 +164,11 @@ This table lists the OS versions used by Oracle when building the JDK. Such
information is always subject to change, but this table is up to date at the
time of writing.
Operating system Vendor/version used
----------------- -------------------------------------------------------
Linux Oracle Enterprise Linux 6.4 / 7.6
macOS Mac OS X 10.13 (High Sierra)
Windows Windows Server 2012 R2
| Operating system | Vendor/version used |
| ----------------- | ---------------------------------- |
| Linux | Oracle Enterprise Linux 6.4 / 7.6 |
| macOS | Mac OS X 10.13 (High Sierra) |
| Windows | Windows Server 2012 R2 |
The double version numbers for Linux are due to the hybrid model
used at Oracle, where header files and external libraries from an older version
@@ -199,6 +201,8 @@ rule also applies to input to the build system, e.g. in arguments to
`--with-msvcr-dll=c:\msvcr100.dll`. For details on this conversion, see the section
on [Fixpath](#fixpath).
Note: The Windows 32-bit x86 port is deprecated and may be removed in a future release.
#### Cygwin
A functioning [Cygwin](http://www.cygwin.com/) environment is required for
@@ -471,6 +475,19 @@ rather than bundling the JDK's own copy.
Use `--with-freetype-include=<path>` and `--with-freetype-lib=<path>`
if `configure` does not automatically locate the platform FreeType files.
### Fontconfig
Fontconfig from [freedesktop.org Fontconfig](http://fontconfig.org) is required
on all platforms except Windows and macOS.
* To install on an apt-based Linux, try running `sudo apt-get install
libfontconfig-dev`.
* To install on an rpm-based Linux, try running `sudo yum install
fontconfig-devel`.
Use `--with-fontconfig-include=<path>` and `--with-fontconfig=<path>`
if `configure` does not automatically locate the platform Fontconfig files.
### CUPS
CUPS, [Common UNIX Printing System](http://www.cups.org) header files are
@@ -970,14 +987,14 @@ https://sourceware.org/autobook/autobook/autobook_17.html). If no
targets are given, a native toolchain for the current platform will be
created. Currently, at least the following targets are known to work:
Supported devkit targets
-------------------------
x86_64-linux-gnu
aarch64-linux-gnu
arm-linux-gnueabihf
ppc64-linux-gnu
ppc64le-linux-gnu
s390x-linux-gnu
| Supported devkit targets |
| ------------------------ |
| x86_64-linux-gnu |
| aarch64-linux-gnu |
| arm-linux-gnueabihf |
| ppc64-linux-gnu |
| ppc64le-linux-gnu |
| s390x-linux-gnu |
`BASE_OS` must be one of "OEL6" for Oracle Enterprise Linux 6 or
"Fedora" (if not specified "OEL6" will be the default). If the base OS
@@ -1204,22 +1221,22 @@ it might require a little nudge with:
Architectures that are known to successfully cross-compile like this are:
Target Debian tree Debian arch `--openjdk-target=...` `--with-jvm-variants=...`
------------ ------------ ------------- ------------------------ --------------
x86 buster i386 i386-linux-gnu (all)
arm buster armhf arm-linux-gnueabihf (all)
aarch64 buster arm64 aarch64-linux-gnu (all)
ppc64le buster ppc64el powerpc64le-linux-gnu (all)
s390x buster s390x s390x-linux-gnu (all)
mipsle buster mipsel mipsel-linux-gnu zero
mips64le buster mips64el mips64el-linux-gnueabi64 zero
armel buster arm arm-linux-gnueabi zero
ppc sid powerpc powerpc-linux-gnu zero
ppc64be sid ppc64 powerpc64-linux-gnu (all)
m68k sid m68k m68k-linux-gnu zero
alpha sid alpha alpha-linux-gnu zero
sh4 sid sh4 sh4-linux-gnu zero
riscv64 sid riscv64 riscv64-linux-gnu (all)
| Target | Debian tree | Debian arch | `--openjdk-target=...` | `--with-jvm-variants=...` |
| ------------ | ------------ | ------------- | ------------------------ | ------------------------- |
| x86 | buster | i386 | i386-linux-gnu | (all) |
| arm | buster | armhf | arm-linux-gnueabihf | (all) |
| aarch64 | buster | arm64 | aarch64-linux-gnu | (all) |
| ppc64le | buster | ppc64el | powerpc64le-linux-gnu | (all) |
| s390x | buster | s390x | s390x-linux-gnu | (all) |
| mipsle | buster | mipsel | mipsel-linux-gnu | zero |
| mips64le | buster | mips64el | mips64el-linux-gnueabi64 | zero |
| armel | buster | arm | arm-linux-gnueabi | zero |
| ppc | sid | powerpc | powerpc-linux-gnu | zero |
| ppc64be | sid | ppc64 | powerpc64-linux-gnu | (all) |
| m68k | sid | m68k | m68k-linux-gnu | zero |
| alpha | sid | alpha | alpha-linux-gnu | zero |
| sh4 | sid | sh4 | sh4-linux-gnu | zero |
| riscv64 | sid | riscv64 | riscv64-linux-gnu | (all) |
### Building for ARM/aarch64

View File

@@ -426,6 +426,14 @@ GB/2</em>.</p>
<p>Sets the argument <code>-timeoutHandlerTimeout</code> for JTReg. The
default value is 0. This is only valid if the failure handler is
built.</p>
<h4 id="jtreg_test_thread_factory">JTREG_TEST_THREAD_FACTORY</h4>
<p>Sets the <code>-testThreadFactory</code> for JTReg. It should be the
fully qualified classname of a class which implements
<code>java.util.concurrent.ThreadFactory</code>. One such implementation
class, named Virtual, is currently part of the JDK build in the
<code>test/jtreg_test_thread_factory/</code> directory. This class gets
compiled during the test image build. The implementation of the Virtual
class creates a new virtual thread for executing each test class.</p>
<h4 id="test_mode">TEST_MODE</h4>
<p>The test mode (<code>agentvm</code> or <code>othervm</code>).</p>
<p>Defaults to <code>agentvm</code>.</p>

View File

@@ -378,6 +378,15 @@ Defaults to 4.
Sets the argument `-timeoutHandlerTimeout` for JTReg. The default value is 0.
This is only valid if the failure handler is built.
#### JTREG_TEST_THREAD_FACTORY
Sets the `-testThreadFactory` for JTReg. It should be the fully qualified classname
of a class which implements `java.util.concurrent.ThreadFactory`.
One such implementation class, named Virtual, is currently part of the JDK build
in the `test/jtreg_test_thread_factory/` directory. This class gets compiled during
the test image build. The implementation of the Virtual class creates a new virtual
thread for executing each test class.
#### TEST_MODE
The test mode (`agentvm` or `othervm`).

View File

@@ -1,274 +0,0 @@
#!/usr/bin/env python3
import argparse
import os.path
import sys
import subprocess
errors_count = 0
def fatal(msg):
sys.stderr.write(f"[fatal] {msg}\n")
sys.exit(1)
def error(msg):
global errors_count
errors_count += 1
sys.stderr.write(f"[error] {msg}\n")
def verbose(options, *msg):
if options.verbose:
sys.stderr.write(f"[verbose] ")
sys.stderr.write(*msg)
sys.stderr.write('\n')
def first_line(str):
return "" if not str else str.splitlines()[0]
class Options:
def __init__(self):
ap = argparse.ArgumentParser(description="Show commit differences between branches of JBR git repos",
epilog="Example: %(prog)s --from origin/jbr17 --to jbr17.b469 --path "
"src/hotspot --limit 200")
ap.add_argument('--jbr', dest='jbrpath', help='path to JBR git root', required=True)
ap.add_argument('--from', dest='frombranch', help='branch to take commits from', required=True)
ap.add_argument('--to', dest='tobranch', help='branch to apply new commits to', required=True)
ap.add_argument('--path', dest='path', help='limit to changes in this path (relative to git root)')
ap.add_argument('--limit', dest='limit', help='limit to this many log entries in --jdk repo', type=int,
default=-1)
ap.add_argument('--html', dest="ishtml", help="print out HTML rather than plain text", action='store_true')
ap.add_argument('-o', dest="output", help="print the list of missing commits to this file"
" to be used as exclude list later")
ap.add_argument('--exclude', dest='exclude', help='exclude commits listed in the given file '
'(can use edited -o output file as input here)')
ap.add_argument('-v', dest='verbose', help="verbose output", default=False, action='store_true')
args = ap.parse_args()
if not os.path.isdir(args.jbrpath):
fatal(f"{args.jbrpath} not a directory")
if not git_is_available():
fatal("can't run git commands; make sure git is in PATH")
self.frombranch = args.frombranch
self.tobranch = args.tobranch
self.jbrpath = args.jbrpath
self.path = args.path
self.limit = args.limit
self.exclude = args.exclude
self.output = args.output
self.ishtml = args.ishtml
self.verbose = args.verbose
class GitRepo:
def __init__(self, rootpath):
self.rootpath = rootpath
def run_git_cmd(self, git_args):
args = ["git", "-C", self.rootpath]
args.extend(git_args)
# print(f"Runnig git cmd '{' '.join(args)}'")
p = subprocess.run(args, capture_output=True, text=True)
if p.returncode != 0:
fatal(f"git returned non-zero code in {self.rootpath} ({first_line(p.stderr)})")
return p.stdout
def save_git_cmd(self, fname, git_args):
args = ["git", "-C", self.rootpath]
args.extend(git_args)
# print(f"Runnig git cmd '{' '.join(args)}'")
with open(fname, "w") as stdout_file:
p = subprocess.run(args, stdout=stdout_file)
if p.returncode != 0:
fatal(f"git returned non-zero code in {self.rootpath} ({first_line(p.stderr)})")
def current_branch(self):
branch_name = self.run_git_cmd(["branch", "--show-current"]).strip()
return branch_name
def log(self, branch, path=None, limit=None):
cmds = ["log", "--no-decorate", branch]
if limit:
cmds.extend(["-n", str(limit)])
if path:
cmds.append(path)
full_log = self.run_git_cmd(cmds)
return full_log
class Commit:
def __init__(self, lines):
self.sha = lines[0].split()[1]
self.message = ""
self.fullmessage = ""
self.bugid = ""
# Commit message starts after one blank line
read_message = False
for l in lines:
if read_message:
self.fullmessage += l.strip() + "\n"
if not read_message and l == "":
read_message = True
if len(self.fullmessage) > 0:
self.message = first_line(self.fullmessage).strip()
t = self.message.split(' ')
if len(t) > 1:
bugid = t[0]
if bugid.startswith("fixup"):
bugid = t[1]
bugid = bugid.strip(":")
if bugid.startswith("JBR-") or bugid.isnumeric():
self.bugid = bugid
class History:
def __init__(self, log):
log_itr = iter(log.splitlines())
self.commits = []
self.unique_fullmessages = set()
self.duplicates = set()
commit_lines = []
for line in log_itr:
if line.startswith("commit ") and len(commit_lines) > 0:
commit = Commit(commit_lines)
self.add_commit(commit)
commit_lines = []
commit_lines.append(line)
if len(commit_lines) > 0:
commit = Commit(commit_lines)
self.add_commit(commit)
def add_commit(self, commit):
self.commits.append(commit)
if commit.fullmessage in self.unique_fullmessages:
self.duplicates.add(commit.fullmessage)
else:
self.unique_fullmessages.add(commit.fullmessage)
def appears_more_than_once(self, commit):
return commit.fullmessage in self.duplicates
def contains(self, commit):
return commit.fullmessage in self.unique_fullmessages
def size(self):
return len(self.commits)
def print_explanation(options, jbr):
verbose(options, f"Reading history from '{jbr.rootpath}'")
if options.path:
verbose(options, f"\t(only under '{options.path}')")
if options.limit > 0:
verbose(options, f"\t(up to '{options.limit}' commits)")
verbose(options, f"Searching for missing fixes in '{options.tobranch}' compared with '{options.frombranch}'")
def git_is_available():
p = None
try:
p = subprocess.run(["git", "--help"], stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
except:
pass
return p is not None and p.returncode == 0
def main():
check_python_min_requirements()
options = Options()
jbr = GitRepo(options.jbrpath)
print_explanation(options, jbr)
commits_to_save = []
try:
log_from = jbr.log(options.frombranch, options.path, options.limit)
log_to = jbr.log(options.tobranch, options.path, options.limit)
history_from = History(log_from)
history_to = History(log_to)
verbose(options,
f"Read {history_from.size()} commits from '{options.frombranch}', {history_to.size()} from {options.tobranch}")
exclude_list = []
if options.exclude:
with open(options.exclude, "r") as exclude_file:
l = exclude_file.read().split('\n')
exclude_list = list(filter(lambda line: not line.startswith("#"), l))
warned = set()
for c in history_from.commits:
if c.message:
verbose(options, f"Looking for commit '{c.message}'")
if c.message in exclude_list:
verbose(options, "...nope, in exclude list")
continue
if not history_to.contains(c):
commits_to_save.append(c)
else:
if history_from.appears_more_than_once(c) and c.fullmessage not in warned:
# Not sure which of those seemingly identical commits are present in the target branch
error(f"Commit '{c.message}' appears more than once in branch '{options.frombranch}'. ")
warned.add(c.fullmessage)
except KeyboardInterrupt:
fatal("Interrupted")
print_out_commits(options, commits_to_save)
save_commits_to_file(commits_to_save, options)
if errors_count > 0:
error(f"{errors_count} error(s) generated to stderr. MANUAL CHECK OF COMMITS IS REQUIRED.")
def save_commits_to_file(commits_to_save, options):
if len(commits_to_save) > 0 and options.output:
print()
with open(options.output, "w") as out:
for i, c in enumerate(reversed(commits_to_save)):
print(f"# {c.sha}", file=out)
print(c.message, file=out)
def print_out_commits(options, commits_to_save):
if options.ishtml:
print("<html><body>")
print(f"<p><b>Commits on <code>{options.frombranch}</code>"
f" missing from <code>{options.tobranch}</code></b></p></h1>")
if len(commits_to_save) > 0:
for c in sorted(commits_to_save, key=lambda commit: commit.bugid):
if options.ishtml:
msg = c.message
bugurl = ""
if c.bugid:
if c.bugid.isnumeric():
bugurl = f"https://bugs.openjdk.org/browse/JDK-{c.bugid}"
elif c.bugid.startswith("JBR-"):
bugurl = f"https://youtrack.jetbrains.com/issue/{c.bugid}"
if len(bugurl) > 0:
msg = msg.replace(c.bugid, f"<a href='{bugurl}'>{c.bugid}</a>")
sha = f"<a href='https://jetbrains.team/p/jbre/repositories/jbr/commits?commits={c.sha}'>" \
f"{c.sha[0:8]}</a>"
print(f"<li>{msg} ({sha})</li>")
else:
print(f"{c.message} ({c.sha[0:8]})")
if options.ishtml:
print("</body></html>")
def check_python_min_requirements():
if sys.version_info < (3, 6):
fatal("Minimum version 3.6 is required to run this script")
if __name__ == '__main__':
main()

View File

@@ -1,230 +0,0 @@
#!/usr/bin/env python3
import argparse
import math
import os.path
import sys
import subprocess
def fatal(msg):
sys.stderr.write(f"[fatal] {msg}\n")
sys.exit(1)
def verbose(options, *msg):
if options.verbose:
sys.stdout.write(f"[verbose] ")
sys.stdout.write(*msg)
sys.stdout.write('\n')
def first_line(str):
return "" if not str else str.splitlines()[0]
class Options:
def __init__(self):
ap = argparse.ArgumentParser(description="Show bugfixes differences between JBR and OpenJDK git repos",
epilog="Example: %(prog)s --jdk ./jdk11u/ --jbr ./JetBrainsRuntime/ --path src/hotspot --limit 200")
ap.add_argument('--jdk', dest='jdkpath', help='path to OpenJDK git repo', required=True)
ap.add_argument('--jbr', dest='jbrpath', help='path to JBR git repo', required=True)
ap.add_argument('--path', dest='path', help='limit to changes in this path (relative to git root)')
ap.add_argument('--limit', dest='limit', help='limit to this many log entries in --jdk repo', type=int, default=-1)
ap.add_argument('-o', dest="output_dir", help="save patches to this directory (created if necessary)")
ap.add_argument('-v', dest='verbose', help="verbose output", default=False, action='store_true')
args = ap.parse_args()
if not os.path.isdir(args.jdkpath):
fatal(f"{args.jdkpath} not a directory")
if not os.path.isdir(args.jbrpath):
fatal(f"{args.jbrpath} not a directory")
if not git_is_available():
fatal("can't run git commands; make sure git is in PATH")
self.jdkpath = args.jdkpath
self.jbrpath = args.jbrpath
self.path = args.path
self.limit = args.limit
self.output_dir = args.output_dir
self.verbose = args.verbose
class GitRepo:
def __init__(self, rootpath):
self.rootpath = rootpath
def run_git_cmd(self, git_args):
args = ["git", "-C", self.rootpath]
args.extend(git_args)
# print(f"Runnig git cmd '{' '.join(args)}'")
p = subprocess.run(args, capture_output=True, text=True)
if p.returncode != 0:
fatal(f"git returned non-zero code in {self.rootpath} ({first_line(p.stderr)})")
return p.stdout
def save_git_cmd(self, fname, git_args):
args = ["git", "-C", self.rootpath]
args.extend(git_args)
# print(f"Runnig git cmd '{' '.join(args)}'")
with open(fname, "w") as stdout_file:
p = subprocess.run(args, stdout=stdout_file)
if p.returncode != 0:
fatal(f"git returned non-zero code in {self.rootpath} ({first_line(p.stderr)})")
def current_branch(self):
branch_name = self.run_git_cmd(["branch", "--show-current"]).strip()
return branch_name
def log(self, path=None, limit=None):
cmds = ["log", "--no-decorate"]
if limit:
cmds.extend(["-n", str(limit)])
if path:
cmds.append(path)
full_log = self.run_git_cmd(cmds)
return full_log
class Commit:
def __init__(self, lines):
self.sha = lines[0].split()[1]
self.message = ""
self.bugid = None
# Commit message starts after one blank line
read_message = False
for l in lines:
if read_message:
self.message += l + "\n"
if not read_message and l == "":
read_message = True
if self.message and self.message != "" and ":" in self.message:
maybe_bugid = self.message.split(":")[0].strip()
if 10 >= len(maybe_bugid) >= 4:
self.bugid = maybe_bugid
class History:
def __init__(self, log):
log_itr = iter(log.splitlines())
self.commits = []
commit_lines = []
for line in log_itr:
if line.startswith("commit ") and len(commit_lines) > 0:
commit = Commit(commit_lines)
self.commits.append(commit)
commit_lines = []
commit_lines.append(line)
if len(commit_lines) > 0:
commit = Commit(commit_lines)
self.commits.append(commit)
def contains(self, str):
return any(str in commit.message for commit in self.commits)
def size(self):
return len(self.commits)
def print_explanation(options, jdk, jbr):
verbose(options, f"Reading history from '{jdk.rootpath}' on branch '{jdk.current_branch()}'")
if options.path:
verbose(options, f"\t(only under '{options.path}')")
verbose(options, f"Searching for same fixes in '{jbr.rootpath}' on branch '{jbr.current_branch()}'")
def git_is_available():
p = None
try:
p = subprocess.run(["git", "--help"], stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
except:
pass
return p is not None and p.returncode == 0
def main():
check_python_min_requirements()
options = Options()
jdk = GitRepo(options.jdkpath)
jbr = GitRepo(options.jbrpath)
print_explanation(options, jdk, jbr)
commits_to_save = []
try:
jdk_log = jdk.log(options.path, options.limit)
jdk_history = History(jdk_log)
jbr_log = jbr.log(options.path)
jbr_history = History(jbr_log)
verbose(options, f"Read {jdk_history.size()} commits in JDK, {jbr_history.size()} in JBR")
for c in jdk_history.commits:
if c.bugid:
verbose(options, f"Looking for bugfix for {c.bugid}")
if not jbr_history.contains(c.bugid):
commits_to_save.append(c)
print(f"[note] Fix for {c.bugid} not found in JBR ({jbr.rootpath})")
print(f" commit {c.sha}")
print(f" {first_line(c.message).strip()}")
except KeyboardInterrupt:
fatal("Interrupted")
if len(commits_to_save) > 0 and options.output_dir:
print()
if not os.path.exists(options.output_dir):
verbose(options, f"Creating output directory {options.output_dir}")
os.makedirs(options.output_dir)
nzeroes = len(str(len(commits_to_save)))
for i, c in enumerate(reversed(commits_to_save)):
fname = os.path.join(options.output_dir, f"{str(i).zfill(nzeroes)}-{c.bugid}.patch")
print(f"[note] {c.bugid} saved as {fname}")
fname = os.path.abspath(fname)
jdk.save_git_cmd(fname, ["format-patch", "-1", c.sha, "--stdout"])
script_fname = os.path.join(options.output_dir, "apply.sh")
with open(script_fname, "w") as script_file:
print(apply_script_code.format(os.path.abspath(jbr.rootpath), os.path.abspath(options.output_dir)),
file=script_file)
print(f"[note] Execute 'bash {script_fname}' to apply patches to {jbr.rootpath}")
def check_python_min_requirements():
if sys.version_info < (3, 6):
fatal("Minimum version 3.6 is required to run this script")
apply_script_code = """
#!/bin/bash
GITROOT={0}
PATCHROOT={1}
cd $PATCHROOT || exit 1
PATCHES=$(find $PATCHROOT -name '*.patch' | sort -n)
for P in $PATCHES; do
git -C $GITROOT am $P
if [ $? != 0 ]; then
mv "$P" "$P.failed"
echo "[ERROR] Patch $P did not apply cleanly. Try applying it manually."
echo "[NOTE] Execute this script to apply the remaining patches."
exit 1
else
mv "$P" "$P.done"
fi
done
echo "[NOTE] Done applying patches; check $PATCHROOT for .patch and .patch.failed to see if all have been applied."
"""
if __name__ == '__main__':
main()

View File

@@ -1,13 +0,0 @@
# jetbrains/runtime:jbr15env
FROM centos:7
RUN yum -y install centos-release-scl
RUN yum -y install devtoolset-8
RUN yum -y install zip bzip2 unzip tar wget make autoconf automake libtool gcc gcc-c++ libstdc++-devel alsa-devel cups-devel xorg-x11-devel libjpeg62-devel giflib-devel freetype-devel file which libXtst-devel libXt-devel libXrender-devel alsa-lib-devel fontconfig-devel libXrandr-devel libXi-devel git
# Install Java 16
RUN wget https://cdn.azul.com/zulu/bin/zulu17.28.13-ca-jdk17.0.0-linux_x64.tar.gz \
-O - | tar xz -C /
RUN mv /zulu17.28.13-ca-jdk17.0.0-linux_x64 /jdk17.0.0
ENV PATH /opt/rh/devtoolset-8/root/usr/bin:$PATH
RUN mkdir .git
RUN git config user.email "teamcity@jetbrains.com"
RUN git config user.name "builduser"

View File

@@ -1,48 +0,0 @@
# NOTE: This Dockerfile is meant to be used from the mkdocker_aarch64.sh script.
# Pull a concrete version of Linux that does NOT recieve updates after it's
# been created. This is so that the image is as stable as possible to make
# image creation reproducible.
# NB: this also means there may be no security-related fixes there, need to
# move the version to the next manually.
FROM arm64v8/ubuntu:focal-20211006
# Install the necessary build tools
RUN export DEBIAN_FRONTEND=noninteractive \
export DEBCONF_NONINTERACTIVE_SEEN=true && \
echo 'tzdata tzdata/Areas select Etc' | debconf-set-selections; \
echo 'tzdata tzdata/Zones/Etc select UTC' | debconf-set-selections; \
apt-get update -qy && \
apt-get install -qy \
autoconf \
build-essential \
bzip2 \
file \
g++-10=10.3.0-1ubuntu1~20.04 \
gcc-10=10.3.0-1ubuntu1~20.04 \
git \
libasound2-dev \
libcups2-dev \
libfontconfig1-dev \
libx11-dev \
libxext-dev \
libxrandr-dev \
libxrender-dev \
libxt-dev \
libxtst-dev \
make \
rsync \
tar \
unzip \
zip && \
update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 100 --slave /usr/bin/g++ g++ /usr/bin/g++-10 && \
apt-get clean -qy && \
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
# Set up boot JDK for building
COPY boot_jdk.tar.gz /jdk17/
RUN cd /jdk17 && tar --strip-components=1 -xzf boot_jdk.tar.gz && rm /jdk17/boot_jdk.tar.gz
ENV BOOT_JDK=/jdk17
RUN git config --global user.email "teamcity@jetbrains.com" && \
git config --global user.name "builduser"

View File

@@ -1,22 +0,0 @@
# NOTE: This Dockerfile is meant to be used from the mkdocker_musl_aarch64.sh script.
# Pull a concrete version of Linux that does NOT recieve updates after it's
# been created. This is so that the image is as stable as possible to make
# image creation reproducible.
# NB: this also means there may be no security-related fixes there, need to
# move the version to the next manually.
FROM arm64v8/alpine:3.12
# Install the necessary build tools
RUN apk --no-cache add --update bash grep tar zip bzip2 rsync fontconfig build-base \
git libx11-dev libxext-dev libxrandr-dev libxrender-dev libxt-dev \
libxtst-dev autoconf freetype-dev cups-dev alsa-lib-dev file \
fontconfig fontconfig-dev linux-headers
# Set up boot JDK for building
COPY boot_jdk_musl_aarch64.tar.gz /jdk17/
RUN cd /jdk17 && tar --strip-components=1 -xzf boot_jdk_musl_aarch64.tar.gz && rm /jdk17/boot_jdk_musl_aarch64.tar.gz
ENV BOOT_JDK=/jdk17
RUN git config --global user.email "teamcity@jetbrains.com" && \
git config --global user.name "builduser"

View File

@@ -1,22 +0,0 @@
# NOTE: This Dockerfile is meant to be used from the mkdocker_musl_x64.sh script.
# Pull a concrete version of Linux that does NOT recieve updates after it's
# been created. This is so that the image is as stable as possible to make
# image creation reproducible.
# NB: this also means there may be no security-related fixes there, need to
# move the version to the next manually.
FROM alpine:3.14
# Install the necessary build tools
RUN apk --no-cache add --update bash grep tar zip bzip2 rsync fontconfig build-base \
git libx11-dev libxext-dev libxrandr-dev libxrender-dev libxt-dev \
libxtst-dev autoconf freetype-dev cups-dev alsa-lib-dev file \
fontconfig fontconfig-dev linux-headers
# Set up boot JDK for building
COPY boot_jdk_musl_amd64.tar.gz /jdk17/
RUN cd /jdk17 && tar --strip-components=1 -xzf boot_jdk_musl_amd64.tar.gz && rm /jdk17/boot_jdk_musl_amd64.tar.gz
ENV BOOT_JDK=/jdk17
RUN git config --global user.email "teamcity@jetbrains.com" && \
git config --global user.name "builduser"

View File

@@ -1,55 +0,0 @@
# NOTE: This Dockerfile is meant to be used from the mkdocker_x86.sh script.
# Pull a concrete version of Linux that does NOT receive updates after it's
# been created. This is so that the image is as stable as possible to make
# image creation reproducible.
# NB: this also means there may be no security-related fixes there, need to
# move the version to the next manually.
#FROM i386/ubuntu:xenial
#FROM i386/ubuntu:bionic
FROM i386/ubuntu:focal
RUN linux32 \
apt-get update && apt-get install -y --no-install-recommends apt-utils
RUN export DEBIAN_FRONTEND=noninteractive \
export DEBCONF_NONINTERACTIVE_SEEN=true && \
echo 'tzdata tzdata/Areas select Etc' | debconf-set-selections; \
echo 'tzdata tzdata/Zones/Etc select UTC' | debconf-set-selections; \
linux32 \
apt-get -y install \
autoconf \
build-essential \
curl \
file \
git \
libx11-dev \
libxext-dev \
libxrender-dev \
libxrandr-dev \
libxtst-dev \
libxt-dev \
libcups2-dev \
libasound2-data \
# libpng12-0 \
libasound2 \
libfreetype6 \
libfontconfig1-dev \
libasound2-dev \
rsync \
unzip \
zip
RUN linux32 \
apt-get -y install \
g++-10 \
gcc-10 && \
update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 100 --slave /usr/bin/g++ g++ /usr/bin/g++-10 && \
apt-get clean -qy && \
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
# Set up boot JDK for building
COPY boot_jdk_x86.tar.gz /jdk17/
RUN cd /jdk17 && tar --strip-components=1 -xzf boot_jdk_x86.tar.gz && rm /jdk17/boot_jdk_x86.tar.gz
ENV BOOT_JDK=/jdk17
RUN git config --global user.email "teamcity@jetbrains.com" && \
git config --global user.name "builduser"

View File

@@ -1,29 +0,0 @@
#!/bin/bash
set -euo pipefail
set -x
# This script creates a Docker image suitable for building AArch64 variant
# of the JetBrains Runtime "dev" version.
BOOT_JDK_REMOTE_FILE=zulu17.30.15-ca-jdk17.0.1-linux_aarch64.tar.gz
BOOT_JDK_SHA=4d9c9116eb0cdd2d7fb220d6d27059f4bf1b7e95cc93d5512bd8ce3791af86c7
BOOT_JDK_LOCAL_FILE=boot_jdk.tar.gz
if [ ! -f $BOOT_JDK_LOCAL_FILE ]; then
# Obtain "boot JDK" from outside of the container.
wget -nc https://cdn.azul.com/zulu/bin/${BOOT_JDK_REMOTE_FILE} -O $BOOT_JDK_LOCAL_FILE
else
echo "boot JDK \"$BOOT_JDK_LOCAL_FILE\" present, skipping download"
fi
# Verify that what we've downloaded can be trusted.
sha256sum -c - <<EOF
$BOOT_JDK_SHA *$BOOT_JDK_LOCAL_FILE
EOF
docker build -t jbrdevenv_arm64v8 -f Dockerfile.aarch64 .
# NB: the resulting container can (and should) be used without the network
# connection (--network none) during build in order to reduce the chance
# of build contamination.

View File

@@ -1,29 +0,0 @@
#!/bin/bash
set -euo pipefail
set -x
# This script creates a Docker image suitable for building musl AArch64 variant
# of the JetBrains Runtime version 17.
BOOT_JDK_REMOTE_FILE=zulu17.32.13-ca-jdk17.0.2-linux_musl_aarch64.tar.gz
BOOT_JDK_SHA=6b920559abafbe9bdef386a20ecf3a2f318bc1f0d8359eb1f95aee26606bbc70
BOOT_JDK_LOCAL_FILE=boot_jdk_musl_aarch64.tar.gz
if [ ! -f $BOOT_JDK_LOCAL_FILE ]; then
# Obtain "boot JDK" from outside of the container.
wget -nc https://cdn.azul.com/zulu/bin/${BOOT_JDK_REMOTE_FILE} -O $BOOT_JDK_LOCAL_FILE
else
echo "boot JDK \"$BOOT_JDK_LOCAL_FILE\" present, skipping download"
fi
# Verify that what we've downloaded can be trusted.
sha256sum -c - <<EOF
$BOOT_JDK_SHA *$BOOT_JDK_LOCAL_FILE
EOF
docker build -t jbr17buildenv -f Dockerfile.musl_aarch64 .
# NB: the resulting container can (and should) be used without the network
# connection (--network none) during build in order to reduce the chance
# of build contamination.

View File

@@ -1,29 +0,0 @@
#!/bin/bash
set -euo pipefail
set -x
# This script creates a Docker image suitable for building musl-x64 variant
# of the JetBrains Runtime version 17.
BOOT_JDK_REMOTE_FILE=zulu17.32.13-ca-jdk17.0.2-linux_musl_x64.tar.gz
BOOT_JDK_SHA=bcc5342011bd9f3643372aadbdfa68d47463ff0d8621668a0bdf2910614d95c6
BOOT_JDK_LOCAL_FILE=boot_jdk_musl_amd64.tar.gz
if [ ! -f $BOOT_JDK_LOCAL_FILE ]; then
# Obtain "boot JDK" from outside of the container.
wget -nc https://cdn.azul.com/zulu/bin/${BOOT_JDK_REMOTE_FILE} -O $BOOT_JDK_LOCAL_FILE
else
echo "boot JDK \"$BOOT_JDK_LOCAL_FILE\" present, skipping download"
fi
# Verify that what we've downloaded can be trusted.
sha256sum -c - <<EOF
$BOOT_JDK_SHA *$BOOT_JDK_LOCAL_FILE
EOF
docker build -t jbr17buildenv -f Dockerfile.musl_x64 .
# NB: the resulting container can (and should) be used without the network
# connection (--network none) during build in order to reduce the chance
# of build contamination.

View File

@@ -1,26 +0,0 @@
#!/bin/bash -x
# This script creates a Docker image suitable for building x86 variant
# of the JetBrains Runtime version 17.
BOOT_JDK_REMOTE_FILE=zulu17.34.19-ca-jdk17.0.3-linux_i686.tar.gz
BOOT_JDK_SHA=1c35c374ba0001e675d6e80819d5be900c4e141636d5e484992a8c550be14481
BOOT_JDK_LOCAL_FILE=boot_jdk_x86.tar.gz
if [ ! -f $BOOT_JDK_LOCAL_FILE ]; then
# Obtain "boot JDK" from outside of the container.
wget -nc https://cdn.azul.com/zulu/bin/${BOOT_JDK_REMOTE_FILE} -O $BOOT_JDK_LOCAL_FILE
else
echo "boot JDK \"$BOOT_JDK_LOCAL_FILE\" present, skipping download"
fi
# Verify that what we've downloaded can be trusted.
sha256sum -c - <<EOF
$BOOT_JDK_SHA *$BOOT_JDK_LOCAL_FILE
EOF
docker build -t jetbrains/runtime:jbr17env_x86 -f Dockerfile.x86 .
# NB: the resulting container can (and should) be used without the network
# connection (--network none) during build in order to reduce the chance
# of build contamination.

View File

@@ -1 +0,0 @@
JetBrainsRuntime

View File

@@ -1,20 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="IssueNavigationConfiguration">
<option name="links">
<list>
<IssueNavigationLink>
<option name="issueRegexp" value="(?:^|\s|\p{Punct})([A-Z]+\-\d+)(?=$|\s|\p{Punct})" />
<option name="linkRegexp" value="https://youtrack.jetbrains.com/issue/$1" />
</IssueNavigationLink>
<IssueNavigationLink>
<option name="issueRegexp" value="(?:^|\s|\p{Punct})(?:JDK-)?(\d{7})(?=$|\s|\p{Punct})" />
<option name="linkRegexp" value="https://bugs.openjdk.java.net/browse/JDK-$1" />
</IssueNavigationLink>
</list>
</option>
</component>
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$/../.." vcs="Git" />
</component>
</project>

View File

@@ -1,13 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$/src/jetbrains.api">
<sourceFolder url="file://$MODULE_DIR$/src/jetbrains.api/src" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/jetbrains.api/templates" isTestSource="false" />
</content>
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="inheritedJdk" />
</component>
</module>

View File

@@ -1,12 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/jdk.iml" filepath="$PROJECT_DIR$/.idea/jdk.iml" />
###MODULE_IMLS###
<module fileurl="file://$PROJECT_DIR$/.idea/jetbrains.api.iml" filepath="$PROJECT_DIR$/.idea/jetbrains.api.iml" />
<module fileurl="file://$PROJECT_DIR$/.idea/test.iml" filepath="$PROJECT_DIR$/.idea/test.iml" />
</modules>
</component>
</project>

View File

@@ -1,20 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="IssueNavigationConfiguration">
<option name="links">
<list>
<IssueNavigationLink>
<option name="issueRegexp" value="(?:^|\s|\p{Punct})([A-Z]+\-\d+)(?=$|\s|\p{Punct})" />
<option name="linkRegexp" value="https://youtrack.jetbrains.com/issue/$1" />
</IssueNavigationLink>
<IssueNavigationLink>
<option name="issueRegexp" value="(?:^|\s|\p{Punct})(?:JDK-)?(\d{7})(?=$|\s|\p{Punct})" />
<option name="linkRegexp" value="https://bugs.openjdk.java.net/browse/JDK-$1" />
</IssueNavigationLink>
</list>
</option>
</component>
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$" vcs="Git" />
</component>
</project>

View File

@@ -1,135 +0,0 @@
apply plugin: 'java'
import org.gradle.internal.os.OperatingSystem
repositories {
mavenCentral()
}
def test_jvm = {
if (project.hasProperty('jbsdkhome')) {
file(jbsdkhome + (OperatingSystem.current().isWindows()?"/bin/java.exe" : "/bin/java")).absolutePath
} else {
if (OperatingSystem.current().isMacOsX()) {
file('../../../build/macosx-x86_64-normal-server-release/images/jdk-bundle/jdk-11.0.4.jdk/Contents/Home/bin/java').absolutePath
} else if (OperatingSystem.current().isLinux()) {
file('../../../build/linux-x86_64-normal-server-release/images/jdk/bin/java').absolutePath
} else {
file('../../../build/windows-x86_64-normal-server-release/images/jdk/bin/java.exe').absolutePath
}
}
}
dependencies {
testCompile('junit:junit:4.12'){
exclude group: 'org.hamcrest'
}
testCompile 'org.hamcrest:hamcrest-library:1.3'
testCompile 'net.java.dev.jna:jna:4.4.0'
testCompile 'com.twelvemonkeys.imageio:imageio-tiff:3.3.2'
testCompile 'org.apache.commons:commons-lang3:3.0'
}
def jdk_modules = ["java.base", "java.logging", "java.prefs",
"java.se.ee", "java.sql", "java.datatransfer",
"java.management", "java.rmi", "java.security.jgss",
"java.sql.rowset", "java.desktop", "java.management.rmi",
"java.scripting", "java.security.sasl", "java.transaction",
"java.instrument", "java.naming", "java.se",
"java.smartcardio", "java.xml.crypto"]
def jdk_class_dirs = []
jdk_modules.collect(jdk_class_dirs) {
new File("../../../src/" + it + "/share/classes")
}
if (OperatingSystem.current().isMacOsX())
jdk_modules.collect(jdk_class_dirs) {
"../../../src/" + it + "/macosx/classes"
}
else if (OperatingSystem.current().isLinux()) {
jdk_modules.collect(jdk_class_dirs) {
"../../../src/" + it + "/solaris/classes"
}
jdk_modules.collect(jdk_class_dirs) {
"../../../src/" + it + "/unix/classes"
}
} else
jdk_modules.collect(jdk_class_dirs) {
"../../../src/" + it + "/windows/classes"
}
sourceSets.main.java.srcDirs = jdk_class_dirs
sourceSets {
test {
java {
srcDir "../../../test/jdk/jbu"
}
}
}
test.dependsOn.clear()
test.dependsOn tasks.compileTestJava
test {
systemProperty "jb.java2d.metal", "true"
systemProperty "testdata", file('../../../test/jdk/jbu/testdata').absolutePath
// Generate golden images for DroidFontTest and MixedTextTest
// systemProperty "gentestdata", ""
// Enable Java2D logging (https://confluence.jetbrains.com/display/JRE/Java2D+Rendering+Logging)
// systemProperty "sun.java2d.trace", "log"
// systemProperty "sun.java2d.trace", "log,pimpl"
outputs.upToDateWhen { false }
executable = test_jvm()
// Enable async/dtrace profiler
jvmArgs "-XX:+PreserveFramePointer"
// Enable native J2D logging (only in debug build)
// Can be turned on for J2D by adding "#define DEBUG 1" into jdk/src/share/native/sun/java2d/Trace.h
// environment 'J2D_TRACE_LEVEL', '4'
}
def buildDir = project.buildscript.sourceFile.parentFile.parentFile.parentFile.parentFile
def make_cmd = "make"
if (OperatingSystem.current().isWindows()) {
def cyg_make_cmd = new File("c:/cygwin64/bin/make.exe")
if (cyg_make_cmd.exists()) make_cmd = cyg_make_cmd.absolutePath
}
def test_run = false
task make_images {
doLast {
if (!test_run) {
def pb = new ProcessBuilder().command(make_cmd.toString(), "-C", buildDir.absolutePath, "images")
def proc = pb.redirectErrorStream(true).start()
proc.inputStream.eachLine { println it }
assert proc.waitFor() == 0
}
}
}
task make_clean {
doLast {
def pb = new ProcessBuilder().command(make_cmd.toString(), "-C", buildDir.absolutePath, "clean")
def proc = pb.redirectErrorStream(true).start()
proc.inputStream.eachLine { println it }
assert proc.waitFor() == 0
}
}
task run_test {
doLast {
test_run = true
}
}
tasks.cleanTest.dependsOn tasks.run_test
classes.dependsOn.clear()
classes.dependsOn tasks.make_images
tasks.cleanClasses.dependsOn tasks.make_clean

View File

@@ -1,54 +0,0 @@
java.base,
java.compiler,
java.datatransfer,
java.desktop,
java.instrument,
java.logging,
java.management,
java.management.rmi,
java.naming,
java.net.http,
java.prefs,
java.rmi,
java.scripting,
java.se,
java.security.jgss,
java.security.sasl,
java.smartcardio,
java.sql,
java.sql.rowset,
java.transaction.xa,
java.xml,
java.xml.crypto,
jdk.accessibility,
jdk.attach,
jdk.charsets,
jdk.compiler,
jdk.crypto.cryptoki,
jdk.crypto.ec,
jdk.dynalink,
jdk.httpserver,
jdk.internal.ed,
jdk.internal.le,
jdk.internal.vm.ci,
jdk.javadoc,
jdk.jdi,
jdk.jdwp.agent,
jdk.jfr,
jdk.jsobject,
jdk.localedata,
jdk.management,
jdk.management.agent,
jdk.management.jfr,
jdk.naming.dns,
jdk.naming.rmi,
jdk.net,
jdk.sctp,
jdk.security.auth,
jdk.security.jgss,
jdk.unsupported,
jdk.unsupported.desktop,
jdk.xml.dom,
jdk.zipfs,
jdk.hotspot.agent,
jdk.jcmd

View File

@@ -1,18 +0,0 @@
#!/bin//bash
set -euo pipefail
# $1 - Boot JDK
# $2 - JBR part of API version
cd "`dirname "$0"`/../../../../.."
PWD="`pwd`"
CONF="$PWD/build/jbr-api.conf"
./configure --with-debug-level=release --with-boot-jdk=$1 || exit $?
make jbr-api CONF=release MAKEOVERRIDES= "JBR_API_CONF_FILE=$CONF" JBR_API_JBR_VERSION=$2 || exit $?
. $CONF || exit $?
echo "##teamcity[buildNumber '$VERSION']"
cp "$JAR" ./jbr-api-${VERSION}.jar || exit $?
cp "$SOURCES_JAR" ./jbr-api-${VERSION}-sources.jar || exit $?
echo "##teamcity[publishArtifacts '$PWD/jbr-api-${VERSION}.jar']"
echo "##teamcity[publishArtifacts '$PWD/jbr-api-${VERSION}-sources.jar']"

View File

@@ -1,176 +0,0 @@
#!/bin/bash
set -euo pipefail
set -x
function check_bundle_type_maketest() {
# check whether last char is 't', if so remove it
if [ "${bundle_type: -1}" == "t" ]; then
bundle_type="${bundle_type%?}"
do_maketest=1
else
do_maketest=0
fi
}
function getVersionProp() {
grep "^${1}" make/conf/version-numbers.conf | cut -d'=' -f2
}
while getopts ":i?" o; do
case "${o}" in
i) INC_BUILD=1 ;;
esac
done
shift $((OPTIND-1))
if [[ $# -lt 2 ]]; then
echo "Required at least two arguments: build_number bundle_type"
exit 1
fi
build_number=$1
bundle_type=$2
# shellcheck disable=SC2034
architecture=${3:-x64} # aarch64 or x64
check_bundle_type_maketest
tag_prefix="jdk-"
OPENJDK_TAG=$(git log --simplify-by-decoration --decorate=short --pretty=short | grep "$tag_prefix" | cut -d "(" -f2 | cut -d ")" -f1 | awk '{print $2}' | tr -d ',' | sort -t "-" -k 2 -g | tail -n 1)
VERSION_FEATURE=$(getVersionProp "DEFAULT_VERSION_FEATURE")
VERSION_INTERIM=$(getVersionProp "DEFAULT_VERSION_INTERIM")
VERSION_UPDATE=$(getVersionProp "DEFAULT_VERSION_UPDATE")
VERSION_PATCH=$(getVersionProp "DEFAULT_VERSION_PATCH")
[[ $VERSION_UPDATE = 0 ]] && JBSDK_VERSION="$VERSION_FEATURE" || JBSDK_VERSION="${VERSION_FEATURE}.${VERSION_INTERIM}.${VERSION_UPDATE}"
[[ $VERSION_PATCH = 0 ]] || JBSDK_VERSION="${VERSION_FEATURE}.${VERSION_INTERIM}.${VERSION_UPDATE}.${VERSION_PATCH}"
echo "##teamcity[setParameter name='env.JBSDK_VERSION' value='${JBSDK_VERSION}']"
JDK_BUILD_NUMBER=${JDK_BUILD_NUMBER:=$(echo $OPENJDK_TAG | awk -F "-|[+]" '{print $3}')}
[ -z $JDK_BUILD_NUMBER ] && JDK_BUILD_NUMBER=1
echo "##teamcity[setParameter name='env.JDK_UPDATE_NUMBER' value='${JDK_BUILD_NUMBER}']"
VENDOR_NAME="JetBrains s.r.o."
VENDOR_VERSION_STRING="JBR-${JBSDK_VERSION}+${JDK_BUILD_NUMBER}-${build_number}"
[ -z "$bundle_type" ] || VENDOR_VERSION_STRING="${VENDOR_VERSION_STRING}-${bundle_type}"
do_reset_changes=0
do_reset_dcevm=0
HEAD_REVISION=0
STATIC_CONF_ARGS=""
common_conf_props_file="jb/project/tools/common/static_conf_args.txt"
if [[ -f "$common_conf_props_file" ]]; then
STATIC_CONF_ARGS=$(<$common_conf_props_file)
fi
OS_NAME=$(uname -s)
# Enable reproducible builds
TZ=UTC
export TZ
SOURCE_DATE_EPOCH="$(git log -1 --pretty=%ct)"
export SOURCE_DATE_EPOCH
COPYRIGHT_YEAR=""
BUILD_TIME=""
TOUCH_TIME=""
REPRODUCIBLE_TAR_OPTS=""
case "$OS_NAME" in
Linux)
COPYRIGHT_YEAR="$(date --utc --date=@$SOURCE_DATE_EPOCH +%Y)"
BUILD_TIME="$(date --utc --date=@$SOURCE_DATE_EPOCH +%F)"
REPRODUCIBLE_TAR_OPTS="--mtime=@$SOURCE_DATE_EPOCH --owner=0 --group=0 --numeric-owner --pax-option=exthdr.name=%d/PaxHeaders/%f,delete=atime,delete=ctime"
;;
CYGWIN*)
COPYRIGHT_YEAR="$(date --utc --date=@$SOURCE_DATE_EPOCH +%Y)"
BUILD_TIME="$(date --utc --date=@$SOURCE_DATE_EPOCH +%F)"
REPRODUCIBLE_TAR_OPTS="--mtime=@$SOURCE_DATE_EPOCH --owner=0 --group=0 --numeric-owner --pax-option=exthdr.name=%d/PaxHeaders/%f,delete=atime,delete=ctime"
;;
Darwin)
COPYRIGHT_YEAR="$(date -u -r $SOURCE_DATE_EPOCH +%Y)"
BUILD_TIME="$(date -u -r $SOURCE_DATE_EPOCH +%F)"
TOUCH_TIME="$(date -u -r $SOURCE_DATE_EPOCH +%Y%m%d%H%M.%S)"
REPRODUCIBLE_TAR_OPTS="--uid 0 --gid 0 --numeric-owner"
;;
esac
WITH_ZIPPED_NATIVE_DEBUG_SYMBOLS="--with-native-debug-symbols=zipped"
REPRODUCIBLE_BUILD_OPTS="--enable-reproducible-build
--with-source-date=$SOURCE_DATE_EPOCH
--with-hotspot-build-time=$BUILD_TIME
--with-copyright-year=$COPYRIGHT_YEAR
--disable-absolute-paths-in-output
--with-build-user=builduser"
function zip_native_debug_symbols() {
image_bundle_path=$(echo $1 | cut -d"/" -f-4)
jdk_name=$(echo $1 | cut -d"/" -f5)
jbr_diz_name=$2
[ -d "dizfiles" ] && rm -rf dizfiles
mkdir dizfiles
rsync_target="../../../../dizfiles"
[ -z "$jdk_name" ] && rsync_target=$rsync_target"/"$jbr_diz_name
(cd $image_bundle_path && find . -name '*.diz' -exec rsync -R {} $rsync_target \;)
[ ! -z "$jdk_name" ] && mv dizfiles/$jdk_name dizfiles/$jbr_diz_name
(cd dizfiles && find $jbr_diz_name -print0 | COPYFILE_DISABLE=1 \
tar --no-recursion --null -T - -czf ../"$jbr_diz_name".tar.gz) || do_exit $?
}
function do_exit() {
exit_code=$1
[ $do_reset_changes -eq 1 ] && git checkout HEAD jb/project/tools/common/modules.list src/java.desktop/share/classes/module-info.java
if [ $do_reset_dcevm -eq 1 ]; then
[ ! -z $HEAD_REVISION ] && git reset --hard $HEAD_REVISION
fi
exit "$exit_code"
}
function update_jsdk_mods() {
__jsdk=$1
__jcef_mods=$2
__orig_jsdk_mods=$3
__updated_jsdk_mods=$4
# re-create java.desktop.jmod with updated module-info.class
tmp=.java.desktop.$$.tmp
mkdir "$tmp" || exit $?
"$__jsdk"/bin/jmod extract --dir "$tmp" "$__orig_jsdk_mods"/java.desktop.jmod || exit $?
"$__jsdk"/bin/javac \
--patch-module java.desktop="$__orig_jsdk_mods"/java.desktop.jmod \
--module-path "$__jcef_mods" -d "$tmp"/classes src/java.desktop/share/classes/module-info.java || exit $?
"$__jsdk"/bin/jmod \
create --class-path "$tmp"/classes --config "$tmp"/conf --header-files "$tmp"/include --legal-notice "$tmp"/legal --libs "$tmp"/lib \
java.desktop.jmod || exit $?
mv java.desktop.jmod "$__updated_jsdk_mods" || exit $?
rm -rf "$tmp"
# re-create java.base.jmod with updated hashes
tmp=.java.base.$$.tmp
mkdir "$tmp" || exit $?
hash_modules=$("$__jsdk"/bin/jmod describe "$__orig_jsdk_mods"/java.base.jmod | grep hashes | awk '{print $2}' | tr '\n' '|' | sed s/\|$//) || exit $?
"$__jsdk"/bin/jmod extract --dir "$tmp" "$__orig_jsdk_mods"/java.base.jmod || exit $?
rm "$__updated_jsdk_mods"/java.base.jmod || exit $? # temp exclude from path
"$__jsdk"/bin/jmod \
create --module-path "$__updated_jsdk_mods" --hash-modules "$hash_modules" \
--class-path "$tmp"/classes --cmds "$tmp"/bin --config "$tmp"/conf --header-files "$tmp"/include --legal-notice "$tmp"/legal --libs "$tmp"/lib \
java.base.jmod || exit $?
mv java.base.jmod "$__updated_jsdk_mods" || exit $?
rm -rf "$tmp"
}
function get_mods_list() {
__mods=$1
echo $(ls $__mods) | sed s/\.jmod/,/g | sed s/,$//g | sed s/' '//g
}
function copy_jmods() {
__mods_list=$1
__jmods_from=$2
__jmods_to=$3
mkdir -p $__jmods_to
echo "${__mods_list}," | while read -d, mod; do cp $__jmods_from/$mod.jmod $__jmods_to/; done
}

View File

@@ -1 +0,0 @@
--with-vendor-vm-bug-url=https://youtrack.jetbrains.com/issues/JBR

View File

@@ -1,166 +0,0 @@
#!/bin/bash
set -euo pipefail
set -x
# The following parameters must be specified:
# build_number - specifies the number of JetBrainsRuntime build
# bundle_type - specifies bundle to be built;possible values:
# <empty> or nomod - the release bundles without any additional modules (jcef)
# jcef - the release bundles with jcef
# fd - the fastdebug bundles which also include the jcef module
#
# This script makes test-image along with JDK images when bundle_type is set to "jcef".
# If the character 't' is added at the end of bundle_type then it also makes test-image along with JDK images.
#
# Environment variables:
# JDK_BUILD_NUMBER - specifies update release of OpenJDK build or the value of --with-version-build argument
# to configure
# By default JDK_BUILD_NUMBER is set zero
# JCEF_PATH - specifies the path to the directory with JCEF binaries.
# By default JCEF binaries should be located in ./jcef_linux_aarch64
source jb/project/tools/common/scripts/common.sh
JCEF_PATH=${JCEF_PATH:=./jcef_linux_aarch64}
function do_configure {
sh configure \
$WITH_DEBUG_LEVEL \
--with-vendor-name="$VENDOR_NAME" \
--with-vendor-version-string="$VENDOR_VERSION_STRING" \
--with-jvm-features=shenandoahgc \
--with-version-pre= \
--with-version-build="$JDK_BUILD_NUMBER" \
--with-version-opt=b"$build_number" \
--with-boot-jdk="$BOOT_JDK" \
--enable-cds=yes \
$STATIC_CONF_ARGS \
$REPRODUCIBLE_BUILD_OPTS \
$WITH_ZIPPED_NATIVE_DEBUG_SYMBOLS \
|| do_exit $?
}
function is_musl {
libc=$(ldd /bin/ls | grep 'musl' | head -1 | cut -d ' ' -f1)
if [ -z $libc ]; then
# This is not Musl, return 1 == false
return 1
fi
return 0
}
function create_image_bundle {
__bundle_name=$1
__arch_name=$2
__modules_path=$3
__modules=$4
libc_type_suffix=''
fastdebug_infix=''
if is_musl; then libc_type_suffix='musl-' ; fi
[ "$bundle_type" == "fd" ] && [ "$__arch_name" == "$JBRSDK_BUNDLE" ] && __bundle_name=$__arch_name && fastdebug_infix="fastdebug-"
JBR=${__bundle_name}-${JBSDK_VERSION}-linux-${libc_type_suffix}aarch64-${fastdebug_infix}b${build_number}
__root_dir=${__bundle_name}-${JBSDK_VERSION}-linux-${libc_type_suffix}aarch64-${fastdebug_infix:-}b${build_number}
echo Running jlink....
[ -d "$IMAGES_DIR"/"$__root_dir" ] && rm -rf "${IMAGES_DIR:?}"/"$__root_dir"
$JSDK/bin/jlink \
--module-path "$__modules_path" --no-man-pages --compress=2 \
--add-modules "$__modules" --output "$IMAGES_DIR"/"$__root_dir"
grep -v "^JAVA_VERSION" "$JSDK"/release | grep -v "^MODULES" >> "$IMAGES_DIR"/"$__root_dir"/release
if [ "$__arch_name" == "$JBRSDK_BUNDLE" ]; then
sed 's/JBR/JBRSDK/g' "$IMAGES_DIR"/"$__root_dir"/release > release
mv release "$IMAGES_DIR"/"$__root_dir"/release
cp $IMAGES_DIR/jdk/lib/src.zip "$IMAGES_DIR"/"$__root_dir"/lib
copy_jmods "$__modules" "$__modules_path" "$IMAGES_DIR"/"$__root_dir"/jmods
zip_native_debug_symbols $IMAGES_DIR/jdk "${JBR}_diz"
fi
# jmod does not preserve file permissions (JDK-8173610)
[ -f "$IMAGES_DIR"/"$__root_dir"/lib/jcef_helper ] && chmod a+x "$IMAGES_DIR"/"$__root_dir"/lib/jcef_helper
echo Creating "$JBR".tar.gz ...
(cd "$IMAGES_DIR" &&
find "$__root_dir" -print0 | LC_ALL=C sort -z | \
tar $REPRODUCIBLE_TAR_OPTS \
--no-recursion --null -T - -cf "$JBR".tar) || do_exit $?
mv "$IMAGES_DIR"/"$JBR".tar ./"$JBR".tar
[ -f "$JBR".tar.gz ] && rm "$JBR.tar.gz"
touch -c -d "@$SOURCE_DATE_EPOCH" "$JBR".tar
gzip "$JBR".tar || do_exit $?
rm -rf "${IMAGES_DIR:?}"/"$__root_dir"
}
WITH_DEBUG_LEVEL="--with-debug-level=release"
RELEASE_NAME=linux-aarch64-server-release
case "$bundle_type" in
"jcef")
do_reset_changes=1
do_maketest=1
;;
"nomod" | "")
bundle_type=""
;;
"fd")
do_reset_changes=1
WITH_DEBUG_LEVEL="--with-debug-level=fastdebug"
RELEASE_NAME=linux-aarch64-server-fastdebug
;;
esac
if [ -z "${INC_BUILD:-}" ]; then
do_configure || do_exit $?
make clean CONF=$RELEASE_NAME || do_exit $?
fi
make images CONF=$RELEASE_NAME || do_exit $?
IMAGES_DIR=build/$RELEASE_NAME/images
JSDK=$IMAGES_DIR/jdk
JSDK_MODS_DIR=$IMAGES_DIR/jmods
JBRSDK_BUNDLE=jbrsdk
echo Fixing permissions
chmod -R a+r $JSDK
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "fd" ]; then
git apply -p0 < jb/project/tools/patches/add_jcef_module_aarch64.patch || do_exit $?
update_jsdk_mods $JSDK $JCEF_PATH/jmods $JSDK/jmods $JSDK_MODS_DIR || do_exit $?
cp $JCEF_PATH/jmods/* $JSDK_MODS_DIR # $JSDK/jmods is not changed
jbr_name_postfix="_${bundle_type}"
cat $JCEF_PATH/jcef.version >> $JSDK/release
else
jbr_name_postfix=""
fi
# create runtime image bundle
modules=$(xargs < jb/project/tools/common/modules.list | sed s/" "//g) || do_exit $?
create_image_bundle "jbr${jbr_name_postfix}" "jbr" $JSDK_MODS_DIR "$modules" || do_exit $?
# create sdk image bundle
modules=$(cat $JSDK/release | grep MODULES | sed s/MODULES=//g | sed s/' '/','/g | sed s/\"//g | sed s/\\n//g) || do_exit $?
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "fd" ] || [ "$bundle_type" == "$JBRSDK_BUNDLE" ]; then
modules=${modules},$(get_mods_list "$JCEF_PATH"/jmods)
fi
create_image_bundle "$JBRSDK_BUNDLE${jbr_name_postfix}" $JBRSDK_BUNDLE $JSDK_MODS_DIR "$modules" || do_exit $?
if [ $do_maketest -eq 1 ]; then
JBRSDK_TEST=${JBRSDK_BUNDLE}-${JBSDK_VERSION}-linux-${libc_type_suffix}test-aarch64-b${build_number}
echo Creating "$JBRSDK_TEST" ...
[ $do_reset_changes -eq 1 ] && git checkout HEAD jb/project/tools/common/modules.list src/java.desktop/share/classes/module-info.java
make test-image jbr-api CONF=$RELEASE_NAME JBR_API_JBR_VERSION=TEST || do_exit $?
cp "build/${RELEASE_NAME}/jbr-api/jbr-api.jar" "${IMAGES_DIR}/test"
tar -pcf "$JBRSDK_TEST".tar -C $IMAGES_DIR --exclude='test/jdk/demos' test || do_exit $?
[ -f "$JBRSDK_TEST.tar.gz" ] && rm "$JBRSDK_TEST.tar.gz"
gzip "$JBRSDK_TEST".tar || do_exit $?
fi
do_exit 0

View File

@@ -1,165 +0,0 @@
#!/bin/bash
set -euo pipefail
set -x
# The following parameters must be specified:
# build_number - specifies the number of JetBrainsRuntime build
# bundle_type - specifies bundle to be built;possible values:
# <empty> or nomod - the release bundles without any additional modules (jcef)
# jcef - the release bundles with jcef
# fd - the fastdebug bundles which also include the jcef module
#
# This script makes test-image along with JDK images when bundle_type is set to "jcef".
# If the character 't' is added at the end of bundle_type then it also makes test-image along with JDK images.
#
# Environment variables:
# JDK_BUILD_NUMBER - specifies update release of OpenJDK build or the value of --with-version-build argument
# to configure
# By default JDK_BUILD_NUMBER is set zero
# JCEF_PATH - specifies the path to the directory with JCEF binaries.
# By default JCEF binaries should be located in ./jcef_linux_x64
source jb/project/tools/common/scripts/common.sh
JCEF_PATH=${JCEF_PATH:=./jcef_linux_x64}
function do_configure {
sh configure \
$WITH_DEBUG_LEVEL \
--with-vendor-name="$VENDOR_NAME" \
--with-vendor-version-string="$VENDOR_VERSION_STRING" \
--with-jvm-features=shenandoahgc \
--with-version-pre= \
--with-version-build="$JDK_BUILD_NUMBER" \
--with-version-opt=b"$build_number" \
--with-boot-jdk="$BOOT_JDK" \
--enable-cds=yes \
$STATIC_CONF_ARGS \
$REPRODUCIBLE_BUILD_OPTS \
$WITH_ZIPPED_NATIVE_DEBUG_SYMBOLS \
|| do_exit $?
}
function is_musl {
libc=$(ldd /bin/ls | grep 'musl' | head -1 | cut -d ' ' -f1)
if [ -z $libc ]; then
# This is not Musl, return 1 == false
return 1
fi
return 0
}
function create_image_bundle {
__bundle_name=$1
__arch_name=$2
__modules_path=$3
__modules=$4
libc_type_suffix=''
fastdebug_infix=''
if is_musl; then libc_type_suffix='musl-' ; fi
[ "$bundle_type" == "fd" ] && [ "$__arch_name" == "$JBRSDK_BUNDLE" ] && __bundle_name=$__arch_name && fastdebug_infix="fastdebug-"
JBR=${__bundle_name}-${JBSDK_VERSION}-linux-${libc_type_suffix}x64-${fastdebug_infix}b${build_number}
__root_dir=${__bundle_name}-${JBSDK_VERSION}-linux-${libc_type_suffix}x64-${fastdebug_infix:-}b${build_number}
echo Running jlink....
[ -d "$IMAGES_DIR"/"$__root_dir" ] && rm -rf "${IMAGES_DIR:?}"/"$__root_dir"
$JSDK/bin/jlink \
--module-path "$__modules_path" --no-man-pages --compress=2 \
--add-modules "$__modules" --output "$IMAGES_DIR"/"$__root_dir"
grep -v "^JAVA_VERSION" "$JSDK"/release | grep -v "^MODULES" >> "$IMAGES_DIR"/"$__root_dir"/release
if [ "$__arch_name" == "$JBRSDK_BUNDLE" ]; then
sed 's/JBR/JBRSDK/g' "$IMAGES_DIR"/"$__root_dir"/release > release
mv release "$IMAGES_DIR"/"$__root_dir"/release
cp $IMAGES_DIR/jdk/lib/src.zip "$IMAGES_DIR"/"$__root_dir"/lib
copy_jmods "$__modules" "$__modules_path" "$IMAGES_DIR"/"$__root_dir"/jmods
zip_native_debug_symbols $IMAGES_DIR/jdk "${JBR}_diz"
fi
# jmod does not preserve file permissions (JDK-8173610)
[ -f "$IMAGES_DIR"/"$__root_dir"/lib/jcef_helper ] && chmod a+x "$IMAGES_DIR"/"$__root_dir"/lib/jcef_helper
echo Creating "$JBR".tar.gz ...
(cd "$IMAGES_DIR" &&
find "$__root_dir" -print0 | LC_ALL=C sort -z | \
tar $REPRODUCIBLE_TAR_OPTS \
--no-recursion --null -T - -cf "$JBR".tar) || do_exit $?
mv "$IMAGES_DIR"/"$JBR".tar ./"$JBR".tar
[ -f "$JBR".tar.gz ] && rm "$JBR.tar.gz"
touch -c -d "@$SOURCE_DATE_EPOCH" "$JBR".tar
gzip "$JBR".tar || do_exit $?
rm -rf "${IMAGES_DIR:?}"/"$__root_dir"
}
WITH_DEBUG_LEVEL="--with-debug-level=release"
RELEASE_NAME=linux-x86_64-server-release
case "$bundle_type" in
"jcef")
do_reset_changes=1
do_maketest=1
;;
"nomod" | "")
bundle_type=""
;;
"fd")
do_reset_changes=1
WITH_DEBUG_LEVEL="--with-debug-level=fastdebug"
RELEASE_NAME=linux-x86_64-server-fastdebug
;;
esac
if [ -z "${INC_BUILD:-}" ]; then
do_configure || do_exit $?
make clean CONF=$RELEASE_NAME || do_exit $?
fi
make images CONF=$RELEASE_NAME || do_exit $?
IMAGES_DIR=build/$RELEASE_NAME/images
JSDK=$IMAGES_DIR/jdk
JSDK_MODS_DIR=$IMAGES_DIR/jmods
JBRSDK_BUNDLE=jbrsdk
echo Fixing permissions
chmod -R a+r $JSDK
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "fd" ]; then
git apply -p0 < jb/project/tools/patches/add_jcef_module.patch || do_exit $?
update_jsdk_mods $JSDK $JCEF_PATH/jmods $JSDK/jmods $JSDK_MODS_DIR || do_exit $?
cp $JCEF_PATH/jmods/* $JSDK_MODS_DIR # $JSDK/jmods is not changed
jbr_name_postfix="_${bundle_type}"
[ "$bundle_type" != "fd" ] && jbrsdk_name_postfix="_${bundle_type}"
cat $JCEF_PATH/jcef.version >> $JSDK/release
else
jbr_name_postfix=""
fi
# create runtime image bundle
modules=$(xargs < jb/project/tools/common/modules.list | sed s/" "//g) || do_exit $?
create_image_bundle "jbr${jbr_name_postfix}" "jbr" $JSDK_MODS_DIR "$modules" || do_exit $?
# create sdk image bundle
modules=$(cat $JSDK/release | grep MODULES | sed s/MODULES=//g | sed s/' '/','/g | sed s/\"//g | sed s/\\n//g) || do_exit $?
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "fd" ] || [ "$bundle_type" == "$JBRSDK_BUNDLE" ]; then
modules=${modules},$(get_mods_list "$JCEF_PATH"/jmods)
fi
create_image_bundle "$JBRSDK_BUNDLE${jbr_name_postfix}" $JBRSDK_BUNDLE $JSDK_MODS_DIR "$modules" || do_exit $?
if [ $do_maketest -eq 1 ]; then
JBRSDK_TEST=${JBRSDK_BUNDLE}-${JBSDK_VERSION}-linux-${libc_type_suffix}test-x64-b${build_number}
echo Creating "$JBRSDK_TEST" ...
[ $do_reset_changes -eq 1 ] && git checkout HEAD jb/project/tools/common/modules.list src/java.desktop/share/classes/module-info.java
make test-image jbr-api CONF=$RELEASE_NAME JBR_API_JBR_VERSION=TEST || do_exit $?
cp "build/${RELEASE_NAME}/jbr-api/jbr-api.jar" "${IMAGES_DIR}/test"
tar -pcf "$JBRSDK_TEST".tar -C $IMAGES_DIR --exclude='test/jdk/demos' test || do_exit $?
[ -f "$JBRSDK_TEST.tar.gz" ] && rm "$JBRSDK_TEST.tar.gz"
gzip "$JBRSDK_TEST".tar || do_exit $?
fi
do_exit 0

View File

@@ -1,144 +0,0 @@
#!/bin/bash
set -euo pipefail
set -x
# The following parameters must be specified:
# build_number - specifies the number of JetBrainsRuntime build
# bundle_type - specifies bundle to be built;possible values:
# <empty> or nomod - the release bundles without any additional modules (jcef)
# jcef - the release bundles with jcef
# fd - the fastdebug bundles which also include the jcef module
#
source jb/project/tools/common/scripts/common.sh
function do_configure {
linux32 bash configure \
$WITH_DEBUG_LEVEL \
--with-vendor-name="$VENDOR_NAME" \
--with-vendor-version-string="$VENDOR_VERSION_STRING" \
--with-jvm-features=shenandoahgc \
--with-version-pre= \
--with-version-build="$JDK_BUILD_NUMBER" \
--with-version-opt=b"$build_number" \
--with-boot-jdk="$BOOT_JDK" \
$STATIC_CONF_ARGS \
--enable-cds=yes \
$REPRODUCIBLE_BUILD_OPTS \
$WITH_ZIPPED_NATIVE_DEBUG_SYMBOLS \
|| do_exit $?
}
function is_musl {
libc=$(ldd /bin/ls | grep 'musl' | head -1 | cut -d ' ' -f1)
if [ -z $libc ]; then
# This is not Musl, return 1 == false
return 1
fi
return 0
}
function create_image_bundle {
__bundle_name=$1
__arch_name=$2
__modules_path=$3
__modules=$4
libc_type_suffix=''
fastdebug_infix=''
if is_musl; then libc_type_suffix='musl-' ; fi
[ "$bundle_type" == "fd" ] && [ "$__arch_name" == "$JBRSDK_BUNDLE" ] && __bundle_name=$__arch_name && fastdebug_infix="fastdebug-"
JBR=${__bundle_name}-${JBSDK_VERSION}-linux-${libc_type_suffix}x86-${fastdebug_infix}b${build_number}
__root_dir=${__bundle_name}-${JBSDK_VERSION}-linux-${libc_type_suffix}x86-${fastdebug_infix:-}b${build_number}
echo Running jlink....
[ -d "$IMAGES_DIR"/"$__root_dir" ] && rm -rf "${IMAGES_DIR:?}"/"$__root_dir"
$JSDK/bin/jlink \
--module-path "$__modules_path" --no-man-pages --compress=2 \
--add-modules "$__modules" --output "$IMAGES_DIR"/"$__root_dir"
grep -v "^JAVA_VERSION" "$JSDK"/release | grep -v "^MODULES" >> "$IMAGES_DIR"/"$__root_dir"/release
if [ "$__arch_name" == "$JBRSDK_BUNDLE" ]; then
sed 's/JBR/JBRSDK/g' "$IMAGES_DIR"/"$__root_dir"/release > release
mv release "$IMAGES_DIR"/"$__root_dir"/release
cp $IMAGES_DIR/jdk/lib/src.zip "$IMAGES_DIR"/"$__root_dir"/lib
copy_jmods "$__modules" "$__modules_path" "$IMAGES_DIR"/"$__root_dir"/jmods
zip_native_debug_symbols $IMAGES_DIR/jdk "${JBR}_diz"
fi
# jmod does not preserve file permissions (JDK-8173610)
[ -f "$IMAGES_DIR"/"$__root_dir"/lib/jcef_helper ] && chmod a+x "$IMAGES_DIR"/"$__root_dir"/lib/jcef_helper
echo Creating "$JBR".tar.gz ...
(cd "$IMAGES_DIR" &&
find "$__root_dir" -print0 | LC_ALL=C sort -z | \
tar $REPRODUCIBLE_TAR_OPTS \
--no-recursion --null -T - -cf "$JBR".tar) || do_exit $?
mv "$IMAGES_DIR"/"$JBR".tar ./"$JBR".tar
[ -f "$JBR".tar.gz ] && rm "$JBR.tar.gz"
touch -c -d "@$SOURCE_DATE_EPOCH" "$JBR".tar
gzip "$JBR".tar || do_exit $?
rm -rf "${IMAGES_DIR:?}"/"$__root_dir"
}
WITH_DEBUG_LEVEL="--with-debug-level=release"
RELEASE_NAME=linux-x86-server-release
case "$bundle_type" in
"jcef")
echo "not implemented" && do_exit 1
;;
"nomod" | "")
bundle_type=""
;;
"fd")
do_reset_changes=1
WITH_DEBUG_LEVEL="--with-debug-level=fastdebug"
RELEASE_NAME=linux-x86-server-fastdebug
;;
esac
if [ -z "${INC_BUILD:-}" ]; then
do_configure || do_exit $?
make clean CONF=$RELEASE_NAME || do_exit $?
fi
make images CONF=$RELEASE_NAME || do_exit $?
IMAGES_DIR=build/$RELEASE_NAME/images
JSDK=$IMAGES_DIR/jdk
JSDK_MODS_DIR=$IMAGES_DIR/jmods
JBRSDK_BUNDLE=jbrsdk
echo Fixing permissions
chmod -R a+r $JSDK
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "fd" ]; then
jbr_name_postfix="_${bundle_type}"
else
jbr_name_postfix=""
fi
# create runtime image bundle
modules=$(grep -v "jdk.internal.vm" jb/project/tools/common/modules.list | xargs | sed s/" "//g) || do_exit $?
create_image_bundle "jbr${jbr_name_postfix}" "jbr" $JSDK_MODS_DIR "$modules" || do_exit $?
# create sdk image bundle
modules=$(cat $JSDK/release | grep MODULES | sed s/MODULES=//g | sed s/' '/','/g | sed s/\"//g | sed s/\\n//g) || do_exit $?
create_image_bundle "$JBRSDK_BUNDLE${jbr_name_postfix}" $JBRSDK_BUNDLE $JSDK_MODS_DIR "$modules" || do_exit $?
if [ $do_maketest -eq 1 ]; then
JBRSDK_TEST=${JBRSDK_BUNDLE}-${JBSDK_VERSION}-linux-${libc_type_suffix}test-x86-b${build_number}
echo Creating "$JBRSDK_TEST" ...
[ $do_reset_changes -eq 1 ] && git checkout HEAD jb/project/tools/common/modules.list src/java.desktop/share/classes/module-info.java
make test-image jbr-api CONF=$RELEASE_NAME JBR_API_JBR_VERSION=TEST || do_exit $?
cp "build/${RELEASE_NAME}/jbr-api/jbr-api.jar" "${IMAGES_DIR}/test"
tar -pcf "$JBRSDK_TEST".tar -C $IMAGES_DIR --exclude='test/jdk/demos' test || do_exit $?
[ -f "$JBRSDK_TEST.tar.gz" ] && rm "$JBRSDK_TEST.tar.gz"
gzip "$JBRSDK_TEST".tar || do_exit $?
fi
do_exit 0

View File

@@ -1,16 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.security.cs.allow-jit</key>
<true/>
<key>com.apple.security.cs.allow-unsigned-executable-memory</key>
<true/>
<key>com.apple.security.cs.allow-dyld-environment-variables</key>
<true/>
<key>com.apple.security.cs.disable-library-validation</key>
<true/>
<key>com.apple.security.cs.disable-executable-page-protection</key>
<true/>
</dict>
</plist>

View File

@@ -1,171 +0,0 @@
#!/bin/bash
set -euo pipefail
set -x
# The following parameters must be specified:
# build_number - specifies the number of JetBrainsRuntime build
# bundle_type - specifies bundle to be built;possible values:
# <empty> or nomod - the release bundles without any additional modules (jcef)
# jcef - the release bundles with jcef
# fd - the fastdebug bundles which also include the jcef module
#
# This script makes test-image along with JDK images when bundle_type is set to "jcef".
# If the character 't' is added at the end of bundle_type then it also makes test-image along with JDK images.
#
# Environment variables:
# JDK_BUILD_NUMBER - specifies update release of OpenJDK build or the value of --with-version-build argument
# to configure
# By default JDK_BUILD_NUMBER is set zero
# JCEF_PATH - specifies the path to the directory with JCEF binaries.
# By default JCEF binaries should be located in ./jcef_mac
source jb/project/tools/common/scripts/common.sh
JCEF_PATH=${JCEF_PATH:=./jcef_mac}
BOOT_JDK=${BOOT_JDK:=$(/usr/libexec/java_home -v 17)}
function do_configure {
if [[ "${architecture}" == *aarch64* ]]; then
ENABLE_CDS="--enable-cds=no"
else
ENABLE_CDS="--enable-cds=yes"
fi
sh configure \
$WITH_DEBUG_LEVEL \
--with-vendor-name="$VENDOR_NAME" \
--with-vendor-version-string="$VENDOR_VERSION_STRING" \
--with-macosx-bundle-name-base=${VENDOR_VERSION_STRING} \
--with-macosx-bundle-id-base="com.jetbrains.jbr" \
--with-jvm-features=shenandoahgc \
--with-version-pre= \
--with-version-build="$JDK_BUILD_NUMBER" \
--with-version-opt=b"$build_number" \
--with-boot-jdk="$BOOT_JDK" \
--enable-cds=yes \
$STATIC_CONF_ARGS \
$REPRODUCIBLE_BUILD_OPTS \
$WITH_ZIPPED_NATIVE_DEBUG_SYMBOLS \
|| do_exit $?
}
function create_image_bundle {
__bundle_name=$1
__arch_name=$2
__modules_path=$3
__modules=$4
fastdebug_infix=''
tmp=.bundle.$$.tmp
mkdir "$tmp" || do_exit $?
[ "$bundle_type" == "fd" ] && [ "$__arch_name" == "$JBRSDK_BUNDLE" ] && __bundle_name=$__arch_name && fastdebug_infix="fastdebug-"
JBR=${__bundle_name}-${JBSDK_VERSION}-osx-${architecture}-${fastdebug_infix:-}b${build_number}
__root_dir=${__bundle_name}-${JBSDK_VERSION}-osx-${architecture}-${fastdebug_infix:-}b${build_number}
JRE_CONTENTS=$tmp/$__root_dir/Contents
mkdir -p "$JRE_CONTENTS" || do_exit $?
echo Running jlink...
"$JSDK"/bin/jlink \
--module-path "$__modules_path" --no-man-pages --compress=2 \
--add-modules "$__modules" --output "$JRE_CONTENTS/Home" || do_exit $?
grep -v "^JAVA_VERSION" "$JSDK"/release | grep -v "^MODULES" >> "$JRE_CONTENTS/Home/release"
if [ "$__arch_name" == "$JBRSDK_BUNDLE" ]; then
sed 's/JBR/JBRSDK/g' $JRE_CONTENTS/Home/release > release
mv release $JRE_CONTENTS/Home/release
cp $IMAGES_DIR/jdk-bundle/jdk-$JBSDK_VERSION.jdk/Contents/Home/lib/src.zip $JRE_CONTENTS/Home/lib
copy_jmods "$__modules" "$__modules_path" "$JRE_CONTENTS"/Home/jmods
zip_native_debug_symbols $IMAGES_DIR/jdk-bundle/jdk-$JBSDK_VERSION.jdk "${JBR}_diz"
fi
if [ "$bundle_type" == "jcef" ]; then
cat $JCEF_PATH/jcef.version >> "$JRE_CONTENTS/Home/release"
fi
cp -R "$JSDK"/../MacOS "$JRE_CONTENTS"
cp "$JSDK"/../Info.plist "$JRE_CONTENTS"
[ -n "$bundle_type" ] && (cp -a $JCEF_PATH/Frameworks "$JRE_CONTENTS" || do_exit $?)
echo Creating "$JBR".tar.gz ...
# Normalize timestamp
find "$tmp"/"$__root_dir" -print0 | xargs -0 touch -c -h -t "$TOUCH_TIME"
(cd "$tmp" &&
find "$__root_dir" -print0 | LC_ALL=C sort -z | \
COPYFILE_DISABLE=1 tar $REPRODUCIBLE_TAR_OPTS --no-recursion --null -T - \
-czf "$JBR".tar.gz --exclude='*.dSYM' --exclude='man') || do_exit $?
mv "$tmp"/"$JBR".tar.gz "$JBR".tar.gz
rm -rf "$tmp"
}
WITH_DEBUG_LEVEL="--with-debug-level=release"
CONF_ARCHITECTURE=x86_64
if [[ "${architecture}" == *aarch64* ]]; then
CONF_ARCHITECTURE=aarch64
fi
RELEASE_NAME=macosx-${CONF_ARCHITECTURE}-server-release
case "$bundle_type" in
"jcef")
do_reset_changes=1
do_maketest=1
;;
"nomod" | "")
bundle_type=""
;;
"fd")
do_reset_changes=1
WITH_DEBUG_LEVEL="--with-debug-level=fastdebug"
RELEASE_NAME=macosx-${CONF_ARCHITECTURE}-server-fastdebug
JBSDK=macosx-${architecture}-server-release
;;
esac
if [ -z "${INC_BUILD:-}" ]; then
do_configure || do_exit $?
make clean CONF=$RELEASE_NAME || do_exit $?
fi
make images CONF=$RELEASE_NAME || do_exit $?
IMAGES_DIR=build/$RELEASE_NAME/images
JSDK=$IMAGES_DIR/jdk-bundle/jdk-$JBSDK_VERSION.jdk/Contents/Home
JSDK_MODS_DIR=$IMAGES_DIR/jmods
JBRSDK_BUNDLE=jbrsdk
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "fd" ]; then
git apply -p0 < jb/project/tools/patches/add_jcef_module.patch || do_exit $?
update_jsdk_mods "$JSDK" "$JCEF_PATH"/jmods "$JSDK"/jmods "$JSDK_MODS_DIR" || do_exit $?
cp $JCEF_PATH/jmods/* $JSDK_MODS_DIR # $JSDK/jmods is not changed
jbr_name_postfix="_${bundle_type}"
else
jbr_name_postfix=""
fi
# create runtime image bundle
modules=$(xargs < jb/project/tools/common/modules.list | sed s/" "//g) || do_exit $?
create_image_bundle "jbr${jbr_name_postfix}" "jbr" $JSDK_MODS_DIR "$modules" || do_exit $?
# create sdk image bundle
modules=$(cat "$JSDK"/release | grep MODULES | sed s/MODULES=//g | sed s/' '/','/g | sed s/\"//g | sed s/\\n//g) || do_exit $?
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "fd" ] || [ "$bundle_type" == "$JBRSDK_BUNDLE" ]; then
modules=${modules},$(get_mods_list "$JCEF_PATH"/jmods)
fi
create_image_bundle "$JBRSDK_BUNDLE${jbr_name_postfix}" "$JBRSDK_BUNDLE" "$JSDK_MODS_DIR" "$modules" || do_exit $?
if [ $do_maketest -eq 1 ]; then
JBRSDK_TEST=${JBRSDK_BUNDLE}-${JBSDK_VERSION}-osx-test-${architecture}-b${build_number}
echo Creating "$JBRSDK_TEST" ...
[ $do_reset_changes -eq 1 ] && git checkout HEAD jb/project/tools/common/modules.list src/java.desktop/share/classes/module-info.java
make test-image jbr-api CONF=$RELEASE_NAME JBR_API_JBR_VERSION=TEST || do_exit $?
cp "build/${RELEASE_NAME}/jbr-api/jbr-api.jar" "${IMAGES_DIR}/test"
[ -f "$JBRSDK_TEST.tar.gz" ] && rm "$JBRSDK_TEST.tar.gz"
COPYFILE_DISABLE=1 tar -pczf "$JBRSDK_TEST".tar.gz -C $IMAGES_DIR --exclude='test/jdk/demos' test || do_exit $?
fi
do_exit 0

View File

@@ -1,121 +0,0 @@
#!/bin/bash
set -euo pipefail
set -x
APP_DIRECTORY=$1
APPL_USER=$2
APPL_PASSWORD=$3
APP_NAME=$4
BUNDLE_ID=$5
FAKE_ROOT="${6:-fake-root}"
if [[ -z "$APP_DIRECTORY" ]] || [[ -z "$APPL_USER" ]] || [[ -z "$APPL_PASSWORD" ]]; then
echo "Usage: $0 AppDirectory Username Password"
exit 1
fi
if [[ ! -d "$APP_DIRECTORY" ]]; then
echo "AppDirectory '$APP_DIRECTORY' does not exist or not a directory"
exit 1
fi
function log() {
echo "$(date '+[%H:%M:%S]') $*"
}
function publish-log() {
id=$1
file=$2
curl -T "$file" "$ARTIFACTORY_URL/$id" || true
}
function altool-upload() {
# Since altool uses same file for upload token we have to trick it into using different folders for token file location
# Also it copies zip into TMPDIR so we override it too, to simplify cleanup
OLD_HOME="$HOME"
export HOME="$FAKE_ROOT/home"
export TMPDIR="$FAKE_ROOT/tmp"
mkdir -p "$HOME"
mkdir -p "$TMPDIR"
export _JAVA_OPTIONS="-Duser.home=$HOME -Djava.io.tmpdir=$TMPDIR"
# Reduce amount of downloads, cache transporter libraries
shared_itmstransporter="$OLD_HOME/shared-itmstransporter"
if [[ -f "$shared_itmstransporter" ]]; then
cp -r "$shared_itmstransporter" "$HOME/.itmstransporter"
fi
# For some reason altool prints everything to stderr, not stdout
set +e
xcrun altool --notarize-app \
--username "$APPL_USER" --password "$APPL_PASSWORD" \
--primary-bundle-id "$BUNDLE_ID" \
--asc-provider JetBrainssro --file "$1" 2>&1 | tee "altool.init.out"
unset TMPDIR
export HOME="$OLD_HOME"
set -e
}
#immediately exit script with an error if a command fails
set -euo pipefail
#file="$APP_NAME.zip"
#log "Zipping $file..."
#rm -rf "$file"
#ditto -c -k --sequesterRsrc --keepParent "$APP_DIRECTORY" "$file"
log "Notarizing $APP_NAME..."
rm -rf "altool.init.out" "altool.check.out"
altool-upload "$APP_NAME"
notarization_info="$(grep -e "RequestUUID" "altool.init.out" | grep -oE '([0-9a-f-]{36})')"
if [ -z "$notarization_info" ]; then
log "Faile to read RequestUUID from altool.init.out"
exit 10
fi
PATH="$PATH:/usr/local/bin/"
log "Notarization request sent, awaiting response"
spent=0
while true; do
# For some reason altool prints everything to stderr, not stdout
xcrun altool --username "$APPL_USER" --notarization-info "$notarization_info" --password "$APPL_PASSWORD" >"altool.check.out" 2>&1 || true
status="$(grep -oe 'Status: .*' "altool.check.out" | cut -c 9- || true)"
log "Current status: $status"
if [ "$status" = "invalid" ]; then
log "Notarization failed"
ec=1
elif [ "$status" = "success" ]; then
log "Notarization succeeded"
ec=0
else
if [ "$status" != "in progress" ]; then
log "Unknown notarization status, waiting more, altool output:"
cat "altool.check.out"
fi
if [[ $spent -gt 60 ]]; then
log "Waiting time out (apx 60 minutes)"
ec=2
break
fi
sleep 60
((spent += 1))
continue
fi
developer_log="developer_log.json"
log "Fetching $developer_log"
# TODO: Replace cut with trim or something better
url="$(grep -oe 'LogFileURL: .*' "altool.check.out" | cut -c 13-)"
wget "$url" -O "$developer_log" && cat "$developer_log" || true
if [ $ec != 0 ]; then
log "Publishing $developer_log"
publish-log "$notarization_info" "$developer_log"
fi
break
done
cat "altool.check.out"
rm -rf "altool.init.out" "altool.check.out"
exit $ec

View File

@@ -1,117 +0,0 @@
#!/bin/bash
set -euo pipefail
set -x
APPLICATION_PATH=$1
APP_NAME=$2
BUNDLE_ID=$3
JB_DEVELOPER_CERT=$4
JB_INSTALLER_CERT=$5
if [[ -z "$APPLICATION_PATH" ]] || [[ -z "$JB_DEVELOPER_CERT" ]]; then
echo "Usage: $0 AppDirectory CertificateID"
exit 1
fi
if [[ ! -d "$APPLICATION_PATH" ]]; then
echo "AppDirectory '$APPLICATION_PATH' does not exist or not a directory"
exit 1
fi
function log() {
echo "$(date '+[%H:%M:%S]') $*"
}
#immediately exit script with an error if a command fails
set -euo pipefail
# Cleanup files left from previous sign attempt (if any)
find "$APPLICATION_PATH" -name '*.cstemp' -exec rm '{}' \;
log "Signing libraries and executables..."
# -perm +111 searches for executables
for f in \
"Contents/Home/lib" "Contents/MacOS" \
"Contents/Home/Frameworks" \
"Contents/Frameworks"; do
if [ -d "$APPLICATION_PATH/$f" ]; then
find "$APPLICATION_PATH/$f" \
-type f \( -name "*.jnilib" -o -name "*.dylib" -o -name "*.so" -o -name "*.tbd" -o -name "*.node" -o -perm +111 \) \
-exec codesign --timestamp \
-v -s "$JB_DEVELOPER_CERT" --options=runtime --force \
--entitlements entitlements.xml {} \;
fi
done
log "Signing libraries in jars in $PWD"
# todo: add set -euo pipefail; into the inner sh -c
# `-e` prevents `grep -q && printf` loginc
# with `-o pipefail` there's no input for 'while' loop
find "$APPLICATION_PATH" -name '*.jar' \
-exec sh -c "set -u; unzip -l \"\$0\" | grep -q -e '\.dylib\$' -e '\.jnilib\$' -e '\.so\$' -e '\.tbd\$' -e '^jattach\$' && printf \"\$0\0\" " {} \; |
while IFS= read -r -d $'\0' file; do
log "Processing libraries in $file"
rm -rf jarfolder jar.jar
mkdir jarfolder
filename="${file##*/}"
log "Filename: $filename"
cp "$file" jarfolder && (cd jarfolder && jar xf "$filename" && rm "$filename")
find jarfolder \
-type f \( -name "*.jnilib" -o -name "*.dylib" -o -name "*.so" -o -name "*.tbd" -o -name "jattach" \) \
-exec codesign --timestamp \
--force \
-v -s "$JB_DEVELOPER_CERT" --options=runtime \
--entitlements entitlements.xml {} \;
(cd jarfolder; zip -q -r -o -0 ../jar.jar .)
mv jar.jar "$file"
done
rm -rf jarfolder jar.jar
log "Signing other files..."
for f in \
"Contents/Home/bin"; do
if [ -d "$APPLICATION_PATH/$f" ]; then
find "$APPLICATION_PATH/$f" \
-type f \( -name "*.jnilib" -o -name "*.dylib" -o -name "*.so" -o -name "*.tbd" -o -perm +111 \) \
-exec codesign --timestamp \
-v -s "$JB_DEVELOPER_CERT" --options=runtime --force \
--entitlements entitlements.xml {} \;
fi
done
#log "Signing executable..."
#codesign --timestamp \
# -v -s "$JB_DEVELOPER_CERT" --options=runtime \
# --force \
# --entitlements entitlements.xml "$APPLICATION_PATH/Contents/MacOS/idea"
log "Signing whole app..."
codesign --timestamp \
-v -s "$JB_DEVELOPER_CERT" --options=runtime \
--force \
--entitlements entitlements.xml "$APPLICATION_PATH"
BUILD_NAME=$(echo $APPLICATION_PATH | awk -F"/" '{ print $2 }')
log "Creating $APP_NAME.pkg..."
rm -rf "$APP_NAME.pkg"
mkdir -p unsigned
pkgbuild --identifier $BUNDLE_ID --root $APPLICATION_PATH \
--install-location /Library/Java/JavaVirtualMachines/${BUILD_NAME} unsigned/${APP_NAME}.pkg
productsign --timestamp --sign "$JB_INSTALLER_CERT" unsigned/${APP_NAME}.pkg ${APP_NAME}.pkg
#log "Signing whole app..."
#codesign --timestamp \
# -v -s "$JB_DEVELOPER_CERT" --options=runtime \
# --force \
# --entitlements entitlements.xml $APP_NAME.pkg
log "Verifying java is not broken"
find "$APPLICATION_PATH" \
-type f -name 'java' -perm +111 -exec {} -version \;

View File

@@ -1,138 +0,0 @@
#!/bin/bash
#immediately exit script with an error if a command fails
set -euo pipefail
set -x
export COPY_EXTENDED_ATTRIBUTES_DISABLE=true
export COPYFILE_DISABLE=true
INPUT_FILE=$1
EXPLODED=$2.exploded
BACKUP_JMODS=$2.backup
USERNAME=$3
PASSWORD=$4
CODESIGN_STRING=$5
JB_INSTALLER_CERT=$6
NOTARIZE=$7
BUNDLE_ID=$8
cd "$(dirname "$0")"
function log() {
echo "$(date '+[%H:%M:%S]') $*"
}
log "Deleting $EXPLODED ..."
if test -d "$EXPLODED"; then
find "$EXPLODED" -mindepth 1 -maxdepth 1 -exec chmod -R u+wx '{}' \;
fi
rm -rf "$EXPLODED"
mkdir "$EXPLODED"
rm -rf "$BACKUP_JMODS"
mkdir "$BACKUP_JMODS"
log "Unzipping $INPUT_FILE to $EXPLODED ..."
tar -xzvf "$INPUT_FILE" --directory $EXPLODED
BUILD_NAME="$(ls "$EXPLODED")"
#sed -i '' s/BNDL/APPL/ $EXPLODED/$BUILD_NAME/Contents/Info.plist
rm -f $EXPLODED/$BUILD_NAME/Contents/CodeResources
rm "$INPUT_FILE"
if test -d $EXPLODED/$BUILD_NAME/Contents/Home/jmods; then
mv $EXPLODED/$BUILD_NAME/Contents/Home/jmods $BACKUP_JMODS
fi
log "$INPUT_FILE extracted and removed"
APP_NAME=$(echo ${INPUT_FILE} | awk -F".tar" '{ print $1 }')
APPLICATION_PATH=$EXPLODED/$(ls $EXPLODED)
find "$APPLICATION_PATH/Contents/Home/bin" \
-maxdepth 1 -type f -name '*.jnilib' -print0 |
while IFS= read -r -d $'\0' file; do
if [ -f "$file" ]; then
log "Linking $file"
b="$(basename "$file" .jnilib)"
ln -sf "$b.jnilib" "$(dirname "$file")/$b.dylib"
fi
done
find "$APPLICATION_PATH/Contents/" \
-maxdepth 1 -type f -name '*.txt' -print0 |
while IFS= read -r -d $'\0' file; do
if [ -f "$file" ]; then
log "Moving $file"
mv "$file" "$APPLICATION_PATH/Contents/Resources"
fi
done
non_plist=$(find "$APPLICATION_PATH/Contents/" -maxdepth 1 -type f -and -not -name 'Info.plist' | wc -l)
if [[ $non_plist -gt 0 ]]; then
log "Only Info.plist file is allowed in Contents directory but found $non_plist file(s):"
log "$(find "$APPLICATION_PATH/Contents/" -maxdepth 1 -type f -and -not -name 'Info.plist')"
exit 1
fi
log "Unlocking keychain..."
# Make sure *.p12 is imported into local KeyChain
security unlock-keychain -p "$PASSWORD" "/Users/$USERNAME/Library/Keychains/login.keychain"
attempt=1
limit=3
set +e
while [[ $attempt -le $limit ]]; do
log "Signing (attempt $attempt) $APPLICATION_PATH ..."
./sign.sh "$APPLICATION_PATH" "$APP_NAME" "$BUNDLE_ID" "$CODESIGN_STRING" "$JB_INSTALLER_CERT"
ec=$?
if [[ $ec -ne 0 ]]; then
((attempt += 1))
if [ $attempt -eq $limit ]; then
set -e
fi
log "Signing failed, wait for 30 sec and try to sign again"
sleep 30
else
log "Signing done"
codesign -v "$APPLICATION_PATH" -vvvvv
log "Check sign done"
spctl -a -v $APPLICATION_PATH
((attempt += limit))
fi
done
set -e
if [ "$NOTARIZE" = "yes" ]; then
log "Notarizing..."
# shellcheck disable=SC1090
source "$HOME/.notarize_token"
# Since notarization tool uses same file for upload token we have to trick it into using different folders, hence fake root
# Also it leaves copy of zip file in TMPDIR, so notarize.sh overrides it and uses FAKE_ROOT as location for temp TMPDIR
FAKE_ROOT="$(pwd)/fake-root"
mkdir -p "$FAKE_ROOT"
echo "Notarization will use fake root: $FAKE_ROOT"
./notarize.sh "$APPLICATION_PATH" "$APPLE_USERNAME" "$APPLE_PASSWORD" "$APP_NAME.pkg" "$BUNDLE_ID" "$FAKE_ROOT"
rm -rf "$FAKE_ROOT"
set +e
log "Stapling..."
xcrun stapler staple "$APPLICATION_PATH"
else
log "Notarization disabled"
log "Stapling disabled"
fi
log "Zipping $BUILD_NAME to $INPUT_FILE ..."
(
#cd "$EXPLODED"
#ditto -c -k --sequesterRsrc --keepParent "$BUILD_NAME" "../$INPUT_FILE"
if test -d $BACKUP_JMODS/jmods; then
mv $BACKUP_JMODS/jmods $APPLICATION_PATH/Contents/Home
fi
mv $APPLICATION_PATH $EXPLODED/$BUILD_NAME
tar -pczvf $INPUT_FILE --exclude='man' -C $EXPLODED $BUILD_NAME
log "Finished zipping"
)
rm -rf "$EXPLODED"
log "Done"

View File

@@ -1,30 +0,0 @@
diff --git jb/project/tools/common/modules.list jb/project/tools/common/modules.list
index 522acb7cb43..c40e689d5de 100644
--- jb/project/tools/common/modules.list
+++ jb/project/tools/common/modules.list
@@ -51,4 +51,7 @@ jdk.unsupported.desktop,
jdk.xml.dom,
jdk.zipfs,
jdk.hotspot.agent,
-jdk.jcmd
+jdk.jcmd,
+jcef,
+gluegen.rt,
+jogl.all
diff --git src/java.desktop/share/classes/module-info.java src/java.desktop/share/classes/module-info.java
index 897647ee368..781d1809493 100644
--- src/java.desktop/share/classes/module-info.java
+++ src/java.desktop/share/classes/module-info.java
@@ -116,7 +116,11 @@ module java.desktop {
// see make/GensrcModuleInfo.gmk
exports sun.awt to
jdk.accessibility,
- jdk.unsupported.desktop;
+ jdk.unsupported.desktop,
+ jcef,
+ jogl.all;
+
+ exports java.awt.peer to jcef;
exports java.awt.dnd.peer to jdk.unsupported.desktop;
exports sun.awt.dnd to jdk.unsupported.desktop;

View File

@@ -1,30 +0,0 @@
diff --git jb/project/tools/common/modules.list jb/project/tools/common/modules.list
index 522acb7..c40e689 100644
--- jb/project/tools/common/modules.list
+++ jb/project/tools/common/modules.list
@@ -51,4 +51,7 @@ jdk.unsupported.desktop,
jdk.xml.dom,
jdk.zipfs,
jdk.hotspot.agent,
-jdk.jcmd
+jdk.jcmd,
+jcef,
+gluegen.rt,
+jogl.all
diff --git src/java.desktop/share/classes/module-info.java src/java.desktop/share/classes/module-info.java
index 897647e..781d180 100644
--- src/java.desktop/share/classes/module-info.java
+++ src/java.desktop/share/classes/module-info.java
@@ -116,7 +116,11 @@ module java.desktop {
// see make/GensrcModuleInfo.gmk
exports sun.awt to
jdk.accessibility,
- jdk.unsupported.desktop;
+ jdk.unsupported.desktop,
+ jcef,
+ jogl.all;
+
+ exports java.awt.peer to jcef;
exports java.awt.dnd.peer to jdk.unsupported.desktop;
exports sun.awt.dnd to jdk.unsupported.desktop;

View File

@@ -1,162 +0,0 @@
#!/bin/bash
set -euo pipefail
TC_PRINT=0
# Always print TeamCity service messages if running under TeamCity
[[ -n "${TEAMCITY_VERSION:-}" ]] && TC_PRINT=1
while getopts ":t" o; do
case "${o}" in
t) TC_PRINT=1 ;;
*);;
esac
done
shift $((OPTIND-1))
NEWFILEPATH="$1"
CONFIGID="$2"
BUILDID="$3"
TOKEN="$4"
if [ ! -f "$NEWFILEPATH" ]; then
echo "File not found: $NEWFILEPATH"
exit 1
fi
#
# Get the size of new artifact
#
unameOut="$(uname -s)"
case "${unameOut}" in
Linux*)
NEWFILESIZE=$(stat -c%s "$NEWFILEPATH")
;;
Darwin*)
NEWFILESIZE=$(stat -f%z "$NEWFILEPATH")
;;
CYGWIN*)
NEWFILESIZE=$(stat -c%s "$NEWFILEPATH")
;;
MINGW*)
NEWFILESIZE=$(stat -c%s "$NEWFILEPATH")
;;
*)
echo "Unknown machine: ${unameOut}"
exit 1
esac
FILENAME=$(basename "${NEWFILEPATH}")
#
# Get pattern of artifact name
# Base filename pattern: <BUNDLE_TYPE>-<JDK_VERSION>-<OS>-<ARCH>-b<BUILD>.tar.gz: jbr_dcevm-17.0.2-osx-x64-b1234.tar.gz
# BUNDLE_TYPE: jbr, jbrsdk, jbr_dcevm, jbrsdk_jcef etc.
# OS_ARCH_PATTERN - <os_architecture>: osx-x64, linux-aarch64, linux-musl-x64, windows-x64 etc.
BUNDLE_TYPE=jbrsdk
OS_ARCH_PATTERN=""
FILE_EXTENSION=tar.gz
re='(jbr[a-z_]*).*-[0-9_\.]+-(.+)-b[0-9]+(.+)'
if [[ $FILENAME =~ $re ]]; then
BUNDLE_TYPE=${BASH_REMATCH[1]}
OS_ARCH_PATTERN=${BASH_REMATCH[2]}
FILE_EXTENSION=${BASH_REMATCH[3]}
else
echo "File name $FILENAME does not match regex $re"
exit 1
fi
function test_started_msg() {
if [ $TC_PRINT -eq 1 ]; then
echo "##teamcity[testStarted name='$1']"
fi
}
function test_failed_msg() {
if [ $TC_PRINT -eq 1 ]; then
echo "##teamcity[testFailed name='$1' message='$2']"
fi
}
function test_finished_msg() {
if [ $TC_PRINT -eq 1 ]; then
echo "##teamcity[testFinished name='$1']"
fi
}
test_name="${BUNDLE_TYPE}_${OS_ARCH_PATTERN//\-/_}${FILE_EXTENSION//\./_}"
test_started_msg "$test_name"
echo "BUNDLE_TYPE: $BUNDLE_TYPE"
echo "OS_ARCH_PATTERN: $OS_ARCH_PATTERN"
echo "FILE_EXTENSION: $FILE_EXTENSION"
echo "Size of $FILENAME is $NEWFILESIZE bytes"
#
# Get previous successful build ID
# Example:
# CONFIGID=IntellijCustomJdk_Jdk17_Master_LinuxX64jcef
# BUILDID=12345678
#
# expected return value
# id="123".number="567"
#
CURL_RESPONSE=$(curl -sSL --header "Authorization: Bearer $TOKEN" "https://buildserver.labs.intellij.net/app/rest/builds/?locator=buildType:(id:$CONFIGID),status:success,count:1,finishDate:(build:$BUILDID,condition:before)")
re='id=\"([0-9]+)\".+number=\"([0-9\.]+)\"'
# ID: Previous successful build id
ID=0
if [[ $CURL_RESPONSE =~ $re ]]; then
ID=${BASH_REMATCH[1]}
echo "Previous build ID: $ID"
echo "Previous build number: ${BASH_REMATCH[2]}"
else
msg="ERROR: cannot find previous build"
echo "$msg"
echo "$CURL_RESPONSE"
test_failed_msg "$test_name" "$msg"
test_finished_msg "$test_name"
exit 1
fi
#
# Get artifacts from previous successful build
#
# expected return value
# name="jbrsdk_jcef*.tar.gz size="123'
#
CURL_RESPONSE=$(curl -sSL --header "Authorization: Bearer $TOKEN" "https://buildserver.labs.intellij.net/app/rest/builds/$ID?fields=id,number,artifacts(file(name,size))")
echo "Artifacts of the previous build:"
echo "$CURL_RESPONSE"
# Find binary size (in response) with reg exp
re="name=\"(${BUNDLE_TYPE}[^\"]+${OS_ARCH_PATTERN}[^\"]+${FILE_EXTENSION})\" size=\"([0-9]+)\""
if [[ $CURL_RESPONSE =~ $re ]]; then
prevFileName=${BASH_REMATCH[1]}
echo "Previous artifact name: $prevFileName"
prevFileSize=${BASH_REMATCH[2]}
echo "Previous artifact size: $prevFileSize"
((allowedSize=prevFileSize+prevFileSize/20)) # use 5% threshold
echo "Allowed size: $allowedSize"
if [[ "$NEWFILESIZE" -gt "$allowedSize" ]]; then
msg="ERROR: new size is significantly greater than previous size (need to investigate)"
echo "$msg"
test_failed_msg "$test_name" "$msg"
test_finished_msg "$test_name"
exit 1
else
echo "PASSED"
test_finished_msg "$test_name"
fi
else
msg="ERROR: cannot find string with size in xml response:"
echo "Regex: $re"
echo "$msg"
echo "$CURL_RESPONSE"
test_failed_msg "$test_name" "$msg"
test_finished_msg "$test_name"
exit 1
fi

View File

@@ -1,93 +0,0 @@
#!/bin/bash
set -euo pipefail
set -x
usage ()
{
echo "Usage: perfcmp.sh [options] <test_results_cur> <test_results_ref> <results> <test_prefix> <noHeaders>"
echo "Options:"
echo -e " -h, --help\tdisplay this help"
echo -e " -tc\tprint teacmity statistic"
echo -e "test_results_cur - the file with metrics values for the current measuring"
echo -e "test_results_ref - the file with metrics values for the reference measuring"
echo -e "results - results of comaprison"
echo -e "test_prefix - specifys measuring type, makes sense for enabled -tc, by default no prefixes"
echo -e "noHeaders - by default 1-st line contains headers"
echo -e ""
echo -e "test_results_* files content should be in csv format with header and tab separator:"
echo -e "The 1-st column is the test name"
echo -e "The 2-st column is the test value"
echo -e ""
echo -e "Example:"
echo -e "Test Value"
echo -e "Testname 51.54"
}
while [ -n "$1" ]
do
case "$1" in
-h | --help) usage
exit 1 ;;
-tc) tc=1
shift
break ;;
*) break;;
esac
done
if [[ "$#" < "3" ]]; then
echo "Error: Invalid arguments"
usage
exit 1
fi
curFile=$1
refFile=$2
resFile=$3
testNamePrefix=$4
noHeaders=$5
echo $curFile
echo $refFile
echo $resFile
curValues=`cat "$curFile" | cut -f 2 | tr -d '\t'`
if [ -z $noHeaders ]; then
curValuesHeader=`echo "$curValues" | head -n +1`_cur
header=`cat "$refFile" | head -n +1 | awk -F'\t' -v x=$curValuesHeader '{print " "$1"\t"$2"_ref\t"x"\tratio"}'`
testContent=`paste -d '\t' $refFile <(echo "$curValues") | tail -n +2`
else
testContent=`paste -d '\t' $refFile <(echo "$curValues") | tail -n +1`
fi
testContent=`echo "$testContent" | tr "," "." | awk -F'\t' '{
if ($3>$2+$2*0.1) {
print "* "$1"\t"$2"\t"$3"\t"(($2>0)?$3/$2:"-")
} else {
print " "$1"\t"$2"\t"$3"\t"(($2>0)?$3/$2:"-")
}
}'`
if [ -z $noHeaders ]; then
echo "$header" > $resFile
fi
echo "$testContent" >> $resFile
cat "$resFile" | tr '\t' ';' | column -t -s ';' | tee $resFile
if [ -z $tc ]; then
exit 0
fi
failed=0
echo "$testContent" 2>&1 | (
while read -r s; do
testname=`echo "$s" | cut -f 1 | tr -d "[:space:]" | tr -d "*"`
duration=`echo "$s" | cut -f 3`
echo "$s" | cut -c1 | grep -c "*" && failed=1
echo \#\#teamcity[testStarted name=\'$testNamePrefix$testname\']
echo "===>$s"
echo \#\#teamcity[buildStatisticValue key=\'$testNamePrefix$testname\' value=\'$duration\']
[ $failed -eq 1 ] && echo \#\#teamcity[testFailed name=\'$testNamePrefix$testname\' message=\'$s\']
echo \#\#teamcity[testFinished name=\'$testNamePrefix$testname\' duration=\'$duration\']
failed=0
done
)

View File

@@ -1,149 +0,0 @@
#!/bin/bash
set -euo pipefail
set -x
# The following parameters must be specified:
# build_number - specifies the number of JetBrainsRuntime build
# bundle_type - specifies bundle to be built;possible values:
# <empty> or nomod - the release bundles without any additional modules (jcef)
# jcef - the release bundles with jcef
# fd - the fastdebug bundles which also include the jcef module
#
# This script makes test-image along with JDK images when bundle_type is set to "jcef".
# If the character 't' is added at the end of bundle_type then it also makes test-image along with JDK images.
#
# Environment variables:
# JDK_BUILD_NUMBER - specifies update release of OpenJDK build or the value of --with-version-build argument
# to configure
# By default JDK_BUILD_NUMBER is set zero
# JCEF_PATH - specifies the path to the directory with JCEF binaries.
# By default JCEF binaries should be located in ./jcef_win_aarch64
if [ -z "$BUILD_JDK" ]; then
echo "BUILD_JDK environment variable must be specified and point to a JDK built from the current sources" \
" and is able to run on the build system. See OpenJDK documentation for --with-build-jdk for more info."
exit 1
fi
source jb/project/tools/common/scripts/common.sh
WORK_DIR=$(pwd)
JCEF_PATH=${JCEF_PATH:=$WORK_DIR/jcef_win_aarch64}
NVDA_PATH=${NVDA_PATH:=$WORK_DIR/nvda_controllerClient}
function do_configure {
sh ./configure \
--openjdk-target=aarch64-unknown-cygwin \
$WITH_DEBUG_LEVEL \
--with-vendor-name="$VENDOR_NAME" \
--with-vendor-version-string="$VENDOR_VERSION_STRING" \
--with-jvm-features=shenandoahgc \
--with-version-pre= \
--with-version-build=$JDK_BUILD_NUMBER \
--with-version-opt=b${build_number} \
--with-toolchain-version=$TOOLCHAIN_VERSION \
--with-boot-jdk=$BOOT_JDK \
--with-build-jdk=$BUILD_JDK \
--with-nvdacontrollerclient=$NVDA_PATH \
--disable-ccache \
$STATIC_CONF_ARGS \
$REPRODUCIBLE_BUILD_OPTS \
--enable-cds=yes || do_exit $?
}
function create_image_bundle {
__bundle_name=$1
__arch_name=$2
__modules_path=$3
__modules=$4
fastdebug_infix=''
[ "$bundle_type" == "fd" ] && [ "$__arch_name" == "$JBRSDK_BUNDLE" ] && __bundle_name=$__arch_name && fastdebug_infix="fastdebug-"
__root_dir=${__bundle_name}-${JBSDK_VERSION}-windows-aarch64-${fastdebug_infix}b${build_number}
echo Running jlink ...
${BUILD_JDK}/bin/jlink \
--module-path $__modules_path --no-man-pages --compress=2 \
--add-modules $__modules --output $__root_dir || do_exit $?
grep -v "^JAVA_VERSION" "$JSDK"/release | grep -v "^MODULES" >> $__arch_name/release
if [ "$__arch_name" == "$JBRSDK_BUNDLE" ]; then
sed 's/JBR/JBRSDK/g' $__root_dir/release > release
mv release $__root_dir/release
cp $IMAGES_DIR/jdk/lib/src.zip $__root_dir/lib
for dir in $(ls -d $IMAGES_DIR/jdk/*); do
rsync -amv --include="*/" --include="*.pdb" --exclude="*" $dir $__root_dir
done
copy_jmods "$__modules" "$__modules_path" "$__root_dir"/jmods
fi
}
WITH_DEBUG_LEVEL="--with-debug-level=release"
RELEASE_NAME=windows-aarch64-server-release
case "$bundle_type" in
"jcef")
do_reset_changes=0
do_maketest=1
;;
"nomod" | "")
bundle_type=""
;;
"fd")
do_reset_changes=0
WITH_DEBUG_LEVEL="--with-debug-level=fastdebug"
RELEASE_NAME=windows-aarch64-server-fastdebug
;;
esac
if [ -z "${INC_BUILD:-}" ]; then
do_configure || do_exit $?
if [ $do_maketest -eq 1 ]; then
make LOG=info CONF=$RELEASE_NAME clean images test-image jbr-api JBR_API_JBR_VERSION=TEST || do_exit $?
else
make LOG=info CONF=$RELEASE_NAME clean images || do_exit $?
fi
else
if [ $do_maketest -eq 1 ]; then
make LOG=info CONF=$RELEASE_NAME images test-image jbr-api JBR_API_JBR_VERSION=TEST || do_exit $?
else
make LOG=info CONF=$RELEASE_NAME images || do_exit $?
fi
fi
IMAGES_DIR=build/$RELEASE_NAME/images
JSDK=$IMAGES_DIR/jdk
JSDK_MODS_DIR=$IMAGES_DIR/jmods
JBRSDK_BUNDLE=jbrsdk
where cygpath
if [ $? -eq 0 ]; then
JCEF_PATH="$(cygpath -w $JCEF_PATH | sed 's/\\/\//g')"
fi
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "fd" ]; then
git apply -p0 < jb/project/tools/patches/add_jcef_module_aarch64.patch || do_exit $?
update_jsdk_mods "$BUILD_JDK" "$JCEF_PATH"/jmods "$JSDK"/jmods "$JSDK_MODS_DIR" || do_exit $?
cp $JCEF_PATH/jmods/* $JSDK_MODS_DIR # $JSDK/jmods is not unchanged
jbr_name_postfix="_${bundle_type}"
cat $JCEF_PATH/jcef.version >> $JSDK/release
else
jbr_name_postfix=""
fi
# create runtime image bundle
modules=$(xargs < jb/project/tools/common/modules.list | sed s/" "//g) || do_exit $?
modules+=",jdk.crypto.mscapi"
create_image_bundle "jbr${jbr_name_postfix}" "jbr" $JSDK_MODS_DIR "$modules" || do_exit $?
# create sdk image bundle
modules=$(cat ${JSDK}/release | grep MODULES | sed s/MODULES=//g | sed s/' '/','/g | sed s/\"//g | sed s/\\r//g | sed s/\\n//g) || do_exit $?
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "fd" ] || [ "$bundle_type" == "$JBRSDK_BUNDLE" ]; then
modules=${modules},$(get_mods_list "$JCEF_PATH"/jmods)
fi
create_image_bundle "$JBRSDK_BUNDLE${jbr_name_postfix}" "$JBRSDK_BUNDLE" "$JSDK_MODS_DIR" "$modules" || do_exit $?
do_exit 0

View File

@@ -1,142 +0,0 @@
#!/bin/bash
set -euo pipefail
set -x
# The following parameters must be specified:
# build_number - specifies the number of JetBrainsRuntime build
# bundle_type - specifies bundle to be built;possible values:
# <empty> or nomod - the release bundles without any additional modules (jcef)
# jcef - the release bundles with jcef
# fd - the fastdebug bundles which also include the jcef module
#
# This script makes test-image along with JDK images when bundle_type is set to "jcef".
# If the character 't' is added at the end of bundle_type then it also makes test-image along with JDK images.
#
# Environment variables:
# JDK_BUILD_NUMBER - specifies update release of OpenJDK build or the value of --with-version-build argument
# to configure
# By default JDK_BUILD_NUMBER is set zero
# JCEF_PATH - specifies the path to the directory with JCEF binaries.
# By default JCEF binaries should be located in ./jcef_win_x64
source jb/project/tools/common/scripts/common.sh
WORK_DIR=$(pwd)
JCEF_PATH=${JCEF_PATH:=$WORK_DIR/jcef_win_x64}
NVDA_PATH=${NVDA_PATH:=$WORK_DIR/nvda_controllerClient}
function do_configure {
sh ./configure \
$WITH_DEBUG_LEVEL \
--with-vendor-name="$VENDOR_NAME" \
--with-vendor-version-string="$VENDOR_VERSION_STRING" \
--with-jvm-features=shenandoahgc \
--with-version-pre= \
--with-version-build=$JDK_BUILD_NUMBER \
--with-version-opt=b${build_number} \
--with-toolchain-version=$TOOLCHAIN_VERSION \
--with-boot-jdk=$BOOT_JDK \
--with-nvdacontrollerclient=$NVDA_PATH \
--disable-ccache \
--enable-cds=yes \
$STATIC_CONF_ARGS \
$REPRODUCIBLE_BUILD_OPTS \
|| do_exit $?
}
function create_image_bundle {
__bundle_name=$1
__arch_name=$2
__modules_path=$3
__modules=$4
fastdebug_infix=''
[ "$bundle_type" == "fd" ] && [ "$__arch_name" == "$JBRSDK_BUNDLE" ] && __bundle_name=$__arch_name && fastdebug_infix="fastdebug-"
__root_dir=${__bundle_name}-${JBSDK_VERSION}-windows-x64-${fastdebug_infix}b${build_number}
echo Running jlink ...
${JSDK}/bin/jlink \
--module-path $__modules_path --no-man-pages --compress=2 \
--add-modules $__modules --output $__root_dir || do_exit $?
grep -v "^JAVA_VERSION" "$JSDK"/release | grep -v "^MODULES" >> $__root_dir/release
if [ "$__arch_name" == "$JBRSDK_BUNDLE" ]; then
sed 's/JBR/JBRSDK/g' $__root_dir/release > release
mv release $__root_dir/release
cp $IMAGES_DIR/jdk/lib/src.zip $__root_dir/lib
for dir in $(ls -d $IMAGES_DIR/jdk/*); do
rsync -amv --include="*/" --include="*.pdb" --exclude="*" $dir $__root_dir
done
copy_jmods "$__modules" "$__modules_path" "$__root_dir"/jmods
fi
}
WITH_DEBUG_LEVEL="--with-debug-level=release"
RELEASE_NAME=windows-x86_64-server-release
case "$bundle_type" in
"jcef")
do_reset_changes=0
do_maketest=1
;;
"nomod" | "")
bundle_type=""
;;
"fd")
do_reset_changes=0
WITH_DEBUG_LEVEL="--with-debug-level=fastdebug"
RELEASE_NAME=windows-x86_64-server-fastdebug
;;
esac
if [ -z "${INC_BUILD:-}" ]; then
do_configure || do_exit $?
if [ $do_maketest -eq 1 ]; then
make LOG=info CONF=$RELEASE_NAME clean images test-image jbr-api JBR_API_JBR_VERSION=TEST || do_exit $?
else
make LOG=info CONF=$RELEASE_NAME clean images || do_exit $?
fi
else
if [ $do_maketest -eq 1 ]; then
make LOG=info CONF=$RELEASE_NAME images test-image jbr-api JBR_API_JBR_VERSION=TEST || do_exit $?
else
make LOG=info CONF=$RELEASE_NAME images || do_exit $?
fi
fi
IMAGES_DIR=build/$RELEASE_NAME/images
JSDK=$IMAGES_DIR/jdk
JSDK_MODS_DIR=$IMAGES_DIR/jmods
JBRSDK_BUNDLE=jbrsdk
where cygpath
if [ $? -eq 0 ]; then
JCEF_PATH="$(cygpath -w $JCEF_PATH | sed 's/\\/\//g')"
fi
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "fd" ]; then
git apply -p0 < jb/project/tools/patches/add_jcef_module.patch || do_exit $?
update_jsdk_mods "$JSDK" "$JCEF_PATH"/jmods "$JSDK"/jmods "$JSDK_MODS_DIR" || do_exit $?
cp $JCEF_PATH/jmods/* ${JSDK_MODS_DIR} # $JSDK/jmods is not unchanged
jbr_name_postfix="_${bundle_type}"
cat $JCEF_PATH/jcef.version >> $JSDK/release
else
jbr_name_postfix=""
fi
# create runtime image bundle
modules=$(xargs < jb/project/tools/common/modules.list | sed s/" "//g) || do_exit $?
modules+=",jdk.crypto.mscapi"
create_image_bundle "jbr${jbr_name_postfix}" "jbr" $JSDK_MODS_DIR "$modules" || do_exit $?
# create sdk image bundle
modules=$(cat ${JSDK}/release | grep MODULES | sed s/MODULES=//g | sed s/' '/','/g | sed s/\"//g | sed s/\\r//g | sed s/\\n//g)
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "fd" ] || [ "$bundle_type" == "$JBRSDK_BUNDLE" ]; then
modules=${modules},$(get_mods_list "$JCEF_PATH"/jmods)
fi
create_image_bundle "$JBRSDK_BUNDLE${jbr_name_postfix}" "$JBRSDK_BUNDLE" "$JSDK_MODS_DIR" "$modules" || do_exit $?
do_exit 0

View File

@@ -1,131 +0,0 @@
#!/bin/bash
set -euo pipefail
set -x
# The following parameters must be specified:
# build_number - specifies the number of JetBrainsRuntime build
# bundle_type - specifies bundle to be built;possible values:
# <empty> or nomod - the release bundles without any additional modules (jcef)
# jcef - the release bundles with jcef
# fd - the fastdebug bundles which also include the jcef module
#
# $ ./java --version
# openjdk 11.0.6 2020-01-14
# OpenJDK Runtime Environment (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number})
# OpenJDK 64-Bit Server VM (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number}, mixed mode)
#
source jb/project/tools/common/scripts/common.sh
WORK_DIR=$(pwd)
NVDA_PATH=${NVDA_PATH:=$WORK_DIR/nvda_controllerClient}
function do_configure {
sh ./configure \
$WITH_DEBUG_LEVEL \
--with-vendor-name="$VENDOR_NAME" \
--with-vendor-version-string="$VENDOR_VERSION_STRING" \
--with-jvm-features=shenandoahgc \
--with-version-pre= \
--with-version-build=$JDK_BUILD_NUMBER \
--with-version-opt=b${build_number} \
--with-toolchain-version=$TOOLCHAIN_VERSION \
--with-boot-jdk=$BOOT_JDK \
--with-nvdacontrollerclient=$NVDA_PATH \
--disable-ccache \
--enable-cds=yes \
$STATIC_CONF_ARGS \
$REPRODUCIBLE_BUILD_OPTS \
|| do_exit $?
}
function create_image_bundle {
__bundle_name=$1
__arch_name=$2
__modules_path=$3
__modules=$4
fastdebug_infix=''
[ "$bundle_type" == "fd" ] && [ "$__arch_name" == "$JBRSDK_BUNDLE" ] && __bundle_name=$__arch_name && fastdebug_infix="fastdebug-"
__root_dir=${__bundle_name}-${JBSDK_VERSION}-windows-x86-${fastdebug_infix}b${build_number}
echo Running jlink ...
${JSDK}/bin/jlink \
--module-path $__modules_path --no-man-pages --compress=2 \
--add-modules $__modules --output $__root_dir || do_exit $?
grep -v "^JAVA_VERSION" "$JSDK"/release | grep -v "^MODULES" >> $__root_dir/release
if [ "$__arch_name" == "$JBRSDK_BUNDLE" ]; then
sed 's/JBR/JBRSDK/g' $__root_dir/release > release
mv release $__root_dir/release
cp $IMAGES_DIR/jdk/lib/src.zip $__root_dir/lib
for dir in $(ls -d $IMAGES_DIR/jdk/*); do
rsync -amv --include="*/" --include="*.pdb" --exclude="*" $dir $__root_dir
done
copy_jmods "$__modules" "$__modules_path" "$__root_dir"/jmods
fi
}
WITH_DEBUG_LEVEL="--with-debug-level=release"
RELEASE_NAME=windows-x86_64-server-release
case "$bundle_type" in
"jcef")
echo "not implemented" && do_exit 1
;;
"nomod" | "")
bundle_type=""
;;
"fd")
do_reset_changes=0
WITH_DEBUG_LEVEL="--with-debug-level=fastdebug"
RELEASE_NAME=windows-x86_64-server-fastdebug
;;
esac
if [ -z "${INC_BUILD:-}" ]; then
do_configure || do_exit $?
if [ $do_maketest -eq 1 ]; then
make LOG=info CONF=$RELEASE_NAME clean images test-image jbr-api JBR_API_JBR_VERSION=TEST || do_exit $?
else
make LOG=info CONF=$RELEASE_NAME clean images || do_exit $?
fi
else
if [ $do_maketest -eq 1 ]; then
make LOG=info CONF=$RELEASE_NAME images test-image jbr-api JBR_API_JBR_VERSION=TEST || do_exit $?
else
make LOG=info CONF=$RELEASE_NAME images || do_exit $?
fi
fi
IMAGES_DIR=build/$RELEASE_NAME/images
JSDK=$IMAGES_DIR/jdk
JSDK_MODS_DIR=$IMAGES_DIR/jmods
JBRSDK_BUNDLE=jbrsdk
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "fd" ]; then
git apply -p0 < jb/project/tools/patches/add_jcef_module.patch || do_exit $?
update_jsdk_mods "$JSDK" "$JCEF_PATH"/jmods "$JSDK"/jmods "$JSDK_MODS_DIR" || do_exit $?
cp $JCEF_PATH/jmods/* ${JSDK_MODS_DIR} # $JSDK/jmods is not unchanged
jbr_name_postfix="_${bundle_type}"
else
jbr_name_postfix=""
fi
# create runtime image bundle
modules=$(grep -v "jdk.internal.vm" jb/project/tools/common/modules.list | xargs | sed s/" "//g) || do_exit $?
modules+=",jdk.crypto.mscapi"
create_image_bundle "jbr${jbr_name_postfix}" "jbr" $JSDK_MODS_DIR "$modules" || do_exit $?
# create sdk image bundle
modules=$(cat ${JSDK}/release | grep MODULES | sed s/MODULES=//g | sed s/' '/','/g | sed s/\"//g | sed s/\\r//g | sed s/\\n//g)
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "fd" ] || [ "$bundle_type" == "$JBRSDK_BUNDLE" ]; then
modules=${modules},$(get_mods_list "$JCEF_PATH"/jmods)
fi
create_image_bundle "$JBRSDK_BUNDLE${jbr_name_postfix}" "$JBRSDK_BUNDLE" "$JSDK_MODS_DIR" "$modules" || do_exit $?
do_exit 0

View File

@@ -1,57 +0,0 @@
#!/bin/bash
set -euo pipefail
set -x
# The following parameters must be specified:
# build_number - specifies the number of JetBrainsRuntime build
# bundle_type - specifies bundle to be built;possible values:
# <empty> or nomod - the release bundles without any additional modules (jcef)
# jcef - the release bundles with jcef
# fd - the fastdebug bundles which also include the jcef module
#
# This script packs test-image along with JDK images when bundle_type is set to "jcef".
# If the character 't' is added at the end of bundle_type then it also makes test-image along with JDK images.
#
source jb/project/tools/common/scripts/common.sh
[ "$bundle_type" == "jcef" ] && do_maketest=1
function pack_jbr {
__bundle_name=$1
__arch_name=$2
fastdebug_infix=''
[ "$bundle_type" == "fd" ] && [ "$__arch_name" == "$JBRSDK_BUNDLE" ] && __bundle_name=$__arch_name && fastdebug_infix="fastdebug-"
JBR=${__bundle_name}-${JBSDK_VERSION}-windows-aarch64-${fastdebug_infix}b${build_number}
__root_dir=${__bundle_name}-${JBSDK_VERSION}-windows-aarch64-${fastdebug_infix}b${build_number}
echo Creating $JBR.tar.gz ...
/usr/bin/tar -czf $JBR.tar.gz -C $BASE_DIR $__root_dir || do_exit $?
}
[ "$bundle_type" == "nomod" ] && bundle_type=""
JBRSDK_BUNDLE=jbrsdk
RELEASE_NAME=windows-aarch64-server-release
IMAGES_DIR=build/$RELEASE_NAME/images
BASE_DIR=.
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "dcevm" ] || [ "$bundle_type" == "fd" ]; then
jbr_name_postfix="_${bundle_type}"
else
jbr_name_postfix=""
fi
pack_jbr jbr${jbr_name_postfix} jbr
pack_jbr jbrsdk${jbr_name_postfix} jbrsdk
if [ $do_maketest -eq 1 ]; then
JBRSDK_TEST=$JBRSDK_BUNDLE-$JBSDK_VERSION-windows-test-aarch64-b$build_number
cp "build/${RELEASE_NAME}/jbr-api/jbr-api.jar" "${IMAGES_DIR}/test" || do_exit $?
echo Creating $JBRSDK_TEST.tar.gz ...
/usr/bin/tar -czf $JBRSDK_TEST.tar.gz -C $IMAGES_DIR --exclude='test/jdk/demos' test || do_exit $?
fi

View File

@@ -1,57 +0,0 @@
#!/bin/bash
set -euo pipefail
set -x
# The following parameters must be specified:
# build_number - specifies the number of JetBrainsRuntime build
# bundle_type - specifies bundle to be built;possible values:
# <empty> or nomod - the release bundles without any additional modules (jcef)
# jcef - the release bundles with jcef
# fd - the fastdebug bundles which also include the jcef module
#
# This script packs test-image along with JDK images when bundle_type is set to "jcef".
# If the character 't' is added at the end of bundle_type then it also makes test-image along with JDK images.
#
source jb/project/tools/common/scripts/common.sh
[ "$bundle_type" == "jcef" ] && do_maketest=1
function pack_jbr {
__bundle_name=$1
__arch_name=$2
fastdebug_infix=''
[ "$bundle_type" == "fd" ] && [ "$__arch_name" == "$JBRSDK_BUNDLE" ] && __bundle_name=$__arch_name && fastdebug_infix="fastdebug-"
JBR=${__bundle_name}-${JBSDK_VERSION}-windows-x64-${fastdebug_infix}b${build_number}
__root_dir=${__bundle_name}-${JBSDK_VERSION}-windows-x64-${fastdebug_infix}b${build_number}
echo Creating $JBR.tar.gz ...
chmod -R ug+rwx,o+rx ${BASE_DIR}/$__root_dir
/usr/bin/tar -czf $JBR.tar.gz -C $BASE_DIR $__root_dir || do_exit $?
}
[ "$bundle_type" == "nomod" ] && bundle_type=""
JBRSDK_BUNDLE=jbrsdk
RELEASE_NAME=windows-x86_64-server-release
IMAGES_DIR=build/$RELEASE_NAME/images
BASE_DIR=.
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "dcevm" ] || [ "$bundle_type" == "fd" ]; then
jbr_name_postfix="_${bundle_type}"
else
jbr_name_postfix=""
fi
pack_jbr jbr${jbr_name_postfix} jbr
pack_jbr jbrsdk${jbr_name_postfix} jbrsdk
if [ $do_maketest -eq 1 ]; then
JBRSDK_TEST=$JBRSDK_BUNDLE-$JBSDK_VERSION-windows-test-x64-b$build_number
cp "build/${RELEASE_NAME}/jbr-api/jbr-api.jar" "${IMAGES_DIR}/test" || do_exit $?
echo Creating $JBRSDK_TEST.tar.gz ...
/usr/bin/tar -czf $JBRSDK_TEST.tar.gz -C $IMAGES_DIR --exclude='test/jdk/demos' test || do_exit $?
fi

View File

@@ -1,53 +0,0 @@
#!/bin/bash
set -euo pipefail
set -x
# The following parameters must be specified:
# build_number - specifies the number of JetBrainsRuntime build
# bundle_type - specifies bundle to be built;possible values:
# <empty> or nomod - the release bundles without any additional modules (jcef)
# fd - the fastdebug bundles which also include the jcef module
#
source jb/project/tools/common/scripts/common.sh
[ "$bundle_type" == "jcef" ] && echo "not implemented" && do_exit 1
function pack_jbr {
__bundle_name=$1
__arch_name=$2
fastdebug_infix=''
[ "$bundle_type" == "fd" ] && [ "$__arch_name" == "$JBRSDK_BUNDLE" ] && __bundle_name=$__arch_name && fastdebug_infix="fastdebug-"
JBR=${__bundle_name}-${JBSDK_VERSION}-windows-x86-${fastdebug_infix}b${build_number}
__root_dir=${__bundle_name}-${JBSDK_VERSION}-windows-x86-${fastdebug_infix}b${build_number}
echo Creating $JBR.tar.gz ...
chmod -R ug+rwx,o+rx ${BASE_DIR}/$__root_dir
/usr/bin/tar -czf $JBR.tar.gz -C $BASE_DIR $__root_dir || do_exit $?
}
[ "$bundle_type" == "nomod" ] && bundle_type=""
JBRSDK_BUNDLE=jbrsdk
RELEASE_NAME=windows-x86_64-server-release
IMAGES_DIR=build/$RELEASE_NAME/images
BASE_DIR=.
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "dcevm" ] || [ "$bundle_type" == "fd" ]; then
jbr_name_postfix="_${bundle_type}"
else
jbr_name_postfix=""
fi
pack_jbr jbr${jbr_name_postfix} jbr
pack_jbr jbrsdk${jbr_name_postfix} jbrsdk
if [ $do_maketest -eq 1 ]; then
JBRSDK_TEST=$JBRSDK_BUNDLE-$JBSDK_VERSION-windows-test-x86-b$build_number
cp "build/${RELEASE_NAME}/jbr-api/jbr-api.jar" "${IMAGES_DIR}/test" || do_exit $?
echo Creating $JBRSDK_TEST.tar.gz ...
/usr/bin/tar -czf $JBRSDK_TEST.tar.gz -C $BASE_DIR --exclude='test/jdk/demos' test || do_exit $?
fi

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2014, 2022, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2014, 2023, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -98,6 +98,7 @@ define SetupInterimModule
EXCLUDES := sun javax/tools/snippet-files, \
EXCLUDE_FILES := $(TOPDIR)/src/$1/share/classes/module-info.java \
$(TOPDIR)/src/$1/share/classes/javax/tools/ToolProvider.java \
$(TOPDIR)/src/$1/share/classes/com/sun/tools/javac/launcher/Main.java \
Standard.java, \
EXTRA_FILES := $(BUILDTOOLS_OUTPUTDIR)/gensrc/$1.interim/module-info.java \
$($1.interim_EXTRA_FILES), \
@@ -109,7 +110,9 @@ define SetupInterimModule
$$(INTERIM_LANGTOOLS_ADD_EXPORTS) \
--patch-module java.base=$(BUILDTOOLS_OUTPUTDIR)/gensrc/java.base.interim \
--add-exports java.base/jdk.internal.javac=java.compiler.interim \
--add-exports java.base/jdk.internal.javac=jdk.compiler.interim, \
--add-exports java.base/jdk.internal.javac=jdk.compiler.interim \
--add-exports jdk.internal.opt/jdk.internal.opt=jdk.compiler.interim \
--add-exports jdk.internal.opt/jdk.internal.opt=jdk.javadoc.interim, \
))
$1_DEPS_INTERIM := $$(addsuffix .interim, $$(filter \

View File

@@ -57,7 +57,9 @@ $(eval $(call SetupJavaCompilation, BUILD_TOOLS_JDK, \
JAVAC_FLAGS := \
--add-exports java.desktop/sun.awt=ALL-UNNAMED \
--add-exports java.base/sun.text=ALL-UNNAMED \
--add-exports java.base/sun.security.util=ALL-UNNAMED, \
--add-exports java.base/sun.security.util=ALL-UNNAMED \
--add-exports jdk.internal.opt/jdk.internal.opt=jdk.compiler.interim \
--add-exports jdk.internal.opt/jdk.internal.opt=jdk.javadoc.interim, \
))
TARGETS += $(BUILD_TOOLS_JDK)
@@ -90,7 +92,9 @@ $(eval $(call SetupJavaCompilation, COMPILE_DEPEND, \
--add-exports jdk.compiler/com.sun.tools.javac.comp=ALL-UNNAMED \
--add-exports jdk.compiler/com.sun.tools.javac.main=ALL-UNNAMED \
--add-exports jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED \
--add-exports jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED, \
--add-exports jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED \
--add-exports jdk.internal.opt/jdk.internal.opt=jdk.compiler.interim \
--add-exports jdk.internal.opt/jdk.internal.opt=jdk.javadoc.interim, \
))
DEPEND_SERVICE_PROVIDER := $(BUILDTOOLS_OUTPUTDIR)/depend/META-INF/services/com.sun.source.util.Plugin

View File

@@ -110,7 +110,6 @@ JAVA_WARNINGS_ARE_ERRORS ?= -Werror
JAVADOC_OPTIONS := -use -keywords -notimestamp \
-encoding ISO-8859-1 -docencoding UTF-8 -breakiterator \
-splitIndex --system none -javafx --expand-requires transitive \
--enable-preview -source $(JDK_SOURCE_TARGET_VERSION) \
--override-methods=summary \
--no-external-specs-page
@@ -118,7 +117,6 @@ JAVADOC_OPTIONS := -use -keywords -notimestamp \
# development cycle.
REFERENCE_OPTIONS := -XDignore.symbol.file=true -use -keywords -notimestamp \
-encoding ISO-8859-1 -breakiterator -splitIndex --system none \
--enable-preview -source $(JDK_SOURCE_TARGET_VERSION) \
-html5 -javafx --expand-requires transitive \
--no-external-specs-page

View File

@@ -125,6 +125,11 @@ test-prebuilt:
$(MAKE) --no-print-directory -r -R -I make/common/ -f make/RunTestsPrebuilt.gmk \
test-prebuilt CUSTOM_MAKE_DIR=$(CUSTOM_MAKE_DIR) TEST="$(TEST)" )
test-prebuilt-with-exit-code:
@( cd $(topdir) && \
$(MAKE) --no-print-directory -r -R -I make/common/ -f make/RunTestsPrebuilt.gmk \
test-prebuilt-with-exit-code CUSTOM_MAKE_DIR=$(CUSTOM_MAKE_DIR) TEST="$(TEST)" )
# Alias for backwards compatibility
run-test-prebuilt: test-prebuilt

View File

@@ -1,93 +0,0 @@
#
# Copyright 2000-2023 JetBrains s.r.o.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#
include $(SPEC)
include MakeBase.gmk
include JavaCompilation.gmk
JBR_API_ROOT_DIR := $(TOPDIR)/src/jetbrains.api
JBR_API_TOOLS_DIR := $(JBR_API_ROOT_DIR)/tools
JBR_API_SRC_DIR := $(JBR_API_ROOT_DIR)/src
JBR_API_OUTPUT_DIR := $(OUTPUTDIR)/jbr-api
JBR_API_GENSRC_DIR := $(JBR_API_OUTPUT_DIR)/gensrc
JBR_API_BIN_DIR := $(JBR_API_OUTPUT_DIR)/bin
JBR_API_VERSION_PROPERTIES := $(JBR_API_ROOT_DIR)/version.properties
JBR_API_VERSION_GENSRC := $(JBR_API_OUTPUT_DIR)/jbr-api.version
JBR_API_GENSRC_BATCH := $(JBR_API_VERSION_GENSRC)
JBR_API_SRC_FILES := $(call FindFiles, $(JBR_API_SRC_DIR))
JBR_API_GENSRC_FILES := $(foreach f, $(call FindFiles, $(JBR_API_SRC_DIR)), \
$(JBR_API_GENSRC_DIR)/$(call RelativePath, $f, $(JBR_API_SRC_DIR)))
ifeq ($(JBR_API_JBR_VERSION),)
JBR_API_JBR_VERSION := DEVELOPMENT
JBR_API_FAIL_ON_HASH_MISMATCH := false
else
.PHONY: $(JBR_API_VERSION_PROPERTIES)
JBR_API_FAIL_ON_HASH_MISMATCH := true
endif
ARCHIVE_BUILD_JBR_API_BIN := $(JBR_API_BIN_DIR)
$(eval $(call SetupJavaCompilation, BUILD_JBR_API, \
SMALL_JAVA := true, \
COMPILER := bootjdk, \
SRC := $(JBR_API_GENSRC_DIR), \
EXTRA_FILES := $(JBR_API_GENSRC_FILES), \
BIN := $(JBR_API_BIN_DIR), \
JAR := $(JBR_API_OUTPUT_DIR)/jbr-api.jar, \
))
$(eval $(call SetupJarArchive, BUILD_JBR_API_SOURCES_JAR, \
DEPENDENCIES := $(JBR_API_GENSRC_FILES), \
SRCS := $(JBR_API_GENSRC_DIR), \
JAR := $(JBR_API_OUTPUT_DIR)/jbr-api-sources.jar, \
SUFFIXES := .java, \
BIN := $(JBR_API_BIN_DIR), \
))
# Grouped targets may not be supported, so hack dependencies: sources -> version file -> generated sources
$(JBR_API_VERSION_GENSRC): $(JBR_API_SRC_FILES) $(JBR_API_VERSION_PROPERTIES) $(JBR_API_TOOLS_DIR)/Gensrc.java
$(ECHO) Generating sources for JBR API
$(JAVA_CMD) $(JAVA_FLAGS_SMALL) "$(JBR_API_TOOLS_DIR)/Gensrc.java" \
"$(TOPDIR)/src" "$(JBR_API_OUTPUT_DIR)" "$(JBR_API_JBR_VERSION)"
$(JBR_API_GENSRC_FILES): $(JBR_API_VERSION_GENSRC)
$(TOUCH) $@
jbr-api-check-version: $(JBR_API_GENSRC_FILES) $(JBR_API_VERSION_PROPERTIES)
$(JAVA_CMD) $(JAVA_FLAGS_SMALL) "$(JBR_API_TOOLS_DIR)/CheckVersion.java" \
"$(JBR_API_ROOT_DIR)" "$(JBR_API_GENSRC_DIR)" "$(JBR_API_FAIL_ON_HASH_MISMATCH)"
jbr-api: $(BUILD_JBR_API) $(BUILD_JBR_API_SOURCES_JAR) jbr-api-check-version
.PHONY: jbr-api jbr-api-check-version
ifneq ($(JBR_API_CONF_FILE),)
$(JBR_API_CONF_FILE): $(JBR_API_GENSRC_FILES)
$(ECHO) "VERSION=`$(CAT) $(JBR_API_VERSION_GENSRC)`" > $(JBR_API_CONF_FILE)
$(ECHO) "JAR=$(JBR_API_OUTPUT_DIR)/jbr-api.jar" >> $(JBR_API_CONF_FILE)
$(ECHO) "SOURCES_JAR=$(JBR_API_OUTPUT_DIR)/jbr-api-sources.jar" >> $(JBR_API_CONF_FILE)
jbr-api: $(JBR_API_CONF_FILE)
.PHONY: $(JBR_API_CONF_FILE)
endif

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2022, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2023, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -747,6 +747,22 @@ ifeq ($(BUILD_FAILURE_HANDLER), true)
))
endif
ifeq ($(BUILD_JTREG_TEST_THREAD_FACTORY), true)
# Builds the test thread factory jtreg extension
$(eval $(call SetupTarget, build-test-test-thread-factory, \
MAKEFILE := test/BuildJtregTestThreadFactory, \
TARGET := build, \
DEPS := interim-langtools exploded-image, \
))
# Copies the jtreg test thread factory into the test image
$(eval $(call SetupTarget, test-image-test-thread-factory, \
MAKEFILE := test/BuildJtregTestThreadFactory, \
TARGET := images, \
DEPS := build-test-test-thread-factory, \
))
endif
$(eval $(call SetupTarget, build-microbenchmark, \
MAKEFILE := test/BuildMicrobenchmark, \
DEPS := interim-langtools exploded-image, \
@@ -1227,6 +1243,10 @@ ifeq ($(BUILD_FAILURE_HANDLER), true)
test-image: test-image-failure-handler
endif
ifeq ($(BUILD_JTREG_TEST_THREAD_FACTORY), true)
test-image: test-image-test-thread-factory
endif
ifneq ($(JMH_CORE_JAR), )
test-image: build-microbenchmark
endif
@@ -1394,14 +1414,6 @@ create-main-targets-include:
@$(ECHO) ALL_MAIN_TARGETS := $(sort $(ALL_TARGETS)) > \
$(MAKESUPPORT_OUTPUTDIR)/main-targets.gmk
################################################################################
# JBR API
$(eval $(call SetupTarget, jbr-api, \
MAKEFILE := JBRApi, \
TARGET := jbr-api \
))
################################################################################
# Hook to include the corresponding custom file, if present.
$(eval $(call IncludeCustomExtension, Main-post.gmk))

View File

@@ -93,6 +93,9 @@ endif
JTREG_FAILURE_HANDLER_DIR := $(TEST_IMAGE_DIR)/failure_handler
JTREG_FAILURE_HANDLER := $(JTREG_FAILURE_HANDLER_DIR)/jtregFailureHandler.jar
JTREG_TEST_THREAD_FACTORY_DIR := $(TEST_IMAGE_DIR)/jtreg_test_thread_factory
JTREG_TEST_THREAD_FACTORY_JAR := $(JTREG_TEST_THREAD_FACTORY_DIR)/jtregTestThreadFactory.jar
JTREG_FAILURE_HANDLER_TIMEOUT ?= 0
ifneq ($(wildcard $(JTREG_FAILURE_HANDLER)), )
@@ -200,7 +203,7 @@ $(eval $(call SetTestOpt,REPORT,JTREG))
$(eval $(call ParseKeywordVariable, JTREG, \
SINGLE_KEYWORDS := JOBS TIMEOUT_FACTOR FAILURE_HANDLER_TIMEOUT \
TEST_MODE ASSERT VERBOSE RETAIN MAX_MEM RUN_PROBLEM_LISTS \
TEST_MODE ASSERT VERBOSE RETAIN TEST_THREAD_FACTORY MAX_MEM RUN_PROBLEM_LISTS \
RETRY_COUNT REPEAT_COUNT MAX_OUTPUT REPORT $(CUSTOM_JTREG_SINGLE_KEYWORDS), \
STRING_KEYWORDS := OPTIONS JAVA_OPTIONS VM_OPTIONS KEYWORDS \
EXTRA_PROBLEM_LISTS LAUNCHER_OPTIONS \
@@ -592,16 +595,7 @@ define SetupRunMicroTestBody
endif
# Set library path for native dependencies
$1_JMH_JVM_ARGS := -Djava.library.path=$$(TEST_IMAGE_DIR)/micro/native \
--add-exports java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED \
--add-exports java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED \
--add-exports java.base/jdk.internal.classfile=ALL-UNNAMED \
--add-exports java.base/jdk.internal.classfile.attribute=ALL-UNNAMED \
--add-exports java.base/jdk.internal.classfile.constantpool=ALL-UNNAMED \
--add-exports java.base/jdk.internal.classfile.instruction=ALL-UNNAMED \
--add-exports java.base/jdk.internal.classfile.java.lang.constant=ALL-UNNAMED \
--add-exports java.base/jdk.internal.classfile.components=ALL-UNNAMED \
--add-exports java.base/jdk.internal.classfile.impl=ALL-UNNAMED
$1_JMH_JVM_ARGS := -Djava.library.path=$$(TEST_IMAGE_DIR)/micro/native
ifneq ($$(MICRO_VM_OPTIONS)$$(MICRO_JAVA_OPTIONS), )
$1_JMH_JVM_ARGS += $$(MICRO_VM_OPTIONS) $$(MICRO_JAVA_OPTIONS)
@@ -752,6 +746,7 @@ define SetupRunJtregTestBody
JTREG_VERBOSE ?= fail,error,summary
JTREG_RETAIN ?= fail,error
JTREG_TEST_THREAD_FACTORY ?=
JTREG_RUN_PROBLEM_LISTS ?= false
JTREG_RETRY_COUNT ?= 0
JTREG_REPEAT_COUNT ?= 0
@@ -765,6 +760,14 @@ define SetupRunJtregTestBody
endif
endif
ifneq ($$(JTREG_TEST_THREAD_FACTORY), )
$1_JTREG_BASIC_OPTIONS += -testThreadFactoryPath:$$(JTREG_TEST_THREAD_FACTORY_JAR)
$1_JTREG_BASIC_OPTIONS += -testThreadFactory:$$(JTREG_TEST_THREAD_FACTORY)
$1_JTREG_BASIC_OPTIONS += $$(addprefix $$(JTREG_PROBLEM_LIST_PREFIX), $$(wildcard \
$$(addprefix $$($1_TEST_ROOT)/, ProblemList-$$(JTREG_TEST_THREAD_FACTORY).txt) \
))
endif
ifneq ($$(JTREG_LAUNCHER_OPTIONS), )
$1_JTREG_LAUNCHER_OPTIONS += $$(JTREG_LAUNCHER_OPTIONS)
endif

View File

@@ -295,6 +295,11 @@ test-prebuilt:
@cd $(TOPDIR) && $(MAKE) $(MAKE_ARGS) -f make/RunTests.gmk run-test \
TEST="$(TEST)"
test-prebuilt-with-exit-code: test-prebuilt
@if test -f $(MAKESUPPORT_OUTPUTDIR)/exit-with-error ; then \
exit 1 ; \
fi
all: test-prebuilt
.PHONY: default all test-prebuilt

View File

@@ -60,6 +60,7 @@ AC_DEFUN([BASIC_CHECK_LEFTOVER_OVERRIDDEN],
###############################################################################
# Setup basic configuration paths, and platform-specific stuff related to PATHs.
# Make sure to only use tools set up in BASIC_SETUP_FUNDAMENTAL_TOOLS.
AC_DEFUN_ONCE([BASIC_SETUP_PATHS],
[
# Save the current directory this script was started from

View File

@@ -29,8 +29,8 @@
RECOMMENDED_PANDOC_VERSION=2.19.2
###############################################################################
# Setup the most fundamental tools that relies on not much else to set up,
# but is used by much of the early bootstrap code.
# Setup the most fundamental tools, used for setting up build platform and
# path handling.
AC_DEFUN_ONCE([BASIC_SETUP_FUNDAMENTAL_TOOLS],
[
# Bootstrapping: These tools are needed by UTIL_LOOKUP_PROGS
@@ -42,7 +42,28 @@ AC_DEFUN_ONCE([BASIC_SETUP_FUNDAMENTAL_TOOLS],
UTIL_CHECK_NONEMPTY(FILE)
AC_PATH_PROGS(LDD, ldd)
# First are all the fundamental required tools.
# Required tools
UTIL_REQUIRE_PROGS(ECHO, echo)
UTIL_REQUIRE_PROGS(TR, tr)
UTIL_REQUIRE_PROGS(UNAME, uname)
UTIL_REQUIRE_PROGS(WC, wc)
# Required tools with some special treatment
UTIL_REQUIRE_SPECIAL(GREP, [AC_PROG_GREP])
UTIL_REQUIRE_SPECIAL(EGREP, [AC_PROG_EGREP])
UTIL_REQUIRE_SPECIAL(SED, [AC_PROG_SED])
# Tools only needed on some platforms
UTIL_LOOKUP_PROGS(PATHTOOL, cygpath wslpath)
UTIL_LOOKUP_PROGS(CMD, cmd.exe, $PATH:/cygdrive/c/windows/system32:/mnt/c/windows/system32:/c/windows/system32)
])
###############################################################################
# Setup further tools that should be resolved early but after setting up
# build platform and path handling.
AC_DEFUN_ONCE([BASIC_SETUP_TOOLS],
[
# Required tools
UTIL_REQUIRE_PROGS(BASH, bash)
UTIL_REQUIRE_PROGS(CAT, cat)
UTIL_REQUIRE_PROGS(CHMOD, chmod)
@@ -50,7 +71,6 @@ AC_DEFUN_ONCE([BASIC_SETUP_FUNDAMENTAL_TOOLS],
UTIL_REQUIRE_PROGS(CUT, cut)
UTIL_REQUIRE_PROGS(DATE, date)
UTIL_REQUIRE_PROGS(DIFF, gdiff diff)
UTIL_REQUIRE_PROGS(ECHO, echo)
UTIL_REQUIRE_PROGS(EXPR, expr)
UTIL_REQUIRE_PROGS(FIND, find)
UTIL_REQUIRE_PROGS(GUNZIP, gunzip)
@@ -72,16 +92,10 @@ AC_DEFUN_ONCE([BASIC_SETUP_FUNDAMENTAL_TOOLS],
UTIL_REQUIRE_PROGS(TAR, gtar tar)
UTIL_REQUIRE_PROGS(TEE, tee)
UTIL_REQUIRE_PROGS(TOUCH, touch)
UTIL_REQUIRE_PROGS(TR, tr)
UTIL_REQUIRE_PROGS(UNAME, uname)
UTIL_REQUIRE_PROGS(WC, wc)
UTIL_REQUIRE_PROGS(XARGS, xargs)
# Then required tools that require some special treatment.
UTIL_REQUIRE_SPECIAL(GREP, [AC_PROG_GREP])
UTIL_REQUIRE_SPECIAL(EGREP, [AC_PROG_EGREP])
# Required tools with some special treatment
UTIL_REQUIRE_SPECIAL(FGREP, [AC_PROG_FGREP])
UTIL_REQUIRE_SPECIAL(SED, [AC_PROG_SED])
# Optional tools, we can do without them
UTIL_LOOKUP_PROGS(DF, df)
@@ -90,10 +104,8 @@ AC_DEFUN_ONCE([BASIC_SETUP_FUNDAMENTAL_TOOLS],
UTIL_LOOKUP_PROGS(READLINK, greadlink readlink)
UTIL_LOOKUP_PROGS(WHOAMI, whoami)
# These are only needed on some platforms
UTIL_LOOKUP_PROGS(PATHTOOL, cygpath wslpath)
# Tools only needed on some platforms
UTIL_LOOKUP_PROGS(LSB_RELEASE, lsb_release)
UTIL_LOOKUP_PROGS(CMD, cmd.exe, $PATH:/cygdrive/c/windows/system32:/mnt/c/windows/system32:/c/windows/system32)
# For compare.sh only
UTIL_LOOKUP_PROGS(CMP, cmp)

View File

@@ -89,8 +89,8 @@ AC_DEFUN([BASIC_SETUP_PATHS_WINDOWS],
WINENV_TEMP_DIR=$($PATHTOOL -u $($CMD /q /c echo %TEMP% 2> /dev/null) | $TR -d '\r\n')
AC_MSG_RESULT([$WINENV_TEMP_DIR])
if test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.wsl1" || test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.wsl2"; then
# Don't trust the current directory for WSL, but change to an OK temp dir
if test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.wsl2"; then
# Don't trust the current directory for WSL2, but change to an OK temp dir
cd "$WINENV_TEMP_DIR"
# Bring along confdefs.h or autoconf gets all confused
cp "$CONFIGURE_START_DIR/confdefs.h" "$WINENV_TEMP_DIR"
@@ -228,7 +228,7 @@ AC_DEFUN([BASIC_WINDOWS_FINALIZE_FIXPATH],
# Platform-specific finalization
AC_DEFUN([BASIC_WINDOWS_FINALIZE],
[
if test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.wsl1" || test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.wsl2"; then
if test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.wsl2"; then
# Change back from temp dir
cd $CONFIGURE_START_DIR
fi

View File

@@ -103,3 +103,7 @@ JVM_FEATURES_server := cds compiler1 compiler2 g1gc serialgc
override EXTRA_CFLAGS :=
override EXTRA_CXXFLAGS :=
override EXTRA_LDFLAGS :=
# hsdis is not needed
HSDIS_BACKEND := none
ENABLE_HSDIS_BUNDLING := false

View File

@@ -86,6 +86,7 @@ PLATFORM_SETUP_OPENJDK_BUILD_AND_TARGET
# Continue setting up basic stuff. Most remaining code require fundamental tools.
BASIC_SETUP_PATHS
BASIC_SETUP_TOOLS
BASIC_SETUP_BUILD_ENV
# Check if it's a pure open build or if custom sources are to be used.
@@ -222,6 +223,10 @@ JDKOPT_SETUP_UNDEFINED_BEHAVIOR_SANITIZER
# LeakSanitizer
JDKOPT_SETUP_LEAK_SANITIZER
# Fallback linker
# This needs to go before 'LIB_DETERMINE_DEPENDENCIES'
JDKOPT_SETUP_FALLBACK_LINKER
###############################################################################
#
# Check dependencies for external and internal libraries.
@@ -249,6 +254,7 @@ HOTSPOT_SETUP_MISC
###############################################################################
LIB_TESTS_ENABLE_DISABLE_FAILURE_HANDLER
LIB_TESTS_ENABLE_DISABLE_JTREG_TEST_THREAD_FACTORY
JDKOPT_ENABLE_DISABLE_GENERATE_CLASSLIST
JDKOPT_EXCLUDE_TRANSLATIONS

View File

@@ -51,6 +51,14 @@ AC_DEFUN([FLAGS_SETUP_SHARED_LIBS],
SET_SHARED_LIBRARY_NAME='-Wl,-install_name,@rpath/[$]1'
SET_SHARED_LIBRARY_MAPFILE='-Wl,-exported_symbols_list,[$]1'
elif test "x$OPENJDK_TARGET_OS" = xaix; then
# Linking is different on aix
SHARED_LIBRARY_FLAGS="-shared -Wl,-bM:SRE -Wl,-bnoentry"
SET_EXECUTABLE_ORIGIN=""
SET_SHARED_LIBRARY_ORIGIN=''
SET_SHARED_LIBRARY_NAME=''
SET_SHARED_LIBRARY_MAPFILE=''
else
# Default works for linux, might work on other platforms as well.
SHARED_LIBRARY_FLAGS='-shared'
@@ -206,7 +214,6 @@ AC_DEFUN([FLAGS_SETUP_WARNINGS],
WARNINGS_ENABLE_ALL="-Wall -Wextra -Wformat=2 $WARNINGS_ENABLE_ADDITIONAL"
DISABLED_WARNINGS="unknown-warning-option unused-parameter unused"
;;
xlc)
@@ -284,9 +291,15 @@ AC_DEFUN([FLAGS_SETUP_OPTIMIZATION],
C_O_FLAG_NONE="${C_O_FLAG_NONE} ${DISABLE_FORTIFY_CFLAGS}"
fi
elif test "x$TOOLCHAIN_TYPE" = xclang; then
C_O_FLAG_HIGHEST_JVM="-O3"
C_O_FLAG_HIGHEST="-O3"
C_O_FLAG_HI="-O3"
if test "x$OPENJDK_TARGET_OS" = xaix; then
C_O_FLAG_HIGHEST_JVM="-O3 -finline-functions"
C_O_FLAG_HIGHEST="-O3 -finline-functions"
C_O_FLAG_HI="-O3 -finline-functions"
else
C_O_FLAG_HIGHEST_JVM="-O3"
C_O_FLAG_HIGHEST="-O3"
C_O_FLAG_HI="-O3"
fi
C_O_FLAG_NORM="-O2"
C_O_FLAG_DEBUG_JVM="-O0"
C_O_FLAG_SIZE="-Os"
@@ -458,6 +471,9 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS_HELPER],
# so for debug we build with '-qpic=large -bbigtoc'.
DEBUG_CFLAGS_JVM="-qpic=large"
fi
if test "x$TOOLCHAIN_TYPE" = xclang && test "x$OPENJDK_TARGET_OS" = xaix; then
DEBUG_CFLAGS_JVM="-fpic -mcmodel=large"
fi
fi
if test "x$DEBUG_LEVEL" != xrelease; then
@@ -493,8 +509,14 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS_HELPER],
-fvisibility=hidden -fno-strict-aliasing -fno-omit-frame-pointer"
fi
if test "x$TOOLCHAIN_TYPE" = xclang && test "x$OPENJDK_TARGET_OS" = xaix; then
# clang compiler on aix needs -ffunction-sections
TOOLCHAIN_CFLAGS_JVM="$TOOLCHAIN_CFLAGS_JVM -ffunction-sections -ftls-model -fno-math-errno -fstack-protector"
TOOLCHAIN_CFLAGS_JDK="-ffunction-sections -fsigned-char -fstack-protector"
fi
if test "x$TOOLCHAIN_TYPE" = xgcc; then
TOOLCHAIN_CFLAGS_JVM="$TOOLCHAIN_CFLAGS_JVM -fcheck-new -fstack-protector"
TOOLCHAIN_CFLAGS_JVM="$TOOLCHAIN_CFLAGS_JVM -fstack-protector"
TOOLCHAIN_CFLAGS_JDK="-pipe -fstack-protector"
# reduce lib size on linux in link step, this needs also special compile flags
# do this on s390x also for libjvm (where serviceability agent is not supported)
@@ -601,6 +623,9 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS_HELPER],
if test "x$TOOLCHAIN_TYPE" = xgcc || test "x$TOOLCHAIN_TYPE" = xclang; then
PICFLAG="-fPIC"
PIEFLAG="-fPIE"
elif test "x$TOOLCHAIN_TYPE" = xclang && test "x$OPENJDK_TARGET_OS" = xaix; then
JVM_PICFLAG="-fpic -mcmodel=large -Wl,-bbigtoc
JDK_PICFLAG="-fpic
elif test "x$TOOLCHAIN_TYPE" = xxlc; then
# '-qpic' defaults to 'qpic=small'. This means that the compiler generates only
# one instruction for accessing the TOC. If the TOC grows larger than 64K, the linker
@@ -746,6 +771,9 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS_CPU_DEP],
$1_CFLAGS_CPU_JDK="${$1_CFLAGS_CPU_JDK} -fno-omit-frame-pointer"
fi
fi
if test "x$OPENJDK_TARGET_OS" = xaix; then
$1_CFLAGS_CPU="-mcpu=pwr8"
fi
elif test "x$TOOLCHAIN_TYPE" = xxlc; then
if test "x$FLAGS_CPU" = xppc64; then

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2022, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2023, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -75,7 +75,11 @@ AC_DEFUN([FLAGS_SETUP_LDFLAGS_HELPER],
elif test "x$TOOLCHAIN_TYPE" = xclang; then
BASIC_LDFLAGS_JVM_ONLY="-mno-omit-leaf-frame-pointer -mstack-alignment=16 \
-fPIC"
if test "x$OPENJDK_TARGET_OS" = xaix; then
BASIC_LDFLAGS="-Wl,-b64 -Wl,-brtl -Wl,-bnorwexec -Wl,-bnolibpath -Wl,-bnoexpall \
-Wl,-bernotok -Wl,-bdatapsize:64k -Wl,-btextpsize:64k -Wl,-bstackpsize:64k"
BASIC_LDFLAGS_JVM_ONLY="$BASIC_LDFLAGS_JVM_ONLY -Wl,-lC_r -Wl,-bbigtoc"
fi
elif test "x$TOOLCHAIN_TYPE" = xxlc; then
BASIC_LDFLAGS="-b64 -brtl -bnorwexec -bnolibpath -bnoexpall -bernotok -btextpsize:64K \
-bdatapsize:64K -bstackpsize:64K"
@@ -88,7 +92,8 @@ AC_DEFUN([FLAGS_SETUP_LDFLAGS_HELPER],
BASIC_LDFLAGS_JVM_ONLY="-opt:icf,8 -subsystem:windows"
fi
if test "x$TOOLCHAIN_TYPE" = xgcc || test "x$TOOLCHAIN_TYPE" = xclang; then
if (test "x$TOOLCHAIN_TYPE" = xgcc || test "x$TOOLCHAIN_TYPE" = xclang) \
&& test "x$OPENJDK_TARGET_OS" != xaix; then
if test -n "$HAS_NOEXECSTACK"; then
BASIC_LDFLAGS="$BASIC_LDFLAGS -Wl,-z,noexecstack"
fi
@@ -116,6 +121,14 @@ AC_DEFUN([FLAGS_SETUP_LDFLAGS_HELPER],
if test "x$DEBUG_LEVEL" != xrelease; then
DEBUGLEVEL_LDFLAGS_JVM_ONLY="$DEBUGLEVEL_LDFLAGS_JVM_ONLY -bbigtoc"
fi
elif test "x$TOOLCHAIN_TYPE" = xclang && test "x$OPENJDK_TARGET_OS" = xaix; then
# We need '-fpic' or '-fpic -mcmodel=large -Wl,-bbigtoc' if the TOC overflows.
# Hotspot now overflows its 64K TOC (currently only for debug),
# so we build with '-fpic -mcmodel=large -Wl,-bbigtoc'.
if test "x$DEBUG_LEVEL" != xrelease; then
DEBUGLEVEL_LDFLAGS_JVM_ONLY="$DEBUGLEVEL_LDFLAGS_JVM_ONLY -Wl,-bbigtoc"
fi
fi
# Setup LDFLAGS for linking executables

View File

@@ -234,31 +234,6 @@ AC_DEFUN_ONCE([JDKOPT_SETUP_JDK_OPTIONS],
fi
AC_SUBST(HOTSPOT_OVERRIDE_LIBPATH)
# Should we build the client for the JAWS screen reader?
if test "x$OPENJDK_TARGET_OS" = xwindows; then
AC_MSG_CHECKING([if JAWS client support is enabled])
A11Y_JAWS_ANNOUNCING_ENABLED=true
AC_ARG_ENABLE(
[jaws-client],
[AS_HELP_STRING([--disable-jaws-client], [Set to disable to exclude the client for the JAWS screen reader from the build])],
[
if test "x$ENABLE_HEADLESS_ONLY" = xtrue; then
AC_MSG_WARN([--[enable|disable]-jaws-client[=*] flags are ignored for headless builds])
elif test "x$enableval" != xyes; then
A11Y_JAWS_ANNOUNCING_ENABLED=false
fi
]
)
if test "x$ENABLE_HEADLESS_ONLY" = xtrue; then
A11Y_JAWS_ANNOUNCING_ENABLED=false
fi
AC_MSG_RESULT([$A11Y_JAWS_ANNOUNCING_ENABLED])
else
A11Y_JAWS_ANNOUNCING_ENABLED=false
fi
AC_SUBST(A11Y_JAWS_ANNOUNCING_ENABLED)
])
###############################################################################
@@ -928,3 +903,22 @@ AC_DEFUN([JDKOPT_SETUP_MACOSX_SIGNING],
AC_SUBST(MACOSX_CODESIGN_MODE)
fi
])
################################################################################
#
# fallback linker
#
AC_DEFUN_ONCE([JDKOPT_SETUP_FALLBACK_LINKER],
[
FALLBACK_LINKER_DEFAULT=false
if HOTSPOT_CHECK_JVM_VARIANT(zero); then
FALLBACK_LINKER_DEFAULT=true
fi
UTIL_ARG_ENABLE(NAME: fallback-linker, DEFAULT: $FALLBACK_LINKER_DEFAULT,
RESULT: ENABLE_FALLBACK_LINKER,
DESC: [enable libffi-based fallback implementation of java.lang.foreign.Linker],
CHECKING_MSG: [if fallback linker enabled])
AC_SUBST(ENABLE_FALLBACK_LINKER)
])

View File

@@ -1,121 +0,0 @@
#
# Copyright (c) 2022, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2022, JetBrains s.r.o.. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#
################################################################################
# Setup nvdacontrollerclient (The library for communication with
# NVDA - a screen reader for Microsoft Windows)
################################################################################
AC_DEFUN_ONCE([LIB_SETUP_NVDACONTROLLERCLIENT], [
# To enable NVDA, user specifies neither --with-nvdacontrollerclient or
# a pair (--with-nvdacontrollerclient-include, --with-nvdacontrollerclient-lib)
AC_ARG_WITH(nvdacontrollerclient, [AS_HELP_STRING([--with-nvdacontrollerclient],
[specify prefix directory for the NVDA Controller Client library package
(expecting headers and libs under PATH/<target-arch>/)])])
AC_ARG_WITH(nvdacontrollerclient-include, [AS_HELP_STRING([--with-nvdacontrollerclient-include],
[specify directory for the NVDA Controller Client include files])])
AC_ARG_WITH(nvdacontrollerclient-lib, [AS_HELP_STRING([--with-nvdacontrollerclient-lib],
[specify directory for the NVDA Controller Client library])])
NVDACONTROLLERCLIENT_FOUND=no
NVDACONTROLLERCLIENT_LIB=
NVDACONTROLLERCLIENT_DLL=
NVDACONTROLLERCLIENT_CFLAGS=
if test "x${NEEDS_LIB_NVDACONTROLLERCLIENT}" = "xtrue" ; then
if (test "x${with_nvdacontrollerclient_include}" = "x" && test "x${with_nvdacontrollerclient_lib}" != "x") || \
(test "x${with_nvdacontrollerclient_include}" != "x" && test "x${with_nvdacontrollerclient_lib}" = "x") ; then
AC_MSG_ERROR([Must specify both or neither of --with-nvdacontrollerclient-include and --with-nvdacontrollerclient-lib])
elif (test "x${with_nvdacontrollerclient}" != "x" && test "x${with_nvdacontrollerclient_include}" != "x") ; then
AC_MSG_ERROR([Must specify either --with-nvdacontrollerclient or a pair (--with-nvdacontrollerclient-include, --with-nvdacontrollerclient-lib)])
fi
if (test "x${with_nvdacontrollerclient}" != "x") || \
(test "x${with_nvdacontrollerclient_include}" != "x" && test "x${with_nvdacontrollerclient_lib}" != "x") ; then
AC_MSG_CHECKING([for nvdacontrollerclient])
if test "x${OPENJDK_TARGET_OS}" != "xwindows" ; then
AC_MSG_ERROR([--with-nvdacontrollerclient[-*] flags are applicable only to Windows builds])
fi
if test "x${OPENJDK_TARGET_CPU_ARCH}" = "xaarch64" ; then
NVDACONTROLLERCLIENT_BIN_BASENAME="nvdaControllerClient32"
NVDACONTROLLERCLIENT_ARCHDIR="arm64"
elif test "x${OPENJDK_TARGET_CPU_ARCH}" = "xx86" && test "x${OPENJDK_TARGET_CPU_BITS}" = "x64" ; then
NVDACONTROLLERCLIENT_BIN_BASENAME="nvdaControllerClient64"
NVDACONTROLLERCLIENT_ARCHDIR="x64"
elif test "x${OPENJDK_TARGET_CPU_ARCH}" = "xx86" && test "x${OPENJDK_TARGET_CPU_BITS}" = "x32" ; then
NVDACONTROLLERCLIENT_BIN_BASENAME="nvdaControllerClient32"
NVDACONTROLLERCLIENT_ARCHDIR="x86"
else
AC_MSG_ERROR([The nvdacontrollerclient library exists only for x86_32, x86_64, AArch64 architectures])
fi
if test "x${with_nvdacontrollerclient}" != "x" ; then
# NVDACONTROLLERCLIENT_ARCHDIR is used only here
NVDACONTROLLERCLIENT_INC_PATH="${with_nvdacontrollerclient}/${NVDACONTROLLERCLIENT_ARCHDIR}"
NVDACONTROLLERCLIENT_BIN_PATH="${with_nvdacontrollerclient}/${NVDACONTROLLERCLIENT_ARCHDIR}"
else
NVDACONTROLLERCLIENT_INC_PATH="${with_nvdacontrollerclient_include}"
NVDACONTROLLERCLIENT_BIN_PATH="${with_nvdacontrollerclient_lib}"
fi
POTENTIAL_NVDACONTROLLERCLIENT_DLL="${NVDACONTROLLERCLIENT_BIN_PATH}/${NVDACONTROLLERCLIENT_BIN_BASENAME}.dll"
POTENTIAL_NVDACONTROLLERCLIENT_LIB="${NVDACONTROLLERCLIENT_BIN_PATH}/${NVDACONTROLLERCLIENT_BIN_BASENAME}.lib"
POTENTIAL_NVDACONTROLLERCLIENT_EXP="${NVDACONTROLLERCLIENT_BIN_PATH}/${NVDACONTROLLERCLIENT_BIN_BASENAME}.exp"
if ! test -s "${POTENTIAL_NVDACONTROLLERCLIENT_DLL}" || \
! test -s "${POTENTIAL_NVDACONTROLLERCLIENT_LIB}" || \
! test -s "${POTENTIAL_NVDACONTROLLERCLIENT_EXP}" ; then
AC_MSG_ERROR([Could not find ${NVDACONTROLLERCLIENT_BIN_BASENAME}.dll and/or ${NVDACONTROLLERCLIENT_BIN_BASENAME}.lib and/or ${NVDACONTROLLERCLIENT_BIN_BASENAME}.exp inside ${NVDACONTROLLERCLIENT_BIN_PATH}])
fi
if ! test -s "${NVDACONTROLLERCLIENT_INC_PATH}/nvdaController.h" ; then
AC_MSG_ERROR([Could not find the header file nvdaController.h inside ${NVDACONTROLLERCLIENT_INC_PATH}])
fi
NVDACONTROLLERCLIENT_CFLAGS="-I${NVDACONTROLLERCLIENT_INC_PATH}"
NVDACONTROLLERCLIENT_DLL="${POTENTIAL_NVDACONTROLLERCLIENT_DLL}"
NVDACONTROLLERCLIENT_LIB="${POTENTIAL_NVDACONTROLLERCLIENT_LIB}"
NVDACONTROLLERCLIENT_FOUND=yes
AC_MSG_RESULT([includes at ${NVDACONTROLLERCLIENT_INC_PATH} ; binaries at ${NVDACONTROLLERCLIENT_BIN_PATH}])
fi
elif test "x${with_nvdacontrollerclient}" != "x" || \
test "x${with_nvdacontrollerclient_include}" != "x" || test "x${with_nvdacontrollerclient_lib}" != "x" ; then
AC_MSG_WARN([[nvdacontrollerclient is not used, so --with-nvdacontrollerclient[-*] is ignored]])
fi
if test "x${NVDACONTROLLERCLIENT_FOUND}" = "xyes" ; then
A11Y_NVDA_ANNOUNCING_ENABLED=true
else
A11Y_NVDA_ANNOUNCING_ENABLED=false
fi
AC_SUBST(A11Y_NVDA_ANNOUNCING_ENABLED)
AC_SUBST(NVDACONTROLLERCLIENT_CFLAGS)
AC_SUBST(NVDACONTROLLERCLIENT_DLL)
AC_SUBST(NVDACONTROLLERCLIENT_LIB)
])

View File

@@ -1,92 +0,0 @@
#
# Copyright (c) 2022, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2022, JetBrains s.r.o.. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#
################################################################################
# Setup speechd
################################################################################
AC_DEFUN_ONCE([LIB_SETUP_SPEECHD],
[
AC_ARG_WITH(speechd, [AS_HELP_STRING([--with-speechd],
[specify prefix directory for the libspeechd package
(expecting the headers under PATH/include); required for AccessibleAnnouncer to work])])
AC_ARG_WITH(speechd-include, [AS_HELP_STRING([--with-speechd-include],
[specify directory for the speechd include files])])
if test "x$NEEDS_LIB_SPEECHD" = xfalse || test "x${with_speechd}" = xno || \
test "x${with_speechd_include}" = xno; then
if (test "x${with_speechd}" != x && test "x${with_speechd}" != xno) || \
(test "x${with_speechd_include}" != x && test "x${with_speechd_include}" != xno); then
AC_MSG_WARN([[speechd not used, so --with-speechd[-*] is ignored]])
fi
A11Y_SPEECHD_ANNOUNCING_ENABLED=false
SPEECHD_CFLAGS=
SPEECHD_LIBS=
else
SPEECHD_FOUND=no
if test "x${with_speechd}" != x && test "x${with_speechd}" != xyes; then
AC_MSG_CHECKING([for speechd header and library])
if test -s "${with_speechd}/include/libspeechd.h"; then
SPEECHD_CFLAGS="-I${with_speechd}/include"
SPEECHD_LIBS="-L${with_speechd}/lib -lspeechd"
SPEECHD_FOUND=yes
AC_MSG_RESULT([$SPEECHD_FOUND])
else
AC_MSG_ERROR([Can't find 'include/libspeechd.h' under ${with_speechd} given with the --with-speechd option.])
fi
fi
if test "x${with_speechd_include}" != x; then
AC_MSG_CHECKING([for speechd headers])
if test -s "${with_speechd_include}/libspeechd.h"; then
SPEECHD_CFLAGS="-I${with_speechd_include}"
SPEECHD_FOUND=yes
AC_MSG_RESULT([$SPEECHD_FOUND])
else
AC_MSG_ERROR([Can't find 'include/libspeechd.h' under ${with_speechd} given with the --with-speechd-include option.])
fi
fi
if test "x$SPEECHD_FOUND" = xno; then
# Are the libspeechd headers installed in the default /usr/include location?
AC_CHECK_HEADERS([libspeechd.h],
[ SPEECHD_FOUND=yes ],
[ SPEECHD_FOUND=no; break ]
)
if test "x$SPEECHD_FOUND" = xyes; then
SPEECHD_CFLAGS=
SPEECHD_LIBS="-lspeechd"
fi
fi
if test "x$SPEECHD_FOUND" = xno; then
A11Y_SPEECHD_ANNOUNCING_ENABLED=false
else
A11Y_SPEECHD_ANNOUNCING_ENABLED=true
fi
fi
AC_SUBST(A11Y_SPEECHD_ANNOUNCING_ENABLED)
AC_SUBST(SPEECHD_CFLAGS)
AC_SUBST(SPEECHD_LIBS)
])

View File

@@ -28,7 +28,7 @@
################################################################################
# Minimum supported versions
JTREG_MINIMUM_VERSION=7.1.1
JTREG_MINIMUM_VERSION=7.2
GTEST_MINIMUM_VERSION=1.13.0
###############################################################################
@@ -301,3 +301,22 @@ AC_DEFUN_ONCE([LIB_TESTS_ENABLE_DISABLE_FAILURE_HANDLER],
])
AC_SUBST(BUILD_FAILURE_HANDLER)
])
AC_DEFUN_ONCE([LIB_TESTS_ENABLE_DISABLE_JTREG_TEST_THREAD_FACTORY],
[
UTIL_ARG_ENABLE(NAME: jtreg-test-thread-factory, DEFAULT: auto,
RESULT: BUILD_JTREG_TEST_THREAD_FACTORY,
DESC: [enable building of the jtreg test thread factory],
DEFAULT_DESC: [enabled if jtreg is present],
CHECKING_MSG: [if the jtreg test thread factory should be built],
CHECK_AVAILABLE: [
AC_MSG_CHECKING([if the jtreg test thread factory is available])
if test "x$JT_HOME" != "x"; then
AC_MSG_RESULT([yes])
else
AVAILABLE=false
AC_MSG_RESULT([no (jtreg not present)])
fi
])
AC_SUBST(BUILD_JTREG_TEST_THREAD_FACTORY)
])

View File

@@ -33,9 +33,7 @@ m4_include([lib-freetype.m4])
m4_include([lib-hsdis.m4])
m4_include([lib-std.m4])
m4_include([lib-x11.m4])
m4_include([lib-fontconfig.m4])
m4_include([lib-speechd.m4])
m4_include([lib-nvdacontrollerclient.m4])
m4_include([lib-tests.m4])
################################################################################
@@ -47,16 +45,10 @@ AC_DEFUN_ONCE([LIB_DETERMINE_DEPENDENCIES],
if test "x$OPENJDK_TARGET_OS" = xwindows || test "x$OPENJDK_TARGET_OS" = xmacosx; then
# No X11 support on windows or macosx
NEEDS_LIB_X11=false
NEEDS_LIB_SPEECHD=false
elif test "x$ENABLE_HEADLESS_ONLY" = xtrue; then
# No X11 support needed when building headless only
NEEDS_LIB_X11=false
NEEDS_LIB_SPEECHD=false
else
# All other instances need X11, even if building headless only, libawt still
# needs X11 headers.
NEEDS_LIB_X11=true
NEEDS_LIB_SPEECHD=true
fi
# Check if fontconfig is needed
@@ -90,18 +82,11 @@ AC_DEFUN_ONCE([LIB_DETERMINE_DEPENDENCIES],
fi
# Check if ffi is needed
if HOTSPOT_CHECK_JVM_VARIANT(zero); then
if HOTSPOT_CHECK_JVM_VARIANT(zero) || test "x$ENABLE_FALLBACK_LINKER" = "xtrue"; then
NEEDS_LIB_FFI=true
else
NEEDS_LIB_FFI=false
fi
# Check if nvdacontrollerclient is needed
if test "x$OPENJDK_TARGET_OS" = xwindows && test "x$ENABLE_HEADLESS_ONLY" != xtrue; then
NEEDS_LIB_NVDACONTROLLERCLIENT=true
else
NEEDS_LIB_NVDACONTROLLERCLIENT=false
fi
])
################################################################################
@@ -147,8 +132,7 @@ AC_DEFUN_ONCE([LIB_SETUP_LIBRARIES],
LIB_SETUP_LIBFFI
LIB_SETUP_MISC_LIBS
LIB_SETUP_X11
LIB_SETUP_SPEECHD
LIB_SETUP_NVDACONTROLLERCLIENT
LIB_TESTS_SETUP_GTEST
BASIC_JDKLIB_LIBS=""

View File

@@ -640,6 +640,7 @@ AC_DEFUN([PLATFORM_SET_MODULE_TARGET_OS_VALUES],
])
#%%% Build and target systems %%%
# Make sure to only use tools set up in BASIC_SETUP_FUNDAMENTAL_TOOLS.
AC_DEFUN_ONCE([PLATFORM_SETUP_OPENJDK_BUILD_AND_TARGET],
[
# Figure out the build and target systems. # Note that in autoconf terminology, "build" is obvious, but "target"
@@ -656,6 +657,22 @@ AC_DEFUN_ONCE([PLATFORM_SETUP_OPENJDK_BUILD_AND_TARGET],
PLATFORM_SET_MODULE_TARGET_OS_VALUES
PLATFORM_SET_RELEASE_FILE_OS_VALUES
PLATFORM_SETUP_LEGACY_VARS
PLATFORM_CHECK_DEPRECATION
])
AC_DEFUN_ONCE([PLATFORM_CHECK_DEPRECATION],
[
AC_ARG_ENABLE(deprecated-ports, [AS_HELP_STRING([--enable-deprecated-ports@<:@=yes/no@:>@],
[Suppress the error when configuring for a deprecated port @<:@no@:>@])])
AC_REQUIRE([PLATFORM_EXTRACT_TARGET_AND_BUILD])
if test "x$OPENJDK_TARGET_OS" = xwindows && test "x$OPENJDK_TARGET_CPU" = xx86; then
if test "x$enable_deprecated_ports" = "xyes"; then
AC_MSG_WARN([The Windows 32-bit x86 port is deprecated and may be removed in a future release.])
else
AC_MSG_ERROR(m4_normalize([The Windows 32-bit x86 port is deprecated and may be removed in a future release.
Use --enable-deprecated-ports=yes to suppress this error.]))
fi
fi
])
AC_DEFUN_ONCE([PLATFORM_SETUP_OPENJDK_BUILD_OS_VERSION],
@@ -723,7 +740,7 @@ AC_DEFUN_ONCE([PLATFORM_SETUP_OPENJDK_TARGET_ENDIANNESS],
[
###############################################################################
#
# Is the target little of big endian?
# Is the target little or big endian?
#
AC_C_BIGENDIAN([ENDIAN="big"],[ENDIAN="little"],[ENDIAN="unknown"],[ENDIAN="universal_endianness"])

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2022, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2023, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -358,6 +358,8 @@ BUILDJDK_OUTPUTDIR=$(OUTPUTDIR)/buildjdk
BUILD_FAILURE_HANDLER := @BUILD_FAILURE_HANDLER@
BUILD_JTREG_TEST_THREAD_FACTORY := @BUILD_JTREG_TEST_THREAD_FACTORY@
ENABLE_GENERATE_CLASSLIST := @ENABLE_GENERATE_CLASSLIST@
EXCLUDE_TRANSLATIONS := @EXCLUDE_TRANSLATIONS@
@@ -407,6 +409,9 @@ TEST_JOBS?=@TEST_JOBS@
DEFAULT_MAKE_TARGET:=@DEFAULT_MAKE_TARGET@
DEFAULT_LOG:=@DEFAULT_LOG@
# Fallback linker
ENABLE_FALLBACK_LINKER:=@ENABLE_FALLBACK_LINKER@
FREETYPE_TO_USE:=@FREETYPE_TO_USE@
FREETYPE_LIBS:=@FREETYPE_LIBS@
FREETYPE_CFLAGS:=@FREETYPE_CFLAGS@
@@ -460,20 +465,6 @@ UBSAN_LDFLAGS:=@UBSAN_LDFLAGS@
X_CFLAGS:=@X_CFLAGS@
X_LIBS:=@X_LIBS@
# Linux speechd a11y announcer
A11Y_SPEECHD_ANNOUNCING_ENABLED:=@A11Y_SPEECHD_ANNOUNCING_ENABLED@
SPEECHD_CFLAGS:=@SPEECHD_CFLAGS@
SPEECHD_LIBS:=@SPEECHD_LIBS@
# Windows NVDA a11y announcer
A11Y_NVDA_ANNOUNCING_ENABLED:=@A11Y_NVDA_ANNOUNCING_ENABLED@
NVDACONTROLLERCLIENT_CFLAGS:=@NVDACONTROLLERCLIENT_CFLAGS@
NVDACONTROLLERCLIENT_DLL:=@NVDACONTROLLERCLIENT_DLL@
NVDACONTROLLERCLIENT_LIB:=@NVDACONTROLLERCLIENT_LIB@
# Windows the client for the JAWS screen reader
A11Y_JAWS_ANNOUNCING_ENABLED:=@A11Y_JAWS_ANNOUNCING_ENABLED@
# The lowest required version of macosx
MACOSX_VERSION_MIN=@MACOSX_VERSION_MIN@
# The highest allowed version of macosx
@@ -704,6 +695,8 @@ INTERIM_LANGTOOLS_ADD_EXPORTS := \
--add-exports java.base/sun.invoke.util=jdk.compiler.interim \
--add-exports java.base/jdk.internal.javac=java.compiler.interim \
--add-exports java.base/jdk.internal.javac=jdk.compiler.interim \
--add-exports jdk.internal.opt/jdk.internal.opt=jdk.compiler.interim \
--add-exports jdk.internal.opt/jdk.internal.opt=jdk.javadoc.interim \
#
INTERIM_LANGTOOLS_MODULES_COMMA := $(strip $(subst $(SPACE),$(COMMA),$(strip \
$(INTERIM_LANGTOOLS_MODULES))))

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2022, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2023, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -40,7 +40,7 @@ VALID_TOOLCHAINS_all="gcc clang xlc microsoft"
# These toolchains are valid on different platforms
VALID_TOOLCHAINS_linux="gcc clang"
VALID_TOOLCHAINS_macosx="clang"
VALID_TOOLCHAINS_aix="xlc"
VALID_TOOLCHAINS_aix="xlc clang"
VALID_TOOLCHAINS_windows="microsoft"
# Toolchain descriptions
@@ -53,7 +53,7 @@ TOOLCHAIN_DESCRIPTION_xlc="IBM XL C/C++"
TOOLCHAIN_MINIMUM_VERSION_clang="3.5"
TOOLCHAIN_MINIMUM_VERSION_gcc="6.0"
TOOLCHAIN_MINIMUM_VERSION_microsoft="19.28.0.0" # VS2019 16.8, aka MSVC 14.28
TOOLCHAIN_MINIMUM_VERSION_xlc=""
TOOLCHAIN_MINIMUM_VERSION_xlc="16.1.0.0011"
# Minimum supported linker versions, empty means unspecified
TOOLCHAIN_MINIMUM_LD_VERSION_gcc="2.18"
@@ -234,6 +234,25 @@ AC_DEFUN_ONCE([TOOLCHAIN_DETERMINE_TOOLCHAIN_TYPE],
# First toolchain type in the list is the default
DEFAULT_TOOLCHAIN=${VALID_TOOLCHAINS%% *}
# On AIX the default toolchain depends on the installed (found) compiler
# xlclang++ -> xlc toolchain
# ibm-clang++_r -> clang toolchain
# The compiler is searched on the PATH and TOOLCHAIN_PATH
# xlclang++ has precedence over ibm-clang++_r if both are installed
if test "x$OPENJDK_TARGET_OS" = xaix; then
DEFAULT_TOOLCHAIN="clang"
if test "x$TOOLCHAIN_PATH" != x; then
if test -e ${TOOLCHAIN_PATH}/xlclang++; then
DEFAULT_TOOLCHAIN="xlc"
fi
else
UTIL_LOOKUP_PROGS(XLCLANG_TEST_PATH, xlclang++)
if test "x$XLCLANG_TEST_PATH" != x; then
DEFAULT_TOOLCHAIN="xlc"
fi
fi
fi
if test "x$with_toolchain_type" = xlist; then
# List all toolchains
AC_MSG_NOTICE([The following toolchains are valid on this platform:])
@@ -263,22 +282,40 @@ AC_DEFUN_ONCE([TOOLCHAIN_DETERMINE_TOOLCHAIN_TYPE],
if test "x$TOOLCHAIN_PATH" != x; then
XLC_TEST_PATH=${TOOLCHAIN_PATH}/
fi
XLCLANG_VERSION_OUTPUT=`${XLC_TEST_PATH}xlclang++ -qversion 2>&1 | $HEAD -n 1`
$ECHO "$XLCLANG_VERSION_OUTPUT" | $GREP "IBM XL C/C++ for AIX" > /dev/null
if test $? -eq 0; then
AC_MSG_NOTICE([xlclang++ output: $XLCLANG_VERSION_OUTPUT])
if test "x$TOOLCHAIN_TYPE" = xclang; then
TOOLCHAIN_DESCRIPTION_clang="IBM Open XL C/C++"
XLCLANG_VERSION_OUTPUT=`${XLC_TEST_PATH}ibm-clang++_r --version 2>&1 | $HEAD -n 1`
$ECHO "$XLCLANG_VERSION_OUTPUT" | $GREP "IBM Open XL C/C++ for AIX" > /dev/null
if test $? -eq 0; then
AC_MSG_NOTICE([ibm-clang++_r output: $XLCLANG_VERSION_OUTPUT])
else
AC_MSG_ERROR([ibm-clang++_r version output check failed, output: $XLCLANG_VERSION_OUTPUT])
fi
else
AC_MSG_ERROR([xlclang++ version output check failed, output: $XLCLANG_VERSION_OUTPUT])
XLCLANG_VERSION_OUTPUT=`${XLC_TEST_PATH}xlclang++ -qversion 2>&1 | $HEAD -n 1`
$ECHO "$XLCLANG_VERSION_OUTPUT" | $GREP "IBM XL C/C++ for AIX" > /dev/null
if test $? -eq 0; then
AC_MSG_NOTICE([xlclang++ output: $XLCLANG_VERSION_OUTPUT])
else
AC_MSG_ERROR([xlclang++ version output check failed, output: $XLCLANG_VERSION_OUTPUT])
fi
fi
fi
TOOLCHAIN_CC_BINARY_clang="clang"
if test "x$OPENJDK_TARGET_OS" = xaix; then
TOOLCHAIN_CC_BINARY_clang="ibm-clang_r"
else
TOOLCHAIN_CC_BINARY_clang="clang"
fi
TOOLCHAIN_CC_BINARY_gcc="gcc"
TOOLCHAIN_CC_BINARY_microsoft="cl"
TOOLCHAIN_CC_BINARY_xlc="xlclang"
TOOLCHAIN_CXX_BINARY_clang="clang++"
if test "x$OPENJDK_TARGET_OS" = xaix; then
TOOLCHAIN_CXX_BINARY_clang="ibm-clang++_r"
else
TOOLCHAIN_CXX_BINARY_clang="clang++"
fi
TOOLCHAIN_CXX_BINARY_gcc="g++"
TOOLCHAIN_CXX_BINARY_microsoft="cl"
TOOLCHAIN_CXX_BINARY_xlc="xlclang++"
@@ -384,7 +421,7 @@ AC_DEFUN([TOOLCHAIN_EXTRACT_COMPILER_VERSION],
# Collapse compiler output into a single line
COMPILER_VERSION_STRING=`$ECHO $COMPILER_VERSION_OUTPUT`
COMPILER_VERSION_NUMBER=`$ECHO $COMPILER_VERSION_OUTPUT | \
$SED -e 's/^.*, V\(@<:@1-9@:>@@<:@0-9.@:>@*\).*$/\1/'`
$SED -e 's/^.*Version: \(@<:@1-9@:>@@<:@0-9.@:>@*\).*$/\1/'`
elif test "x$TOOLCHAIN_TYPE" = xmicrosoft; then
# There is no specific version flag, but all output starts with a version string.
# First line typically looks something like:
@@ -632,7 +669,7 @@ AC_DEFUN_ONCE([TOOLCHAIN_DETECT_TOOLCHAIN_CORE],
if test "x$TOOLCHAIN_MINIMUM_VERSION" != x; then
TOOLCHAIN_CHECK_COMPILER_VERSION(VERSION: $TOOLCHAIN_MINIMUM_VERSION,
IF_OLDER_THAN: [
AC_MSG_WARN([You are using $TOOLCHAIN_TYPE older than $TOOLCHAIN_MINIMUM_VERSION. This is not a supported configuration.])
AC_MSG_WARN([You are using $TOOLCHAIN_TYPE $CC_VERSION_NUMBER which is older than $TOOLCHAIN_MINIMUM_VERSION. This is not a supported configuration.])
]
)
fi
@@ -966,7 +1003,11 @@ AC_DEFUN_ONCE([TOOLCHAIN_MISC_CHECKS],
# Setup hotspot lecagy names for toolchains
HOTSPOT_TOOLCHAIN_TYPE=$TOOLCHAIN_TYPE
if test "x$TOOLCHAIN_TYPE" = xclang; then
HOTSPOT_TOOLCHAIN_TYPE=gcc
if test "x$OPENJDK_TARGET_OS" = xaix; then
HOTSPOT_TOOLCHAIN_TYPE=xlc
else
HOTSPOT_TOOLCHAIN_TYPE=gcc
fi
elif test "x$TOOLCHAIN_TYPE" = xmicrosoft; then
HOTSPOT_TOOLCHAIN_TYPE=visCPP
fi

View File

@@ -42,7 +42,6 @@ DOCS_MODULES= \
jdk.hotspot.agent \
jdk.httpserver \
jdk.jpackage \
jdk.incubator.concurrent \
jdk.incubator.vector \
jdk.jartool \
jdk.javadoc \

View File

@@ -26,16 +26,16 @@
# Versions and download locations for dependencies used by GitHub Actions (GHA)
GTEST_VERSION=1.13.0
JTREG_VERSION=7.1.1+1
JTREG_VERSION=7.2+1
LINUX_X64_BOOT_JDK_EXT=tar.gz
LINUX_X64_BOOT_JDK_URL=https://download.java.net/java/GA/jdk19/877d6127e982470ba2a7faa31cc93d04/36/GPL/openjdk-19_linux-x64_bin.tar.gz
LINUX_X64_BOOT_JDK_SHA256=f47aba585cfc9ecff1ed8e023524e8309f4315ed8b80100b40c7dcc232c12f96
LINUX_X64_BOOT_JDK_URL=https://download.java.net/java/GA/jdk20/bdc68b4b9cbc4ebcb30745c85038d91d/36/GPL/openjdk-20_linux-x64_bin.tar.gz
LINUX_X64_BOOT_JDK_SHA256=bb863b2d542976d1ae4b7b81af3e78b1e4247a64644350b552d298d8dc5980dc
MACOS_X64_BOOT_JDK_EXT=tar.gz
MACOS_X64_BOOT_JDK_URL=https://download.java.net/java/GA/jdk19/877d6127e982470ba2a7faa31cc93d04/36/GPL/openjdk-19_macos-x64_bin.tar.gz
MACOS_X64_BOOT_JDK_SHA256=bfd33f5b2590fd552ae2d9231340c6b4704a872f927dce1c52860b78c49a5a11
MACOS_X64_BOOT_JDK_URL=https://download.java.net/java/GA/jdk20/bdc68b4b9cbc4ebcb30745c85038d91d/36/GPL/openjdk-20_macos-x64_bin.tar.gz
MACOS_X64_BOOT_JDK_SHA256=47cf960d9bb89dbe987535a389f7e26c42de7c984ef5108612d77c81aa8cc6a4
WINDOWS_X64_BOOT_JDK_EXT=zip
WINDOWS_X64_BOOT_JDK_URL=https://download.java.net/java/GA/jdk19/877d6127e982470ba2a7faa31cc93d04/36/GPL/openjdk-19_windows-x64_bin.zip
WINDOWS_X64_BOOT_JDK_SHA256=8fabcee7c4e8d3b53486777ecd27bb906d67d7c1efd1bf22a8290cf659afa487
WINDOWS_X64_BOOT_JDK_URL=https://download.java.net/java/GA/jdk20/bdc68b4b9cbc4ebcb30745c85038d91d/36/GPL/openjdk-20_windows-x64_bin.zip
WINDOWS_X64_BOOT_JDK_SHA256=c92fae5e42b9aecf444a66c8ec563c652f60b1e231dfdd33a4f5a3e3603058fb

View File

@@ -390,7 +390,7 @@ var getJibProfilesCommon = function (input, data) {
};
};
common.boot_jdk_version = "19";
common.boot_jdk_version = "20";
common.boot_jdk_build_number = "36";
common.boot_jdk_home = input.get("boot_jdk", "install_path") + "/jdk-"
+ common.boot_jdk_version
@@ -587,21 +587,23 @@ var getJibProfilesProfiles = function (input, common, data) {
"linux-x64-zero": {
target_os: "linux",
target_cpu: "x64",
dependencies: ["devkit", "gtest"],
dependencies: ["devkit", "gtest", "libffi"],
configure_args: concat(common.configure_args_64bit, [
"--with-zlib=system",
"--with-jvm-variants=zero",
"--enable-libffi-bundling"
"--with-libffi=" + input.get("libffi", "home_path"),
"--enable-libffi-bundling",
])
},
"linux-aarch64-zero": {
target_os: "linux",
target_cpu: "aarch64",
dependencies: ["devkit", "gtest"],
dependencies: ["devkit", "gtest", "libffi"],
configure_args: concat(common.configure_args_64bit, [
"--with-zlib=system",
"--with-jvm-variants=zero",
"--with-libffi=" + input.get("libffi", "home_path"),
"--enable-libffi-bundling"
])
},
@@ -610,10 +612,11 @@ var getJibProfilesProfiles = function (input, common, data) {
target_os: "linux",
target_cpu: "x86",
build_cpu: "x64",
dependencies: ["devkit", "gtest"],
dependencies: ["devkit", "gtest", "libffi"],
configure_args: concat(common.configure_args_32bit, [
"--with-zlib=system",
"--with-jvm-variants=zero",
"--with-libffi=" + input.get("libffi", "home_path"),
"--enable-libffi-bundling"
])
}
@@ -744,6 +747,40 @@ var getJibProfilesProfiles = function (input, common, data) {
common.debug_profile_artifacts(artifactData[name]));
});
// Define artifact just for linux-x64-zero, which is the only one we test on
["linux-x64"].forEach(function (name) {
var o = artifactData[name]
var pf = o.platform
var jdk_subdir = (o.jdk_subdir != null ? o.jdk_subdir : "jdk-" + data.version);
var jdk_suffix = (o.jdk_suffix != null ? o.jdk_suffix : "tar.gz");
var zeroName = name + "-zero";
profiles[zeroName].artifacts = {
jdk: {
local: "bundles/\\(jdk.*bin." + jdk_suffix + "\\)",
remote: [
"bundles/" + pf + "/jdk-" + data.version + "_" + pf + "_bin-zero." + jdk_suffix,
],
subdir: jdk_subdir,
exploded: "images/jdk",
},
test: {
local: "bundles/\\(jdk.*bin-tests.tar.gz\\)",
remote: [
"bundles/" + pf + "/jdk-" + data.version + "_" + pf + "_bin-zero-tests.tar.gz",
],
exploded: "images/test"
},
jdk_symbols: {
local: "bundles/\\(jdk.*bin-symbols.tar.gz\\)",
remote: [
"bundles/" + pf + "/jdk-" + data.version + "_" + pf + "_bin-zero-symbols.tar.gz",
],
subdir: jdk_subdir,
exploded: "images/jdk"
},
};
});
buildJdkDep = input.build_os + "-" + input.build_cpu + ".jdk";
docsProfiles = {
"docs": {
@@ -1150,9 +1187,9 @@ var getJibProfilesDependencies = function (input, common) {
jtreg: {
server: "jpg",
product: "jtreg",
version: "7.1.1",
version: "7.2",
build_number: "1",
file: "bundles/jtreg-7.1.1+1.zip",
file: "bundles/jtreg-7.2+1.zip",
environment_name: "JT_HOME",
environment_path: input.get("jtreg", "home_path") + "/bin",
configure_args: "--with-jtreg=" + input.get("jtreg", "home_path"),
@@ -1234,6 +1271,13 @@ var getJibProfilesDependencies = function (input, common) {
ext: "tar.gz",
revision: "1.13.0+1.0"
},
libffi: {
organization: common.organization,
module: "libffi-" + input.target_platform,
ext: "tar.gz",
revision: "3.4.2+1.0"
},
};
return dependencies;

View File

@@ -43,7 +43,6 @@ BOOT_MODULES= \
java.rmi \
java.security.sasl \
java.xml \
jdk.incubator.concurrent \
jdk.incubator.vector \
jdk.internal.vm.ci \
jdk.jfr \

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2022, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2023, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -37,6 +37,6 @@ DEFAULT_VERSION_DATE=2023-09-19
DEFAULT_VERSION_CLASSFILE_MAJOR=65 # "`$EXPR $DEFAULT_VERSION_FEATURE + 44`"
DEFAULT_VERSION_CLASSFILE_MINOR=0
DEFAULT_VERSION_DOCS_API_SINCE=11
DEFAULT_ACCEPTABLE_BOOT_VERSIONS="19 20 21"
DEFAULT_ACCEPTABLE_BOOT_VERSIONS="20 21"
DEFAULT_JDK_SOURCE_TARGET_VERSION=21
DEFAULT_PROMOTED_VERSION_PRE=ea

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2009, 2021, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2009, 2023, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -56,10 +56,10 @@ public class $NAME_CLZ$ extends Charset
return new DoubleByte.Encoder$ENCTYPE$(this, $ENC_REPLACEMENT$ EncodeHolder.c2b, EncodeHolder.c2bIndex, $ASCIICOMPATIBLE$);
}
static class DecodeHolder {
public static class DecodeHolder {
$B2C$
static final char[][] b2c = new char[b2cStr.length][];
static final char[] b2cSB;
public static final char[][] b2c = new char[b2cStr.length][];
public static final char[] b2cSB;
static {
for (int i = 0; i < b2cStr.length; i++) {
@@ -72,9 +72,9 @@ public class $NAME_CLZ$ extends Charset
}
}
static class EncodeHolder {
static final char[] c2b = new char[$C2BLENGTH$];
static final char[] c2bIndex = new char[0x100];
public static class EncodeHolder {
public static final char[] c2b = new char[$C2BLENGTH$];
public static final char[] c2bIndex = new char[0x100];
static {
$NONROUNDTRIP_B2C$

View File

@@ -2,13 +2,11 @@
# generate these charsets into sun.nio.cs
#
Big5
Big5_Solaris
Big5_HKSCS
EUC_CN
EUC_KR
EUC_JP
EUC_JP_LINUX
EUC_JP_Open
EUC_TW
GBK
ISO_8859_11
@@ -16,12 +14,9 @@ ISO_8859_3
ISO_8859_6
ISO_8859_8
Johab
PCK
TIS_620
JIS_X_0201
JIS_X_0208
JIS_X_0212
JIS_X_0208_Solaris
JIS_X_0212_Solaris
MS932
SJIS

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2016, 2023, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -30,5 +30,6 @@ jio_vsnprintf
JNI_CreateJavaVM
JNI_GetCreatedJavaVMs
JNI_GetDefaultJavaVMInitArgs
JVM_IsForeignLinkerSupported
JVM_FindClassFromBootLoader
JVM_InitAgentProperties

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2016, 2022, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2016, 2023, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -181,6 +181,7 @@ JVM_NewArray
JVM_NewInstanceFromConstructor
JVM_NewMultiArray
JVM_PhantomReferenceRefersTo
JVM_PrintWarningAtDynamicAgentLoad
JVM_RaiseSignal
JVM_RawMonitorCreate
JVM_RawMonitorDestroy
@@ -217,6 +218,8 @@ JVM_DefineModule
JVM_SetBootLoaderUnnamedModule
# Virtual thread notifications for JVMTI
JVM_VirtualThreadStart
JVM_VirtualThreadEnd
JVM_VirtualThreadMount
JVM_VirtualThreadUnmount
JVM_VirtualThreadHideFrames

View File

@@ -0,0 +1,113 @@
#!/bin/bash
#
# Copyright (c) 2023, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#
# This script generates a libffi bundle. On linux by building it from source
# using a devkit, which should match the devkit used to build the JDK.
#
# Set MAKE_ARGS to add parameters to make. Ex:
#
# $ MAKE_ARGS=-j32 bash createLibffiBundle.sh
#
# The script tries to behave well on multiple invocations, only performing steps
# not already done. To redo a step, manually delete the target files from that
# step.
#
# Note that the libtool and texinfo packages are needed to build libffi
# $ sudo apt install libtool texinfo
LIBFFI_VERSION=3.4.2
BUNDLE_NAME=libffi-$LIBFFI_VERSION.tar.gz
SCRIPT_FILE="$(basename $0)"
SCRIPT_DIR="$(cd "$(dirname $0)" > /dev/null && pwd)"
OUTPUT_DIR="${SCRIPT_DIR}/../../build/libffi"
SRC_DIR="$OUTPUT_DIR/src"
DOWNLOAD_DIR="$OUTPUT_DIR/download"
INSTALL_DIR="$OUTPUT_DIR/install"
IMAGE_DIR="$OUTPUT_DIR/image"
USAGE="$0 <devkit dir>"
if [ "$1" = "" ]; then
echo $USAGE
exit 1
fi
DEVKIT_DIR="$1"
# Download source distros
mkdir -p $DOWNLOAD_DIR
cd $DOWNLOAD_DIR
SOURCE_TAR=v$LIBFFI_VERSION.tar.gz
if [ ! -f $SOURCE_TAR ]; then
wget https://github.com/libffi/libffi/archive/refs/tags/v$LIBFFI_VERSION.tar.gz
fi
# Unpack src
mkdir -p $SRC_DIR
cd $SRC_DIR
LIBFFI_DIRNAME=libffi-$LIBFFI_VERSION
LIBFFI_DIR=$SRC_DIR/$LIBFFI_DIRNAME
if [ ! -d $LIBFFI_DIRNAME ]; then
echo "Unpacking $SOURCE_TAR"
tar xf $DOWNLOAD_DIR/$SOURCE_TAR
fi
# Build
cd $LIBFFI_DIR
if [ ! -e $LIBFFI_DIR/configure ]; then
bash ./autogen.sh
fi
# For Linux/x86, add --build=i686-pc-linux-gnu CFLAGS=-m32 CXXFLAGS=-m32 LDFLAGS=-m32
bash ./configure --prefix=$INSTALL_DIR CC=$DEVKIT_DIR/bin/gcc CXX=$DEVKIT_DIR/bin/g++
# Run with nice to keep system usable during build.
nice make $MAKE_ARGS install
mkdir -p $IMAGE_DIR
# Extract what we need into an image
if [ ! -e $IMAGE_DIR/lib/libffi.so ]; then
echo "Copying libffi.so* to image"
mkdir -p $IMAGE_DIR/lib
# For Linux/x86 it's under /lib/ instead of /lib64/
cp -a $INSTALL_DIR/lib64/libffi.so* $IMAGE_DIR/lib/
fi
if [ ! -e $IMAGE_DIR/include/ ]; then
echo "Copying include to image"
mkdir -p $IMAGE_DIR/include
cp -a $INSTALL_DIR/include/. $IMAGE_DIR/include/
fi
if [ ! -e $IMAGE_DIR/$SCRIPT_FILE ]; then
echo "Copying this script to image"
cp -a $SCRIPT_DIR/$SCRIPT_FILE $IMAGE_DIR/
fi
# Create bundle
if [ ! -e $OUTPUT_DIR/$BUNDLE_NAME ]; then
echo "Creating $OUTPUT_DIR/$BUNDLE_NAME"
cd $IMAGE_DIR
tar zcf $OUTPUT_DIR/$BUNDLE_NAME *
fi

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2013, 2022, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2013, 2023, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -37,8 +37,13 @@ ifeq ($(call check-jvm-feature, compiler2), true)
ifeq ($(call isBuildOs, linux), true)
ADLC_CFLAGS := -fno-exceptions -DLINUX
else ifeq ($(call isBuildOs, aix), true)
ADLC_LDFLAGS += -q64
ADLC_CFLAGS := -qnortti -qeh -q64 -DAIX
ifeq ($(TOOLCHAIN_TYPE), clang)
ADLC_LDFLAGS += -m64
ADLC_CFLAGS := -fno-rtti -fexceptions -ffunction-sections -m64 -DAIX -mcpu=pwr8
else
ADLC_LDFLAGS += -q64
ADLC_CFLAGS := -qnortti -qeh -q64 -DAIX
endif
else ifeq ($(call isBuildOs, windows), true)
ADLC_LDFLAGS += -nologo
ADLC_CFLAGS := -nologo -EHsc
@@ -167,6 +172,8 @@ ifeq ($(call check-jvm-feature, compiler2), true)
ifeq ($(call check-jvm-feature, zgc), true)
AD_SRC_FILES += $(call uniq, $(wildcard $(foreach d, $(AD_SRC_ROOTS), \
$d/cpu/$(HOTSPOT_TARGET_CPU_ARCH)/gc/x/x_$(HOTSPOT_TARGET_CPU).ad \
$d/cpu/$(HOTSPOT_TARGET_CPU_ARCH)/gc/x/x_$(HOTSPOT_TARGET_CPU_ARCH).ad \
$d/cpu/$(HOTSPOT_TARGET_CPU_ARCH)/gc/z/z_$(HOTSPOT_TARGET_CPU).ad \
$d/cpu/$(HOTSPOT_TARGET_CPU_ARCH)/gc/z/z_$(HOTSPOT_TARGET_CPU_ARCH).ad \
)))

View File

@@ -168,10 +168,14 @@ $(eval $(call SetupJdkLibrary, BUILD_LIBJVM, \
DISABLED_WARNINGS_clang_management.cpp := missing-field-initializers, \
DISABLED_WARNINGS_clang_notificationThread.cpp := bitwise-instead-of-logical, \
DISABLED_WARNINGS_clang_os_posix.cpp := mismatched-tags missing-field-initializers, \
DISABLED_WARNINGS_clang_aix_os_posix.cpp := format-nonliteral, \
DISABLED_WARNINGS_clang_postaloc.cpp := tautological-undefined-compare, \
DISABLED_WARNINGS_clang_serviceThread.cpp := bitwise-instead-of-logical, \
DISABLED_WARNINGS_clang_vm_version_x86.cpp := missing-field-initializers, \
DISABLED_WARNINGS_clang_zTracer.cpp := undefined-var-template, \
DISABLED_WARNINGS_clang_aix_debug.cpp := format-nonliteral, \
DISABLED_WARNINGS_clang_aix_jvm.cpp := format-nonliteral, \
DISABLED_WARNINGS_clang_aix_osThread_aix.cpp := tautological-undefined-compare, \
DISABLED_WARNINGS_xlc := $(DISABLED_WARNINGS_xlc), \
DISABLED_WARNINGS_microsoft := $(DISABLED_WARNINGS_microsoft), \
ASFLAGS := $(JVM_ASFLAGS), \

View File

@@ -149,6 +149,7 @@ endif
ifneq ($(call check-jvm-feature, zgc), true)
JVM_CFLAGS_FEATURES += -DINCLUDE_ZGC=0
JVM_EXCLUDE_PATTERNS += gc/z
JVM_EXCLUDE_PATTERNS += gc/x
endif
ifneq ($(call check-jvm-feature, shenandoahgc), true)

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2013, 2021, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2013, 2023, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -109,7 +109,11 @@ else ifeq ($(call isTargetOs, macosx), true)
endif
else ifeq ($(call isTargetOs, aix), true)
BUILD_LIBJVM_synchronizer.cpp_CXXFLAGS := -qnoinline
ifeq ($(TOOLCHAIN_TYPE), clang)
BUILD_LIBJVM_synchronizer.cpp_CXXFLAGS := -fno-inline
else
BUILD_LIBJVM_synchronizer.cpp_CXXFLAGS := -qnoinline
endif
BUILD_LIBJVM_sharedRuntimeTrans.cpp_CXXFLAGS := $(CXX_O_FLAG_NONE)
# Disable aggressive optimizations for functions in sharedRuntimeTrig.cpp
# and sharedRuntimeTrans.cpp on ppc64.

View File

@@ -0,0 +1,42 @@
<!-- importing.xml -->
<project name="jdk">
<taskdef name="wrapLogger" classname="idea.IdeaLoggerWrapper" classpath="${idea.dir}/classes"/>
<wrapLogger/>
<macrodef name="call-make">
<attribute name="dir"/>
<attribute name="args"/>
<sequential>
<exec executable="make" dir="@{dir}" failonerror="true">
<arg line="@{args}"/>
<env key="CLASSPATH" value = ""/>
</exec>
</sequential>
</macrodef>
<target name="cond-clean" unless="${intellij.ismake}">
<antcall target="clean"/>
</target>
<target name="post-make" depends="cond-clean, build-module"/>
<!--
**** Global JDK Build Targets
-->
<target name="clean">
<echo message="base = ${basedir}"/>
<call-make dir = "${build.target.dir}" args = "reconfigure"/>
<call-make dir = "${build.target.dir}" args = "clean"/>
</target>
<target name="images">
<call-make dir = "${build.target.dir}" args = "images"/>
</target>
<target name="build-module">
<call-make dir = "${build.target.dir}" args = "${module.name}"/>
</target>
</project>

View File

@@ -46,18 +46,13 @@ else #with SPEC
endif
idea:
$(ECHO) "MODULES=\"$(foreach mod, $(SEL_MODULES), \
module='$(mod)' \
moduleSrcDirs='$(foreach m,$(call FindModuleSrcDirs,$(mod)),$(call RelativePath,$m,$(topdir)))' \
moduleDependencies='$(call FindTransitiveDepsForModule,$(mod))' \
#)\"" > $(OUT)
$(ECHO) "SUPPORT=$(SUPPORT_OUTPUTDIR)" >> $(OUT)
$(ECHO) "MODULE_ROOTS=\"$(foreach mod, $(SEL_MODULES), $(call FindModuleSrcDirs,$(mod)))\"" >> $(OUT)
$(ECHO) "MODULE_NAMES=\"$(strip $(foreach mod, $(SEL_MODULES), $(mod)))\"" >> $(OUT)
$(ECHO) "RELATIVE_TOPLEVEL_PROJECT_DIR=\"$(call RelativePath,$(TOPLEVEL_DIR),$(IDEA_OUTPUT_PARENT))\"" >> $(OUT)
$(ECHO) "RELATIVE_PROJECT_DIR=\"$(call RelativePath,$(topdir),$(IDEA_OUTPUT_PARENT))\"" >> $(OUT)
$(ECHO) "RELATIVE_BUILD_DIR=\"$(call RelativePath,$(OUTPUTDIR),$(IDEA_OUTPUT_PARENT))\"" >> $(OUT)
$(ECHO) "CLION_RELATIVE_PROJECT_DIR=\"$(call RelativePath,$(topdir),$(IDEA_OUTPUT_PARENT)/.idea/jdk-clion)\"" >> $(OUT)
$(ECHO) "PATHTOOL=\"$(PATHTOOL)\"" >> $(OUT)
$(ECHO) "SEL_MODULES=\"$(SEL_MODULES)\"" >> $(OUT)
$(ECHO) "BOOT_JDK=\"$(BOOT_JDK)\"" >> $(OUT)
$(ECHO) "CYGPATH=\"$(PATHTOOL)\"" >> $(OUT)
$(ECHO) "SPEC=\"$(SPEC)\"" >> $(OUT)
$(ECHO) "JT_HOME=\"$(JT_HOME)\"" >> $(OUT)
$(ECHO) "WINENV_ROOT=\"$(WINENV_ROOT)\"" >> $(OUT)
endif

View File

@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="AntConfiguration">
<buildFile url="file://###ROOT_DIR###/make/ide/idea/jdk/build.xml">
<properties>
<property name="intellij.ismake" value="$IsMake$" />
<property name="build.target.dir" value="###BUILD_DIR###" />
<property name="module.name" value="###MODULE_NAMES###" />
<property name="idea.dir" value="###IDEA_DIR###" />
</properties>
<executeOn event="afterCompilation" target="post-make" />
</buildFile>
</component>
</project>

View File

@@ -3,10 +3,10 @@
<component name="CompilerConfiguration">
<option name="DEFAULT_COMPILER" value="Javac" />
<excludeFromCompile>
<directory url="file://###PROJECT_DIR###/src" includeSubdirectories="true" />
<directory url="file://###PROJECT_DIR###/build" includeSubdirectories="true" />
<directory url="file://###PROJECT_DIR###/make" includeSubdirectories="true" />
<directory url="file://###PROJECT_DIR###/test" includeSubdirectories="false" />
<directory url="file://###ROOT_DIR###/src" includeSubdirectories="true" />
<directory url="file://###ROOT_DIR###/build" includeSubdirectories="true" />
<directory url="file://###ROOT_DIR###/make" includeSubdirectories="true" />
<directory url="file://###ROOT_DIR###/test" includeSubdirectories="true" />
</excludeFromCompile>
<resourceExtensions />
<wildcardResourcePatterns>

View File

@@ -1,9 +0,0 @@
<component name="CopyrightManager">
<copyright>
<option name="notice" value="Copyright &amp;#36;originalComment.match(&quot;Copyright (\d+)&quot;, 1, &quot;-&quot;)&amp;#36;today.year JetBrains s.r.o.&#10;DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.&#10;&#10;This code is free software; you can redistribute it and/or modify it&#10;under the terms of the GNU General Public License version 2 only, as&#10;published by the Free Software Foundation.&#10;&#10;This code is distributed in the hope that it will be useful, but WITHOUT&#10;ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or&#10;FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License&#10;version 2 for more details (a copy is included in the LICENSE file that&#10;accompanied this code).&#10;&#10;You should have received a copy of the GNU General Public License version&#10;2 along with this work; if not, write to the Free Software Foundation,&#10;Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.&#10;&#10;Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA&#10;or visit www.oracle.com if you need additional information or have any&#10;questions." />
<option name="keyword" value="Copyright" />
<option name="allowReplaceKeyword" value="JetBrains" />
<option name="myName" value="JetBrains" />
<option name="myLocal" value="true" />
</copyright>
</component>

View File

@@ -1,7 +0,0 @@
<component name="CopyrightManager">
<copyright>
<option name="allowReplaceRegexp" value="JetBrains" />
<option name="notice" value="Copyright &amp;#36;originalComment.match(&quot;Copyright (\d+)&quot;, 1, &quot;-&quot;)&amp;#36;today.year JetBrains s.r.o.&#10;DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.&#10;&#10;This code is free software; you can redistribute it and/or modify it&#10;under the terms of the GNU General Public License version 2 only, as&#10;published by the Free Software Foundation. Oracle designates this&#10;particular file as subject to the &quot;Classpath&quot; exception as provided&#10;by Oracle in the LICENSE file that accompanied this code.&#10;&#10;This code is distributed in the hope that it will be useful, but WITHOUT&#10;ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or&#10;FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License&#10;version 2 for more details (a copy is included in the LICENSE file that&#10;accompanied this code).&#10;&#10;You should have received a copy of the GNU General Public License version&#10;2 along with this work; if not, write to the Free Software Foundation,&#10;Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.&#10;&#10;Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA&#10;or visit www.oracle.com if you need additional information or have any&#10;questions." />
<option name="myName" value="JetBrainsCE" />
</copyright>
</component>

View File

@@ -1,7 +1,3 @@
<component name="CopyrightManager">
<settings default="JetBrainsCE">
<module2copyright>
<element module="TestFiles" copyright="JetBrains" />
</module2copyright>
</settings>
</component>
<settings default="" />
</component>

View File

@@ -1,9 +0,0 @@
<component name="CopyrightManager">
<copyright>
<option name="notice" value="Copyright &amp;#36;originalComment.match(&quot;Copyright (\d+)&quot;, 1, &quot;-&quot;)&amp;#36;today.year JetBrains s.r.o.&#10;DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.&#10;&#10;This code is free software; you can redistribute it and/or modify it&#10;under the terms of the GNU General Public License version 2 only, as&#10;published by the Free Software Foundation.&#10;&#10;This code is distributed in the hope that it will be useful, but WITHOUT&#10;ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or&#10;FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License&#10;version 2 for more details (a copy is included in the LICENSE file that&#10;accompanied this code).&#10;&#10;You should have received a copy of the GNU General Public License version&#10;2 along with this work; if not, write to the Free Software Foundation,&#10;Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.&#10;&#10;Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA&#10;or visit www.oracle.com if you need additional information or have any&#10;questions." />
<option name="keyword" value="Copyright" />
<option name="allowReplaceKeyword" value="JetBrains" />
<option name="myName" value="JetBrains" />
<option name="myLocal" value="true" />
</copyright>
</component>

View File

@@ -1,7 +0,0 @@
<component name="CopyrightManager">
<copyright>
<option name="allowReplaceRegexp" value="JetBrains" />
<option name="notice" value="Copyright &amp;#36;originalComment.match(&quot;Copyright (\d+)&quot;, 1, &quot;-&quot;)&amp;#36;today.year JetBrains s.r.o.&#10;DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.&#10;&#10;This code is free software; you can redistribute it and/or modify it&#10;under the terms of the GNU General Public License version 2 only, as&#10;published by the Free Software Foundation. Oracle designates this&#10;particular file as subject to the &quot;Classpath&quot; exception as provided&#10;by Oracle in the LICENSE file that accompanied this code.&#10;&#10;This code is distributed in the hope that it will be useful, but WITHOUT&#10;ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or&#10;FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License&#10;version 2 for more details (a copy is included in the LICENSE file that&#10;accompanied this code).&#10;&#10;You should have received a copy of the GNU General Public License version&#10;2 along with this work; if not, write to the Free Software Foundation,&#10;Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.&#10;&#10;Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA&#10;or visit www.oracle.com if you need additional information or have any&#10;questions." />
<option name="myName" value="JetBrainsCE" />
</copyright>
</component>

View File

@@ -1,7 +0,0 @@
<component name="CopyrightManager">
<settings default="JetBrainsCE">
<module2copyright>
<element module="TestFiles" copyright="JetBrains" />
</module2copyright>
</settings>
</component>

View File

@@ -1,25 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="CidrRootsConfiguration">
<excludeRoots>
<file path="###CLION_PROJECT_DIR###/build" />
<file path="###CLION_PROJECT_DIR###/make" />
</excludeRoots>
</component>
<component name="CompDBSettings">
<option name="linkedExternalProjectsSettings">
<CompDBProjectSettings>
<option name="externalProjectPath" value="$PROJECT_DIR$" />
<option name="modules">
<set>
<option value="$PROJECT_DIR$" />
</set>
</option>
</CompDBProjectSettings>
</option>
</component>
<component name="CompDBWorkspace" PROJECT_DIR="$PROJECT_DIR$">
<contentRoot DIR="###CLION_PROJECT_DIR###" />
</component>
<component name="ExternalStorageConfigurationManager" enabled="true" />
</project>

View File

@@ -1,3 +0,0 @@
<component name="DependencyValidationManager">
<scope name="TestFiles" pattern="file[test]:*/" />
</component>

Some files were not shown because too many files have changed in this diff Show More