File: Makefile.am

package info (click to toggle)
icepick 0.01-3
  • links: PTS
  • area: main
  • in suites: lenny
  • size: 19,608 kB
  • ctags: 28,706
  • sloc: java: 134,567; sh: 7,395; xml: 1,565; makefile: 530; ansic: 217
file content (131 lines) | stat: -rwxr-xr-x 5,431 bytes parent folder | download
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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
## Input file for automake to generate the Makefile.in used by configure

ACLOCAL_AMFLAGS = -I m4 ${LOCAL_AUTORECONF_FLAGS}

SUBDIRS = tools

# version info for generated compiler

JDK_VERSION = 1.7.0
RELEASE=$(JDK_VERSION)-opensource
BUILD_NUMBER = b00
USER_RELEASE_SUFFIX := $(shell echo $(USER)_`date '+%d_%b_%Y_%H_%M' | tr "A-Z" "a-z"`)
FULL_VERSION = $(RELEASE)-$(USER_RELEASE_SUFFIX)-$(BUILD_NUMBER)

# Setup the compiler
if FOUND_JAVAC
JCOMPILER = $(JAVAC) $(JAVAC_OPTS) -classpath .:$(USER_CLASSLIB)
else
JCOMPILER = echo "No compiler found" 1>&2; exit 1 
endif

