##// END OF EJS Templates
added bsp feature
jeandet -
r3:3953fa862d83 default
parent child
Show More
@@ -28,6 +28,7 INCLUDES=""
28 LIBRARIES=""
28 LIBRARIES=""
29 HEADERSINSTALLPATH=""
29 HEADERSINSTALLPATH=""
30 TARGETINSTALLPATH=""
30 TARGETINSTALLPATH=""
31 BSP="generic"
31
32
32 function getFilesList {
33 function getFilesList {
33 sed ':a;N;$!ba;s/\\\n/ /g' $1 | sed ':a;N;$!ba;s/\\ \n/ /g' | grep -i $2 | sed 's/\t//g'
34 sed ':a;N;$!ba;s/\\\n/ /g' $1 | sed ':a;N;$!ba;s/\\ \n/ /g' | grep -i $2 | sed 's/\t//g'
@@ -69,6 +70,10 function TargetInstallPath {
69 TARGETINSTALLPATH=`more $1 | grep -i "TARGETINSTALLPATH" | sed s/TARGETINSTALLPATH// | sed s/=// | sed 's/^[ \t]*//;s/[ \t]*$//'`
70 TARGETINSTALLPATH=`more $1 | grep -i "TARGETINSTALLPATH" | sed s/TARGETINSTALLPATH// | sed s/=// | sed 's/^[ \t]*//;s/[ \t]*$//'`
70 }
71 }
71
72
73 function getBSP {
74 BSP=`more $1 | grep -i "BSP" | sed s/BSP// | sed s/=// | sed 's/^[ \t]*//;s/[ \t]*$//'`
75 }
76
72 if [ -z "$1" ] ; then
77 if [ -z "$1" ] ; then
73 echo "try to find a project file ..."
78 echo "try to find a project file ..."
74 TMP=`ls *.pro`
79 TMP=`ls *.pro`
@@ -91,23 +96,26 fi
91
96
92 CURRENTDIR=`pwd`
97 CURRENTDIR=`pwd`
93 Template $PROJECTFILE
98 Template $PROJECTFILE
99 echo "Template = $TEMPLATE"
94 echo '' > Makefile
100 echo '' > Makefile
95 echo 'PROJECTDIR = `pwd`'>> Makefile
101 echo 'PROJECTDIR = `pwd`'>> Makefile
96 echo "LIBUC = $libuc2" >> Makefile
102 echo "LIBUC = $libuc2" >> Makefile
97
103
98 if(echo $TEMPLATE|grep -i 'dir'); then
104 if(echo $TEMPLATE | grep -i 'dir'); then
99
105
100 echo 'include $(LIBUC)/rules/common/rules.mk' >> Makefile
106 echo 'include $(LIBUC)/rules/common/rules.mk' >> Makefile
101 SUBDIRS=`getFilesList $PROJECTFILE SUBDIRS | sed 's/SUBDIRS//' | sed 's/=//' | sed 's/+//' `
107 SUBDIRS=`getFilesList $PROJECTFILE SUBDIRS | sed 's/SUBDIRS//' | sed 's/=//' | sed 's/+//' `
102 CURRENTDIR=`pwd`
108 CURRENTDIR=`pwd`
103 echo $CURRENTDIR
104 echo "" >> Makefile
109 echo "" >> Makefile
105 echo 'all:subdir' >> Makefile
110 echo 'all:subdir' >> Makefile
106 for DIRS in $SUBDIRS
111 for DIRS in $SUBDIRS
107 do
112 do
113 echo "enter $DIRS"
108 cd $DIRS
114 cd $DIRS
115 echo "run $0"
109 $0
116 $0
110 cd $CURRENTDIR
117 cd $CURRENTDIR
118 echo "exit $DIRS"
111 if [ -e "$DIRS/Makefile" ]; then
119 if [ -e "$DIRS/Makefile" ]; then
112 echo " make -C $DIRS">> Makefile
120 echo " make -C $DIRS">> Makefile
113 fi
121 fi
@@ -121,6 +129,7 else
121 Libs_Link $PROJECTFILE
129 Libs_Link $PROJECTFILE
122 HeadersInstallPath $PROJECTFILE
130 HeadersInstallPath $PROJECTFILE
123 TargetInstallPath $PROJECTFILE
131 TargetInstallPath $PROJECTFILE
132 getBSP $PROJECTFILE
124 echo $SRCFILES >> Makefile
133 echo $SRCFILES >> Makefile
125 getFilesList $PROJECTFILE HEADERS >> Makefile
134 getFilesList $PROJECTFILE HEADERS >> Makefile
126 getFilesList $PROJECTFILE SOURCES >> Makefile
135 getFilesList $PROJECTFILE SOURCES >> Makefile
@@ -131,6 +140,7 else
131 echo "LIBUC_LIBRARIES=$LIBRARIES">> Makefile
140 echo "LIBUC_LIBRARIES=$LIBRARIES">> Makefile
132 echo "TARGETINSTALLPATH=$TARGETINSTALLPATH">> Makefile
141 echo "TARGETINSTALLPATH=$TARGETINSTALLPATH">> Makefile
133 echo "HEADERSINSTALLPATH=$HEADERSINSTALLPATH">> Makefile
142 echo "HEADERSINSTALLPATH=$HEADERSINSTALLPATH">> Makefile
143 echo "BSP=$BSP">> Makefile
134 echo 'include $(ARCH)/rules.mk' >> Makefile
144 echo 'include $(ARCH)/rules.mk' >> Makefile
135
145
136 if(echo $TEMPLATE|grep -i app); then
146 if(echo $TEMPLATE|grep -i app); then
@@ -146,9 +156,6 else
146 fi
156 fi
147 fi
157 fi
148
158
149 echo $TEMPLATE
150 echo $TARGET
151 echo $ARCH
152
159
153
160
154
161
@@ -86,6 +86,15 LIBUC_INC_DIR_SPI = -I $(LIBUC_
86 LIBUC_INC_DIR_IIC = -I $(LIBUC_INC_DIR)/IIC
86 LIBUC_INC_DIR_IIC = -I $(LIBUC_INC_DIR)/IIC
87 LIBUC_INC_DIR_ADC = -I $(LIBUC_INC_DIR)/ADC
87 LIBUC_INC_DIR_ADC = -I $(LIBUC_INC_DIR)/ADC
88
88
89
90 #---------------------------------------------------------------------------------
91 # BOARD SUPORT PACKAGES
92 #---------------------------------------------------------------------------------
93 LIBUC_BSP_DIR=$(LIBUC)/bsp
94 LIBUC_BSP_BIN_DIR= $(LIBUC_BSP_DIR)/bin
95 LIBUC_BSP_INC_DIR= $(LIBUC_BSP_DIR)/includes
96 LIBUC_BSP = -L $(LIBUC_BSP_BIN_DIR)/$(BSP) -lbsp
97 LIBUC_BSP_INC = -I $(LIBUC_BSP_INC_DIR)/$(BSP)
89 #---------------------------------------------------------------------------------
98 #---------------------------------------------------------------------------------
90 # DEVICE SPECIAL FILES
99 # DEVICE SPECIAL FILES
91 #---------------------------------------------------------------------------------
100 #---------------------------------------------------------------------------------
@@ -114,12 +123,12 lib: $(TARGET).a
114
123
115
124
116 %.o: %.c
125 %.o: %.c
117 $(LIBUC_CC) -I $(LPC17XX_INCDIR) $(LIBUC_INCLUDES) -MM $< -MF $*.d -MP
126 $(LIBUC_CC) -I $(LPC17XX_INCDIR) $(LIBUC_INCLUDES) $(LIBUC_BSP_INC) -MM $< -MF $*.d -MP
118 $(LIBUC_CC) -I $(LPC17XX_INCDIR) $(LIBUC_INCLUDES) -c $(LIBUC_CFLAGS) $< -o $@
127 $(LIBUC_CC) -I $(LPC17XX_INCDIR) $(LIBUC_INCLUDES) $(LIBUC_BSP_INC) -c $(LIBUC_CFLAGS) $< -o $@
119
128
120
129
121 %.elf: $(LINKER_SCRIPT) $(OBJECTFILES)
130 %.elf: $(LINKER_SCRIPT) $(OBJECTFILES)
122 $(LIBUC_LD) -Map $(@:.elf=.map) $(LIBUC_LDFLAGS) $(LIBUC_LIBRARIES) -T $^ -o $@
131 $(LIBUC_LD) -Map $(@:.elf=.map) $(LIBUC_LDFLAGS) $(LIBUC_LIBRARIES) $(LIBUC_BSP) -T $^ -o $@
123 $(LIBUC_OBJDUMP) $(LIBUC_ODFLAGS) $@ > $(@:.elf=.dump)
132 $(LIBUC_OBJDUMP) $(LIBUC_ODFLAGS) $@ > $(@:.elf=.dump)
124 $(LIBUC_SIZE) $@
133 $(LIBUC_SIZE) $@
125
134
General Comments 0
You need to be logged in to leave comments. Login now