LIB_SYMLINK = lib32
endif
+# Populating the staging with the base directories is handled by the skeleton package
$(STAGING_DIR):
- @mkdir -p $(STAGING_DIR)/bin
- @mkdir -p $(STAGING_DIR)/lib
- @ln -snf lib $(STAGING_DIR)/$(LIB_SYMLINK)
- @mkdir -p $(STAGING_DIR)/usr/lib
- @ln -snf lib $(STAGING_DIR)/usr/$(LIB_SYMLINK)
- @mkdir -p $(STAGING_DIR)/usr/include
- @mkdir -p $(STAGING_DIR)/usr/bin
+ @mkdir -p $(STAGING_DIR)
@ln -snf $(STAGING_DIR) $(BASE_DIR)/staging
RSYNC_VCS_EXCLUSIONS = \
# on skeleton.
SKELETON_ADD_TOOLCHAIN_DEPENDENCY = NO
+# The skeleton also handles the merged /usr case in the sysroot
+SKELETON_INSTALL_STAGING = YES
+
ifeq ($(BR2_ROOTFS_SKELETON_CUSTOM),y)
SKELETON_PATH = $(call qstrip,$(BR2_ROOTFS_SKELETON_CUSTOM_PATH))
$(TARGET_DIR_WARNING_FILE)
endef
+# For the staging dir, we don't really care about /bin and /sbin.
+# But for consistency with the target dir, and to simplify the code,
+# we still handle them for the merged or non-merged /usr cases.
+# Since the toolchain is not yet available, the staging is not yet
+# populated, so we need to create the directories in /usr
+define SKELETON_INSTALL_STAGING_CMDS
+ $(INSTALL) -d -m 0755 $(STAGING_DIR)/usr/lib
+ $(INSTALL) -d -m 0755 $(STAGING_DIR)/usr/bin
+ $(INSTALL) -d -m 0755 $(STAGING_DIR)/usr/sbin
+ $(INSTALL) -d -m 0755 $(STAGING_DIR)/usr/include
+ $(call SKELETON_USR_SYMLINKS_OR_DIRS,$(STAGING_DIR))
+ ln -snf lib $(STAGING_DIR)/$(LIB_SYMLINK)
+ ln -snf lib $(STAGING_DIR)/usr/$(LIB_SYMLINK)
+endef
+
SKELETON_TARGET_GENERIC_HOSTNAME = $(call qstrip,$(BR2_TARGET_GENERIC_HOSTNAME))
SKELETON_TARGET_GENERIC_ISSUE = $(call qstrip,$(BR2_TARGET_GENERIC_ISSUE))
SKELETON_TARGET_GENERIC_ROOT_PASSWD = $(call qstrip,$(BR2_TARGET_GENERIC_ROOT_PASSWD))