2 # This file contains rules which are shared between multiple Makefiles
7 # Special variables which should not be exported
11 unexport EXTRA_CCFLAGS
12 unexport EXTRA_ASFLAGS
22 $(SSOBJPATH)/%.o: $(SSPATH)/%.c Makefile.ss
24 @$(CC) $(EXTRA_HPATH) $(CFLAGS) $(EXTRA_CFLAGS) -c -o $@ $<
25 @$(E) " CC " $(shell basename $<)
27 $(SSOBJPATH)/%.o: $(SSPATH)/%.cpp Makefile.ss
28 @$(CPP) $(EXTRA_HPATH) $(CCFLAGS) $(EXTRA_CCFLAGS) -c -o $@ $<
29 @$(E) " CPP " $(shell basename $<)
31 $(SSOBJPATH)/%.o: $(SSPATH)/%.s Makefile.ss
32 @$(AS) $(EXTRA_HPATH) $(ASFLAGS) $(EXTRA_ASFLAGS) -c -o $@ $<
33 @$(E) " AS " $(shell basename $<)
35 $(SSOBJPATH)/%.o: $(SSPATH)/%.S Makefile.ss
36 @$(AS) $(EXTRA_HPATH) $(ASFLAGS) $(EXTRA_ASFLAGS) -c -o $@ $<
37 @$(E) " AS " $(shell basename $<)
39 $(L_TARGET): $(O_OBJS)
40 @$(AR) $(ARFLAGS) $@ $?
41 @$(E) " AR " $(shell basename $@)
45 # Target for this sub Makefile
48 all: $(L_TARGET) $(ASM_OBJS)
51 sed '/\#\#\# Dep/q' < Makefile.ss > tmp_make
52 $(CC) $(EXTRA_HPATH) $(CFLAGS) $(EXTRA_CFLAGS) -MM $(SSPATH)/*.c $(ASM_OBJS:$(SSOBJPATH)/%.o=$(SSPATH)/%.S) > tmp1_file
53 $(MAGPIE_ROOT)/build/utility/bin/adj_dep $(SSOBJPATH)/
54 cat tmp2_file >> tmp_make
55 mv tmp_make Makefile.ss
60 @find $(SSOBJPATH) -name "*.o" -exec rm {} \;
62 @if [ -f "$(L_TARGET)" ]; then rm $(L_TARGET); fi
64 init: # copy/share subsystem headers file
65 #-mkdir $(MAGPIE_ROOT)/src/ss_hdr/$(LAYERNAME)/$(SSNAME)
66 #-mkdir $(MAGPIE_ROOT)/src/ss_hdr/$(LAYERNAME)/$(SSNAME)/hdr
67 #-cp -p $(SSMPATH)/hdr/*.h $(MAGPIE_ROOT)/src/ss_hdr/$(LAYERNAME)/$(SSNAME)/hdr
68 -chmod o+w $(SSPATH)/*.c
69 -chmod o+w $(SSPATH)/*.S
70 -chmod o+w $(SSPATH)/*.s
74 -chmod o+w $(SSMPATH)/*.c
75 -chmod o+w $(SSMPATH)/*.S
76 -chmod o+w $(SSMPATH)/*.s
87 $(CC) $(CFLAGS) $(EXTRA_HPATH) $(EXTRA_CFLAGS) -o $@ $(SSOBJPATH)/*.o $(LDFLAGS)
90 # $(CC) $(CFLAGS) $(EXTRA_HPATH) $(EXTRA_CFLAGS) -o $@ $(SSOBJPATH)/*.o