zasm assembly compiler support next instruction (jmp; inc; mov 32bit, 32bit; hlt...
[ZeXOS.git] / build.sh
blob06c50101524b22094073f508a75c8d18f15bc537
1 #!/bin/bash
3 VERSION="0.6.1"
4 ARCHITECTURE="i386"
7 if [ -z $ARCH ]; then
8 ARCH=$ARCHITECTURE
9 fi
11 export ARCH
13 cd `dirname $0`
15 if [ "$1" = "clean" ] ; then
16 echo "Cleaning source from object files .."
17 make clean -C kernel &&
18 make clean -C libc &&
19 make clean -C libx &&
20 rm -f tools/ips2ip/ips2ip ;
21 rm -f iso/boot/kernel.bin ;
22 rm -f iso/libc.a ;
23 rm -f zexos-$VERSION-*.iso ;
24 rm -f zexos-$VERSION-$ARCH.img ;
25 echo "OK"
26 exit 1
29 if [ -e kernel/.config ]
30 then
31 echo "Checking for .config: OK"
32 else
33 make -C kernel xconfig
35 if [ -e kernel/.config ] ; then
36 echo " :)"
37 else
38 echo "Please check your .config file in kernel directory and try it again !"
39 exit 0
43 make -C kernel &&
44 make -C libc &&
45 make -C libx &&
47 echo "Source was compiled succefully"
49 if [ "$1" = "iso" ] ; then
50 cp kernel/kernel.bin iso/boot/kernel.bin &&
51 cp libc/libc.a iso/libc.a &&
52 cp README iso/README &&
53 mkisofs -R -b boot/grub/stage2_eltorito -no-emul-boot -boot-load-size 4 -boot-info-table -o zexos-$VERSION-$ARCH.iso iso &&
54 echo iso created OK && exit 0
57 if [ "$1" = "img" ] || [ "$1" = "floppy" ] ; then
58 wget -c http://zexos.sf.net/zexos.img && \
59 mkdir zexos ; \
60 mount -oloop zexos.img zexos && \
62 if [ -e zexos-$VERSION-$ARCH.iso ] ; then
63 echo " :)"
64 else
65 echo "I have to make .iso image first"
66 cp kernel/kernel.bin iso/boot/kernel.bin &&
67 cp libc/libc.a iso/libc.a &&
68 cp README iso/README &&
69 mkisofs -R -b boot/grub/stage2_eltorito -no-emul-boot -boot-load-size 4 -boot-info-table -o zexos-$VERSION-$ARCH.iso iso
72 mkdir zexosiso ; \
73 mount -oloop zexos-$VERSION-$ARCH.iso zexosiso && \
74 cp zexosiso/boot/kernel.bin zexos/boot/ && \
75 umount zexosiso && \
76 umount zexos && \
77 rmdir zexosiso && \
78 rmdir zexos && \
79 mv zexos.img zexos-$VERSION-$ARCH.img && \
80 rm zexos-$VERSION-$ARCH.iso && \
81 echo "OK - Image 'zexos-$VERSION-$ARCH.img' was created succefully."
82 echo "Please wait until installer copy image to floppy ..."
83 if [ "$1" = "floppy" ] ; then
84 dd if=zexos-$VERSION-$ARCH.img of=/dev/fd0 bs=1440k && \
85 echo "Installation on floppy is done, enjoy !"