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 # |