From 4f81cac646c6d116f8741dc317fc69488f0a4075 Mon Sep 17 00:00:00 2001 From: Wentao Guan Date: Mon, 2 Sep 2024 11:19:59 +0800 Subject: [PATCH] Ventoy: vtoytool: build for loongarch and musl gcc -specs /usr/local/musl/lib/musl-gcc.specs -Os -DVTOY_LOONGARCH64 -D_FILE_OFFSET_BITS=64 *.c BabyISO/*.c -IBabyISO -Wall -DUSE_MUSL_C -DBUILD_VTOY_TOOL -o vtoytool_la64 Signed-off-by: Wentao Guan --- INSTALL/tool/loongarch64/vtoytool | Bin 0 -> 77864 bytes VtoyTool/build.sh | 4 ++++ VtoyTool/vtoydm.c | 3 +++ VtoyTool/vtoytool.h | 8 +++++++- 4 files changed, 14 insertions(+), 1 deletion(-) create mode 100755 INSTALL/tool/loongarch64/vtoytool diff --git a/INSTALL/tool/loongarch64/vtoytool b/INSTALL/tool/loongarch64/vtoytool new file mode 100755 index 0000000000000000000000000000000000000000..a8f15a8114c04b054d33c38c91f3d786199cb539 GIT binary patch literal 77864 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 literal 0 HcmV?d00001 diff --git a/VtoyTool/build.sh b/VtoyTool/build.sh index 13e056d5..c8982270 100644 --- a/VtoyTool/build.sh +++ b/VtoyTool/build.sh @@ -9,6 +9,10 @@ aarch64-buildroot-linux-uclibc-gcc -Os -static -DVTOY_AA64 -D_FILE_OFFSET_BITS=6 mips64el-linux-musl-gcc -mips64r2 -mabi=64 -Os -static -DVTOY_MIPS64 -D_FILE_OFFSET_BITS=64 *.c BabyISO/*.c -IBabyISO -Wall -DBUILD_VTOY_TOOL -o vtoytool_m64e +#loongarch +#gcc -specs /usr/local/musl/lib/musl-gcc.specs -Os -DVTOY_LOONGARCH64 -D_FILE_OFFSET_BITS=64 *.c BabyISO/*.c -IBabyISO -Wall -DUSE_MUSL_C -DBUILD_VTOY_TOOL -o vtoytool_la64 + + #gcc -D_FILE_OFFSET_BITS=64 -static -Wall -DBUILD_VTOY_TOOL *.c BabyISO/*.c -IBabyISO -o vtoytool_64 #gcc -D_FILE_OFFSET_BITS=64 -Wall -DBUILD_VTOY_TOOL -m32 *.c BabyISO/*.c -IBabyISO -o vtoytool_32 diff --git a/VtoyTool/vtoydm.c b/VtoyTool/vtoydm.c index 10308b2e..896f1802 100644 --- a/VtoyTool/vtoydm.c +++ b/VtoyTool/vtoydm.c @@ -42,12 +42,15 @@ #define O_BINARY 0 #endif +#ifndef USE_MUSL_C #ifndef USE_DIET_C #ifndef __mips__ typedef unsigned long long uint64_t; #endif typedef unsigned int uint32_t; #endif +#else +#endif #pragma pack(4) typedef struct ventoy_img_chunk diff --git a/VtoyTool/vtoytool.h b/VtoyTool/vtoytool.h index e2ddce34..2a123c43 100644 --- a/VtoyTool/vtoytool.h +++ b/VtoyTool/vtoytool.h @@ -23,7 +23,9 @@ #define IS_DIGIT(x) ((x) >= '0' && (x) <= '9') -#ifndef USE_DIET_C +#ifndef USE_MUSL_C + +#ifndef USE_DIET_C #ifndef __mips__ typedef unsigned long long uint64_t; #endif @@ -32,6 +34,10 @@ typedef unsigned short uint16_t; typedef unsigned char uint8_t; #endif +#else +typedef unsigned char uint8_t; +#endif + #define VENTOY_GUID { 0x77772020, 0x2e77, 0x6576, { 0x6e, 0x74, 0x6f, 0x79, 0x2e, 0x6e, 0x65, 0x74 }} typedef enum ventoy_fs_type