OpenJDK / portola / portola
changeset 7945:7296aacd696f
7013109: windows application manifest problems
6820955: Update application manifests with new Windows 7 dpiAware section
Reviewed-by: ohair, art
author | prr |
---|---|
date | Wed, 19 Jan 2011 17:07:51 -0800 |
parents | 26b96bf47c49 |
children | bbd008e0045e |
files | jdk/make/common/Defs-windows.gmk jdk/make/common/Library.gmk jdk/make/common/Program.gmk jdk/src/windows/resource/java.manifest |
diffstat | 4 files changed, 33 insertions(+), 16 deletions(-) [+] |
line wrap: on
line diff
--- a/jdk/make/common/Defs-windows.gmk Wed Jan 19 17:02:52 2011 -0800 +++ b/jdk/make/common/Defs-windows.gmk Wed Jan 19 17:07:51 2011 -0800 @@ -365,10 +365,6 @@ # LFLAGS are the flags given to $(LINK) and used to build the actual DLL file BASELFLAGS = -nologo /opt:REF /incremental:no -ifdef MT - # VS2005, VS2008, and beyond: ask LINK to generate manifests for .dll & .exe - BASELFLAGS += /manifest -endif LFLAGS = $(BASELFLAGS) $(LDEBUG) $(EXTRA_LFLAGS) $(LFLAGS_$(COMPILER_VERSION)) LDDFLAGS += $(LFLAGS_$(COMPILER_VERSION))
--- a/jdk/make/common/Library.gmk Wed Jan 19 17:02:52 2011 -0800 +++ b/jdk/make/common/Library.gmk Wed Jan 19 17:07:51 2011 -0800 @@ -159,9 +159,6 @@ # build it into $(OBJDIR) so that the other generated files get put # there, then copy just the DLL (and MAP file) to the requested directory. # -# In VS2005 or VS2008 the link command creates a .manifest file that we want -# to insert into the linked artifact so we do not need to track it separately. -# Use ";#2" for .dll and ";#1" for .exe in the MT command below: $(ACTUAL_LIBRARY):: $(OBJDIR)/$(LIBRARY).lcf @$(prep-target) @$(MKDIR) -p $(OBJDIR) @@ -169,9 +166,6 @@ -map:$(OBJDIR)/$(LIBRARY).map \ $(LFLAGS) @$(OBJDIR)/$(LIBRARY).lcf \ $(OTHER_LCF) $(JAVALIB) $(LDLIBS) -ifdef MT - $(MT) /manifest $(OBJDIR)/$(@F).manifest /outputresource:$(OBJDIR)/$(@F);#2 -endif $(CP) $(OBJDIR)/$(@F) $@ $(install-module-file) $(CP) $(OBJDIR)/$(LIBRARY).map $(@D)
--- a/jdk/make/common/Program.gmk Wed Jan 19 17:02:52 2011 -0800 +++ b/jdk/make/common/Program.gmk Wed Jan 19 17:07:51 2011 -0800 @@ -142,10 +142,15 @@ STACK_SIZE=1048576 endif -# In VS2005 or VS2008 the link command creates a .manifest file that we want -# to insert into the linked artifact so we do not need to track it separately. +IMVERSION=$(JDK_MINOR_VERSION).$(JDK_MICRO_VERSION).$(JDK_UPDATE_VER).$(COOKED_BUILD_NUMBER) +$(OBJDIR)/$(PROGRAM).exe.manifest: $(JDK_TOPDIR)/src/windows/resource/java.manifest + @$(prep-target) + $(SED) 's%IMVERSION%$(IMVERSION)%g;s%PROGRAM%$(PROGRAM)%g' $< > $@ + +# We used a hand-crafted manifest file for all executables. +# It is tweaked to embed the build number and executable name. # Use ";#2" for .dll and ";#1" for .exe in the MT command below: -$(OBJDIR)/$(PROGRAM)$(EXE_SUFFIX):: $(OBJDIR)/$(PROGRAM).lcf $(FILES_o) $(JLI_LCF) +$(OBJDIR)/$(PROGRAM)$(EXE_SUFFIX):: $(OBJDIR)/$(PROGRAM).lcf $(FILES_o) $(JLI_LCF) $(OBJDIR)/$(PROGRAM).exe.manifest @$(prep-target) @set -- $?; \ $(ECHO) Rebuilding $@ because of $$1 $$2 $$3 $$4 $$5 $$6 $${7:+...};
--- a/jdk/src/windows/resource/java.manifest Wed Jan 19 17:02:52 2011 -0800 +++ b/jdk/src/windows/resource/java.manifest Wed Jan 19 17:07:51 2011 -0800 @@ -1,12 +1,15 @@ <?xml version="1.0" encoding="UTF-8" standalone="yes"?> -<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> +<assembly xmlns="urn:schemas-microsoft-com:asm.v1" + manifestVersion="1.0" + xmlns:asmv3="urn:schemas-microsoft-com:asm.v3" +> <assemblyIdentity - version="1.0.0.0" + version="IMVERSION" processorArchitecture="X86" name="Oracle Corporation, Java(tm) 2 Standard Edition" type="win32" /> -<description>AWT</description> +<description>Java(TM) SE PROGRAM process</description> <dependency> <dependentAssembly> <assemblyIdentity @@ -19,4 +22,23 @@ /> </dependentAssembly> </dependency> + + <!-- Identify the application security requirements. --> + <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3"> + <security> + <requestedPrivileges> + <requestedExecutionLevel + level="asInvoker" + uiAccess="false"/> + </requestedPrivileges> + </security> + </trustInfo> + + <!-- Indicate JDK is high-dpi aware. --> + <asmv3:application> + <asmv3:windowsSettings xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings"> + <dpiAware>true</dpiAware> + </asmv3:windowsSettings> + </asmv3:application> + </assembly>