Setting up repository
[linux-libre-firmware.git] / ath9k_htc / sboot / make_opt / Rules.make
1
2 # This file contains rules which are shared between multiple Makefiles
3 #
4 #
5
6 #
7 # Special variables which should not be exported
8 #
9
10 unexport EXTRA_CFLAGS
11 unexport EXTRA_CCFLAGS
12 unexport EXTRA_ASFLAGS
13 unexport EXTRA_HPATH
14
15
16
17 # Common rules
18 #
19
20 E=echo
21
22 $(SSOBJPATH)/%.o: $(SSPATH)/%.c Makefile.ss
23         @mkdir -p ./obj
24         @$(CC) $(EXTRA_HPATH) $(CFLAGS) $(EXTRA_CFLAGS) -c -o $@ $<
25         @$(E) "  CC " $(shell basename $<)
26
27 $(SSOBJPATH)/%.o: $(SSPATH)/%.cpp Makefile.ss
28         @$(CPP) $(EXTRA_HPATH) $(CCFLAGS) $(EXTRA_CCFLAGS) -c -o $@ $<
29         @$(E) "  CPP " $(shell basename $<)
30         
31 $(SSOBJPATH)/%.o: $(SSPATH)/%.s Makefile.ss
32         @$(AS) $(EXTRA_HPATH) $(ASFLAGS) $(EXTRA_ASFLAGS) -c -o $@ $<
33         @$(E) "  AS " $(shell basename $<)
34         
35 $(SSOBJPATH)/%.o: $(SSPATH)/%.S Makefile.ss
36         @$(AS) $(EXTRA_HPATH) $(ASFLAGS) $(EXTRA_ASFLAGS) -c -o $@ $<
37         @$(E) "  AS " $(shell basename $<)
38         
39 $(L_TARGET): $(O_OBJS)
40         @$(AR) $(ARFLAGS) $@ $?
41         @$(E) "  AR " $(shell basename $@)
42
43
44 #
45 # Target for this sub Makefile
46 #
47
48 all: $(L_TARGET) $(ASM_OBJS)
49
50 dep:
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
56         -rm tmp1_file
57         -rm tmp2_file
58
59 clean:
60         @find $(SSOBJPATH) -name "*.o" -exec rm {} \;
61         @rm -rf obj
62         @if [ -f "$(L_TARGET)" ]; then rm $(L_TARGET); fi
63
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
71         -rm $(SSPATH)/*.c
72         -rm $(SSPATH)/*.S
73         -rm $(SSPATH)/*.s
74         -chmod o+w $(SSMPATH)/*.c       
75         -chmod o+w $(SSMPATH)/*.S
76         -chmod o+w $(SSMPATH)/*.s
77         -rm $(SSMPATH)/*.c
78         -rm $(SSMPATH)/*.S
79         -rm $(SSMPATH)/*.s
80         
81
82 #
83 # test only
84 #
85 # Linux use below:
86 $(SSOBJPATH)/%:
87         $(CC) $(CFLAGS) $(EXTRA_HPATH) $(EXTRA_CFLAGS) -o $@ $(SSOBJPATH)/*.o $(LDFLAGS)
88 # Cygwin use below
89 #$(SSOBJPATH)/%:
90 #       $(CC) $(CFLAGS) $(EXTRA_HPATH) $(EXTRA_CFLAGS) -o $@ $(SSOBJPATH)/*.o
91 exe: $(O_EXE)