JAVAC = JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64 javac
JAVA = JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64 java

# Path the the gRPC library directory
LIBS = $(HOME)/LEHRE/VORLESUNGEN/GEN/BETRIEBSSYSTEME2/CODE/gRPC/lib

CLASSPATH = $(LIBS)/examples.jar:$(LIBS)/grpc-services-1.75.0.jar:$(LIBS)/grpc-protobuf-1.75.0.jar:$(LIBS)/grpc-stub-1.75.0.jar:$(LIBS)/protobuf-java-util-3.25.8.jar:$(LIBS)/grpc-netty-shaded-1.75.0.jar:$(LIBS)/grpc-protobuf-lite-1.75.0.jar:$(LIBS)/grpc-util-1.75.0.jar:$(LIBS)/grpc-core-1.75.0.jar:$(LIBS)/grpc-context-1.75.0.jar:$(LIBS)/grpc-api-1.75.0.jar:$(LIBS)/guava-33.3.1-jre.jar:$(LIBS)/jsr305-3.0.2.jar:$(LIBS)/proto-google-common-protos-2.59.2.jar:$(LIBS)/protobuf-java-3.25.8.jar:$(LIBS)/gson-2.11.0.jar:$(LIBS)/error_prone_annotations-2.30.0.jar:$(LIBS)/animal-sniffer-annotations-1.24.jar:$(LIBS)/j2objc-annotations-3.0.0.jar:$(LIBS)/perfmark-api-0.27.0.jar:$(LIBS)/failureaccess-1.0.2.jar:$(LIBS)/listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar:$(LIBS)/checker-qual-3.43.0.jar:$(LIBS)/annotations-4.1.1.4.jar:.

compile:
	protoc --java_out=. --grpc-java_out=. -I . hellostream.proto
	@echo javac '*.java'
	@$(JAVAC) -cp $(CLASSPATH) *.java

run-server:
	@echo java HelloWorldServer
	@$(JAVA) -cp $(CLASSPATH) HelloWorldServer

run-client:
	@echo java HelloWorldClient
	@$(JAVA) -cp $(CLASSPATH) HelloWorldClient

clean:
	rm -f *.class *~
	rm -f HelloRequest.java \
	      HelloWorldProto.java \
	      GreeterGrpc.java \
	      HelloRequestOrBuilder.java \
	      HelloReply.java \
	      HelloReplyOrBuilder.java

