-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathMakefile
More file actions
59 lines (48 loc) · 1.71 KB
/
Copy pathMakefile
File metadata and controls
59 lines (48 loc) · 1.71 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
# PS4 Linux Baikal Kernel — Makefile
#
# All real work happens in build.sh. The Makefile is just convenience
# shortcuts. Pass TARGET= to switch (default: 6.18-baikal).
#
# Examples:
# make # build default target (6.18-baikal)
# make TARGET=6.x-baikal # build archived 6.15 target
# make clean TARGET=5.4-baikal
# make patches-only TARGET=5.4-baikal
SHELL := /bin/bash
TARGET ?= 6.18-baikal
.PHONY: all build clean update patches-only clone-refs firmware init help
all: build
build:
@./build.sh -t $(TARGET)
clean:
@./build.sh -t $(TARGET) --clean
update:
@./build.sh -t $(TARGET) --update
patches-only:
@./build.sh -t $(TARGET) --patches-only
clone-refs:
@./scripts/clone-refs.sh
firmware:
@./scripts/download-firmware.sh
init: clone-refs firmware
@echo ""
@echo "Project initialized."
@echo "Next: make patches-only # verify the 6.18 patches apply"
@echo " make # build the default 6.18 kernel"
help:
@echo "PS4 Linux Baikal Kernel Build System"
@echo ""
@echo "Targets:"
@echo " make Build default target ($(TARGET))"
@echo " make TARGET=<name> Switch target"
@echo " make clean TARGET=<name> Clean build for target"
@echo " make update TARGET=<name> Refresh base kernel and rebuild"
@echo " make patches-only Apply patches without compiling"
@echo " make clone-refs Clone reference repos to tmp/"
@echo " make firmware Download firmware blobs"
@echo " make init First-time setup (clone-refs + firmware)"
@echo ""
@echo "Available targets:"
@for f in targets/*.env; do echo " - $$(basename $$f .env)"; done
@echo ""
@echo "See ./build.sh -h for low-level options."