mirror of https://github.com/apache/cloudstack.git
86 lines
2.4 KiB
Makefile
86 lines
2.4 KiB
Makefile
# Simple Makefile for creating a native binary and a legacy jar file with gcj.
|
|
|
|
GCJ=gcj
|
|
GCJ_FLAGS=-g -O2
|
|
|
|
#JAVAC=$(GCJ) -C
|
|
#JAVAC_FLAGS=$(GCJ_FLAGS)
|
|
JAVAC=jikes-classpath
|
|
JAVAC_FLAGS=-g -O -source 1.5
|
|
|
|
JAR=fastjar
|
|
|
|
PROGRAM=snark
|
|
MAINCLASS=org.klomp.snark.Snark
|
|
|
|
SOURCES= \
|
|
org/klomp/snark/BitField.java \
|
|
org/klomp/snark/ConnectionAcceptor.java \
|
|
org/klomp/snark/CoordinatorListener.java \
|
|
org/klomp/snark/HttpAcceptor.java \
|
|
org/klomp/snark/MetaInfo.java \
|
|
org/klomp/snark/Message.java \
|
|
org/klomp/snark/Peer.java \
|
|
org/klomp/snark/PeerID.java \
|
|
org/klomp/snark/PeerAcceptor.java \
|
|
org/klomp/snark/PeerCheckerTask.java \
|
|
org/klomp/snark/PeerConnectionIn.java \
|
|
org/klomp/snark/PeerConnectionOut.java \
|
|
org/klomp/snark/PeerListener.java \
|
|
org/klomp/snark/PeerMonitorTask.java \
|
|
org/klomp/snark/PeerCoordinator.java \
|
|
org/klomp/snark/PeerState.java \
|
|
org/klomp/snark/Request.java \
|
|
org/klomp/snark/Snark.java \
|
|
org/klomp/snark/SnarkShutdown.java \
|
|
org/klomp/snark/ShutdownListener.java \
|
|
org/klomp/snark/Storage.java \
|
|
org/klomp/snark/StorageListener.java \
|
|
org/klomp/snark/Tracker.java \
|
|
org/klomp/snark/TrackerClient.java \
|
|
org/klomp/snark/TrackerInfo.java \
|
|
org/klomp/snark/bencode/BEValue.java \
|
|
org/klomp/snark/bencode/BEncoder.java \
|
|
org/klomp/snark/bencode/BDecoder.java \
|
|
org/klomp/snark/bencode/InvalidBEncodingException.java
|
|
|
|
STATIC_SOURCES=$(SOURCES) org/klomp/snark/StaticSnark.java
|
|
STATIC_MAINCLASS=org.klomp.snark.StaticSnark
|
|
|
|
GNOME_SOURCES=$(SOURCES) org/klomp/snark/SnarkGnome.java \
|
|
org/klomp/snark/GnomeInfoWindow.java \
|
|
org/klomp/snark/GnomePeerList.java
|
|
GNOME_MAINCLASS=org.klomp.snark.SnarkGnome
|
|
|
|
$(PROGRAM): $(SOURCES)
|
|
$(GCJ) $(GCJ_FLAGS) --main=$(MAINCLASS) -o $(PROGRAM) $(SOURCES)
|
|
|
|
$(PROGRAM)-static: $(STATIC_SOURCES)
|
|
$(GCJ) $(GCJ_FLAGS) -static --main=$(STATIC_MAINCLASS) \
|
|
-o $(PROGRAM)-static $(STATIC_SOURCES)
|
|
|
|
$(PROGRAM)-gnome: $(GNOME-SOURCES)
|
|
$(JAVAC) $(JAVAC_FLAGS) \
|
|
-classpath /usr/share/java/gtk2.8.jar:/usr/share/java/gnome2.12.jar \
|
|
-d dist/classes $(GNOME_SOURCES)
|
|
|
|
$(PROGRAM).jar: $(PROGRAM)-classes Manifest
|
|
$(JAR) cfm $(PROGRAM).jar Manifest -C dist/classes/ .
|
|
|
|
Manifest:
|
|
echo "Main-Class: $(MAINCLASS)" > Manifest
|
|
|
|
classes:
|
|
mkdir dist
|
|
mkdir dist/classes
|
|
|
|
$(PROGRAM)-classes: classes $(SOURCES)
|
|
$(JAVAC) $(JAVAC_FLAGS) -d dist/classes $(SOURCES)
|
|
|
|
all: $(PROGRAM) $(PROGRAM)-static $(PROGRAM).jar
|
|
|
|
clean:
|
|
rm -rf dist Manifest $(PROGRAM) $(PROGRAM)-static $(PROGRAM).jar
|
|
|
|
.PHONY : all clean $(PROGRAM)-classes
|