summaryrefslogtreecommitdiff
path: root/config/izpack/registry/Makefile
blob: 340f5ed93932f08a8381f613a82ab676c17078dd (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
##############################################################################

BINDIR			 = bin
SOURCEDIR		 = src
OUTPUTDIR		 = classes

JAVA_FILES		 = Main
JAVA_SOURCES		+= $(JAVA_FILES:%=$(SOURCEDIR)/%.java)

APP_MAIN		 = Main
APP_ARGS		 =

CYGWIN			 = $(filter CYGWIN%,$(shell uname))
CYGPATH			 = $(if $(CYGWIN),`cygpath -wp $(1)`,$(1))

REGISTRY_HOME		?= /home/linuxsoft/apps/registry
REGISTRY_JARFILE	 = $(REGISTRY_HOME)/bin/registry.jar

JAVA_HOME		 = /home/linuxsoft/apps/java-1.4

JAVAC			?= $(JAVA_HOME)/bin/javac
JAVAC_OPTIONS		+= -classpath $(call CYGPATH,$(REGISTRY_JARFILE))
JAVAC_OPTIONS		+= -d $(OUTPUTDIR)

JAR			?= $(JAVA_HOME)/bin/jar
JAR_OPTIONS		+= 
SETENV_JARFILE		 = $(BINDIR)/setenv.jar

JAVA			+= $(JAVA_HOME)/bin/java
JAVA_OPTIONS		+= -cp $(call CYGPATH,$(REGISTRY_JARFILE):$(OUTPUTDIR))
JAVA_OPTIONS		+= -Djava.library.path=$(call CYGPATH,$(REGISTRY_HOME)/bin)

##############################################################################

MKDIR			 = mkdir -p
RM			 = rm -f
TOUCH			 = touch

##############################################################################
# Commands

all: .latest-jc

clean:
	@$(RM) -r $(OUTPUTDIR) .latest-*

run: all
	@$(JAVA) $(JAVA_OPTIONS) $(APP_MAIN) $(APP_ARGS)

.PHONY: all
.PHONY: clean
.PHONY: run

##############################################################################
# Rules

.latest-jc: $(JAVA_SOURCES)
	@[ -d "$(OUTPUTDIR)" ] || $(MKDIR) $(OUTPUTDIR)
	$(JAVAC) $(JAVAC_OPTIONS) $<
	$(JAR) cfm $(SETENV_JARFILE) \
	    src/MANIFEST.MF -C $(OUTPUTDIR) \
	    $(APP_MAIN).class
	@$(TOUCH) $@

##############################################################################