提交 4dd67788 编写于 作者: M mullan

Merge

...@@ -166,3 +166,8 @@ b88fc3359dc7edabfa8a228855d8cebf8843c055 jdk8-b40 ...@@ -166,3 +166,8 @@ b88fc3359dc7edabfa8a228855d8cebf8843c055 jdk8-b40
cf5c1f6fbc5ba14163fe0ef8eb8601b33f951372 jdk8-b42 cf5c1f6fbc5ba14163fe0ef8eb8601b33f951372 jdk8-b42
b3246687c3695dff6f461bb407f9db88f7d072e7 jdk8-b43 b3246687c3695dff6f461bb407f9db88f7d072e7 jdk8-b43
db471a7af03168e4441c245b1d9976f720a7cb77 jdk8-b44 db471a7af03168e4441c245b1d9976f720a7cb77 jdk8-b44
b92353a01aa049bc508fc56f0347d5934b7c4390 jdk8-b45
8d2ed9d58453c8049715a72a6d26b6b66b37a94c jdk8-b46
00b22b23269a57d0bb46c57753be2fe9a9d2c1a3 jdk8-b47
3e4ab821f46166fcf63e8fe5c8046216003c941f jdk8-b48
51707c3b75c0f521794d9ab425f4e5b2351c70c1 jdk8-b49
...@@ -3383,3 +3383,397 @@ included with JRE 7, JDK 7, and OpenJDK 7, except where noted: ...@@ -3383,3 +3383,397 @@ included with JRE 7, JDK 7, and OpenJDK 7, except where noted:
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
%% This notice is provided with respect to Mozilla Network Security
Services (NSS), which is supplied with the JDK test suite in the OpenJDK
source code repository. It is licensed under Mozilla Public License (MPL),
version 2.0.
The NSS libraries are supplied in executable form, built from unmodified
NSS source code labeled with the "NSS_3.13.1_RTM" release tag.
The NSS source code is available in the OpenJDK source code repository at:
jdk/test/sun/security/pkcs11/nss/src
The NSS libraries are available in the OpenJDK source code repository at:
jdk/test/sun/security/pkcs11/nss/lib
--- begin of LICENSE ---
Mozilla Public License Version 2.0
==================================
1. Definitions
--------------
1.1. "Contributor"
means each individual or legal entity that creates, contributes to
the creation of, or owns Covered Software.
1.2. "Contributor Version"
means the combination of the Contributions of others (if any) used
by a Contributor and that particular Contributor's Contribution.
1.3. "Contribution"
means Covered Software of a particular Contributor.
1.4. "Covered Software"
means Source Code Form to which the initial Contributor has attached
the notice in Exhibit A, the Executable Form of such Source Code
Form, and Modifications of such Source Code Form, in each case
including portions thereof.
1.5. "Incompatible With Secondary Licenses"
means
(a) that the initial Contributor has attached the notice described
in Exhibit B to the Covered Software; or
(b) that the Covered Software was made available under the terms of
version 1.1 or earlier of the License, but not also under the
terms of a Secondary License.
1.6. "Executable Form"
means any form of the work other than Source Code Form.
1.7. "Larger Work"
means a work that combines Covered Software with other material, in
a separate file or files, that is not Covered Software.
1.8. "License"
means this document.
1.9. "Licensable"
means having the right to grant, to the maximum extent possible,
whether at the time of the initial grant or subsequently, any and
all of the rights conveyed by this License.
1.10. "Modifications"
means any of the following:
(a) any file in Source Code Form that results from an addition to,
deletion from, or modification of the contents of Covered
Software; or
(b) any new file in Source Code Form that contains any Covered
Software.
1.11. "Patent Claims" of a Contributor
means any patent claim(s), including without limitation, method,
process, and apparatus claims, in any patent Licensable by such
Contributor that would be infringed, but for the grant of the
License, by the making, using, selling, offering for sale, having
made, import, or transfer of either its Contributions or its
Contributor Version.
1.12. "Secondary License"
means either the GNU General Public License, Version 2.0, the GNU
Lesser General Public License, Version 2.1, the GNU Affero General
Public License, Version 3.0, or any later versions of those
licenses.
1.13. "Source Code Form"
means the form of the work preferred for making modifications.
1.14. "You" (or "Your")
means an individual or a legal entity exercising rights under this
License. For legal entities, "You" includes any entity that
controls, is controlled by, or is under common control with You. For
purposes of this definition, "control" means (a) the power, direct
or indirect, to cause the direction or management of such entity,
whether by contract or otherwise, or (b) ownership of more than
fifty percent (50%) of the outstanding shares or beneficial
ownership of such entity.
2. License Grants and Conditions
--------------------------------
2.1. Grants
Each Contributor hereby grants You a world-wide, royalty-free,
non-exclusive license:
(a) under intellectual property rights (other than patent or trademark)
Licensable by such Contributor to use, reproduce, make available,
modify, display, perform, distribute, and otherwise exploit its
Contributions, either on an unmodified basis, with Modifications, or
as part of a Larger Work; and
(b) under Patent Claims of such Contributor to make, use, sell, offer
for sale, have made, import, and otherwise transfer either its
Contributions or its Contributor Version.
2.2. Effective Date
The licenses granted in Section 2.1 with respect to any Contribution
become effective for each Contribution on the date the Contributor first
distributes such Contribution.
2.3. Limitations on Grant Scope
The licenses granted in this Section 2 are the only rights granted under
this License. No additional rights or licenses will be implied from the
distribution or licensing of Covered Software under this License.
Notwithstanding Section 2.1(b) above, no patent license is granted by a
Contributor:
(a) for any code that a Contributor has removed from Covered Software;
or
(b) for infringements caused by: (i) Your and any other third party's
modifications of Covered Software, or (ii) the combination of its
Contributions with other software (except as part of its Contributor
Version); or
(c) under Patent Claims infringed by Covered Software in the absence of
its Contributions.
This License does not grant any rights in the trademarks, service marks,
or logos of any Contributor (except as may be necessary to comply with
the notice requirements in Section 3.4).
2.4. Subsequent Licenses
No Contributor makes additional grants as a result of Your choice to
distribute the Covered Software under a subsequent version of this
License (see Section 10.2) or under the terms of a Secondary License (if
permitted under the terms of Section 3.3).
2.5. Representation
Each Contributor represents that the Contributor believes its
Contributions are its original creation(s) or it has sufficient rights
to grant the rights to its Contributions conveyed by this License.
2.6. Fair Use
This License is not intended to limit any rights You have under
applicable copyright doctrines of fair use, fair dealing, or other
equivalents.
2.7. Conditions
Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted
in Section 2.1.
3. Responsibilities
-------------------
3.1. Distribution of Source Form
All distribution of Covered Software in Source Code Form, including any
Modifications that You create or to which You contribute, must be under
the terms of this License. You must inform recipients that the Source
Code Form of the Covered Software is governed by the terms of this
License, and how they can obtain a copy of this License. You may not
attempt to alter or restrict the recipients' rights in the Source Code
Form.
3.2. Distribution of Executable Form
If You distribute Covered Software in Executable Form then:
(a) such Covered Software must also be made available in Source Code
Form, as described in Section 3.1, and You must inform recipients of
the Executable Form how they can obtain a copy of such Source Code
Form by reasonable means in a timely manner, at a charge no more
than the cost of distribution to the recipient; and
(b) You may distribute such Executable Form under the terms of this
License, or sublicense it under different terms, provided that the
license for the Executable Form does not attempt to limit or alter
the recipients' rights in the Source Code Form under this License.
3.3. Distribution of a Larger Work
You may create and distribute a Larger Work under terms of Your choice,
provided that You also comply with the requirements of this License for
the Covered Software. If the Larger Work is a combination of Covered
Software with a work governed by one or more Secondary Licenses, and the
Covered Software is not Incompatible With Secondary Licenses, this
License permits You to additionally distribute such Covered Software
under the terms of such Secondary License(s), so that the recipient of
the Larger Work may, at their option, further distribute the Covered
Software under the terms of either this License or such Secondary
License(s).
3.4. Notices
You may not remove or alter the substance of any license notices
(including copyright notices, patent notices, disclaimers of warranty,
or limitations of liability) contained within the Source Code Form of
the Covered Software, except that You may alter any license notices to
the extent required to remedy known factual inaccuracies.
3.5. Application of Additional Terms
You may choose to offer, and to charge a fee for, warranty, support,
indemnity or liability obligations to one or more recipients of Covered
Software. However, You may do so only on Your own behalf, and not on
behalf of any Contributor. You must make it absolutely clear that any
such warranty, support, indemnity, or liability obligation is offered by
You alone, and You hereby agree to indemnify every Contributor for any
liability incurred by such Contributor as a result of warranty, support,
indemnity or liability terms You offer. You may include additional
disclaimers of warranty and limitations of liability specific to any
jurisdiction.
4. Inability to Comply Due to Statute or Regulation
---------------------------------------------------
If it is impossible for You to comply with any of the terms of this
License with respect to some or all of the Covered Software due to
statute, judicial order, or regulation then You must: (a) comply with
the terms of this License to the maximum extent possible; and (b)
describe the limitations and the code they affect. Such description must
be placed in a text file included with all distributions of the Covered
Software under this License. Except to the extent prohibited by statute
or regulation, such description must be sufficiently detailed for a
recipient of ordinary skill to be able to understand it.
5. Termination
--------------
5.1. The rights granted under this License will terminate automatically
if You fail to comply with any of its terms. However, if You become
compliant, then the rights granted under this License from a particular
Contributor are reinstated (a) provisionally, unless and until such
Contributor explicitly and finally terminates Your grants, and (b) on an
ongoing basis, if such Contributor fails to notify You of the
non-compliance by some reasonable means prior to 60 days after You have
come back into compliance. Moreover, Your grants from a particular
Contributor are reinstated on an ongoing basis if such Contributor
notifies You of the non-compliance by some reasonable means, this is the
first time You have received notice of non-compliance with this License
from such Contributor, and You become compliant prior to 30 days after
Your receipt of the notice.
5.2. If You initiate litigation against any entity by asserting a patent
infringement claim (excluding declaratory judgment actions,
counter-claims, and cross-claims) alleging that a Contributor Version
directly or indirectly infringes any patent, then the rights granted to
You by any and all Contributors for the Covered Software under Section
2.1 of this License shall terminate.
5.3. In the event of termination under Sections 5.1 or 5.2 above, all
end user license agreements (excluding distributors and resellers) which
have been validly granted by You or Your distributors under this License
prior to termination shall survive termination.
************************************************************************
* *
* 6. Disclaimer of Warranty *
* ------------------------- *
* *
* Covered Software is provided under this License on an "as is" *
* basis, without warranty of any kind, either expressed, implied, or *
* statutory, including, without limitation, warranties that the *
* Covered Software is free of defects, merchantable, fit for a *
* particular purpose or non-infringing. The entire risk as to the *
* quality and performance of the Covered Software is with You. *
* Should any Covered Software prove defective in any respect, You *
* (not any Contributor) assume the cost of any necessary servicing, *
* repair, or correction. This disclaimer of warranty constitutes an *
* essential part of this License. No use of any Covered Software is *
* authorized under this License except under this disclaimer. *
* *
************************************************************************
************************************************************************
* *
* 7. Limitation of Liability *
* -------------------------- *
* *
* Under no circumstances and under no legal theory, whether tort *
* (including negligence), contract, or otherwise, shall any *
* Contributor, or anyone who distributes Covered Software as *
* permitted above, be liable to You for any direct, indirect, *
* special, incidental, or consequential damages of any character *
* including, without limitation, damages for lost profits, loss of *
* goodwill, work stoppage, computer failure or malfunction, or any *
* and all other commercial damages or losses, even if such party *
* shall have been informed of the possibility of such damages. This *
* limitation of liability shall not apply to liability for death or *
* personal injury resulting from such party's negligence to the *
* extent applicable law prohibits such limitation. Some *
* jurisdictions do not allow the exclusion or limitation of *
* incidental or consequential damages, so this exclusion and *
* limitation may not apply to You. *
* *
************************************************************************
8. Litigation
-------------
Any litigation relating to this License may be brought only in the
courts of a jurisdiction where the defendant maintains its principal
place of business and such litigation shall be governed by laws of that
jurisdiction, without reference to its conflict-of-law provisions.
Nothing in this Section shall prevent a party's ability to bring
cross-claims or counter-claims.
9. Miscellaneous
----------------
This License represents the complete agreement concerning the subject
matter hereof. If any provision of this License is held to be
unenforceable, such provision shall be reformed only to the extent
necessary to make it enforceable. Any law or regulation which provides
that the language of a contract shall be construed against the drafter
shall not be used to construe this License against a Contributor.
10. Versions of the License
---------------------------
10.1. New Versions
Mozilla Foundation is the license steward. Except as provided in Section
10.3, no one other than the license steward has the right to modify or
publish new versions of this License. Each version will be given a
distinguishing version number.
10.2. Effect of New Versions
You may distribute the Covered Software under the terms of the version
of the License under which You originally received the Covered Software,
or under the terms of any subsequent version published by the license
steward.
10.3. Modified Versions
If you create software not governed by this License, and you want to
create a new license for such software, you may create and use a
modified version of this License if you rename the license and remove
any references to the name of the license steward (except to note that
such modified license differs from this License).
10.4. Distributing Source Code Form that is Incompatible With Secondary
Licenses
If You choose to distribute Source Code Form that is Incompatible With
Secondary Licenses under the terms of this version of the License, the
notice described in Exhibit B of this License must be attached.
Exhibit A - Source Code Form License Notice
-------------------------------------------
This Source Code Form is subject to the terms of the Mozilla Public
License, v. 2.0. If a copy of the MPL was not distributed with this
file, You can obtain one at http://mozilla.org/MPL/2.0/.
If it is not possible or desirable to put the notice in a particular
file, then You may include the notice in a location (such as a LICENSE
file in a relevant directory) where a recipient would be likely to look
for such a notice.
You may add additional accurate notices of copyright ownership.
Exhibit B - "Incompatible With Secondary Licenses" Notice
---------------------------------------------------------
This Source Code Form is "Incompatible With Secondary Licenses", as
defined by the Mozilla Public License, v. 2.0.
--- end of LICENSE ---
-------------------------------------------------------------------------------
...@@ -221,8 +221,6 @@ FILES_src = \ ...@@ -221,8 +221,6 @@ FILES_src = \
sun/nio/cs/HistoricallyNamedCharset.java \ sun/nio/cs/HistoricallyNamedCharset.java \
sun/nio/cs/ISO_8859_1.java \ sun/nio/cs/ISO_8859_1.java \
sun/nio/cs/SingleByte.java \ sun/nio/cs/SingleByte.java \
sun/nio/cs/SingleByteDecoder.java \
sun/nio/cs/SingleByteEncoder.java \
sun/nio/cs/StreamEncoder.java \ sun/nio/cs/StreamEncoder.java \
sun/nio/cs/StreamDecoder.java \ sun/nio/cs/StreamDecoder.java \
sun/nio/cs/Surrogate.java \ sun/nio/cs/Surrogate.java \
......
...@@ -282,6 +282,9 @@ FILES_java += \ ...@@ -282,6 +282,9 @@ FILES_java += \
sun/nio/fs/BsdFileSystem.java \ sun/nio/fs/BsdFileSystem.java \
sun/nio/fs/BsdFileSystemProvider.java \ sun/nio/fs/BsdFileSystemProvider.java \
sun/nio/fs/BsdNativeDispatcher.java \ sun/nio/fs/BsdNativeDispatcher.java \
sun/nio/fs/MacOSXFileSystemProvider.java \
sun/nio/fs/MacOSXFileSystem.java \
sun/nio/fs/MacOSXNativeDispatcher.java \
sun/nio/fs/PollingWatchService.java \ sun/nio/fs/PollingWatchService.java \
sun/nio/fs/UnixChannelFactory.java \ sun/nio/fs/UnixChannelFactory.java \
sun/nio/fs/UnixCopyFile.java \ sun/nio/fs/UnixCopyFile.java \
...@@ -311,6 +314,7 @@ FILES_c += \ ...@@ -311,6 +314,7 @@ FILES_c += \
\ \
GnomeFileTypeDetector.c \ GnomeFileTypeDetector.c \
BsdNativeDispatcher.c \ BsdNativeDispatcher.c \
MacOSXNativeDispatcher.c \
UnixCopyFile.c \ UnixCopyFile.c \
UnixNativeDispatcher.c \ UnixNativeDispatcher.c \
\ \
...@@ -385,7 +389,7 @@ ifeq ($(PLATFORM), linux) ...@@ -385,7 +389,7 @@ ifeq ($(PLATFORM), linux)
OTHER_LDLIBS += -L$(LIBDIR)/$(LIBARCH) -ljava -lnet -lpthread $(LIBDL) OTHER_LDLIBS += -L$(LIBDIR)/$(LIBARCH) -ljava -lnet -lpthread $(LIBDL)
endif endif
ifeq ($(PLATFORM), macosx) ifeq ($(PLATFORM), macosx)
OTHER_LDLIBS += -L$(LIBDIR) -ljava -lnet -pthread OTHER_LDLIBS += -L$(LIBDIR) -ljava -lnet -pthread -framework CoreFoundation
endif endif
ifeq ($(PLATFORM), solaris) ifeq ($(PLATFORM), solaris)
OTHER_LDLIBS += $(JVMLIB) $(LIBSOCKET) -lposix4 $(LIBDL) -lsendfile \ OTHER_LDLIBS += $(JVMLIB) $(LIBSOCKET) -lposix4 $(LIBDL) -lsendfile \
......
...@@ -34,8 +34,6 @@ FILES_java = \ ...@@ -34,8 +34,6 @@ FILES_java = \
sun/nio/cs/HistoricallyNamedCharset.java \ sun/nio/cs/HistoricallyNamedCharset.java \
sun/nio/cs/Surrogate.java \ sun/nio/cs/Surrogate.java \
sun/nio/cs/CharsetMapping.java \ sun/nio/cs/CharsetMapping.java \
sun/nio/cs/SingleByteEncoder.java \
sun/nio/cs/SingleByteDecoder.java \
sun/nio/cs/UnicodeEncoder.java \ sun/nio/cs/UnicodeEncoder.java \
sun/nio/cs/UnicodeDecoder.java \ sun/nio/cs/UnicodeDecoder.java \
sun/nio/cs/ISO_8859_1.java \ sun/nio/cs/ISO_8859_1.java \
......
...@@ -127,7 +127,17 @@ FILES_gen_extcs = \ ...@@ -127,7 +127,17 @@ FILES_gen_extcs = \
sun/nio/cs/ext/MS949.java \ sun/nio/cs/ext/MS949.java \
sun/nio/cs/ext/MS950.java \ sun/nio/cs/ext/MS950.java \
sun/nio/cs/ext/GBK.java \ sun/nio/cs/ext/GBK.java \
sun/nio/cs/ext/Big5.java sun/nio/cs/ext/Big5.java \
sun/nio/cs/ext/SJIS.java \
sun/nio/cs/ext/PCK.java \
sun/nio/cs/ext/JIS_X_0201.java \
sun/nio/cs/ext/JIS_X_0208.java \
sun/nio/cs/ext/JIS_X_0208_MS5022X.java \
sun/nio/cs/ext/JIS_X_0208_MS932.java \
sun/nio/cs/ext/JIS_X_0208_Solaris.java \
sun/nio/cs/ext/JIS_X_0212.java \
sun/nio/cs/ext/JIS_X_0212_MS5022X.java \
sun/nio/cs/ext/JIS_X_0212_Solaris.java
FILES_java = $(FILES_src) $(FILES_gen_extcs) FILES_java = $(FILES_src) $(FILES_gen_extcs)
# #
# Copyright (c) 1996, 2011, Oracle and/or its affiliates. All rights reserved. # Copyright (c) 1996, 2012, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
# #
# This code is free software; you can redistribute it and/or modify it # This code is free software; you can redistribute it and/or modify it
...@@ -44,15 +44,8 @@ ifneq ($(PLATFORM), windows) ...@@ -44,15 +44,8 @@ ifneq ($(PLATFORM), windows)
JGSS_WRAPPER = jgss/wrapper JGSS_WRAPPER = jgss/wrapper
endif endif
# Build PKCS#11 on all platforms except 64-bit Windows. # Build PKCS#11 on all platforms
# We exclude windows-amd64 because we don't have any
# 64-bit PKCS#11 implementations to test with on that platform.
PKCS11 = pkcs11 PKCS11 = pkcs11
ifeq ($(ARCH_DATA_MODEL), 64)
ifeq ($(PLATFORM), windows)
PKCS11 =
endif
endif
# Build Microsoft CryptoAPI provider only on Windows platform. # Build Microsoft CryptoAPI provider only on Windows platform.
MSCAPI = MSCAPI =
......
...@@ -54,7 +54,7 @@ public class $NAME_CLZ$ extends Charset ...@@ -54,7 +54,7 @@ public class $NAME_CLZ$ extends Charset
public CharsetEncoder newEncoder() { public CharsetEncoder newEncoder() {
initc2b(); initc2b();
return new DoubleByte.Encoder$ENCTYPE$(this, c2b, c2bIndex); return new DoubleByte.Encoder$ENCTYPE$(this, $ENC_REPLACEMENT$ c2b, c2bIndex);
} }
$B2C$ $B2C$
......
#Generated from JIS_X_0201.java # copy/pasted from JIS_X_0201.b2c + code points 0-0x1f and 0x7f
0x00 U+0000 0x00 0x0000
0x01 U+0001 0x01 0x0001
0x02 U+0002 0x02 0x0002
0x03 U+0003 0x03 0x0003
0x04 U+0004 0x04 0x0004
0x05 U+0005 0x05 0x0005
0x06 U+0006 0x06 0x0006
0x07 U+0007 0x07 0x0007
0x08 U+0008 0x08 0x0008
0x09 U+0009 0x09 0x0009
0x0a U+000a 0x0A 0x000A
0x0b U+000b 0x0B 0x000B
0x0c U+000c 0x0C 0x000C
0x0d U+000d 0x0D 0x000D
0x0e U+000e 0x0E 0x000E
0x0f U+000f 0x0F 0x000F
0x10 U+0010 0x10 0x0010
0x11 U+0011 0x11 0x0011
0x12 U+0012 0x12 0x0012
0x13 U+0013 0x13 0x0013
0x14 U+0014 0x14 0x0014
0x15 U+0015 0x15 0x0015
0x16 U+0016 0x16 0x0016
0x17 U+0017 0x17 0x0017
0x18 U+0018 0x18 0x0018
0x19 U+0019 0x19 0x0019
0x1a U+001a 0x1A 0x001A
0x1b U+001b 0x1B 0x001B
0x1c U+001c 0x1C 0x001C
0x1d U+001d 0x1D 0x001D
0x1e U+001e 0x1E 0x001E
0x1f U+001f 0x1F 0x001F
0x20 U+0020 0x20 0x0020 # SPACE
0x21 U+0021 0x21 0x0021 # EXCLAMATION MARK
0x22 U+0022 0x22 0x0022 # QUOTATION MARK
0x23 U+0023 0x23 0x0023 # NUMBER SIGN
0x24 U+0024 0x24 0x0024 # DOLLAR SIGN
0x25 U+0025 0x25 0x0025 # PERCENT SIGN
0x26 U+0026 0x26 0x0026 # AMPERSAND
0x27 U+0027 0x27 0x0027 # APOSTROPHE
0x28 U+0028 0x28 0x0028 # LEFT PARENTHESIS
0x29 U+0029 0x29 0x0029 # RIGHT PARENTHESIS
0x2a U+002a 0x2A 0x002A # ASTERISK
0x2b U+002b 0x2B 0x002B # PLUS SIGN
0x2c U+002c 0x2C 0x002C # COMMA
0x2d U+002d 0x2D 0x002D # HYPHEN-MINUS
0x2e U+002e 0x2E 0x002E # FULL STOP
0x2f U+002f 0x2F 0x002F # SOLIDUS
0x30 U+0030 0x30 0x0030 # DIGIT ZERO
0x31 U+0031 0x31 0x0031 # DIGIT ONE
0x32 U+0032 0x32 0x0032 # DIGIT TWO
0x33 U+0033 0x33 0x0033 # DIGIT THREE
0x34 U+0034 0x34 0x0034 # DIGIT FOUR
0x35 U+0035 0x35 0x0035 # DIGIT FIVE
0x36 U+0036 0x36 0x0036 # DIGIT SIX
0x37 U+0037 0x37 0x0037 # DIGIT SEVEN
0x38 U+0038 0x38 0x0038 # DIGIT EIGHT
0x39 U+0039 0x39 0x0039 # DIGIT NINE
0x3a U+003a 0x3A 0x003A # COLON
0x3b U+003b 0x3B 0x003B # SEMICOLON
0x3c U+003c 0x3C 0x003C # LESS-THAN SIGN
0x3d U+003d 0x3D 0x003D # EQUALS SIGN
0x3e U+003e 0x3E 0x003E # GREATER-THAN SIGN
0x3f U+003f 0x3F 0x003F # QUESTION MARK
0x40 U+0040 0x40 0x0040 # COMMERCIAL AT
0x41 U+0041 0x41 0x0041 # LATIN CAPITAL LETTER A
0x42 U+0042 0x42 0x0042 # LATIN CAPITAL LETTER B
0x43 U+0043 0x43 0x0043 # LATIN CAPITAL LETTER C
0x44 U+0044 0x44 0x0044 # LATIN CAPITAL LETTER D
0x45 U+0045 0x45 0x0045 # LATIN CAPITAL LETTER E
0x46 U+0046 0x46 0x0046 # LATIN CAPITAL LETTER F
0x47 U+0047 0x47 0x0047 # LATIN CAPITAL LETTER G
0x48 U+0048 0x48 0x0048 # LATIN CAPITAL LETTER H
0x49 U+0049 0x49 0x0049 # LATIN CAPITAL LETTER I
0x4a U+004a 0x4A 0x004A # LATIN CAPITAL LETTER J
0x4b U+004b 0x4B 0x004B # LATIN CAPITAL LETTER K
0x4c U+004c 0x4C 0x004C # LATIN CAPITAL LETTER L
0x4d U+004d 0x4D 0x004D # LATIN CAPITAL LETTER M
0x4e U+004e 0x4E 0x004E # LATIN CAPITAL LETTER N
0x4f U+004f 0x4F 0x004F # LATIN CAPITAL LETTER O
0x50 U+0050 0x50 0x0050 # LATIN CAPITAL LETTER P
0x51 U+0051 0x51 0x0051 # LATIN CAPITAL LETTER Q
0x52 U+0052 0x52 0x0052 # LATIN CAPITAL LETTER R
0x53 U+0053 0x53 0x0053 # LATIN CAPITAL LETTER S
0x54 U+0054 0x54 0x0054 # LATIN CAPITAL LETTER T
0x55 U+0055 0x55 0x0055 # LATIN CAPITAL LETTER U
0x56 U+0056 0x56 0x0056 # LATIN CAPITAL LETTER V
0x57 U+0057 0x57 0x0057 # LATIN CAPITAL LETTER W
0x58 U+0058 0x58 0x0058 # LATIN CAPITAL LETTER X
0x59 U+0059 0x59 0x0059 # LATIN CAPITAL LETTER Y
0x5a U+005a 0x5A 0x005A # LATIN CAPITAL LETTER Z
0x5b U+005b 0x5B 0x005B # LEFT SQUARE BRACKET
0x5c U+005c 0x5C 0x005C # YEN SIGN
0x5d U+005d 0x5D 0x005D # RIGHT SQUARE BRACKET
0x5e U+005e 0x5E 0x005E # CIRCUMFLEX ACCENT
0x5f U+005f 0x5F 0x005F # LOW LINE
0x60 U+0060 0x60 0x0060 # GRAVE ACCENT
0x61 U+0061 0x61 0x0061 # LATIN SMALL LETTER A
0x62 U+0062 0x62 0x0062 # LATIN SMALL LETTER B
0x63 U+0063 0x63 0x0063 # LATIN SMALL LETTER C
0x64 U+0064 0x64 0x0064 # LATIN SMALL LETTER D
0x65 U+0065 0x65 0x0065 # LATIN SMALL LETTER E
0x66 U+0066 0x66 0x0066 # LATIN SMALL LETTER F
0x67 U+0067 0x67 0x0067 # LATIN SMALL LETTER G
0x68 U+0068 0x68 0x0068 # LATIN SMALL LETTER H
0x69 U+0069 0x69 0x0069 # LATIN SMALL LETTER I
0x6a U+006a 0x6A 0x006A # LATIN SMALL LETTER J
0x6b U+006b 0x6B 0x006B # LATIN SMALL LETTER K
0x6c U+006c 0x6C 0x006C # LATIN SMALL LETTER L
0x6d U+006d 0x6D 0x006D # LATIN SMALL LETTER M
0x6e U+006e 0x6E 0x006E # LATIN SMALL LETTER N
0x6f U+006f 0x6F 0x006F # LATIN SMALL LETTER O
0x70 U+0070 0x70 0x0070 # LATIN SMALL LETTER P
0x71 U+0071 0x71 0x0071 # LATIN SMALL LETTER Q
0x72 U+0072 0x72 0x0072 # LATIN SMALL LETTER R
0x73 U+0073 0x73 0x0073 # LATIN SMALL LETTER S
0x74 U+0074 0x74 0x0074 # LATIN SMALL LETTER T
0x75 U+0075 0x75 0x0075 # LATIN SMALL LETTER U
0x76 U+0076 0x76 0x0076 # LATIN SMALL LETTER V
0x77 U+0077 0x77 0x0077 # LATIN SMALL LETTER W
0x78 U+0078 0x78 0x0078 # LATIN SMALL LETTER X
0x79 U+0079 0x79 0x0079 # LATIN SMALL LETTER Y
0x7a U+007a 0x7A 0x007A # LATIN SMALL LETTER Z
0x7b U+007b 0x7B 0x007B # LEFT CURLY BRACKET
0x7c U+007c 0x7C 0x007C # VERTICAL LINE
0x7d U+007d 0x7D 0x007D # RIGHT CURLY BRACKET
0x7e U+007e 0x7E 0x007E # OVERLINE
0x7f U+007f 0x7F 0x007F
0x80 U+fffd 0xA1 0xFF61 # HALFWIDTH IDEOGRAPHIC FULL STOP
0x81 U+fffd 0xA2 0xFF62 # HALFWIDTH LEFT CORNER BRACKET
0x82 U+fffd 0xA3 0xFF63 # HALFWIDTH RIGHT CORNER BRACKET
0x83 U+fffd 0xA4 0xFF64 # HALFWIDTH IDEOGRAPHIC COMMA
0x84 U+fffd 0xA5 0xFF65 # HALFWIDTH KATAKANA MIDDLE DOT
0x85 U+fffd 0xA6 0xFF66 # HALFWIDTH KATAKANA LETTER WO
0x86 U+fffd 0xA7 0xFF67 # HALFWIDTH KATAKANA LETTER SMALL A
0x87 U+fffd 0xA8 0xFF68 # HALFWIDTH KATAKANA LETTER SMALL I
0x88 U+fffd 0xA9 0xFF69 # HALFWIDTH KATAKANA LETTER SMALL U
0x89 U+fffd 0xAA 0xFF6A # HALFWIDTH KATAKANA LETTER SMALL E
0x8a U+fffd 0xAB 0xFF6B # HALFWIDTH KATAKANA LETTER SMALL O
0x8b U+fffd 0xAC 0xFF6C # HALFWIDTH KATAKANA LETTER SMALL YA
0x8c U+fffd 0xAD 0xFF6D # HALFWIDTH KATAKANA LETTER SMALL YU
0x8d U+fffd 0xAE 0xFF6E # HALFWIDTH KATAKANA LETTER SMALL YO
0x8e U+fffd 0xAF 0xFF6F # HALFWIDTH KATAKANA LETTER SMALL TU
0x8f U+fffd 0xB0 0xFF70 # HALFWIDTH KATAKANA-HIRAGANA PROLONGED SOUND MARK
0x90 U+fffd 0xB1 0xFF71 # HALFWIDTH KATAKANA LETTER A
0x91 U+fffd 0xB2 0xFF72 # HALFWIDTH KATAKANA LETTER I
0x92 U+fffd 0xB3 0xFF73 # HALFWIDTH KATAKANA LETTER U
0x93 U+fffd 0xB4 0xFF74 # HALFWIDTH KATAKANA LETTER E
0x94 U+fffd 0xB5 0xFF75 # HALFWIDTH KATAKANA LETTER O
0x95 U+fffd 0xB6 0xFF76 # HALFWIDTH KATAKANA LETTER KA
0x96 U+fffd 0xB7 0xFF77 # HALFWIDTH KATAKANA LETTER KI
0x97 U+fffd 0xB8 0xFF78 # HALFWIDTH KATAKANA LETTER KU
0x98 U+fffd 0xB9 0xFF79 # HALFWIDTH KATAKANA LETTER KE
0x99 U+fffd 0xBA 0xFF7A # HALFWIDTH KATAKANA LETTER KO
0x9a U+fffd 0xBB 0xFF7B # HALFWIDTH KATAKANA LETTER SA
0x9b U+fffd 0xBC 0xFF7C # HALFWIDTH KATAKANA LETTER SI
0x9c U+fffd 0xBD 0xFF7D # HALFWIDTH KATAKANA LETTER SU
0x9d U+fffd 0xBE 0xFF7E # HALFWIDTH KATAKANA LETTER SE
0x9e U+fffd 0xBF 0xFF7F # HALFWIDTH KATAKANA LETTER SO
0x9f U+fffd 0xC0 0xFF80 # HALFWIDTH KATAKANA LETTER TA
0xa0 U+fffd 0xC1 0xFF81 # HALFWIDTH KATAKANA LETTER TI
0xa1 U+ff61 0xC2 0xFF82 # HALFWIDTH KATAKANA LETTER TU
0xa2 U+ff62 0xC3 0xFF83 # HALFWIDTH KATAKANA LETTER TE
0xa3 U+ff63 0xC4 0xFF84 # HALFWIDTH KATAKANA LETTER TO
0xa4 U+ff64 0xC5 0xFF85 # HALFWIDTH KATAKANA LETTER NA
0xa5 U+ff65 0xC6 0xFF86 # HALFWIDTH KATAKANA LETTER NI
0xa6 U+ff66 0xC7 0xFF87 # HALFWIDTH KATAKANA LETTER NU
0xa7 U+ff67 0xC8 0xFF88 # HALFWIDTH KATAKANA LETTER NE
0xa8 U+ff68 0xC9 0xFF89 # HALFWIDTH KATAKANA LETTER NO
0xa9 U+ff69 0xCA 0xFF8A # HALFWIDTH KATAKANA LETTER HA
0xaa U+ff6a 0xCB 0xFF8B # HALFWIDTH KATAKANA LETTER HI
0xab U+ff6b 0xCC 0xFF8C # HALFWIDTH KATAKANA LETTER HU
0xac U+ff6c 0xCD 0xFF8D # HALFWIDTH KATAKANA LETTER HE
0xad U+ff6d 0xCE 0xFF8E # HALFWIDTH KATAKANA LETTER HO
0xae U+ff6e 0xCF 0xFF8F # HALFWIDTH KATAKANA LETTER MA
0xaf U+ff6f 0xD0 0xFF90 # HALFWIDTH KATAKANA LETTER MI
0xb0 U+ff70 0xD1 0xFF91 # HALFWIDTH KATAKANA LETTER MU
0xb1 U+ff71 0xD2 0xFF92 # HALFWIDTH KATAKANA LETTER ME
0xb2 U+ff72 0xD3 0xFF93 # HALFWIDTH KATAKANA LETTER MO
0xb3 U+ff73 0xD4 0xFF94 # HALFWIDTH KATAKANA LETTER YA
0xb4 U+ff74 0xD5 0xFF95 # HALFWIDTH KATAKANA LETTER YU
0xb5 U+ff75 0xD6 0xFF96 # HALFWIDTH KATAKANA LETTER YO
0xb6 U+ff76 0xD7 0xFF97 # HALFWIDTH KATAKANA LETTER RA
0xb7 U+ff77 0xD8 0xFF98 # HALFWIDTH KATAKANA LETTER RI
0xb8 U+ff78 0xD9 0xFF99 # HALFWIDTH KATAKANA LETTER RU
0xb9 U+ff79 0xDA 0xFF9A # HALFWIDTH KATAKANA LETTER RE
0xba U+ff7a 0xDB 0xFF9B # HALFWIDTH KATAKANA LETTER RO
0xbb U+ff7b 0xDC 0xFF9C # HALFWIDTH KATAKANA LETTER WA
0xbc U+ff7c 0xDD 0xFF9D # HALFWIDTH KATAKANA LETTER N
0xbd U+ff7d 0xDE 0xFF9E # HALFWIDTH KATAKANA VOICED SOUND MARK
0xbe U+ff7e 0xDF 0xFF9F # HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK
0xbf U+ff7f
0xc0 U+ff80
0xc1 U+ff81
0xc2 U+ff82
0xc3 U+ff83
0xc4 U+ff84
0xc5 U+ff85
0xc6 U+ff86
0xc7 U+ff87
0xc8 U+ff88
0xc9 U+ff89
0xca U+ff8a
0xcb U+ff8b
0xcc U+ff8c
0xcd U+ff8d
0xce U+ff8e
0xcf U+ff8f
0xd0 U+ff90
0xd1 U+ff91
0xd2 U+ff92
0xd3 U+ff93
0xd4 U+ff94
0xd5 U+ff95
0xd6 U+ff96
0xd7 U+ff97
0xd8 U+ff98
0xd9 U+ff99
0xda U+ff9a
0xdb U+ff9b
0xdc U+ff9c
0xdd U+ff9d
0xde U+ff9e
0xdf U+ff9f
0xe0 U+fffd
0xe1 U+fffd
0xe2 U+fffd
0xe3 U+fffd
0xe4 U+fffd
0xe5 U+fffd
0xe6 U+fffd
0xe7 U+fffd
0xe8 U+fffd
0xe9 U+fffd
0xea U+fffd
0xeb U+fffd
0xec U+fffd
0xed U+fffd
0xee U+fffd
0xef U+fffd
0xf0 U+fffd
0xf1 U+fffd
0xf2 U+fffd
0xf3 U+fffd
0xf4 U+fffd
0xf5 U+fffd
0xf6 U+fffd
0xf7 U+fffd
0xf8 U+fffd
0xf9 U+fffd
0xfa U+fffd
0xfb U+fffd
0xfc U+fffd
0xfd U+fffd
0xfe U+fffd
0xff U+fffd
此差异已折叠。
#
# The diff of JIS_X_0208_MS5022X_Decoder and
# JIS_X_0208_MS5022X_Encoder
#
0x215d 0xff0d
0x2142 0x2225
0x2123 0xff61
0x2156 0xff62
0x2157 0xff63
0x2122 0xff64
0x2126 0xff65
0x2572 0xff66
0x2521 0xff67
0x2523 0xff68
0x2525 0xff69
0x2527 0xff6a
0x2529 0xff6b
0x2563 0xff6c
0x2565 0xff6d
0x2567 0xff6e
0x2543 0xff6f
0x213c 0xff70
0x2522 0xff71
0x2524 0xff72
0x2526 0xff73
0x2528 0xff74
0x252a 0xff75
0x252b 0xff76
0x252d 0xff77
0x252f 0xff78
0x2531 0xff79
0x2533 0xff7a
0x2535 0xff7b
0x2537 0xff7c
0x2539 0xff7d
0x253b 0xff7e
0x253d 0xff7f
0x253f 0xff80
0x2541 0xff81
0x2544 0xff82
0x2546 0xff83
0x2548 0xff84
0x254a 0xff85
0x254b 0xff86
0x254c 0xff87
0x254d 0xff88
0x254e 0xff89
0x254f 0xff8a
0x2552 0xff8b
0x2555 0xff8c
0x2558 0xff8d
0x255b 0xff8e
0x255e 0xff8f
0x255f 0xff90
0x2560 0xff91
0x2561 0xff92
0x2562 0xff93
0x2564 0xff94
0x2566 0xff95
0x2568 0xff96
0x2569 0xff97
0x256a 0xff98
0x256b 0xff99
0x256c 0xff9a
0x256d 0xff9b
0x256f 0xff9c
0x2573 0xff9d
0x212b 0xff9e
0x212c 0xff9f
0x2171 0xffe0
0x2172 0xffe1
0x224c 0xffe2
此差异已折叠。
此差异已折叠。
0x224c 0xffe2
0x225d 0x22a5
0x2265 0x221a
0x2269 0x222b
0x2d70 0x2252
0x2d71 0x2261
0x2d77 0x2220
0x2d7a 0x2235
0x2d7b 0x2229
0x2d7c 0x222a
#
# Generated from JIS_X_0208_De/Encoder
#
# added 0x2129 entry, which is the "replacement" for 0208
0x2129 0xff1f
#
0x2d21 0x2460
0x2d22 0x2461
0x2d23 0x2462
0x2d24 0x2463
0x2d25 0x2464
0x2d26 0x2465
0x2d27 0x2466
0x2d28 0x2467
0x2d29 0x2468
0x2d2a 0x2469
0x2d2b 0x246a
0x2d2c 0x246b
0x2d2d 0x246c
0x2d2e 0x246d
0x2d2f 0x246e
0x2d30 0x246f
0x2d31 0x2470
0x2d32 0x2471
0x2d33 0x2472
0x2d34 0x2473
0x2d35 0x2160
0x2d36 0x2161
0x2d37 0x2162
0x2d38 0x2163
0x2d39 0x2164
0x2d3a 0x2165
0x2d3b 0x2166
0x2d3c 0x2167
0x2d3d 0x2168
0x2d3e 0x2169
0x2d40 0x3349
0x2d41 0x3314
0x2d42 0x3322
0x2d43 0x334d
0x2d44 0x3318
0x2d45 0x3327
0x2d46 0x3303
0x2d47 0x3336
0x2d48 0x3351
0x2d49 0x3357
0x2d4a 0x330d
0x2d4b 0x3326
0x2d4c 0x3323
0x2d4d 0x332b
0x2d4e 0x334a
0x2d4f 0x333b
0x2d50 0x339c
0x2d51 0x339d
0x2d52 0x339e
0x2d53 0x338e
0x2d54 0x338f
0x2d55 0x33c4
0x2d56 0x33a1
0x2d5f 0x337b
0x2d60 0x301d
0x2d61 0x301f
0x2d62 0x2116
0x2d63 0x33cd
0x2d64 0x2121
0x2d65 0x32a4
0x2d66 0x32a5
0x2d67 0x32a6
0x2d68 0x32a7
0x2d69 0x32a8
0x2d6a 0x3231
0x2d6b 0x3232
0x2d6c 0x3239
0x2d6d 0x337e
0x2d6e 0x337d
0x2d6f 0x337c
0x2d70 0x2252
0x2d71 0x2261
0x2d72 0x222b
0x2d73 0x222e
0x2d74 0x2211
0x2d75 0x221a
0x2d76 0x22a5
0x2d77 0x2220
0x2d78 0x221f
0x2d79 0x22bf
0x2d7a 0x2235
0x2d7b 0x2229
0x2d7c 0x222a
0x7921 0x7e8a
0x7922 0x891c
0x7923 0x9348
0x7924 0x9288
0x7925 0x84dc
0x7926 0x4fc9
0x7927 0x70bb
0x7928 0x6631
0x7929 0x68c8
0x792a 0x92f9
0x792b 0x66fb
0x792c 0x5f45
0x792d 0x4e28
0x792e 0x4ee1
0x792f 0x4efc
0x7930 0x4f00
0x7931 0x4f03
0x7932 0x4f39
0x7933 0x4f56
0x7934 0x4f92
0x7935 0x4f8a
0x7936 0x4f9a
0x7937 0x4f94
0x7938 0x4fcd
0x7939 0x5040
0x793a 0x5022
0x793b 0x4fff
0x793c 0x501e
0x793d 0x5046
0x793e 0x5070
0x793f 0x5042
0x7940 0x5094
0x7941 0x50f4
0x7942 0x50d8
0x7943 0x514a
0x7944 0x5164
0x7945 0x519d
0x7946 0x51be
0x7947 0x51ec
0x7948 0x5215
0x7949 0x529c
0x794a 0x52a6
0x794b 0x52c0
0x794c 0x52db
0x794d 0x5300
0x794e 0x5307
0x794f 0x5324
0x7950 0x5372
0x7951 0x5393
0x7952 0x53b2
0x7953 0x53dd
0x7954 0xfa0e
0x7955 0x549c
0x7956 0x548a
0x7957 0x54a9
0x7958 0x54ff
0x7959 0x5586
0x795a 0x5759
0x795b 0x5765
0x795c 0x57ac
0x795d 0x57c8
0x795e 0x57c7
0x795f 0xfa0f
0x7960 0xfa10
0x7961 0x589e
0x7962 0x58b2
0x7963 0x590b
0x7964 0x5953
0x7965 0x595b
0x7966 0x595d
0x7967 0x5963
0x7968 0x59a4
0x7969 0x59ba
0x796a 0x5b56
0x796b 0x5bc0
0x796c 0x752f
0x796d 0x5bd8
0x796e 0x5bec
0x796f 0x5c1e
0x7970 0x5ca6
0x7971 0x5cba
0x7972 0x5cf5
0x7973 0x5d27
0x7974 0x5d53
0x7975 0xfa11
0x7976 0x5d42
0x7977 0x5d6d
0x7978 0x5db8
0x7979 0x5db9
0x797a 0x5dd0
0x797b 0x5f21
0x797c 0x5f34
0x797d 0x5f67
0x797e 0x5fb7
0x7a21 0x5fde
0x7a22 0x605d
0x7a23 0x6085
0x7a24 0x608a
0x7a25 0x60de
0x7a26 0x60d5
0x7a27 0x6120
0x7a28 0x60f2
0x7a29 0x6111
0x7a2a 0x6137
0x7a2b 0x6130
0x7a2c 0x6198
0x7a2d 0x6213
0x7a2e 0x62a6
0x7a2f 0x63f5
0x7a30 0x6460
0x7a31 0x649d
0x7a32 0x64ce
0x7a33 0x654e
0x7a34 0x6600
0x7a35 0x6615
0x7a36 0x663b
0x7a37 0x6609
0x7a38 0x662e
0x7a39 0x661e
0x7a3a 0x6624
0x7a3b 0x6665
0x7a3c 0x6657
0x7a3d 0x6659
0x7a3e 0xfa12
0x7a3f 0x6673
0x7a40 0x6699
0x7a41 0x66a0
0x7a42 0x66b2
0x7a43 0x66bf
0x7a44 0x66fa
0x7a45 0x670e
0x7a46 0xf929
0x7a47 0x6766
0x7a48 0x67bb
0x7a49 0x6852
0x7a4a 0x67c0
0x7a4b 0x6801
0x7a4c 0x6844
0x7a4d 0x68cf
0x7a4e 0xfa13
0x7a4f 0x6968
0x7a50 0xfa14
0x7a51 0x6998
0x7a52 0x69e2
0x7a53 0x6a30
0x7a54 0x6a6b
0x7a55 0x6a46
0x7a56 0x6a73
0x7a57 0x6a7e
0x7a58 0x6ae2
0x7a59 0x6ae4
0x7a5a 0x6bd6
0x7a5b 0x6c3f
0x7a5c 0x6c5c
0x7a5d 0x6c86
0x7a5e 0x6c6f
0x7a5f 0x6cda
0x7a60 0x6d04
0x7a61 0x6d87
0x7a62 0x6d6f
0x7a63 0x6d96
0x7a64 0x6dac
0x7a65 0x6dcf
0x7a66 0x6df8
0x7a67 0x6df2
0x7a68 0x6dfc
0x7a69 0x6e39
0x7a6a 0x6e5c
0x7a6b 0x6e27
0x7a6c 0x6e3c
0x7a6d 0x6ebf
0x7a6e 0x6f88
0x7a6f 0x6fb5
0x7a70 0x6ff5
0x7a71 0x7005
0x7a72 0x7007
0x7a73 0x7028
0x7a74 0x7085
0x7a75 0x70ab
0x7a76 0x710f
0x7a77 0x7104
0x7a78 0x715c
0x7a79 0x7146
0x7a7a 0x7147
0x7a7b 0xfa15
0x7a7c 0x71c1
0x7a7d 0x71fe
0x7a7e 0x72b1
0x7b21 0x72be
0x7b22 0x7324
0x7b23 0xfa16
0x7b24 0x7377
0x7b25 0x73bd
0x7b26 0x73c9
0x7b27 0x73d6
0x7b28 0x73e3
0x7b29 0x73d2
0x7b2a 0x7407
0x7b2b 0x73f5
0x7b2c 0x7426
0x7b2d 0x742a
0x7b2e 0x7429
0x7b2f 0x742e
0x7b30 0x7462
0x7b31 0x7489
0x7b32 0x749f
0x7b33 0x7501
0x7b34 0x756f
0x7b35 0x7682
0x7b36 0x769c
0x7b37 0x769e
0x7b38 0x769b
0x7b39 0x76a6
0x7b3a 0xfa17
0x7b3b 0x7746
0x7b3c 0x52af
0x7b3d 0x7821
0x7b3e 0x784e
0x7b3f 0x7864
0x7b40 0x787a
0x7b41 0x7930
0x7b42 0xfa18
0x7b43 0xfa19
0x7b44 0xfa1a
0x7b45 0x7994
0x7b46 0xfa1b
0x7b47 0x799b
0x7b48 0x7ad1
0x7b49 0x7ae7
0x7b4a 0xfa1c
0x7b4b 0x7aeb
0x7b4c 0x7b9e
0x7b4d 0xfa1d
0x7b4e 0x7d48
0x7b4f 0x7d5c
0x7b50 0x7db7
0x7b51 0x7da0
0x7b52 0x7dd6
0x7b53 0x7e52
0x7b54 0x7f47
0x7b55 0x7fa1
0x7b56 0xfa1e
0x7b57 0x8301
0x7b58 0x8362
0x7b59 0x837f
0x7b5a 0x83c7
0x7b5b 0x83f6
0x7b5c 0x8448
0x7b5d 0x84b4
0x7b5e 0x8553
0x7b5f 0x8559
0x7b60 0x856b
0x7b61 0xfa1f
0x7b62 0x85b0
0x7b63 0xfa20
0x7b64 0xfa21
0x7b65 0x8807
0x7b66 0x88f5
0x7b67 0x8a12
0x7b68 0x8a37
0x7b69 0x8a79
0x7b6a 0x8aa7
0x7b6b 0x8abe
0x7b6c 0x8adf
0x7b6d 0xfa22
0x7b6e 0x8af6
0x7b6f 0x8b53
0x7b70 0x8b7f
0x7b71 0x8cf0
0x7b72 0x8cf4
0x7b73 0x8d12
0x7b74 0x8d76
0x7b75 0xfa23
0x7b76 0x8ecf
0x7b77 0xfa24
0x7b78 0xfa25
0x7b79 0x9067
0x7b7a 0x90de
0x7b7b 0xfa26
0x7b7c 0x9115
0x7b7d 0x9127
0x7b7e 0x91da
0x7c21 0x91d7
0x7c22 0x91de
0x7c23 0x91ed
0x7c24 0x91ee
0x7c25 0x91e4
0x7c26 0x91e5
0x7c27 0x9206
0x7c28 0x9210
0x7c29 0x920a
0x7c2a 0x923a
0x7c2b 0x9240
0x7c2c 0x923c
0x7c2d 0x924e
0x7c2e 0x9259
0x7c2f 0x9251
0x7c30 0x9239
0x7c31 0x9267
0x7c32 0x92a7
0x7c33 0x9277
0x7c34 0x9278
0x7c35 0x92e7
0x7c36 0x92d7
0x7c37 0x92d9
0x7c38 0x92d0
0x7c39 0xfa27
0x7c3a 0x92d5
0x7c3b 0x92e0
0x7c3c 0x92d3
0x7c3d 0x9325
0x7c3e 0x9321
0x7c3f 0x92fb
0x7c40 0xfa28
0x7c41 0x931e
0x7c42 0x92ff
0x7c43 0x931d
0x7c44 0x9302
0x7c45 0x9370
0x7c46 0x9357
0x7c47 0x93a4
0x7c48 0x93c6
0x7c49 0x93de
0x7c4a 0x93f8
0x7c4b 0x9431
0x7c4c 0x9445
0x7c4d 0x9448
0x7c4e 0x9592
0x7c4f 0xf9dc
0x7c50 0xfa29
0x7c51 0x969d
0x7c52 0x96af
0x7c53 0x9733
0x7c54 0x973b
0x7c55 0x9743
0x7c56 0x974d
0x7c57 0x974f
0x7c58 0x9751
0x7c59 0x9755
0x7c5a 0x9857
0x7c5b 0x9865
0x7c5c 0xfa2a
0x7c5d 0xfa2b
0x7c5e 0x9927
0x7c5f 0xfa2c
0x7c60 0x999e
0x7c61 0x9a4e
0x7c62 0x9ad9
0x7c63 0x9adc
0x7c64 0x9b75
0x7c65 0x9b72
0x7c66 0x9b8f
0x7c67 0x9bb1
0x7c68 0x9bbb
0x7c69 0x9c00
0x7c6a 0x9d70
0x7c6b 0x9d6b
0x7c6c 0xfa2d
0x7c6d 0x9e19
0x7c6e 0x9ed1
0x7c71 0x2170
0x7c72 0x2171
0x7c73 0x2172
0x7c74 0x2173
0x7c75 0x2174
0x7c76 0x2175
0x7c77 0x2176
0x7c78 0x2177
0x7c79 0x2178
0x7c7a 0x2179
0x7c7b 0x3052
0x7c7c 0x00a6
0x7c7d 0xff07
0x7c7e 0xff02
0x9321 0x2170
0x9322 0x2171
0x9323 0x2172
0x9324 0x2173
0x9325 0x2174
0x9326 0x2175
0x9327 0x2176
0x9328 0x2177
0x9329 0x2178
0x932a 0x2179
0x932b 0x2160
0x932c 0x2161
0x932d 0x2162
0x932e 0x2163
0x932f 0x2164
0x9330 0x2165
0x9331 0x2166
0x9332 0x2167
0x9333 0x2168
0x9334 0x2169
0x9335 0x3052
0x9336 0x00a6
0x9337 0xff07
0x9338 0xff02
0x9339 0x3231
0x933a 0x2116
0x933b 0x2121
0x933c 0x306e
0x933d 0x7e8a
0x933e 0x891c
0x933f 0x9348
0x9340 0x9288
0x9341 0x84dc
0x9342 0x4fc9
0x9343 0x70bb
0x9344 0x6631
0x9345 0x68c8
0x9346 0x92f9
0x9347 0x66fb
0x9348 0x5f45
0x9349 0x4e28
0x934a 0x4ee1
0x934b 0x4efc
0x934c 0x4f00
0x934d 0x4f03
0x934e 0x4f39
0x934f 0x4f56
0x9350 0x4f92
0x9351 0x4f8a
0x9352 0x4f9a
0x9353 0x4f94
0x9354 0x4fcd
0x9355 0x5040
0x9356 0x5022
0x9357 0x4fff
0x9358 0x501e
0x9359 0x5046
0x935a 0x5070
0x935b 0x5042
0x935c 0x5094
0x935d 0x50f4
0x935e 0x50d8
0x935f 0x514a
0x9360 0x5164
0x9361 0x519d
0x9362 0x51be
0x9363 0x51ec
0x9364 0x5215
0x9365 0x529c
0x9366 0x52a6
0x9367 0x52c0
0x9368 0x52db
0x9369 0x5300
0x936a 0x5307
0x936b 0x5324
0x936c 0x5372
0x936d 0x5393
0x936e 0x53b2
0x936f 0x53dd
0x9370 0xfa0e
0x9371 0x549c
0x9372 0x548a
0x9373 0x54a9
0x9374 0x54ff
0x9375 0x5586
0x9376 0x5759
0x9377 0x5765
0x9378 0x57ac
0x9379 0x57c8
0x937a 0x57c7
0x937b 0xfa0f
0x937c 0xfa10
0x937d 0x589e
0x937e 0x58b2
0x9421 0x590b
0x9422 0x5953
0x9423 0x595b
0x9424 0x595d
0x9425 0x5963
0x9426 0x59a4
0x9427 0x59ba
0x9428 0x5b56
0x9429 0x5bc0
0x942a 0x752f
0x942b 0x5bd8
0x942c 0x5bec
0x942d 0x5c1e
0x942e 0x5ca6
0x942f 0x5cba
0x9430 0x5cf5
0x9431 0x5d27
0x9432 0x5d53
0x9433 0xfa11
0x9434 0x5d42
0x9435 0x5d6d
0x9436 0x5db8
0x9437 0x5db9
0x9438 0x5dd0
0x9439 0x5f21
0x943a 0x5f34
0x943b 0x5f67
0x943c 0x5fb7
0x943d 0x5fde
0x943e 0x605d
0x943f 0x6085
0x9440 0x608a
0x9441 0x60de
0x9442 0x60d5
0x9443 0x6120
0x9444 0x60f2
0x9445 0x6111
0x9446 0x6137
0x9447 0x6130
0x9448 0x6198
0x9449 0x6213
0x944a 0x62a6
0x944b 0x63f5
0x944c 0x6460
0x944d 0x649d
0x944e 0x64ce
0x944f 0x654e
0x9450 0x6600
0x9451 0x6615
0x9452 0x663b
0x9453 0x6609
0x9454 0x662e
0x9455 0x661e
0x9456 0x6624
0x9457 0x6665
0x9458 0x6657
0x9459 0x6659
0x945a 0xfa12
0x945b 0x6673
0x945c 0x6699
0x945d 0x66a0
0x945e 0x66b2
0x945f 0x66bf
0x9460 0x66fa
0x9461 0x670e
0x9462 0xf929
0x9463 0x6766
0x9464 0x67bb
0x9465 0x6852
0x9466 0x67c0
0x9467 0x6801
0x9468 0x6844
0x9469 0x68cf
0x946a 0xfa13
0x946b 0x6968
0x946c 0xfa14
0x946d 0x6998
0x946e 0x69e2
0x946f 0x6a30
0x9470 0x6a6b
0x9471 0x6a46
0x9472 0x6a73
0x9473 0x6a7e
0x9474 0x6ae2
0x9475 0x6ae4
0x9476 0x6bd6
0x9477 0x6c3f
0x9478 0x6c5c
0x9479 0x6c86
0x947a 0x6c6f
0x947b 0x6cda
0x947c 0x6d04
0x947d 0x6d87
0x947e 0x6d6f
0x9521 0x6d96
0x9522 0x6dac
0x9523 0x6dcf
0x9524 0x6df8
0x9525 0x6df2
0x9526 0x6dfc
0x9527 0x6e39
0x9528 0x6e5c
0x9529 0x6e27
0x952a 0x6e3c
0x952b 0x6ebf
0x952c 0x6f88
0x952d 0x6fb5
0x952e 0x6ff5
0x952f 0x7005
0x9530 0x7007
0x9531 0x7028
0x9532 0x7085
0x9533 0x70ab
0x9534 0x710f
0x9535 0x7104
0x9536 0x715c
0x9537 0x7146
0x9538 0x7147
0x9539 0xfa15
0x953a 0x71c1
0x953b 0x71fe
0x953c 0x72b1
0x953d 0x72be
0x953e 0x7324
0x953f 0xfa16
0x9540 0x7377
0x9541 0x73bd
0x9542 0x73c9
0x9543 0x73d6
0x9544 0x73e3
0x9545 0x73d2
0x9546 0x7407
0x9547 0x73f5
0x9548 0x7426
0x9549 0x742a
0x954a 0x7429
0x954b 0x742e
0x954c 0x7462
0x954d 0x7489
0x954e 0x749f
0x954f 0x7501
0x9550 0x756f
0x9551 0x7682
0x9552 0x769c
0x9553 0x769e
0x9554 0x769b
0x9555 0x76a6
0x9556 0xfa17
0x9557 0x7746
0x9558 0x52af
0x9559 0x7821
0x955a 0x784e
0x955b 0x7864
0x955c 0x787a
0x955d 0x7930
0x955e 0xfa18
0x955f 0xfa19
0x9560 0xfa1a
0x9561 0x7994
0x9562 0xfa1b
0x9563 0x799b
0x9564 0x7ad1
0x9565 0x7ae7
0x9566 0xfa1c
0x9567 0x7aeb
0x9568 0x7b9e
0x9569 0xfa1d
0x956a 0x7d48
0x956b 0x7d5c
0x956c 0x7db7
0x956d 0x7da0
0x956e 0x7dd6
0x956f 0x7e52
0x9570 0x7f47
0x9571 0x7fa1
0x9572 0xfa1e
0x9573 0x8301
0x9574 0x8362
0x9575 0x837f
0x9576 0x83c7
0x9577 0x83f6
0x9578 0x8448
0x9579 0x84b4
0x957a 0x8553
0x957b 0x8559
0x957c 0x856b
0x957d 0xfa1f
0x957e 0x85b0
0x9621 0xfa20
0x9622 0xfa21
0x9623 0x8807
0x9624 0x88f5
0x9625 0x8a12
0x9626 0x8a37
0x9627 0x8a79
0x9628 0x8aa7
0x9629 0x8abe
0x962a 0x8adf
0x962b 0xfa22
0x962c 0x8af6
0x962d 0x8b53
0x962e 0x8b7f
0x962f 0x8cf0
0x9630 0x8cf4
0x9631 0x8d12
0x9632 0x8d76
0x9633 0xfa23
0x9634 0x8ecf
0x9635 0xfa24
0x9636 0xfa25
0x9637 0x9067
0x9638 0x90de
0x9639 0xfa26
0x963a 0x9115
0x963b 0x9127
0x963c 0x91da
0x963d 0x91d7
0x963e 0x91de
0x963f 0x91ed
0x9640 0x91ee
0x9641 0x91e4
0x9642 0x91e5
0x9643 0x9206
0x9644 0x9210
0x9645 0x920a
0x9646 0x923a
0x9647 0x9240
0x9648 0x923c
0x9649 0x924e
0x964a 0x9259
0x964b 0x9251
0x964c 0x9239
0x964d 0x9267
0x964e 0x92a7
0x964f 0x9277
0x9650 0x9278
0x9651 0x92e7
0x9652 0x92d7
0x9653 0x92d9
0x9654 0x92d0
0x9655 0xfa27
0x9656 0x92d5
0x9657 0x92e0
0x9658 0x92d3
0x9659 0x9325
0x965a 0x9321
0x965b 0x92fb
0x965c 0xfa28
0x965d 0x931e
0x965e 0x92ff
0x965f 0x931d
0x9660 0x9302
0x9661 0x9370
0x9662 0x9357
0x9663 0x93a4
0x9664 0x93c6
0x9665 0x93de
0x9666 0x93f8
0x9667 0x9431
0x9668 0x9445
0x9669 0x9448
0x966a 0x9592
0x966b 0xf9dc
0x966c 0xfa29
0x966d 0x969d
0x966e 0x96af
0x966f 0x9733
0x9670 0x973b
0x9671 0x9743
0x9672 0x974d
0x9673 0x974f
0x9674 0x9751
0x9675 0x9755
0x9676 0x9857
0x9677 0x9865
0x9678 0xfa2a
0x9679 0xfa2b
0x967a 0x9927
0x967b 0xfa2c
0x967c 0x999e
0x967d 0x9a4e
0x967e 0x9ad9
0x9721 0x9adc
0x9722 0x9b75
0x9723 0x9b72
0x9724 0x9b8f
0x9725 0x9bb1
0x9726 0x9bbb
0x9727 0x9c00
0x9728 0x9d70
0x9729 0x9d6b
0x972a 0xfa2d
0x972b 0x9e19
0x972c 0x9ed1
0x7921 0x7e8a
0x7922 0x891c
0x7923 0x9348
0x7924 0x9288
0x7925 0x84dc
0x7926 0x4fc9
0x7927 0x70bb
0x7928 0x6631
0x7929 0x68c8
0x792a 0x92f9
0x792b 0x66fb
0x792c 0x5f45
0x792d 0x4e28
0x792e 0x4ee1
0x792f 0x4efc
0x7930 0x4f00
0x7931 0x4f03
0x7932 0x4f39
0x7933 0x4f56
0x7934 0x4f92
0x7935 0x4f8a
0x7936 0x4f9a
0x7937 0x4f94
0x7938 0x4fcd
0x7939 0x5040
0x793a 0x5022
0x793b 0x4fff
0x793c 0x501e
0x793d 0x5046
0x793e 0x5070
0x793f 0x5042
0x7940 0x5094
0x7941 0x50f4
0x7942 0x50d8
0x7943 0x514a
0x7944 0x5164
0x7945 0x519d
0x7946 0x51be
0x7947 0x51ec
0x7948 0x5215
0x7949 0x529c
0x794a 0x52a6
0x794b 0x52c0
0x794c 0x52db
0x794d 0x5300
0x794e 0x5307
0x794f 0x5324
0x7950 0x5372
0x7951 0x5393
0x7952 0x53b2
0x7953 0x53dd
0x7954 0xfa0e
0x7955 0x549c
0x7956 0x548a
0x7957 0x54a9
0x7958 0x54ff
0x7959 0x5586
0x795a 0x5759
0x795b 0x5765
0x795c 0x57ac
0x795d 0x57c8
0x795e 0x57c7
0x795f 0xfa0f
0x7960 0xfa10
0x7961 0x589e
0x7962 0x58b2
0x7963 0x590b
0x7964 0x5953
0x7965 0x595b
0x7966 0x595d
0x7967 0x5963
0x7968 0x59a4
0x7969 0x59ba
0x796a 0x5b56
0x796b 0x5bc0
0x796c 0x752f
0x796d 0x5bd8
0x796e 0x5bec
0x796f 0x5c1e
0x7970 0x5ca6
0x7971 0x5cba
0x7972 0x5cf5
0x7973 0x5d27
0x7974 0x5d53
0x7975 0xfa11
0x7976 0x5d42
0x7977 0x5d6d
0x7978 0x5db8
0x7979 0x5db9
0x797a 0x5dd0
0x797b 0x5f21
0x797c 0x5f34
0x797d 0x5f67
0x797e 0x5fb7
0x7a21 0x5fde
0x7a22 0x605d
0x7a23 0x6085
0x7a24 0x608a
0x7a25 0x60de
0x7a26 0x60d5
0x7a27 0x6120
0x7a28 0x60f2
0x7a29 0x6111
0x7a2a 0x6137
0x7a2b 0x6130
0x7a2c 0x6198
0x7a2d 0x6213
0x7a2e 0x62a6
0x7a2f 0x63f5
0x7a30 0x6460
0x7a31 0x649d
0x7a32 0x64ce
0x7a33 0x654e
0x7a34 0x6600
0x7a35 0x6615
0x7a36 0x663b
0x7a37 0x6609
0x7a38 0x662e
0x7a39 0x661e
0x7a3a 0x6624
0x7a3b 0x6665
0x7a3c 0x6657
0x7a3d 0x6659
0x7a3e 0xfa12
0x7a3f 0x6673
0x7a40 0x6699
0x7a41 0x66a0
0x7a42 0x66b2
0x7a43 0x66bf
0x7a44 0x66fa
0x7a45 0x670e
0x7a46 0xf929
0x7a47 0x6766
0x7a48 0x67bb
0x7a49 0x6852
0x7a4a 0x67c0
0x7a4b 0x6801
0x7a4c 0x6844
0x7a4d 0x68cf
0x7a4e 0xfa13
0x7a4f 0x6968
0x7a50 0xfa14
0x7a51 0x6998
0x7a52 0x69e2
0x7a53 0x6a30
0x7a54 0x6a6b
0x7a55 0x6a46
0x7a56 0x6a73
0x7a57 0x6a7e
0x7a58 0x6ae2
0x7a59 0x6ae4
0x7a5a 0x6bd6
0x7a5b 0x6c3f
0x7a5c 0x6c5c
0x7a5d 0x6c86
0x7a5e 0x6c6f
0x7a5f 0x6cda
0x7a60 0x6d04
0x7a61 0x6d87
0x7a62 0x6d6f
0x7a63 0x6d96
0x7a64 0x6dac
0x7a65 0x6dcf
0x7a66 0x6df8
0x7a67 0x6df2
0x7a68 0x6dfc
0x7a69 0x6e39
0x7a6a 0x6e5c
0x7a6b 0x6e27
0x7a6c 0x6e3c
0x7a6d 0x6ebf
0x7a6e 0x6f88
0x7a6f 0x6fb5
0x7a70 0x6ff5
0x7a71 0x7005
0x7a72 0x7007
0x7a73 0x7028
0x7a74 0x7085
0x7a75 0x70ab
0x7a76 0x710f
0x7a77 0x7104
0x7a78 0x715c
0x7a79 0x7146
0x7a7a 0x7147
0x7a7b 0xfa15
0x7a7c 0x71c1
0x7a7d 0x71fe
0x7a7e 0x72b1
0x7b21 0x72be
0x7b22 0x7324
0x7b23 0xfa16
0x7b24 0x7377
0x7b25 0x73bd
0x7b26 0x73c9
0x7b27 0x73d6
0x7b28 0x73e3
0x7b29 0x73d2
0x7b2a 0x7407
0x7b2b 0x73f5
0x7b2c 0x7426
0x7b2d 0x742a
0x7b2e 0x7429
0x7b2f 0x742e
0x7b30 0x7462
0x7b31 0x7489
0x7b32 0x749f
0x7b33 0x7501
0x7b34 0x756f
0x7b35 0x7682
0x7b36 0x769c
0x7b37 0x769e
0x7b38 0x769b
0x7b39 0x76a6
0x7b3a 0xfa17
0x7b3b 0x7746
0x7b3c 0x52af
0x7b3d 0x7821
0x7b3e 0x784e
0x7b3f 0x7864
0x7b40 0x787a
0x7b41 0x7930
0x7b42 0xfa18
0x7b43 0xfa19
0x7b44 0xfa1a
0x7b45 0x7994
0x7b46 0xfa1b
0x7b47 0x799b
0x7b48 0x7ad1
0x7b49 0x7ae7
0x7b4a 0xfa1c
0x7b4b 0x7aeb
0x7b4c 0x7b9e
0x7b4d 0xfa1d
0x7b4e 0x7d48
0x7b4f 0x7d5c
0x7b50 0x7db7
0x7b51 0x7da0
0x7b52 0x7dd6
0x7b53 0x7e52
0x7b54 0x7f47
0x7b55 0x7fa1
0x7b56 0xfa1e
0x7b57 0x8301
0x7b58 0x8362
0x7b59 0x837f
0x7b5a 0x83c7
0x7b5b 0x83f6
0x7b5c 0x8448
0x7b5d 0x84b4
0x7b5e 0x8553
0x7b5f 0x8559
0x7b60 0x856b
0x7b61 0xfa1f
0x7b62 0x85b0
0x7b63 0xfa20
0x7b64 0xfa21
0x7b65 0x8807
0x7b66 0x88f5
0x7b67 0x8a12
0x7b68 0x8a37
0x7b69 0x8a79
0x7b6a 0x8aa7
0x7b6b 0x8abe
0x7b6c 0x8adf
0x7b6d 0xfa22
0x7b6e 0x8af6
0x7b6f 0x8b53
0x7b70 0x8b7f
0x7b71 0x8cf0
0x7b72 0x8cf4
0x7b73 0x8d12
0x7b74 0x8d76
0x7b75 0xfa23
0x7b76 0x8ecf
0x7b77 0xfa24
0x7b78 0xfa25
0x7b79 0x9067
0x7b7a 0x90de
0x7b7b 0xfa26
0x7b7c 0x9115
0x7b7d 0x9127
0x7b7e 0x91da
0x7c21 0x91d7
0x7c22 0x91de
0x7c23 0x91ed
0x7c24 0x91ee
0x7c25 0x91e4
0x7c26 0x91e5
0x7c27 0x9206
0x7c28 0x9210
0x7c29 0x920a
0x7c2a 0x923a
0x7c2b 0x9240
0x7c2c 0x923c
0x7c2d 0x924e
0x7c2e 0x9259
0x7c2f 0x9251
0x7c30 0x9239
0x7c31 0x9267
0x7c32 0x92a7
0x7c33 0x9277
0x7c34 0x9278
0x7c35 0x92e7
0x7c36 0x92d7
0x7c37 0x92d9
0x7c38 0x92d0
0x7c39 0xfa27
0x7c3a 0x92d5
0x7c3b 0x92e0
0x7c3c 0x92d3
0x7c3d 0x9325
0x7c3e 0x9321
0x7c3f 0x92fb
0x7c40 0xfa28
0x7c41 0x931e
0x7c42 0x92ff
0x7c43 0x931d
0x7c44 0x9302
0x7c45 0x9370
0x7c46 0x9357
0x7c47 0x93a4
0x7c48 0x93c6
0x7c49 0x93de
0x7c4a 0x93f8
0x7c4b 0x9431
0x7c4c 0x9445
0x7c4d 0x9448
0x7c4e 0x9592
0x7c4f 0xf9dc
0x7c50 0xfa29
0x7c51 0x969d
0x7c52 0x96af
0x7c53 0x9733
0x7c54 0x973b
0x7c55 0x9743
0x7c56 0x974d
0x7c57 0x974f
0x7c58 0x9751
0x7c59 0x9755
0x7c5a 0x9857
0x7c5b 0x9865
0x7c5c 0xfa2a
0x7c5d 0xfa2b
0x7c5e 0x9927
0x7c5f 0xfa2c
0x7c60 0x999e
0x7c61 0x9a4e
0x7c62 0x9ad9
0x7c63 0x9adc
0x7c64 0x9b75
0x7c65 0x9b72
0x7c66 0x9b8f
0x7c67 0x9bb1
0x7c68 0x9bbb
0x7c69 0x9c00
0x7c6a 0x9d70
0x7c6b 0x9d6b
0x7c6c 0xfa2d
0x7c6d 0x9e19
0x7c6e 0x9ed1
0x7c71 0x2170
0x7c72 0x2171
0x7c73 0x2172
0x7c74 0x2173
0x7c75 0x2174
0x7c76 0x2175
0x7c77 0x2176
0x7c78 0x2177
0x7c79 0x2178
0x7c7a 0x2179
0x7c7b 0x3052
0x7c7c 0x00a6
0x7c7d 0xff07
0x7c7e 0xff02
0x932b 0x2160
0x932c 0x2161
0x932d 0x2162
0x932e 0x2163
0x932f 0x2164
0x9330 0x2165
0x9331 0x2166
0x9332 0x2167
0x9333 0x2168
0x9334 0x2169
0x9339 0x3231
0x933a 0x2116
0x933b 0x2121
此差异已折叠。
此差异已折叠。
此差异已折叠。
0x005c 0x00a5
0x007e 0x203e
此差异已折叠。
0x8790 0x2252
0x8791 0x2261
0x8792 0x222b
0x8795 0x221a
0x8796 0x22a5
0x8797 0x2220
0x879a 0x2235
0x879b 0x2229
0x879c 0x222a
0xed40 0x7e8a
0xed41 0x891c
0xed42 0x9348
0xed43 0x9288
0xed44 0x84dc
0xed45 0x4fc9
0xed46 0x70bb
0xed47 0x6631
0xed48 0x68c8
0xed49 0x92f9
0xed4a 0x66fb
0xed4b 0x5f45
0xed4c 0x4e28
0xed4d 0x4ee1
0xed4e 0x4efc
0xed4f 0x4f00
0xed50 0x4f03
0xed51 0x4f39
0xed52 0x4f56
0xed53 0x4f92
0xed54 0x4f8a
0xed55 0x4f9a
0xed56 0x4f94
0xed57 0x4fcd
0xed58 0x5040
0xed59 0x5022
0xed5a 0x4fff
0xed5b 0x501e
0xed5c 0x5046
0xed5d 0x5070
0xed5e 0x5042
0xed5f 0x5094
0xed60 0x50f4
0xed61 0x50d8
0xed62 0x514a
0xed63 0x5164
0xed64 0x519d
0xed65 0x51be
0xed66 0x51ec
0xed67 0x5215
0xed68 0x529c
0xed69 0x52a6
0xed6a 0x52c0
0xed6b 0x52db
0xed6c 0x5300
0xed6d 0x5307
0xed6e 0x5324
0xed6f 0x5372
0xed70 0x5393
0xed71 0x53b2
0xed72 0x53dd
0xed73 0xfa0e
0xed74 0x549c
0xed75 0x548a
0xed76 0x54a9
0xed77 0x54ff
0xed78 0x5586
0xed79 0x5759
0xed7a 0x5765
0xed7b 0x57ac
0xed7c 0x57c8
0xed7d 0x57c7
0xed7e 0xfa0f
0xed80 0xfa10
0xed81 0x589e
0xed82 0x58b2
0xed83 0x590b
0xed84 0x5953
0xed85 0x595b
0xed86 0x595d
0xed87 0x5963
0xed88 0x59a4
0xed89 0x59ba
0xed8a 0x5b56
0xed8b 0x5bc0
0xed8c 0x752f
0xed8d 0x5bd8
0xed8e 0x5bec
0xed8f 0x5c1e
0xed90 0x5ca6
0xed91 0x5cba
0xed92 0x5cf5
0xed93 0x5d27
0xed94 0x5d53
0xed95 0xfa11
0xed96 0x5d42
0xed97 0x5d6d
0xed98 0x5db8
0xed99 0x5db9
0xed9a 0x5dd0
0xed9b 0x5f21
0xed9c 0x5f34
0xed9d 0x5f67
0xed9e 0x5fb7
0xed9f 0x5fde
0xeda0 0x605d
0xeda1 0x6085
0xeda2 0x608a
0xeda3 0x60de
0xeda4 0x60d5
0xeda5 0x6120
0xeda6 0x60f2
0xeda7 0x6111
0xeda8 0x6137
0xeda9 0x6130
0xedaa 0x6198
0xedab 0x6213
0xedac 0x62a6
0xedad 0x63f5
0xedae 0x6460
0xedaf 0x649d
0xedb0 0x64ce
0xedb1 0x654e
0xedb2 0x6600
0xedb3 0x6615
0xedb4 0x663b
0xedb5 0x6609
0xedb6 0x662e
0xedb7 0x661e
0xedb8 0x6624
0xedb9 0x6665
0xedba 0x6657
0xedbb 0x6659
0xedbc 0xfa12
0xedbd 0x6673
0xedbe 0x6699
0xedbf 0x66a0
0xedc0 0x66b2
0xedc1 0x66bf
0xedc2 0x66fa
0xedc3 0x670e
0xedc4 0xf929
0xedc5 0x6766
0xedc6 0x67bb
0xedc7 0x6852
0xedc8 0x67c0
0xedc9 0x6801
0xedca 0x6844
0xedcb 0x68cf
0xedcc 0xfa13
0xedcd 0x6968
0xedce 0xfa14
0xedcf 0x6998
0xedd0 0x69e2
0xedd1 0x6a30
0xedd2 0x6a6b
0xedd3 0x6a46
0xedd4 0x6a73
0xedd5 0x6a7e
0xedd6 0x6ae2
0xedd7 0x6ae4
0xedd8 0x6bd6
0xedd9 0x6c3f
0xedda 0x6c5c
0xeddb 0x6c86
0xeddc 0x6c6f
0xeddd 0x6cda
0xedde 0x6d04
0xeddf 0x6d87
0xede0 0x6d6f
0xede1 0x6d96
0xede2 0x6dac
0xede3 0x6dcf
0xede4 0x6df8
0xede5 0x6df2
0xede6 0x6dfc
0xede7 0x6e39
0xede8 0x6e5c
0xede9 0x6e27
0xedea 0x6e3c
0xedeb 0x6ebf
0xedec 0x6f88
0xeded 0x6fb5
0xedee 0x6ff5
0xedef 0x7005
0xedf0 0x7007
0xedf1 0x7028
0xedf2 0x7085
0xedf3 0x70ab
0xedf4 0x710f
0xedf5 0x7104
0xedf6 0x715c
0xedf7 0x7146
0xedf8 0x7147
0xedf9 0xfa15
0xedfa 0x71c1
0xedfb 0x71fe
0xedfc 0x72b1
0xee40 0x72be
0xee41 0x7324
0xee42 0xfa16
0xee43 0x7377
0xee44 0x73bd
0xee45 0x73c9
0xee46 0x73d6
0xee47 0x73e3
0xee48 0x73d2
0xee49 0x7407
0xee4a 0x73f5
0xee4b 0x7426
0xee4c 0x742a
0xee4d 0x7429
0xee4e 0x742e
0xee4f 0x7462
0xee50 0x7489
0xee51 0x749f
0xee52 0x7501
0xee53 0x756f
0xee54 0x7682
0xee55 0x769c
0xee56 0x769e
0xee57 0x769b
0xee58 0x76a6
0xee59 0xfa17
0xee5a 0x7746
0xee5b 0x52af
0xee5c 0x7821
0xee5d 0x784e
0xee5e 0x7864
0xee5f 0x787a
0xee60 0x7930
0xee61 0xfa18
0xee62 0xfa19
0xee63 0xfa1a
0xee64 0x7994
0xee65 0xfa1b
0xee66 0x799b
0xee67 0x7ad1
0xee68 0x7ae7
0xee69 0xfa1c
0xee6a 0x7aeb
0xee6b 0x7b9e
0xee6c 0xfa1d
0xee6d 0x7d48
0xee6e 0x7d5c
0xee6f 0x7db7
0xee70 0x7da0
0xee71 0x7dd6
0xee72 0x7e52
0xee73 0x7f47
0xee74 0x7fa1
0xee75 0xfa1e
0xee76 0x8301
0xee77 0x8362
0xee78 0x837f
0xee79 0x83c7
0xee7a 0x83f6
0xee7b 0x8448
0xee7c 0x84b4
0xee7d 0x8553
0xee7e 0x8559
0xee80 0x856b
0xee81 0xfa1f
0xee82 0x85b0
0xee83 0xfa20
0xee84 0xfa21
0xee85 0x8807
0xee86 0x88f5
0xee87 0x8a12
0xee88 0x8a37
0xee89 0x8a79
0xee8a 0x8aa7
0xee8b 0x8abe
0xee8c 0x8adf
0xee8d 0xfa22
0xee8e 0x8af6
0xee8f 0x8b53
0xee90 0x8b7f
0xee91 0x8cf0
0xee92 0x8cf4
0xee93 0x8d12
0xee94 0x8d76
0xee95 0xfa23
0xee96 0x8ecf
0xee97 0xfa24
0xee98 0xfa25
0xee99 0x9067
0xee9a 0x90de
0xee9b 0xfa26
0xee9c 0x9115
0xee9d 0x9127
0xee9e 0x91da
0xee9f 0x91d7
0xeea0 0x91de
0xeea1 0x91ed
0xeea2 0x91ee
0xeea3 0x91e4
0xeea4 0x91e5
0xeea5 0x9206
0xeea6 0x9210
0xeea7 0x920a
0xeea8 0x923a
0xeea9 0x9240
0xeeaa 0x923c
0xeeab 0x924e
0xeeac 0x9259
0xeead 0x9251
0xeeae 0x9239
0xeeaf 0x9267
0xeeb0 0x92a7
0xeeb1 0x9277
0xeeb2 0x9278
0xeeb3 0x92e7
0xeeb4 0x92d7
0xeeb5 0x92d9
0xeeb6 0x92d0
0xeeb7 0xfa27
0xeeb8 0x92d5
0xeeb9 0x92e0
0xeeba 0x92d3
0xeebb 0x9325
0xeebc 0x9321
0xeebd 0x92fb
0xeebe 0xfa28
0xeebf 0x931e
0xeec0 0x92ff
0xeec1 0x931d
0xeec2 0x9302
0xeec3 0x9370
0xeec4 0x9357
0xeec5 0x93a4
0xeec6 0x93c6
0xeec7 0x93de
0xeec8 0x93f8
0xeec9 0x9431
0xeeca 0x9445
0xeecb 0x9448
0xeecc 0x9592
0xeecd 0xf9dc
0xeece 0xfa29
0xeecf 0x969d
0xeed0 0x96af
0xeed1 0x9733
0xeed2 0x973b
0xeed3 0x9743
0xeed4 0x974d
0xeed5 0x974f
0xeed6 0x9751
0xeed7 0x9755
0xeed8 0x9857
0xeed9 0x9865
0xeeda 0xfa2a
0xeedb 0xfa2b
0xeedc 0x9927
0xeedd 0xfa2c
0xeede 0x999e
0xeedf 0x9a4e
0xeee0 0x9ad9
0xeee1 0x9adc
0xeee2 0x9b75
0xeee3 0x9b72
0xeee4 0x9b8f
0xeee5 0x9bb1
0xeee6 0x9bbb
0xeee7 0x9c00
0xeee8 0x9d70
0xeee9 0x9d6b
0xeeea 0xfa2d
0xeeeb 0x9e19
0xeeec 0x9ed1
0xeeef 0x2170
0xeef0 0x2171
0xeef1 0x2172
0xeef2 0x2173
0xeef3 0x2174
0xeef4 0x2175
0xeef5 0x2176
0xeef6 0x2177
0xeef7 0x2178
0xeef8 0x2179
0xeef9 0x3052
0xeefa 0x00a6
0xeefb 0xff07
0xeefc 0xff02
0xfa4a 0x2160
0xfa4b 0x2161
0xfa4c 0x2162
0xfa4d 0x2163
0xfa4e 0x2164
0xfa4f 0x2165
0xfa50 0x2166
0xfa51 0x2167
0xfa52 0x2168
0xfa53 0x2169
0xfa54 0x3052
0xfa58 0x3231
0xfa59 0x2116
0xfa5a 0x2121
0xfa5b 0x306e
0x005c 0x00a5
0x007e 0x203e
此差异已折叠。
...@@ -10,6 +10,8 @@ MS936 x-mswin-936 MS936 basic sun.nio.cs.ext true 0x81 0xfe 0x ...@@ -10,6 +10,8 @@ MS936 x-mswin-936 MS936 basic sun.nio.cs.ext true 0x81 0xfe 0x
MS949 x-windows-949 MS949 basic sun.nio.cs.ext true 0x81 0xfe 0x41 0xfe MS949 x-windows-949 MS949 basic sun.nio.cs.ext true 0x81 0xfe 0x41 0xfe
MS950 x-windows-950 MS950 basic sun.nio.cs.ext true 0x81 0xfe 0x40 0xfe MS950 x-windows-950 MS950 basic sun.nio.cs.ext true 0x81 0xfe 0x40 0xfe
GBK GBK GBK basic sun.nio.cs.ext true 0x81 0xfe 0x40 0xfe GBK GBK GBK basic sun.nio.cs.ext true 0x81 0xfe 0x40 0xfe
SJIS Shift_JIS SJIS basic sun.nio.cs.ext true 0x81 0xfc 0x40 0xfc
PCK x-PCK PCK basic sun.nio.cs.ext true 0x81 0xfc 0x40 0xfc
IBM1364 x-IBM1364 Cp1364 ebcdic sun.nio.cs.ext false 0x40 0xde 0x40 0xfe IBM1364 x-IBM1364 Cp1364 ebcdic sun.nio.cs.ext false 0x40 0xde 0x40 0xfe
IBM1381 x-IBM1381 Cp1381 basic sun.nio.cs.ext true 0x8c 0xf7 0xa1 0xfe IBM1381 x-IBM1381 Cp1381 basic sun.nio.cs.ext true 0x8c 0xf7 0xa1 0xfe
IBM1383 x-IBM1383 Cp1383 euc_sim sun.nio.cs.ext true 0xa1 0xfe 0xa1 0xfe IBM1383 x-IBM1383 Cp1383 euc_sim sun.nio.cs.ext true 0xa1 0xfe 0xa1 0xfe
...@@ -24,3 +26,10 @@ IBM948 x-IBM948 Cp948 basic sun.nio.cs.ext true 0x81 0xfe 0 ...@@ -24,3 +26,10 @@ IBM948 x-IBM948 Cp948 basic sun.nio.cs.ext true 0x81 0xfe 0
IBM949 x-IBM949 Cp949 basic sun.nio.cs.ext false 0x8f 0xfe 0xa1 0xfe IBM949 x-IBM949 Cp949 basic sun.nio.cs.ext false 0x8f 0xfe 0xa1 0xfe
IBM950 x-IBM950 Cp950 basic sun.nio.cs.ext true 0x81 0xfe 0x40 0xfe IBM950 x-IBM950 Cp950 basic sun.nio.cs.ext true 0x81 0xfe 0x40 0xfe
IBM970 x-IBM970 Cp970 euc_sim sun.nio.cs.ext true 0xa1 0xfe 0xa1 0xfe IBM970 x-IBM970 Cp970 euc_sim sun.nio.cs.ext true 0xa1 0xfe 0xa1 0xfe
JIS_X_0208 x-JIS0208 JIS0208 dbcsonly sun.nio.cs.ext false 0x21 0x7e 0x21 0x7e
JIS_X_0212 JIS_X0212-1990 JIS0212 dbcsonly sun.nio.cs.ext false 0x21 0x7e 0x21 0x7e
JIS_X_0208_Solaris x-JIS0208_Solaris JIS0208_Solaris dbcsonly sun.nio.cs.ext false 0x21 0x9e 0x21 0x7e
JIS_X_0208_MS5022X x-JIS0208_MS5022X JIS0208_MS5022X dbcsonly sun.nio.cs.ext false 0x21 0x7e 0x21 0x7e
JIS_X_0208_MS932 x-JIS0208_MS932 JIS0208_MS932 dbcsonly sun.nio.cs.ext false 0x21 0x7e 0x21 0x7e
JIS_X_0212_Solaris x-JIS0212_Solaris JIS0212_Solaris dbcsonly sun.nio.cs.ext false 0x21 0x7e 0x21 0x7e
JIS_X_0212_MS5022X x-JIS0212_MS5022X JIS0212_MS5022X dbcsonly sun.nio.cs.ext false 0x21 0x7e 0x21 0x7e
...@@ -53,7 +53,7 @@ ISO_8859_11 x-iso-8859-11 x-iso-8859-11 true sun.nio.cs.ext ...@@ -53,7 +53,7 @@ ISO_8859_11 x-iso-8859-11 x-iso-8859-11 true sun.nio.cs.ext
ISO_8859_3 ISO-8859-3 ISO8859_3 true sun.nio.cs.ext ISO_8859_3 ISO-8859-3 ISO8859_3 true sun.nio.cs.ext
ISO_8859_6 ISO-8859-6 ISO8859_6 true sun.nio.cs.ext ISO_8859_6 ISO-8859-6 ISO8859_6 true sun.nio.cs.ext
ISO_8859_8 ISO-8859-8 ISO8859_8 true sun.nio.cs.ext ISO_8859_8 ISO-8859-8 ISO8859_8 true sun.nio.cs.ext
#JIS_X_0201 JIS_X0201 JIS_X0201 true sun.nio.cs.ext JIS_X_0201 JIS_X0201 JIS_X0201 true sun.nio.cs.ext
MS1255 windows-1255 Cp1255 true sun.nio.cs.ext MS1255 windows-1255 Cp1255 true sun.nio.cs.ext
MS1256 windows-1256 Cp1256 true sun.nio.cs.ext MS1256 windows-1256 Cp1256 true sun.nio.cs.ext
MS1258 windows-1258 Cp1258 true sun.nio.cs.ext MS1258 windows-1258 Cp1258 true sun.nio.cs.ext
......
...@@ -194,6 +194,15 @@ public class DBCS { ...@@ -194,6 +194,15 @@ public class DBCS {
if (hisName == null) if (hisName == null)
hisName = ""; hisName = "";
// (5) c2b replacement, only used for JIs0208/0212, which
// are two pure db charsets so default '3f' does not work
String c2bRepl = "";
if (clzName.startsWith("JIS_X_0208")) {
c2bRepl = "new byte[]{ (byte)0x21, (byte)0x29 },";
} else if (clzName.startsWith("JIS_X_0212")) {
c2bRepl = "new byte[]{ (byte)0x22, (byte)0x44 },";
}
while (s.hasNextLine()) { while (s.hasNextLine()) {
String line = s.nextLine(); String line = s.nextLine();
if (line.indexOf("$") == -1) { if (line.indexOf("$") == -1) {
...@@ -227,7 +236,8 @@ public class DBCS { ...@@ -227,7 +236,8 @@ public class DBCS {
.replace("$B2C$", b2c) .replace("$B2C$", b2c)
.replace("$C2BLENGTH$", "0x" + Integer.toString(c2bOff, 16)) .replace("$C2BLENGTH$", "0x" + Integer.toString(c2bOff, 16))
.replace("$NONROUNDTRIP_B2C$", b2cNR) .replace("$NONROUNDTRIP_B2C$", b2cNR)
.replace("$NONROUNDTRIP_C2B$", c2bNR); .replace("$NONROUNDTRIP_C2B$", c2bNR)
.replace("$ENC_REPLACEMENT$", c2bRepl);
ops.println(line); ops.println(line);
} }
......
...@@ -106,7 +106,7 @@ public class SBCS { ...@@ -106,7 +106,7 @@ public class SBCS {
} }
} }
static Pattern sbmap = Pattern.compile("0x(\\p{XDigit}++)\\s++U\\+(\\p{XDigit}++)(\\s++#.*)?"); static Pattern sbmap = Pattern.compile("0x(\\p{XDigit}++)\\s++(?:U\\+|0x)?(\\p{XDigit}++)(?:\\s++#.*)?");
private static void genClass0(String srcDir, String dstDir, private static void genClass0(String srcDir, String dstDir,
String template, String template,
......
...@@ -215,7 +215,7 @@ define SetupJVMTIDemo ...@@ -215,7 +215,7 @@ define SetupJVMTIDemo
# Param 5 = libs for posix # Param 5 = libs for posix
# Param 6 = libs for winapi # Param 6 = libs for winapi
# Param 7 = libs for solaris # Param 7 = libs for solaris
BUILD_DEMO_JVMTI_$1_EXTRA_SRC:= $$(wildcard $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/demo/jvmti/$1) \ BUILD_DEMO_JVMTI_$1_EXTRA_SRC:= $$(wildcard $(JDK_TOPDIR)/src/$(LEGACY_OPENJDK_TARGET_OS_API)/demo/jvmti/$1) \
$$(wildcard $$(addprefix $(JDK_TOPDIR)/src/share/demo/jvmti/,$2)) $$(wildcard $$(addprefix $(JDK_TOPDIR)/src/share/demo/jvmti/,$2))
BUILD_DEMO_JVMTI_$1_EXTRA_INC:=$$(addprefix -I,$$(BUILD_DEMO_JVMTI_$1_EXTRA_SRC)) BUILD_DEMO_JVMTI_$1_EXTRA_INC:=$$(addprefix -I,$$(BUILD_DEMO_JVMTI_$1_EXTRA_SRC))
BUILD_DEMO_JVMTI_$1_LANG:=C BUILD_DEMO_JVMTI_$1_LANG:=C
...@@ -227,18 +227,26 @@ define SetupJVMTIDemo ...@@ -227,18 +227,26 @@ define SetupJVMTIDemo
$1_EXTRA_CXX:=$(LIBCXX) $1_EXTRA_CXX:=$(LIBCXX)
BUILD_DEMO_JVMTI_$1_O_FLAG:=$(CXX_O_FLAG_NORM) BUILD_DEMO_JVMTI_$1_O_FLAG:=$(CXX_O_FLAG_NORM)
endif endif
$1_CXXFLAGS:=$(CXXFLAGS_JDKLIB) $$(BUILD_DEMO_JVMTI_$1_O_FLAG) -I$(JDK_TOPDIR)/src/share/demo/jvmti/$1 $$(BUILD_DEMO_JVMTI_$1_EXTRA_INC) $3
ifeq ($1-$(OPENJDK_TARGET_CPU_ARCH),waiters-sparc)
$1_FILTER:=-xregs=no%appl
$1_CXXFLAGS:=$$(filter-out $$($1_FILTER),$$($1_CXXFLAGS))
endif
$$(eval $$(call SetupNativeCompilation,BUILD_DEMO_JVMTI_$1,\ $$(eval $$(call SetupNativeCompilation,BUILD_DEMO_JVMTI_$1,\
SRC:=$(JDK_TOPDIR)/src/share/demo/jvmti/$1 $$(BUILD_DEMO_JVMTI_$1_EXTRA_SRC),\ SRC:=$(JDK_TOPDIR)/src/share/demo/jvmti/$1 $$(BUILD_DEMO_JVMTI_$1_EXTRA_SRC),\
LANG:=$$(BUILD_DEMO_JVMTI_$1_LANG),\ LANG:=$$(BUILD_DEMO_JVMTI_$1_LANG),\
CFLAGS:=$(CFLAGS_JDKLIB) $$(BUILD_DEMO_JVMTI_$1_O_FLAG) -I$(JDK_TOPDIR)/src/share/demo/jvmti/$1 $$(BUILD_DEMO_JVMTI_$1_EXTRA_INC) $3,\ CFLAGS:=$(CFLAGS_JDKLIB) $$(BUILD_DEMO_JVMTI_$1_O_FLAG) -I$(JDK_TOPDIR)/src/share/demo/jvmti/$1 $$(BUILD_DEMO_JVMTI_$1_EXTRA_INC) $3,\
CXXFLAGS:=$(CXXFLAGS_JDKLIB) $$(BUILD_DEMO_JVMTI_$1_O_FLAG) -I$(JDK_TOPDIR)/src/share/demo/jvmti/$1 $$(BUILD_DEMO_JVMTI_$1_EXTRA_INC) $3,\ CXXFLAGS:=$$($1_CXXFLAGS),\
LDFLAGS:=$(LDFLAGS_JDKLIB),\ LDFLAGS:=$(LDFLAGS_JDKLIB),\
LDFLAGS_SUFFIX:=$$($1_EXTRA_CXX),\ LDFLAGS_SUFFIX:=$$($1_EXTRA_CXX),\
LDFLAGS_SUFFIX_posix:=$5,\ LDFLAGS_SUFFIX_posix:=$5,\
LDFLAGS_SUFFIX_winapi:=$6,\ LDFLAGS_SUFFIX_winapi:=$6,\
LDFLAGS_SUFFIX_solaris:=-lc $7,\ LDFLAGS_SUFFIX_solaris:=-lc $7,\
BIN:=$(JDK_OUTPUTDIR)/newdemoobjs/jvmti/$1,\ OBJECT_DIR:=$(JDK_OUTPUTDIR)/newdemoobjs/jvmti/$1,\
LIB:=$(JDK_OUTPUTDIR)/newdemo/jvmti/$1/lib/$(LIBRARY_PREFIX)$1$(SHARED_LIBRARY_SUFFIX))) OUTPUT_DIR:=$(JDK_OUTPUTDIR)/newdemo/jvmti/$1/lib,\
LIBRARY:=$1))
$$(eval $$(call SetupZipArchive,BUILD_DEMO_JVMTI_SRC_$1,\ $$(eval $$(call SetupZipArchive,BUILD_DEMO_JVMTI_SRC_$1,\
SRC:=$(JDK_TOPDIR)/src/share/demo/jvmti/$1 $$(BUILD_DEMO_JVMTI_$1_EXTRA_SRC),\ SRC:=$(JDK_TOPDIR)/src/share/demo/jvmti/$1 $$(BUILD_DEMO_JVMTI_$1_EXTRA_SRC),\
...@@ -262,7 +270,7 @@ define SetupJVMTIDemo ...@@ -262,7 +270,7 @@ define SetupJVMTIDemo
BUILD_DEMOS += $(JDK_OUTPUTDIR)/newdemo/jvmti/$1/$1.jar BUILD_DEMOS += $(JDK_OUTPUTDIR)/newdemo/jvmti/$1/$1.jar
endif endif
BUILD_DEMOS += $(JDK_OUTPUTDIR)/newdemo/jvmti/$1/lib/$(LIBRARY_PREFIX)$1$(SHARED_LIBRARY_SUFFIX) \ BUILD_DEMOS += $$(BUILD_DEMO_JVMTI_$1) \
$(JDK_OUTPUTDIR)/newdemo/jvmti/$1/src.zip \ $(JDK_OUTPUTDIR)/newdemo/jvmti/$1/src.zip \
$(JDK_OUTPUTDIR)/newdemo/jvmti/$1/README.txt $(JDK_OUTPUTDIR)/newdemo/jvmti/$1/README.txt
endef endef
...@@ -274,7 +282,7 @@ $(eval $(call SetupJVMTIDemo,heapViewer, agent_util)) ...@@ -274,7 +282,7 @@ $(eval $(call SetupJVMTIDemo,heapViewer, agent_util))
# hprof contains error messages using __FILE__ macro. These expand to the absolute path # hprof contains error messages using __FILE__ macro. These expand to the absolute path
# in the new build system and relative in the old, causing the binaries to differ. # in the new build system and relative in the old, causing the binaries to differ.
$(eval $(call SetupJVMTIDemo,hprof, java_crw_demo,\ $(eval $(call SetupJVMTIDemo,hprof, java_crw_demo,\
-I$(JDK_TOPDIR)/src/share/npt -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/npt,C,\ -I$(JDK_TOPDIR)/src/share/npt -I$(JDK_TOPDIR)/src/$(LEGACY_OPENJDK_TARGET_OS_API)/npt,C,\
-ldl,ws2_32.lib winmm.lib,-lsocket -lnsl)) -ldl,ws2_32.lib winmm.lib,-lsocket -lnsl))
$(eval $(call SetupJVMTIDemo,minst, agent_util java_crw_demo)) $(eval $(call SetupJVMTIDemo,minst, agent_util java_crw_demo))
...@@ -349,7 +357,7 @@ BUILD_DEMOS += $(JDK_OUTPUTDIR)/newdemo/README ...@@ -349,7 +357,7 @@ BUILD_DEMOS += $(JDK_OUTPUTDIR)/newdemo/README
################################################################################################## ##################################################################################################
ifeq ($(PLATFORM), solaris) ifeq ($(OPENJDK_TARGET_OS), solaris)
$(JDK_OUTPUTDIR)/newdemoclasses/jni/Poller/% : $(JDK_TOPDIR)/src/solaris/demo/jni/Poller/% $(JDK_OUTPUTDIR)/newdemoclasses/jni/Poller/% : $(JDK_TOPDIR)/src/solaris/demo/jni/Poller/%
$(MKDIR) -p $(@D) $(MKDIR) -p $(@D)
...@@ -386,8 +394,9 @@ $(eval $(call SetupNativeCompilation,BUILD_LIBPOLLER,\ ...@@ -386,8 +394,9 @@ $(eval $(call SetupNativeCompilation,BUILD_LIBPOLLER,\
CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS) \ CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS) \
-I$(JDK_OUTPUTDIR)/newdemoclasses/jni/Poller, \ -I$(JDK_OUTPUTDIR)/newdemoclasses/jni/Poller, \
LDFLAGS:=$(LDFLAGS_JDKLIB), \ LDFLAGS:=$(LDFLAGS_JDKLIB), \
BIN:=$(JDK_OUTPUTDIR)/newdemoobjs/jni/Poller,\ OBJECT_DIR:=$(JDK_OUTPUTDIR)/newdemoobjs/jni/Poller,\
LIB:=$(JDK_OUTPUTDIR)/newdemoobjs/$(LIBRARY_PREFIX)Poller$(SHARED_LIBRARY_SUFFIX))) OUTPUT_DIR:=$(JDK_OUTPUTDIR)/newdemoobjs, \
LIBRARY:=Poller))
# #
# We can only compile native code after jar has been build (since we depend on generated .h files) # We can only compile native code after jar has been build (since we depend on generated .h files)
......
...@@ -45,7 +45,7 @@ EXCLUDES += com/sun/pept \ ...@@ -45,7 +45,7 @@ EXCLUDES += com/sun/pept \
com/sun/tools/example/debug/gui \ com/sun/tools/example/debug/gui \
com/oracle/security com/oracle/security
ifeq ($(PLATFORM)-$(ARCH_DATA_MODEL),windows-64) ifeq ($(OPENJDK_TARGET_OS)-$(ARCH_DATA_MODEL),windows-64)
EXCLUDES += sun/security/pkcs11 EXCLUDES += sun/security/pkcs11
endif endif
...@@ -61,7 +61,7 @@ ifndef OPENJDK ...@@ -61,7 +61,7 @@ ifndef OPENJDK
EXFILES := $(JDK_TOPDIR)/src/share/classes/javax/crypto/JarVerifier.java EXFILES := $(JDK_TOPDIR)/src/share/classes/javax/crypto/JarVerifier.java
endif endif
ifneq ($(PLATFORM),solaris) ifneq ($(OPENJDK_TARGET_OS),solaris)
# Exclude Solaris nio and two security related files in src/share/classes # Exclude Solaris nio and two security related files in src/share/classes
EXFILES += SolarisAclFileAttributeView.java \ EXFILES += SolarisAclFileAttributeView.java \
SolarisFileStore.java \ SolarisFileStore.java \
...@@ -71,37 +71,34 @@ ifneq ($(PLATFORM),solaris) ...@@ -71,37 +71,34 @@ ifneq ($(PLATFORM),solaris)
SolarisUserDefinedFileAttributeView.java \ SolarisUserDefinedFileAttributeView.java \
SolarisWatchService.java \ SolarisWatchService.java \
SolarisAclFileAttributeView.java \ SolarisAclFileAttributeView.java \
SolarisFileStore.java \
SolarisFileSystem.java \
SolarisFileSystemProvider.java \
SolarisUserDefinedFileAttributeView.java \
SolarisNativeDispatcher.java \
SolarisWatchService.java \
SolarisLoginModule.java \ SolarisLoginModule.java \
SolarisSystem.java \ SolarisSystem.java \
sun/nio/ch/EventPortSelectorImpl.java \
sun/nio/ch/EventPortSelectorProvider.java \
sun/nio/ch/EventPortWrapper.java \
sun/tools/attach/SolarisAttachProvider.java \ sun/tools/attach/SolarisAttachProvider.java \
sun/tools/attach/SolarisVirtualMachine.java sun/tools/attach/SolarisVirtualMachine.java
endif endif
# In the old build, this isn't excluded on macosx, even though it probably # In the old build, this isn't excluded on macosx, even though it probably
# should be. # should be.
ifneq ($(PLATFORM),macosx) ifneq ($(OPENJDK_TARGET_OS),macosx)
EXFILES+=WrapperGenerator.java EXFILES+=WrapperGenerator.java
endif endif
ifneq ($(PLATFORM),windows) ifneq ($(OPENJDK_TARGET_OS),windows)
# Exclude Window security related files in src/share/classes # Exclude Window security related files in src/share/classes
EXFILES+=NTLoginModule.java \ EXFILES+=NTLoginModule.java \
NTSystem.java NTSystem.java
endif endif
ifeq ($(PLATFORM),windows) ifeq ($(OPENJDK_TARGET_OS),windows)
# Don't build GTK L&F on Windows # Don't build GTK L&F on Windows
EXCLUDES+= com/sun/java/swing/plaf/gtk EXCLUDES+= com/sun/java/swing/plaf/gtk
endif endif
ifneq ($(PLATFORM),linux) ifneq ($(OPENJDK_TARGET_OS),linux)
EXFILES+=sun/tools/attach/LinuxAttachProvider.java \ EXFILES+=sun/tools/attach/LinuxAttachProvider.java \
sun/tools/attach/LinuxVirtualMachine.java \ sun/tools/attach/LinuxVirtualMachine.java \
sun/nio/fs/LinuxDosFileAttributeView.java \ sun/nio/fs/LinuxDosFileAttributeView.java \
...@@ -113,7 +110,7 @@ ifneq ($(PLATFORM),linux) ...@@ -113,7 +110,7 @@ ifneq ($(PLATFORM),linux)
sun/nio/fs/LinuxWatchService.java sun/nio/fs/LinuxWatchService.java
endif endif
ifneq ($(PLATFORM),macosx) ifneq ($(OPENJDK_TARGET_OS),macosx)
EXFILES+=sun/nio/fs/BsdFileStore.java \ EXFILES+=sun/nio/fs/BsdFileStore.java \
sun/nio/fs/BsdFileSystem.java \ sun/nio/fs/BsdFileSystem.java \
sun/nio/fs/BsdFileSystemProvider.java \ sun/nio/fs/BsdFileSystemProvider.java \
...@@ -137,11 +134,11 @@ ifdef OPENJDK ...@@ -137,11 +134,11 @@ ifdef OPENJDK
endif endif
# Used on windows and macosx # Used on windows and macosx
ifeq (,$(filter $(PLATFORM), windows macosx)) ifeq (,$(filter $(OPENJDK_TARGET_OS), windows macosx))
EXFILES+=sun/awt/AWTCharset.java EXFILES+=sun/awt/AWTCharset.java
endif endif
ifneq ($(PLATFORM), macosx) ifneq ($(OPENJDK_TARGET_OS), macosx)
# #
# Not in rt.jar on solaris and linux...(windows not checked) # Not in rt.jar on solaris and linux...(windows not checked)
# in rt.jar on macosx ?? # in rt.jar on macosx ??
...@@ -192,7 +189,7 @@ endif ...@@ -192,7 +189,7 @@ endif
# Exclude another implicitly not included file. # Exclude another implicitly not included file.
EXFILES+=sun/util/locale/AsciiUtil.java EXFILES+=sun/util/locale/AsciiUtil.java
ifeq (,$(filter $(PLATFORM), solaris macosx)) ifeq (,$(filter $(OPENJDK_TARGET_OS), solaris macosx))
# #
# only solaris and macosx # only solaris and macosx
# #
...@@ -205,7 +202,7 @@ EXFILES+=-linux-arm.java \ ...@@ -205,7 +202,7 @@ EXFILES+=-linux-arm.java \
-linux-ppc.java -linux-ppc.java
# TODO: Is this necessary? # TODO: Is this necessary?
ifeq ($(PLATFORM), windows) ifeq ($(OPENJDK_TARGET_OS), windows)
EXFILES+=sun/nio/ch/AbstractPollSelectorImpl.java \ EXFILES+=sun/nio/ch/AbstractPollSelectorImpl.java \
sun/nio/ch/DevPollArrayWrapper.java \ sun/nio/ch/DevPollArrayWrapper.java \
sun/nio/ch/DevPollSelectorImpl.java \ sun/nio/ch/DevPollSelectorImpl.java \
...@@ -248,18 +245,24 @@ include CopyIntoClasses.gmk ...@@ -248,18 +245,24 @@ include CopyIntoClasses.gmk
ifndef OPENJDK ifndef OPENJDK
CLOSED_SRC_DIRS:=$(JDK_TOPDIR)/src/closed/share/classes \ CLOSED_SRC_DIRS:=$(JDK_TOPDIR)/src/closed/share/classes \
$(JDK_TOPDIR)/src/closed/$(LEGACY_HOST_OS_API)/classes $(JDK_TOPDIR)/src/closed/$(LEGACY_OPENJDK_TARGET_OS_API)/classes
endif endif
MACOSX_SRC_DIRS := MACOSX_SRC_DIRS :=
ifeq ($(PLATFORM),macosx) ifeq ($(OPENJDK_TARGET_OS),macosx)
MACOSX_SRC_DIRS += $(JDK_TOPDIR)/src/macosx/classes MACOSX_SRC_DIRS += $(JDK_TOPDIR)/src/macosx/classes
# this files are duplicated in MACOSX_SRC_DIRS # this files are duplicated in MACOSX_SRC_DIRS
EXFILES+= $(JDK_TOPDIR)/src/solaris/classes/sun/nio/ch/DefaultSelectorProvider.java \ EXFILES+= $(JDK_TOPDIR)/src/solaris/classes/sun/nio/ch/DefaultSelectorProvider.java \
$(JDK_TOPDIR)/src/solaris/classes/sun/java2d/BackBufferCapsProvider.java \ $(JDK_TOPDIR)/src/solaris/classes/sun/java2d/BackBufferCapsProvider.java \
$(JDK_TOPDIR)/src/solaris/classes/java/net/DefaultInterface.java \ $(JDK_TOPDIR)/src/solaris/classes/java/net/DefaultInterface.java \
$(JDK_TOPDIR)/src/solaris/classes/java/lang/ClassLoaderHelper.java $(JDK_TOPDIR)/src/solaris/classes/java/lang/ClassLoaderHelper.java
# JObjC.jar contains 1.5 byte-code...so skip it here :-(
# MACOSX_SRC_DIRS += $(JDK_TOPDIR)/src/macosx/native/jobjc/src
# EXCLUDES+= tests/java/com/apple/jobjc
EXCLUDES+= com/apple/jobjc
endif endif
# The exception handling of swing beaninfo # The exception handling of swing beaninfo
...@@ -272,7 +275,7 @@ $(JDK_OUTPUTDIR)/classes/javax/swing/beaninfo/images/%.gif: $(JDK_TOPDIR)/make/t ...@@ -272,7 +275,7 @@ $(JDK_OUTPUTDIR)/classes/javax/swing/beaninfo/images/%.gif: $(JDK_TOPDIR)/make/t
$(eval $(call SetupJavaCompilation,BUILD_JDK,\ $(eval $(call SetupJavaCompilation,BUILD_JDK,\
SETUP:=GENERATE_JDKBYTECODE,\ SETUP:=GENERATE_JDKBYTECODE,\
SRC:=$(JDK_TOPDIR)/src/share/classes \ SRC:=$(JDK_TOPDIR)/src/share/classes \
$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/classes \ $(JDK_TOPDIR)/src/$(LEGACY_OPENJDK_TARGET_OS_API)/classes \
$(MACOSX_SRC_DIRS) \ $(MACOSX_SRC_DIRS) \
$(JDK_OUTPUTDIR)/gensrc \ $(JDK_OUTPUTDIR)/gensrc \
$(JDK_OUTPUTDIR)/gensrc_swing/javax/swing/beaninfo \ $(JDK_OUTPUTDIR)/gensrc_swing/javax/swing/beaninfo \
...@@ -297,7 +300,7 @@ JDK_BASE_HEADER_CLASSES:=java.lang.Integer \ ...@@ -297,7 +300,7 @@ JDK_BASE_HEADER_CLASSES:=java.lang.Integer \
JDK_BASE_HEADER_JAVA_FILES:=$(patsubst %,$(JDK_TOPDIR)/src/share/classes/%.java,\ JDK_BASE_HEADER_JAVA_FILES:=$(patsubst %,$(JDK_TOPDIR)/src/share/classes/%.java,\
$(subst .,/,$(JDK_BASE_HEADER_CLASSES))) $(subst .,/,$(JDK_BASE_HEADER_CLASSES)))
ifeq ($(PLATFORM),windows) ifeq ($(OPENJDK_TARGET_OS),windows)
JDK_BASE_HEADER_CLASSES_WINDOWS:=sun.nio.ch.PollArrayWrapper JDK_BASE_HEADER_CLASSES_WINDOWS:=sun.nio.ch.PollArrayWrapper
JDK_BASE_HEADER_CLASSES+=$(JDK_BASE_HEADER_CLASSES_WINDOWS) JDK_BASE_HEADER_CLASSES+=$(JDK_BASE_HEADER_CLASSES_WINDOWS)
JDK_BASE_HEADER_JAVA_FILES+=$(patsubst %,$(JDK_TOPDIR)/src/windows/classes/%.java,\ JDK_BASE_HEADER_JAVA_FILES+=$(patsubst %,$(JDK_TOPDIR)/src/windows/classes/%.java,\
...@@ -348,6 +351,53 @@ $(JDK_OUTPUTDIR)/classes/META-INF/services/com.sun.tools.xjc.Plugin: ...@@ -348,6 +351,53 @@ $(JDK_OUTPUTDIR)/classes/META-INF/services/com.sun.tools.xjc.Plugin:
########################################################################################## ##########################################################################################
ifeq ($(OPENJDK_TARGET_OS),macosx)
#
# JObjC.jar is compiled with BOOT_JAVAC which (may) not support the "-h" flag.
# so we first compile classes with BOOT_JAVAC and then with JDK_JAVAC :-(
#
$(eval $(call SetupJavaCompiler,GENERATE_15BYTECODE,\
JAVAC:=$(JAVAC),\
FLAGS:=-source 1.5 -target 1.5 -g -bootclasspath $(BOOT_RTJAR) -cp $(JDK_OUTPUTDIR)/../langtools/dist/lib/classes.jar $(DISABLE_WARNINGS),\
SERVER_DIR:=$(JAVAC_SERVERS),\
SERVER_JVM:=$(SERVER_JAVA),\
MODE:=$(JAVAC_USE_MODE),\
USE_DEPS:=$(JAVAC_USE_DEPS)))
$(eval $(call SetupJavaCompilation,BUILD_JOBJC_JAR,\
SETUP:=GENERATE_15BYTECODE,\
SRC:=$(JDK_TOPDIR)/src/macosx/native/jobjc/src/core/java \
$(JDK_TOPDIR)/src/macosx/native/jobjc/src/runtime-additions/java \
$(JDK_OUTPUTDIR)/gensrc, \
INCLUDES := com/apple/jobjc,\
EXCLUDES := tests/java/com/apple/jobjc,\
BIN:=$(JDK_OUTPUTDIR)/jobjc_classes,\
JAR:=$(JDK_OUTPUTDIR)/lib/JObjC.jar, \
JARINDEX := true))
$(BUILD_JOBJC_JAR) : $(BUILD_JDK)
JARS += $(JDK_OUTPUTDIR)/lib/JObjC.jar
$(eval $(call SetupJavaCompilation,BUILD_JOBJC_HEADERS_JAR,\
SETUP:=GENERATE_JDKBYTECODE,\
SRC:=$(JDK_TOPDIR)/src/macosx/native/jobjc/src/core/java \
$(JDK_TOPDIR)/src/macosx/native/jobjc/src/runtime-additions/java \
$(JDK_OUTPUTDIR)/gensrc, \
INCLUDES := com/apple/jobjc,\
EXCLUDES := tests/java/com/apple/jobjc,\
BIN:=$(JDK_OUTPUTDIR)/jobjc_classes_headers,\
JAR:=$(JDK_OUTPUTDIR)/jobjc_classes_headers/dummy.jar, \
HEADERS:=$(JDK_OUTPUTDIR)/gensrc_headers))
$(BUILD_JOBJC_HEADERS_JAR) : $(BUILD_JDK)
JARS += $(JDK_OUTPUTDIR)/jobjc_classes_headers/dummy.jar
endif
##########################################################################################
# copy with -a to preserve timestamps so dependencies down the line aren't messed up # copy with -a to preserve timestamps so dependencies down the line aren't messed up
all: $(BUILD_JDK) $(JARS) $(COPY_EXTRA) $(JDK_OUTPUTDIR)/classes/META-INF/services/com.sun.tools.xjc.Plugin \ all: $(BUILD_JDK) $(JARS) $(COPY_EXTRA) $(JDK_OUTPUTDIR)/classes/META-INF/services/com.sun.tools.xjc.Plugin \
$(JDK_OUTPUTDIR)/classes/_the.jdk.base.headers $(JDK_OUTPUTDIR)/classes/_the.jdk.base.headers
......
...@@ -32,17 +32,25 @@ include NativeCompilation.gmk ...@@ -32,17 +32,25 @@ include NativeCompilation.gmk
# Setup the java compilers for the JDK build. # Setup the java compilers for the JDK build.
include Setup.gmk include Setup.gmk
# Build tools
include Tools.gmk
BUILD_LAUNCHERS= BUILD_LAUNCHERS=
define SetupLauncher define SetupLauncher
# TODO: Fix mapfile on solaris. Won't work with ld as linker. # TODO: Fix mapfile on solaris. Won't work with ld as linker.
# Parameter 1 is the name of the launcher (java,javac,jar...) # Parameter 1 is the name of the launcher (java,javac,jar...)
# Parameter 2 are extra CFLAGS # Parameter 2 is extra CFLAGS
# Parameter 3 are extra LDFLAGS # Parameter 3 is extra LDFLAGS
# Parameter 4 are extra LDFLAGS_SUFFIX_posix # Parameter 4 is extra LDFLAGS_SUFFIX_posix
# Parameter 5 are extra LDFLAGS_SUFFIX_winapi # Parameter 5 is extra LDFLAGS_SUFFIX_winapi
# Parameter 6 is optional Windows JLI library (full path)
$1_WINDOWS_JLI_LIB:=$(JDK_OUTPUTDIR)/objs/jli.lib # Parameter 7 is optional Windows resource (RC) flags
# Parameter 8 is optional Windows version resource file (.rc)
# Parameter 9 is different output dir
# Parameter 10 is FULL DEBUG SYMBOLS (set value to turn OFF, since most(all) seems to have it)
$1_WINDOWS_JLI_LIB:=$(JDK_OUTPUTDIR)/objs/libjli/jli.lib
ifneq ($6,) ifneq ($6,)
$1_WINDOWS_JLI_LIB:=$6 $1_WINDOWS_JLI_LIB:=$6
endif endif
...@@ -51,33 +59,73 @@ define SetupLauncher ...@@ -51,33 +59,73 @@ define SetupLauncher
$1_VERSION_INFO_RESOURCE:=$8 $1_VERSION_INFO_RESOURCE:=$8
endif endif
$1_LDFLAGS := $3
ifeq ($(OPENJDK_TARGET_OS), macosx)
$1_LDFLAGS += -F/System/Library/Frameworks/JavaVM.framework/Frameworks \
-F/System/Library/Frameworks/ApplicationServices.framework/Frameworks
endif
$1_LDFLAGS_SUFFIX :=
ifeq ($(USE_EXTERNAL_LIBZ), true)
$1_LDFLAGS_SUFFIX += -lz
endif
ifeq ($(OPENJDK_TARGET_OS), macosx)
$1_LDFLAGS_SUFFIX += -Wl,-all_load $(JDK_OUTPUTDIR)/objs/libjli_static.a \
-framework Cocoa -framework Security -framework ApplicationServices \
-sectcreate __TEXT __info_plist $(JDK_TOPDIR)/src/macosx/lib/Info-cmdline.plist
endif
$1_OUTPUT_DIR_ARG:=$9
ifeq (,$$($1_OUTPUT_DIR_ARG))
$1_OUTPUT_DIR_ARG:=$(JDK_OUTPUTDIR)/bin
endif
$1_DEBUG_SYMBOLS:=yes
ifneq (,$(10))
$1_DEBUG_SYMBOLS:=
endif
$1_OPTIMIZATION:= LOW
# TODO: maybe it's better to move this if-statement out of this function
ifeq ($(1),java)
$1_OPTIMIZATION:=HIGH
endif
$(call SetupNativeCompilation,BUILD_LAUNCHER_$1,\ $(call SetupNativeCompilation,BUILD_LAUNCHER_$1,\
SRC:=$(JDK_TOPDIR)/src/share/bin,\ SRC:=$(JDK_TOPDIR)/src/share/bin,\
INCLUDE_FILES:=main.c,\ INCLUDE_FILES:=main.c,\
LANG:=C,\ LANG:=C,\
CFLAGS:=$(CFLAGS_JDKEXE) $(C_O_FLAG_NORM) \ OPTIMIZATION :=$$($1_OPTIMIZATION), \
CFLAGS:=$(CFLAGS_JDKEXE) \
-I$(JDK_TOPDIR)/src/share/bin \ -I$(JDK_TOPDIR)/src/share/bin \
-I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/bin \ -I$(JDK_TOPDIR)/src/$(LEGACY_OPENJDK_TARGET_OS_API)/bin \
-I$(JDK_TOPDIR)/src/$(PLATFORM)/bin \ -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS)/bin \
-DFULL_VERSION='"$(FULL_VERSION)"' \ -DFULL_VERSION='"$(FULL_VERSION)"' \
-DJDK_MAJOR_VERSION='"$(JDK_MAJOR_VERSION)"' \ -DJDK_MAJOR_VERSION='"$(JDK_MAJOR_VERSION)"' \
-DJDK_MINOR_VERSION='"$(JDK_MINOR_VERSION)"' \ -DJDK_MINOR_VERSION='"$(JDK_MINOR_VERSION)"' \
-DLIBARCHNAME='"$(ARCH)"' \ -DLIBARCHNAME='"$(ARCH)"' \
-DLAUNCHER_NAME='"openjdk"' \ -DLAUNCHER_NAME='"java"' \
-DPROGNAME='"$1"' $(DPACKAGEPATH) \ -DPROGNAME='"$1"' $(DPACKAGEPATH) \
$2,\ $2,\
CFLAGS_linux:=-fPIC,\ CFLAGS_linux:=-fPIC,\
CFLAGS_solaris:=-KPIC -DHAVE_GETHRTIME,\
LDFLAGS:=$(LDFLAGS_JDKEXE) \ LDFLAGS:=$(LDFLAGS_JDKEXE) \
$(call SET_SHARED_LIBRARY_ORIGIN,../lib/$(LIBARCH)/jli) \ $(call SET_SHARED_LIBRARY_ORIGIN,../lib/$(LIBARCH)/jli) \
$(call SET_SHARED_LIBRARY_ORIGIN,../jre/lib/$(LIBARCH)/jli) \ $(call SET_SHARED_LIBRARY_ORIGIN,../jre/lib/$(LIBARCH)/jli) \
$3,\ $$($1_LDFLAGS),\
MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/launchers/mapfile-$(ARCH), \ MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/launchers/mapfile-$(ARCH), \
LDFLAGS_SUFFIX:=$(LDFLAGS_JDKEXE_SUFFIX),\ LDFLAGS_SUFFIX:=$(LDFLAGS_JDKEXE_SUFFIX) $$($1_LDFLAGS_SUFFIX),\
LDFLAGS_SUFFIX_posix:=$4 -lc,\ LDFLAGS_SUFFIX_posix:=$4 -lc,\
LDFLAGS_SUFFIX_winapi:=$$($1_WINDOWS_JLI_LIB) \ LDFLAGS_SUFFIX_winapi:=$$($1_WINDOWS_JLI_LIB) \
$(JDK_OUTPUTDIR)/objs/java.lib advapi32.lib $5,\ $(JDK_OUTPUTDIR)/objs/libjava/java.lib advapi32.lib $5,\
BIN:=$(JDK_OUTPUTDIR)/objs/$1_objs,\ LDFLAGS_SUFFIX_solaris := -lthread $(LIBDL), \
EXE:=$(JDK_OUTPUTDIR)/objs/$1$(EXE_SUFFIX),\ OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/$1_objs,\
OUTPUT_DIR:=$$($1_OUTPUT_DIR_ARG),\
PROGRAM:=$1,\
DEBUG_SYMBOLS:=$$($1_DEBUG_SYMBOLS),\
VERSIONINFO_RESOURCE:=$$($1_VERSION_INFO_RESOURCE),\ VERSIONINFO_RESOURCE:=$$($1_VERSION_INFO_RESOURCE),\
RC_FLAGS:=$(RC_FLAGS)\ RC_FLAGS:=$(RC_FLAGS)\
/D "JDK_FNAME=$1$(EXE_SUFFIX)" \ /D "JDK_FNAME=$1$(EXE_SUFFIX)" \
...@@ -86,13 +134,22 @@ define SetupLauncher ...@@ -86,13 +134,22 @@ define SetupLauncher
$7,\ $7,\
MANIFEST:=$(JDK_TOPDIR)/src/windows/resource/java.manifest) MANIFEST:=$(JDK_TOPDIR)/src/windows/resource/java.manifest)
BUILD_LAUNCHERS += $(JDK_OUTPUTDIR)/bin/$1$(EXE_SUFFIX) BUILD_LAUNCHERS += $$(BUILD_LAUNCHER_$1)
ifeq ($(OPENJDK_TARGET_OS),macosx)
$$(BUILD_LAUNCHER_$1) : $(JDK_OUTPUTDIR)/objs/libjli_static.a
endif
ifeq ($(OPENJDK_TARGET_OS),windows)
$$(BUILD_LAUNCHER_$1) : $(JDK_OUTPUTDIR)/objs/libjava/java.lib \
$$($1_WINDOWS_JLI_LIB)
endif
endef endef
########################################################################################## ##########################################################################################
XLIBS:=-lX11 XLIBS:=$(X_LIBS) -lX11
ifeq ($(PLATFORM),macosx) ifeq ($(OPENJDK_TARGET_OS),macosx)
DPACKAGEPATH:=-DPACKAGE_PATH='"$(PACKAGE_PATH)"' DPACKAGEPATH:=-DPACKAGE_PATH='"$(PACKAGE_PATH)"'
XLIBS:= XLIBS:=
endif endif
...@@ -108,17 +165,17 @@ $(eval $(call SetupLauncher,java,\ ...@@ -108,17 +165,17 @@ $(eval $(call SetupLauncher,java,\
$(JDK_OUTPUTDIR)/objs/jli_static.lib,$(JAVA_RC_FLAGS),\ $(JDK_OUTPUTDIR)/objs/jli_static.lib,$(JAVA_RC_FLAGS),\
$(JDK_TOPDIR)/src/windows/resource/java.rc)) $(JDK_TOPDIR)/src/windows/resource/java.rc))
ifeq ($(HOST_OS),windows) ifeq ($(OPENJDK_TARGET_OS),windows)
$(eval $(call SetupLauncher,javaw,\ $(eval $(call SetupLauncher,javaw,\
-DEXPAND_CLASSPATH_WILDCARDS,,,user32.lib comctl32.lib,\ -DEXPAND_CLASSPATH_WILDCARDS,,,user32.lib comctl32.lib,\
$(JDK_OUTPUTDIR)/objs/jli_static.lib,$(JAVA_RC_FLAGS),\ $(JDK_OUTPUTDIR)/objs/jli_static.lib,$(JAVA_RC_FLAGS),\
$(JDK_TOPDIR)/src/windows/resource/java.rc)) $(JDK_TOPDIR)/src/windows/resource/java.rc))
endif endif
ifeq ($(PLATFORM),solaris) ifeq ($(OPENJDK_TARGET_OS),solaris)
THREAD_LIB:=-lthread THREAD_LIB:=-lthread
endif endif
ifeq ($(PLATFORM),linux) ifeq ($(OPENJDK_TARGET_OS),linux)
THREAD_LIB:=-lpthread THREAD_LIB:=-lpthread
endif endif
...@@ -271,7 +328,7 @@ $(eval $(call SetupLauncher,rmiregistry,\ ...@@ -271,7 +328,7 @@ $(eval $(call SetupLauncher,rmiregistry,\
$(eval $(call SetupLauncher,jcmd,\ $(eval $(call SetupLauncher,jcmd,\
-DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "sun.tools.jcmd.JCmd"$(COMMA) }')) -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "sun.tools.jcmd.JCmd"$(COMMA) }'))
ifeq ($(PLATFORM),windows) ifeq ($(OPENJDK_TARGET_OS),windows)
$(eval $(call SetupLauncher,kinit,\ $(eval $(call SetupLauncher,kinit,\
-DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "sun.security.krb5.internal.tools.Kinit"$(COMMA) }')) -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "sun.security.krb5.internal.tools.Kinit"$(COMMA) }'))
...@@ -286,8 +343,10 @@ endif ...@@ -286,8 +343,10 @@ endif
# The order of the object files on the link command line affects the size of the resulting # The order of the object files on the link command line affects the size of the resulting
# binary (at least on linux) which causes the size to differ between old and new build. # binary (at least on linux) which causes the size to differ between old and new build.
ifeq ($(USE_EXTERNAL_LIBZ), true) ifeq ($(USE_EXTERNAL_LIBZ), true)
UNPACKEXE_CFLAGS := -DSYSTEM_ZLIB
UNPACKEXE_ZIPOBJS := -lz UNPACKEXE_ZIPOBJS := -lz
else else
UNPACKEXE_CFLAGS := -I$(JDK_TOPDIR)/src/share/native/java/util/zip/zlib-1.2.5
UNPACKEXE_ZIPOBJS := $(JDK_OUTPUTDIR)/objs/libzip/zcrc32$(OBJ_SUFFIX) \ UNPACKEXE_ZIPOBJS := $(JDK_OUTPUTDIR)/objs/libzip/zcrc32$(OBJ_SUFFIX) \
$(JDK_OUTPUTDIR)/objs/libzip/deflate$(OBJ_SUFFIX) \ $(JDK_OUTPUTDIR)/objs/libzip/deflate$(OBJ_SUFFIX) \
$(JDK_OUTPUTDIR)/objs/libzip/trees$(OBJ_SUFFIX) \ $(JDK_OUTPUTDIR)/objs/libzip/trees$(OBJ_SUFFIX) \
...@@ -299,27 +358,31 @@ UNPACKEXE_ZIPOBJS := $(JDK_OUTPUTDIR)/objs/libzip/zcrc32$(OBJ_SUFFIX) \ ...@@ -299,27 +358,31 @@ UNPACKEXE_ZIPOBJS := $(JDK_OUTPUTDIR)/objs/libzip/zcrc32$(OBJ_SUFFIX) \
$(JDK_OUTPUTDIR)/objs/libzip/inftrees$(OBJ_SUFFIX) \ $(JDK_OUTPUTDIR)/objs/libzip/inftrees$(OBJ_SUFFIX) \
$(JDK_OUTPUTDIR)/objs/libzip/inffast$(OBJ_SUFFIX) $(JDK_OUTPUTDIR)/objs/libzip/inffast$(OBJ_SUFFIX)
endif
$(JDK_OUTPUTDIR)/bin/unpack200$(EXE_SUFFIX): $(UNPACKEXE_ZIPOBJS) ifeq ($(OPENJDK_TARGET_CPU_ARCH), sparc)
UNPACKEXE_CFLAGS += -xregs=no%appl
endif endif
$(eval $(call SetupNativeCompilation,BUILD_UNPACKEXE,\ $(eval $(call SetupNativeCompilation,BUILD_UNPACKEXE,\
SRC:=$(JDK_TOPDIR)/src/share/native/com/sun/java/util/jar/pack,\ SRC:=$(JDK_TOPDIR)/src/share/native/com/sun/java/util/jar/pack,\
EXCLUDE_FILES:=jni.cpp,\ EXCLUDE_FILES:=jni.cpp,\
LANG:=C,\ LANG:=C,\
CFLAGS:=$(CXXFLAGS_JDKEXE) $(CXX_O_FLAG_NORM) \ OPTIMIZATION := LOW, \
-DFULL \ CFLAGS:=$(UNPACKEXE_CFLAGS) $(CXXFLAGS_JDKEXE)\
-I$(JDK_TOPDIR)/src/share/native/java/util/zip/zlib-1.2.5,\ -DFULL, \
CFLAGS_release:=-DPRODUCT,\ CFLAGS_release:=-DPRODUCT,\
CFLAGS_linux:=-fPIC,\ CFLAGS_linux:=-fPIC,\
CFLAGS_solaris := -KPIC, \
CFLAGS_macosx := -fPIC, \
MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libunpack/mapfile-vers-unpack200, \ MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libunpack/mapfile-vers-unpack200, \
LDFLAGS:=$(LDFLAGS_JDKEXE) \ LDFLAGS:=$(LDFLAGS_JDKEXE) \
$(call SET_SHARED_LIBRARY_ORIGIN), \ $(call SET_SHARED_LIBRARY_ORIGIN), \
LDFLAGS_SUFFIX:=$(UNPACKEXE_ZIPOBJS) $(LIBCXX),\ LDFLAGS_SUFFIX:=$(UNPACKEXE_ZIPOBJS) $(LIBCXX),\
LDFLAGS_SUFFIX_solaris:=-lc,\ LDFLAGS_SUFFIX_solaris:=-lc,\
BIN:=$(JDK_OUTPUTDIR)/objs/unpackexe,\ OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/unpackexe,\
EXE:=$(JDK_OUTPUTDIR)/objs/unpack200$(EXE_SUFFIX),\ OUTPUT_DIR:=$(JDK_OUTPUTDIR)/bin,\
PROGRAM:=unpack200,\
VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\
RC_FLAGS:=$(RC_FLAGS)\ RC_FLAGS:=$(RC_FLAGS)\
/D "JDK_FNAME=unpack200.exe" \ /D "JDK_FNAME=unpack200.exe" \
...@@ -327,7 +390,13 @@ $(eval $(call SetupNativeCompilation,BUILD_UNPACKEXE,\ ...@@ -327,7 +390,13 @@ $(eval $(call SetupNativeCompilation,BUILD_UNPACKEXE,\
/D "JDK_FTYPE=0x1L",\ /D "JDK_FTYPE=0x1L",\
MANIFEST:=$(JDK_TOPDIR)/src/windows/resource/unpack200_proto.exe.manifest)) MANIFEST:=$(JDK_TOPDIR)/src/windows/resource/unpack200_proto.exe.manifest))
BUILD_LAUNCHERS += $(JDK_OUTPUTDIR)/bin/unpack200$(EXE_SUFFIX) ifneq ($(USE_EXTERNAL_LIBZ), true)
$(BUILD_UNPACKEXE) : $(UNPACKEXE_ZIPOBJS)
endif
BUILD_LAUNCHERS += $(BUILD_UNPACKEXE)
########################################################################################## ##########################################################################################
...@@ -335,7 +404,7 @@ BUILD_LAUNCHERS += $(JDK_OUTPUTDIR)/bin/unpack200$(EXE_SUFFIX) ...@@ -335,7 +404,7 @@ BUILD_LAUNCHERS += $(JDK_OUTPUTDIR)/bin/unpack200$(EXE_SUFFIX)
BUILD_JEXEC := BUILD_JEXEC :=
BUILD_JEXEC_SRC := BUILD_JEXEC_SRC :=
BUILD_JEXEC_INC := BUILD_JEXEC_INC :=
BUILD_JEXEC_DST := $(JDK_OUTPUTDIR)/lib/$(LIBARCH)/jexec$(EXE_SUFFIX) BUILD_JEXEC_DST_DIR := $(JDK_OUTPUTDIR)/lib/$(LIBARCH)
# #
# UNHANDLED: # UNHANDLED:
...@@ -345,30 +414,30 @@ BUILD_JEXEC_DST := $(JDK_OUTPUTDIR)/lib/$(LIBARCH)/jexec$(EXE_SUFFIX) ...@@ -345,30 +414,30 @@ BUILD_JEXEC_DST := $(JDK_OUTPUTDIR)/lib/$(LIBARCH)/jexec$(EXE_SUFFIX)
# #
# jdk/make/java/Makefile # jdk/make/java/Makefile
# #
ifeq ($(PLATFORM), solaris) ifeq ($(OPENJDK_TARGET_OS), solaris)
ifeq ($(ARCH_DATA_MODEL), 32) ifeq ($(ARCH_DATA_MODEL), 32)
BUILD_JEXEC := 1 BUILD_JEXEC := 1
endif endif
endif endif
ifeq ($(PLATFORM), linux) ifeq ($(OPENJDK_TARGET_OS), linux)
BUILD_JEXEC := 1 BUILD_JEXEC := 1
endif # PLATFORM endif # OPENJDK_TARGET_OS
# #
# jdk/make/java/jexec/Makefile # jdk/make/java/jexec/Makefile
# #
ifeq ($(BUILD_JEXEC), 1) ifeq ($(BUILD_JEXEC), 1)
ifeq ($(PLATFORM),windows) ifeq ($(OPENJDK_TARGET_OS),windows)
else ifeq ($(PLATFORM),macosx) else ifeq ($(OPENJDK_TARGET_OS),macosx)
BUILD_JEXEC_SRC := $(JDK_TOPDIR)/src/macosx/bin BUILD_JEXEC_SRC := $(JDK_TOPDIR)/src/macosx/bin
else else
BUILD_JEXEC_SRC := $(JDK_TOPDIR)/src/solaris/bin BUILD_JEXEC_SRC := $(JDK_TOPDIR)/src/solaris/bin
endif endif
ifeq ($(PLATFORM), linux) ifeq ($(OPENJDK_TARGET_OS), linux)
BUILD_JEXEC_DST := $(JDK_OUTPUTDIR)/lib/jexec$(EXE_SUFFIX) BUILD_JEXEC_DST_DIR := $(JDK_OUTPUTDIR)/lib
BUILD_JEXEC_INC += -I$(JDK_TOPDIR)/src/share/bin BUILD_JEXEC_INC += -I$(JDK_TOPDIR)/src/share/bin
endif endif
endif endif
...@@ -382,13 +451,15 @@ ifneq ($(BUILD_JEXEC_SRC),) ...@@ -382,13 +451,15 @@ ifneq ($(BUILD_JEXEC_SRC),)
SRC:=$(BUILD_JEXEC_SRC),\ SRC:=$(BUILD_JEXEC_SRC),\
INCLUDE_FILES:=jexec.c,\ INCLUDE_FILES:=jexec.c,\
LANG:=C,\ LANG:=C,\
CFLAGS:=$(CFLAGS_JDKEXE) $(C_O_FLAG_NORM) \ OPTIMIZATION := LOW, \
CFLAGS:=$(CFLAGS_JDKEXE)\
$(BUILD_JEXEC_INC), \ $(BUILD_JEXEC_INC), \
LDFLAGS:=$(LDFLAGS_JDKEXE), \ LDFLAGS:=$(LDFLAGS_JDKEXE), \
BIN:=$(JDK_OUTPUTDIR)/objs/jexec_obj,\ OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/jexec_obj,\
EXE:=$(BUILD_JEXEC_DST))) OUTPUT_DIR:=$(BUILD_JEXEC_DST_DIR),\
PROGRAM:=jexec))
BUILD_LAUNCHERS += $(BUILD_JEXEC_DST) BUILD_LAUNCHERS += $(BUILD_JEXEC)
endif endif
########################################################################################## ##########################################################################################
...@@ -397,10 +468,10 @@ endif ...@@ -397,10 +468,10 @@ endif
# The java-rmi.cgi script in bin/ only gets delivered in certain situations # The java-rmi.cgi script in bin/ only gets delivered in certain situations
# #
JAVA_RMI_CGI:=$(JDK_OUTPUTDIR)/bin/java-rmi.cgi JAVA_RMI_CGI:=$(JDK_OUTPUTDIR)/bin/java-rmi.cgi
ifeq ($(PLATFORM), linux) ifeq ($(OPENJDK_TARGET_OS), linux)
BUILD_LAUNCHERS += $(JAVA_RMI_CGI) BUILD_LAUNCHERS += $(JAVA_RMI_CGI)
endif endif
ifeq ($(PLATFORM), solaris) ifeq ($(OPENJDK_TARGET_OS), solaris)
ifeq ($(ARCH_DATA_MODEL), 32) ifeq ($(ARCH_DATA_MODEL), 32)
BUILD_LAUNCHERS += $(JAVA_RMI_CGI) BUILD_LAUNCHERS += $(JAVA_RMI_CGI)
endif endif
...@@ -413,12 +484,13 @@ endif ...@@ -413,12 +484,13 @@ endif
# images bin dir. This weird behavior is mimicked here in the converted makefiles for # images bin dir. This weird behavior is mimicked here in the converted makefiles for
# now. Should probably just be deleted. # now. Should probably just be deleted.
# http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6512052 # http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6512052
ifeq ($(HOST_OS_API),winapi) ifeq ($(OPENJDK_TARGET_OS_API),winapi)
$(eval $(call SetupLauncher,java-rmi,\ $(eval $(call SetupLauncher,java-rmi,\
-DEXPAND_CLASSPATH_WILDCARDS,\ -DEXPAND_CLASSPATH_WILDCARDS,\
$(call SET_SHARED_LIBRARY_MAPFILE,$(JDK_TOPDIR)/makefiles/java/main/java/mapfile-$(ARCH)))) $(call SET_SHARED_LIBRARY_MAPFILE,$(JDK_TOPDIR)/makefiles/java/main/java/mapfile-$(ARCH)),\
,,,,,$(JDK_OUTPUTDIR)/objs))
$(JAVA_RMI_CGI): $(JDK_OUTPUTDIR)/objs/java-rmi$(EXE_SUFFIX) $(JAVA_RMI_CGI): $(BUILD_LAUNCHER_java-rmi)
$(MKDIR) -p $(@D) $(MKDIR) -p $(@D)
$(CP) $< $@ $(CP) $< $@
...@@ -432,11 +504,6 @@ endif ...@@ -432,11 +504,6 @@ endif
########################################################################################## ##########################################################################################
$(JDK_OUTPUTDIR)/bin/% : $(JDK_OUTPUTDIR)/objs/%
$(ECHO) Copying $(@F)
$(MKDIR) -p $(@D)
$(CP) $< $@
$(BUILD_LAUNCHERS) : $(JDK_TOPDIR)/makefiles/CompileLaunchers.gmk $(BUILD_LAUNCHERS) : $(JDK_TOPDIR)/makefiles/CompileLaunchers.gmk
all: $(BUILD_LAUNCHERS) all: $(BUILD_LAUNCHERS)
......
...@@ -25,12 +25,12 @@ ...@@ -25,12 +25,12 @@
INCLUDEDIR = $(JDK_OUTPUTDIR)/include INCLUDEDIR = $(JDK_OUTPUTDIR)/include
PLATFORM_INCLUDE = $(INCLUDEDIR)/$(PLATFORM) OPENJDK_TARGET_OS_INCLUDE = $(INCLUDEDIR)/$(OPENJDK_TARGET_OS)
ifeq ($(PLATFORM), windows) ifeq ($(OPENJDK_TARGET_OS), windows)
PLATFORM_INCLUDE = $(INCLUDEDIR)/win32 OPENJDK_TARGET_OS_INCLUDE = $(INCLUDEDIR)/win32
else ifeq ($(PLATFORM), macosx) else ifeq ($(OPENJDK_TARGET_OS), macosx)
PLATFORM_INCLUDE = $(INCLUDEDIR)/darwin OPENJDK_TARGET_OS_INCLUDE = $(INCLUDEDIR)/darwin
endif endif
# #
...@@ -42,15 +42,15 @@ H_TARGET_FILES =$(INCLUDEDIR)/jdwpTransport.h \ ...@@ -42,15 +42,15 @@ H_TARGET_FILES =$(INCLUDEDIR)/jdwpTransport.h \
$(INCLUDEDIR)/jvmticmlr.h \ $(INCLUDEDIR)/jvmticmlr.h \
$(INCLUDEDIR)/classfile_constants.h \ $(INCLUDEDIR)/classfile_constants.h \
$(INCLUDEDIR)/jawt.h \ $(INCLUDEDIR)/jawt.h \
$(PLATFORM_INCLUDE)/jni_md.h \ $(OPENJDK_TARGET_OS_INCLUDE)/jni_md.h \
$(PLATFORM_INCLUDE)/jawt_md.h $(OPENJDK_TARGET_OS_INCLUDE)/jawt_md.h
$(INCLUDEDIR)/%.h: $(JDK_TOPDIR)/src/share/javavm/export/%.h $(INCLUDEDIR)/%.h: $(JDK_TOPDIR)/src/share/javavm/export/%.h
$(MKDIR) -p $(@D) $(MKDIR) -p $(@D)
$(RM) -f $@ $(RM) -f $@
$(CP) $< $@ $(CP) $< $@
$(PLATFORM_INCLUDE)/%.h: $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/javavm/export/%.h $(OPENJDK_TARGET_OS_INCLUDE)/%.h: $(JDK_TOPDIR)/src/$(LEGACY_OPENJDK_TARGET_OS_API)/javavm/export/%.h
$(MKDIR) -p $(@D) $(MKDIR) -p $(@D)
$(RM) -f $@ $(RM) -f $@
$(CP) $< $@ $(CP) $< $@
...@@ -83,6 +83,13 @@ $(MGMT_LIBDIR)/management.properties: $(MGMT_LIB_SRC)/management.properties ...@@ -83,6 +83,13 @@ $(MGMT_LIBDIR)/management.properties: $(MGMT_LIB_SRC)/management.properties
$(CP) $< $@ $(CP) $< $@
$(CHMOD) 644 $@ $(CHMOD) 644 $@
# this file has different permissions...don't know why...
$(MGMT_LIBDIR)/jmxremote.access: $(MGMT_LIB_SRC)/jmxremote.access
$(MKDIR) -p $(@D)
$(RM) -f $@
$(CP) $< $@
$(CHMOD) 644 $@
$(MGMT_LIBDIR)/%: $(MGMT_LIB_SRC)/% $(MGMT_LIBDIR)/%: $(MGMT_LIB_SRC)/%
$(MKDIR) -p $(@D) $(MKDIR) -p $(@D)
$(RM) -f $@ $(RM) -f $@
...@@ -121,9 +128,13 @@ COPY_FILES += $(PSFONTPROPFILE_TARGET_FILES) ...@@ -121,9 +128,13 @@ COPY_FILES += $(PSFONTPROPFILE_TARGET_FILES)
# #
# Copy flavormap.properties, cursor.properties and cursors gif files to LIBDIR # Copy flavormap.properties, cursor.properties and cursors gif files to LIBDIR
# #
PLATFORM_LIB_SRC = $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/lib ifneq ($(OPENJDK_TARGET_OS), macosx)
OPENJDK_TARGET_OS_LIB_SRC = $(JDK_TOPDIR)/src/$(LEGACY_OPENJDK_TARGET_OS_API)/lib
else
OPENJDK_TARGET_OS_LIB_SRC = $(JDK_TOPDIR)/src/macosx/lib
endif
$(LIBDIR)/flavormap.properties: $(PLATFORM_LIB_SRC)/flavormap.properties $(LIBDIR)/flavormap.properties: $(OPENJDK_TARGET_OS_LIB_SRC)/flavormap.properties
$(MKDIR) -p $(@D) $(MKDIR) -p $(@D)
$(RM) -f $@ $(RM) -f $@
$(CP) $< $@ $(CP) $< $@
...@@ -131,9 +142,9 @@ $(LIBDIR)/flavormap.properties: $(PLATFORM_LIB_SRC)/flavormap.properties ...@@ -131,9 +142,9 @@ $(LIBDIR)/flavormap.properties: $(PLATFORM_LIB_SRC)/flavormap.properties
COPY_FILES += $(LIBDIR)/flavormap.properties COPY_FILES += $(LIBDIR)/flavormap.properties
CURSORS_DEST_DIR = $(LIBDIR)/images/cursors CURSORS_DEST_DIR = $(LIBDIR)/images/cursors
CURSORS_PLATFORM_LIB_SRC = $(PLATFORM_LIB_SRC)/images/cursors CURSORS_OPENJDK_TARGET_OS_LIB_SRC = $(JDK_TOPDIR)/src/$(LEGACY_OPENJDK_TARGET_OS_API)/lib/images/cursors
$(CURSORS_DEST_DIR)/cursors.properties: $(CURSORS_PLATFORM_LIB_SRC)/cursors.properties $(CURSORS_DEST_DIR)/cursors.properties: $(CURSORS_OPENJDK_TARGET_OS_LIB_SRC)/cursors.properties
$(MKDIR) -p $(@D) $(MKDIR) -p $(@D)
$(RM) -f $@ $(RM) -f $@
$(CP) $< $@ $(CP) $< $@
...@@ -141,11 +152,11 @@ $(CURSORS_DEST_DIR)/cursors.properties: $(CURSORS_PLATFORM_LIB_SRC)/cursors.prop ...@@ -141,11 +152,11 @@ $(CURSORS_DEST_DIR)/cursors.properties: $(CURSORS_PLATFORM_LIB_SRC)/cursors.prop
COPY_FILES += $(CURSORS_DEST_DIR)/cursors.properties COPY_FILES += $(CURSORS_DEST_DIR)/cursors.properties
CURSORS_LIB_SRC = $(JDK_TOPDIR)/src/share/lib/images/cursors CURSORS_LIB_SRC = $(JDK_TOPDIR)/src/share/lib/images/cursors
ifeq ($(PLATFORM), windows) ifeq ($(OPENJDK_TARGET_OS), windows)
CURSORS_SRC_FILES = $(CURSORS_LIB_SRC)/invalid32x32.gif $(wildcard $(CURSORS_LIB_SRC)/win32_*.gif) CURSORS_SRC_FILES = $(CURSORS_LIB_SRC)/invalid32x32.gif $(wildcard $(CURSORS_LIB_SRC)/win32_*.gif)
else # PLATFORM else # OPENJDK_TARGET_OS
CURSORS_SRC_FILES = $(CURSORS_LIB_SRC)/invalid32x32.gif $(wildcard $(CURSORS_LIB_SRC)/motif_*.gif) CURSORS_SRC_FILES = $(CURSORS_LIB_SRC)/invalid32x32.gif $(wildcard $(CURSORS_LIB_SRC)/motif_*.gif)
endif # PLATFORM endif # OPENJDK_TARGET_OS
CURSORS_TARGET_FILES = $(subst $(CURSORS_LIB_SRC),$(CURSORS_DEST_DIR),$(CURSORS_SRC_FILES)) CURSORS_TARGET_FILES = $(subst $(CURSORS_LIB_SRC),$(CURSORS_DEST_DIR),$(CURSORS_SRC_FILES))
$(CURSORS_DEST_DIR)/%: $(CURSORS_LIB_SRC)/% $(CURSORS_DEST_DIR)/%: $(CURSORS_LIB_SRC)/%
...@@ -157,7 +168,7 @@ COPY_FILES += $(CURSORS_TARGET_FILES) ...@@ -157,7 +168,7 @@ COPY_FILES += $(CURSORS_TARGET_FILES)
########################################################################################## ##########################################################################################
CONTENT_TYPES_SRC=$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/lib CONTENT_TYPES_SRC=$(JDK_TOPDIR)/src/$(LEGACY_OPENJDK_TARGET_OS_API)/lib
$(LIBDIR)/content-types.properties: $(CONTENT_TYPES_SRC)/content-types.properties $(LIBDIR)/content-types.properties: $(CONTENT_TYPES_SRC)/content-types.properties
$(MKDIR) -p $(@D) $(MKDIR) -p $(@D)
...@@ -179,9 +190,9 @@ COPY_FILES += $(LIBDIR)/calendars.properties ...@@ -179,9 +190,9 @@ COPY_FILES += $(LIBDIR)/calendars.properties
########################################################################################## ##########################################################################################
ifeq ($(PLATFORM),windows) ifeq ($(OPENJDK_TARGET_OS),windows)
TZMAPPINGS_SRC := $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/lib TZMAPPINGS_SRC := $(JDK_TOPDIR)/src/$(LEGACY_OPENJDK_TARGET_OS_API)/lib
$(LIBDIR)/tzmappings: $(TZMAPPINGS_SRC)/tzmappings $(LIBDIR)/tzmappings: $(TZMAPPINGS_SRC)/tzmappings
$(MKDIR) -p $(@D) $(MKDIR) -p $(@D)
...@@ -233,7 +244,7 @@ COPY_FILES += $(ICCPROFILE_TARGET_FILES) ...@@ -233,7 +244,7 @@ COPY_FILES += $(ICCPROFILE_TARGET_FILES)
#TODO: rework this to avoid hardcoding library name in the makefile #TODO: rework this to avoid hardcoding library name in the makefile
# #
ifdef OPENJDK ifdef OPENJDK
ifeq ($(PLATFORM), windows) ifeq ($(OPENJDK_TARGET_OS), windows)
FREETYPE_LIB = $(JDK_OUTPUTDIR)/bin/$(call SHARED_LIBRARY,freetype) FREETYPE_LIB = $(JDK_OUTPUTDIR)/bin/$(call SHARED_LIBRARY,freetype)
else else
ifeq ($(USING_SYSTEM_FT_LIB), false) ifeq ($(USING_SYSTEM_FT_LIB), false)
...@@ -243,7 +254,7 @@ ifdef OPENJDK ...@@ -243,7 +254,7 @@ ifdef OPENJDK
$(FREETYPE_LIB): $(FREETYPE2_LIB_PATH)/$(call SHARED_LIBRARY,freetype) $(FREETYPE_LIB): $(FREETYPE2_LIB_PATH)/$(call SHARED_LIBRARY,freetype)
$(CP) $(FREETYPE2_LIB_PATH)/$(call SHARED_LIBRARY,freetype) $@ $(CP) $(FREETYPE2_LIB_PATH)/$(call SHARED_LIBRARY,freetype) $@
ifeq ($(BUILD_OS), windows) ifeq ($(OPENJDK_BUILD_OS), windows)
$(CHMOD) +rx $@ $(CHMOD) +rx $@
endif endif
...@@ -254,7 +265,7 @@ endif ...@@ -254,7 +265,7 @@ endif
# Copy msvcr100.dll on windows # Copy msvcr100.dll on windows
ifeq ($(PLATFORM),windows) ifeq ($(OPENJDK_TARGET_OS),windows)
MSVCRNN_TARGET := $(JDK_OUTPUTDIR)/bin/$(notdir $(MSVCRNN_DLL)) MSVCRNN_TARGET := $(JDK_OUTPUTDIR)/bin/$(notdir $(MSVCRNN_DLL))
$(MSVCRNN_TARGET): $(MSVCRNN_DLL) $(MSVCRNN_TARGET): $(MSVCRNN_DLL)
$(MKDIR) -p $(@D) $(MKDIR) -p $(@D)
...@@ -286,14 +297,14 @@ else ...@@ -286,14 +297,14 @@ else
JVMCFG_ARCH := $(ARCH) JVMCFG_ARCH := $(ARCH)
endif endif
ifeq ($(PLATFORM),macosx) ifeq ($(OPENJDK_TARGET_OS),macosx)
ifeq ($(JVMCFG_ARCH),amd64) ifeq ($(JVMCFG_ARCH),amd64)
JVMCFG_ARCH := x86_64 JVMCFG_ARCH := x86_64
endif endif
JVMCFG_SRC := $(JDK_TOPDIR)/src/macosx/bin/$(JVMCFG_ARCH)/jvm.cfg JVMCFG_SRC := $(JDK_TOPDIR)/src/macosx/bin/$(JVMCFG_ARCH)/jvm.cfg
JVMCFG_DIR := $(JDK_OUTPUTDIR)/lib JVMCFG_DIR := $(JDK_OUTPUTDIR)/lib
else else
JVMCFG_SRC := $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/bin/$(JVMCFG_ARCH)/jvm.cfg JVMCFG_SRC := $(JDK_TOPDIR)/src/$(LEGACY_OPENJDK_TARGET_OS_API)/bin/$(JVMCFG_ARCH)/jvm.cfg
JVMCFG_DIR := $(JDK_OUTPUTDIR)/lib/$(LIBARCH) JVMCFG_DIR := $(JDK_OUTPUTDIR)/lib/$(LIBARCH)
endif endif
...@@ -353,15 +364,15 @@ COPY_FILES += $(JVMCFG) ...@@ -353,15 +364,15 @@ COPY_FILES += $(JVMCFG)
PROPS_SRC := $(JDK_TOPDIR)/src/share/lib/security/java.security PROPS_SRC := $(JDK_TOPDIR)/src/share/lib/security/java.security
PROPS_DST := $(JDK_OUTPUTDIR)/lib/security/java.security PROPS_DST := $(JDK_OUTPUTDIR)/lib/security/java.security
ifeq ($(PLATFORM), solaris) ifeq ($(OPENJDK_TARGET_OS), solaris)
PROPS_SRC := $(JDK_TOPDIR)/src/share/lib/security/java.security-solaris PROPS_SRC := $(JDK_TOPDIR)/src/share/lib/security/java.security-solaris
endif endif
ifeq ($(PLATFORM), windows) ifeq ($(OPENJDK_TARGET_OS), windows)
PROPS_SRC := $(JDK_TOPDIR)/src/share/lib/security/java.security-windows PROPS_SRC := $(JDK_TOPDIR)/src/share/lib/security/java.security-windows
endif endif
ifeq ($(PLATFORM), macosx) ifeq ($(OPENJDK_TARGET_OS), macosx)
PROPS_SRC := $(JDK_TOPDIR)/src/share/lib/security/java.security-macosx PROPS_SRC := $(JDK_TOPDIR)/src/share/lib/security/java.security-macosx
endif endif
...@@ -453,7 +464,7 @@ $(SHARED_FONTS_DST_DIR)/fonts.dir : $(JDK_TOPDIR)/src/solaris/classes/sun/awt/mo ...@@ -453,7 +464,7 @@ $(SHARED_FONTS_DST_DIR)/fonts.dir : $(JDK_TOPDIR)/src/solaris/classes/sun/awt/mo
COPY_FILES += $(SHARED_FONTS_DST) $(SHARED_FONTS_DST_DIR)/fonts.dir COPY_FILES += $(SHARED_FONTS_DST) $(SHARED_FONTS_DST_DIR)/fonts.dir
ifeq ($(PLATFORM), linux) ifeq ($(OPENJDK_TARGET_OS), linux)
# The oblique fonts are only needed/wanted on Linux. # The oblique fonts are only needed/wanted on Linux.
...@@ -532,11 +543,13 @@ $(JDK_OUTPUTDIR)/lib/$(LIBARCH)/libxinerama.so: $(JDK_TOPDIR)/src/closed/solaris ...@@ -532,11 +543,13 @@ $(JDK_OUTPUTDIR)/lib/$(LIBARCH)/libxinerama.so: $(JDK_TOPDIR)/src/closed/solaris
$(MKDIR) -p $(@D) $(MKDIR) -p $(@D)
$(RM) $@ $(RM) $@
$(CP) $< $@ $(CP) $< $@
$(CHMOD) 755 $@
$(JDK_OUTPUTDIR)/lib/$(LIBARCH)/libjdgaSUNW%.so: $(JDK_TOPDIR)/src/closed/solaris/lib/$(ARCH)/libjdgaSUNW%.so $(JDK_OUTPUTDIR)/lib/$(LIBARCH)/libjdgaSUNW%.so: $(JDK_TOPDIR)/src/closed/solaris/lib/$(ARCH)/libjdgaSUNW%.so
$(MKDIR) -p $(@D) $(MKDIR) -p $(@D)
$(RM) $@ $(RM) $@
$(CP) $< $@ $(CP) $< $@
$(CHMOD) 755 $@
$(JDK_OUTPUTDIR)/lib/$(LIBARCH)/libjdgaSUNWafb.so: $(JDK_OUTPUTDIR)/lib/$(LIBARCH)/libjdgaSUNWffb.so $(JDK_OUTPUTDIR)/lib/$(LIBARCH)/libjdgaSUNWafb.so: $(JDK_OUTPUTDIR)/lib/$(LIBARCH)/libjdgaSUNWffb.so
$(MKDIR) -p $(@D) $(MKDIR) -p $(@D)
...@@ -549,7 +562,7 @@ endif ...@@ -549,7 +562,7 @@ endif
########################################################################################## ##########################################################################################
ifeq ($(PLATFORM), solaris) ifeq ($(OPENJDK_TARGET_OS), solaris)
SUNPKCS11_CFG_SRC := $(JDK_TOPDIR)/src/share/lib/security/sunpkcs11-solaris.cfg SUNPKCS11_CFG_SRC := $(JDK_TOPDIR)/src/share/lib/security/sunpkcs11-solaris.cfg
SUNPKCS11_CFG_DST := $(JDK_OUTPUTDIR)/lib/security/sunpkcs11-solaris.cfg SUNPKCS11_CFG_DST := $(JDK_OUTPUTDIR)/lib/security/sunpkcs11-solaris.cfg
...@@ -566,7 +579,7 @@ endif ...@@ -566,7 +579,7 @@ endif
########################################################################################## ##########################################################################################
ifndef OPENJDK ifndef OPENJDK
ifeq ($(PLATFORM), solaris) ifeq ($(OPENJDK_TARGET_OS), solaris)
UCRYPTO_CFG_SRC := $(JDK_TOPDIR)/src/closed/share/lib/security/ucrypto-solaris.cfg UCRYPTO_CFG_SRC := $(JDK_TOPDIR)/src/closed/share/lib/security/ucrypto-solaris.cfg
UCRYPTO_CFG_DST := $(JDK_OUTPUTDIR)/lib/security/ucrypto-solaris.cfg UCRYPTO_CFG_DST := $(JDK_OUTPUTDIR)/lib/security/ucrypto-solaris.cfg
......
...@@ -133,7 +133,7 @@ COPY_FILES += \ ...@@ -133,7 +133,7 @@ COPY_FILES += \
$(wildcard $(SWING_PLAF_METAL_RESOURCES_DIR)/icons/ocean/*.png) \ $(wildcard $(SWING_PLAF_METAL_RESOURCES_DIR)/icons/ocean/*.png) \
$(wildcard $(SWING_PLAF_METAL_RESOURCES_DIR)/sounds/*.wav) $(wildcard $(SWING_PLAF_METAL_RESOURCES_DIR)/sounds/*.wav)
ifneq ($(PLATFORM), windows) ifneq ($(OPENJDK_TARGET_OS), windows)
# Only copy GTK resources on Solaris/Linux # Only copy GTK resources on Solaris/Linux
SWING_PLAF_GTK_RESOURCES_DIR = $(JDK_TOPDIR)/src/share/classes/com/sun/java/swing/plaf/gtk SWING_PLAF_GTK_RESOURCES_DIR = $(JDK_TOPDIR)/src/share/classes/com/sun/java/swing/plaf/gtk
COPY_FILES += \ COPY_FILES += \
...@@ -174,11 +174,11 @@ COPY_FILES += \ ...@@ -174,11 +174,11 @@ COPY_FILES += \
$(shell $(MKDIR) -p $(JDK_OUTPUTDIR)/classes/META-INF/services) $(shell $(MKDIR) -p $(JDK_OUTPUTDIR)/classes/META-INF/services)
# Find all META-INF/services/* files # Find all META-INF/services/* files
ALL_META-INF_DIRS_share:=$(shell $(FIND) $(JDK_TOPDIR)/src/share/classes -type d -a -name META-INF) ALL_META-INF_DIRS_share:=$(shell $(FIND) $(JDK_TOPDIR)/src/share/classes -type d -a -name META-INF)
ALL_META-INF_DIRS_hostapi:=$(shell $(FIND) $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/classes -type d -a -name META-INF) ALL_META-INF_DIRS_targetapi:=$(shell $(FIND) $(JDK_TOPDIR)/src/$(LEGACY_OPENJDK_TARGET_OS_API)/classes -type d -a -name META-INF)
# Platform specific overrides shared # Platform specific overrides shared
ifneq ($(ALL_META-INF_DIRS_hostapi),) ifneq ($(ALL_META-INF_DIRS_targetapi),)
ALL_META-INF_DIRS:=$(ALL_META-INF_DIRS_hostapi) \ ALL_META-INF_DIRS:=$(ALL_META-INF_DIRS_targetapi) \
$(filter-out %$(patsubst $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/classes%,%,$(ALL_META-INF_DIRS_hostapi)),\ $(filter-out %$(patsubst $(JDK_TOPDIR)/src/$(LEGACY_OPENJDK_TARGET_OS_API)/classes%,%,$(ALL_META-INF_DIRS_targetapi)),\
$(ALL_META-INF_DIRS_share)) $(ALL_META-INF_DIRS_share))
else else
ALL_META-INF_DIRS:=$(ALL_META-INF_DIRS_share) ALL_META-INF_DIRS:=$(ALL_META-INF_DIRS_share)
...@@ -189,7 +189,7 @@ ifdef OPENJDK ...@@ -189,7 +189,7 @@ ifdef OPENJDK
endif endif
ifndef OPENJDK ifndef OPENJDK
ifneq ($(PLATFORM), macosx) ifneq ($(OPENJDK_TARGET_OS), macosx)
ALL_META-INF_DIRS += $(JDK_TOPDIR)/src/closed/share/classes/sun/jdbc/odbc/META-INF ALL_META-INF_DIRS += $(JDK_TOPDIR)/src/closed/share/classes/sun/jdbc/odbc/META-INF
endif endif
endif endif
...@@ -216,9 +216,9 @@ OUT_SERVICES_FILES:=$(addprefix $(JDK_OUTPUTDIR)/classes/META-INF/services/,\ ...@@ -216,9 +216,9 @@ OUT_SERVICES_FILES:=$(addprefix $(JDK_OUTPUTDIR)/classes/META-INF/services/,\
$(shell $(PRINTF) "$(SRC_SERVICES_FILES)\n" | $(SED) -e 's|/[^ ]*/META-INF/services/||g')) $(shell $(PRINTF) "$(SRC_SERVICES_FILES)\n" | $(SED) -e 's|/[^ ]*/META-INF/services/||g'))
OUT_SERVICES_FILES_COLON:=$(addsuffix :,$(OUT_SERVICES_FILES)) OUT_SERVICES_FILES_COLON:=$(addsuffix :,$(OUT_SERVICES_FILES))
# Exception handling for print services with no META-INF directory # Exception handling for print services with no META-INF directory
SRC_SERVICES_FILES_PRINT = $(wildcard $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/classes/sun/print/services/*) SRC_SERVICES_FILES_PRINT = $(wildcard $(JDK_TOPDIR)/src/$(LEGACY_OPENJDK_TARGET_OS_API)/classes/sun/print/services/*)
OUT_SERVICES_FILES_PRINT = $(addprefix $(JDK_OUTPUTDIR)/classes/META-INF/services/,\ OUT_SERVICES_FILES_PRINT = $(addprefix $(JDK_OUTPUTDIR)/classes/META-INF/services/,\
$(patsubst $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/classes/sun/print/services/%,%,\ $(patsubst $(JDK_TOPDIR)/src/$(LEGACY_OPENJDK_TARGET_OS_API)/classes/sun/print/services/%,%,\
$(SRC_SERVICES_FILES_PRINT))) $(SRC_SERVICES_FILES_PRINT)))
OUT_SERVICES_FILES_PRINT_COLON = $(addsuffix :,$(OUT_SERVICES_FILES_PRINT)) OUT_SERVICES_FILES_PRINT_COLON = $(addsuffix :,$(OUT_SERVICES_FILES_PRINT))
RULES_SERVICES_PRINT = $(join $(OUT_SERVICES_FILES_PRINT_COLON),$(SRC_SERVICES_FILES_PRINT)) RULES_SERVICES_PRINT = $(join $(OUT_SERVICES_FILES_PRINT_COLON),$(SRC_SERVICES_FILES_PRINT))
...@@ -229,7 +229,7 @@ META-INF_RULES_SERVICES:=$(RULES_SERVICES_PRINT) $(join $(OUT_SERVICES_FILES_COL ...@@ -229,7 +229,7 @@ META-INF_RULES_SERVICES:=$(RULES_SERVICES_PRINT) $(join $(OUT_SERVICES_FILES_COL
define addto_meta-inf_services define addto_meta-inf_services
$1 $1
echo Installing META-INF/services/$$(@F) echo Installing META-INF/services/$$(@F)
$(CAT) $$< | $(SED) -e "s/^#\[$(PLATFORM)\]//" > $$@ $(CAT) $$< | $(SED) -e "s/^#\[$(OPENJDK_TARGET_OS)\]//" > $$@
endef endef
$(foreach i,$(META-INF_RULES_SERVICES),$(eval $(call addto_meta-inf_services,$i))) $(foreach i,$(META-INF_RULES_SERVICES),$(eval $(call addto_meta-inf_services,$i)))
# Here is the generic rule, whose receipt the above rules will trigger. # Here is the generic rule, whose receipt the above rules will trigger.
...@@ -261,13 +261,13 @@ JAVAX_SOUND_SRC_FILES := \ ...@@ -261,13 +261,13 @@ JAVAX_SOUND_SRC_FILES := \
COPY_EXTRA += $(foreach F,$(notdir $(JAVAX_SOUND_SRC_FILES)),$(JDK_OUTPUTDIR)/classes/META-INF/services/${F}) COPY_EXTRA += $(foreach F,$(notdir $(JAVAX_SOUND_SRC_FILES)),$(JDK_OUTPUTDIR)/classes/META-INF/services/${F})
ifeq ($(PLATFORM)-$(ARCH),windows-ia64) ifeq ($(OPENJDK_TARGET_OS)-$(ARCH),windows-ia64)
JAVAX_SOUND_SRC_FILES += windows-ia64/javax.sound.sampled.spi.MixerProvider JAVAX_SOUND_SRC_FILES += windows-ia64/javax.sound.sampled.spi.MixerProvider
COPY_EXTRA += $(JDK_OUTPUTDIR)/classes/META-INF/services/javax.sound.sampled.spi.MixerProvider COPY_EXTRA += $(JDK_OUTPUTDIR)/classes/META-INF/services/javax.sound.sampled.spi.MixerProvider
else ifeq ($(PLATFORM),windows) else ifeq ($(OPENJDK_TARGET_OS),windows)
JAVAX_SOUND_SRC_FILES += windows-i586/javax.sound.sampled.spi.MixerProvider JAVAX_SOUND_SRC_FILES += windows-i586/javax.sound.sampled.spi.MixerProvider
COPY_EXTRA += $(JDK_OUTPUTDIR)/classes/META-INF/services/javax.sound.sampled.spi.MixerProvider COPY_EXTRA += $(JDK_OUTPUTDIR)/classes/META-INF/services/javax.sound.sampled.spi.MixerProvider
else ifeq ($(PLATFORM)-$(ARCH),linux-i586) else ifeq ($(OPENJDK_TARGET_OS)-$(ARCH),linux-i586)
JAVAX_SOUND_SRC_FILES += linux-i586/javax.sound.sampled.spi.MixerProvider JAVAX_SOUND_SRC_FILES += linux-i586/javax.sound.sampled.spi.MixerProvider
COPY_EXTRA += $(JDK_OUTPUTDIR)/classes/META-INF/services/javax.sound.sampled.spi.MixerProvider COPY_EXTRA += $(JDK_OUTPUTDIR)/classes/META-INF/services/javax.sound.sampled.spi.MixerProvider
else else
......
...@@ -46,7 +46,7 @@ ifndef OPENJDK ...@@ -46,7 +46,7 @@ ifndef OPENJDK
SAMPLE_TARGET += $(SAMPLE_CLOSED_TARGET) SAMPLE_TARGET += $(SAMPLE_CLOSED_TARGET)
endif endif
ifneq (, $(filter $(PLATFORM), solaris macosx)) ifneq (, $(filter $(OPENJDK_TARGET_OS), solaris macosx))
SAMPLE_SOLARIS_SOURCE := $(shell $(FIND) $(SAMPLE_SOLARIS_SOURCE_DIR) -type f -print) SAMPLE_SOLARIS_SOURCE := $(shell $(FIND) $(SAMPLE_SOLARIS_SOURCE_DIR) -type f -print)
SAMPLE_SOLARIS_TARGET := $(subst $(SAMPLE_SOLARIS_SOURCE_DIR),$(SAMPLE_TARGET_DIR),$(SAMPLE_SOLARIS_SOURCE)) SAMPLE_SOLARIS_TARGET := $(subst $(SAMPLE_SOLARIS_SOURCE_DIR),$(SAMPLE_TARGET_DIR),$(SAMPLE_SOLARIS_SOURCE))
SAMPLE_TARGET += $(SAMPLE_SOLARIS_TARGET) SAMPLE_TARGET += $(SAMPLE_SOLARIS_TARGET)
...@@ -72,4 +72,3 @@ COPY_FILES += $(SAMPLE_TARGET) ...@@ -72,4 +72,3 @@ COPY_FILES += $(SAMPLE_TARGET)
all: $(COPY_FILES) all: $(COPY_FILES)
.PHONY: all .PHONY: all
...@@ -32,6 +32,10 @@ default: all ...@@ -32,6 +32,10 @@ default: all
include Tools.gmk include Tools.gmk
#
# This makefile...so that altering will trigger rebuilding include/exclude-lists => jars
#
MAKEFILE=$(JDK_TOPDIR)/makefiles/CreateJars.gmk
MAINMANIFEST := $(JDK_TOPDIR)/make/tools/manifest.mf MAINMANIFEST := $(JDK_TOPDIR)/make/tools/manifest.mf
BEANMANIFEST := $(JDK_TOPDIR)/make/javax/swing/beaninfo/manifest BEANMANIFEST := $(JDK_TOPDIR)/make/javax/swing/beaninfo/manifest
...@@ -46,7 +50,7 @@ JCONSOLE_JAR_DEPS := \ ...@@ -46,7 +50,7 @@ JCONSOLE_JAR_DEPS := \
$(eval $(call SetupArchive,BUILD_JCONSOLE_JAR,$(JCONSOLE_JAR_DEPS),\ $(eval $(call SetupArchive,BUILD_JCONSOLE_JAR,$(JCONSOLE_JAR_DEPS),\
SRCS:=$(JDK_OUTPUTDIR)/classes,\ SRCS:=$(JDK_OUTPUTDIR)/classes,\
SUFFIXES:=.class .gif .png,\ SUFFIXES:=.class .gif .png .properties,\
INCLUDES:=sun/tools/jconsole com/sun/tools/jconsole,\ INCLUDES:=sun/tools/jconsole com/sun/tools/jconsole,\
JARMAIN:=sun.tools.jconsole.JConsole,\ JARMAIN:=sun.tools.jconsole.JConsole,\
JAR:=$(JDK_OUTPUTDIR)/lib/jconsole.jar,\ JAR:=$(JDK_OUTPUTDIR)/lib/jconsole.jar,\
...@@ -242,12 +246,35 @@ RT_JAR_EXCLUDES := \ ...@@ -242,12 +246,35 @@ RT_JAR_EXCLUDES := \
sun/swing/BeanInfoUtils.class \ sun/swing/BeanInfoUtils.class \
$(LOCALEDATA_INCLUDES) $(LOCALEDATA_INCLUDES)
ifndef OPENJDK # These files should never be put into rt.jar
ifndef JAVASE_EMBEDDED # but due to a misstake...some are put there if embedded
#
ifneq ($(JAVASE_EMBEDDED), true)
# normal (correct) case
RT_JAR_EXCLUDES += \ RT_JAR_EXCLUDES += \
com/oracle/jrockit/jfr \ com/oracle/jrockit/jfr \
oracle/jrockit/jfr oracle/jrockit/jfr
else
# embedded (broken) case
RT_JAR_EXCLUDES += \
oracle/jrockit/jfr/parser \
oracle/jrockit/jfr/tools \
oracle/jrockit/jfr/NativeOptions.class \
oracle/jrockit/jfr/RepositoryChunkHandler.class
endif endif
ifeq ($(OPENJDK_TARGET_OS), macosx)
RT_JAR_EXCLUDES += com/sun/nio/sctp \
sun/nio/ch/sctp \
sun/jdbc \
sun/nio/ch/DevPollArrayWrapper\$$$$Updator.class \
sun/nio/ch/DevPollArrayWrapper.class \
sun/nio/ch/DevPollSelectorImpl.class \
sun/nio/ch/DevPollSelectorProvider.class \
sun/nio/ch/EPollArrayWrapper\$$$$Updator.class \
sun/nio/ch/EPollArrayWrapper.class \
sun/nio/ch/EPollSelectorImpl.class \
sun/nio/ch/EPollSelectorProvider.class
endif endif
# Find all files in the classes dir to use as dependencies. This could be more fine granular. # Find all files in the classes dir to use as dependencies. This could be more fine granular.
...@@ -271,12 +298,19 @@ $(RESOURCE_JAR_MANIFEST_FILE): $(MAINMANIFEST) ...@@ -271,12 +298,19 @@ $(RESOURCE_JAR_MANIFEST_FILE): $(MAINMANIFEST)
-e "s#@@COMPANY_NAME@@#$(COMPANY_NAME)#" \ -e "s#@@COMPANY_NAME@@#$(COMPANY_NAME)#" \
$(MAINMANIFEST) >> $@ $(MAINMANIFEST) >> $@
$(JDK_OUTPUTDIR)/lib/_the.jars.exclude: $(JDK_OUTPUTDIR)/lib/_the.jars.exclude: $(MAKEFILE)
$(MKDIR) -p $(@D) $(MKDIR) -p $(@D)
$(call ListPathsSafely,RT_JAR_EXCLUDES,\n, >> $@) $(call ListPathsSafely,RT_JAR_EXCLUDES,\n, >> $@)
$(JDK_OUTPUTDIR)/lib/classlist : $(JDK_TOPDIR)/make/tools/sharing/classlist.$(OPENJDK_TARGET_OS) \
$(MAKEFILE)
$(MKDIR) -p $(@D)
$(RM) -f $@.temp
$(TOOL_ADDJSUM) $< $@.temp
$(MV) $@.temp $@
$(JDK_OUTPUTDIR)/lib/_the.jars.contents: $(BUILD_TOOLS) $(JDK_OUTPUTDIR)/lib/_the.jars.exclude \ $(JDK_OUTPUTDIR)/lib/_the.jars.contents: $(BUILD_TOOLS) $(JDK_OUTPUTDIR)/lib/_the.jars.exclude \
$(ALL_FILES_IN_CLASSES) $(ALL_FILES_IN_CLASSES) $(JDK_OUTPUTDIR)/lib/classlist
$(MKDIR) -p $(@D) $(MKDIR) -p $(@D)
$(RM) $@.temp $(RM) $@.temp
($(CD) $(JDK_OUTPUTDIR)/classes && \ ($(CD) $(JDK_OUTPUTDIR)/classes && \
...@@ -290,17 +324,22 @@ $(JDK_OUTPUTDIR)/lib/_the.rt.jar.contents: $(JDK_OUTPUTDIR)/lib/_the.jars.conten ...@@ -290,17 +324,22 @@ $(JDK_OUTPUTDIR)/lib/_the.rt.jar.contents: $(JDK_OUTPUTDIR)/lib/_the.jars.conten
$(JDK_OUTPUTDIR)/lib/_the.resources.jar.contents: $(JDK_OUTPUTDIR)/lib/_the.jars.contents $(JDK_OUTPUTDIR)/lib/_the.resources.jar.contents: $(JDK_OUTPUTDIR)/lib/_the.jars.contents
$(GREP) -v -e '\.class$$' -e '/_the\.*' -e '^_the\.*' $(JDK_OUTPUTDIR)/lib/_the.jars.contents > $@ $(GREP) -v -e '\.class$$' -e '/_the\.*' -e '^_the\.*' $(JDK_OUTPUTDIR)/lib/_the.jars.contents > $@
RT_JAR_CREATE_OPTIONS := c0fm
ifeq ($(COMPRESS_JARS), true)
RT_JAR_CREATE_OPTIONS := cfm
endif
$(JDK_OUTPUTDIR)/lib/rt.jar: $(JDK_OUTPUTDIR)/lib/_the.rt.jar.contents $(RT_JAR_MANIFEST_FILE) $(JDK_OUTPUTDIR)/lib/rt.jar: $(JDK_OUTPUTDIR)/lib/_the.rt.jar.contents $(RT_JAR_MANIFEST_FILE)
$(ECHO) Creating rt.jar $(ECHO) Creating rt.jar
$(CD) $(JDK_OUTPUTDIR)/classes && \ $(CD) $(JDK_OUTPUTDIR)/classes && \
$(JAR) cfm $@ $(RT_JAR_MANIFEST_FILE) \ $(JAR) $(RT_JAR_CREATE_OPTIONS) $@ $(RT_JAR_MANIFEST_FILE) \
@$(JDK_OUTPUTDIR)/lib/_the.rt.jar.contents @$(JDK_OUTPUTDIR)/lib/_the.rt.jar.contents
$(JDK_OUTPUTDIR)/lib/resources.jar: $(JDK_OUTPUTDIR)/lib/_the.resources.jar.contents \ $(JDK_OUTPUTDIR)/lib/resources.jar: $(JDK_OUTPUTDIR)/lib/_the.resources.jar.contents \
$(RESOURCE_JAR_MANIFEST_FILE) $(RESOURCE_JAR_MANIFEST_FILE)
$(ECHO) Creating resources.jar $(ECHO) Creating resources.jar
$(CD) $(JDK_OUTPUTDIR)/classes && \ $(CD) $(JDK_OUTPUTDIR)/classes && \
$(JAR) cfm $@ $(RESOURCE_JAR_MANIFEST_FILE) \ $(JAR) $(RT_JAR_CREATE_OPTIONS) $@ $(RESOURCE_JAR_MANIFEST_FILE) \
@$(JDK_OUTPUTDIR)/lib/_the.resources.jar.contents @$(JDK_OUTPUTDIR)/lib/_the.resources.jar.contents
JARS+=$(JDK_OUTPUTDIR)/lib/rt.jar $(JDK_OUTPUTDIR)/lib/resources.jar JARS+=$(JDK_OUTPUTDIR)/lib/rt.jar $(JDK_OUTPUTDIR)/lib/resources.jar
...@@ -309,7 +348,7 @@ JARS+=$(JDK_OUTPUTDIR)/lib/rt.jar $(JDK_OUTPUTDIR)/lib/resources.jar ...@@ -309,7 +348,7 @@ JARS+=$(JDK_OUTPUTDIR)/lib/rt.jar $(JDK_OUTPUTDIR)/lib/resources.jar
CHARSETS_JAR_DEPS := CHARSETS_JAR_DEPS :=
ifneq ($(HOST_OS), windows) ifneq ($(OPENJDK_TARGET_OS), windows)
CHARSETS_EXTRA_FILES:=sun/awt/motif/X11GBK.class \ CHARSETS_EXTRA_FILES:=sun/awt/motif/X11GBK.class \
sun/awt/motif/X11GB2312\$$$$Decoder.class \ sun/awt/motif/X11GB2312\$$$$Decoder.class \
sun/awt/motif/X11GB2312.class \ sun/awt/motif/X11GB2312.class \
...@@ -328,20 +367,22 @@ $(eval $(call SetupArchive,BUILD_CHARSETS_JAR,$(CHARSETS_JAR_DEPS),\ ...@@ -328,20 +367,22 @@ $(eval $(call SetupArchive,BUILD_CHARSETS_JAR,$(CHARSETS_JAR_DEPS),\
$(CHARSETS_EXTRA_FILES) \ $(CHARSETS_EXTRA_FILES) \
META-INF/services/java.nio.charset.spi.CharsetProvider, \ META-INF/services/java.nio.charset.spi.CharsetProvider, \
JAR:=$(JDK_OUTPUTDIR)/lib/charsets.jar, \ JAR:=$(JDK_OUTPUTDIR)/lib/charsets.jar, \
SKIP_METAINF := true)) SKIP_METAINF := true, \
CHECK_COMPRESS_JAR:=true))
JARS+=$(JDK_OUTPUTDIR)/lib/charsets.jar JARS+=$(JDK_OUTPUTDIR)/lib/charsets.jar
########################################################################################## ##########################################################################################
ifndef OPENJDK ifeq ($(ENABLE_JFR), true)
$(eval $(call SetupArchive,BUILD_JFR_JAR,,\ $(eval $(call SetupArchive,BUILD_JFR_JAR,,\
SRCS:=$(JDK_OUTPUTDIR)/classes,\ SRCS:=$(JDK_OUTPUTDIR)/classes,\
INCLUDES:=com/oracle/jrockit/jfr \ INCLUDES:=com/oracle/jrockit/jfr \
oracle/jrockit/jfr,\ oracle/jrockit/jfr,\
JAR:=$(JDK_OUTPUTDIR)/lib/jfr.jar,\ JAR:=$(JDK_OUTPUTDIR)/lib/jfr.jar,\
SKIP_METAINF:=true,\ SKIP_METAINF:=true,\
MANIFEST:=$(MAINMANIFEST))) MANIFEST:=$(MAINMANIFEST), \
CHECK_COMPRESS_JAR:=true))
JARS+=$(JDK_OUTPUTDIR)/lib/jfr.jar JARS+=$(JDK_OUTPUTDIR)/lib/jfr.jar
endif endif
...@@ -356,13 +397,14 @@ $(eval $(call SetupArchive,BUILD_JSSE_JAR,,\ ...@@ -356,13 +397,14 @@ $(eval $(call SetupArchive,BUILD_JSSE_JAR,,\
com/sun/net/ssl/internal/ssl,\ com/sun/net/ssl/internal/ssl,\
JAR:=$(JDK_OUTPUTDIR)/lib/jsse.jar,\ JAR:=$(JDK_OUTPUTDIR)/lib/jsse.jar,\
SKIP_METAINF:=true,\ SKIP_METAINF:=true,\
MANIFEST:=$(MAINMANIFEST))) MANIFEST:=$(MAINMANIFEST), \
CHECK_COMPRESS_JAR:=true))
JARS+=$(JDK_OUTPUTDIR)/lib/jsse.jar JARS+=$(JDK_OUTPUTDIR)/lib/jsse.jar
########################################################################################## ##########################################################################################
ifneq ($(PLATFORM)-$(ARCH_DATA_MODEL),windows-64) ifneq ($(OPENJDK_TARGET_OS)-$(ARCH_DATA_MODEL),windows-64)
SUNPKCS11_JAR_DST := $(JDK_OUTPUTDIR)/lib/ext/sunpkcs11.jar SUNPKCS11_JAR_DST := $(JDK_OUTPUTDIR)/lib/ext/sunpkcs11.jar
ifndef OPENJDK ifndef OPENJDK
...@@ -544,7 +586,7 @@ endif ...@@ -544,7 +586,7 @@ endif
########################################################################################## ##########################################################################################
ifeq ($(PLATFORM),windows) ifeq ($(OPENJDK_TARGET_OS),windows)
SUNMSCAPI_JAR_DST := $(JDK_OUTPUTDIR)/lib/ext/sunmscapi.jar SUNMSCAPI_JAR_DST := $(JDK_OUTPUTDIR)/lib/ext/sunmscapi.jar
...@@ -574,7 +616,7 @@ endif ...@@ -574,7 +616,7 @@ endif
########################################################################################## ##########################################################################################
ifeq ($(PLATFORM),solaris) ifeq ($(OPENJDK_TARGET_OS),solaris)
ifndef OPENJDK ifndef OPENJDK
UCRYPTO_JAR_DST := $(JDK_OUTPUTDIR)/lib/ext/ucrypto.jar UCRYPTO_JAR_DST := $(JDK_OUTPUTDIR)/lib/ext/ucrypto.jar
...@@ -661,7 +703,8 @@ $(eval $(call SetupArchive,BUILD_TOOLS_JAR,$(TOOLS_JAR_DEPS),\ ...@@ -661,7 +703,8 @@ $(eval $(call SetupArchive,BUILD_TOOLS_JAR,$(TOOLS_JAR_DEPS),\
META-INF/services/com.sun.tools.internal.ws.wscompile.Plugin \ META-INF/services/com.sun.tools.internal.ws.wscompile.Plugin \
META-INF/services/com.sun.tools.internal.xjc.Plugin,\ META-INF/services/com.sun.tools.internal.xjc.Plugin,\
JAR:=$(JDK_OUTPUTDIR)/lib/tools.jar,\ JAR:=$(JDK_OUTPUTDIR)/lib/tools.jar,\
SKIP_METAINF:=true)) SKIP_METAINF:=true, \
CHECK_COMPRESS_JAR:=true))
JARS+=$(JDK_OUTPUTDIR)/lib/tools.jar JARS+=$(JDK_OUTPUTDIR)/lib/tools.jar
...@@ -696,6 +739,7 @@ EXPORTED_PRIVATE_PKGS = com.sun.servicetag \ ...@@ -696,6 +739,7 @@ EXPORTED_PRIVATE_PKGS = com.sun.servicetag \
com.oracle.nio com.oracle.nio
$(IMAGES_OUTPUTDIR)/symbols/_the.symbols: $(JDK_OUTPUTDIR)/lib/rt.jar $(IMAGES_OUTPUTDIR)/symbols/_the.symbols: $(JDK_OUTPUTDIR)/lib/rt.jar
$(RM) -rf $(IMAGES_OUTPUTDIR)/symbols/META-INF/sym
$(MKDIR) -p $(IMAGES_OUTPUTDIR)/symbols/META-INF/sym $(MKDIR) -p $(IMAGES_OUTPUTDIR)/symbols/META-INF/sym
$(JAVA) \ $(JAVA) \
-Xbootclasspath/a:$(JDK_OUTPUTDIR)/classes \ -Xbootclasspath/a:$(JDK_OUTPUTDIR)/classes \
...@@ -711,7 +755,8 @@ MAKE_SURE_DIR_EXISTS_DUMMY := $(shell $(MKDIR) -p $(IMAGES_OUTPUTDIR)/symbols) ...@@ -711,7 +755,8 @@ MAKE_SURE_DIR_EXISTS_DUMMY := $(shell $(MKDIR) -p $(IMAGES_OUTPUTDIR)/symbols)
$(eval $(call SetupArchive,BUILD_CT_SYM,$(IMAGES_OUTPUTDIR)/symbols/_the.symbols,\ $(eval $(call SetupArchive,BUILD_CT_SYM,$(IMAGES_OUTPUTDIR)/symbols/_the.symbols,\
SRCS:=$(IMAGES_OUTPUTDIR)/symbols,\ SRCS:=$(IMAGES_OUTPUTDIR)/symbols,\
INCLUDES:=META-INF/sym,\ INCLUDES:=META-INF/sym,\
JAR:=$(JDK_OUTPUTDIR)/lib/ct.sym)) JAR:=$(JDK_OUTPUTDIR)/lib/ct.sym, \
CHECK_COMPRESS_JAR:=true))
JARS+=$(JDK_OUTPUTDIR)/lib/ct.sym JARS+=$(JDK_OUTPUTDIR)/lib/ct.sym
...@@ -765,7 +810,7 @@ SRC_ZIP_INCLUDES = \ ...@@ -765,7 +810,7 @@ SRC_ZIP_INCLUDES = \
org/xml/sax \ org/xml/sax \
sunw sunw
SRC_ZIP_SRCS = $(JDK_TOPDIR)/src/share/classes $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/classes SRC_ZIP_SRCS = $(JDK_TOPDIR)/src/share/classes $(JDK_TOPDIR)/src/$(LEGACY_OPENJDK_TARGET_OS_API)/classes
SRC_ZIP_SRCS += $(JDK_OUTPUTDIR)/gensrc SRC_ZIP_SRCS += $(JDK_OUTPUTDIR)/gensrc
SRC_ZIP_SRCS += $(JDK_OUTPUTDIR)/impsrc SRC_ZIP_SRCS += $(JDK_OUTPUTDIR)/impsrc
SRC_ZIP_SRCS += $(JDK_OUTPUTDIR)/gendocsrc_rmic SRC_ZIP_SRCS += $(JDK_OUTPUTDIR)/gendocsrc_rmic
...@@ -776,16 +821,16 @@ endif ...@@ -776,16 +821,16 @@ endif
# Need to copy launcher src files into desired directory structure # Need to copy launcher src files into desired directory structure
# before zipping the sources. # before zipping the sources.
LAUNCHER_SRC_FILES := $(wildcard $(JDK_TOPDIR)/src/share/bin/*) \ LAUNCHER_SRC_FILES := $(wildcard $(JDK_TOPDIR)/src/share/bin/*) \
$(wildcard $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/bin/java_md*) $(wildcard $(JDK_TOPDIR)/src/$(LEGACY_OPENJDK_TARGET_OS_API)/bin/java_md*)
LAUNCHER_ZIP_SRC := $(patsubst $(JDK_TOPDIR)/src/share/bin/%,$(IMAGES_OUTPUTDIR)/src/launcher/%,\ LAUNCHER_ZIP_SRC := $(patsubst $(JDK_TOPDIR)/src/share/bin/%,$(IMAGES_OUTPUTDIR)/src/launcher/%,\
$(patsubst $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/bin/%,$(IMAGES_OUTPUTDIR)/src/launcher/%,\ $(patsubst $(JDK_TOPDIR)/src/$(LEGACY_OPENJDK_TARGET_OS_API)/bin/%,$(IMAGES_OUTPUTDIR)/src/launcher/%,\
$(LAUNCHER_SRC_FILES))) $(LAUNCHER_SRC_FILES)))
$(IMAGES_OUTPUTDIR)/src/launcher/%: $(JDK_TOPDIR)/src/share/bin/% $(IMAGES_OUTPUTDIR)/src/launcher/%: $(JDK_TOPDIR)/src/share/bin/%
$(MKDIR) -p $(@D) $(MKDIR) -p $(@D)
$(CP) $< $@ $(CP) $< $@
$(IMAGES_OUTPUTDIR)/src/launcher/%: $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/bin/% $(IMAGES_OUTPUTDIR)/src/launcher/%: $(JDK_TOPDIR)/src/$(LEGACY_OPENJDK_TARGET_OS_API)/bin/%
$(MKDIR) -p $(@D) $(MKDIR) -p $(@D)
$(CP) $< $@ $(CP) $< $@
......
...@@ -35,10 +35,10 @@ ...@@ -35,10 +35,10 @@
# #
TEXT_SRCDIR = $(JDK_TOPDIR)/src/share/classes TEXT_SRCDIR = $(JDK_TOPDIR)/src/share/classes
TEXT_PKG = sun/text/resources TEXT_PKG = sun/text/resources
TEXT_SOURCES = %$(TEXT_PKG)/BreakIteratorRules.java \ TEXT_SOURCES = $(TEXT_PKG)/BreakIteratorRules.java \
%$(TEXT_PKG)/BreakIteratorInfo.java \ $(TEXT_PKG)/BreakIteratorInfo.java \
%$(TEXT_PKG)/BreakIteratorRules_th.java \ $(TEXT_PKG)/BreakIteratorRules_th.java \
%$(TEXT_PKG)/BreakIteratorInfo_th.java $(TEXT_PKG)/BreakIteratorInfo_th.java
# Generate BreakIteratorData # Generate BreakIteratorData
BREAK_ITERATOR_DIR = $(JDK_OUTPUTDIR)/break_iterator BREAK_ITERATOR_DIR = $(JDK_OUTPUTDIR)/break_iterator
......
...@@ -25,13 +25,13 @@ ...@@ -25,13 +25,13 @@
GENDATA_FONT_CONFIG_DST := $(JDK_OUTPUTDIR)/lib GENDATA_FONT_CONFIG_DST := $(JDK_OUTPUTDIR)/lib
ifeq ($(PLATFORM), windows) ifeq ($(OPENJDK_TARGET_OS), windows)
GENDATA_FONT_CONFIG_SRC_DIR := $(JDK_TOPDIR)/src/windows/classes/sun/awt/windows GENDATA_FONT_CONFIG_SRC_DIR := $(JDK_TOPDIR)/src/windows/classes/sun/awt/windows
GENDATA_FONT_CONFIG_SRC_FILES := fontconfig.properties GENDATA_FONT_CONFIG_SRC_FILES := fontconfig.properties
GENDATA_FONT_CONFIG_SRC_PREFIX := GENDATA_FONT_CONFIG_SRC_PREFIX :=
endif endif
ifeq ($(PLATFORM), linux) ifeq ($(OPENJDK_TARGET_OS), linux)
GENDATA_FONT_CONFIG_SRC_PREFIX := linux. GENDATA_FONT_CONFIG_SRC_PREFIX := linux.
ifdef OPENJDK ifdef OPENJDK
GENDATA_FONT_CONFIG_SRC_DIR := $(JDK_TOPDIR)/src/solaris/classes/sun/awt/fontconfigs GENDATA_FONT_CONFIG_SRC_DIR := $(JDK_TOPDIR)/src/solaris/classes/sun/awt/fontconfigs
...@@ -52,27 +52,29 @@ GENDATA_FONT_CONFIG_SRC_FILES := \ ...@@ -52,27 +52,29 @@ GENDATA_FONT_CONFIG_SRC_FILES := \
endif endif
endif endif
ifeq ($(PLATFORM), solaris) ifeq ($(OPENJDK_TARGET_OS), solaris)
GENDATA_FONT_CONFIG_SRC_DIR := $(JDK_TOPDIR)/src/solaris/classes/sun/awt/fontconfigs GENDATA_FONT_CONFIG_SRC_DIR := $(JDK_TOPDIR)/src/solaris/classes/sun/awt/fontconfigs
GENDATA_FONT_CONFIG_SRC_FILES := fontconfig.properties GENDATA_FONT_CONFIG_SRC_FILES := fontconfig.properties
GENDATA_FONT_CONFIG_SRC_PREFIX := solaris. GENDATA_FONT_CONFIG_SRC_PREFIX := solaris.
endif endif
ifeq ($(PLATFORM), macosx) ifeq ($(OPENJDK_TARGET_OS), macosx)
GENDATA_FONT_CONFIG_SRC_DIR := $(JDK_TOPDIR)/src/macosx/classes/sun/awt/fontconfigs GENDATA_FONT_CONFIG_SRC_DIR := $(JDK_TOPDIR)/src/macosx/classes/sun/awt/fontconfigs
GENDATA_FONT_CONFIG_SRC_FILES := fontconfig.properties GENDATA_FONT_CONFIG_SRC_FILES := fontconfig.properties
GENDATA_FONT_CONFIG_SRC_PREFIX := macosx. GENDATA_FONT_CONFIG_SRC_PREFIX := macosx.
endif # PLATFORM endif # OPENJDK_TARGET_OS
### ###
$(GENDATA_FONT_CONFIG_DST)/%.src : $(GENDATA_FONT_CONFIG_SRC_DIR)/$(GENDATA_FONT_CONFIG_SRC_PREFIX)% $(GENDATA_FONT_CONFIG_DST)/%.src : $(GENDATA_FONT_CONFIG_SRC_DIR)/$(GENDATA_FONT_CONFIG_SRC_PREFIX)%
$(MKDIR) -p $(@D) $(MKDIR) -p $(@D)
$(CP) $< $@ $(CP) $< $@
$(CHMOD) 644 $@
$(GENDATA_FONT_CONFIG_DST)/%.bfc : $(GENDATA_FONT_CONFIG_SRC_DIR)/$(GENDATA_FONT_CONFIG_SRC_PREFIX)%.properties $(GENDATA_FONT_CONFIG_DST)/%.bfc : $(GENDATA_FONT_CONFIG_SRC_DIR)/$(GENDATA_FONT_CONFIG_SRC_PREFIX)%.properties
$(MKDIR) -p $(@D) $(MKDIR) -p $(@D)
$(TOOL_COMPILEFONTCONFIG) $< $@ $(TOOL_COMPILEFONTCONFIG) $< $@
$(CHMOD) 444 $@
### ###
......
...@@ -32,5 +32,4 @@ $(HTML32DTD): $(BUILD_TOOLS) ...@@ -32,5 +32,4 @@ $(HTML32DTD): $(BUILD_TOOLS)
$(RM) $@ $(RM) $@
($(TOOL_DTDBUILDER) html32 > $@) || exit 1 ($(TOOL_DTDBUILDER) html32 > $@) || exit 1
GENDATA_HTML32DTD += $(HTML32DTD) GENDATA_HTML32DTD += $(HTML32DTD)
\ No newline at end of file
...@@ -27,7 +27,13 @@ default: all ...@@ -27,7 +27,13 @@ default: all
include $(SPEC) include $(SPEC)
include MakeBase.gmk include MakeBase.gmk
include RMICompile.gmk include RMICompilation.gmk
# To ensure the latest stub generator files are picked up from corba repo
# when available, we need to run with latest rmic version available.
ifeq ($(CROSS_COMPILE_ARCH),)
RMIC := $(UNCYGDRIVE) $(JDK_OUTPUTDIR)/bin/rmic
endif
CLASSES_DIR := $(JDK_OUTPUTDIR)/classes CLASSES_DIR := $(JDK_OUTPUTDIR)/classes
# NOTE: If the smart javac dependency management is reintroduced, these classes risk # NOTE: If the smart javac dependency management is reintroduced, these classes risk
......
...@@ -69,6 +69,7 @@ $(GENDATA_CURDATA): $(JDK_TOPDIR)/src/share/classes/java/util/CurrencyData.prope ...@@ -69,6 +69,7 @@ $(GENDATA_CURDATA): $(JDK_TOPDIR)/src/share/classes/java/util/CurrencyData.prope
$(RM) $@ $(RM) $@
$(TOOL_GENERATECURRENCYDATA) -o $@.temp < $< $(TOOL_GENERATECURRENCYDATA) -o $@.temp < $<
$(MV) $@.temp $@ $(MV) $@.temp $@
$(CHMOD) 444 $@
GENDATA += $(GENDATA_CURDATA) GENDATA += $(GENDATA_CURDATA)
......
...@@ -65,7 +65,7 @@ GENSRC += $(GENSRC_BUFFER) ...@@ -65,7 +65,7 @@ GENSRC += $(GENSRC_BUFFER)
include GensrcExceptions.gmk include GensrcExceptions.gmk
GENSRC += $(GENSRC_EXCEPTIONS) GENSRC += $(GENSRC_EXCEPTIONS)
ifneq ($(HOST_OS),windows) ifneq ($(OPENJDK_TARGET_OS),windows)
include GensrcIcons.gmk include GensrcIcons.gmk
GENSRC += $(GENSRC_ICONS) GENSRC += $(GENSRC_ICONS)
...@@ -78,6 +78,11 @@ ifndef DISABLE_NIMBUS ...@@ -78,6 +78,11 @@ ifndef DISABLE_NIMBUS
GENSRC += $(GENSRC_SWING_NIMBUS) GENSRC += $(GENSRC_SWING_NIMBUS)
endif endif
ifeq ($(OPENJDK_TARGET_OS), macosx)
include GensrcJObjC.gmk
GENSRC += $(GENSRC_JOBJC)
endif
$(GENSRC) : $(BUILD_TOOLS) $(GENSRC) : $(BUILD_TOOLS)
# The exception handling of swing beaninfo # The exception handling of swing beaninfo
...@@ -100,7 +105,10 @@ all: $(GENSRC) $(GENSRC_SWING_BEANINFO) ...@@ -100,7 +105,10 @@ all: $(GENSRC) $(GENSRC_SWING_BEANINFO)
$(MKDIR) -p gensrc/javax/swing/plaf && \ $(MKDIR) -p gensrc/javax/swing/plaf && \
$(CP) -rp gensrc_swing/javax/swing/plaf/* gensrc/javax/swing/plaf) \ $(CP) -rp gensrc_swing/javax/swing/plaf/* gensrc/javax/swing/plaf) \
fi fi
ifneq ($(HOST_OS),windows) if [ -d $(JDK_OUTPUTDIR)/gensrc_jobjc ] ; then \
(cd $(JDK_OUTPUTDIR) && cp -rp gensrc_jobjc/src/* gensrc) \
fi
ifneq ($(OPENJDK_TARGET_OS),windows)
(cd $(JDK_OUTPUTDIR) && \ (cd $(JDK_OUTPUTDIR) && \
$(CP) -rp gensrc_icons/* gensrc && \ $(CP) -rp gensrc_icons/* gensrc && \
$(CP) -rp gensrc_x11wrappers/classes/* gensrc) $(CP) -rp gensrc_x11wrappers/classes/* gensrc)
......
...@@ -198,6 +198,7 @@ define SetupGenBuffer ...@@ -198,6 +198,7 @@ define SetupGenBuffer
$(if $(12),$1_$(strip $(12))) $(if $(12),$1_$(strip $(12)))
$(if $(13),$1_$(strip $(13))) $(if $(13),$1_$(strip $(13)))
$(if $(14),$1_$(strip $(14))) $(if $(14),$1_$(strip $(14)))
$(if $(15),$(error Internal makefile error: Too many arguments to SetupGenBuffer, please update GensrcBuffer.gmk))
$(call fixRw,$1,$$($1_RW)) $(call fixRw,$1,$$($1_RW))
$(call typesAndBits,$1,$$($1_type),$$($1_BO)) $(call typesAndBits,$1,$$($1_type),$$($1_BO))
......
...@@ -29,7 +29,7 @@ GENSRC_ICONS_TMP := $(JDK_OUTPUTDIR)/gensrc_icons ...@@ -29,7 +29,7 @@ GENSRC_ICONS_TMP := $(JDK_OUTPUTDIR)/gensrc_icons
GENSRC_ICONS_DST := $(GENSRC_ICONS_TMP)/sun/awt/X11 GENSRC_ICONS_DST := $(GENSRC_ICONS_TMP)/sun/awt/X11
ifdef OPENJDK ifdef OPENJDK
ICONS_PATH_PREFIX := $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API) ICONS_PATH_PREFIX := $(JDK_TOPDIR)/src/$(LEGACY_OPENJDK_TARGET_OS_API)
else else
ICONS_PATH_PREFIX := $(JDK_TOPDIR)/src/closed/solaris ICONS_PATH_PREFIX := $(JDK_TOPDIR)/src/closed/solaris
endif endif
...@@ -41,7 +41,7 @@ GENSRC_ICONS_SRC += \ ...@@ -41,7 +41,7 @@ GENSRC_ICONS_SRC += \
$(ICONS_PATH_PREFIX)/classes/sun/awt/X11/java-icon48.png $(ICONS_PATH_PREFIX)/classes/sun/awt/X11/java-icon48.png
ICONPATH := $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/classes/sun/awt/X11 ICONPATH := $(JDK_TOPDIR)/src/$(LEGACY_OPENJDK_TARGET_OS_API)/classes/sun/awt/X11
GENSRC_ICONS_SRC += \ GENSRC_ICONS_SRC += \
$(ICONPATH)/security-icon-bw16.png \ $(ICONPATH)/security-icon-bw16.png \
...@@ -86,7 +86,7 @@ $$($1_TARGET32) : $2/$1 $(GENSRC_ICONS_TMP)/_the.dir ...@@ -86,7 +86,7 @@ $$($1_TARGET32) : $2/$1 $(GENSRC_ICONS_TMP)/_the.dir
$(ECHO) "public class $$($1_NAME32) {" >> $$@.tmp $(ECHO) "public class $$($1_NAME32) {" >> $$@.tmp
$(ECHO) "public static int[] $$($1_SHORTNAME) = { " >> $$@.tmp $(ECHO) "public static int[] $$($1_SHORTNAME) = { " >> $$@.tmp
# TODO FIX FIX FIX # TODO FIX FIX FIX
ifneq ($(PLATFORM),macosx) ifneq ($(OPENJDK_TARGET_OS),macosx)
$(CAT) $$< | $(TOOL_TOBIN) >> $$@.tmp $(CAT) $$< | $(TOOL_TOBIN) >> $$@.tmp
endif endif
$(ECHO) "}; }" >> $$@.tmp $(ECHO) "}; }" >> $$@.tmp
...@@ -100,7 +100,7 @@ $$($1_TARGET64) : $2/$1 $(GENSRC_ICONS_TMP)/_the.dir ...@@ -100,7 +100,7 @@ $$($1_TARGET64) : $2/$1 $(GENSRC_ICONS_TMP)/_the.dir
$(ECHO) "public class $$($1_NAME64) {" >> $$@.tmp $(ECHO) "public class $$($1_NAME64) {" >> $$@.tmp
$(ECHO) "public static long[] $$($1_SHORTNAME) = { " >> $$@.tmp $(ECHO) "public static long[] $$($1_SHORTNAME) = { " >> $$@.tmp
# TODO FIX FIX FIX # TODO FIX FIX FIX
ifneq ($(PLATFORM),macosx) ifneq ($(OPENJDK_TARGET_OS),macosx)
$(CAT) $$< | $(TOOL_TOBIN) >> $$@.tmp $(CAT) $$< | $(TOOL_TOBIN) >> $$@.tmp
endif endif
$(ECHO) "}; }" >> $$@.tmp $(ECHO) "}; }" >> $$@.tmp
......
...@@ -23,20 +23,58 @@ ...@@ -23,20 +23,58 @@
# questions. # questions.
# #
include $(SPEC) GENSRC_JOBJC :=
include MakeBase.gmk
all: $(JDK_OUTPUTDIR)/_the.legacy_make JOBJC_FRAMEWORKS := Foundation CoreFoundation AppKit
FRAMEWORKS_DIR := /System/Library/Frameworks
GBM := /usr/bin/gen_bridge_metadata
DEPS:= $(shell $(FIND) $(JDK_TOPDIR)/makefiles/java -type f) \ JOBJC_SRC := $(JDK_TOPDIR)/src/macosx/native/jobjc
$(shell $(FIND) $(JDK_TOPDIR)/makefiles/javax -type f) \ JOBJC_TMP := $(JDK_OUTPUTDIR)/gensrc_jobjc
$(shell $(FIND) $(JDK_TOPDIR)/makefiles/sun -type f) \ JOBJC_DST := $(JDK_OUTPUTDIR)/gensrc_jobjc/src
$(shell $(FIND) $(JDK_TOPDIR)/makefiles/com -type f)
$(JDK_OUTPUTDIR)/_the.legacy_make: $(DEPS) #
(echo Building single threaded Java subdir && \ # Build generator
$(MAKE) -j1 -C java all && \ #
touch $@) $(eval $(call SetupJavaCompilation,BUILD_JOBJC_PRIMITIVE_CODER,\
SETUP:=GENERATE_OLDBYTECODE,\
INCLUDES:=core/java \
com/apple,\
HEADERS :=$(JOBJC_DST)/jni_headers/core ,\
SRC:=$(JOBJC_SRC)/src \
$(JOBJC_SRC)/src/generator/java, \
BIN:=$(JOBJC_TMP)/bin))
GENSRC_JOBJC += $(JOBJC_TMP)/bin/_the.batch
#
# Generate bridge support
#
BRIDGESUPPORT := $(addprefix $(JOBJC_TMP)/bridge/,$(addsuffix Full.bridgesupport,$(JOBJC_FRAMEWORKS)))
$(JOBJC_TMP)/bridge/%Full.bridgesupport : $(FRAMEWORKS_DIR)/%.framework/Headers/*.h
$(MKDIR) -p $(@D)
if [ -f $(FRAMEWORKS_DIR)/$*.framework/Resources/BridgeSupport/$(@F) ]; then \
cp $(FRAMEWORKS_DIR)/$*.framework/Resources/BridgeSupport/$(@F) $@ ;\
else \
$(GBM) -F complete --framework $* -o $@ ; \
fi
#
# Find Xbootclasspath
#
$(JOBJC_TMP)/_the.generator_bootclasspath : $(JOBJC_TMP)/bin/_the.batch
$(JAVA) -cp $(JOBJC_TMP)/bin com.apple.internal.jobjc.generator.BootClassPathMinus JObjC.jar > $@.tmp
$(MV) $@.tmp $@
#
# Run generator
#
TOOL_JOBJC := $(JAVA) -cp $(JOBJC_TMP)/bin -ea com.apple.internal.jobjc.generator.Generator
.PHONY: all $(JOBJC_TMP)/_the.generator : $(JOBJC_TMP)/bin/_the.batch $(JOBJC_TMP)/_the.generator_bootclasspath $(BRIDGESUPPORT)
$(JAVA) -d64 -Xbootclasspath:`$(CAT) $(JOBJC_TMP)/_the.generator_bootclasspath` -cp $(JOBJC_TMP)/bin -ea com.apple.internal.jobjc.generator.Generator dst=$(JOBJC_DST) frameworks=$(JOBJC_TMP)/bridge
$(TOUCH) $@
GENSRC_JOBJC += $(JOBJC_TMP)/_the.generator
...@@ -53,9 +53,9 @@ GENSRC_MISC += $(JDK_OUTPUTDIR)/gensrc_misc/sun/tools/jconsole/Version.java ...@@ -53,9 +53,9 @@ GENSRC_MISC += $(JDK_OUTPUTDIR)/gensrc_misc/sun/tools/jconsole/Version.java
########################################################################################## ##########################################################################################
ifeq ($(HOST_OS_API),posix) ifeq ($(OPENJDK_TARGET_OS_API),posix)
UPSUFFIX:=$(PLATFORM) UPSUFFIX:=$(OPENJDK_TARGET_OS)
ifeq ($(PLATFORM),macosx) ifeq ($(OPENJDK_TARGET_OS),macosx)
UPSUFFIX:=bsd UPSUFFIX:=bsd
endif endif
# UNIXProcess.java is different for solaris and linux. We need to copy # UNIXProcess.java is different for solaris and linux. We need to copy
...@@ -64,7 +64,7 @@ ifeq ($(HOST_OS_API),posix) ...@@ -64,7 +64,7 @@ ifeq ($(HOST_OS_API),posix)
$(JDK_OUTPUTDIR)/gensrc_misc/java/lang/UNIXProcess.java : \ $(JDK_OUTPUTDIR)/gensrc_misc/java/lang/UNIXProcess.java : \
$(JDK_TOPDIR)/src/solaris/classes/java/lang/UNIXProcess.java.$(UPSUFFIX) $(JDK_TOPDIR)/src/solaris/classes/java/lang/UNIXProcess.java.$(UPSUFFIX)
$(MKDIR) -p $(@D) $(MKDIR) -p $(@D)
$(ECHO) Copying UNIXProcess.java.$(PLATFORM) to java/lang/UNIXProcess.java $(ECHO) Copying UNIXProcess.java.$(OPENJDK_TARGET_OS) to java/lang/UNIXProcess.java
$(CP) $< $@ $(CP) $< $@
$(CHMOD) u+rw $@ $(CHMOD) u+rw $@
...@@ -74,8 +74,8 @@ endif ...@@ -74,8 +74,8 @@ endif
########################################################################################## ##########################################################################################
ifndef OPENJDK ifndef OPENJDK
ifneq ($(PLATFORM), windows) ifneq ($(OPENJDK_TARGET_OS), windows)
ifneq ($(PLATFORM), macosx) ifneq ($(OPENJDK_TARGET_OS), macosx)
# These file(s) are needed for building fake .so libs on !windows for jdbcodbc # These file(s) are needed for building fake .so libs on !windows for jdbcodbc
$(JDK_OUTPUTDIR)/gensrc_c/libjdbcodbc/dummyodbc1.c : $(JDK_OUTPUTDIR)/gensrc_c/libjdbcodbc/dummyodbc1.c :
...@@ -101,85 +101,98 @@ GENSRC_MISC += $(JDK_OUTPUTDIR)/gensrc_misc/sun/nio/ch/SocketOptionRegistry.java ...@@ -101,85 +101,98 @@ GENSRC_MISC += $(JDK_OUTPUTDIR)/gensrc_misc/sun/nio/ch/SocketOptionRegistry.java
GENSRC_SOR_SRC := $(JDK_TOPDIR)/src/share/native/sun/nio/ch GENSRC_SOR_SRC := $(JDK_TOPDIR)/src/share/native/sun/nio/ch
GENSRC_SOR_SRC_FILE := genSocketOptionRegistry.c GENSRC_SOR_SRC_FILE := genSocketOptionRegistry.c
GENSRC_SOR_BIN := $(JDK_OUTPUTDIR)/objs/gensrc/genSocketOptionRegistry GENSRC_SOR_BIN := $(JDK_OUTPUTDIR)/gensrc_misc/genSocketOptionRegistry
GENSRC_SOR_EXE := $(GENSRC_SOR_BIN)/genSocketOptionRegistry$(EXE_SUFFIX)
SOR_COPYRIGHT_YEARS = $(shell $(CAT) $(GENSRC_SOR_SRC)/$(GENSRC_SOR_SRC_FILE) | \ SOR_COPYRIGHT_YEARS = $(shell $(CAT) $(GENSRC_SOR_SRC)/$(GENSRC_SOR_SRC_FILE) | \
$(NAWK) '/^.*Copyright.*Oracle/ { printf "%s %s",$$4,$$5 }') $(NAWK) '/^.*Copyright.*Oracle/ { printf "%s %s",$$4,$$5 }')
$(JDK_OUTPUTDIR)/gensrc_misc/sun/nio/ch/SocketOptionRegistry.java : $(GENSRC_SOR_EXE)
$(MKDIR) -p $(@D)
NAWK="$(NAWK)" SH="$(SH)" $(SH) -e $(JDK_TOPDIR)/makefiles/scripts/addNotices.sh "$(SOR_COPYRIGHT_YEARS)" > $@.tmp
$(GENSRC_SOR_EXE) >> $@.tmp
$(MV) $@.tmp $@
$(eval $(call SetupNativeCompilation,BUILD_GENSRC_SOR_EXE,\ $(eval $(call SetupNativeCompilation,BUILD_GENSRC_SOR_EXE,\
SRC:=$(GENSRC_SOR_SRC),\ SRC:=$(GENSRC_SOR_SRC),\
INCLUDE_FILES:=$(GENSRC_SOR_SRC_FILE),\ INCLUDE_FILES:=$(GENSRC_SOR_SRC_FILE),\
LANG:=C,\ LANG:=C,\
CFLAGS:=$(CFLAGS_JDKLIB),\ CC:=$(HOST_CC),\
BIN:=$(GENSRC_SOR_BIN),\ LDEXE:=$(HOST_LD),\
EXE:=$(GENSRC_SOR_EXE))) OBJECT_DIR:=$(GENSRC_SOR_BIN),\
OUTPUT_DIR:=$(GENSRC_SOR_BIN),\
PROGRAM:=genSocketOptionRegistry))
ifneq ($(JAVASE_EMBEDDED), true)
$(JDK_OUTPUTDIR)/gensrc_misc/sun/nio/ch/SocketOptionRegistry.java : $(BUILD_GENSRC_SOR_EXE)
$(MKDIR) -p $(@D)
NAWK="$(NAWK)" SH="$(SH)" $(SH) -e $(JDK_TOPDIR)/makefiles/scripts/addNotices.sh "$(SOR_COPYRIGHT_YEARS)" > $@.tmp
$(BUILD_GENSRC_SOR_EXE) >> $@.tmp
$(MV) $@.tmp $@
else
$(JDK_OUTPUTDIR)/gensrc_misc/sun/nio/ch/SocketOptionRegistry.java : $(JDK_TOPDIR)/src/closed/solaris/classes/sun/nio/ch/SocketOptionRegistry-$(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU_ARCH).java
$(MKDIR) -p $(@D)
$(CP) $< $@
endif
########################################################################################## ##########################################################################################
ifneq ($(PLATFORM),windows) ifneq ($(OPENJDK_TARGET_OS),windows)
GENSRC_MISC += $(JDK_OUTPUTDIR)/gensrc_misc/sun/nio/fs/UnixConstants.java GENSRC_MISC += $(JDK_OUTPUTDIR)/gensrc_misc/sun/nio/fs/UnixConstants.java
GENSRC_UC_SRC := $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/nio/fs GENSRC_UC_SRC := $(JDK_TOPDIR)/src/$(LEGACY_OPENJDK_TARGET_OS_API)/native/sun/nio/fs
GENSRC_UC_SRC_FILE := genUnixConstants.c GENSRC_UC_SRC_FILE := genUnixConstants.c
GENSRC_UC_BIN := $(JDK_OUTPUTDIR)/objs/gensrc/genUnixConstants GENSRC_UC_BIN := $(JDK_OUTPUTDIR)/gensrc_misc/genUnixConstants
GENSRC_UC_EXE := $(GENSRC_UC_BIN)/genUnixConstants$(EXE_SUFFIX)
UC_COPYRIGHT_YEARS = $(shell $(CAT) $(GENSRC_UC_SRC)/$(GENSRC_UC_SRC_FILE) | \ UC_COPYRIGHT_YEARS = $(shell $(CAT) $(GENSRC_UC_SRC)/$(GENSRC_UC_SRC_FILE) | \
$(NAWK) '/^.*Copyright.*Oracle/ { printf "%s %s",$$4,$$5 }') $(NAWK) '/^.*Copyright.*Oracle/ { printf "%s %s",$$4,$$5 }')
$(JDK_OUTPUTDIR)/gensrc_misc/sun/nio/fs/UnixConstants.java : $(GENSRC_UC_EXE)
$(MKDIR) -p $(@D)
NAWK="$(NAWK)" SH="$(SH)" $(SH) -e $(JDK_TOPDIR)/makefiles/scripts/addNotices.sh "$(UC_COPYRIGHT_YEARS)" > $@.tmp
$(GENSRC_UC_EXE) >> $@.tmp
$(MV) $@.tmp $@
$(eval $(call SetupNativeCompilation,BUILD_GENSRC_UC_EXE,\ $(eval $(call SetupNativeCompilation,BUILD_GENSRC_UC_EXE,\
SRC:=$(GENSRC_UC_SRC),\ SRC:=$(GENSRC_UC_SRC),\
INCLUDE_FILES:=$(GENSRC_UC_SRC_FILE),\ INCLUDE_FILES:=$(GENSRC_UC_SRC_FILE),\
LANG:=C,\ LANG:=C,\
CFLAGS:=$(CFLAGS_JDKLIB),\ CC:=$(HOST_CC),\
BIN:=$(GENSRC_UC_BIN),\ LDEXE:=$(HOST_CC),\
EXE:=$(GENSRC_UC_EXE))) OBJECT_DIR:=$(GENSRC_UC_BIN),\
OUTPUT_DIR:=$(GENSRC_UC_BIN),\
PROGRAM:=genUnixConstants))
ifneq ($(JAVASE_EMBEDDED), true)
$(JDK_OUTPUTDIR)/gensrc_misc/sun/nio/fs/UnixConstants.java : $(BUILD_GENSRC_UC_EXE)
$(MKDIR) -p $(@D)
NAWK="$(NAWK)" SH="$(SH)" $(SH) -e $(JDK_TOPDIR)/makefiles/scripts/addNotices.sh "$(UC_COPYRIGHT_YEARS)" > $@.tmp
$(BUILD_GENSRC_UC_EXE) >> $@.tmp
$(MV) $@.tmp $@
else
$(JDK_OUTPUTDIR)/gensrc_misc/sun/nio/fs/UnixConstants.java : $(JDK_TOPDIR)/src/closed/solaris/classes/sun/nio/fs/UnixConstants-$(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU_ARCH).java
$(MKDIR) -p $(@D)
$(CP) $< $@
endif
endif endif
########################################################################################## ##########################################################################################
ifeq ($(PLATFORM),solaris) ifeq ($(OPENJDK_TARGET_OS),solaris)
GENSRC_MISC += $(JDK_OUTPUTDIR)/gensrc_misc/sun/nio/fs/SolarisConstants.java GENSRC_MISC += $(JDK_OUTPUTDIR)/gensrc_misc/sun/nio/fs/SolarisConstants.java
GENSRC_SOL_SRC := $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/nio/fs GENSRC_SOL_SRC := $(JDK_TOPDIR)/src/$(LEGACY_OPENJDK_TARGET_OS_API)/native/sun/nio/fs
GENSRC_SOL_SRC_FILE := genSolarisConstants.c GENSRC_SOL_SRC_FILE := genSolarisConstants.c
GENSRC_SOL_BIN := $(JDK_OUTPUTDIR)/objs/gensrc/genSolarisConstants GENSRC_SOL_BIN := $(JDK_OUTPUTDIR)/gensrc_misc/genSolarisConstants
GENSRC_SOL_EXE := $(GENSRC_SOL_BIN)/genSolarisConstants$(EXE_SUFFIX)
SOL_COPYRIGHT_YEARS = $(shell $(CAT) $(GENSRC_SOL_SRC)/$(GENSRC_SOL_SRC_FILE) | \ SOL_COPYRIGHT_YEARS = $(shell $(CAT) $(GENSRC_SOL_SRC)/$(GENSRC_SOL_SRC_FILE) | \
$(NAWK) '/^.*Copyright.*Oracle/ { printf "%s %s",$$4,$$5 }') $(NAWK) '/^.*Copyright.*Oracle/ { printf "%s %s",$$4,$$5 }')
$(JDK_OUTPUTDIR)/gensrc_misc/sun/nio/fs/SolarisConstants.java : $(GENSRC_SOL_EXE)
$(MKDIR) -p $(@D)
NAWK="$(NAWK)" SH="$(SH)" $(SH) -e $(JDK_TOPDIR)/makefiles/scripts/addNotices.sh "$(SOL_COPYRIGHT_YEARS)" > $@.tmp
$(GENSRC_SOL_EXE) >> $@.tmp
$(MV) $@.tmp $@
$(eval $(call SetupNativeCompilation,BUILD_GENSRC_SOL_EXE,\ $(eval $(call SetupNativeCompilation,BUILD_GENSRC_SOL_EXE,\
SRC:=$(GENSRC_SOL_SRC),\ SRC:=$(GENSRC_SOL_SRC),\
INCLUDE_FILES:=$(GENSRC_SOL_SRC_FILE),\ INCLUDE_FILES:=$(GENSRC_SOL_SRC_FILE),\
LANG:=C,\ LANG:=C,\
CFLAGS:=$(CFLAGS_JDKLIB),\ CC:=$(HOST_CC),\
BIN:=$(GENSRC_SOL_BIN),\ LDEXE:=$(HOST_CC),\
EXE:=$(GENSRC_SOL_EXE))) OBJECT_DIR:=$(GENSRC_SOL_BIN),\
OUTPUT_DIR:=$(GENSRC_SOL_BIN),\
PROGRAM:=genSolarisConstants))
$(JDK_OUTPUTDIR)/gensrc_misc/sun/nio/fs/SolarisConstants.java : $(BUILD_GENSRC_SOL_EXE)
$(MKDIR) -p $(@D)
NAWK="$(NAWK)" SH="$(SH)" $(SH) -e $(JDK_TOPDIR)/makefiles/scripts/addNotices.sh "$(SOL_COPYRIGHT_YEARS)" > $@.tmp
$(BUILD_GENSRC_SOL_EXE) >> $@.tmp
$(MV) $@.tmp $@
endif endif
...@@ -46,7 +46,7 @@ define add_properties_to_compile ...@@ -46,7 +46,7 @@ define add_properties_to_compile
# Strip away prefix and suffix, # Strip away prefix and suffix,
# leaving for example: sun/util/resources/CurrencyNames_sv # leaving for example: sun/util/resources/CurrencyNames_sv
$1_PROPPATHS:=$$(patsubst $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/classes/%.properties,%,\ $1_PROPPATHS:=$$(patsubst $(JDK_TOPDIR)/src/$(LEGACY_OPENJDK_TARGET_OS_API)/classes/%.properties,%,\
$$(patsubst $(JDK_TOPDIR)/src/share/classes/%.properties,%,$2)) $$(patsubst $(JDK_TOPDIR)/src/share/classes/%.properties,%,$2))
# Apply optional name transformation, example: hz_TW -> hz_HK # Apply optional name transformation, example: hz_TW -> hz_HK
...@@ -75,7 +75,7 @@ define add_properties_to_clean ...@@ -75,7 +75,7 @@ define add_properties_to_clean
# Strip away prefix and suffix, # Strip away prefix and suffix,
# leaving for example: sun/util/resources/CurrencyNames_sv # leaving for example: sun/util/resources/CurrencyNames_sv
$1_PROPPATHS:=$$(patsubst $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/classes/%.properties,%,\ $1_PROPPATHS:=$$(patsubst $(JDK_TOPDIR)/src/$(LEGACY_OPENJDK_TARGET_OS_API)/classes/%.properties,%,\
$$(patsubst $(JDK_TOPDIR)/src/share/classes/%.properties,%,$2)) $$(patsubst $(JDK_TOPDIR)/src/share/classes/%.properties,%,$2))
# Apply optional name transformation, example: hz_TW -> hz_HK # Apply optional name transformation, example: hz_TW -> hz_HK
...@@ -124,7 +124,7 @@ $(eval $(call add_properties_to_compile,COM_SUN_ACCESSIBILITY_HK,\ ...@@ -124,7 +124,7 @@ $(eval $(call add_properties_to_compile,COM_SUN_ACCESSIBILITY_HK,\
$(eval $(call add_properties_to_clean,COM_SUN_IMAGEIO,\ $(eval $(call add_properties_to_clean,COM_SUN_IMAGEIO,\
$(shell find $(JDK_TOPDIR)/src/share/classes/com/sun/imageio -name "*.properties"))) $(shell find $(JDK_TOPDIR)/src/share/classes/com/sun/imageio -name "*.properties")))
#com/sun/java/swing/plaf/gtk/resources #com/sun/java/swing/plaf/gtk/resources
ifneq ($(PLATFORM), windows) ifneq ($(OPENJDK_TARGET_OS), windows)
# Only compile GTK resource bundles on Solaris/Linux # Only compile GTK resource bundles on Solaris/Linux
$(eval $(call add_properties_to_compile,COM_SUN_SWING_PLAF_GTK,\ $(eval $(call add_properties_to_compile,COM_SUN_SWING_PLAF_GTK,\
$(shell find $(JDK_TOPDIR)/src/share/classes/com/sun/java/swing/plaf/gtk/resources -name "*.properties"),\ $(shell find $(JDK_TOPDIR)/src/share/classes/com/sun/java/swing/plaf/gtk/resources -name "*.properties"),\
...@@ -264,6 +264,10 @@ $(eval $(call add_properties_to_compile,SUN_TOOLS_JAR_HK,\ ...@@ -264,6 +264,10 @@ $(eval $(call add_properties_to_compile,SUN_TOOLS_JAR_HK,\
$(eval $(call add_properties_to_clean,SUN_TOOLS_SERIALVER,\ $(eval $(call add_properties_to_clean,SUN_TOOLS_SERIALVER,\
$(shell find $(JDK_TOPDIR)/src/share/classes/sun/tools/javac/resources -name "javac.properties"))) $(shell find $(JDK_TOPDIR)/src/share/classes/sun/tools/javac/resources -name "javac.properties")))
#sun/tools/jconsole/resources
$(eval $(call add_properties_to_clean,SUN_TOOLS_JCONSOLE,\
$(shell find $(JDK_TOPDIR)/src/share/classes/sun/tools/jconsole/resources -name "*.properties")))
#sun/tools/serialver #sun/tools/serialver
$(eval $(call add_properties_to_clean,SUN_TOOLS_SERIALVER,\ $(eval $(call add_properties_to_clean,SUN_TOOLS_SERIALVER,\
$(shell find $(JDK_TOPDIR)/src/share/classes/sun/tools/serialver -name "*.properties"),,,resources)) $(shell find $(JDK_TOPDIR)/src/share/classes/sun/tools/serialver -name "*.properties"),,,resources))
......
...@@ -30,10 +30,10 @@ GENSRC_SIZER_SRC := $(JDK_TOPDIR)/src/solaris/classes/sun/awt/X11/generator ...@@ -30,10 +30,10 @@ GENSRC_SIZER_SRC := $(JDK_TOPDIR)/src/solaris/classes/sun/awt/X11/generator
GENSRC_SIZES := GENSRC_SIZES :=
ifeq ($(PLATFORM)-$(LIBARCH), solaris-i386) ifeq ($(OPENJDK_TARGET_OS)-$(LIBARCH), solaris-i386)
GENSRC_SIZES := sizes.32 sizes.64 GENSRC_SIZES := sizes.32 sizes.64
else ifeq ($(PLATFORM), solaris) else ifeq ($(OPENJDK_TARGET_OS), solaris)
isalist:=$(shell $(ISAINFO)) isalist:=$(shell isainfo)
ifneq (,$(findstring sparcv9, $(isalist))) ifneq (,$(findstring sparcv9, $(isalist)))
# On sparcv9 we generate both 32 and 64-bit sizers in spite of ARCH_DATA_MODEL. # On sparcv9 we generate both 32 and 64-bit sizers in spite of ARCH_DATA_MODEL.
GENSRC_SIZES := sizes.32 sizes.64 GENSRC_SIZES := sizes.32 sizes.64
...@@ -46,7 +46,7 @@ GENSRC_SIZES := sizes.32 ...@@ -46,7 +46,7 @@ GENSRC_SIZES := sizes.32
endif # amd64 endif # amd64
endif # sparcv9 endif # sparcv9
else # !solaris else # !solaris
ifeq ($(PLATFORM), macosx) ifeq ($(OPENJDK_TARGET_OS), macosx)
GENSRC_SIZES := sizes.32 sizes.64 GENSRC_SIZES := sizes.32 sizes.64
else # !macosx else # !macosx
GENSRC_SIZES := sizes.$(ARCH_DATA_MODEL) GENSRC_SIZES := sizes.$(ARCH_DATA_MODEL)
...@@ -62,18 +62,23 @@ $(GENSRC_X11WRAPPERS_TMP)/sizer/sizer.%.c : $(GENSRC_SIZER_SRC)/xlibtypes.txt ...@@ -62,18 +62,23 @@ $(GENSRC_X11WRAPPERS_TMP)/sizer/sizer.%.c : $(GENSRC_SIZER_SRC)/xlibtypes.txt
$(TOOL_WRAPPERGENERATOR) $(@D) $< "sizer" $* $(TOOL_WRAPPERGENERATOR) $(@D) $< "sizer" $*
$(GENSRC_X11WRAPPERS_TMP)/sizer/sizer.%.exe : $(GENSRC_X11WRAPPERS_TMP)/sizer/sizer.%.c $(GENSRC_X11WRAPPERS_TMP)/sizer/sizer.%.exe : $(GENSRC_X11WRAPPERS_TMP)/sizer/sizer.%.c
(cd $(@D) && $(CC) -m$* -o $@ $< $(CFLAGS_JDKLIB) \ (cd $(@D) && $(HOST_CC) -m$* -o $@ $< \
-I$(JDK_OUTPUTDIR)/include \
-I$(JDK_TOPDIR)/src/share/javavm/export \
-I$(JDK_TOPDIR)/src/$(LEGACY_OPENJDK_TARGET_OS_API)/javavm/export \
-I$(JDK_TOPDIR)//src/share/native/common \
-I$(JDK_TOPDIR)/src/$(LEGACY_OPENJDK_TARGET_OS_API)/native/common \
-I$(JDK_TOPDIR)/src/solaris/native/sun/awt \ -I$(JDK_TOPDIR)/src/solaris/native/sun/awt \
-I$(JDK_TOPDIR)/src/share/native/sun/awt/debug \ -I$(JDK_TOPDIR)/src/share/native/sun/awt/debug \
-I$(JDK_TOPDIR)/src/share/native/sun/awt/image/cvutils -lc) -I$(JDK_TOPDIR)/src/share/native/sun/awt/image/cvutils -lc)
ifeq ($(PLATFORM)-$(LIBARCH), solaris-i386) ifeq ($(OPENJDK_TARGET_OS)-$(LIBARCH), solaris-i386)
$(GENSRC_X11WRAPPERS_TMP)/sizer/sizes.32 : $(GENSRC_X11WRAPPERS_TMP)/sizer/sizer.32.exe $(GENSRC_X11WRAPPERS_TMP)/sizer/sizes.32 : $(GENSRC_X11WRAPPERS_TMP)/sizer/sizer.32.exe
$< > $@.tmp $< > $@.tmp
$(MV) $@.tmp $@ $(MV) $@.tmp $@
$(GENSRC_X11WRAPPERS_TMP)/sizer/sizes.64 : $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/classes/sun/awt/X11/generator/sizes.64-$(PLATFORM)-$(LIBARCH) $(GENSRC_X11WRAPPERS_TMP)/sizer/sizes.64 : $(JDK_TOPDIR)/src/$(LEGACY_OPENJDK_TARGET_OS_API)/classes/sun/awt/X11/generator/sizes.64-$(OPENJDK_TARGET_OS)-$(LIBARCH)
$(MKDIR) -p $(@D) $(MKDIR) -p $(@D)
$(CP) $< $@ $(CP) $< $@
else else
...@@ -88,9 +93,9 @@ $(GENSRC_X11WRAPPERS_TMP)/classes/_the.classes : $(foreach S,$(GENSRC_SIZES),$(G ...@@ -88,9 +93,9 @@ $(GENSRC_X11WRAPPERS_TMP)/classes/_the.classes : $(foreach S,$(GENSRC_SIZES),$(G
$(MKDIR) -p $(@D)/sun/awt/X11 $(MKDIR) -p $(@D)/sun/awt/X11
$(RM) $(@D)/sun/awt/X11/* $(RM) $(@D)/sun/awt/X11/*
$(TOOL_WRAPPERGENERATOR) $(@D)/sun/awt/X11 $(GENSRC_SIZER_SRC)/xlibtypes.txt "gen" $(GENSRC_X11WRAPPERS_TMP)/sizer/sizes $(TOOL_WRAPPERGENERATOR) $(@D)/sun/awt/X11 $(GENSRC_SIZER_SRC)/xlibtypes.txt "gen" $(GENSRC_X11WRAPPERS_TMP)/sizer/sizes
ifeq ($(PLATFORM)-$(LIBARCH), solaris-amd64) ifeq ($(OPENJDK_TARGET_OS)-$(LIBARCH), solaris-amd64)
$(ECHO) COMPARING $@ and $(GENSRC_SIZER_SRC)/sizes.64-$(PLATFORM)-i386 $(ECHO) COMPARING $(GENSRC_X11WRAPPERS_TMP)/sizer/sizes.64 and $(GENSRC_SIZER_SRC)/sizes.64-$(OPENJDK_TARGET_OS)-i386
$(DIFF) $(GENSRC_X11WRAPPERS_TMP)/sizes.64 $(GENSRC_SIZER_SRC)/sizes.64-$(PLATFORM)-i386 $(DIFF) $(GENSRC_X11WRAPPERS_TMP)/sizer/sizes.64 $(GENSRC_SIZER_SRC)/sizes.64-$(OPENJDK_TARGET_OS)-i386
endif endif
$(TOUCH) $@ $(TOUCH) $@
......
...@@ -34,15 +34,20 @@ include Tools.gmk ...@@ -34,15 +34,20 @@ include Tools.gmk
images: jre-image jdk-image images: jre-image jdk-image
ifeq ($(HOST_OS),solaris) ifeq ($(OPENJDK_TARGET_OS),solaris)
define install-file define install-file
$(MKDIR) -p $(@D) $(MKDIR) -p $(@D)
$(CP) -r -P '$<' '$(@D)' $(CP) -f -r -P '$<' '$(@D)'
endef
else ifeq ($(OPENJDK_TARGET_OS),macosx)
define install-file
$(MKDIR) -p $(@D)
$(CP) -fpRP '$<' '$@'
endef endef
else else
define install-file define install-file
$(MKDIR) -p $(@D) $(MKDIR) -p $(@D)
$(CP) -P '$<' '$@' $(CP) -fP '$<' '$@'
endef endef
endif endif
...@@ -67,7 +72,7 @@ $(JDK_IMAGE_DIR)/jre/bin/%: $(JDK_OUTPUTDIR)/bin/% ...@@ -67,7 +72,7 @@ $(JDK_IMAGE_DIR)/jre/bin/%: $(JDK_OUTPUTDIR)/bin/%
$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@) $(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
$(install-file) $(install-file)
NOT_JRE_BIN_FILES = \ NOT_JRE_BIN_FILES := \
appletviewer$(EXE_SUFFIX) \ appletviewer$(EXE_SUFFIX) \
extcheck$(EXE_SUFFIX) \ extcheck$(EXE_SUFFIX) \
idlj$(EXE_SUFFIX) \ idlj$(EXE_SUFFIX) \
...@@ -107,7 +112,12 @@ WINDOWS_JDK_BIN_FILES = \ ...@@ -107,7 +112,12 @@ WINDOWS_JDK_BIN_FILES = \
# Find all files in bin dir # Find all files in bin dir
ALL_BIN_LIST := $(shell $(FIND) $(JDK_OUTPUTDIR)/bin -type f) ALL_BIN_LIST := $(shell $(FIND) $(JDK_OUTPUTDIR)/bin -type f)
ifeq ($(HOST_OS),windows)
# For unknown reason the debuginfo files for binaries are not put into images
# e.g filter them out
ALL_BIN_LIST := $(filter-out %.debuginfo %.diz, $(ALL_BIN_LIST))
ifeq ($(OPENJDK_TARGET_OS),windows)
JDK_BIN_LIST := $(filter $(addprefix %,$(WINDOWS_JDK_BIN_FILES)), $(ALL_BIN_LIST)) JDK_BIN_LIST := $(filter $(addprefix %,$(WINDOWS_JDK_BIN_FILES)), $(ALL_BIN_LIST))
else else
JDK_BIN_LIST := $(ALL_BIN_LIST) JDK_BIN_LIST := $(ALL_BIN_LIST)
...@@ -147,7 +157,7 @@ NOT_JRE_LIB_FILES := \ ...@@ -147,7 +157,7 @@ NOT_JRE_LIB_FILES := \
ct.sym ct.sym
JDK_LIB_FILES := $(NOT_JRE_LIB_FILES) JDK_LIB_FILES := $(NOT_JRE_LIB_FILES)
ifeq ($(HOST_OS), linux) ifeq ($(OPENJDK_TARGET_OS), linux)
JDK_LIB_FILES += jexec JDK_LIB_FILES += jexec
endif endif
...@@ -236,14 +246,21 @@ JDK_MAN_PAGES = \ ...@@ -236,14 +246,21 @@ JDK_MAN_PAGES = \
wsimport.1 \ wsimport.1 \
xjc.1 xjc.1
ifeq ($(HOST_OS), linux) ifeq ($(OPENJDK_TARGET_OS), linux)
MAN_SRC_DIR:=$(JDK_TOPDIR)/src/linux/doc MAN_SRC_DIR:=$(JDK_TOPDIR)/src/linux/doc
MAN1_SUBDIR:=man MAN1_SUBDIR:=man
endif endif
ifeq ($(HOST_OS), solaris) ifeq ($(OPENJDK_TARGET_OS), solaris)
MAN_SRC_DIR:=$(JDK_TOPDIR)/src/solaris/doc MAN_SRC_DIR:=$(JDK_TOPDIR)/src/solaris/doc
MAN1_SUBDIR:=sun/man/man1 MAN1_SUBDIR:=sun/man/man1
endif endif
ifeq ($(OPENJDK_TARGET_OS), macosx)
MAN_SRC_DIR:=$(JDK_TOPDIR)/src/bsd/doc
MAN1_SUBDIR:=man
JDK_MAN_PAGES := $(filter-out jcmd.1, $(JDK_MAN_PAGES))
JDK_MAN_PAGES := $(filter-out jvisualvm.1, $(JDK_MAN_PAGES))
endif
$(JRE_IMAGE_DIR)/man/man1/%: $(MAN_SRC_DIR)/$(MAN1_SUBDIR)/% $(JRE_IMAGE_DIR)/man/man1/%: $(MAN_SRC_DIR)/$(MAN1_SUBDIR)/%
$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@) $(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
...@@ -286,7 +303,7 @@ $(JDK_IMAGE_DIR)/man/ja_JP.PCK/man1/%: $(MAN_SRC_DIR)/$(MAN1_SUBDIR)/ja/% ...@@ -286,7 +303,7 @@ $(JDK_IMAGE_DIR)/man/ja_JP.PCK/man1/%: $(MAN_SRC_DIR)/$(MAN1_SUBDIR)/ja/%
$(ECHO) Converting $(patsubst $(OUTPUT_ROOT)/%,%,$@) $(ECHO) Converting $(patsubst $(OUTPUT_ROOT)/%,%,$@)
$(call install-ja-manpage,PCK) $(call install-ja-manpage,PCK)
ifeq ($(HOST_OS), solaris) ifeq ($(OPENJDK_TARGET_OS), solaris)
$(JRE_IMAGE_DIR)/man/ja/man1/%: $(MAN_SRC_DIR)/$(MAN1_SUBDIR)/ja/% $(JRE_IMAGE_DIR)/man/ja/man1/%: $(MAN_SRC_DIR)/$(MAN1_SUBDIR)/ja/%
$(ECHO) Converting $(patsubst $(OUTPUT_ROOT)/%,%,$@) $(ECHO) Converting $(patsubst $(OUTPUT_ROOT)/%,%,$@)
$(install-file) $(install-file)
...@@ -302,7 +319,7 @@ $(JDK_IMAGE_DIR)/man/ja_JP.UTF-8/man1/jcmd.1 $(JDK_IMAGE_DIR)/man/ja_JP.PCK/man1 ...@@ -302,7 +319,7 @@ $(JDK_IMAGE_DIR)/man/ja_JP.UTF-8/man1/jcmd.1 $(JDK_IMAGE_DIR)/man/ja_JP.PCK/man1
$(MKDIR) -p $(@D) $(MKDIR) -p $(@D)
$(TOUCH) $@ $(TOUCH) $@
ifeq ($(HOST_OS), linux) ifeq ($(OPENJDK_TARGET_OS), linux)
$(JRE_IMAGE_DIR)/man/ja: $(JRE_IMAGE_DIR)/man/ja:
$(ECHO) Creating $(patsubst $(OUTPUT_ROOT)/%,%,$@) $(ECHO) Creating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
$(CD) $(@D) && $(RM) ja && $(LN) -s ja_JP.UTF-8 ja $(CD) $(@D) && $(RM) ja && $(LN) -s ja_JP.UTF-8 ja
...@@ -312,7 +329,17 @@ ifeq ($(HOST_OS), linux) ...@@ -312,7 +329,17 @@ ifeq ($(HOST_OS), linux)
$(CD) $(@D) && $(RM) ja && $(LN) -s ja_JP.UTF-8 ja $(CD) $(@D) && $(RM) ja && $(LN) -s ja_JP.UTF-8 ja
endif endif
ifeq ($(HOST_OS), linux) ifeq ($(OPENJDK_TARGET_OS), macosx)
$(JRE_IMAGE_DIR)/man/ja:
$(ECHO) Creating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
$(CD) $(@D) && $(RM) ja && $(LN) -s ja_JP.UTF-8 ja
$(JDK_IMAGE_DIR)/man/ja:
$(ECHO) Creating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
$(CD) $(@D) && $(RM) ja && $(LN) -s ja_JP.UTF-8 ja
endif
ifeq ($(OPENJDK_TARGET_OS), linux)
JRE_MAN_PAGE_LIST := $(addprefix $(JRE_IMAGE_DIR)/man/man1/,$(JRE_MAN_PAGES)) \ JRE_MAN_PAGE_LIST := $(addprefix $(JRE_IMAGE_DIR)/man/man1/,$(JRE_MAN_PAGES)) \
$(addprefix $(JRE_IMAGE_DIR)/man/ja_JP.UTF-8/man1/,$(JRE_MAN_PAGES)) \ $(addprefix $(JRE_IMAGE_DIR)/man/ja_JP.UTF-8/man1/,$(JRE_MAN_PAGES)) \
$(JRE_IMAGE_DIR)/man/ja $(JRE_IMAGE_DIR)/man/ja
...@@ -322,7 +349,7 @@ ifeq ($(HOST_OS), linux) ...@@ -322,7 +349,7 @@ ifeq ($(HOST_OS), linux)
$(JDK_IMAGE_DIR)/man/ja $(JDK_IMAGE_DIR)/man/ja
endif endif
ifeq ($(HOST_OS), solaris) ifeq ($(OPENJDK_TARGET_OS), solaris)
JRE_MAN_PAGE_LIST := $(addprefix $(JRE_IMAGE_DIR)/man/man1/,$(JRE_MAN_PAGES)) \ JRE_MAN_PAGE_LIST := $(addprefix $(JRE_IMAGE_DIR)/man/man1/,$(JRE_MAN_PAGES)) \
$(addprefix $(JRE_IMAGE_DIR)/man/ja/man1/,$(JRE_MAN_PAGES)) \ $(addprefix $(JRE_IMAGE_DIR)/man/ja/man1/,$(JRE_MAN_PAGES)) \
$(addprefix $(JRE_IMAGE_DIR)/man/ja_JP.UTF-8/man1/,$(JRE_MAN_PAGES)) \ $(addprefix $(JRE_IMAGE_DIR)/man/ja_JP.UTF-8/man1/,$(JRE_MAN_PAGES)) \
...@@ -334,6 +361,16 @@ ifeq ($(HOST_OS), solaris) ...@@ -334,6 +361,16 @@ ifeq ($(HOST_OS), solaris)
$(addprefix $(JDK_IMAGE_DIR)/man/ja_JP.PCK/man1/,$(JDK_MAN_PAGES)) $(addprefix $(JDK_IMAGE_DIR)/man/ja_JP.PCK/man1/,$(JDK_MAN_PAGES))
endif endif
ifeq ($(OPENJDK_TARGET_OS), macosx)
JRE_MAN_PAGE_LIST := $(addprefix $(JRE_IMAGE_DIR)/man/man1/,$(JRE_MAN_PAGES)) \
$(addprefix $(JRE_IMAGE_DIR)/man/ja_JP.UTF-8/man1/,$(JRE_MAN_PAGES)) \
$(JRE_IMAGE_DIR)/man/ja
JDK_MAN_PAGE_LIST := $(addprefix $(JDK_IMAGE_DIR)/man/man1/,$(JDK_MAN_PAGES)) \
$(addprefix $(JDK_IMAGE_DIR)/man/ja_JP.UTF-8/man1/,$(JDK_MAN_PAGES)) \
$(JDK_IMAGE_DIR)/man/ja
endif
################################################################################ ################################################################################
# /demo dir # /demo dir
...@@ -383,6 +420,7 @@ ifndef OPENJDK ...@@ -383,6 +420,7 @@ ifndef OPENJDK
$(JDK_IMAGE_DIR)/db/README-JDK.html: $(JDK_TOPDIR)/src/closed/share/db/README-JDK.html $(JDK_IMAGE_DIR)/db/README-JDK.html: $(JDK_TOPDIR)/src/closed/share/db/README-JDK.html
$(ECHO) Copying '$(patsubst $(OUTPUT_ROOT)/%,%,$@)' $(ECHO) Copying '$(patsubst $(OUTPUT_ROOT)/%,%,$@)'
$(install-file) $(install-file)
$(CHMOD) 644 $(@)
JDK_DB_TARGETS := $(patsubst $(JDK_TOPDIR)/src/closed/share/db/%,$(IMAGES_OUTPUTDIR)/_unzip/%.unzipped,\ JDK_DB_TARGETS := $(patsubst $(JDK_TOPDIR)/src/closed/share/db/%,$(IMAGES_OUTPUTDIR)/_unzip/%.unzipped,\
$(shell $(FIND) $(JDK_TOPDIR)/src/closed/share/db -name "*.zip" ! -name "*demo*")) \ $(shell $(FIND) $(JDK_TOPDIR)/src/closed/share/db -name "*.zip" ! -name "*demo*")) \
...@@ -411,7 +449,7 @@ ifdef OPENJDK ...@@ -411,7 +449,7 @@ ifdef OPENJDK
else else
JRE_DOC_FILES := COPYRIGHT Welcome.html LICENSE THIRDPARTYLICENSEREADME.txt JRE_DOC_FILES := COPYRIGHT Welcome.html LICENSE THIRDPARTYLICENSEREADME.txt
JDK_DOC_FILES := COPYRIGHT README.html LICENSE THIRDPARTYLICENSEREADME.txt JDK_DOC_FILES := COPYRIGHT README.html LICENSE THIRDPARTYLICENSEREADME.txt
ifeq ($(HOST_OS), windows) ifeq ($(OPENJDK_TARGET_OS), windows)
JRE_DOC_FILES += README.txt JRE_DOC_FILES += README.txt
else else
JRE_DOC_FILES += README JRE_DOC_FILES += README
...@@ -432,32 +470,39 @@ JDK_DOC_TARGETS := $(addprefix $(JDK_IMAGE_DIR)/,$(JDK_DOC_FILES)) ...@@ -432,32 +470,39 @@ JDK_DOC_TARGETS := $(addprefix $(JDK_IMAGE_DIR)/,$(JDK_DOC_FILES))
$(JRE_IMAGE_DIR)/%: $(JRE_DOC_LOCATION)/% $(JRE_IMAGE_DIR)/%: $(JRE_DOC_LOCATION)/%
$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@) $(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
$(install-file) $(install-file)
$(CHMOD) 444 $(@)
$(JDK_IMAGE_DIR)/jre/%: $(JRE_DOC_LOCATION)/% $(JDK_IMAGE_DIR)/jre/%: $(JRE_DOC_LOCATION)/%
$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@) $(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
$(install-file) $(install-file)
$(CHMOD) 444 $(@)
$(JRE_IMAGE_DIR)/README.txt: $(JRE_DOC_LOCATION)/README $(JRE_IMAGE_DIR)/README.txt: $(JRE_DOC_LOCATION)/README
$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@) $(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
$(MKDIR) -p $(@D) $(MKDIR) -p $(@D)
$(CP) $< $@ $(CP) $< $@
$(CHMOD) 444 $(@)
$(JDK_IMAGE_DIR)/jre/README.txt: $(JRE_DOC_LOCATION)/README $(JDK_IMAGE_DIR)/jre/README.txt: $(JRE_DOC_LOCATION)/README
$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@) $(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
$(MKDIR) -p $(@D) $(MKDIR) -p $(@D)
$(CP) $< $@ $(CP) $< $@
$(CHMOD) 444 $(@)
$(JDK_IMAGE_DIR)/%: $(JDK_DOC_LOCATION)/% $(JDK_IMAGE_DIR)/%: $(JDK_DOC_LOCATION)/%
$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@) $(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
$(install-file) $(install-file)
$(CHMOD) 444 $(@)
$(JDK_IMAGE_DIR)/demo/%: $(JDK_DOC_LOCATION)/% $(JDK_IMAGE_DIR)/demo/%: $(JDK_DOC_LOCATION)/%
$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@) $(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
$(install-file) $(install-file)
$(CHMOD) 444 $(@)
$(JDK_IMAGE_DIR)/sample/%: $(JDK_DOC_LOCATION)/% $(JDK_IMAGE_DIR)/sample/%: $(JDK_DOC_LOCATION)/%
$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@) $(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
$(install-file) $(install-file)
$(CHMOD) 444 $(@)
JRE_INFO_FILE := $(JRE_IMAGE_DIR)/release JRE_INFO_FILE := $(JRE_IMAGE_DIR)/release
JDK_INFO_FILE := $(JDK_IMAGE_DIR)/release JDK_INFO_FILE := $(JDK_IMAGE_DIR)/release
...@@ -500,7 +545,7 @@ $(JDK_IMAGE_DIR)/src.zip: $(IMAGES_OUTPUTDIR)/src.zip ...@@ -500,7 +545,7 @@ $(JDK_IMAGE_DIR)/src.zip: $(IMAGES_OUTPUTDIR)/src.zip
# Post processing (strip etc) # Post processing (strip etc)
ifneq ($(POST_STRIP_CMD),) ifneq ($(POST_STRIP_CMD),)
ifeq ($(HOST_OS), windows) ifeq ($(OPENJDK_TARGET_OS), windows)
EXEC_LIST:=$(shell $(FIND) $(JDK_OUTPUTDIR)/bin -type f -name \*.exe \ EXEC_LIST:=$(shell $(FIND) $(JDK_OUTPUTDIR)/bin -type f -name \*.exe \
-o -name \*.dll | $(EGREP) -v -i "$(MSVCRNN_DLL)") -o -name \*.dll | $(EGREP) -v -i "$(MSVCRNN_DLL)")
else else
...@@ -510,17 +555,43 @@ ifneq ($(POST_STRIP_CMD),) ...@@ -510,17 +555,43 @@ ifneq ($(POST_STRIP_CMD),)
| $(EGREP) 'ELF' | $(CUT) -d':' -f1) | $(EGREP) 'ELF' | $(CUT) -d':' -f1)
endif endif
# Filter out non JRE files and convert to unique touch files to depend on # Filter out non JRE files and convert to unique touch files to depend on
JRE_EXEC_TOUCH_LIST:=$(patsubst $(JDK_OUTPUTDIR)/%,$(IMAGES_OUTPUTDIR)/_strip/%.stripped,\ JRE_EXEC_TOUCH_LIST:=$(patsubst $(JDK_OUTPUTDIR)/%,$(IMAGES_OUTPUTDIR)/_strip_jre/%.stripped,\
$(filter-out $(addprefix %,$(NOT_JRE_BIN_FILES) $(NOT_JRE_LIB_FILES)), $(EXEC_LIST))) $(filter-out $(addprefix %,$(NOT_JRE_BIN_FILES) $(NOT_JRE_LIB_FILES)), $(EXEC_LIST)))
JDK_JRE_EXEC_TOUCH_LIST:=$(patsubst $(JDK_OUTPUTDIR)/%, \
$(IMAGES_OUTPUTDIR)/_strip_jdk/jre/%.stripped, \
$(filter-out $(addprefix %,$(NOT_JRE_BIN_FILES) $(NOT_JRE_LIB_FILES)), $(EXEC_LIST)))
JDK_BIN_EXEC_TOUCH_LIST := $(patsubst $(JDK_OUTPUTDIR)/%, \
$(IMAGES_OUTPUTDIR)/_strip_jdk/%.stripped, \
$(filter-out $(JDK_OUTPUTDIR)/lib/%, $(EXEC_LIST)))
# Setup a rule for stripping files based on touch files
$(IMAGES_OUTPUTDIR)/_strip_jre/%.stripped: $(JRE_IMAGE_DIR)/%
$(ECHO) Stripping $(patsubst $(OUTPUT_ROOT)/%,%,$<)
$(CHMOD) u+w $<
$(POST_STRIP_CMD) $<
$(CHMOD) go-w $<
$(MKDIR) -p $(@D)
$(TOUCH) $@
$(IMAGES_OUTPUTDIR)/_strip_jdk/bin/%.stripped: $(JDK_IMAGE_DIR)/bin/%
$(ECHO) Stripping $(patsubst $(OUTPUT_ROOT)/%,%,$<)
$(CHMOD) u+w $<
$(POST_STRIP_CMD) $<
$(CHMOD) go-w $<
$(MKDIR) -p $(@D)
$(TOUCH) $@
# Setup a rule for stripping files based on touch files # Setup a rule for stripping files based on touch files
$(IMAGES_OUTPUTDIR)/_strip/%.stripped: $(JRE_IMAGE_DIR)/% $(IMAGES_OUTPUTDIR)/_strip_jdk/jre/%.stripped: $(JDK_IMAGE_DIR)/jre/%
$(ECHO) Stripping $(patsubst $(OUTPUT_ROOT)/%,%,$<) $(ECHO) Stripping $(patsubst $(OUTPUT_ROOT)/%,%,$<)
$(CHMOD) u+w $< $(CHMOD) u+w $<
$(POST_STRIP_CMD) $< $(POST_STRIP_CMD) $<
$(CHMOD) go-w $< $(CHMOD) go-w $<
$(MKDIR) -p $(@D) $(MKDIR) -p $(@D)
$(TOUCH) $@ $(TOUCH) $@
endif endif
################################################################################ ################################################################################
...@@ -538,7 +609,8 @@ jdk-image: $(JDK_BIN_TARGETS) $(JDKJRE_BIN_TARGETS) \ ...@@ -538,7 +609,8 @@ jdk-image: $(JDK_BIN_TARGETS) $(JDKJRE_BIN_TARGETS) \
$(JDK_MAN_PAGE_LIST) $(JDK_SAMPLE_TARGETS) \ $(JDK_MAN_PAGE_LIST) $(JDK_SAMPLE_TARGETS) \
$(JDK_DB_TARGETS) $(JDK_INCLUDE_TARGETS) \ $(JDK_DB_TARGETS) $(JDK_INCLUDE_TARGETS) \
$(JDKJRE_DOC_TARGETS) $(JDK_DOC_TARGETS) \ $(JDKJRE_DOC_TARGETS) $(JDK_DOC_TARGETS) \
$(JDK_INFO_FILE) $(JDK_IMAGE_DIR)/src.zip $(JDK_INFO_FILE) $(JDK_JRE_EXEC_TOUCH_LIST) $(JDK_BIN_EXEC_TOUCH_LIST) \
$(JDK_IMAGE_DIR)/src.zip
################################################################################ ################################################################################
......
#
# Copyright (c) 2012, 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.
#
default: all
include $(SPEC)
include MakeBase.gmk
#######
IMPORT_TARGET_FILES :=
IMPORT_CLASSES := CORBA JAXP JAXWS LANGTOOLS
IMPORT_SOURCES := CORBA JAXP JAXWS LANGTOOLS
# Only Corba has binaries
IMPORT_BINARIES := CORBA
#######
# Put the libraries here. Different locations for different target apis.
ifeq ($(OPENJDK_TARGET_OS_API),posix)
ifneq ($(OPENJDK_TARGET_OS),macosx)
INSTALL_LIBRARIES_HERE:=$(JDK_OUTPUTDIR)/lib/$(LIBARCH)
else
INSTALL_LIBRARIES_HERE:=$(JDK_OUTPUTDIR)/lib
endif
HOTSPOT_LIB_DIR:=$(HOTSPOT_DIST)/jre/lib/$(LIBARCH)
else
INSTALL_LIBRARIES_HERE:=$(JDK_OUTPUTDIR)/bin
HOTSPOT_LIB_DIR:=$(HOTSPOT_DIST)/jre/bin
endif
#######
#
# jar xf/unzip fails when executing them all in parallel
# introduce artificial dependency (_DEP) buuhhh
define ImportClasses
$1_CLASSES_DEP := $$(IMPORT_TARGET_CLASSES)
IMPORT_TARGET_CLASSES += $(JDK_OUTPUTDIR)/classes/_the.$1.classes.imported
$(JDK_OUTPUTDIR)/classes/_the.$1.classes.imported : $$($1_DIST)/lib/classes.jar $$($1_CLASSES_DEP)
$(ECHO) Importing $1 classes.jar
$(MKDIR) -p $$(@D)
($(CD) $$(@D) && $(JAR) xvf $$< > $$@.tmp)
$(MV) $$@.tmp $$@
endef
define ImportSources
$1_SOURCES_DEP := $$(IMPORT_TARGET_SOURCES)
IMPORT_TARGET_SOURCES += $(JDK_OUTPUTDIR)/impsrc/_the.$1.src.imported
$(JDK_OUTPUTDIR)/impsrc/_the.$1.src.imported : $$($1_DIST)/lib/src.zip $$($1_SOURCES_DEP)
$(ECHO) Importing $1 src.zip
$(MKDIR) -p $$(@D)
($(CD) $$(@D) && $(JAR) xvf $$< > $$@.tmp)
$(MV) $$@.tmp $$@
endef
define ImportBinaries
$1_BINARIES_DEP := $$(IMPORT_TARGET_BINARIES)
IMPORT_TARGET_BINARIES += $(JDK_OUTPUTDIR)/_the.$1.binaries.imported
$(JDK_OUTPUTDIR)/_the.$1.binaries.imported : $$($1_DIST)/lib/bin.zip $$($1_BINARIES_DEP)
$(ECHO) Importing $1 bin.zip
$(MKDIR) -p $$(@D)
($(CD) $$(@D) && $(JAR) xvf $$< > $$@.tmp)
$(MV) $$@.tmp $$@
endef
#######
$(foreach I,$(IMPORT_CLASSES), $(eval $(call ImportClasses,$I)))
$(foreach I,$(IMPORT_SOURCES), $(eval $(call ImportSources,$I)))
$(foreach I,$(IMPORT_BINARIES), $(eval $(call ImportBinaries,$I)))
IMPORT_TARGET_FILES += $(IMPORT_TARGET_CLASSES) $(IMPORT_TARGET_SOURCES) $(IMPORT_TARGET_BINARIES)
#######
ifeq ($(OPENJDK_TARGET_OS),solaris)
define do-install-file
$(MKDIR) -p $$(@D)
$(CP) -r -P '$$<' '$$(@D)'
endef
else ifeq ($(OPENJDK_TARGET_OS),macosx)
define do-install-file
$(MKDIR) -p $$(@D)
$(CP) -pRP '$$<' '$$@'
endef
else
define do-install-file
$(MKDIR) -p $$(@D)
$(CP) -P '$$<' '$$@'
endef
endif
define CopyDir
$1_SRC_FILES := $(shell $(FIND) $2 -type f)
$1_DST_FILES := $$(patsubst $2/%,$3/%,$$($1_SRC_FILES))
IMPORT_TARGET_FILES += $$($1_DST_FILES)
$3/% : $2/%
$(ECHO) Copying $$(@F)
$(do-install-file)
endef
#######
#
# Import hotspot
#
$(eval $(call CopyDir,HOTSPOT0, $(HOTSPOT_LIB_DIR), $(INSTALL_LIBRARIES_HERE)))
$(eval $(call CopyDir,HOTSPOT1, $(HOTSPOT_DIST)/lib, $(JDK_OUTPUTDIR)/lib))
JSIG_DEBUGINFO := $(wildcard $(HOTSPOT_DIST)/jre/lib/$(LIBARCH)/libjsig.debuginfo) \
$(wildcard $(HOTSPOT_DIST)/jre/lib/$(LIBARCH)/libjsig.diz)
ifneq ($(OPENJDK_TARGET_OS), windows)
ifeq ($(JVM_VARIANT_SERVER), true)
IMPORT_TARGET_FILES += $(INSTALL_LIBRARIES_HERE)/server/$(LIBRARY_PREFIX)jsig$(SHARED_LIBRARY_SUFFIX)
ifneq (,$(JSIG_DEBUGINFO))
IMPORT_TARGET_FILES += $(INSTALL_LIBRARIES_HERE)/server/$(foreach I,$(JSIG_DEBUGINFO),$(notdir $I))
endif
endif
ifeq ($(JVM_VARIANT_CLIENT), true)
IMPORT_TARGET_FILES += $(INSTALL_LIBRARIES_HERE)/client/$(LIBRARY_PREFIX)jsig$(SHARED_LIBRARY_SUFFIX)
ifneq (,$(JSIG_DEBUGINFO))
IMPORT_TARGET_FILES += $(INSTALL_LIBRARIES_HERE)/client/$(foreach I,$(JSIG_DEBUGINFO),$(notdir $I))
endif
endif
endif
$(INSTALL_LIBRARIES_HERE)/server/%$(SHARED_LIBRARY_SUFFIX) : $(INSTALL_LIBRARIES_HERE)/%$(SHARED_LIBRARY_SUFFIX)
$(RM) -f $@
$(LN) -s ../$(@F) $@
$(INSTALL_LIBRARIES_HERE)/server/%.debuginfo : $(INSTALL_LIBRARIES_HERE)/%.debuginfo
$(RM) -f $@
$(LN) -s ../$(@F) $@
$(INSTALL_LIBRARIES_HERE)/server/%.diz : $(INSTALL_LIBRARIES_HERE)/%.diz
$(RM) -f $@
ifeq (REALLY_WEIRD,1)
$(LN) -s ../$(@F) $@
else
#
# TODO: Check if this is what they really want...a zip containing a symlink
#
$(RM) -f $(basename $@).debuginfo
$(LN) -s ../$(basename $(@F)).debuginfo $(basename $@).debuginfo
$(ZIP) -q -y $@ $(basename $@).debuginfo
$(RM) -f $(basename $@).debuginfo
endif
$(INSTALL_LIBRARIES_HERE)/client/%$(SHARED_LIBRARY_SUFFIX) : $(INSTALL_LIBRARIES_HERE)/%$(SHARED_LIBRARY_SUFFIX)
$(RM) -f $@
$(LN) -s ../$(@F) $@
$(INSTALL_LIBRARIES_HERE)/client/%.debuginfo : $(INSTALL_LIBRARIES_HERE)/%.debuginfo
$(RM) -f $@
$(LN) -s ../$(@F) $@
$(INSTALL_LIBRARIES_HERE)/client/%.diz : $(INSTALL_LIBRARIES_HERE)/%.diz
$(RM) -f $@
ifeq (REALLY_WEIRD,1)
$(LN) -s ../$(@F) $@
else
#
# TODO: Check if this is what they really want...a zip containing a symlink
#
$(RM) -f $(basename $@).debuginfo
$(LN) -s ../$(basename $(@F)).debuginfo $(basename $@).debuginfo
$(ZIP) -q -y $@ $(basename $@).debuginfo
$(RM) -f $(basename $@).debuginfo
endif
#######
ifeq ($(OPENJDK_TARGET_OS),solaris)
define install-file
$(MKDIR) -p $(@D)
$(CP) -r -P '$<' '$(@D)'
endef
else ifeq ($(OPENJDK_TARGET_OS),macosx)
define install-file
$(MKDIR) -p $(@D)
$(CP) -pRP '$<' '$@'
endef
else
define install-file
$(MKDIR) -p $(@D)
$(CP) -P '$<' '$@'
endef
endif
ifndef OPENJDK
IMPORT_TARGET_FILES += \
$(JDK_OUTPUTDIR)/lib/security/US_export_policy.jar \
$(JDK_OUTPUTDIR)/lib/security/local_policy.jar \
$(JDK_OUTPUTDIR)/lib/jce.jar
$(JDK_OUTPUTDIR)/lib/jce.jar : $(JDK_TOPDIR)/make/closed/tools/crypto/jce/jce.jar
$(ECHO) Copying $(@F)
$(install-file)
$(JDK_OUTPUTDIR)/lib/security/local_policy.jar: $(JDK_TOPDIR)/make/closed/tools/crypto/jce/local_policy.jar
$(ECHO) Copying $(@F)
$(install-file)
$(JDK_OUTPUTDIR)/lib/security/US_export_policy.jar: $(JDK_TOPDIR)/make/closed/tools/crypto/jce/US_export_policy.jar
$(ECHO) Copying $(@F)
$(install-file)
endif # OPENJDK
#######
all: $(IMPORT_TARGET_FILES)
...@@ -38,21 +38,21 @@ include Setup.gmk ...@@ -38,21 +38,21 @@ include Setup.gmk
include Tools.gmk include Tools.gmk
all: $(BUILD_TOOLS) all: $(BUILD_TOOLS)
# Import (corba jaxp jaxws langtools hotspot)
+$(MAKE) -f Import.gmk
#
+$(MAKE) -f GenerateJavaSources.gmk +$(MAKE) -f GenerateJavaSources.gmk
# Drop back to the old makefiles for
# packages/libs that have not yet been converted.
+$(MAKE) -f LegacyMakefiles.gmk
# Ok, now gensrc is fully populated. # Ok, now gensrc is fully populated.
+$(MAKE) -f GenerateData.gmk +$(MAKE) -f GenerateData.gmk
+$(MAKE) -f CompileJavaClasses.gmk +$(MAKE) -f CompileJavaClasses.gmk
# The classes have been built, now generate
# classes that have other sources.
+$(MAKE) -f GenerateClasses.gmk
# The classes are now built and # The classes are now built and
# any javah files have now been generated. # any javah files have now been generated.
+$(MAKE) -f CompileNativeLibraries.gmk +$(MAKE) -f CompileNativeLibraries.gmk
# Finally compile the launchers. # Finally compile the launchers.
+$(MAKE) -f CompileLaunchers.gmk +$(MAKE) -f CompileLaunchers.gmk
# Generate classes that have other sources. Needs
# to execute launchers.
+$(MAKE) -f GenerateClasses.gmk
# Now we have a complete jdk, which you can run. # Now we have a complete jdk, which you can run.
# It is not yet wrapped up as an installed image. # It is not yet wrapped up as an installed image.
# The demos are compiled against this jdk. # The demos are compiled against this jdk.
...@@ -64,16 +64,11 @@ ifndef NO_SAMPLES ...@@ -64,16 +64,11 @@ ifndef NO_SAMPLES
+$(MAKE) -f CopySamples.gmk +$(MAKE) -f CopySamples.gmk
endif endif
# Create the final jdk and jre images in the old way. Kept for reference
# until conversion is fully done.
old-images:
+$(MAKE) $(IMAGES_MAKE_ARGS) -f OldImages.gmk
# Create the final jdk and jre images, to be wrapped up # Create the final jdk and jre images, to be wrapped up
# into packages, or installed. # into packages, or installed.
images: images:
+$(MAKE) -f CreateJars.gmk +$(MAKE) -f CreateJars.gmk
+$(MAKE) $(IMAGES_MAKE_ARGS) -f Images.gmk +$(MAKE) -f Images.gmk
BINARIES:=$(shell if test -d $(IMAGES_OUTPUTDIR)/j2sdk-image/bin; then cd $(IMAGES_OUTPUTDIR)/j2sdk-image/bin && $(LS) ; fi) BINARIES:=$(shell if test -d $(IMAGES_OUTPUTDIR)/j2sdk-image/bin; then cd $(IMAGES_OUTPUTDIR)/j2sdk-image/bin && $(LS) ; fi)
...@@ -90,9 +85,4 @@ install: images ...@@ -90,9 +85,4 @@ install: images
$(RM) $(addprefix $(INSTALL_PREFIX)/bin/,$(BINARIES)) $(RM) $(addprefix $(INSTALL_PREFIX)/bin/,$(BINARIES))
$(foreach b,$(BINARIES),$(LN) -s $(INSTALL_PREFIX)/jvm/$(INSTALLDIR)/bin/$b $(INSTALL_PREFIX)/bin/$b &&) true $(foreach b,$(BINARIES),$(LN) -s $(INSTALL_PREFIX)/jvm/$(INSTALLDIR)/bin/$b $(INSTALL_PREFIX)/bin/$b &&) true
# Create the deb,rpm,tgz,zip, packages.
packages: images
echo Creating packages...well, in the future.
$(MKDIR) -p $(OUTPUT_ROOT)/packages
.PHONY: all install images .PHONY: all install images
此差异已折叠。
...@@ -123,3 +123,27 @@ TOOL_WRAPPERGENERATOR=$(JAVA) -cp $(JDK_OUTPUTDIR)/btclasses \ ...@@ -123,3 +123,27 @@ TOOL_WRAPPERGENERATOR=$(JAVA) -cp $(JDK_OUTPUTDIR)/btclasses \
TOOL_TOBIN=$(JAVA) -Djava.awt.headless=true -cp $(JDK_OUTPUTDIR)/btclasses \ TOOL_TOBIN=$(JAVA) -Djava.awt.headless=true -cp $(JDK_OUTPUTDIR)/btclasses \
sun.awt.X11.ToBin sun.awt.X11.ToBin
##########################################################################################
# Tools needed on solaris because OBJCOPY is broken.
$(eval $(call SetupNativeCompilation,ADD_GNU_DEBUGLINK,\
SRC:=$(JDK_TOPDIR)/make/tools/add_gnu_debuglink,\
LANG:=C,\
CC:=$(HOST_CC),\
LDEXE:=$(HOST_LD),\
LDFLAGS:=-lelf,\
OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/add_gnu_debuglink,\
OUTPUT_DIR:=$(JDK_OUTPUTDIR)/btbin,\
PROGRAM:=add_gnu_debuglink))
$(eval $(call SetupNativeCompilation,FIX_EMPTY_SEC_HDR_FLAGS,\
SRC:=$(JDK_TOPDIR)/make/tools/fix_empty_sec_hdr_flags,\
LANG:=C,\
CC:=$(HOST_CC),\
LDEXE:=$(HOST_LD),\
LDFLAGS:=-lelf,\
OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/fix_empty_sec_hdr_flags,\
OUTPUT_DIR:=$(JDK_OUTPUTDIR)/btbin,\
PROGRAM:=fix_empty_sec_hdr_flags))
此差异已折叠。
#
# Copyright (c) 1995, 2005, 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.
#
# WARNING: This file is shared with other workspaces.
# So when it includes other files, it must use JDK_TOPDIR.
#
include $(JDK_TOPDIR)/makefiles/common/Rules.gmk
#
# Say you built classes into $(ALT_CLASSBINDIR) and then at the end of
# the build you might want to copy them over to $(ALT_CLASSDESTDIR);
# this rule takes care of that. No one should really set these
# variables except the bootstrap/recompile stage of the java compiler.
#
ifdef ALT_CLASSBINDIR
# By default post-processing is copying. Suppose you want to build
# a jar file then set ALT_CLASSES_DISPOSITION to '../../dest/nameof.jar'
# before including this file.
ifndef ALT_CLASSES_DISPOSITION
ALT_CLASSES_DISPOSITION = copy-classes
endif
build : $(ALT_CLASSES_DISPOSITION)
copy-classes:
ifneq ($(ALT_CLASSBINDIR), $(ALT_CLASSDESTDIR))
@if [ -s $(TEMPDIR)/.classes.list ]; then \
mkdir -p $(ALT_CLASSDESTDIR); \
echo "Copying $(ALT_CLASSBINDIR)..."; \
echo "(cd $(ALT_CLASSBINDIR); tar cf - .) | \
(cd $(ALT_CLASSDESTDIR); tar xf -)"; \
(cd $(ALT_CLASSBINDIR); tar cf - .) | \
(cd $(ALT_CLASSDESTDIR); tar xf -); \
fi
else # ALT_CLASSBINDIR
@if [ -s $(TEMPDIR)/.classes.list ]; then \
echo "Copy source and destination are the same: $(ALT_CLASSBINDIR) -- Copy skipped..."; \
fi
endif # ALT_CLASSBINDIR
.PHONY: copy-classes
endif # ALT_CLASSBINDIR
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
#
# Copyright (c) 1997, 2008, 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.
#
# The specific packages that come from or go to rt.jar and tools.jar
IMPORT_RT_PACKAGES += \
javax/annotation/processing \
javax/lang/model \
javax/tools
IMPORT_TOOLS_PACKAGES += \
com/sun/javadoc \
com/sun/source \
com/sun/tools/classfile \
com/sun/tools/doclets \
com/sun/tools/javac \
com/sun/tools/javadoc \
com/sun/tools/javah \
com/sun/tools/javap
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册