summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile3
-rw-r--r--mk/rootfs.mk48
2 files changed, 50 insertions, 1 deletions
diff --git a/Makefile b/Makefile
index ecdfc3f..524f93d 100644
--- a/Makefile
+++ b/Makefile
@@ -91,11 +91,12 @@ clean: rmallpath
$(Q)$(MAKE) -f scripts/Makefile.clean obj=scripts/basic
$(Q)rm -rf .config kbuild.log
-startbuild: buildtoolchain
+startbuild: buildtoolchain rootfs_build
include mk/macros.mk
include mk/target-mcu.mk
include mk/initialpath.mk
include mk/toolchain.mk
include mk/packages.mk
+include mk/rootfs.mk
diff --git a/mk/rootfs.mk b/mk/rootfs.mk
new file mode 100644
index 0000000..caa73f6
--- /dev/null
+++ b/mk/rootfs.mk
@@ -0,0 +1,48 @@
+#########################################################################################
+# GAYE Abdoulaye Walsimou, <walsimou@walsimou.com>
+# Copyright(C) 2009 GAYE Abdoulaye Walsimou. All rights reserved.
+#
+# This program is free software; you can distribute it and/or modify it
+# under the terms of the GNU General Public License
+# (Version 2 or later) published by the Free Software Foundation.
+#
+# This program is distributed in the hope it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+# for more details.
+#
+# You should have received a copy of the GNU General Public License along
+# with this program; if not, write to the Free Software Foundation, Inc.,
+# 59 Temple Place - Suite 330, Boston MA 02111-1307, USA.
+#########################################################################################
+#
+# \file rootfs.mk
+# \brief rootfs.mk of Embtoolkit
+# \author GAYE Abdoulaye Walsimou, <walsimou@walsimou.com>
+# \date June 2009
+#########################################################################################
+
+ifeq ($(CONFIG_EMBTK_HAVE_ROOTFS),y)
+#makedevs
+include $(EMBTK_ROOT)/mk/makedevs.mk
+
+#fakeroot
+include $(EMBTK_ROOT)/mk/fakeroot.mk
+
+rootfs_build: $(ROOTFS_COMPONENTS)
+ifeq ($(EMBTK_TARGET_ARCH),64)
+ @cp -d $(SYSROOT)/lib64/* $(ROOTFS)/lib64/
+ @$(TOOLS)/bin/$(STRICT_GNU_TARGET)-strip $(ROOTFS)/lib64/*.so
+else
+ @cp -d $(SYSROOT)/lib/* $(ROOTFS)/lib/
+ @$(TOOLS)/bin/$(STRICT_GNU_TARGET)-strip $(ROOTFS)/lib/*.so
+endif
+ $(FAKEROOT_BIN) -s $(EMBTK_ROOT)/.fakeroot.001 -- $(MAKEDEVS_DIR)/makedevs \
+ -d $(EMBTK_ROOT)/src/devices_table.txt $(ROOTFS)
+ cd $(ROOTFS) ; $(FAKEROOT_BIN) -i $(EMBTK_ROOT)/.fakeroot.001 -- \
+ tar cjf rootfs-$(STRICT_GNU_TARGET).tar.bz2 * ; \
+ mv rootfs-$(STRICT_GNU_TARGET).tar.bz2 $(EMBTK_ROOT)
+else
+rootfs_build:
+ @echo "Build of root filesystem not selected ..."
+endif