Files
palera1n/Makefile
T

84 lines
2.2 KiB
Makefile
Raw Normal View History

2026-06-30 22:23:51 -07:00
.PHONY: payloads palera1n palera1n_xcode palera1n_mingw clean
2023-01-16 16:17:41 +08:00
2026-02-05 00:42:57 -08:00
WITH_GUI ?= 0
2026-06-27 19:48:40 -07:00
WITH_TUI ?= 0
2026-06-30 22:23:51 -07:00
WITH_RAMDISK ?= 1
WITH_BINPACK ?= 1
2026-02-05 00:42:57 -08:00
WITH_STATIC ?= 0
BUILD_TYPE ?= Debug
2026-06-30 17:16:56 -07:00
CMAKE_SYSROOT ?=
2026-06-30 22:23:51 -07:00
CROSS_HOST_TRIPLE ?=
JOBS ?=
BUILD_ARGS :=
ifneq ($(strip $(JOBS)),)
BUILD_ARGS += --parallel $(JOBS)
endif
2024-05-15 12:33:05 +08:00
2026-02-05 00:42:57 -08:00
payloads:
2026-06-19 18:07:27 -07:00
mkdir -p src/gen/images
2026-06-22 08:51:22 -07:00
mkdir -p src/gen/payloads
@for file in payloads/*; do \
name=$$(basename "$$file"); \
name=$${name%.*}; \
echo " XXD $$file"; \
2026-07-06 04:05:57 -07:00
echo "#pragma once" > "src/gen/payloads/$$name.h"; \
xxd -i "$$file" \
| sed 's/unsigned char/static const unsigned char/g' \
| sed 's/unsigned int/static const size_t/g' \
2026-07-06 04:05:57 -07:00
>> "src/gen/payloads/$$name.h"; \
2026-06-22 08:51:22 -07:00
done
2026-06-19 17:51:51 -07:00
@for file in images/*; do \
name=$$(basename "$$file"); \
name=$${name%.*}; \
2026-02-05 00:42:57 -08:00
echo " XXD $$file"; \
2026-07-06 04:05:57 -07:00
echo "#pragma once" > "src/gen/images/$$name.h"; \
xxd -i "$$file" \
| sed 's/unsigned char/static const unsigned char/g' \
| sed 's/unsigned int/static const size_t/g' \
2026-07-06 04:05:57 -07:00
>> "src/gen/images/$$name.h"; \
2026-02-05 00:42:57 -08:00
done
2026-06-19 17:51:51 -07:00
xxd -i -n "DFUHelperDeviceInfo" resources/DFUHelperDeviceInfo.json > src/gen/DFUHelperDeviceInfo.h
2023-02-13 10:46:33 +08:00
2026-02-05 00:42:57 -08:00
palera1n: payloads
@cmake -S . -B build \
2026-06-30 17:16:56 -07:00
-DCMAKE_SYSROOT="$(CMAKE_SYSROOT)" \
2026-06-30 22:23:51 -07:00
-DCROSS_HOST_TRIPLE="$(CROSS_HOST_TRIPLE)" \
2026-02-05 00:42:57 -08:00
-DCMAKE_BUILD_TYPE=$(BUILD_TYPE) \
-DWITH_GUI=$(WITH_GUI) \
2026-06-27 19:48:40 -07:00
-DWITH_TUI=$(WITH_TUI) \
2026-06-30 22:23:51 -07:00
-DWITH_RAMDISK=$(WITH_RAMDISK) \
-DWITH_BINPACK=$(WITH_BINPACK) \
2026-02-05 00:42:57 -08:00
-DWITH_STATIC=$(WITH_STATIC) && \
2026-06-30 22:23:51 -07:00
cmake --build build $(BUILD_ARGS)
2023-10-30 17:31:54 +08:00
2026-02-05 00:42:57 -08:00
palera1n_xcode: payloads
@cmake -S . -B build \
-G Xcode \
2026-06-30 17:16:56 -07:00
-DCMAKE_SYSROOT="$(CMAKE_SYSROOT)" \
2026-06-30 22:23:51 -07:00
-DCROSS_HOST_TRIPLE="$(CROSS_HOST_TRIPLE)" \
2026-02-05 00:42:57 -08:00
-DCMAKE_BUILD_TYPE=$(BUILD_TYPE) \
-DWITH_GUI=$(WITH_GUI) \
2026-06-27 19:48:40 -07:00
-DWITH_TUI=$(WITH_TUI) \
2026-06-30 22:23:51 -07:00
-DWITH_RAMDISK=$(WITH_RAMDISK) \
-DWITH_BINPACK=$(WITH_BINPACK) \
2026-02-05 00:42:57 -08:00
-DWITH_STATIC=$(WITH_STATIC)
2023-01-16 16:17:41 +08:00
2026-06-20 23:18:52 -07:00
palera1n_mingw: payloads
@cmake -S . -B build \
-G "MinGW Makefiles" \
2026-06-30 17:16:56 -07:00
-DCMAKE_SYSROOT="$(CMAKE_SYSROOT)" \
2026-06-30 22:23:51 -07:00
-DCROSS_HOST_TRIPLE="$(CROSS_HOST_TRIPLE)" \
2026-06-20 23:18:52 -07:00
-DCMAKE_BUILD_TYPE=$(BUILD_TYPE) \
-DWITH_GUI=$(WITH_GUI) \
2026-06-27 19:48:40 -07:00
-DWITH_TUI=$(WITH_TUI) \
2026-06-30 22:23:51 -07:00
-DWITH_RAMDISK=$(WITH_RAMDISK) \
-DWITH_BINPACK=$(WITH_BINPACK) \
2026-06-20 23:18:52 -07:00
-DWITH_STATIC=$(WITH_STATIC) && \
2026-06-30 22:23:51 -07:00
cmake --build build $(BUILD_ARGS)
2026-06-20 23:18:52 -07:00
2023-01-16 16:17:41 +08:00
clean:
2026-06-30 22:23:51 -07:00
@rm -rf build src/gen