annotate src/zlib-1.2.7/nintendods/Makefile @ 169:223a55898ab9 tip default

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