Merge branch 'maint' into java-work
[platform/upstream/automake.git] / lib / am / java.am
1 ## automake - create Makefile.in from Makefile.am
2 ## Copyright (C) 1998, 1999, 2001, 2003, 2004, 2006, 2008, 2009 Free Software
3 ## Foundation, Inc.
4
5 ## This program is free software; you can redistribute it and/or modify
6 ## it under the terms of the GNU General Public License as published by
7 ## the Free Software Foundation; either version 2, or (at your option)
8 ## any later version.
9
10 ## This program is distributed in the hope that it will be useful,
11 ## but WITHOUT ANY WARRANTY; without even the implied warranty of
12 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13 ## GNU General Public License for more details.
14
15 ## You should have received a copy of the GNU General Public License
16 ## along with this program.  If not, see <http://www.gnu.org/licenses/>.
17
18
19 ## ---------- ##
20 ## Building.  ##
21 ## ---------- ##
22
23 if %?FIRST%
24 JAVAC = javac
25 CLASSPATH_ENV = CLASSPATH=$(JAVAROOT):$(srcdir)/$(JAVAROOT)$${CLASSPATH:+":$$CLASSPATH"}
26 JAVAROOT = $(top_builddir)
27 endif %?FIRST%
28
29 class%NDIR%.stamp: $(am__java_sources)
30         @list1='$?'; list2=; if test -n "$$list1"; then \
31           for p in $$list1; do \
32             if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
33             list2="$$list2 $$d$$p"; \
34           done; \
35           echo '$(CLASSPATH_ENV) $(JAVAC) -d $(JAVAROOT) $(AM_JAVACFLAGS) $(JAVACFLAGS) '"$$list2"; \
36           $(CLASSPATH_ENV) $(JAVAC) -d $(JAVAROOT) $(AM_JAVACFLAGS) $(JAVACFLAGS) $$list2; \
37         else :; fi
38         echo timestamp > $@
39
40
41 ## ------------ ##
42 ## Installing.  ##
43 ## ------------ ##
44
45 if %?INSTALL%
46 am__installdirs += "$(DESTDIR)$(%NDIR%dir)"
47 ?EXEC?.PHONY install-exec-am: install-%DIR%JAVA
48 ?!EXEC?.PHONY install-data-am: install-%DIR%JAVA
49 install-%DIR%JAVA: class%NDIR%.stamp
50         @$(NORMAL_INSTALL)
51         test -z "$(%NDIR%dir)" || $(MKDIR_P) "$(DESTDIR)$(%NDIR%dir)"
52 ## A single .java file can be compiled into multiple .class files.  So
53 ## we just install all the .class files that got built into this
54 ## directory.  This is not optimal, but will have to do for now.
55         @test -n "$(%DIR%_JAVA)" && test -n "$(%NDIR%dir)" || exit 0; \
56         set x *.class; shift; test "$$1" != "*.class" || exit 0; \
57         echo " $(INSTALL_DATA)" "$$@" "'$(DESTDIR)$(%NDIR%dir)/$$p'"; \
58         $(INSTALL_DATA) "$$@" "$(DESTDIR)$(%NDIR%dir)"
59 endif %?INSTALL%
60
61
62 ## -------------- ##
63 ## Uninstalling.  ##
64 ## -------------- ##
65
66 if %?INSTALL%
67 .PHONY uninstall-am: uninstall-%DIR%JAVA
68 uninstall-%DIR%JAVA:
69         @$(NORMAL_UNINSTALL)
70         @test -n "$(%DIR%_JAVA)" && test -n "$(%NDIR%dir)" || exit 0; \
71         set x *.class; shift; test "$$1" != "*.class" || exit 0; \
72         echo " ( cd '$(DESTDIR)$(%NDIR%dir)' && rm -f" "$$@" ")"; \
73         cd "$(DESTDIR)$(%NDIR%dir)" && rm -f "$$@"
74 endif %?INSTALL%
75
76
77 ## ---------- ##
78 ## Cleaning.  ##
79 ## ---------- ##
80
81 .PHONY clean-am: clean-%NDIR%JAVA
82 clean-%NDIR%JAVA:
83         -rm -f *.class class%NDIR%.stamp
84
85
86 ## -------------- ##
87 ## Distributing.  ##
88 ## -------------- ##
89
90 if %?DIST%
91 DIST_COMMON += %DISTVAR%
92 endif %?DIST%