mirror of https://github.com/OpenIPC/firmware.git
220 lines
5.0 KiB
Plaintext
220 lines
5.0 KiB
Plaintext
####for XM530####
|
|
#CROSS = arm-xm-linux-
|
|
CC = @echo " GCC $@"; $(CROSS)gcc
|
|
CPP = @echo " G++ $@"; $(CROSS)g++
|
|
LD = @echo " LD $@"; $(CROSS)ld
|
|
AR = @echo " AR $@"; $(CROSS)ar
|
|
RM = @echo " RM $@"; rm -f
|
|
#########################################################
|
|
|
|
|
|
TOPDIR = ../..
|
|
INC = $(TOPDIR)/include
|
|
SRC = .
|
|
SNSX1x = ../snsX1x
|
|
SNSX20 = ../snsX20
|
|
SNSX30 = ../snsX30
|
|
SNSEXT = ../snsExt
|
|
|
|
DEBUGTMP = ./debug_tmp
|
|
OUTPUT = ../_libs
|
|
|
|
include ../Configure
|
|
include ../configs/XM530_config
|
|
|
|
ifeq ($(SOC),SYSTEM)
|
|
CROSS = arm-xm-linux-
|
|
CFLAGS += -ffunction-sections -g -Os -Wall -fno-stack-protector -fno-common -mcpu=cortex-a5
|
|
endif
|
|
ifeq ($(SOC),NONE)
|
|
CROSS = arm-none-eabi-
|
|
CFLAGS += -nostdinc -ffunction-sections -g -Os -Wall -fno-stack-protector -fno-common -mcpu=cortex-a5
|
|
endif
|
|
ifeq ($(SOC),ALIOS)
|
|
ROOTDIR = /home/$(LOGNAME)/mnt/Sofia/Trunk
|
|
include $(ROOTDIR)/MainApplication/ALIOS/Makefile.param-ALIOS_XM530
|
|
EXT:=_alios
|
|
endif
|
|
|
|
#CFLAGS += -DSVN_ID=\"$(SVN_ID)\"
|
|
CFLAGS += -I$(INC)/xm
|
|
CFLAGS += -I$(INC)/isp
|
|
CFLAGS += -I$(SNSEXT)/
|
|
CFLAGS += -I$(SRC)/
|
|
|
|
|
|
##############################################
|
|
# CHIP_ID: XM530
|
|
##############################################
|
|
CFLAGS += -DCHIPID_XM530
|
|
CFLAGS += -DSOC_$(SOC)
|
|
CFLAGS += -DAWB_ALGO_V2
|
|
|
|
|
|
##############################################
|
|
#ISP
|
|
##############################################
|
|
CFLAGS += -DCSTM_$(CSTM_ID)
|
|
|
|
##############################################
|
|
#IRCUT
|
|
##############################################
|
|
CFLAGS += -DICR_$(IRCUT_ID)
|
|
|
|
|
|
CFLAGS_D := $(CFLAGS) -g
|
|
|
|
AFLAGS = -r
|
|
|
|
LIB_OBJS = $(SRC)/XAx_cmos.o \
|
|
$(SRC)/XAx_sensor_ctl.o \
|
|
$(SNSEXT)/ext_cmos.o \
|
|
$(SNSEXT)/ext_sensor_ctl.o \
|
|
|
|
#-------------------------------------------------------------------
|
|
ifeq ($(CONFIG_X1X_SOIH62),y)
|
|
CFLAGS += -DSENS_X1X_SOIH62
|
|
LIB_OBJS += $(SNSX1x)/soih62_cmos.o
|
|
endif
|
|
ifeq ($(CONFIG_X1X_SP140A),y)
|
|
CFLAGS += -DSENS_X1X_SP140A
|
|
LIB_OBJS += $(SNSX1x)/sp140A_cmos.o
|
|
endif
|
|
ifeq ($(CONFIG_X1X_SC2145H),y)
|
|
CFLAGS += -DSENS_X1X_SC2145H
|
|
LIB_OBJS += $(SNSX1x)/sc2145H_cmos.o
|
|
endif
|
|
ifeq ($(CONFIG_X1X_SOIH65),y)
|
|
CFLAGS += -DSENS_X1X_SOIH65
|
|
LIB_OBJS += $(SNSX1x)/soih65_cmos.o
|
|
endif
|
|
ifeq ($(CONFIG_X1X_SC1235),y)
|
|
CFLAGS += -DSENS_X1X_SC1235
|
|
LIB_OBJS += $(SNSX1x)/sc1235_cmos.o
|
|
endif
|
|
ifeq ($(CONFIG_X1X_OV9732),y)
|
|
CFLAGS += -DSENS_X1X_OV9732
|
|
LIB_OBJS += $(SNSX1x)/ov9732_cmos.o
|
|
endif
|
|
|
|
ifeq ($(CONFIG_X20_SC2235E),y)
|
|
CFLAGS += -DSENS_X20_SC2235E
|
|
LIB_OBJS += $(SNSX20)/sc2235E_cmos.o
|
|
endif
|
|
ifeq ($(CONFIG_X20_SC2235),y)
|
|
CFLAGS += -DSENS_X20_SC2235
|
|
LIB_OBJS += $(SNSX20)/sc2235_cmos.o
|
|
endif
|
|
ifeq ($(CONFIG_X20_SC2335),y)
|
|
CFLAGS += -DSENS_X20_SC2335
|
|
LIB_OBJS += $(SNSX20)/sc2335_cmos.o
|
|
endif
|
|
ifeq ($(CONFIG_X20_SC2235P),y)
|
|
CFLAGS += -DSENS_X20_SC2235P
|
|
LIB_OBJS += $(SNSX20)/sc2235P_cmos.o
|
|
endif
|
|
ifeq ($(CONFIG_X20_SC307E),y)
|
|
CFLAGS += -DSENS_X20_SC307E
|
|
LIB_OBJS += $(SNSX20)/sc307E_cmos.o
|
|
endif
|
|
ifeq ($(CONFIG_X20_SC2145),y)
|
|
CFLAGS += -DSENS_X20_SC2145
|
|
LIB_OBJS += $(SNSX20)/sc2145_cmos.o
|
|
endif
|
|
|
|
ifeq ($(CONFIG_X20_IMX323),y)
|
|
CFLAGS += -DSENS_X20_IMX323
|
|
LIB_OBJS += $(SNSX20)/imx323_cmos.o
|
|
endif
|
|
ifeq ($(CONFIG_X20_IMX307),y)
|
|
CFLAGS += -DSENS_X20_IMX307
|
|
LIB_OBJS += $(SNSX20)/imx307_cmos.o
|
|
|
|
ifeq ($(CONFIG_X20_F37),y)
|
|
CFLAGS += -DSENS_X20_F37
|
|
LIB_OBJS += $(SNSX20)/soif37_cmos.o
|
|
endif
|
|
|
|
ifeq ($(CONFIG_X20_MIS2003),y)
|
|
CFLAGS += -DSENS_X20_MIS2003
|
|
LIB_OBJS += $(SNSX20)/mis2003_cmos.o
|
|
endif
|
|
|
|
ifeq ($(CONFIG_X20_SP2305),y)
|
|
CFLAGS += -DSENS_X20_SP2305
|
|
LIB_OBJS += $(SNSX20)/sp2305_cmos.o
|
|
endif
|
|
endif
|
|
|
|
ifeq ($(CONFIG_X30_SC4236),y)
|
|
CFLAGS += -DSENS_X30_SC4236
|
|
LIB_OBJS += $(SNSX30)/sc4236_cmos.o
|
|
endif
|
|
|
|
ifeq ($(CONFIG_X30_AUGE),y)
|
|
CFLAGS += -DSENS_X30_AUGE
|
|
LIB_OBJS += $(SNSX30)/auge_cmos.o
|
|
endif
|
|
|
|
ifeq ($(CONFIG_X30_SC3035),y)
|
|
CFLAGS += -DSENS_X30_SC3035
|
|
LIB_OBJS += $(SNSX30)/sc3035_cmos.o
|
|
LIB_OBJS += $(SNSX30)/sc3035_sensor_ctl.o
|
|
endif
|
|
#-------------------------------------------------------------------
|
|
|
|
|
|
LIB_OBJS_D = $(patsubst $(SRC)/%.o,$(DEBUGTMP)/%.o,$(LIB_OBJS))
|
|
|
|
|
|
LIBNAME = $(OUTPUT)/libsns_X123$(EXT)_$(CHIP_ID).a
|
|
LIBNAME_D = $(OUTPUT)/libsns_X123$(EXT)_$(CHIP_ID)-d.a
|
|
|
|
|
|
TARGET = $(LIBNAME) $(LIBNAME_D)
|
|
|
|
all: $(TARGET)
|
|
@cp -vf $(LIBNAME) $(DstDir)/
|
|
$(LIBNAME): $(LIB_OBJS)
|
|
$(RM) $@;
|
|
$(AR) $(AFLAGS) $@ $^
|
|
|
|
$(LIBNAME_D): $(LIB_OBJS_D)
|
|
$(RM) $@;
|
|
$(AR) $(AFLAGS) $@ $^
|
|
|
|
$(SRC)/%.o: $(SRC)/%.c
|
|
$(CC) $(CFLAGS) -c -o $@ $<
|
|
|
|
$(SRC)/%.o: $(SRC)/%.cpp
|
|
$(CPP) $(CFLAGS) -c -o $@ $<
|
|
|
|
$(DEBUGTMP)/%.o: $(SRC)/%.c
|
|
@mkdir -p $(DEBUGTMP)
|
|
@mkdir -p $(dir $@)
|
|
$(CC) $(CFLAGS_D) -c -o $@ $<
|
|
|
|
$(DEBUGTMP)/%.o: $(SRC)/%.cpp
|
|
@mkdir -p $(DEBUGTMP)
|
|
@mkdir -p $(dir $@)
|
|
$(CPP) $(CFLAGS_D) -c -o $@ $<
|
|
|
|
|
|
#.c.o:
|
|
# $(CC) $(CFLAGS) -c -o $@ $<
|
|
#
|
|
#.cpp.o:
|
|
# $(CPP) $(CFLAGS) -c -o $@ $<
|
|
|
|
clean:
|
|
rm -f $(TARGET) $(LIB_OBJS) $(EXEC_OBJS);
|
|
rm -rf $(DEBUGTMP);
|
|
find ./ -type f \( -name '*.elf*' -o -name '*.gdb' \) | xargs rm -f
|
|
|
|
|
|
DstDir := $(TOPDIR)/ispSample/lib_$(SOC)/lib_$(CSTM_ID)
|
|
|
|
dbg: all
|
|
# copy to your debug dir
|
|
@cp -vf $(LIBNAME) $(DstDir)/lib_X1x$(EXT).a
|