make/common/Modules.gmk

Print this page

        

@@ -136,11 +136,11 @@
 # Create a module library for the specified image location
 define create-module-library
 image=$(strip $1); \
 mlib=$(MODULE_IMAGES_DIR)/$$image/lib/modules; \
 $(ECHO) "Creating module library $$mlib" ; \
-$(HOST_JMOD_CMD) create -N $(JMOD_CREATE_ARGS) -L $$mlib
+$(HOST_JMOD_CMD) create -N $(JMOD_CREATE_ARGS) -L $$mlib --natlib $$mlib/.. --natcmd $$mlib/../../bin --config $$mlib/..
 endef
 
 # Copy module content to the module image
 #   $1 - image location
 #   $2 - module name

@@ -176,25 +176,28 @@
 fi
 endef
 
 #
 # Install jigsaw module 
+# Install from the jmod file, if it has been created (see BUILD_PACKAGES)
 #   $1 - image location
 #   $2 - module name
 define install-jigsaw-module
 image=$(strip $1); m=$(strip $2); \
 mlib=$(MODULE_IMAGES_DIR)/$$image/lib/modules; \
 mid=`$(HOST_JMOD_CMD) ls -L $$mlib $$m | $(GREP) -v '#'` ; \
+jmodfile=$(ABS_OUTPUTDIR)/jigsaw-pkgs/jmod/$$m@$(MODULE_VERSION).jmod ; \
 if [ "x$$mid" = "x" ] ; then \
-   $(ECHO) "Installing module $$m in $$image" ; \
    $(CD) $(ABS_MODULEPATH_DIR) && \
-   if [ -d $$m/resources ] ; then \
-      $(HOST_JMOD_CMD) install $$m/classes -r $$m/resources -L $$mlib $(JMOD_INSTALL_ARGS) $$m || exit 1; \
+   if [ -f $$jmodfile ] ; then \
+      $(ECHO) "Installing module $$m in $$image, from $$jmodfile" ; \
+      $(HOST_JMOD_CMD) install $$jmodfile -L $$mlib || exit 1; \
    else \
+      $(ECHO) "Installing module $$m in $$image, from $$m/classes and copy" ; \
       $(HOST_JMOD_CMD) install $$m/classes -L $$mlib $(JMOD_INSTALL_ARGS) $$m || exit 1; \
-   fi ; \
    $(call copy-module-content,$1,$2) ; \
+   fi ; \
 else \
    $(ECHO) "Module $$m already installed in $$image" ; \
 fi
 endef