export CLASSPATH="app.jar:$(HOME)/i2p/lib/*:$()/java/net/i2p/ExampleClientApp/*" export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 GOPATH:=$(HOME)/go PRE_RELEASE=-p GH_USER=eyedeekay GH_REPO=torclientapp VERSION=0.0.1 TIME=$(date +%Y%m%d%H) QUALIFIER=alpha DESCRIPTION=`cat description.txt` TITLE="Tor Client App" BINARY="torClientApp" OS=$(GOOS) ARCH=$(GOARCH) export OS=$(GOOS) export ARCH=$(GOARCH) all: package jar check appjar: GOOS=$(OS) GOARCH=$(ARCH) gojava -v -o $(BINARY)-$(OS)-$(ARCH).jar build i2pgit.org/idk/torclientapp rm -rf java && mkdir java javac -classpath "$(BINARY)-$(OS)-$(ARCH).jar:$(HOME)/i2p/lib/*" -d java *.java cd java && jar cf ../$(BINARY)-$(OS)-$(ARCH).jar * && cd .. fixvendor: mkdir -p $(GOPATH)/pkg/mod/github.com/sridharv/gojava/ cp $(GOPATH)/src/github.com/sridharv/gojava/LoadJNI.java $(GOPATH)/pkg/mod/github.com/sridharv/gojava/LoadJNI.java package: fmt gojava -v -o $(BINARY)-$(OS)-$(ARCH).jar build i2pgit.org/idk/torclientapp fmt: gofmt -w -s *.go check: unzip *.jar find go/torclientapp -name '*.class' -exec javap {} \; jar: rm -rf java && mkdir java javac -classpath "app.jar:$(HOME)/i2p/lib/*" -d java *.java cd java && jar cf ../app.jar * && cd .. version: gothub release $(PRE_RELEASE) -u $(GH_USER) -r $(GH_REPO) -t $(VERSION) -n '$(TITLE) $(QUALIFIER) Release - $(VERSION)' -d "$(DESCRIPTION)" unversion: gothub delete -u $(GH_USER) -r $(GH_REPO) -t $(VERSION); true upload: gothub upload -R -u $(GH_USER) -r $(GH_REPO) -t $(VERSION) -f $(BINARY)-$(OS)-$(ARCH).jar -l `sha256sum $(BINARY)-$(OS)-$(ARCH)` -f $(BINARY)-$(OS)-$(ARCH).jar download: wget -O $(BINARY)-$(OS)-$(ARCH).jar https://github.com/eyedeekay/torclientapp/releases/download/$(VERSION)/$(BINARY)-$(OS)-$(ARCH).jar timeversion: gothub release $(PRE_RELEASE) -u $(GH_USER) -r $(GH_REPO) -t $(TIME) -n '$(TITLE) $(QUALIFIER) Release - $(TIME)' -d "$(DESCRIPTION)" timeunversion: gothub delete -u $(GH_USER) -r $(GH_REPO) -t $(TIME); true latestversion: latestunversion gothub release $(PRE_RELEASE) -u $(GH_USER) -r $(GH_REPO) -t latest -n '$(TITLE) $(QUALIFIER) Release - Latest' -d "$(DESCRIPTION)" latestunversion: gothub delete -u $(GH_USER) -r $(GH_REPO) -t latest; true timeupload: latestversion gothub upload -R -u $(GH_USER) -r $(GH_REPO) -t $(TIME) -f $(BINARY)-$(OS)-$(ARCH).jar -l `sha256sum $(BINARY)-$(OS)-$(ARCH)` -f $(BINARY)-$(OS)-$(ARCH).jar gothub upload -R -u $(GH_USER) -r $(GH_REPO) -t latest -f $(BINARY)-$(OS)-$(ARCH).jar -l `sha256sum $(BINARY)-$(OS)-$(ARCH)` -f $(BINARY)-$(OS)-$(ARCH).jar timedownload: wget -O $(BINARY)-$(OS)-$(ARCH).jar https://github.com/eyedeekay/torclientapp/releases/download/$(TIME)/$(BINARY)-$(OS)-$(ARCH).jar || \ wget -O $(BINARY)-$(OS)-$(ARCH).jar https://github.com/eyedeekay/torclientapp/releases/download/latest/$(BINARY)-$(OS)-$(ARCH).jar jars: GOOS=linux GOARCH=amd64 make appjar #GOOS=linux GOARCH=386 make appjar #GOOS=darwin GOARCH=amd64 make appjar #GOOS=darwin GOARCH=arm64 make appjar #GOOS=windows GOARCH=amd64 make appjar #GOOS=windows GOARCH=386 make appjar release: jars version upload timeversion latestversion timeupload latestversion