mirror of
https://github.com/YspCoder/clawgo.git
synced 2026-04-29 08:08:59 +08:00
fix
This commit is contained in:
19
Makefile
19
Makefile
@@ -1,4 +1,4 @@
|
||||
.PHONY: all build install uninstall clean help test install-bootstrap-docs
|
||||
.PHONY: all build build-all install uninstall clean help test install-bootstrap-docs sync-embed-workspace
|
||||
|
||||
# Build variables
|
||||
BINARY_NAME=clawgo
|
||||
@@ -32,6 +32,8 @@ CLAWGO_HOME?=$(USER_HOME)/.clawgo
|
||||
WORKSPACE_DIR?=$(CLAWGO_HOME)/workspace
|
||||
WORKSPACE_SKILLS_DIR=$(WORKSPACE_DIR)/skills
|
||||
BUILTIN_SKILLS_DIR=$(CURDIR)/skills
|
||||
WORKSPACE_SOURCE_DIR=$(CURDIR)/workspace
|
||||
EMBED_WORKSPACE_DIR=$(CURDIR)/cmd/$(BINARY_NAME)/workspace
|
||||
|
||||
# OS detection
|
||||
UNAME_S:=$(shell uname -s)
|
||||
@@ -69,7 +71,7 @@ BINARY_PATH=$(BUILD_DIR)/$(BINARY_NAME)-$(PLATFORM)-$(ARCH)
|
||||
all: build
|
||||
|
||||
## build: Build the clawgo binary for current platform
|
||||
build:
|
||||
build: sync-embed-workspace
|
||||
@echo "Building $(BINARY_NAME) for $(PLATFORM)/$(ARCH)..."
|
||||
@mkdir -p $(BUILD_DIR)
|
||||
$(GO) build $(GOFLAGS) $(LDFLAGS) -o $(BINARY_PATH) ./$(CMD_DIR)
|
||||
@@ -77,7 +79,7 @@ build:
|
||||
@ln -sf $(BINARY_NAME)-$(PLATFORM)-$(ARCH) $(BUILD_DIR)/$(BINARY_NAME)
|
||||
|
||||
## build-all: Build clawgo for all platforms
|
||||
build-all:
|
||||
build-all: sync-embed-workspace
|
||||
@echo "Building for multiple platforms..."
|
||||
@mkdir -p $(BUILD_DIR)
|
||||
GOOS=linux GOARCH=amd64 $(GO) build $(LDFLAGS) -o $(BUILD_DIR)/$(BINARY_NAME)-linux-amd64 ./$(CMD_DIR)
|
||||
@@ -87,6 +89,17 @@ build-all:
|
||||
GOOS=windows GOARCH=amd64 $(GO) build $(LDFLAGS) -o $(BUILD_DIR)/$(BINARY_NAME)-windows-amd64.exe ./$(CMD_DIR)
|
||||
@echo "All builds complete"
|
||||
|
||||
## sync-embed-workspace: Sync root workspace files into cmd/clawgo/workspace for go:embed
|
||||
sync-embed-workspace:
|
||||
@echo "Syncing workspace seed files for embedding..."
|
||||
@if [ ! -d "$(WORKSPACE_SOURCE_DIR)" ]; then \
|
||||
echo "✗ Missing source workspace directory: $(WORKSPACE_SOURCE_DIR)"; \
|
||||
exit 1; \
|
||||
fi
|
||||
@mkdir -p "$(EMBED_WORKSPACE_DIR)"
|
||||
@rsync -a --delete "$(WORKSPACE_SOURCE_DIR)/" "$(EMBED_WORKSPACE_DIR)/"
|
||||
@echo "✓ Synced to $(EMBED_WORKSPACE_DIR)"
|
||||
|
||||
## install: Install clawgo to system and copy builtin skills
|
||||
install: build
|
||||
@echo "Installing $(BINARY_NAME)..."
|
||||
|
||||
Reference in New Issue
Block a user