< prev index next >

make/copy/CopyCommon.gmk

Print this page




   9 # by Oracle in the LICENSE file that accompanied this code.
  10 #
  11 # This code is distributed in the hope that it will be useful, but WITHOUT
  12 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  13 # FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  14 # version 2 for more details (a copy is included in the LICENSE file that
  15 # accompanied this code).
  16 #
  17 # You should have received a copy of the GNU General Public License version
  18 # 2 along with this work; if not, write to the Free Software Foundation,
  19 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  20 #
  21 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  22 # or visit www.oracle.com if you need additional information or have any
  23 # questions.
  24 #
  25 
  26 LIB_DST_DIR := $(SUPPORT_OUTPUTDIR)/modules_libs/$(MODULE)
  27 CONF_DST_DIR := $(SUPPORT_OUTPUTDIR)/modules_conf/$(MODULE)
  28 LEGAL_DST_DIR := $(SUPPORT_OUTPUTDIR)/modules_legal/$(MODULE)

  29 
  30 ################################################################################
  31 #
  32 # Copy exported include headers files to output directory, if present.
  33 #
  34 
  35 INCLUDE_TARGET_DIR := $(SUPPORT_OUTPUTDIR)/modules_include/$(MODULE)
  36 INCLUDE_SOURCE_DIR := $(TOPDIR)/src/$(MODULE)/share/native/include
  37 
  38 ifneq ($(wildcard $(INCLUDE_SOURCE_DIR)/*), )
  39   $(eval $(call SetupCopyFiles, COPY_EXPORTED_INCLUDE, \
  40       SRC := $(INCLUDE_SOURCE_DIR), \
  41       DEST := $(INCLUDE_TARGET_DIR), \
  42       FILES := $(filter %.h, $(call CacheFind, $(INCLUDE_SOURCE_DIR))), \
  43   ))
  44 
  45   TARGETS += $(COPY_EXPORTED_INCLUDE)
  46 endif
  47 
  48 # Use the most specific of OS and OS_TYPE.
  49 INCLUDE_SOURCE_OS_DIR := $(TOPDIR)/src/$(MODULE)/$(OPENJDK_TARGET_OS)/native/include
  50 ifeq ($(wildcard $(INCLUDE_SOURCE_OS_DIR)/*), )
  51   INCLUDE_SOURCE_OS_DIR := $(TOPDIR)/src/$(MODULE)/$(OPENJDK_TARGET_OS_TYPE)/native/include
  52 endif
  53 
  54 ifneq ($(wildcard $(INCLUDE_SOURCE_OS_DIR)/*), )
  55   $(eval $(call SetupCopyFiles, COPY_EXPORTED_INCLUDE_OS, \
  56       SRC := $(INCLUDE_SOURCE_OS_DIR), \
  57       DEST := $(INCLUDE_TARGET_DIR)/$(OPENJDK_TARGET_OS_INCLUDE_SUBDIR), \
  58       FILES := $(filter %.h, $(call CacheFind, $(INCLUDE_SOURCE_OS_DIR))), \
  59   ))
  60 
  61   TARGETS += $(COPY_EXPORTED_INCLUDE_OS)
  62 endif






















   9 # by Oracle in the LICENSE file that accompanied this code.
  10 #
  11 # This code is distributed in the hope that it will be useful, but WITHOUT
  12 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  13 # FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  14 # version 2 for more details (a copy is included in the LICENSE file that
  15 # accompanied this code).
  16 #
  17 # You should have received a copy of the GNU General Public License version
  18 # 2 along with this work; if not, write to the Free Software Foundation,
  19 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  20 #
  21 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  22 # or visit www.oracle.com if you need additional information or have any
  23 # questions.
  24 #
  25 
  26 LIB_DST_DIR := $(SUPPORT_OUTPUTDIR)/modules_libs/$(MODULE)
  27 CONF_DST_DIR := $(SUPPORT_OUTPUTDIR)/modules_conf/$(MODULE)
  28 LEGAL_DST_DIR := $(SUPPORT_OUTPUTDIR)/modules_legal/$(MODULE)
  29 COMMON_LEGAL_DST_DIR := $(SUPPORT_OUTPUTDIR)/modules_legal/common
  30 
  31 ################################################################################
  32 #
  33 # Copy exported include headers files to output directory, if present.
  34 #
  35 
  36 INCLUDE_TARGET_DIR := $(SUPPORT_OUTPUTDIR)/modules_include/$(MODULE)
  37 INCLUDE_SOURCE_DIR := $(TOPDIR)/src/$(MODULE)/share/native/include
  38 
  39 ifneq ($(wildcard $(INCLUDE_SOURCE_DIR)/*), )
  40   $(eval $(call SetupCopyFiles, COPY_EXPORTED_INCLUDE, \
  41       SRC := $(INCLUDE_SOURCE_DIR), \
  42       DEST := $(INCLUDE_TARGET_DIR), \
  43       FILES := $(filter %.h, $(call CacheFind, $(INCLUDE_SOURCE_DIR))), \
  44   ))
  45 
  46   TARGETS += $(COPY_EXPORTED_INCLUDE)
  47 endif
  48 
  49 # Use the most specific of OS and OS_TYPE.
  50 INCLUDE_SOURCE_OS_DIR := $(TOPDIR)/src/$(MODULE)/$(OPENJDK_TARGET_OS)/native/include
  51 ifeq ($(wildcard $(INCLUDE_SOURCE_OS_DIR)/*), )
  52   INCLUDE_SOURCE_OS_DIR := $(TOPDIR)/src/$(MODULE)/$(OPENJDK_TARGET_OS_TYPE)/native/include
  53 endif
  54 
  55 ifneq ($(wildcard $(INCLUDE_SOURCE_OS_DIR)/*), )
  56   $(eval $(call SetupCopyFiles, COPY_EXPORTED_INCLUDE_OS, \
  57       SRC := $(INCLUDE_SOURCE_OS_DIR), \
  58       DEST := $(INCLUDE_TARGET_DIR)/$(OPENJDK_TARGET_OS_INCLUDE_SUBDIR), \
  59       FILES := $(filter %.h, $(call CacheFind, $(INCLUDE_SOURCE_OS_DIR))), \
  60   ))
  61 
  62   TARGETS += $(COPY_EXPORTED_INCLUDE_OS)
  63 endif
  64 
  65 ################################################################################
  66 # Setup make rules for copying legal files. This is only needed if the files
  67 # need to be filtered due to optional components being enabled/disabled.
  68 # Otherwise CreateJmods.gmk will find the legal files in the original src dirs.
  69 #
  70 # Parameter 1 is the name of the rule.
  71 #
  72 # Remaining parameters are named arguments. These include:
  73 #   EXCLUDES : List of filenames to exclude from copy
  74 SetupCopyLegalFiles = $(NamedParamsMacroTemplate)
  75 define SetupCopyLegalFilesBody
  76   $$(eval $$(call SetupCopyFiles, $1, \
  77       SRC := $$(CUSTOM_ROOT), \
  78       DEST := $$(LEGAL_DST_DIR), \
  79       FILES := $$(filter-out $$(addprefix %/, $$($1_EXCLUDES)), \
  80           $$(wildcard $$(addsuffix /*, $$(call FindModuleLegalSrcDirs, $$(MODULE))))), \
  81       FLATTEN := true, \
  82   ))
  83 endef
< prev index next >