make/common/JdkNativeCompilation.gmk
branchihse-jdk-library-branch
changeset 56519 1b154e6d8bb2
parent 56517 cb0f21f5f307
child 56520 e9a717e79a59
equal deleted inserted replaced
56518:e3340e2f594f 56519:1b154e6d8bb2
    47       $(TOPDIR)/src/$(strip $1)/$(OPENJDK_TARGET_OS_TYPE)/native/$(strip $2) \
    47       $(TOPDIR)/src/$(strip $1)/$(OPENJDK_TARGET_OS_TYPE)/native/$(strip $2) \
    48       $(TOPDIR)/src/$(strip $1)/share/native/$(strip $2)))
    48       $(TOPDIR)/src/$(strip $1)/share/native/$(strip $2)))
    49 
    49 
    50 FindHeaderDirForModule = \
    50 FindHeaderDirForModule = \
    51   $(wildcard $(SUPPORT_OUTPUTDIR)/headers/$(strip $1))
    51   $(wildcard $(SUPPORT_OUTPUTDIR)/headers/$(strip $1))
       
    52 
       
    53 ProcessDir = \
       
    54   $(if $(findstring :, $1), \
       
    55     $(call FindSrcDirsForComponent, $(firstword $(subst :, , $1)), $(lastword $(subst :, , $1))) \
       
    56   , \
       
    57     $(if $(filter /%, $1), \
       
    58       $1 \
       
    59     , \
       
    60       $(call FindSrcDirsForComponent, $(MODULE), $1) \
       
    61     ) \
       
    62   )
    52 
    63 
    53 # Setup make rules for creating a native shared library with suitable defaults
    64 # Setup make rules for creating a native shared library with suitable defaults
    54 # for the OpenJDK project.
    65 # for the OpenJDK project.
    55 #
    66 #
    56 # Parameter 1 is the name of the rule. This name is used as variable prefix,
    67 # Parameter 1 is the name of the rule. This name is used as variable prefix,
   102   ifneq ($$($1_HEADERS_FROM_SRC), false)
   113   ifneq ($$($1_HEADERS_FROM_SRC), false)
   103     $1_SRC_HEADER_FLAGS := $$(foreach dir, $$(wildcard $$($1_SRC) $$($1_EXTRA_SRC) \
   114     $1_SRC_HEADER_FLAGS := $$(foreach dir, $$(wildcard $$($1_SRC) $$($1_EXTRA_SRC) \
   104         $$(call FindHeaderDirForModule, $$(MODULE))), -I$$(dir))
   115         $$(call FindHeaderDirForModule, $$(MODULE))), -I$$(dir))
   105   endif
   116   endif
   106   ifneq ($$($1_EXTRA_HEADER_DIRS), )
   117   ifneq ($$($1_EXTRA_HEADER_DIRS), )
   107     $1_EXTRA_HEADER_FLAGS := $$(foreach dir, $$($1_EXTRA_HEADER_DIRS), -I$$(dir))
   118     $1_PROCESSED_EXTRA_HEADER_DIRS :=  $$(foreach dir, $$($1_EXTRA_HEADER_DIRS), $$(call ProcessDir, $$(dir)))
       
   119     $1_EXTRA_HEADER_FLAGS := $$(foreach dir, $$($1_PROCESSED_EXTRA_HEADER_DIRS), -I$$(dir))
   108   endif
   120   endif
   109 
   121 
   110   ifneq ($$($1_CFLAGS), )
   122   ifneq ($$($1_CFLAGS), )
   111     $1_CFLAGS += $$($1_SRC_HEADER_FLAGS) $$($1_EXTRA_HEADER_FLAGS)
   123     $1_CFLAGS += $$($1_SRC_HEADER_FLAGS) $$($1_EXTRA_HEADER_FLAGS)
   112   endif
   124   endif