summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAbdoulaye Walsimou Gaye <walsimou@walsimou.com>2009-09-12 16:30:01 +0200
committerAbdoulaye Walsimou Gaye <walsimou@walsimou.com>2009-09-12 16:30:01 +0200
commitab2a3710c50b28d11bd57ae00eab283cbab65d8c (patch)
tree9249d9ca5e4e538e75debfb31e94a4e9d340bb37
parent1c839350aff446ac3065552a0c00f4b981cfd120 (diff)
downloadembtoolkit-ab2a3710c50b28d11bd57ae00eab283cbab65d8c.tar.gz
embtoolkit-ab2a3710c50b28d11bd57ae00eab283cbab65d8c.tar.bz2
embtoolkit-ab2a3710c50b28d11bd57ae00eab283cbab65d8c.tar.xz
Conformance to filesystem hierarchy standard
Signed-off-by: Abdoulaye Walsimou Gaye <walsimou@walsimou.com>
-rw-r--r--mk/gcc.mk12
-rw-r--r--mk/initialpath.mk15
-rw-r--r--mk/rootfs.mk43
3 files changed, 44 insertions, 26 deletions
diff --git a/mk/gcc.mk b/mk/gcc.mk
index 6319540..91d59d4 100644
--- a/mk/gcc.mk
+++ b/mk/gcc.mk
@@ -123,12 +123,14 @@ $(GCC2_BUILD_DIR)/.configured:
$(GCC3_BUILD_DIR)/.installed: $(GCC3_BUILD_DIR)/.configured
PATH=$(PATH):$(TOOLS)/bin/ $(MAKE) -C $(GCC3_BUILD_DIR) $(J)
PATH=$(PATH):$(TOOLS)/bin/ $(MAKE) -C $(GCC3_BUILD_DIR) install
-ifeq ($(CONFIG_EMBTK_TARGET_ARCH_64BITS),y)
- cp -d $(TOOLS)/$(STRICT_GNU_TARGET)/lib64/*.so* $(SYSROOT)/lib64
-else
- cp -d $(TOOLS)/$(STRICT_GNU_TARGET)/lib/*.so* $(SYSROOT)/lib
- @touch $@
+ifeq ($(CONFIG_EMBTK_32BITS_FS),y)
+ -cp -d $(TOOLS)/$(STRICT_GNU_TARGET)/lib/*.so* $(SYSROOT)/lib/
+else ifeq ($(CONFIG_EMBTK_64BITS_FS),y)
+ cp -d $(TOOLS)/$(STRICT_GNU_TARGET)/lib64/*.so* $(SYSROOT)/lib/
+else ifeq ($(CONFIG_EMBTK_64BITS_FS_COMPAT32),y)
+ cp -d $(TOOLS)/$(STRICT_GNU_TARGET)/lib32/*.so* $(SYSROOT)/lib32/
endif
+ @touch $@
$(GCC3_BUILD_DIR)/.configured:
$(call CONFIGURE_MESSAGE,gcc-$(GCC_VERSION))
diff --git a/mk/initialpath.mk b/mk/initialpath.mk
index 4976052..bab8c4a 100644
--- a/mk/initialpath.mk
+++ b/mk/initialpath.mk
@@ -34,9 +34,24 @@ export SYSROOT TOOLS TOOLS_BUILD PACKAGES_BUILD ROOTFS HOSTTOOLS
mkinitialpath:
@mkdir -p $(SYSROOT)
+ @mkdir -p $(SYSROOT)/lib
@mkdir -p $(SYSROOT)/usr
@mkdir -p $(SYSROOT)/root
@mkdir -p $(SYSROOT)/usr/lib
+ifeq ($(CONFIG_EMBTK_64BITS_FS),y)
+ @cd $(SYSROOT); \
+ ln -s lib lib64
+ @cd $(SYSROOT)/usr; \
+ ln -s lib lib64
+endif
+ifeq ($(CONFIG_EMBTK_64BITS_FS_COMPAT32),y)
+ @cd $(SYSROOT); \
+ ln -s lib lib64; \
+ mkdir -p lib32
+ @cd $(SYSROOT)/usr; \
+ ln -s lib lib64; \
+ mkdir -p lib32
+endif
@mkdir -p $(TOOLS)
@mkdir -p $(TOOLS_BUILD)
@mkdir -p $(HOSTTOOLS)
diff --git a/mk/rootfs.mk b/mk/rootfs.mk
index 6e0cda1..bb8c3e1 100644
--- a/mk/rootfs.mk
+++ b/mk/rootfs.mk
@@ -56,44 +56,45 @@ endif
rootfs_build:
$(call EMBTK_GENERIC_MESSAGE,"Building selected root filesystems...")
- @$(MAKE) rootfs_clean mkinitialpath $(ROOTFS_HOSTTOOLS) \
+ @$(MAKE) rootfs_clean mkinitialrootfs $(ROOTFS_HOSTTOOLS) \
$(ROOTFS_COMPONENTS) rootfs_fill build_tarbz2_rootfs $(FILESYSTEMS)
$(call EMBTK_GENERIC_MESSAGE,"Build of selected root filesystems \
ended successfully!")
rootfs_fill:
-ifeq ($(CONFIG_EMBTK_TARGET_ARCH_64BITS),y)
- @mkdir -p $(ROOTFS)/lib64
- @mkdir -p $(ROOTFS)/usr/lib64
- @rm -rf $(ROOTFS)/lib $(ROOTFS)/usr/lib
- @cp -R $(SYSROOT)/lib64/* $(ROOTFS)/lib64/
- @-cp -R $(SYSROOT)/usr/bin/* $(ROOTFS)/usr/bin/
- @-cp -R $(SYSROOT)/usr/sbin/* $(ROOTFS)/usr/sbin/
- @cp -R $(SYSROOT)/root $(ROOTFS)/
-ifeq ($(CONFIG_EMBTK_TARGET_STRIPPED),y)
- $(call EMBTK_GENERIC_MESSAGE,"Stripping binaries as specified...")
- @-$(TARGETSTRIP) $(ROOTFS)/lib64/*.so
- @-$(TARGETSTRIP) $(ROOTFS)/bin/*
- @-$(TARGETSTRIP) $(ROOTFS)/usr/bin/*
- @$(TARGETSTRIP) $(ROOTFS)/usr/sbin/*
-endif
-
-else
@mkdir -p $(ROOTFS)/lib
- @cp -R $(SYSROOT)/lib/* $(ROOTFS)/lib/
+ifeq ($(CONFIG_EMBTK_64BITS_FS),y)
+ @cd $(ROOTFS); \
+ ln -s lib lib64
+endif
+ifeq ($(CONFIG_EMBTK_64BITS_FS_COMPAT32),y)
+ @cd $(ROOTFS); \
+ ln -s lib lib64; \
+ mkdir -p lib32
+endif
+ @-cp -R $(SYSROOT)/lib/* $(ROOTFS)/lib/
+ifeq ($(CONFIG_EMBTK_64BITS_FS_COMPAT32),y)
+ @cp -R $(SYSROOT)/lib32/* $(ROOTFS)/lib32/
+endif
@-cp -R $(SYSROOT)/usr/bin/* $(ROOTFS)/usr/bin/
@-cp -R $(SYSROOT)/usr/sbin/* $(ROOTFS)/usr/sbin/
@cp -R $(SYSROOT)/root $(ROOTFS)/
ifeq ($(CONFIG_EMBTK_TARGET_STRIPPED),y)
$(call EMBTK_GENERIC_MESSAGE,"Stripping binaries as specified...")
@-$(TARGETSTRIP) $(ROOTFS)/lib/*.so
+ifeq ($(CONFIG_EMBTK_64BITS_FS_COMPAT32),y)
+ @-$(TARGETSTRIP) $(ROOTFS)/lib32/*.so
+endif
@-$(TARGETSTRIP) $(ROOTFS)/bin/*
+ @-$(TARGETSTRIP) $(ROOTFS)/sbin/*
@-$(TARGETSTRIP) $(ROOTFS)/usr/bin/*
@-$(TARGETSTRIP) $(ROOTFS)/usr/sbin/*
endif
-endif
-
+mkinitialrootfs:
+ @mkdir -p $(ROOTFS)
+ @cp -Rp $(EMBTK_ROOT)/src/target_skeleton/* $(ROOTFS)/
+ @mkdir -p $(PACKAGES_BUILD)
rootfs_clean: $(ROOTFS_HOSTTOOLS_CLEAN) $(ROOTFS_COMPONENTS_CLEAN)
@rm -rf $(EMBTK_ROOT)/rootfs-$(GNU_TARGET)-$(EMBTK_MCU_FLAG)*