Files
TorClientApp/Makefile
2022-01-04 21:04:59 -05:00

90 lines
3.1 KiB
Makefile

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