refactor: 重构构建配置并更新构建脚本

- 重构构建配置以使用映射表定义目标平台,并改进输出日志显示格式。
- 更新构建脚本以使用 `bun build.ts` 替代手动编译命令
This commit is contained in:
2026-01-18 06:19:05 +08:00
parent aaa96c4a09
commit dce7ab817e
2 changed files with 27 additions and 16 deletions

View File

@@ -1,23 +1,34 @@
const targets = [
const targetMap = {
'bun-windows-x64': 'x86_64-pc-windows-msvc',
'bun-darwin-arm64': 'aarch64-apple-darwin',
'bun-darwin-x64': 'x86_64-apple-darwin',
'bun-linux-x64': 'x86_64-unknown-linux-gnu',
'bun-linux-arm64': 'aarch64-unknown-linux-gnu',
} as const
type BunTarget = keyof typeof targetMap
const targets: BunTarget[] = [
'bun-windows-x64',
'bun-darwin-arm64',
'bun-linux-x64',
] as const
]
const outputs = await Promise.all(
targets.map((target) =>
Bun.build({
entrypoints: ['./.output/server/index.mjs'],
compile: {
outfile: `server-${target}`,
target,
},
outdir: './out',
}),
),
const buildTasks = targets.map((bunTarget) =>
Bun.build({
entrypoints: ['./.output/server/index.mjs'],
compile: {
outfile: `server-${targetMap[bunTarget]}`,
target: bunTarget,
},
outdir: './out',
}),
)
const outputs = await Promise.all(buildTasks)
for (const [index, output] of outputs.entries()) {
console.log(`\n${targets[index]}:`)
console.log(output.outputs)
const task = buildTasks[index]
if (!task) continue
console.log(output.outputs.map((item) => item.path))
}

View File

@@ -4,7 +4,7 @@
"type": "module",
"scripts": {
"build": "vite build && bun run compile",
"compile": "rm -rf out && bun build --compile .output/server/index.mjs --outfile out/server",
"compile": "rm -rf out && bun build.ts",
"db:generate": "drizzle-kit generate",
"db:migrate": "drizzle-kit migrate",
"db:push": "drizzle-kit push",