LIB :=  -lgcc -L /usr/local/arm/4.3.2/lib/gcc/arm-none-linux-gnueabi/4.3.2/armv4t
objs = start.o init.o nand_flash.o mmu.o led.o uart.o main.o exception.o interrupt.o timer.o string_utils.o s3c2440_spi.o oled.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/lcd_test.o
objs += lcd/s3c2440_lcd_controller.o
objs += lcd/font_8x16.o
objs += lcd/mainpage.o
objs += lcd/led_page.o
objs += lcd/iic_page.o
objs += lcd/hs0038_page.o
objs += lcd/ds18b20_page.o
objs += lcd/dth11_page.o
objs += lcd/res_page.o
objs += lcd/spi_page.o
objs += lcd/ts_page.o
objs += lcd/lcd_page.o
objs += lcd/button_page.o

objs += i2c/i2c_controller.o
objs += i2c/at24cxx.o
objs += i2c/s3c2440_i2c_controller.o
objs += i2c/i2c_test.o


objs += adc_touchscreen/adc.o


objs += adc_touchscreen/touchscreen.o
objs += adc_touchscreen/touchscreen_test.o
objs += adc_touchscreen/tslib.o

objs += sensors/photoresistor/photoresistor.o
objs += sensors/dht11/dht11.o
objs += sensors/ds18b20/ds18b20.o

objs += sensors/irda/circle_buffer.o
objs += sensors/irda/irda_raw.o
objs += sensors/irda/irda_nec.o


all: $(objs)
	#arm-linux-ld -Ttext 0 -Tdata 0x30000000  start.o led.o uart.o init.o main.o -o sdram.elf
	arm-linux-ld -T sdram.lds $^ -static -o sdram.elf $(LIB)
	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 $@ $<
	
