Update libc.c
[ps4-sdk.git] / examples / usb / list_devices / Makefile
blobb030e4c69554d0dcc7818ff01ec4304a0ff4fa9c
1 LIBPS4 := $(PS4SDK)/libPS4
3 TEXT := 0x926200000
4 DATA := 0x926300000
6 CC := gcc
7 AS := gcc
8 OBJCOPY := objcopy
9 ODIR := build
10 SDIR := source
11 IDIRS := -I$(LIBPS4)/include -I. -Iinclude
12 LDIRS := -L$(LIBPS4) -L. -Llib
13 CFLAGS := $(IDIRS) -O2 -std=c11 -fno-builtin -nostartfiles -nostdlib -Wall -masm=intel -march=btver2 -mtune=btver2 -m64 -mabi=sysv -mcmodel=large -DTEXT_ADDRESS=$(TEXT) -DDATA_ADDRESS=$(DATA)
14 SFLAGS := -nostartfiles -nostdlib -march=btver2 -mtune=btver2
15 LFLAGS := $(LDIRS) -Xlinker -T $(LIBPS4)/linker.x -Wl,--build-id=none -Ttext=$(TEXT) -Tdata=$(DATA)
16 CFILES := $(wildcard $(SDIR)/*.c)
17 SFILES := $(wildcard $(SDIR)/*.s)
18 OBJS := $(patsubst $(SDIR)/%.c, $(ODIR)/%.o, $(CFILES)) $(patsubst $(SDIR)/%.s, $(ODIR)/%.o, $(SFILES))
20 LIBS := -lPS4
22 TARGET = $(shell basename $(CURDIR)).bin
24 $(TARGET): $(ODIR) $(OBJS)
25 $(CC) $(LIBPS4)/crt0.s $(ODIR)/*.o -o temp.t $(CFLAGS) $(LFLAGS) $(LIBS)
26 $(OBJCOPY) -O binary temp.t $(TARGET)
27 rm -f temp.t
29 $(ODIR)/%.o: $(SDIR)/%.c
30 $(CC) -c -o $@ $< $(CFLAGS)
32 $(ODIR)/%.o: $(SDIR)/%.s
33 $(AS) -c -o $@ $< $(SFLAGS)
35 $(ODIR):
36 @mkdir $@
38 .PHONY: clean
40 clean:
41 rm -f $(TARGET) $(ODIR)/*.o