# All our example java source files
OPENJDK_CLASSES = $(LANGTOOLS_SRC_DIR)/src/share/classes
TOOLS_JAVA_FILES = $(OPENJDK_CLASSES)/com/sun/tools/apt/Main.java \
	$(OPENJDK_CLASSES)/com/sun/javadoc/*.java \
	$(OPENJDK_CLASSES)/com/sun/tools/apt/comp/*.java \
	$(OPENJDK_CLASSES)/com/sun/tools/apt/main/*.java \
	$(OPENJDK_CLASSES)/com/sun/tools/apt/util/*.java \
	$(OPENJDK_CLASSES)/com/sun/tools/apt/mirror/apt/*.java \
	$(OPENJDK_CLASSES)/com/sun/tools/apt/mirror/type/*.java \
	$(OPENJDK_CLASSES)/com/sun/tools/apt/mirror/util/*.java \
	$(OPENJDK_CLASSES)/com/sun/tools/apt/mirror/declaration/*.java \
	$(OPENJDK_CLASSES)/com/sun/tools/apt/mirror/*.java \
	$(OPENJDK_CLASSES)/com/sun/tools/javac/api/*.java \
	$(OPENJDK_CLASSES)/com/sun/tools/javac/jvm/*.java \
	$(OPENJDK_CLASSES)/com/sun/tools/javac/sym/*.java \
	$(OPENJDK_CLASSES)/com/sun/tools/javac/code/*.java \
	$(OPENJDK_CLASSES)/com/sun/tools/javac/comp/*.java \
	$(OPENJDK_CLASSES)/com/sun/tools/javac/main/*.java \
	$(OPENJDK_CLASSES)/com/sun/tools/javac/tree/*.java \
	$(OPENJDK_CLASSES)/com/sun/tools/javac/util/*.java \
	$(OPENJDK_CLASSES)/com/sun/tools/javac/*.java \
	$(OPENJDK_CLASSES)/com/sun/tools/javac/model/*.java \
	$(OPENJDK_CLASSES)/com/sun/tools/javac/parser/*.java \
	$(OPENJDK_CLASSES)/com/sun/tools/javac/processing/*.java \
	$(OPENJDK_CLASSES)/com/sun/tools/javac/zip/*.java \
	$(OPENJDK_CLASSES)/com/sun/tools/javah/*.java \
	$(OPENJDK_CLASSES)/com/sun/tools/javadoc/*.java \
	$(OPENJDK_CLASSES)/com/sun/mirror/apt/*.java \
	$(OPENJDK_CLASSES)/com/sun/mirror/type/*.java \
	$(OPENJDK_CLASSES)/com/sun/mirror/util/*.java \
	$(OPENJDK_CLASSES)/com/sun/mirror/declaration/*.java \
	$(OPENJDK_CLASSES)/com/sun/source/tree/*.java \
	$(OPENJDK_CLASSES)/com/sun/source/util/*.java \
	$(OPENJDK_CLASSES)/javax/lang/model/type/*.java \
	$(OPENJDK_CLASSES)/javax/lang/model/util/*.java \
	$(OPENJDK_CLASSES)/javax/lang/model/*.java \
	$(OPENJDK_CLASSES)/javax/lang/model/element/*.java \
	$(OPENJDK_CLASSES)/javax/tools/*.java \
	$(OPENJDK_CLASSES)/javax/annotation/processing/*.java \
	$(OPENJDK_CLASSES)/com/sun/tools/doclets/*.java \
	$(OPENJDK_CLASSES)/com/sun/tools/doclets/formats/html/*.java \
	$(OPENJDK_CLASSES)/com/sun/tools/doclets/formats/html/markup/*.java \
	$(OPENJDK_CLASSES)/com/sun/tools/doclets/internal/toolkit/*.java \
	$(OPENJDK_CLASSES)/com/sun/tools/doclets/internal/toolkit/builders/*.java \
	$(OPENJDK_CLASSES)/com/sun/tools/doclets/internal/toolkit/taglets/*.java \
	$(OPENJDK_CLASSES)/com/sun/tools/doclets/internal/toolkit/util/*.java \
	$(OPENJDK_CLASSES)/com/sun/tools/doclets/internal/toolkit/util/links/*.java \
	$(OPENJDK_CLASSES)/com/sun/tools/doclets/standard/*.java \
	$(OPENJDK_CLASSES)/sun/tools/javap/*.java

# The zip files with classes we want to produce.
TOOLS_ZIP = tools.jar

# Extra objects that will not exist until configure-time
BUILT_SOURCES = $(TOOLS_ZIP)

# All the files we find "interesting"
ALL_TOOLS_FILES = $(TOOLS_JAVA_FILES) 

# Some architecture independent data to be installed.
TOOLS_DATA = $(TOOLS_ZIP)

# Where we want these data files installed.
TOOLSdir = $(libdir)

# Make sure everything is included in the distribution.
dist-hook:
	srcdir_cnt=`echo $(srcdir) | wc -c`; \
	for file in $(ALL_TOOLS_FILES); do \
	  f=`echo $$file | cut -c$$srcdir_cnt-`; \
	  fdir=`dirname $$f`; \
	  if test ! -d $(distdir)/$$fdir; then \
	    echo "$(makeinstalldirs) $(distdir)/$$fdir"; \
	    $(mkinstalldirs) $(distdir)/$$fdir; \
	  fi; \
	  echo "cp -p $$file $(distdir)/$$f"; \
	  cp -p $$file $(distdir)/$$f; \
	done

classes/com/sun/tools/javac/resources/version.properties: \
		$(OPENJDK_CLASSES)/com/sun/tools/javac/resources/version.properties-template
	$(MKDIR) -p $(@D)
	$(SED) 	-e 's/$$(JDK_VERSION)/$(JDK_VERSION)/'  \
		-e 's/$$(FULL_VERSION)/$(FULL_VERSION)/' \
		-e 's/$$(RELEASE)/$(RELEASE)/' \
		< $< > $@

# Always regenerate all .class files and remove them
# immediately.  And copy the property files to the classes dir
# so they get also included.
$(TOOLS_ZIP): $(TOOLS_JAVA_FILES) classes/com/sun/tools/javac/resources/version.properties 
	echo $(TOOLS_JAVA_FILES) > classes.lst
	$(JCOMPILER) -g -d classes @classes.lst
## Copy over resource files.
	@list=`cd $(OPENJDK_CLASSES) && $(FIND) com/sun/tools/{javac,javadoc,apt,javah,doclets} -name \*\.properties -print`; cd $(top_srcdir); for p in $$list; do \
          dirname=`dirname $$p`; \
          if ! test -d classes/"$$dirname"; then mkdir -p classes/"$$dirname"; fi; \
	  cp $(OPENJDK_CLASSES)/$$p classes/$$p; \
	done
## First add classpath tools stuff.
	(cd classes; \
	if test "$(ZIP)" != ""; then $(ZIP) -r ../$(TOOLS_ZIP) .; fi; \
	if test "$(FASTJAR)" != ""; then $(FASTJAR) cf ../$(TOOLS_ZIP) .; fi; \
	cd ..)
	@rm -rf classes 

# Zip file be gone! (and make sure the classes are gone too)
clean-local:
	rm -rf $(TOOLS_ZIP) classes classes.lst