Init project

This commit is contained in:
Arnaud 2025-10-03 05:30:09 +02:00
commit 6214dd47f0
No known key found for this signature in database
GPG Key ID: 20E40A5D3110766F
5 changed files with 67 additions and 0 deletions

18
.gitignore vendored Normal file
View File

@ -0,0 +1,18 @@
# If you prefer the allow list template instead of the deny list, see community template:
# https://github.com/github/gitignore/blob/main/community/Golang/Go.AllowList.gitignore
#
# Binaries for programs and plugins
*.exe
*.exe~
*.dll
*.so
*.dylib
# Test binary, built with `go test -c`
*.test
# Output of the go coverage tool, specifically when used with LiteIDE
*.out
# Generated dependencies and cache
nimcache

3
.gitmodules vendored Normal file
View File

@ -0,0 +1,3 @@
[submodule "third_party/nim-codex"]
path = third_party/nim-codex
url = https://github.com/codex-storage/nim-codex.git

42
codex/Makefile Normal file
View File

@ -0,0 +1,42 @@
# Makefile for Codex Go Bindings
# Directories
THIRD_PARTY_DIR := ../third_party
NIM_CODEX_REPO := https://github.com/codex-storage/nim-codex
NIM_CODEX_DIR := $(THIRD_PARTY_DIR)/nim-codex
.PHONY: all clean prepare build-libcodex build
# Default target
all: build
# Prepare third_party directory and clone nim-codex
prepare:
@echo "Creating third_party directory..."
@mkdir -p $(THIRD_PARTY_DIR)
@echo "Cloning nim-codex repository..."
@if [ ! -d "$(NIM_CODEX_DIR)" ]; then \
cd $(THIRD_PARTY_DIR) && \
git clone $(NIM_CODEX_REPO) && \
cd $(NIM_CODEX_DIR) && \
make update; \
else \
echo "nim-codex repository already exists."; \
fi
# Build libcodex
build-libcodex: prepare
@echo "Building libcodex..."
@cd $(NIM_CODEX_DIR) && make libcodex
# Build Codex Go Bindings
build: build-libcodex
@echo "Building Codex Go Bindings..."
go build ./...
# Clean up generated files
clean:
@echo "Cleaning up..."
@rm -rf $(THIRD_PARTY_DIR)
@rm -f codex-go-bindings

3
go.mod Normal file
View File

@ -0,0 +1,3 @@
module codex
go 1.25.1

1
third_party/nim-codex vendored Submodule

@ -0,0 +1 @@
Subproject commit 40cc0195dc99eecd4ea3a4396bb9f1dbd107fd86