make/common/Modules.gmk

Print this page




 116         $(process-doc-file)
 117 endif
 118 
 119 # JDK files
 120 $(JDK_MODULE_IMAGE_DIR)/%: $(SHARE_JDK_DOC_SRC)/%
 121         $(process-doc-file)
 122 
 123 
 124 # JRE files
 125 $(JRE_MODULE_IMAGE_DIR)/%: $(SHARE_JRE_DOC_SRC)/%
 126         $(process-doc-file)
 127 
 128 ifeq ($(PLATFORM), windows)
 129 $(JRE_BASE_IMAGE_DIR)/README.txt: $(SHARE_JRE_DOC_SRC)/README
 130         $(process-doc-file)
 131 $(JRE_MODULE_IMAGE_DIR)/README.txt: $(SHARE_JRE_DOC_SRC)/README
 132         $(process-doc-file)
 133 endif
 134 
 135 #








 136 # Create a module library for the specified image location
 137 define create-module-library
 138 image=$(strip $1); \
 139 mlib=$(MODULE_IMAGES_DIR)/$$image/lib/modules; \



 140 $(ECHO) "Creating module library $$mlib" ; \
 141 $(HOST_JMOD_CMD) create -N $(JMOD_CREATE_ARGS) -L $$mlib

 142 endef
 143 
 144 # Copy module content to the module image
 145 #   $1 - image location
 146 #   $2 - module name
 147 #
 148 define copy-module-content
 149 image=$(strip $1); m=$(strip $2); \
 150 javahome=$(MODULE_IMAGES_DIR)/$$image; \
 151 for d in bin lib ; do \
 152    if [ -d $$m/$$d ] ; then \
 153        $(CP) -rf $(ABS_MODULEPATH_DIR)/$$m/$$d $$javahome; \
 154    fi ; \
 155 done 







 156 endef
 157 
 158 #
 159 # Copy JRE image to the dest
 160 # $1 - jre image location
 161 # $2 - dest location
 162 #
 163 # Shall investigate if we can eliminate the dependency on this special
 164 # copy of the lib/dll files.
 165 # Probably better to copy these files to part of the jdk.base.tools module
 166 # Also, need to copy jawt.lib. 
 167 # 
 168 # Should *_SUFFIX variable either have "." or not dot?
 169 #
 170 define copy-jre-image
 171 from=$(strip $1); dest=$(strip $2); \
 172 ($(CD) $(MODULE_IMAGES_DIR)/$$from && $(FIND) . -depth -print \
 173               | $(CPIO) -pdum $(MODULE_IMAGES_DIR)/$$dest) ; \
 174 if [ -d "$(ABS_MODULEPATH_DIR)/jdk.base/include" ] ; then \
 175    $(CP) -rf $(ABS_MODULEPATH_DIR)/jdk.base/include $(MODULE_IMAGES_DIR)/$$dest; \
 176 fi
 177 endef
 178 
 179 #
 180 # Install jigsaw module 

 181 #   $1 - image location
 182 #   $2 - module name
 183 define install-jigsaw-module
 184 image=$(strip $1); m=$(strip $2); \
 185 mlib=$(MODULE_IMAGES_DIR)/$$image/lib/modules; \
 186 mid=`$(HOST_JMOD_CMD) ls -L $$mlib $$m | $(GREP) -v '#'` ; \

 187 if [ "x$$mid" = "x" ] ; then \
 188    $(ECHO) "Installing module $$m in $$image" ; \
 189    $(CD) $(ABS_MODULEPATH_DIR) && \
 190    if [ -d $$m/resources ] ; then \
 191       $(HOST_JMOD_CMD) install $$m/classes -r $$m/resources -L $$mlib $(JMOD_INSTALL_ARGS) $$m || exit 1; \

 192    else \

 193       $(HOST_JMOD_CMD) install $$m/classes -L $$mlib $(JMOD_INSTALL_ARGS) $$m || exit 1; \
 194    fi ; \
 195    $(call copy-module-content,$1,$2) ; \

 196 else \
 197    $(ECHO) "Module $$m already installed in $$image" ; \
 198 fi
 199 endef
 200 
 201 
 202 # Rules for building packages
 203 include $(BUILDDIR)/common/BuildNativePackages.gmk
 204 
 205 # set BUILD_PACKAGES=false to skip building jmod packages
 206 # 
 207 PKG_TYPES = jmod-pkgs
 208 ifeq ($(BUILD_PACKAGES), false)
 209   PKG_TYPES =
 210 endif
 211 
 212 DEBIAN := $(shell \
 213                if [ -f /etc/debian_version ] ; then \
 214                   $(ECHO) true; \
 215                else \
 216                   $(ECHO) false; \
 217                fi)
 218 
 219 # FIXME: turn on building debian packages by default once
 220 #        the debian-related issues are fixed (e.g. views, version).
 221 #




 116         $(process-doc-file)
 117 endif
 118 
 119 # JDK files
 120 $(JDK_MODULE_IMAGE_DIR)/%: $(SHARE_JDK_DOC_SRC)/%
 121         $(process-doc-file)
 122 
 123 
 124 # JRE files
 125 $(JRE_MODULE_IMAGE_DIR)/%: $(SHARE_JRE_DOC_SRC)/%
 126         $(process-doc-file)
 127 
 128 ifeq ($(PLATFORM), windows)
 129 $(JRE_BASE_IMAGE_DIR)/README.txt: $(SHARE_JRE_DOC_SRC)/README
 130         $(process-doc-file)
 131 $(JRE_MODULE_IMAGE_DIR)/README.txt: $(SHARE_JRE_DOC_SRC)/README
 132         $(process-doc-file)
 133 endif
 134 
 135 #
 136 # On Windows dll's are installed into the same direcory as native cmds
 137 ifeq ($(PLATFORM), windows)
 138     NATLIBS_DIR=bin
 139 else
 140     NATLIBS_DIR=lib/$(LIBARCH)
 141 endif
 142 
 143 #
 144 # Create a module library for the specified image location
 145 define create-module-library
 146 image=$(strip $1); \
 147 mlib=$(MODULE_IMAGES_DIR)/$$image/lib/modules; \
 148 natlib=$(MODULE_IMAGES_DIR)/$$image/$(NATLIBS_DIR); \
 149 natcmd=$(MODULE_IMAGES_DIR)/$$image/bin; \
 150 config=$(MODULE_IMAGES_DIR)/$$image/lib; \
 151 $(ECHO) "Creating module library $$mlib" ; \
 152 $(HOST_JMOD_CMD) create -N $(JMOD_CREATE_ARGS) -L $$mlib \
 153        --natlib $$natlib --natcmd $$natcmd --config $$config
 154 endef
 155 
 156 # Copy module content to the module image
 157 #   $1 - image location
 158 #   $2 - module name
 159 #
 160 define copy-module-content
 161 image=$(strip $1); m=$(strip $2); \
 162 javahome=$(MODULE_IMAGES_DIR)/$$image; \
 163 natlib=$(MODULE_IMAGES_DIR)/$$image/$(NATLIBS_DIR); \
 164 natcmd=$(MODULE_IMAGES_DIR)/$$image/bin; \
 165 config=$(MODULE_IMAGES_DIR)/$$image/lib; \
 166 if [ -d $$m/bin ] ; then \
 167     $(CP) -rf $(ABS_MODULEPATH_DIR)/$$m/bin/* $$natcmd; \
 168 fi ; \
 169 if [ -d $$m/lib ] ; then \
 170     $(CP) -rf $(ABS_MODULEPATH_DIR)/$$m/lib/* $$natlib; \
 171 fi ; \
 172 if [ -d $$m/etc ] ; then \
 173     $(CP) -rf $(ABS_MODULEPATH_DIR)/$$m/etc/* $$config; \
 174 fi
 175 endef
 176 
 177 #
 178 # Copy JRE image to the dest
 179 # $1 - jre image location
 180 # $2 - dest location
 181 #
 182 # Shall investigate if we can eliminate the dependency on this special
 183 # copy of the lib/dll files.
 184 # Probably better to copy these files to part of the jdk.base.tools module
 185 # Also, need to copy jawt.lib.
 186 #
 187 # Should *_SUFFIX variable either have "." or not dot?
 188 #
 189 define copy-jre-image
 190 from=$(strip $1); dest=$(strip $2); \
 191 ($(CD) $(MODULE_IMAGES_DIR)/$$from && $(FIND) . -depth -print \
 192               | $(CPIO) -pdum $(MODULE_IMAGES_DIR)/$$dest) ; \
 193 if [ -d "$(ABS_MODULEPATH_DIR)/jdk.base/include" ] ; then \
 194    $(CP) -rf $(ABS_MODULEPATH_DIR)/jdk.base/include $(MODULE_IMAGES_DIR)/$$dest; \
 195 fi
 196 endef
 197 
 198 #
 199 # Install jigsaw module
 200 # Install from the jmod file, if it has been created (see BUILD_PACKAGES)
 201 #   $1 - image location
 202 #   $2 - module name
 203 define install-jigsaw-module
 204 image=$(strip $1); m=$(strip $2); \
 205 mlib=$(MODULE_IMAGES_DIR)/$$image/lib/modules; \
 206 mid=`$(HOST_JMOD_CMD) ls -L $$mlib $$m | $(GREP) -v '#'` ; \
 207 jmodfile=$(ABS_OUTPUTDIR)/jigsaw-pkgs/jmod/$$m@$(MODULE_VERSION).jmod ; \
 208 if [ "x$$mid" = "x" ] ; then \

 209    $(CD) $(ABS_MODULEPATH_DIR) && \
 210    if [ -f $$jmodfile ] ; then \
 211       $(ECHO) "Installing module $$m in $$image, from $$jmodfile" ; \
 212       $(HOST_JMOD_CMD) install $$jmodfile -L $$mlib || exit 1; \
 213    else \
 214       $(ECHO) "Installing module $$m in $$image, from $$m/classes and copy" ; \
 215       $(HOST_JMOD_CMD) install $$m/classes -L $$mlib $(JMOD_INSTALL_ARGS) $$m || exit 1; \

 216       $(call copy-module-content,$1,$2) ; \
 217    fi ; \
 218 else \
 219    $(ECHO) "Module $$m already installed in $$image" ; \
 220 fi
 221 endef
 222 

 223 # Rules for building packages
 224 include $(BUILDDIR)/common/BuildNativePackages.gmk
 225 
 226 # set BUILD_PACKAGES=false to skip building jmod packages
 227 #
 228 PKG_TYPES = jmod-pkgs
 229 ifeq ($(BUILD_PACKAGES), false)
 230   PKG_TYPES =
 231 endif
 232 
 233 DEBIAN := $(shell \
 234                if [ -f /etc/debian_version ] ; then \
 235                   $(ECHO) true; \
 236                else \
 237                   $(ECHO) false; \
 238                fi)
 239 
 240 # FIXME: turn on building debian packages by default once
 241 #        the debian-related issues are fixed (e.g. views, version).
 242 #