fix odin syntax
This commit is contained in:
26
Makefile
26
Makefile
@@ -6,6 +6,17 @@ ODIN := odin
|
||||
BUILD_DIR := build
|
||||
SRC_DIR := .
|
||||
|
||||
# C++ shim (WAL replication helpers via RocksDB C++ API)
|
||||
SHIM_DIR := rocksdb_shim
|
||||
SHIM_LIB := $(BUILD_DIR)/libjormun_rocksdb_shim.a
|
||||
SHIM_SRCS := $(SHIM_DIR)/rocksdb_shim.cc
|
||||
SHIM_HDRS := $(SHIM_DIR)/rocksdb_shim.h
|
||||
|
||||
CXX := g++
|
||||
AR := ar
|
||||
CXXFLAGS := -O2 -fPIC -std=c++17 $(INCLUDE_PATH)
|
||||
|
||||
|
||||
# RocksDB and compression libraries
|
||||
ROCKSDB_LIBS := -lrocksdb -lstdc++ -lsnappy -llz4 -lzstd -lz -lbz2
|
||||
|
||||
@@ -27,7 +38,7 @@ RELEASE_FLAGS := -o:speed -disable-assert -no-bounds-check
|
||||
COMMON_FLAGS := -vet -strict-style
|
||||
|
||||
# Linker flags
|
||||
EXTRA_LINKER_FLAGS := $(LIB_PATH) $(ROCKSDB_LIBS)
|
||||
EXTRA_LINKER_FLAGS := $(LIB_PATH) $(SHIM_LIB) $(ROCKSDB_LIBS)
|
||||
|
||||
# Runtime configuration
|
||||
PORT ?= 8000
|
||||
@@ -42,11 +53,20 @@ YELLOW := \033[0;33m
|
||||
RED := \033[0;31m
|
||||
NC := \033[0m # No Color
|
||||
|
||||
$(SHIM_LIB): $(SHIM_SRCS) $(SHIM_HDRS) | $(BUILD_DIR)
|
||||
@echo "$(BLUE)Building RocksDB C++ shim...$(NC)"
|
||||
$(CXX) $(CXXFLAGS) -c $(SHIM_SRCS) -o $(BUILD_DIR)/rocksdb_shim.o
|
||||
$(AR) rcs $(SHIM_LIB) $(BUILD_DIR)/rocksdb_shim.o
|
||||
@echo "$(GREEN)✓ Built: $(SHIM_LIB)$(NC)"
|
||||
|
||||
$(BUILD_DIR):
|
||||
@mkdir -p $(BUILD_DIR)
|
||||
|
||||
# Default target
|
||||
all: build
|
||||
|
||||
# Build debug version
|
||||
build:
|
||||
build: $(SHIM_LIB)
|
||||
@echo "$(BLUE)Building $(PROJECT_NAME) (debug)...$(NC)"
|
||||
@mkdir -p $(BUILD_DIR)
|
||||
$(ODIN) build $(SRC_DIR) \
|
||||
@@ -57,7 +77,7 @@ build:
|
||||
@echo "$(GREEN)✓ Build complete: $(BUILD_DIR)/$(PROJECT_NAME)$(NC)"
|
||||
|
||||
# Build optimized release version
|
||||
release:
|
||||
release: $(SHIM_LIB)
|
||||
@echo "$(BLUE)Building $(PROJECT_NAME) (release)...$(NC)"
|
||||
@mkdir -p $(BUILD_DIR)
|
||||
$(ODIN) build $(SRC_DIR) \
|
||||
|
||||
Reference in New Issue
Block a user