Skip to content

Commit 3f3a899

Browse files
committed
Add makefile, license, and move main.go to preferred location
1 parent b40dc10 commit 3f3a899

File tree

4 files changed

+70
-0
lines changed

4 files changed

+70
-0
lines changed

.gitignore

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,9 @@
1+
# macOS stuff
12
.DS_Store
3+
4+
# Binaries
25
bin/
6+
7+
# Test files
8+
array.json
9+
map.json

CHANGELOG.md

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
# Changelog
2+
3+
All notable changes to this project will be documented in this file.
4+
5+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7+
8+
## [1.0.1] - 2020-06-20
9+
10+
### Added
11+
12+
- Added this change log!
13+
- Added Makefile to build for all systems
14+
- Added docstrings to all exported types and functions
15+
- Added License
16+
17+
### Changed
18+
19+
- jf now prints out help when invalid arguments are supplied
20+
- jf is now able to consume JSON files of various structures
21+
- Various project structure changes to be more consistent with standard Go packages
22+
23+
## [1.0.0] - 2020-06-18
24+
25+
### Added
26+
27+
- Initial release of jf

Makefile

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
EXECUTABLE=jf
2+
WINDOWS=$(EXECUTABLE)_windows_amd64.exe
3+
LINUX=$(EXECUTABLE)_linux_amd64
4+
DARWIN=$(EXECUTABLE)_darwin_amd64
5+
VERSION=$(shell git describe --tags --always --long --dirty)
6+
7+
.PHONY: all test clean
8+
9+
all: test build ## Build and run tests
10+
11+
test: ## Run unit tests
12+
./scripts/test_unit.sh
13+
14+
build: windows linux darwin ## Build binaries
15+
@echo version: $(VERSION)
16+
17+
windows: $(WINDOWS) ## Build for Windows
18+
19+
linux: $(LINUX) ## Build for Linux
20+
21+
darwin: $(DARWIN) ## Build for Darwin (macOS)
22+
23+
$(WINDOWS):
24+
env GOOS=windows GOARCH=amd64 go build -i -v -o $(WINDOWS) -ldflags="-s -w -X main.version=$(VERSION)" ./cmd/jf/main.go
25+
26+
$(LINUX):
27+
env GOOS=linux GOARCH=amd64 go build -i -v -o $(LINUX) -ldflags="-s -w -X main.version=$(VERSION)" ./cmd/jf/main.go
28+
29+
$(DARWIN):
30+
env GOOS=darwin GOARCH=amd64 go build -i -v -o $(DARWIN) -ldflags="-s -w -X main.version=$(VERSION)" ./cmd/jf/main.go
31+
32+
clean: ## Remove previous build
33+
rm -f $(WINDOWS) $(LINUX) $(DARWIN)
34+
35+
help: ## Display available commands
36+
@grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}'
File renamed without changes.

0 commit comments

Comments
 (0)