110 USB_LIB_DIR_ARG=-L/usr/lib |
110 USB_LIB_DIR_ARG=-L/usr/lib |
111 USB_MAKE_TARGET= |
111 USB_MAKE_TARGET= |
112 |
112 |
113 MATRIXLOCK_DIR=$(TOP)/../exept/setup/ml |
113 MATRIXLOCK_DIR=$(TOP)/../exept/setup/ml |
114 MATRIXLOCK_LIB_ARG=-L$(MATRIXLOCK_DIR)/lib -lmxlin260 -lusb |
114 MATRIXLOCK_LIB_ARG=-L$(MATRIXLOCK_DIR)/lib -lmxlin260 -lusb |
115 |
|
116 # |
|
117 # an extra rule for shared objects |
|
118 # |
|
119 .SUFFIXES: .a .o .so |
|
120 .o.so: |
|
121 @-rm -f $*.so |
|
122 $(LD) -shared $(LDFLAGS) -o $*.so $*.o $(LOCAL_SHARED_LIBS) $(EXTRA_SHARED_LIBS) |
|
123 |
|
124 .a.so: |
|
125 rm -f $*.so |
|
126 rm -rf tmp.a.so |
|
127 mkdir tmp.a.so |
|
128 cd tmp.a.so; $(AR) x ../$*.a |
|
129 @-rm -f $*.so |
|
130 $(LD) -shared $(LDFLAGS) -o $*.so tmp.a.so/*.o $(LOCAL_SHARED_LIBS) $(EXTRA_SHARED_LIBS) |
|
131 rm -rf tmp.a.so |
|
132 |
|
133 SHAREDLIBRULE=linuxSharedLib |
|
134 linuxSharedLib: |
|
135 @-rm -f $(LIB) |
|
136 $(LD) -shared $(LDFLAGS) -o $(LIB) $(OBJS) $(LOCAL_SHARED_LIBS) $(EXTRA_SHARED_LIBS) |
|
137 |
|
138 #.st.s2: |
|
139 # $(STC) $(STCFLAGS) $(CFLAGS) -C $*.st |
|
140 # $(CC) $(CFLAGS) -S $*.c |
|
141 # @-echo " stripping off useless .align directives ..." |
|
142 # sed "/.align 4/d" < $*.s > $*.s2 |
|
143 |
|
144 #.SUFFIXES: .s2 .s3 |
|
145 # |
|
146 #.s2.s3: |
|
147 # @-echo " removing useless jumps ..." |
|
148 # awk -f $(TOP)/rules/i386.script.awk < $*.s2 > $*.s3 |
|
149 |
|
150 # |
|
151 # extra rules for space-optimized/speed-optimized modules modules |
|
152 # |
|
153 .SUFFIXES: .st .spc .spd |
|
154 |
|
155 .st.spc: |
|
156 $(MAKE) STC_OPT="$(STC_OPT)" OPT="$(OPT)" STCOPT="$(STCOPT)" STFILE=$* KEEP=y __SPACEOPT_O_RULE__ |
|
157 |
|
158 .st.spd: |
|
159 $(MAKE) STC_OPT="$(STC_OPT)" OPT="$(OPT)" STCOPT="$(STCOPT)" STFILE=$* KEEP=y __SPEEDOPT_O_RULE__ |
|
160 |
|
161 VERYBIG_STFILE_RULE=__VERYBIG_RULE__ |
|
162 __VERYBIG_RULE__: |
|
163 $(MAKE) $(O_RULE) STFILE=$(BIG_FILE) CC="$(CC)" STC_OPT="$(STC_OPT) -Os" OPT="$(OPT) -Os" SEPINITCODE="$(SEPINITCODE)" |
|
164 |
|
165 LONGNAME_RULE=__NORMAL_RULE2__ |
|
166 __NORMAL_RULE2__: |
|
167 $(MAKE) $(O_RULE) STFILE=$(LONGNAME_FILE) CC="$(CC)" STC_OPT="$(STC_OPT)" OPT="$(OPT)" SEPINITCODE="$(SEPINITCODE)" |
|
168 |
|
169 |
|
170 #AWK_VERBOSE=1 |
|
171 AWK_DIFF= |
|
172 AWK_FIX=$(TOP)/rules/i386fixELF.awk |
|
173 |
|
174 SPACEOPT_O_RULE=__SPACEOPT_O_RULE__ |
|
175 __SPACEOPT_O_RULE__: |
|
176 @$(MAKE) STC=$(STC) CC=$(CC) STCOPT="$(STCOPT)" SEPINITCODE="$(SEPINITCODE)" $(STFILE).s |
|
177 @-if [ -f $(STFILE).s ]; then \ |
|
178 awk -f $(AWK_FIX) < $(STFILE).s > $(STFILE).s2; \ |
|
179 if [ "$(AWK_DIFF)" != "" ]; then \ |
|
180 diff $(STFILE).s $(STFILE).s2; \ |
|
181 fi; \ |
|
182 if [ "$(AWK_VERBOSE)" != "" ]; then \ |
|
183 echo "# optimized $(STFILE).s -> $(STFILE).s2"; \ |
|
184 tail -5 $(STFILE).s2; \ |
|
185 echo; \ |
|
186 fi; \ |
|
187 $(AS) $(ASFLAGS) -o $(STFILE).o $(STFILE).s2; \ |
|
188 fi |
|
189 @-if [ -f i_$(STFILE).s ]; then \ |
|
190 awk -f $(AWK_FIX) < i_$(STFILE).s > i_$(STFILE).s2; \ |
|
191 if [ "$(AWK_DIFF)" != "" ]; then \ |
|
192 diff i_$(STFILE).s i_$(STFILE).s2; \ |
|
193 fi; \ |
|
194 if [ "$(AWK_VERBOSE)" != "" ]; then \ |
|
195 echo "# optimized i_$(STFILE).s -> i_$(STFILE).s2"; \ |
|
196 tail -5 i_$(STFILE).s2; \ |
|
197 echo; \ |
|
198 fi; \ |
|
199 $(AS) $(ASFLAGS) -o i_$(STFILE).o i_$(STFILE).s2; \ |
|
200 fi |
|
201 @if [ "$(KEEP)" != "y" ]; then \ |
|
202 rm -f $(STFILE).s $(STFILE).s2 i_$(STFILE).s i_$(STFILE).s2; \ |
|
203 fi |
|
204 |
|
205 |
|
206 .SUFFIXES: .st .s2 |
|
207 |
|
208 .st.s2: |
|
209 @$(MAKE) $(SPEEDOPT_O_RULE) STCOPT="$(STCOPT)" KEEP=y STFILE=$* SEPINITCODE="$(SEPINITCODE)" |
|
210 |
|
211 SPEEDOPT_O_RULE=__SPEEDOPT_O_RULE__ |
|
212 __SPEEDOPT_O_RULE__: |
|
213 @$(MAKE) STC=$(STC) CC=$(CC) STCOPT="$(STCOPT)" SEPINITCODE="$(SEPINITCODE)" $(STFILE).s |
|
214 @-if [ -f $(STFILE).s ]; then \ |
|
215 awk -f $(AWK_FIX) < $(STFILE).s > $(STFILE).s2; \ |
|
216 if [ "$(AWK_DIFF)" != "" ]; then \ |
|
217 diff $(STFILE).s $(STFILE).s2; \ |
|
218 fi; \ |
|
219 if [ "$(AWK_VERBOSE)" != "" ]; then \ |
|
220 echo "# optimized $(STFILE).s -> $(STFILE).s2"; \ |
|
221 tail -5 $(STFILE).s2; \ |
|
222 echo; \ |
|
223 fi; \ |
|
224 $(AS) $(ASFLAGS) -o $(STFILE).o $(STFILE).s2; \ |
|
225 fi |
|
226 @-if [ -f i_$(STFILE).s ]; then \ |
|
227 awk -f $(AWK_FIX) < i_$(STFILE).s > i_$(STFILE).s2; \ |
|
228 if [ "$(AWK_DIFF)" != "" ]; then \ |
|
229 diff i_$(STFILE).s i_$(STFILE).s2; \ |
|
230 fi; \ |
|
231 if [ "$(AWK_VERBOSE)" != "" ]; then \ |
|
232 echo "# optimized i_$(STFILE).s -> i_$(STFILE).s2"; \ |
|
233 tail -5 i_$(STFILE).s2; \ |
|
234 echo; \ |
|
235 fi; \ |
|
236 $(AS) $(ASFLAGS) -o i_$(STFILE).o i_$(STFILE).s2; \ |
|
237 fi |
|
238 @if [ "$(KEEP)" != "y" ]; then \ |
|
239 rm -f $(STFILE).s $(STFILE).s2 i_$(STFILE).s i_$(STFILE).s2; \ |
|
240 fi |
|
241 |
|
242 O_RULE=$(SPEEDOPT_O_RULE) |
|
243 |
|
244 #------------------ end of linux-elf/COMMON/defines --------------------- |
115 #------------------ end of linux-elf/COMMON/defines --------------------- |