📄 makefile
字号:
#
# $Id: Makefile,v 1.4 2001/11/16 07:46:53 tra Exp $
#
# if need to use a particular JDK set JAVA_HOME in your env.
# if you refrence additional libraries they need to be set in the
# CLASSPATH
#
ifneq ($(JAVA_HOME),)
JAVAHOMEBIN = $(JAVA_HOME)/bin/
else
JAVAHOMEBIN =
endif
JAVA = $(JAVAHOMEBIN)java
JAVAC = $(JAVAHOMEBIN)javac
JAVADOC = $(JAVAHOMEBIN)javadoc
JAR = $(JAVAHOMEBIN)jar
CP = cp -f
HEADER = "Project JXTA"
JXTA = "Project JXTA (TM) Technology 1.0"
TOP = $(shell pwd)
CLASSDIR = $(TOP)/classes
PKGDIR = $(TOP)/pkg
LIBDIR = $(PKGDIR)/lib
BINDIR = $(PKGDIR)/classes
DOCDIR = doc
REFDOCDIR = refdoc
PLATFORMCLASSES = $(PLATFORM)/classes
PLATFORMLIB = $(PLATFORMCLASSES)/jxta.jar
ifeq ($(PLATFORM),)
PLATFORM = "../../../../../../platform/binding/java"
endif
ifeq ($(JXTAXMLLIB),)
JXTAXMLLIB =""
endif
ifeq ($(LOG4JLIB),)
LOG4JLIB = $(PLATFORM)/lib/log4j.jar
endif
ifeq ($(BEEPLIB),)
BEEPLIB = $(PLATFORM)/lib/beepcore.jar
endif
ifeq ($(JXTASECLIB),)
JXTASECLIB = $(PLATFORM)/lib/jxtasecurity.jar
endif
ifeq ($(JETTYLIB),)
JETTYLIB = $(PLATFORM)/lib/org.mortbay.jetty.jar
endif
ifeq ($(SERVLETLIB),)
SERVLETLIB = $(PLATFORM)/lib/servlet.jar
endif
ifeq ($(JXTATLSLIB1),)
JXTATLSLIB1 = $(PLATFORM)/lib/cryptix-asn1.jar
endif
ifeq ($(JXTATLSLIB2),)
JXTATLSLIB2 = $(PLATFORM)/lib/cryptix32.jar
endif
ifeq ($(JXTATLSLIB3),)
JXTATLSLIB3 = $(PLATFORM)/lib/jxtaptls.jar
endif
ifeq ($(JXTATLSLIB4),)
JXTATLSLIB4 = $(PLATFORM)/lib/minimalBC.jar
endif
ifneq ($(CLASSPATH),)
JXTACLASSPATH="$(CLASSPATH)$(CPSEP)$(CLASSDIR)$(CPSEP)$(PLATFORMLIB)$(CPSEP)$(JXTAXMLLIB)$(CPSEP)$(LOG4JLIB)$(CPSEP)$(BEEPLIB)$(CPSEP)$(JXTASECLIB)$(CPSEP)$(JXTATLSLIB1)$(CPSEP)$(JXTATLSLIB2)$(CPSEP)$(JXTATLSLIB3)$(CPSEP)$(JXTATLSLIB4)"
else
JXTACLASSPATH="$(CLASSDIR)$(CPSEP)$(PLATFORMLIB)$(CPSEP)$(JXTAXMLLIB)$(CPSEP)$(LOG4JLIB)$(CPSEP)$(BEEPLIB)$(CPSEP)$(JXTASECLIB)$(CPSEP)$(JXTATLSLIB1)$(CPSEP)$(JXTATLSLIB2)$(CPSEP)$(JXTATLSLIB3)$(CPSEP)$(JXTATLSLIB4)"
endif
ifeq (true,$(OPTIMIZE))
JAVACOPT=-O -g:none
else
JAVACOPT=
endif
#
# Cygwin uses the MS-Windows style classpath, so "fix" it for them
#
ifeq (cygwin,$(OSTYPE))
CPSEP = ";"
TOP := "$(shell cygpath --path --windows "$(TOP)")"
JXTACLASSPATH := "$(shell cygpath --path --windows "$(JXTACLASSPATH)")"
# JAVAHOMEBIN := "$(shell cygpath --path --windows "$(JAVAHOMEBIN)")"
else
CPSEP = ":"
endif
.PHONY: all compile demo clean clobber help
all: compile
compile: demo
$(PLATFORMLIB):
@echo building Platform using $(JAVAC)
@echo CLASSPATH = $(JXTACLASSPATH)
$(MAKE) -C $(PLATFORM)
demo:
@echo building JXTA Appdemo $(JAVAC)
@echo CLASSPATH = $(JXTACLASSPATH)
@if [ '!' -d $(CLASSDIR) ]; then mkdir $(CLASSDIR); fi;
@$(JAVAC) $(JAVACOPT) -d $(CLASSDIR) -deprecation -classpath $(JXTACLASSPATH) JxtaAppDemo.java
@echo JxtaAppDemo
run:
@echo $(JXTACLASSPATH)
@$(JAVA) -classpath $(JXTACLASSPATH) JxtaAppDemo;
zip:
@echo "Creating $(PKGDIR) directory"
@if [ '!' -d $(LIBDIR) ]; then mkdir -p $(LIBDIR); fi;
@if [ '!' -d $(BINDIR) ]; then mkdir -p $(BINDIR); fi;
@echo "Copying libraries into $(LIBDIR)"
@cd $(LIBDIR); \
cp ../../$(JXTASECLIB) .; \
cp ../../$(BEEPLIB) .; cp ../../$(JETTYLIB) .; cp ../../$(SERVLETLIB) .; \
cp ../../$(PLATFORMLIB) . ; cp ../../$(LOG4JLIB) . ; cp ../../$(BEEPLIB) . ; \
cp ../../$(JXTATLSLIB1) . ; cp ../../$(JXTATLSLIB2) . ; \
cp ../../$(JXTATLSLIB3) . ; \
cp ../../$(JXTATLSLIB4) . ;
@echo "Copying sources and executables"
@cd $(PKGDIR); cp ../README Readme.html ; \
cp ../Makefile .; cp ../JxtaAppDemo.java .
@cd $(BINDIR); cp ../../classes/JxtaAppDemo.class . ;
@echo "Creating ex2.zip
cd $(PKGDIR);zip -r ../ex2 . ; unzip -l ../ex2.zip | grep files
cleanclassdir:
@echo cleaning $(CLASSDIR)
@rm -rf $(CLASSDIR)
clean:
@rm -rf $(CLASSDIR)
@rm -rf $(DOCDIR)
@rm -fr $(REFDIR)
clobber: clean
help:
@echo "# Usage : gnumake [all] [compile] [jar] [run] [doc] [javadoc] [refdoc] [clean] [clobber] [help]"
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -