~ubuntu-branches/ubuntu/trusty/zlib/trusty

« back to all changes in this revision

Viewing changes to nintendods/Makefile

  • Committer: Package Import Robot
  • Author(s): Mark Brown
  • Date: 2012-06-22 16:55:56 UTC
  • mfrom: (1.1.23 sid)
  • Revision ID: package-import@ubuntu.com-20120622165556-9xuc7gnq4w25b3i0
Yet more s390x cleanup.  Thanks to the s390x porters for thei
prompt an efficient buildd monitoring (closes: #678511).

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#---------------------------------------------------------------------------------
 
2
.SUFFIXES:
 
3
#---------------------------------------------------------------------------------
 
4
 
 
5
ifeq ($(strip $(DEVKITARM)),)
 
6
$(error "Please set DEVKITARM in your environment. export DEVKITARM=<path to>devkitARM")
 
7
endif
 
8
 
 
9
include $(DEVKITARM)/ds_rules
 
10
 
 
11
#---------------------------------------------------------------------------------
 
12
# TARGET is the name of the output
 
13
# BUILD is the directory where object files & intermediate files will be placed
 
14
# SOURCES is a list of directories containing source code
 
15
# DATA is a list of directories containing data files
 
16
# INCLUDES is a list of directories containing header files
 
17
#---------------------------------------------------------------------------------
 
18
TARGET          :=      $(shell basename $(CURDIR))
 
19
BUILD           :=      build
 
20
SOURCES         :=      ../../
 
21
DATA            :=      data
 
22
INCLUDES        :=      include
 
23
 
 
24
#---------------------------------------------------------------------------------
 
25
# options for code generation
 
26
#---------------------------------------------------------------------------------
 
27
ARCH    :=      -mthumb -mthumb-interwork
 
28
 
 
29
CFLAGS  :=      -Wall -O2\
 
30
                -march=armv5te -mtune=arm946e-s \
 
31
                -fomit-frame-pointer -ffast-math \
 
32
                $(ARCH)
 
33
 
 
34
CFLAGS  +=      $(INCLUDE) -DARM9
 
35
CXXFLAGS        := $(CFLAGS) -fno-rtti -fno-exceptions
 
36
 
 
37
ASFLAGS :=      $(ARCH) -march=armv5te -mtune=arm946e-s
 
38
LDFLAGS =       -specs=ds_arm9.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map)
 
39
 
 
40
#---------------------------------------------------------------------------------
 
41
# list of directories containing libraries, this must be the top level containing
 
42
# include and lib
 
43
#---------------------------------------------------------------------------------
 
44
LIBDIRS :=      $(LIBNDS)
 
45
 
 
46
#---------------------------------------------------------------------------------
 
47
# no real need to edit anything past this point unless you need to add additional
 
48
# rules for different file extensions
 
49
#---------------------------------------------------------------------------------
 
50
ifneq ($(BUILD),$(notdir $(CURDIR)))
 
51
#---------------------------------------------------------------------------------
 
52
 
 
53
export OUTPUT   :=      $(CURDIR)/lib/libz.a
 
54
 
 
55
export VPATH    :=      $(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \
 
56
                        $(foreach dir,$(DATA),$(CURDIR)/$(dir))
 
57
 
 
58
export DEPSDIR  :=      $(CURDIR)/$(BUILD)
 
59
 
 
60
CFILES          :=      $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
 
61
CPPFILES        :=      $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
 
62
SFILES          :=      $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
 
63
BINFILES        :=      $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*)))
 
64
 
 
65
#---------------------------------------------------------------------------------
 
66
# use CXX for linking C++ projects, CC for standard C
 
67
#---------------------------------------------------------------------------------
 
68
ifeq ($(strip $(CPPFILES)),)
 
69
#---------------------------------------------------------------------------------
 
70
        export LD       :=      $(CC)
 
71
#---------------------------------------------------------------------------------
 
72
else
 
73
#---------------------------------------------------------------------------------
 
74
        export LD       :=      $(CXX)
 
75
#---------------------------------------------------------------------------------
 
76
endif
 
77
#---------------------------------------------------------------------------------
 
78
 
 
79
export OFILES   :=      $(addsuffix .o,$(BINFILES)) \
 
80
                        $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o)
 
81
 
 
82
export INCLUDE  :=      $(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \
 
83
                        $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
 
84
                        -I$(CURDIR)/$(BUILD)
 
85
 
 
86
.PHONY: $(BUILD) clean all
 
87
 
 
88
#---------------------------------------------------------------------------------
 
89
all: $(BUILD)
 
90
        @[ -d $@ ] || mkdir -p include
 
91
        @cp ../../*.h include
 
92
 
 
93
lib:
 
94
        @[ -d $@ ] || mkdir -p $@
 
95
        
 
96
$(BUILD): lib
 
97
        @[ -d $@ ] || mkdir -p $@
 
98
        @$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile
 
99
 
 
100
#---------------------------------------------------------------------------------
 
101
clean:
 
102
        @echo clean ...
 
103
        @rm -fr $(BUILD) lib
 
104
 
 
105
#---------------------------------------------------------------------------------
 
106
else
 
107
 
 
108
DEPENDS :=      $(OFILES:.o=.d)
 
109
 
 
110
#---------------------------------------------------------------------------------
 
111
# main targets
 
112
#---------------------------------------------------------------------------------
 
113
$(OUTPUT)       :       $(OFILES)
 
114
 
 
115
#---------------------------------------------------------------------------------
 
116
%.bin.o :       %.bin
 
117
#---------------------------------------------------------------------------------
 
118
        @echo $(notdir $<)
 
119
        @$(bin2o)
 
120
 
 
121
 
 
122
-include $(DEPENDS)
 
123
 
 
124
#---------------------------------------------------------------------------------------
 
125
endif
 
126
#---------------------------------------------------------------------------------------