OSDN Git Service

2013.10.24
[uclinux-h8/uClinux-dist.git] / vendors / Arcturus / uC5275-16E32U150 / Makefile
1 #
2 #       Makefile -- Build instructions for Arcturus/uC5275
3 #
4
5 COMMON=
6
7 DIRS = 
8
9 ROMFSIMG = $(IMAGEDIR)/romfs.img
10 IMAGE    = $(IMAGEDIR)/image.bin
11
12 ROMFS_DIRS = bin dev etc etc/rc.d home lib mnt proc \
13              usr var home/httpd home/httpd/cgi-bin
14
15 DEVICES = \
16         tty,c,5,0      console,c,5,1      cua0,c,5,64      cua1,c,5,65  \
17         mem,c,1,1      kmem,c,1,2         null,c,1,3       \
18         \
19         zero,c,1,5     random,c,1,8       urandom,c,1,9    watchdog,c,10,130 \
20         \
21         ptyp0,c,2,0    ptyp1,c,2,1        ptyp2,c,2,2      ptyp3,c,2,3 \
22         ptyp4,c,2,4    ptyp5,c,2,5        ptyp6,c,2,6      ptyp7,c,2,7 \
23         ptyp8,c,2,8    ptyp9,c,2,9        ptypa,c,2,10     ptypb,c,2,11 \
24         ptypc,c,2,12   ptypd,c,2,13       ptype,c,2,14     ptypf,c,2,15 \
25         \
26         ram0,b,1,0     ram1,b,1,1         ram2,b,1,2       ram3,b,1,3 \
27         \
28         mtdblock0,b,31,0    mtdblock1,b,31,1        mtdblock2,b,31,2      mtdblock3,b,31,3 \
29         mtdblock4,b,31,4    mtdblock5,b,31,5        mtdblock6,b,31,6      mtdblock7,b,31,7 \
30         rom0,b,31,0    rom1,b,31,1        rom2,b,31,2      rom3,b,31,3 \
31         rom4,b,31,4    rom5,b,31,5        rom6,b,31,6      rom7,b,31,7 \
32         rom8,b,31,8    rom9,b,31,9 \
33         \
34         tty0,c,4,0     tty1,c,4,1         tty2,c,4,2       tty3,c,4,3 \
35         ttyS0,c,4,64   ttyS1,c,4,65 \
36         \
37         ttyp0,c,3,0    ttyp1,c,3,1        ttyp2,c,3,2      ttyp3,c,3,3 \
38         ttyp4,c,3,4    ttyp5,c,3,5        ttyp6,c,3,6      ttyp7,c,3,7 \
39         ttyp8,c,3,8    ttyp9,c,3,9        ttypa,c,3,10     ttypb,c,3,11 \
40         ttypc,c,3,12   ttypd,c,3,13       ttype,c,3,14     ttypf,c,3,15 \
41         \
42         loop0,b,7,0    loop1,b,7,1        loop2,b,7,2      loop3,b,7,3 \
43         loop4,b,7,4    loop5,b,7,5        loop6,b,7,6      loop7,b,7,7 \
44         \
45         qspi0,c,126,0    qspi1,c,126,1     qspi2,c,126,2     qspi3,c,126,3 \
46         qspi4,c,126,4    qspi5,c,126,5     qspi6,c,126,6     qspi7,c,126,7 \
47         qspi8,c,126,8    qspi9,c,126,9     qspi10,c,126,10   qspi11,c,126,11 \
48         qspi12,c,126,12  qspi13,c,126,13   qspi14,c,126,14   qspi14,c,126,15 \
49         \
50         usb0,c,127,0   usb1,c,127,1        usb2,c,127,2    usb3,c,127,3 \
51         usb4,c,127,4   usb5,c,127,5        usb6,c,127,6    usb7,c,127,7 \
52         \
53         ipsec,c,36,10 \
54         ppp,c,108,0 pppox0,c,144,0 \
55         hifn0,c,28,0
56
57
58 all:
59         dirs=$(DIRS) ; \
60         for i in $$dirs ; do  make -C $$i || exit $? ; done
61
62 clean:
63         -dirs=$(DIRS) ; \
64         for i in $$dirs; do [ ! -d $$i ] || make -C $$i clean; done
65         make -C $(ROOTDIR)/user/boottools/uCbootstrap-tools clean
66         make -C $(ROOTDIR)/user/cramfs/host_build clean
67
68 devices: device_dir
69         for i in $(DEVICES); do  touch $(ROMFSDIR)/dev/@$$i;  done
70
71
72 device_dir:
73         [ -d $(ROMFSDIR)/dev ] || mkdir -p $(ROMFSDIR)/dev 
74
75
76 romfs:  devices
77         [ -d $(ROMFSDIR)/$$i ] || mkdir -p $(ROMFSDIR)
78         for i in $(ROMFS_DIRS); do \
79                 [ -d $(ROMFSDIR)/$$i ] || mkdir -p $(ROMFSDIR)/$$i; \
80         done
81         dirs=$(DIRS) ; for i in $$dirs; do make -C $$i romfs || exit $? ; done
82         $(ROMFSINST) -s /var/tmp /tmp
83         $(ROMFSINST) -s /var/profile /etc/profile
84         $(ROMFSINST) -s /var/resolv.conf /etc/resolv.conf
85         $(ROMFSINST) -s /var/dhcpc /etc/dhcpc
86         $(ROMFSINST) -p 555 $(COMMON)rc /etc/rc
87         $(ROMFSINST) -p 555 $(COMMON)rc.d/rc.net /etc/rc.d/rc.net
88         $(ROMFSINST) -p 555 $(COMMON)rc.d/rc.dhcpc /etc/rc.d/rc.dhcpc
89         $(ROMFSINST) $(COMMON)inittab /etc/inittab
90         $(ROMFSINST) $(COMMON)services /etc/services
91         $(ROMFSINST) $(COMMON)issue /etc/issue
92         $(ROMFSINST) $(COMMON)passwd /etc/passwd
93         if [ $(CONFIG_BLK_DEV_INITRD) = "y" ]; then \
94                 ln -sf bin/init $(ROMFSDIR)/linuxrc; \
95         fi
96         $(ROMFSINST) $(COMMON)htdocs/index.html /home/httpd/index.html
97         $(ROMFSINST) $(COMMON)htdocs/info.html /home/httpd/info.html
98         $(ROMFSINST) $(COMMON)htdocs/arcturuslogo.gif /home/httpd/arcturuslogo.gif
99         $(ROMFSINST) $(COMMON)htdocs/miniuclinux2.gif /home/httpd/miniuclinux2.gif
100         $(ROMFSINST) $(COMMON)htdocs/5275pic.gif /home/httpd/5275pic.gif
101         $(ROMFSINST) -p 555 $(COMMON)htdocs/cgi-bin/benv.cgi /home/httpd/cgi-bin/benv.cgi
102         $(ROMFSINST) -p 555 $(COMMON)htdocs/cgi-bin/cpuinfo.cgi /home/httpd/cgi-bin/cpuinfo.cgi
103         $(ROMFSINST) -p 555 $(COMMON)htdocs/cgi-bin/ifconfig.cgi /home/httpd/cgi-bin/ifconfig.cgi
104         $(ROMFSINST) -p 555 $(COMMON)htdocs/cgi-bin/interrupts.cgi /home/httpd/cgi-bin/interrupts.cgi
105         $(ROMFSINST) -p 555 $(COMMON)htdocs/cgi-bin/mem_map.cgi /home/httpd/cgi-bin/mem_map.cgi
106         $(ROMFSINST) -p 555 $(COMMON)htdocs/cgi-bin/ps.cgi /home/httpd/cgi-bin/ps.cgi
107         $(ROMFSINST) -p 555 $(COMMON)htdocs/cgi-bin/kmsg.cgi /home/httpd/cgi-bin/kmsg.cgi
108         echo "$(VERSIONSTR) -- " `date` > $(ROMFSDIR)/etc/version
109
110 image-tools:
111         touch $(ROOTDIR)/user/boottools/.sgbuilt_user && make -C $(ROOTDIR)/user/boottools uCbootstrap-tools 
112         touch $(ROOTDIR)/user/cramfs/.sgbuilt_user && make -C $(ROOTDIR)/user/cramfs host_build
113
114 image: image-tools
115         [ -d $(IMAGEDIR) ] || mkdir -p $(IMAGEDIR)
116         rm -rf $(IMAGEDIR)/*
117         $(CROSS)objcopy  --set-section-flags=.romvec=alloc,load,readonly,data \
118                         -O binary $(ROOTDIR)/$(LINUXDIR)/linux \
119                         $(ROMFSDIR)/linux.bin
120         (cd ${ROMFSDIR}/bin; if [ -f ls ] ; then $(CROSS)flthdr -r -s 8192 ls; fi )
121         (cd ${ROMFSDIR}/bin; if [ -f thttpd ] ; then $(CROSS)flthdr -r -s 20480 thttpd; fi )
122         (cd ${ROMFSDIR}/bin; if [ -f busybox ] ; then $(CROSS)flthdr -r -s 12288 busybox; fi )
123 ifdef FORCED_STACK_SIZE
124         (cd $(ROMFSDIR)/bin; for i in `find -type f` ; do J=`$(CROSS)flthdr -p $$i | grep "Stack" | sed -e "s/Stack Size://g" | sed -e "s/ //g" | sed -e "s/0x//"` ; if [ "$$J" == "1000" ] ; then $(CROSS)flthdr -r -s $$FORCED_STACK_SIZE $$i ; echo "Increased the stack of $$i to $$FORCED_STACK_SIZE" ; fi   ; done)
125 endif
126         $(ROOTDIR)/user/cramfs/host_build/mkcramfs -r -n uClinux \
127                 $(ROMFSDIR) $(IMAGEDIR)/image.cramfs 
128         $(ROOTDIR)/user/boottools/uCbootstrap-tools/uCmkimage \
129                 -f $(IMAGEDIR)/image.cramfs -o $(IMAGEDIR)/image.ucb \
130                 -t `date -I` -n "uC5275 cramfs image"
131         $(ROOTDIR)/user/boottools/uCbootstrap-tools/uCheader $(IMAGEDIR)/image.ucb
132
133 .PHONY: image-tools