objs = start.o init.o nand_flash.o mmu.o led.o uart.o main.o exception.o interrupt.o timer.o nor_flash.o gpio_spi.o oled.o my_printf.o string_utils.o lib1funcs.o app.o

objs += lcd/font.o
objs += lcd/framebuffer.o
objs += lcd/geometry.o
objs += lcd/lcd.o
objs += lcd/lcd_4.3.o
objs += lcd/lcd_controller.o
objs += lcd/interface.o
objs += lcd/s3c2440_lcd_controller.o
objs += lcd/font_8x16.o

objs += adc_touchscreen/adc.o
objs += adc_touchscreen/touchscreen.o
objs += adc_touchscreen/touch_adjust.o
objs += adc_touchscreen/tslib.o

objs += i2c/at24cxx.o
objs += i2c/i2c_controller.o
objs += i2c/s3c2440_i2c_controller.o

objs += sensors/photoresistor/photoresistor.o
objs += sensors/dht11/dht11.o
objs += sensors/ds18b20/ds18b20.o
objs += sensors/irda/irda_raw.o

all: $(objs)
	arm-linux-ld -T sdram.lds $^ libgcc.a -o sdram.elf
	arm-linux-objcopy -O binary -S sdram.elf sdram.bin
	arm-linux-objdump -D sdram.elf > sdram.dis
clean:
	rm -f *.bin $(objs) *.elf *.dis
	
%.o : %.c
	arm-linux-gcc -march=armv4 -c -o $@ $<

%.o : %.S
	arm-linux-gcc -march=armv4 -c -o $@ $<	
	
