OpenCores
URL https://opencores.org/ocsvn/core_arm/core_arm/trunk

Subversion Repositories core_arm

[/] [core_arm/] [trunk/] [build/] [Makefile] - Blame information for rev 2

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 tarookumic
#Konrad Eisele,2003
2
 
3
all: $(cmd)
4
 
5
include $(obj)/Makefile
6
include build/Makefile.defs
7
 
8
# Select host/target compilation
9
# ---------------------------------------------------------------------------
10
CURGCC = $(GCC)
11
CURLD = $(LD)
12
CURAR = $(AR)
13
CURCFLAGS = $(c_flags)
14
CURLDFLAGS = $(ld_flags)
15
 
16
# Single targets
17
# ---------------------------------------------------------------------------
18
 
19
 
20
  cmd_as_s_S = $(CPP) $(a_flags)   -o $@ $<
21
q_cmd_as_s_S = CPP $@
22
%.s: %.S FORCE
23
        $(call if_changed_dep,as_s_S)
24
 
25
  cmd_c_to_o = $(CURGCC) $(CURCFLAGS) -c -o $@ $<
26
q_cmd_c_to_o = GCC $@
27
%.o: %.c FORCE
28
        $(call if_changed_dep,c_to_o)
29
 
30
  cmd_as_o_S = $(CC) $(a_flags) -c -o $@ $<
31
q_cmd_as_o_S = AS $@
32
%.o: %.S FORCE
33
        $(call if_changed_dep,as_o_S)
34
 
35
%.tab.c: %.y
36
        bison -t -d -v -b $* -p $(notdir $*)_ $<
37
 
38
# adjust to sub-directory
39
# ---------------------------------------------------------------------------
40
$(target)_files         := $(addprefix $(obj)/,$($(target)_files))
41
$(target)_target        := $(addprefix $(obj)/,$($(target)_target))
42
$(target)_subdirs       := $(addprefix $(obj)/,$($(target)_subdirs))
43
 
44
# cmds to use
45
# ---------------------------------------------------------------------------
46
cmd_ld = $(CURLD) -o $@ $(filter-out FORCE,$^) $(CURLDFLAGS) $(EXTRA_LDFLAGS)
47
cmd_ar = $(CURAR) -r -o $@  $(filter-out FORCE,$^)
48
#$(CURAR) r $@  $(filter-out FORCE,$^)
49
#
50
 
51
ifeq ($(strip $(suffix $($(target)_target))),.a)
52
        docmd = ar
53
else
54
        docmd = ld
55
endif
56
 
57
dobuild: $($(target)_target) $($(target)_predeps)
58
 
59
$($(target)_target): $($(target)_files)  FORCE
60
        $(call if_changed,$(docmd))
61
 
62
$(addsuffix /build.a,$($(target)_subdirs)): FORCE
63
        for i in $($(target)_subdirs); do \
64
                $(MAKE) -f build/Makefile.switch obj=$$i cmd=dobuild || exit 1; \
65
        done
66
 
67
FORCE:
68
 
69
# Read all saved command lines and dependencies for the $(alltargets) we
70
# may be building above, using $(if_changed{,_dep}). As an
71
# optimization, we don't need to read them if the target does not
72
# exist, we will rebuild anyway in that case.
73
# ---------------------------------------------------------------------------
74
alltargets              := $($(target)_files) $($(target)_target)
75
alltargets              := $(wildcard $(sort $(alltargets)))
76
cmd_files               := $(wildcard $(foreach f,$(alltargets),$(dir $(f)).$(notdir $(f)).cmd))
77
ifneq ($(cmd_files),)
78
  include $(cmd_files)
79
endif
80
 
81
-include $(obj)/Makefile.post
82
 
83
 
84
 
85
 
86
 

powered by: WebSVN 2.1.0

© copyright 1999-2025 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.