Loading Makefile +20 −0 Original line number Diff line number Diff line Loading @@ -32,6 +32,7 @@ TARGETS= # What sortof target system shall we compile this for? ARCH:=i386 #ARCH:=arm #ARCH:=powerpc #ARCH:=whatever # enable to build a native gcc toolchain with uclibc support Loading @@ -53,6 +54,16 @@ BUILD_WITH_LARGEFILE:=true # Command used to download source code WGET:=wget --passive-ftp # Optimize toolchain for which type of CPU? #OPTIMIZE_FOR_CPU:=i486 #OPTIMIZE_FOR_CPU:=strongarm #OPTIMIZE_FOR_CPU:=whatever OPTIMIZE_FOR_CPU:=$(ARCH) # Any additional gcc options you may want to include.... #EXTRA_GCC_CONFIG_OPTIONS:=--without-float EXTRA_GCC_CONFIG_OPTIONS:= ############################################################# # # The list of stuff to build for the target filesystem Loading Loading @@ -95,6 +106,14 @@ TARGETS+=busybox tinylogin # Pick your root filesystem type. TARGETS+=ext2root # Must mount cramfs with 'ramdisk_blocksize=4096' #TARGETS+=cramfsroot # You may need to edit make/jffs2root.mk to change target # endian-ness or similar, but this is sufficient for most # things as-is... #TARGETS+=jffs2root ############################################################# # # You should probably leave this stuff alone unless you know Loading @@ -116,6 +135,7 @@ TARGET_PATH:=$(STAGING_DIR)/bin:$(STAGING_DIR)/usr/bin:/bin:/sbin:/usr/bin:/usr/ STRIP:=$(TARGET_CROSS)strip --remove-section=.comment --remove-section=.note #STRIP:=/bin/true IMAGE:=$(BASE_DIR)/root_fs GNU_TARGET_NAME:=$(OPTIMIZE_FOR_CPU)-pc-linux-gnu ifneq ($(strip $(ARCH)),i386) CROSS:=$(ARCH)-linux- endif Loading make/jffs2root.mk 0 → 100644 +49 −0 Original line number Diff line number Diff line ############################################################# # # mtd provides us with mkfs.jffs2, to target JFFS2 filesystems # ############################################################# MTD_DIR:=$(BUILD_DIR)/mtd-20011217 MTD_SOURCE=mtd_20011217.orig.tar.gz MTD_SITE=http://ftp.debian.org/debian/pool/main/m/mtd MKFS_JFFS2=$(shell which mkfs.jffs2 || echo $(MTD_DIR)/util/mkfs.jffs2) $(DL_DIR)/$(MTD_SOURCE): $(WGET) -P $(DL_DIR) $(MTD_SITE)/$(MTD_SOURCE) $(MTD_DIR)/.unpacked: $(DL_DIR)/$(MTD_SOURCE) zcat $(DL_DIR)/$(MTD_SOURCE) | tar -C $(BUILD_DIR) -xvf - touch $(MTD_DIR)/.unpacked $(MTD_DIR)/util/mkfs.jffs2: $(MTD_DIR)/.unpacked CFLAGS=-I$(LINUX_DIR)/include $(MAKE) LINUXDIR=$(LINUX_DIR) -C $(MTD_DIR)/util mtd: $(MKFS_JFFS2) ############################################################# # # Build the jffs2 root filesystem image # ############################################################# jffs2root: jffs2 -@find $(TARGET_DIR)/lib -type f -name \*.so\* | xargs $(STRIP) --strip-unneeded 2>/dev/null || true; -@find $(TARGET_DIR) -type f -perm +111 | xargs $(STRIP) 2>/dev/null || true; @rm -rf $(TARGET_DIR)/usr/man @rm -rf $(TARGET_DIR)/usr/info $(MKFS_JFFS2) --pad --little-endian --squash -e 0x20000 \ -D $(SOURCE_DIR)/device_table.txt -d $(TARGET_DIR) \ -o $(IMAGE) jffs2root-source: $(DL_DIR)/$(GENEXT2_SOURCE) jffs2root-clean: -make -C $(GENEXT2_DIR) clean jffs2root-dirclean: rm -rf $(GENEXT2_DIR) Loading
Makefile +20 −0 Original line number Diff line number Diff line Loading @@ -32,6 +32,7 @@ TARGETS= # What sortof target system shall we compile this for? ARCH:=i386 #ARCH:=arm #ARCH:=powerpc #ARCH:=whatever # enable to build a native gcc toolchain with uclibc support Loading @@ -53,6 +54,16 @@ BUILD_WITH_LARGEFILE:=true # Command used to download source code WGET:=wget --passive-ftp # Optimize toolchain for which type of CPU? #OPTIMIZE_FOR_CPU:=i486 #OPTIMIZE_FOR_CPU:=strongarm #OPTIMIZE_FOR_CPU:=whatever OPTIMIZE_FOR_CPU:=$(ARCH) # Any additional gcc options you may want to include.... #EXTRA_GCC_CONFIG_OPTIONS:=--without-float EXTRA_GCC_CONFIG_OPTIONS:= ############################################################# # # The list of stuff to build for the target filesystem Loading Loading @@ -95,6 +106,14 @@ TARGETS+=busybox tinylogin # Pick your root filesystem type. TARGETS+=ext2root # Must mount cramfs with 'ramdisk_blocksize=4096' #TARGETS+=cramfsroot # You may need to edit make/jffs2root.mk to change target # endian-ness or similar, but this is sufficient for most # things as-is... #TARGETS+=jffs2root ############################################################# # # You should probably leave this stuff alone unless you know Loading @@ -116,6 +135,7 @@ TARGET_PATH:=$(STAGING_DIR)/bin:$(STAGING_DIR)/usr/bin:/bin:/sbin:/usr/bin:/usr/ STRIP:=$(TARGET_CROSS)strip --remove-section=.comment --remove-section=.note #STRIP:=/bin/true IMAGE:=$(BASE_DIR)/root_fs GNU_TARGET_NAME:=$(OPTIMIZE_FOR_CPU)-pc-linux-gnu ifneq ($(strip $(ARCH)),i386) CROSS:=$(ARCH)-linux- endif Loading
make/jffs2root.mk 0 → 100644 +49 −0 Original line number Diff line number Diff line ############################################################# # # mtd provides us with mkfs.jffs2, to target JFFS2 filesystems # ############################################################# MTD_DIR:=$(BUILD_DIR)/mtd-20011217 MTD_SOURCE=mtd_20011217.orig.tar.gz MTD_SITE=http://ftp.debian.org/debian/pool/main/m/mtd MKFS_JFFS2=$(shell which mkfs.jffs2 || echo $(MTD_DIR)/util/mkfs.jffs2) $(DL_DIR)/$(MTD_SOURCE): $(WGET) -P $(DL_DIR) $(MTD_SITE)/$(MTD_SOURCE) $(MTD_DIR)/.unpacked: $(DL_DIR)/$(MTD_SOURCE) zcat $(DL_DIR)/$(MTD_SOURCE) | tar -C $(BUILD_DIR) -xvf - touch $(MTD_DIR)/.unpacked $(MTD_DIR)/util/mkfs.jffs2: $(MTD_DIR)/.unpacked CFLAGS=-I$(LINUX_DIR)/include $(MAKE) LINUXDIR=$(LINUX_DIR) -C $(MTD_DIR)/util mtd: $(MKFS_JFFS2) ############################################################# # # Build the jffs2 root filesystem image # ############################################################# jffs2root: jffs2 -@find $(TARGET_DIR)/lib -type f -name \*.so\* | xargs $(STRIP) --strip-unneeded 2>/dev/null || true; -@find $(TARGET_DIR) -type f -perm +111 | xargs $(STRIP) 2>/dev/null || true; @rm -rf $(TARGET_DIR)/usr/man @rm -rf $(TARGET_DIR)/usr/info $(MKFS_JFFS2) --pad --little-endian --squash -e 0x20000 \ -D $(SOURCE_DIR)/device_table.txt -d $(TARGET_DIR) \ -o $(IMAGE) jffs2root-source: $(DL_DIR)/$(GENEXT2_SOURCE) jffs2root-clean: -make -C $(GENEXT2_DIR) clean jffs2root-dirclean: rm -rf $(GENEXT2_DIR)