added libm - math library with functions like fabs (), fmod (), sin (), cos (); app...
[ZeXOS.git] / build.sh
blob9fa2eda100fbc6fcb4f7004635c3c64c11a15e94
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 make clean -C libm &&
21 rm -f tools/ips2ip/ips2ip ;
22 rm -f iso/boot/kernel.bin ;
23 rm -f iso/libc.a ;
24 rm -f zexos-$VERSION-*.iso ;
25 rm -f zexos-$VERSION-$ARCH.img ;
26 echo "OK"
27 exit 1
30 if [ -e kernel/.config ]
31 then
32 echo "Checking for .config: OK"
33 else
34 make -C kernel xconfig
36 if [ -e kernel/.config ] ; then
37 echo " :)"
38 else
39 echo "Please check your .config file in kernel directory and try it again !"
40 exit 0
44 make -C kernel &&
45 make -C libc &&
46 make -C libx &&
47 make -C libm &&
49 echo "Source was compiled succefully"
51 if [ "$1" = "iso" ] ; then
52 cp kernel/kernel.bin iso/boot/kernel.bin &&
53 cp libc/libc.a iso/libc.a &&
54 cp README iso/README &&
55 mkisofs -R -b boot/grub/stage2_eltorito -no-emul-boot -boot-load-size 4 -boot-info-table -o zexos-$VERSION-$ARCH.iso iso &&
56 echo iso created OK && exit 0
59 if [ "$1" = "img" ] || [ "$1" = "floppy" ] ; then
60 wget -c http://zexos.sf.net/zexos.img && \
61 mkdir zexos ; \
62 mount -oloop zexos.img zexos && \
64 if [ -e zexos-$VERSION-$ARCH.iso ] ; then
65 echo " :)"
66 else
67 echo "I have to make .iso image first"
68 cp kernel/kernel.bin iso/boot/kernel.bin &&
69 cp libc/libc.a iso/libc.a &&
70 cp README iso/README &&
71 mkisofs -R -b boot/grub/stage2_eltorito -no-emul-boot -boot-load-size 4 -boot-info-table -o zexos-$VERSION-$ARCH.iso iso
74 mkdir zexosiso ; \
75 mount -oloop zexos-$VERSION-$ARCH.iso zexosiso && \
76 cp zexosiso/boot/kernel.bin zexos/boot/ && \
77 umount zexosiso && \
78 umount zexos && \
79 rmdir zexosiso && \
80 rmdir zexos && \
81 mv zexos.img zexos-$VERSION-$ARCH.img && \
82 rm zexos-$VERSION-$ARCH.iso && \
83 echo "OK - Image 'zexos-$VERSION-$ARCH.img' was created succefully."
84 echo "Please wait until installer copy image to floppy ..."
85 if [ "$1" = "floppy" ] ; then
86 dd if=zexos-$VERSION-$ARCH.img of=/dev/fd0 bs=1440k && \
87 echo "Installation on floppy is done, enjoy !"