< prev index next >

make/modules/java.base/gensrc/GensrcMisc.gmk

Print this page
8248238: Adding Windows support to OpenJDK on AArch64

Summary: Adding Windows support for AArch64

Contributed-by: Ludovic Henry <luhenry@microsoft.com>, Monica Beckwith <monica.beckwith@microsoft.com>
Reviewed-by:


  43         @@VERSION_CLASSFILE_MAJOR@@ => $(VERSION_CLASSFILE_MAJOR) ; \
  44         @@VERSION_CLASSFILE_MINOR@@ => $(VERSION_CLASSFILE_MINOR) ; \
  45         @@VERSION_SPECIFICATION@@ => $(VERSION_SPECIFICATION) ; \
  46         @@VENDOR_VERSION_STRING@@ => $(VENDOR_VERSION_STRING) ; \
  47         @@VENDOR@@ => $(COMPANY_NAME) ; \
  48         @@VENDOR_URL@@ => $(VENDOR_URL) ; \
  49         @@VENDOR_URL_BUG@@ => $(VENDOR_URL_BUG) ; \
  50         @@VENDOR_URL_VM_BUG@@ => $(VENDOR_URL_VM_BUG), \
  51 ))
  52 
  53 TARGETS += $(BUILD_VERSION_JAVA)
  54 
  55 ################################################################################
  56 
  57 ifneq ($(filter $(TOOLCHAIN_TYPE), gcc clang), )
  58   # Need to specify language since the template file has a non standard
  59   # extension.
  60   CPP_FLAGS += -x c
  61 else ifeq ($(TOOLCHAIN_TYPE), microsoft)
  62   CPP_FLAGS += -nologo




  63 endif
  64 
  65 # Generate a java source file from a template through the C preprocessor for the
  66 # target system. First extract the copyright notice at the start of the file.
  67 # Run the preprocessor. Filter out the default compiler stderr output on
  68 # Windows. Filter out all the header files output. Remove all "PREFIX_" strings
  69 # that were added to variable references in the template files to avoid being
  70 # matched by the preprocessor. Remove any #line directives left by the
  71 # preprocessor.
  72 define generate-preproc-src
  73         $(call MakeDir, $(@D))
  74         $(call ExecuteWithLog, $(SUPPORT_OUTPUTDIR)/gensrc/java.base/_$(@F), \
  75             ( $(NAWK) '/@@END_COPYRIGHT@@/{exit}1' $< && \
  76               $(CPP) $(CPP_FLAGS) $(SYSROOT_CFLAGS) $(CFLAGS_JDKLIB) $< \
  77                   2> >($(GREP) -v '^$(<F)$$' >&2) \
  78                   | $(NAWK) '/@@START_HERE@@/,0' \
  79                   |  $(SED) -e 's/@@START_HERE@@/\/\/ AUTOMATICALLY GENERATED FILE - DO NOT EDIT/' \
  80                   -e 's/PREFIX_//' -e 's/^#.*//' \
  81             ) > $@ \
  82         )
  83 endef
  84 
  85 GENSRC_SOR_FILE += $(SUPPORT_OUTPUTDIR)/gensrc/java.base/sun/nio/ch/SocketOptionRegistry.java
  86 
  87 $(GENSRC_SOR_FILE): \
  88     $(TOPDIR)/src/java.base/share/classes/sun/nio/ch/SocketOptionRegistry.java.template
  89         $(generate-preproc-src)
  90 
  91 TARGETS += $(GENSRC_SOR_FILE)
  92 
  93 ################################################################################
  94 
  95 ifeq ($(call isTargetOs, windows), false)
  96 




  43         @@VERSION_CLASSFILE_MAJOR@@ => $(VERSION_CLASSFILE_MAJOR) ; \
  44         @@VERSION_CLASSFILE_MINOR@@ => $(VERSION_CLASSFILE_MINOR) ; \
  45         @@VERSION_SPECIFICATION@@ => $(VERSION_SPECIFICATION) ; \
  46         @@VENDOR_VERSION_STRING@@ => $(VENDOR_VERSION_STRING) ; \
  47         @@VENDOR@@ => $(COMPANY_NAME) ; \
  48         @@VENDOR_URL@@ => $(VENDOR_URL) ; \
  49         @@VENDOR_URL_BUG@@ => $(VENDOR_URL_BUG) ; \
  50         @@VENDOR_URL_VM_BUG@@ => $(VENDOR_URL_VM_BUG), \
  51 ))
  52 
  53 TARGETS += $(BUILD_VERSION_JAVA)
  54 
  55 ################################################################################
  56 
  57 ifneq ($(filter $(TOOLCHAIN_TYPE), gcc clang), )
  58   # Need to specify language since the template file has a non standard
  59   # extension.
  60   CPP_FLAGS += -x c
  61 else ifeq ($(TOOLCHAIN_TYPE), microsoft)
  62   CPP_FLAGS += -nologo
  63 
  64   # cl.exe does only recognize few file extensions as valid (ex: .c, .h, .cpp), so
  65   # make sure *.java.template files are recognized as valid input files
  66   CPP_FILEPREFIX = /Tc
  67 endif
  68 
  69 # Generate a java source file from a template through the C preprocessor for the
  70 # target system. First extract the copyright notice at the start of the file.
  71 # Run the preprocessor. Filter out the default compiler stderr output on
  72 # Windows. Filter out all the header files output. Remove all "PREFIX_" strings
  73 # that were added to variable references in the template files to avoid being
  74 # matched by the preprocessor. Remove any #line directives left by the
  75 # preprocessor.
  76 define generate-preproc-src
  77         $(call MakeDir, $(@D))
  78         $(call ExecuteWithLog, $(SUPPORT_OUTPUTDIR)/gensrc/java.base/_$(@F), \
  79             ( $(NAWK) '/@@END_COPYRIGHT@@/{exit}1' $< && \
  80               $(CPP) $(CPP_FLAGS) $(SYSROOT_CFLAGS) $(CFLAGS_JDKLIB) $(CPP_FILEPREFIX) $< \
  81                   2> >($(GREP) -v '^$(<F)$$' >&2) \
  82                   | $(NAWK) '/@@START_HERE@@/,0' \
  83                   |  $(SED) -e 's/@@START_HERE@@/\/\/ AUTOMATICALLY GENERATED FILE - DO NOT EDIT/' \
  84                   -e 's/PREFIX_//' -e 's/^#.*//' \
  85             ) > $@ \
  86         )
  87 endef
  88 
  89 GENSRC_SOR_FILE += $(SUPPORT_OUTPUTDIR)/gensrc/java.base/sun/nio/ch/SocketOptionRegistry.java
  90 
  91 $(GENSRC_SOR_FILE): \
  92     $(TOPDIR)/src/java.base/share/classes/sun/nio/ch/SocketOptionRegistry.java.template
  93         $(generate-preproc-src)
  94 
  95 TARGETS += $(GENSRC_SOR_FILE)
  96 
  97 ################################################################################
  98 
  99 ifeq ($(call isTargetOs, windows), false)
 100 


< prev index next >