summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJunegunn Choi <junegunn.c@gmail.com>2017-06-02 16:32:15 +0900
committerJunegunn Choi <junegunn.c@gmail.com>2017-06-02 17:59:01 +0900
commit8bbf9335e13f4d56fd7008757d4a9ead34e6381c (patch)
tree23fd133228c0edd817e06db1345248ef4f88ec23 /src
parent159f30b37fb40f391cd97110cef943a290a471ab (diff)
Restructuring: main package in project root
Diffstat (limited to 'src')
-rw-r--r--src/Makefile119
-rw-r--r--src/README.md106
-rw-r--r--src/fzf/main.go7
3 files changed, 0 insertions, 232 deletions
diff --git a/src/Makefile b/src/Makefile
deleted file mode 100644
index 5205b1c1..00000000
--- a/src/Makefile
+++ /dev/null
@@ -1,119 +0,0 @@
-ifndef GOOS
-UNAME_S := $(shell uname -s)
-ifeq ($(UNAME_S),Darwin)
- GOOS := darwin
-else ifeq ($(UNAME_S),Linux)
- GOOS := linux
-else
-$(error "$$GOOS is not defined.")
-endif
-endif
-
-SOURCES := $(wildcard *.go */*.go)
-ROOTDIR := $(shell dirname $(realpath $(lastword $(MAKEFILE_LIST))))
-BINDIR := $(shell dirname $(ROOTDIR))/bin
-BINARY32 := fzf-$(GOOS)_386
-BINARY64 := fzf-$(GOOS)_amd64
-BINARYARM5 := fzf-$(GOOS)_arm5
-BINARYARM6 := fzf-$(GOOS)_arm6
-BINARYARM7 := fzf-$(GOOS)_arm7
-BINARYARM8 := fzf-$(GOOS)_arm8
-VERSION := $(shell awk -F= '/version =/ {print $$2}' constants.go | tr -d "\" ")
-RELEASE32 := fzf-$(VERSION)-$(GOOS)_386
-RELEASE64 := fzf-$(VERSION)-$(GOOS)_amd64
-RELEASEARM5 := fzf-$(VERSION)-$(GOOS)_arm5
-RELEASEARM6 := fzf-$(VERSION)-$(GOOS)_arm6
-RELEASEARM7 := fzf-$(VERSION)-$(GOOS)_arm7
-RELEASEARM8 := fzf-$(VERSION)-$(GOOS)_arm8
-
-# https://en.wikipedia.org/wiki/Uname
-UNAME_M := $(shell uname -m)
-ifeq ($(UNAME_M),x86_64)
- BINARY := $(BINARY64)
-else ifeq ($(UNAME_M),amd64)
- BINARY := $(BINARY64)
-else ifeq ($(UNAME_M),i686)
- BINARY := $(BINARY32)
-else ifeq ($(UNAME_M),i386)
- BINARY := $(BINARY32)
-else ifeq ($(UNAME_M),armv5l)
- BINARY := $(BINARYARM5)
-else ifeq ($(UNAME_M),armv6l)
- BINARY := $(BINARYARM6)
-else ifeq ($(UNAME_M),armv7l)
- BINARY := $(BINARYARM7)
-else
-$(error "Build on $(UNAME_M) is not supported, yet.")
-endif
-
-all: fzf/$(BINARY)
-
-ifeq ($(GOOS),windows)
-release: fzf/$(BINARY32) fzf/$(BINARY64)
- cd fzf && cp -f $(BINARY32) fzf.exe && zip $(RELEASE32).zip fzf.exe
- cd fzf && cp -f $(BINARY64) fzf.exe && zip $(RELEASE64).zip fzf.exe
- cd fzf && rm -f fzf.exe
-else ifeq ($(GOOS),linux)
-release: fzf/$(BINARY32) fzf/$(BINARY64) fzf/$(BINARYARM5) fzf/$(BINARYARM6) fzf/$(BINARYARM7) fzf/$(BINARYARM8)
- cd fzf && cp -f $(BINARY32) fzf && tar -czf $(RELEASE32).tgz fzf
- cd fzf && cp -f $(BINARY64) fzf && tar -czf $(RELEASE64).tgz fzf
- cd fzf && cp -f $(BINARYARM5) fzf && tar -czf $(RELEASEARM5).tgz fzf
- cd fzf && cp -f $(BINARYARM6) fzf && tar -czf $(RELEASEARM6).tgz fzf
- cd fzf && cp -f $(BINARYARM7) fzf && tar -czf $(RELEASEARM7).tgz fzf
- cd fzf && cp -f $(BINARYARM8) fzf && tar -czf $(RELEASEARM8).tgz fzf
- cd fzf && rm -f fzf
-else
-release: fzf/$(BINARY32) fzf/$(BINARY64)
- cd fzf && cp -f $(BINARY32) fzf && tar -czf $(RELEASE32).tgz fzf
- cd fzf && cp -f $(BINARY64) fzf && tar -czf $(RELEASE64).tgz fzf
- cd fzf && rm -f fzf
-endif
-
-release-all: clean test
- GOOS=darwin make release
- GOOS=linux make release
- GOOS=freebsd make release
- GOOS=openbsd make release
- GOOS=windows make release
-
-deps: $(SOURCES)
- cd .. && go get -u github.com/Masterminds/glide && $(GOPATH)/bin/glide install
-
-test: deps
- SHELL=/bin/sh GOOS= go test -v -tags "$(TAGS)" ./...
-
-install: $(BINDIR)/fzf
-
-uninstall:
- rm -f $(BINDIR)/fzf $(BINDIR)/$(BINARY)
-
-clean:
- cd fzf && rm -f fzf-*
-
-fzf/$(BINARY32): deps
- cd fzf && GOARCH=386 go build -a -ldflags "-w -extldflags=$(LDFLAGS)" -tags "$(TAGS)" -o $(BINARY32)
-
-fzf/$(BINARY64): deps
- cd fzf && GOARCH=amd64 go build -a -ldflags "-w -extldflags=$(LDFLAGS)" -tags "$(TAGS)" -o $(BINARY64)
-
-# https://github.com/golang/go/wiki/GoArm
-fzf/$(BINARYARM5): deps
- cd fzf && GOARCH=arm GOARM=5 go build -a -ldflags "-w -extldflags=$(LDFLAGS)" -tags "$(TAGS)" -o $(BINARYARM5)
-
-fzf/$(BINARYARM6): deps
- cd fzf && GOARCH=arm GOARM=6 go build -a -ldflags "-w -extldflags=$(LDFLAGS)" -tags "$(TAGS)" -o $(BINARYARM6)
-
-fzf/$(BINARYARM7): deps
- cd fzf && GOARCH=arm GOARM=7 go build -a -ldflags "-w -extldflags=$(LDFLAGS)" -tags "$(TAGS)" -o $(BINARYARM7)
-
-fzf/$(BINARYARM8): deps
- cd fzf && GOARCH=arm64 go build -a -ldflags "-w -extldflags=$(LDFLAGS)" -tags "$(TAGS)" -o $(BINARYARM8)
-
-$(BINDIR)/fzf: fzf/$(BINARY) | $(BINDIR)
- cp -f fzf/$(BINARY) $(BINDIR)
- cd $(BINDIR) && ln -sf $(BINARY) fzf
-
-$(BINDIR):
- mkdir -p $@
-
-.PHONY: all deps release release-all test install uninstall clean
diff --git a/src/README.md b/src/README.md
deleted file mode 100644
index ec88ca23..00000000
--- a/src/README.md
+++ /dev/null
@@ -1,106 +0,0 @@
-fzf in Go
-=========
-
-<img src="https://cloud.githubusercontent.com/assets/700826/5725028/028ea834-9b93-11e4-9198-43088c3f295d.gif" height="463" alt="fzf in go">
-
-This directory contains the source code for the new fzf implementation in
-[Go][go].
-
-Upgrade from Ruby version
--------------------------
-
-The install script has been updated to download the right binary for your
-system. If you already have installed fzf, simply git-pull the repository and
-rerun the install script.
-
-```sh
-cd ~/.fzf
-git pull
-./install
-```
-
-Otherwise, follow [the instruction][install] as before. You can also install
-fzf using Homebrew if you prefer that way.
-
-Motivations
------------
-
-### No Ruby dependency
-
-There have always been complaints about fzf being a Ruby script. To make
-matters worse, Ruby 2.1 removed ncurses binding from its standard libary.
-Because of the change, users running Ruby 2.1 or above are forced to build C
-extensions of curses gem to meet the requirement of fzf. The new Go version
-will be distributed as an executable binary so it will be much more accessible
-and should be easier to setup.
-
-### Performance
-
-Many people have been surprised to see how fast fzf is even when it was
-written in Ruby. It stays quite responsive even for 100k+ lines, which is
-well above the size of the usual input.
-
-The new Go version, of course, is significantly faster than that. It has all
-the performance optimization techniques used in Ruby implementation and more.
-It also doesn't suffer from [GIL][gil], so the search performance scales
-proportional to the number of CPU cores. On my MacBook Pro (Mid 2012), the new
-version was shown to be an order of magnitude faster on certain cases. It also
-starts much faster though the difference may not be noticeable.
-
-Build
------
-
-See [BUILD.md](../BUILD.md)
-
-Test
-----
-
-Unit tests can be run with `make test`. Integration tests are written in Ruby
-script that should be run on tmux.
-
-```sh
-cd src
-
-# Unit tests
-make test
-
-# Integration tests
-ruby ../test/test_go.rb
-
-# Build binary for the platform
-make
-
-# Install the executable to ../bin directory
-make install
-
-# Make release archives
-make release
-
-# Make release archives for all supported platforms
-make release-all
-```
-
-Third-party libraries used
---------------------------
-
-- ~[ncurses][ncurses]~
-- [mattn/go-runewidth](https://github.com/mattn/go-runewidth)
- - Licensed under [MIT](http://mattn.mit-license.org)
-- [mattn/go-shellwords](https://github.com/mattn/go-shellwords)
- - Licensed under [MIT](http://mattn.mit-license.org)
-- [mattn/go-isatty](https://github.com/mattn/go-isatty)
- - Licensed under [MIT](http://mattn.mit-license.org)
-- [tcell](https://github.com/gdamore/tcell)
- - Licensed under [Apache License 2.0](https://github.com/gdamore/tcell/blob/master/LICENSE)
-
-License
--------
-
-[MIT](LICENSE)
-
-[install]: https://github.com/junegunn/fzf#installation
-[go]: https://golang.org/
-[gil]: http://en.wikipedia.org/wiki/Global_Interpreter_Lock
-[ncurses]: https://www.gnu.org/software/ncurses/
-[req]: http://golang.org/doc/install
-[tcell]: https://github.com/gdamore/tcell
diff --git a/src/fzf/main.go b/src/fzf/main.go
deleted file mode 100644
index 29d4767c..00000000
--- a/src/fzf/main.go
+++ /dev/null
@@ -1,7 +0,0 @@
-package main
-
-import "github.com/junegunn/fzf/src"
-
-func main() {
- fzf.Run(fzf.ParseOptions())
-}