You can not select more than 25 topics
Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
- LINGUIST_PATH = .linguist
-
- # shared objects
- RESOURCES_DIR=./.shared
- LINUX_DIR=$(RESOURCES_DIR)/linux-x86-64
- LINUX_SHARED_LIB=$(LINUX_DIR)/libenry.so
- DARWIN_DIR=$(RESOURCES_DIR)/darwin
- DARWIN_SHARED_LIB=$(DARWIN_DIR)/libenry.dylib
- STATIC_LIB=$(RESOURCES_DIR)/libenry.a
- HEADER_FILE=libenry.h
- NATIVE_LIB=./shared/enry.go
-
- $(LINGUIST_PATH):
- git clone https://github.com/github/linguist.git $@
-
- clean-linguist:
- rm -rf $(LINGUIST_PATH)
-
- clean-shared:
- rm -rf $(RESOURCES_DIR)
-
- clean: clean-linguist clean-shared
-
- code-generate: $(LINGUIST_PATH)
- mkdir -p data && \
- go run internal/code-generator/main.go
- ENRY_TEST_REPO="$${PWD}/.linguist" go test -v \
- -run Test_GeneratorTestSuite \
- ./internal/code-generator/generator \
- -testify.m TestUpdateGeneratorTestSuiteGold \
- -update_gold
-
- benchmarks: $(LINGUIST_PATH)
- go test -run=NONE -bench=. && \
- benchmarks/linguist-total.rb
-
- benchmarks-samples: $(LINGUIST_PATH)
- go test -run=NONE -bench=. -benchtime=5us && \
- benchmarks/linguist-samples.rb
-
- benchmarks-slow: $(LINGUIST_PATH)
- mkdir -p benchmarks/output && \
- go test -run=NONE -bench=. -slow -benchtime=100ms -timeout=100h > benchmarks/output/enry_samples.bench && \
- benchmarks/linguist-samples.rb 5 > benchmarks/output/linguist_samples.bench
-
- linux-shared: $(LINUX_SHARED_LIB)
-
- darwin-shared: $(DARWIN_SHARED_LIB)
-
- $(DARWIN_SHARED_LIB):
- mkdir -p $(DARWIN_DIR) && \
- CC="o64-clang" CXX="o64-clang++" CGO_ENABLED=1 GOOS=darwin go build -buildmode=c-shared -o $(DARWIN_SHARED_LIB) $(NATIVE_LIB) && \
- mv $(DARWIN_DIR)/$(HEADER_FILE) $(RESOURCES_DIR)/$(HEADER_FILE)
-
- $(LINUX_SHARED_LIB):
- mkdir -p $(LINUX_DIR) && \
- CGO_ENABLED=1 GOOS=linux GOARCH=amd64 go build -buildmode=c-shared -o $(LINUX_SHARED_LIB) $(NATIVE_LIB) && \
- mv $(LINUX_DIR)/$(HEADER_FILE) $(RESOURCES_DIR)/$(HEADER_FILE)
-
-
- static: $(STATIC_LIB)
-
- $(STATIC_LIB):
- CGO_ENABLED=1 go build -buildmode=c-archive -o $(STATIC_LIB) $(NATIVE_LIB)
-
- .PHONY: benchmarks benchmarks-samples benchmarks-slow
|