1 | # Source directories
|
---|
2 |
|
---|
3 | export TOP_BUILD_DIR = $(abs_top_builddir)
|
---|
4 |
|
---|
5 | export NETX_DIR = $(abs_top_builddir)/netx.build
|
---|
6 | export NETX_SRCDIR = $(abs_top_srcdir)/netx
|
---|
7 | export NETX_RESOURCE_DIR=$(NETX_SRCDIR)/net/sourceforge/jnlp/resources
|
---|
8 |
|
---|
9 | export REPORT_STYLES_DIRNAME=report-styles
|
---|
10 |
|
---|
11 | export TESTS_SRCDIR=$(abs_top_srcdir)/tests
|
---|
12 | export TESTS_DIR=$(abs_top_builddir)/tests.build
|
---|
13 |
|
---|
14 | export NETX_UNIT_TEST_SRCDIR=$(TESTS_SRCDIR)/netx/unit
|
---|
15 | export NETX_TEST_DIR=$(TESTS_DIR)/netx
|
---|
16 | export NETX_UNIT_TEST_DIR=$(NETX_TEST_DIR)/unit
|
---|
17 |
|
---|
18 | export JUNIT_RUNNER_DIR=$(TESTS_DIR)/junit-runner
|
---|
19 | export JUNIT_RUNNER_SRCDIR=$(TESTS_SRCDIR)/junit-runner
|
---|
20 |
|
---|
21 | export JACOCO_OPERATOR_DIR=$(TESTS_DIR)/jacoco-operator
|
---|
22 | export JACOCO_OPERATOR_SRCDIR=$(TESTS_SRCDIR)/jacoco-operator
|
---|
23 |
|
---|
24 | export TEST_EXTENSIONS_SRCDIR=$(TESTS_SRCDIR)/test-extensions
|
---|
25 | export TEST_EXTENSIONS_TESTS_SRCDIR=$(TESTS_SRCDIR)/test-extensions-tests
|
---|
26 | export REPRODUCERS_TESTS_SRCDIR=$(TESTS_SRCDIR)/reproducers
|
---|
27 | export TEST_EXTENSIONS_DIR=$(TESTS_DIR)/test-extensions
|
---|
28 | export CPP_UNITTEST_FRAMEWORK_SRCDIR=$(TESTS_SRCDIR)/UnitTest++
|
---|
29 | export CPP_UNITTEST_SRCDIR=$(TESTS_SRCDIR)/cpp-unit-tests
|
---|
30 | export CPP_UNITTEST_DIR=$(TESTS_DIR)/cpp-unit-tests
|
---|
31 | export TEST_EXTENSIONS_COMPATIBILITY_SYMLINK=$(TESTS_DIR)/netx/jnlp_testsengine
|
---|
32 | export TEST_EXTENSIONS_TESTS_DIR=$(TESTS_DIR)/test-extensions-tests
|
---|
33 | export REPRODUCERS_TESTS_SERVER_DEPLOYDIR=$(TESTS_DIR)/reproducers_test_server_deploydir
|
---|
34 | export REPRODUCERS_BUILD_DIR=$(TESTS_DIR)/reproducers.classes
|
---|
35 | export PRIVATE_KEYSTORE_NAME=teststore.ks
|
---|
36 | export PRIVATE_KEYSTORE_PASS=123456789
|
---|
37 | export EXPORTED_TEST_CERT_PREFIX=icedteatests
|
---|
38 | export EXPORTED_TEST_CERT_SUFFIX=crt
|
---|
39 | export TEST_CERT_ALIAS=icedteaweb
|
---|
40 | export PUBLIC_KEYSTORE_STUB=icedtea-web/security/trusted.certs
|
---|
41 | export PUBLIC_KEYSTORE_PASS=changeit
|
---|
42 | export SOFTKILLER=softkiller
|
---|
43 |
|
---|
44 | export JUNIT_RUNNER_JAR=$(abs_top_builddir)/junit-runner.jar
|
---|
45 | export UNIT_CLASS_NAMES = $(abs_top_builddir)/unit_class_names
|
---|
46 | export REPRODUCERS_CLASS_NAMES = $(abs_top_builddir)/reproducers_class_names
|
---|
47 | export REPRODUCERS_CLASS_WHITELIST = $(abs_top_srcdir)/netx-dist-tests-whitelist
|
---|
48 | export EMMA_JAVA_ARGS=-Xmx2G
|
---|
49 | export EMMA_MODIFIED_FILES=tests-output.xml ServerAccess-logs.xml stdout.log stderr.log all.log
|
---|
50 | export EMMA_BACKUP_SUFFIX=_noEmma
|
---|
51 | export EMMA_SUFFIX=_withEmma
|
---|
52 | export META_MANIFEST = META-INF/MANIFEST.MF
|
---|
53 | export SIGNED_REPRODUCERS=signed signed2
|
---|
54 | export SIMPLE_REPRODUCERS=simple
|
---|
55 | export CUSTOM_REPRODUCERS=custom
|
---|
56 | export ALL_NONCUSTOM_REPRODUCERS=$(SIMPLE_REPRODUCERS) $(SIGNED_REPRODUCERS)
|
---|
57 | export ALL_REPRODUCERS=$(ALL_NONCUSTOM_REPRODUCERS) $(CUSTOM_REPRODUCERS)
|
---|
58 |
|
---|
59 | export JACOCO_PATH:=$(shell dirname "$(JACOCO_JAR)")
|
---|
60 | export JACOCO_AGENT=org.jacoco.agent.jar
|
---|
61 | export JACOCO_ANT=org.jacoco.ant.jar
|
---|
62 | export JACOCO_REPORT=org.jacoco.report.jar
|
---|
63 | export JACOCO_AGENTRT=org.jacoco.agent.rt.jar
|
---|
64 | export JACOCO_CORE=org.jacoco.core.jar
|
---|
65 | export JACOCO_JAVAWS_RESULTS=$(TEST_EXTENSIONS_DIR)/jacoco_javaws.exec
|
---|
66 | export JACOCO_PLUGIN_RESULTS=$(TEST_EXTENSIONS_DIR)/jacoco_plugin.exec
|
---|
67 | export JACOCO_CLASSPATH=$(JACOCO_PATH)/$(JACOCO_CORE):$(JACOCO_PATH)/$(JACOCO_AGENT):$(JACOCO_PATH)/$(JACOCO_REPORT):$(JACOCO_PATH)/$(JACOCO_AGENTRT):$(JACOCO_PATH)/$(JACOCO_ANT):$(ASM_JAR)
|
---|
68 | export JACOCO_AGENT_SWITCH_BODY=-javaagent:$(JACOCO_PATH)/$(JACOCO_AGENTRT)
|
---|
69 | export JACOCO_BASE_EXCLUDE=org.junit.*:junit.*
|
---|
70 | export JACOCO_ADVANCED_EXCLUDE=:*jacoco*:java.lang.*:java.reflect.*:java.util.*:sun.reflect.*
|
---|
71 | export JACOCO_AGENT_SWITCH="$(JACOCO_AGENT_SWITCH_BODY)=excludes=$(JACOCO_BASE_EXCLUDE)"
|
---|
72 | export JACOCO_AGENT_JAVAWS_SWITCH=\"$(JACOCO_AGENT_SWITCH_BODY)=excludes=$(JACOCO_BASE_EXCLUDE)$(JACOCO_ADVANCED_EXCLUDE),xboot=true,destfile=$(JACOCO_JAVAWS_RESULTS)\"
|
---|
73 | export JACOCO_AGENT_PLUGIN_SWITCH=\"$(JACOCO_AGENT_SWITCH_BODY)=excludes=$(JACOCO_BASE_EXCLUDE)$(JACOCO_ADVANCED_EXCLUDE),xboot=true,destfile=$(JACOCO_PLUGIN_RESULTS)\"
|
---|
74 | export JACOCO_OPERATOR_EXEC=$(BOOT_DIR)/bin/java $(EMMA_JAVA_ARGS) -cp $(JACOCO_OPERATOR_DIR):$(JACOCO_CLASSPATH):. org.jacoco.operator.Main
|
---|
75 |
|
---|
76 | # linking variables
|
---|
77 | export PLUGIN_LINK_NAME=libjavaplugin.so
|
---|
78 | export MOZILLA_LOCAL_PLUGINDIR=${HOME}/.mozilla/plugins
|
---|
79 | export MOZILLA_GLOBAL64_PLUGINDIR=/usr/lib64/mozilla/plugins
|
---|
80 | export MOZILLA_GLOBAL32_PLUGINDIR=/usr/lib/mozilla/plugins
|
---|
81 | export OPERA_GLOBAL64_PLUGINDIR=/usr/lib64/opera/plugins
|
---|
82 | export OPERA_GLOBAL32_PLUGINDIR=/usr/lib/opera/plugins
|
---|
83 | export BUILT_PLUGIN_LIBRARY=IcedTeaPlugin.so
|
---|
84 | export CPP_UNITTEST_FRAMEWORK_BUILDDIR=$(CPP_UNITTEST_DIR)/UnitTest++
|
---|
85 | export CPP_UNITTEST_FRAMEWORK_LIB_NAME=libUnitTest++.a
|
---|
86 | export CPP_UNITTEST_FRAMEWORK_LIB=$(CPP_UNITTEST_FRAMEWORK_BUILDDIR)/$(CPP_UNITTEST_FRAMEWORK_LIB_NAME)
|
---|
87 | export CPP_UNITTEST_EXECUTABLE=$(CPP_UNITTEST_DIR)/IcedTeaPluginUnitTests
|
---|
88 | export MOZILLA_LOCAL_BACKUP_FILE=${HOME}/$(PLUGIN_LINK_NAME).origU
|
---|
89 | export MOZILLA_GLOBAL_BACKUP_FILE=${HOME}/$(PLUGIN_LINK_NAME).origMG
|
---|
90 | export OPERA_GLOBAL_BACKUP_FILE=${HOME}/$(PLUGIN_LINK_NAME).origOG
|
---|
91 | export MOZILLA_FAMILY_TEST= "$(FIREFOX)" != "" -o "$(CHROMIUM)" != "" -o "$(CHROME)" != "" -o "$(MIDORI)" != "" -o "$(EPIPHANY)" != ""
|
---|
92 | # end of linking variables
|
---|
93 |
|
---|
94 | # Build directories
|
---|
95 |
|
---|
96 | export BOOT_DIR = $(abs_top_builddir)/bootstrap/jdk1.6.0
|
---|
97 |
|
---|
98 | if WITH_RHINO
|
---|
99 | RHINO_RUNTIME=:$(RHINO_JAR)
|
---|
100 | else
|
---|
101 | RHINO_RUNTIME=
|
---|
102 | endif
|
---|
103 |
|
---|
104 | export RUNTIME = $(BOOT_DIR)/jre/lib/rt.jar:$(BOOT_DIR)/jre/lib/jsse.jar$(RHINO_RUNTIME):$(BOOT_DIR)/jre/lib/resources.jar
|
---|
105 |
|
---|
106 | # Flags
|
---|
107 | export IT_CFLAGS=$(CFLAGS) $(ARCHFLAG)
|
---|
108 | export IT_JAVAC_SETTINGS=-g -encoding utf-8 $(JAVACFLAGS) $(MEMORY_LIMIT) $(PREFER_SOURCE)
|
---|
109 | export IT_LANGUAGE_SOURCE_VERSION=6
|
---|
110 | export IT_CLASS_TARGET_VERSION=6
|
---|
111 | export IT_JAVACFLAGS=$(IT_JAVAC_SETTINGS) -source $(IT_LANGUAGE_SOURCE_VERSION) -target $(IT_CLASS_TARGET_VERSION)
|
---|
112 |
|
---|
113 | #
|
---|
114 | # We need the jars in bootclasspath for a couple of reasons
|
---|
115 | # - we use classes (in the sun.applet package) loaded by the bootclassloader
|
---|
116 | # using another classloader to load classes from the same package causes an
|
---|
117 | # IllegalAccessException
|
---|
118 | # - we want full privileges
|
---|
119 | #
|
---|
120 | export LAUNCHER_BOOTCLASSPATH="-Xbootclasspath/a:$(datadir)/$(PACKAGE_NAME)/netx.jar$(RHINO_RUNTIME):$(TAGSOUP_JAR)"
|
---|
121 | export PLUGIN_BOOTCLASSPATH='"-Xbootclasspath/a:$(datadir)/$(PACKAGE_NAME)/netx.jar:$(datadir)/$(PACKAGE_NAME)/plugin.jar$(RHINO_RUNTIME):$(TAGSOUP_JAR)"'
|
---|
122 | export PLUGIN_COVERAGE_BOOTCLASSPATH='"-Xbootclasspath/a:$(datadir)/$(PACKAGE_NAME)/netx.jar:$(datadir)/$(PACKAGE_NAME)/plugin.jar$(RHINO_RUNTIME):$(JACOCO_CLASSPATH):$(TAGSOUP_JAR)"'
|
---|
123 |
|
---|
124 | # Fake update version to work with the Deployment Toolkit script used by Oracle
|
---|
125 | # http://download.oracle.com/javase/tutorial/deployment/deploymentInDepth/depltoolkit_index.html
|
---|
126 | export JDK_UPDATE_VERSION=50
|
---|
127 |
|
---|
128 | # Sources list
|
---|
129 |
|
---|
130 | export PLUGIN_TEST_SRCS = $(abs_top_srcdir)/plugin/tests/LiveConnect/*.java
|
---|
131 |
|
---|
132 | export NETX_PKGS = javax.jnlp net.sourceforge.nanoxml net.sourceforge.jnlp \
|
---|
133 | net.sourceforge.jnlp.about \
|
---|
134 | net.sourceforge.jnlp.cache net.sourceforge.jnlp.config \
|
---|
135 | net.sourceforge.jnlp.controlpanel net.sourceforge.jnlp.event \
|
---|
136 | net.sourceforge.jnlp.runtime net.sourceforge.jnlp.security \
|
---|
137 | net.sourceforge.jnlp.security.viewer net.sourceforge.jnlp.services \
|
---|
138 | net.sourceforge.jnlp.tools net.sourceforge.jnlp.util \
|
---|
139 | sun.applet
|
---|
140 |
|
---|
141 | NETX_EXCLUDE_SRCS=
|
---|
142 |
|
---|
143 | # Conditional defintions
|
---|
144 | if HAVE_TAGSOUP
|
---|
145 | NETX_CLASSPATH_ARG=-classpath $(TAGSOUP_JAR)
|
---|
146 | else
|
---|
147 | NETX_EXCLUDE_SRCS+=net.sourceforge.jnlp.MalformedXMLParser.java
|
---|
148 | endif
|
---|
149 |
|
---|
150 | if ENABLE_PLUGIN
|
---|
151 | export ICEDTEAPLUGIN_CLEAN = clean-IcedTeaPlugin
|
---|
152 | export LIVECONNECT_DIR = netscape sun/applet
|
---|
153 | export PLUGIN_DIR=$(abs_top_builddir)/plugin/icedteanp
|
---|
154 | export PLUGIN_SRCDIR=$(abs_top_srcdir)/plugin/icedteanp
|
---|
155 | export LIVECONNECT_SRCS = $(PLUGIN_SRCDIR)/java
|
---|
156 | export ICEDTEAPLUGIN_TARGET = $(PLUGIN_DIR)/$(BUILT_PLUGIN_LIBRARY) stamps/liveconnect-dist.stamp
|
---|
157 | export PLUGIN_PKGS = sun.applet netscape.security netscape.javascript
|
---|
158 | #this is for plugin testcoverage
|
---|
159 | export COVERABLE_PLUGIN_DIR=$(TESTS_DIR)/icedteanp-build-with-jacoco
|
---|
160 | endif
|
---|
161 |
|
---|
162 | if CP_SUPPORTS_REFLINK
|
---|
163 | REFLINK = --reflink=auto
|
---|
164 | endif
|
---|
165 |
|
---|
166 | if SRC_DIR_HARDLINKABLE
|
---|
167 | SRC_DIR_LINK = -l
|
---|
168 | else
|
---|
169 | SRC_DIR_LINK = $(REFLINK)
|
---|
170 | endif
|
---|
171 |
|
---|
172 | if ENABLE_DOCS
|
---|
173 | JAVADOC_OPTS=-use -keywords -encoding UTF-8 -splitIndex \
|
---|
174 | -bottom '<font size="-1"> <a href="http://icedtea.classpath.org/bugzilla">Submit a bug or feature</a></font>'
|
---|
175 | if JAVADOC_SUPPORTS_J_OPTIONS
|
---|
176 | JAVADOC_MEM_OPTS=-J-Xmx1024m -J-Xms128m
|
---|
177 | endif
|
---|
178 | endif
|
---|
179 |
|
---|
180 | if WITH_RHINO
|
---|
181 | RHINO_TESTS=stamps/check-pac-functions.stamp
|
---|
182 | else
|
---|
183 | RHINO_TESTS=
|
---|
184 | endif
|
---|
185 |
|
---|
186 | if WITH_JUNIT
|
---|
187 | JUNIT_TESTS=stamps/run-netx-unit-tests.stamp
|
---|
188 | else
|
---|
189 | JUNIT_TESTS=
|
---|
190 | endif
|
---|
191 |
|
---|
192 |
|
---|
193 | export PLUGIN_VERSION = IcedTea-Web $(FULL_VERSION)
|
---|
194 |
|
---|
195 | export EXTRA_DIST = $(top_srcdir)/netx $(top_srcdir)/plugin javaws.png javaws.desktop.in policyeditor.desktop.in \
|
---|
196 | itweb-settings.desktop.in launcher $(top_srcdir)/tests html-gen.sh netx-dist-tests-whitelist NEW_LINE_IFS
|
---|
197 |
|
---|
198 | # reproducers `D`shortcuts
|
---|
199 | export DTEST_SERVER=-Dtest.server.dir=$(REPRODUCERS_TESTS_SERVER_DEPLOYDIR)
|
---|
200 | export DJAVAWS_BUILD=-Djavaws.build.bin=$(DESTDIR)$(bindir)/$(javaws)
|
---|
201 | export DBROWSERS=-Dused.browsers=$(FIREFOX):$(CHROMIUM):$(CHROME):$(OPERA):$(MIDORI):$(EPIPHANY)
|
---|
202 | export REPRODUCERS_DPARAMETERS= $(DTEST_SERVER) $(DJAVAWS_BUILD) $(DBROWSERS) $(BROWSER_TESTS_MODIFICATION)
|
---|
203 | # end of `D`shortcuts
|
---|
204 |
|
---|
205 | #exported autoconf copies
|
---|
206 | export EXPORTED_JAVAC=$(BOOT_DIR)/bin/javac
|
---|
207 | #end of exported autoconf copies
|
---|
208 |
|
---|
209 | # binary names
|
---|
210 | javaws:= $(shell echo javaws | sed '@program_transform_name@')
|
---|
211 | itweb_settings:= $(shell echo itweb-settings | sed '@program_transform_name@')
|
---|
212 | policyeditor:= $(shell echo policyeditor | sed '@program_transform_name@')
|
---|
213 |
|
---|
214 | # the launcher needs to know $(bindir) and $(datadir) which can be different at
|
---|
215 | # make-time from configure-time
|
---|
216 | edit_launcher_script = sed \
|
---|
217 | -e "s|[@]LAUNCHER_BOOTCLASSPATH[@]|$(LAUNCHER_BOOTCLASSPATH)|g" \
|
---|
218 | -e "s|[@]JAVAWS_SPLASH_LOCATION[@]|$(datadir)/$(PACKAGE_NAME)/javaws_splash.png|g" \
|
---|
219 | -e "s|[@]JAVA[@]|$(JAVA)|g" \
|
---|
220 | -e "s|[@]JRE[@]|$(SYSTEM_JRE_DIR)|g" \
|
---|
221 | -e "s|[@]MAIN_CLASS[@]|$${MAIN_CLASS}|g" \
|
---|
222 | -e "s|[@]BIN_LOCATION[@]|$${BIN_LOCATION}|g" \
|
---|
223 | -e "s|[@]PROGRAM_NAME[@]|$${PROGRAM_NAME}|g"
|
---|
224 |
|
---|
225 | # Top-Level Targets
|
---|
226 | # =================
|
---|
227 |
|
---|
228 | all-local: stamps/netx-dist.stamp stamps/plugin.stamp launcher.build/$(javaws) \
|
---|
229 | javaws.desktop stamps/docs.stamp launcher.build/$(itweb_settings) itweb-settings.desktop \
|
---|
230 | launcher.build/$(policyeditor) policyeditor.desktop
|
---|
231 |
|
---|
232 | check-local: $(RHINO_TESTS) $(JUNIT_TESTS)
|
---|
233 |
|
---|
234 | clean-local: clean-netx clean-plugin clean-liveconnect \
|
---|
235 | clean-native-ecj clean-launchers clean-desktop-files clean-docs clean-tests clean-bootstrap-directory
|
---|
236 | if [ -e stamps ] ; then \
|
---|
237 | rmdir stamps ; \
|
---|
238 | fi
|
---|
239 |
|
---|
240 | .PHONY: clean-IcedTeaPlugin clean-add-netx clean-add-netx-debug clean-add-plugin clean-add-plugin-debug \
|
---|
241 | clean-bootstrap-directory clean-native-ecj clean-desktop-files clean-netx-docs clean-docs clean-plugin-docs \
|
---|
242 | clean-tests check-local clean-launchers stamps/check-pac-functions.stamp stamps/run-netx-unit-tests.stamp clean-netx-tests \
|
---|
243 | clean-junit-runner clean-netx-unit-tests
|
---|
244 |
|
---|
245 | install-exec-local:
|
---|
246 | ${mkinstalldirs} $(DESTDIR)$(bindir) $(DESTDIR)$(datadir)/$(PACKAGE_NAME)/ $(DESTDIR)$(libdir)
|
---|
247 | if ENABLE_PLUGIN
|
---|
248 | ${INSTALL_PROGRAM} $(PLUGIN_DIR)/$(BUILT_PLUGIN_LIBRARY) $(DESTDIR)$(libdir)
|
---|
249 | ${INSTALL_DATA} $(abs_top_builddir)/liveconnect/lib/classes.jar $(DESTDIR)$(datadir)/$(PACKAGE_NAME)/plugin.jar
|
---|
250 | endif
|
---|
251 | ${INSTALL_DATA} $(NETX_DIR)/lib/classes.jar $(DESTDIR)$(datadir)/$(PACKAGE_NAME)/netx.jar
|
---|
252 | ${INSTALL_DATA} $(NETX_SRCDIR)/javaws_splash.png $(DESTDIR)$(datadir)/$(PACKAGE_NAME)/javaws_splash.png
|
---|
253 | ${INSTALL_PROGRAM} launcher.build/$(javaws) $(DESTDIR)$(bindir)
|
---|
254 | ${INSTALL_PROGRAM} launcher.build/$(itweb_settings) $(DESTDIR)$(bindir)
|
---|
255 | ${INSTALL_PROGRAM} launcher.build/$(policyeditor) $(DESTDIR)$(bindir)
|
---|
256 |
|
---|
257 | install-data-local:
|
---|
258 | ${mkinstalldirs} -d $(DESTDIR)$(mandir)/man1
|
---|
259 | ${INSTALL_DATA} $(NETX_SRCDIR)/javaws.1 $(DESTDIR)$(mandir)/man1
|
---|
260 | ${INSTALL_DATA} $(NETX_SRCDIR)/itweb-settings.1 $(DESTDIR)$(mandir)/man1
|
---|
261 | ${INSTALL_DATA} $(NETX_SRCDIR)/policyeditor.1 $(DESTDIR)$(mandir)/man1
|
---|
262 | if ENABLE_DOCS
|
---|
263 | ${mkinstalldirs} $(DESTDIR)$(htmldir)
|
---|
264 | (cd ${abs_top_builddir}/docs/netx; \
|
---|
265 | for files in $$(find . -type f); \
|
---|
266 | do \
|
---|
267 | ${INSTALL_DATA} -D $${files} $(DESTDIR)$(htmldir)/netx/$${files}; \
|
---|
268 | done)
|
---|
269 | if ENABLE_PLUGIN
|
---|
270 | (cd ${abs_top_builddir}/docs/plugin; \
|
---|
271 | for files in $$(find . -type f); \
|
---|
272 | do \
|
---|
273 | ${INSTALL_DATA} -D $${files} $(DESTDIR)$(htmldir)/plugin/$${files}; \
|
---|
274 | done)
|
---|
275 | endif
|
---|
276 | endif
|
---|
277 |
|
---|
278 | uninstall-local:
|
---|
279 | rm -f $(DESTDIR)$(libdir)/$(BUILT_PLUGIN_LIBRARY)
|
---|
280 | rm -f $(DESTDIR)$(datadir)/$(PACKAGE_NAME)/plugin.jar
|
---|
281 | rm -f $(DESTDIR)$(datadir)/$(PACKAGE_NAME)/netx.jar
|
---|
282 | rm -f $(DESTDIR)$(mandir)/man1/javaws.1
|
---|
283 | rm -f $(DESTDIR)$(mandir)/man1/itweb-settings.1
|
---|
284 | rm -f $(DESTDIR)$(mandir)/man1/policyeditor.1
|
---|
285 | rm -f $(DESTDIR)$(bindir)/$(javaws)
|
---|
286 | rm -f $(DESTDIR)$(bindir)/$(itweb_settings)
|
---|
287 | rm -f $(DESTDIR)$(bindir)/$(policyeditor)
|
---|
288 | rm -rf $(DESTDIR)$(htmldir)
|
---|
289 |
|
---|
290 | # Plugin
|
---|
291 |
|
---|
292 | if ENABLE_PLUGIN
|
---|
293 | # IcedTeaPlugin.so.
|
---|
294 | # Separate compile and link invocations to ensure intermediate object
|
---|
295 | # is listed before -l options. See:
|
---|
296 | # http://developer.mozilla.org/en/docs/XPCOM_Glue
|
---|
297 |
|
---|
298 | PLUGIN_SRC=IcedTeaNPPlugin.cc IcedTeaScriptablePluginObject.cc \
|
---|
299 | IcedTeaJavaRequestProcessor.cc IcedTeaPluginRequestProcessor.cc \
|
---|
300 | IcedTeaPluginUtils.cc IcedTeaParseProperties.cc
|
---|
301 |
|
---|
302 | PLUGIN_OBJECTS=IcedTeaNPPlugin.o IcedTeaScriptablePluginObject.o \
|
---|
303 | IcedTeaJavaRequestProcessor.o IcedTeaPluginRequestProcessor.o \
|
---|
304 | IcedTeaPluginUtils.o IcedTeaParseProperties.o
|
---|
305 |
|
---|
306 | $(PLUGIN_DIR)/%.o: $(PLUGIN_SRCDIR)/%.cc
|
---|
307 | mkdir -p $(PLUGIN_DIR) && \
|
---|
308 | cd $(PLUGIN_DIR) && \
|
---|
309 | $(CXX) $(CXXFLAGS) \
|
---|
310 | $(DEFS) $(VERSION_DEFS) \
|
---|
311 | -DJDK_UPDATE_VERSION="\"$(JDK_UPDATE_VERSION)\"" \
|
---|
312 | -DPLUGIN_NAME="\"IcedTea-Web Plugin\"" \
|
---|
313 | -DPLUGIN_VERSION="\"$(PLUGIN_VERSION)\"" \
|
---|
314 | -DPACKAGE_URL="\"$(PACKAGE_URL)\"" \
|
---|
315 | -DMOZILLA_VERSION_COLLAPSED="$(MOZILLA_VERSION_COLLAPSED)" \
|
---|
316 | -DICEDTEA_WEB_JRE="\"$(SYSTEM_JRE_DIR)\"" \
|
---|
317 | -DPLUGIN_BOOTCLASSPATH=$(PLUGIN_BOOTCLASSPATH) \
|
---|
318 | $(GLIB_CFLAGS) \
|
---|
319 | $(MOZILLA_CFLAGS) \
|
---|
320 | -fvisibility=hidden \
|
---|
321 | -fPIC -o $@ -c $<
|
---|
322 |
|
---|
323 | $(PLUGIN_DIR)/$(BUILT_PLUGIN_LIBRARY): $(addprefix $(PLUGIN_DIR)/,$(PLUGIN_OBJECTS))
|
---|
324 | cd $(PLUGIN_DIR) && \
|
---|
325 | $(CXX) $(CXXFLAGS) \
|
---|
326 | $(PLUGIN_OBJECTS) \
|
---|
327 | $(GLIB_LIBS) \
|
---|
328 | $(MOZILLA_LIBS) \
|
---|
329 | -shared -o $@
|
---|
330 |
|
---|
331 | # Start of CPP Unit test targets
|
---|
332 |
|
---|
333 | # Note that UnitTest++ has its own makefile, however this is avoided because it creates an in-source build.
|
---|
334 | $(CPP_UNITTEST_FRAMEWORK_LIB): $(CPP_UNITTEST_FRAMEWORK_SRCDIR)
|
---|
335 | mkdir -p $(CPP_UNITTEST_FRAMEWORK_BUILDDIR) && \
|
---|
336 | pushd $(CPP_UNITTEST_FRAMEWORK_SRCDIR) && \
|
---|
337 | for cppfile in $$(find $(CPP_UNITTEST_FRAMEWORK_SRCDIR) -name '*.cpp') ; \
|
---|
338 | do \
|
---|
339 | objfile="$(CPP_UNITTEST_FRAMEWORK_BUILDDIR)/$$(basename $${cppfile%.cpp}).o" ; \
|
---|
340 | $(CXX) $(CXXFLAGS) -c $$cppfile -o $$objfile || exit 1 ; \
|
---|
341 | done ; \
|
---|
342 | ar cr $(CPP_UNITTEST_FRAMEWORK_LIB) $(CPP_UNITTEST_FRAMEWORK_BUILDDIR)/*.o ; \
|
---|
343 | popd
|
---|
344 |
|
---|
345 | clean-unittest++:
|
---|
346 | rm -f $(CPP_UNITTEST_FRAMEWORK_BUILDDIR)/*.o
|
---|
347 | rm -f $(CPP_UNITTEST_FRAMEWORK_LIB)
|
---|
348 | if [ -e $(CPP_UNITTEST_FRAMEWORK_BUILDDIR) ] ; then \
|
---|
349 | rmdir $(CPP_UNITTEST_FRAMEWORK_BUILDDIR) ; \
|
---|
350 | fi
|
---|
351 |
|
---|
352 | stamps/cpp-unit-tests-compile.stamp: $(CPP_UNITTEST_FRAMEWORK_LIB) $(CPP_UNITTEST_SRCDIR) $(addprefix $(PLUGIN_DIR)/,$(PLUGIN_OBJECTS))
|
---|
353 | mkdir -p $(CPP_UNITTEST_DIR) && \
|
---|
354 | pushd $(CPP_UNITTEST_SRCDIR) && \
|
---|
355 | for cppfile in $$(find $(CPP_UNITTEST_SRCDIR) -name '*.cc') ; \
|
---|
356 | do \
|
---|
357 | objfile="$(CPP_UNITTEST_DIR)/$$(basename $${cppfile%.cc}).o" ; \
|
---|
358 | echo "Compiling $$cppfile to $$objfile"; \
|
---|
359 | $(CXX) $(CXXFLAGS) \
|
---|
360 | $(DEFS) $(VERSION_DEFS) \
|
---|
361 | -DJDK_UPDATE_VERSION="\"$(JDK_UPDATE_VERSION)\"" \
|
---|
362 | -DPLUGIN_NAME="\"IcedTea-Web Plugin\"" \
|
---|
363 | -DPLUGIN_VERSION="\"$(PLUGIN_VERSION)\"" \
|
---|
364 | -DPACKAGE_URL="\"$(PACKAGE_URL)\"" \
|
---|
365 | -DMOZILLA_VERSION_COLLAPSED="$(MOZILLA_VERSION_COLLAPSED)" \
|
---|
366 | -DICEDTEA_WEB_JRE="\"$(SYSTEM_JRE_DIR)\"" \
|
---|
367 | -DPLUGIN_BOOTCLASSPATH=$(PLUGIN_BOOTCLASSPATH) \
|
---|
368 | $(GLIB_CFLAGS) \
|
---|
369 | $(MOZILLA_CFLAGS) \
|
---|
370 | "-I$(CPP_UNITTEST_FRAMEWORK_SRCDIR)/src" \
|
---|
371 | "-I$(PLUGIN_SRCDIR)" \
|
---|
372 | -o $$objfile -c $$cppfile || exit 1 ; \
|
---|
373 | done ; \
|
---|
374 | popd ; \
|
---|
375 | mkdir -p stamps ; \
|
---|
376 | touch $@
|
---|
377 |
|
---|
378 | $(CPP_UNITTEST_EXECUTABLE): $(CPP_UNITTEST_FRAMEWORK_LIB) stamps/cpp-unit-tests-compile.stamp
|
---|
379 | cd $(CPP_UNITTEST_DIR) && \
|
---|
380 | $(CXX) $(CXXFLAGS) \
|
---|
381 | $(addprefix $(PLUGIN_DIR)/,$(PLUGIN_OBJECTS)) \
|
---|
382 | $(CPP_UNITTEST_DIR)/*.o \
|
---|
383 | -lrt \
|
---|
384 | -lpthread \
|
---|
385 | $(GLIB_LIBS) \
|
---|
386 | $(MOZILLA_LIBS) \
|
---|
387 | $(CPP_UNITTEST_FRAMEWORK_LIB)\
|
---|
388 | $(BUILT_CPP_UNIT_TEST_FRAMEWORK) -o $@
|
---|
389 |
|
---|
390 | clean-cpp-unit-tests:
|
---|
391 | rm -f stamps/cpp-unit-tests-compile.stamp
|
---|
392 | rm -f $(CPP_UNITTEST_EXECUTABLE)
|
---|
393 | rm -f $(CPP_UNITTEST_DIR)/*.o
|
---|
394 |
|
---|
395 | run-cpp-unit-tests: $(CPP_UNITTEST_EXECUTABLE)
|
---|
396 | $(CPP_UNITTEST_EXECUTABLE)
|
---|
397 |
|
---|
398 | # End of CPP Unit test targets
|
---|
399 |
|
---|
400 | clean-IcedTeaPlugin:
|
---|
401 | rm -f $(PLUGIN_DIR)/*.o
|
---|
402 | rm -f $(PLUGIN_DIR)/$(BUILT_PLUGIN_LIBRARY)
|
---|
403 | if [ $(abs_top_srcdir) != $(abs_top_builddir) ]; then \
|
---|
404 | if [ -e $(abs_top_builddir)/plugin/icedteanp ] ; then \
|
---|
405 | rmdir $(abs_top_builddir)/plugin/icedteanp ; \
|
---|
406 | rmdir $(abs_top_builddir)/plugin ; \
|
---|
407 | fi ; \
|
---|
408 | fi
|
---|
409 | endif
|
---|
410 |
|
---|
411 | stamps/plugin.stamp: $(ICEDTEAPLUGIN_TARGET)
|
---|
412 | mkdir -p stamps
|
---|
413 | touch stamps/plugin.stamp
|
---|
414 |
|
---|
415 | clean-plugin: $(ICEDTEAPLUGIN_CLEAN)
|
---|
416 | rm -f stamps/plugin.stamp
|
---|
417 |
|
---|
418 | liveconnect-source-files.txt:
|
---|
419 | if test "x${LIVECONNECT_DIR}" != x; then \
|
---|
420 | find $(LIVECONNECT_SRCS) -name '*.java' | sort > $@ ; \
|
---|
421 | sed -i '/_OS2/ d' $@
|
---|
422 | fi
|
---|
423 | touch $@
|
---|
424 |
|
---|
425 | stamps/liveconnect.stamp: liveconnect-source-files.txt stamps/netx.stamp
|
---|
426 | if test "x${LIVECONNECT_DIR}" != x; then \
|
---|
427 | mkdir -p $(abs_top_builddir)/liveconnect && \
|
---|
428 | $(BOOT_DIR)/bin/javac $(IT_JAVACFLAGS) \
|
---|
429 | -d $(abs_top_builddir)/liveconnect \
|
---|
430 | -bootclasspath $(NETX_DIR):$(RUNTIME) \
|
---|
431 | $(NETX_CLASSPATH_ARG) \
|
---|
432 | -sourcepath $(LIVECONNECT_SRCS) \
|
---|
433 | @liveconnect-source-files.txt ; \
|
---|
434 | fi
|
---|
435 | mkdir -p stamps
|
---|
436 | touch $@
|
---|
437 |
|
---|
438 | stamps/liveconnect-dist.stamp: stamps/liveconnect.stamp
|
---|
439 | if test "x${LIVECONNECT_DIR}" != x; then \
|
---|
440 | (cd $(abs_top_builddir)/liveconnect ; \
|
---|
441 | mkdir -p lib ; \
|
---|
442 | $(BOOT_DIR)/bin/jar cf lib/classes.jar $(LIVECONNECT_DIR) ; \
|
---|
443 | cp -pPR $(SRC_DIR_LINK) $(LIVECONNECT_SRCS) src; \
|
---|
444 | find src -type f -exec chmod 640 '{}' ';' -o -type d -exec chmod 750 '{}' ';'; \
|
---|
445 | cd src ; \
|
---|
446 | $(ZIP) -qr $(abs_top_builddir)/liveconnect/lib/src.zip $(LIVECONNECT_DIR) ) ; \
|
---|
447 | fi
|
---|
448 | mkdir -p stamps
|
---|
449 | touch $@
|
---|
450 |
|
---|
451 | clean-liveconnect:
|
---|
452 | rm -rf $(abs_top_builddir)/liveconnect
|
---|
453 | rm -f stamps/liveconnect-dist.stamp
|
---|
454 | rm -f liveconnect-source-files.txt
|
---|
455 | rm -f stamps/liveconnect.stamp
|
---|
456 |
|
---|
457 | # NetX
|
---|
458 | # requires availability of OpenJDK source code including
|
---|
459 | # a patch applied to sun.plugin.AppletViewerPanel and generated sources
|
---|
460 |
|
---|
461 | netx-source-files.txt:
|
---|
462 | find $(NETX_SRCDIR) -name '*.java' | sort > $@ ; \
|
---|
463 | for src in $(NETX_EXCLUDE_SRCS) ; \
|
---|
464 | do \
|
---|
465 | sed -i "/$${src}/ d" $@ ; \
|
---|
466 | done
|
---|
467 | if !WITH_RHINO
|
---|
468 | sed -i '/RhinoBasedPacEvaluator/ d' $@
|
---|
469 | endif
|
---|
470 | if !HAVE_JAVA7
|
---|
471 | sed -i '/VariableX509TrustManagerJDK7/ d' $@
|
---|
472 | endif
|
---|
473 |
|
---|
474 | stamps/netx-html-gen.stamp:
|
---|
475 | (cd $$NETX_SRCDIR/..; \
|
---|
476 | mkdir -p html-gen; \
|
---|
477 | cp AUTHORS NEWS COPYING ChangeLog html-gen/; \
|
---|
478 | export HTML_GEN_DEBUG=true; \
|
---|
479 | bash html-gen.sh 36; \
|
---|
480 | unset HTML_GEN_DEBUG)
|
---|
481 | ${INSTALL_DATA} $(NETX_SRCDIR)/../html-gen/*.html $(NETX_RESOURCE_DIR)
|
---|
482 | rm -r $(NETX_SRCDIR)/../html-gen/
|
---|
483 | mkdir -p stamps
|
---|
484 | touch $@
|
---|
485 |
|
---|
486 | stamps/netx.stamp: netx-source-files.txt stamps/bootstrap-directory.stamp stamps/netx-html-gen.stamp
|
---|
487 | mkdir -p $(NETX_DIR)
|
---|
488 | $(BOOT_DIR)/bin/javac $(IT_JAVACFLAGS) \
|
---|
489 | -d $(NETX_DIR) \
|
---|
490 | -sourcepath $(NETX_SRCDIR) \
|
---|
491 | -bootclasspath $(RUNTIME) \
|
---|
492 | $(NETX_CLASSPATH_ARG) \
|
---|
493 | @netx-source-files.txt
|
---|
494 | (cd $(NETX_RESOURCE_DIR); \
|
---|
495 | for files in $$(find . -type f); \
|
---|
496 | do \
|
---|
497 | ${INSTALL_DATA} -D $${files} \
|
---|
498 | $(NETX_DIR)/net/sourceforge/jnlp/resources/$${files}; \
|
---|
499 | done)
|
---|
500 | cp -a $(NETX_SRCDIR)/net/sourceforge/jnlp/runtime/pac-funcs.js \
|
---|
501 | $(NETX_DIR)/net/sourceforge/jnlp/runtime
|
---|
502 | cp -a build.properties $(NETX_DIR)/net/sourceforge/jnlp/
|
---|
503 | mkdir -p stamps
|
---|
504 | touch $@
|
---|
505 |
|
---|
506 | stamps/netx-dist.stamp: stamps/netx.stamp $(abs_top_builddir)/netx.manifest
|
---|
507 | (cd $(NETX_DIR) ; \
|
---|
508 | mkdir -p lib ; \
|
---|
509 | $(BOOT_DIR)/bin/jar cfm lib/classes.jar \
|
---|
510 | $(abs_top_builddir)/netx.manifest javax/jnlp net sun; \
|
---|
511 | cp -pPR $(SRC_DIR_LINK) $(NETX_SRCDIR) src; \
|
---|
512 | find src -type f -exec chmod 640 '{}' ';' -o -type d -exec chmod 750 '{}' ';'; \
|
---|
513 | cd src ; \
|
---|
514 | $(ZIP) -qr $(NETX_DIR)/lib/src.zip javax net sun)
|
---|
515 | mkdir -p stamps
|
---|
516 | touch $@
|
---|
517 |
|
---|
518 | clean-netx:
|
---|
519 | rm -rf $(NETX_DIR)
|
---|
520 | rm -f stamps/netx-dist.stamp
|
---|
521 | rm -f netx-source-files.txt
|
---|
522 | rm -f stamps/netx.stamp
|
---|
523 | rm -f stamps/netx-html-gen.stamp
|
---|
524 | rm -f $(NETX_RESOURCE_DIR)/{NEWS,AUTHORS,COPYING,ChangeLog}.html
|
---|
525 |
|
---|
526 | clean-desktop-files:
|
---|
527 | rm -f javaws.desktop
|
---|
528 | rm -f itweb-settings.desktop
|
---|
529 |
|
---|
530 | launcher.build/$(javaws): launcher/launchers.in
|
---|
531 | mkdir -p launcher.build
|
---|
532 | MAIN_CLASS=net.sourceforge.jnlp.runtime.Boot ;\
|
---|
533 | BIN_LOCATION=$(bindir)/$(javaws) ;\
|
---|
534 | PROGRAM_NAME=$(javaws) ;\
|
---|
535 | $(edit_launcher_script) < $< > $@
|
---|
536 |
|
---|
537 | launcher.build/$(itweb_settings): launcher/launchers.in
|
---|
538 | mkdir -p launcher.build
|
---|
539 | MAIN_CLASS=net.sourceforge.jnlp.controlpanel.CommandLine ;\
|
---|
540 | BIN_LOCATION=$(bindir)/$(itweb_settings) ;\
|
---|
541 | PROGRAM_NAME=$(itweb_settings) ;\
|
---|
542 | $(edit_launcher_script) < $< > $@
|
---|
543 |
|
---|
544 | launcher.build/$(policyeditor): launcher/launchers.in
|
---|
545 | mkdir -p launcher.build
|
---|
546 | MAIN_CLASS=net.sourceforge.jnlp.security.policyeditor.PolicyEditor ;\
|
---|
547 | BIN_LOCATION=$(bindir)/$(policyeditor) ;\
|
---|
548 | PROGRAM_NAME=$(policyeditor) ;\
|
---|
549 | $(edit_launcher_script) < $< > $@
|
---|
550 |
|
---|
551 | clean-launchers:
|
---|
552 | rm -f launcher.build/$(javaws)
|
---|
553 | rm -f launcher.build/$(itweb_settings)
|
---|
554 | rm -f launcher.build/$(policyeditor)
|
---|
555 | if [ -e launcher.build ] ; then \
|
---|
556 | rmdir launcher.build ; \
|
---|
557 | fi
|
---|
558 |
|
---|
559 | javaws.desktop: javaws.desktop.in
|
---|
560 | sed "s#PATH_TO_JAVAWS#$(bindir)/$(javaws)#" < $(srcdir)/javaws.desktop.in > javaws.desktop
|
---|
561 |
|
---|
562 | itweb-settings.desktop: $(srcdir)/itweb-settings.desktop.in
|
---|
563 | sed "s#PATH_TO_ITWEB_SETTINGS#$(bindir)/$(itweb_settings)#" \
|
---|
564 | < $(srcdir)/itweb-settings.desktop.in > itweb-settings.desktop
|
---|
565 |
|
---|
566 | policyeditor.desktop: $(srcdir)/policyeditor.desktop.in
|
---|
567 | sed 's#PATH_TO_POLICYEDITOR#$(bindir)/$(policyeditor)#' \
|
---|
568 | < $(srcdir)/policyeditor.desktop.in > policyeditor.desktop
|
---|
569 |
|
---|
570 | # documentation
|
---|
571 |
|
---|
572 | stamps/docs.stamp: stamps/netx-docs.stamp stamps/plugin-docs.stamp
|
---|
573 | touch stamps/docs.stamp
|
---|
574 |
|
---|
575 | clean-docs: clean-netx-docs clean-plugin-docs
|
---|
576 | if [ -e ${abs_top_builddir}/docs ] ; then \
|
---|
577 | rmdir ${abs_top_builddir}/docs ; \
|
---|
578 | fi
|
---|
579 | rm -f stamps/docs.stamp
|
---|
580 |
|
---|
581 | stamps/netx-docs.stamp: stamps/bootstrap-directory.stamp
|
---|
582 | if ENABLE_DOCS
|
---|
583 | $(BOOT_DIR)/bin/javadoc $(JAVADOC_MEM_OPTS) $(JAVADOC_OPTS) \
|
---|
584 | -d ${abs_top_builddir}/docs/netx -sourcepath $(NETX_SRCDIR) \
|
---|
585 | -doctitle 'IcedTea-Web: NetX API Specification' \
|
---|
586 | -windowtitle 'IcedTea-Web: NetX ' \
|
---|
587 | -header '<strong>IcedTea-Web<br/>NetX</strong>' \
|
---|
588 | $(NETX_PKGS)
|
---|
589 | endif
|
---|
590 | mkdir -p stamps
|
---|
591 | touch stamps/netx-docs.stamp
|
---|
592 |
|
---|
593 | clean-netx-docs:
|
---|
594 | rm -rf ${abs_top_builddir}/docs/netx
|
---|
595 | rm -f stamps/netx-docs.stamp
|
---|
596 |
|
---|
597 | stamps/plugin-docs.stamp: stamps/bootstrap-directory.stamp
|
---|
598 | if ENABLE_DOCS
|
---|
599 | if ENABLE_PLUGIN
|
---|
600 | $(BOOT_DIR)/bin/javadoc $(JAVADOC_MEM_OPTS) $(JAVADOC_OPTS) \
|
---|
601 | -d ${abs_top_builddir}/docs/plugin -sourcepath $(NETX_SRCDIR):$(LIVECONNECT_SRCS) \
|
---|
602 | -doctitle 'IcedTea-Web: Plugin API Specification' \
|
---|
603 | -windowtitle 'IcedTea-Web: Plugin ' \
|
---|
604 | -header '<strong>IcedTea-Web<br/>Plugin</strong>' \
|
---|
605 | $(PLUGIN_PKGS)
|
---|
606 | endif
|
---|
607 | endif
|
---|
608 | mkdir -p stamps
|
---|
609 | touch stamps/plugin-docs.stamp
|
---|
610 |
|
---|
611 | clean-plugin-docs:
|
---|
612 | rm -rf ${abs_top_builddir}/docs/plugin
|
---|
613 | rm -f stamps/plugin-docs.stamp
|
---|
614 |
|
---|
615 |
|
---|
616 | # check
|
---|
617 | # ==========================
|
---|
618 |
|
---|
619 | clean-tests: clean-netx-tests clean-cpp-unit-tests clean-unittest++
|
---|
620 | if [ -e $(CPP_UNITTEST_DIR) ] ; then \
|
---|
621 | rmdir $(CPP_UNITTEST_DIR) ; \
|
---|
622 | fi
|
---|
623 | if [ -e $(TESTS_DIR) ]; then \
|
---|
624 | rmdir $(TESTS_DIR) ; \
|
---|
625 | fi
|
---|
626 |
|
---|
627 | stamps/check-pac-functions.stamp: stamps/bootstrap-directory.stamp
|
---|
628 | ./jrunscript $(abs_top_srcdir)/tests/netx/pac/pac-funcs-test.js \
|
---|
629 | $$(readlink -f $(abs_top_srcdir)/netx/net/sourceforge/jnlp/runtime/pac-funcs.js) ; \
|
---|
630 | mkdir -p stamps && \
|
---|
631 | touch $@
|
---|
632 |
|
---|
633 | junit-runner-source-files.txt:
|
---|
634 | find $(JUNIT_RUNNER_SRCDIR) -name '*.java' | sort > $@
|
---|
635 |
|
---|
636 | jacoco-operator-source-files.txt:
|
---|
637 | find $(JACOCO_OPERATOR_SRCDIR) -name '*.java' | sort > $@
|
---|
638 |
|
---|
639 | $(JUNIT_RUNNER_JAR): junit-runner-source-files.txt stamps/test-extensions-compile.stamp
|
---|
640 | mkdir -p $(JUNIT_RUNNER_DIR) && \
|
---|
641 | $(BOOT_DIR)/bin/javac $(IT_JAVACFLAGS) \
|
---|
642 | -d $(JUNIT_RUNNER_DIR) \
|
---|
643 | -classpath $(JUNIT_JAR):$(TEST_EXTENSIONS_DIR) \
|
---|
644 | @junit-runner-source-files.txt && \
|
---|
645 | $(BOOT_DIR)/bin/jar cf $@ -C $(JUNIT_RUNNER_DIR) .
|
---|
646 |
|
---|
647 | stamps/junit-jnlp-dist-dirs: junit-jnlp-dist-simple.txt stamps/junit-jnlp-dist-signed.stamp junit-jnlp-dist-custom.txt
|
---|
648 | mkdir -p $(REPRODUCERS_TESTS_SERVER_DEPLOYDIR)
|
---|
649 | mkdir -p $(REPRODUCERS_BUILD_DIR)
|
---|
650 | touch $@
|
---|
651 |
|
---|
652 | junit-jnlp-dist-custom.txt:
|
---|
653 | cd $(REPRODUCERS_TESTS_SRCDIR)/$(CUSTOM_REPRODUCERS)/ ; \
|
---|
654 | find . -maxdepth 1 -mindepth 1 | sed "s/.\/*//" > $(abs_top_builddir)/$@
|
---|
655 |
|
---|
656 | junit-jnlp-dist-simple.txt:
|
---|
657 | cd $(REPRODUCERS_TESTS_SRCDIR)/simple/ ; \
|
---|
658 | find . -maxdepth 1 -mindepth 1 | sed "s/.\/*//" > $(abs_top_builddir)/$@
|
---|
659 |
|
---|
660 | stamps/junit-jnlp-dist-signed.stamp:
|
---|
661 | types=($(SIGNED_REPRODUCERS)) ; \
|
---|
662 | for which in "$${types[@]}" ; do \
|
---|
663 | pushd $(REPRODUCERS_TESTS_SRCDIR)/$$which/ ; \
|
---|
664 | find . -maxdepth 1 -mindepth 1 | sed "s/.\/*//" > $(abs_top_builddir)/junit-jnlp-dist-$$which.txt ; \
|
---|
665 | popd ; \
|
---|
666 | done ; \
|
---|
667 | mkdir -p stamps && \
|
---|
668 | touch $@
|
---|
669 |
|
---|
670 | stamps/netx-dist-tests-prepare-reproducers.stamp: stamps/junit-jnlp-dist-dirs stamps/liveconnect-dist.stamp stamps/netx-dist.stamp stamps/plugin.stamp
|
---|
671 | types=($(ALL_NONCUSTOM_REPRODUCERS)); \
|
---|
672 | for which in "$${types[@]}" ; do \
|
---|
673 | . $(abs_top_srcdir)/NEW_LINE_IFS ; \
|
---|
674 | simpleReproducers=(`cat $(abs_top_builddir)/junit-jnlp-dist-$$which.txt `); \
|
---|
675 | IFS="$$IFS_BACKUP" ; \
|
---|
676 | for dir in "$${simpleReproducers[@]}" ; do \
|
---|
677 | echo "processing: $$dir" ; \
|
---|
678 | mkdir -p "$(REPRODUCERS_BUILD_DIR)/$$dir" ; \
|
---|
679 | if [ -e "$(REPRODUCERS_TESTS_SRCDIR)/$$which/$$dir/srcs/" ]; then \
|
---|
680 | d=`pwd` ; \
|
---|
681 | cd "$(REPRODUCERS_TESTS_SRCDIR)/$$which/$$dir/srcs/" ; \
|
---|
682 | srcFiles=`find . -mindepth 1 -type f -name "*.java" | sed "s/.\/*//"` ; \
|
---|
683 | notSrcFiles=`find . -mindepth 1 -type f \! -name "*.java" | sed "s/.\/*//"` ; \
|
---|
684 | $(BOOT_DIR)/bin/javac -cp $(NETX_DIR)/lib/classes.jar:$(abs_top_builddir)/liveconnect -d "$(REPRODUCERS_BUILD_DIR)/$$dir/" $$srcFiles ; \
|
---|
685 | if [ -n "$$notSrcFiles" ] ; then \
|
---|
686 | cp -R --parents $$notSrcFiles "$(REPRODUCERS_BUILD_DIR)/$$dir/" ; \
|
---|
687 | fi ; \
|
---|
688 | cd "$(REPRODUCERS_BUILD_DIR)/$$dir/" ; \
|
---|
689 | if [ -f $(META_MANIFEST) ]; \
|
---|
690 | then \
|
---|
691 | $(BOOT_DIR)/bin/jar cfm "$(REPRODUCERS_TESTS_SERVER_DEPLOYDIR)/$$dir.jar" $(META_MANIFEST) * ; \
|
---|
692 | else \
|
---|
693 | $(BOOT_DIR)/bin/jar cf "$(REPRODUCERS_TESTS_SERVER_DEPLOYDIR)/$$dir.jar" * ; \
|
---|
694 | fi; \
|
---|
695 | cd "$$d" ; \
|
---|
696 | fi; \
|
---|
697 | done ; \
|
---|
698 | done ; \
|
---|
699 | mkdir -p stamps && \
|
---|
700 | touch $@
|
---|
701 |
|
---|
702 | stamps/netx-dist-tests-sign-some-reproducers.stamp: stamps/netx-dist-tests-prepare-reproducers.stamp
|
---|
703 | keystore=$(abs_top_builddir)/$(PRIVATE_KEYSTORE_NAME); \
|
---|
704 | types=($(SIGNED_REPRODUCERS)) ; \
|
---|
705 | for which in "$${types[@]}" ; do \
|
---|
706 | tcaw=$(TEST_CERT_ALIAS)_$$which ; \
|
---|
707 | $(BOOT_DIR)/bin/keytool -genkey -alias $$tcaw -keystore $$keystore -keypass $(PRIVATE_KEYSTORE_PASS) -storepass $(PRIVATE_KEYSTORE_PASS) -dname "cn=$$tcaw, ou=$$tcaw, o=$$tcaw, c=$$tcaw" ; \
|
---|
708 | . $(abs_top_srcdir)/NEW_LINE_IFS ; \
|
---|
709 | signedReproducers=(`cat $(abs_top_builddir)/junit-jnlp-dist-$$which.txt `); \
|
---|
710 | IFS="$$IFS_BACKUP" ; \
|
---|
711 | for dir in "$${signedReproducers[@]}" ; do \
|
---|
712 | $(BOOT_DIR)/bin/jarsigner -keystore $$keystore -storepass $(PRIVATE_KEYSTORE_PASS) -keypass $(PRIVATE_KEYSTORE_PASS) "$(REPRODUCERS_TESTS_SERVER_DEPLOYDIR)/$$dir.jar" $$tcaw ; \
|
---|
713 | done ; \
|
---|
714 | done ; \
|
---|
715 | mkdir -p stamps && \
|
---|
716 | touch $@
|
---|
717 |
|
---|
718 | stamps/change-dots-to-paths.stamp: stamps/netx-dist-tests-sign-some-reproducers.stamp
|
---|
719 | pushd $(REPRODUCERS_TESTS_SERVER_DEPLOYDIR); \
|
---|
720 | types=($(ALL_NONCUSTOM_REPRODUCERS)); \
|
---|
721 | for which in "$${types[@]}" ; do \
|
---|
722 | . $(abs_top_srcdir)/NEW_LINE_IFS ; \
|
---|
723 | simpleReproducers=(`cat $(abs_top_builddir)/junit-jnlp-dist-$$which.txt `); \
|
---|
724 | IFS="$$IFS_BACKUP" ; \
|
---|
725 | for dir in "$${simpleReproducers[@]}" ; do \
|
---|
726 | if test "$${dir:0:1}" = "." ; then \
|
---|
727 | echo "reproducer $$dir starts with dot. It is forbidden" ; \
|
---|
728 | exit 5; \
|
---|
729 | fi; \
|
---|
730 | if test "$${dir:(-1)}" = "." ; then \
|
---|
731 | echo "reproducer $$dir ends with dot. It is forbidden" ; \
|
---|
732 | exit 5; \
|
---|
733 | fi; \
|
---|
734 | q=`expr index "$$dir" .`; \
|
---|
735 | r=$$? ; \
|
---|
736 | if [ $$r = 0 ]; then \
|
---|
737 | slashed_dir="./$${dir//.//}" ; \
|
---|
738 | path="`dirname $$slashed_dir`" ; \
|
---|
739 | file="`basename $$slashed_dir`.jar" ; \
|
---|
740 | echo "copying $$dir.jar to $$path as $$file" ; \
|
---|
741 | mkdir --parents $$path ; \
|
---|
742 | cp $$dir".jar" "$$path"/"$$file" ; \
|
---|
743 | fi ; \
|
---|
744 | done ; \
|
---|
745 | done ; \
|
---|
746 | popd ; \
|
---|
747 | mkdir -p stamps && \
|
---|
748 | touch $@
|
---|
749 |
|
---|
750 | #this always tries to remove previous testcert
|
---|
751 | #the code is copypasted from netx-dist-tests-remove-cert-from-public, because
|
---|
752 | #with depending to not stamped target we always have to rerun reproducers targets
|
---|
753 | stamps/exported-test-certs.stamp: stamps/change-dots-to-paths.stamp
|
---|
754 | -types=($(SIGNED_REPRODUCERS)) ; \
|
---|
755 | PUBLIC_KEYSTORE=$$XDG_CONFIG_HOME ; \
|
---|
756 | if test "x$$PUBLIC_KEYSTORE" = x; then \
|
---|
757 | PUBLIC_KEYSTORE=${HOME}/.config ; \
|
---|
758 | fi ;\
|
---|
759 | PUBLIC_KEYSTORE=$$PUBLIC_KEYSTORE/$(PUBLIC_KEYSTORE_STUB); \
|
---|
760 | keystoredir=`dirname $(PUBLIC_KEYSTORE)`; \
|
---|
761 | [ ! -d $(keystoredir) ] && mkdir -p $(keystoredir); \
|
---|
762 | for which in "$${types[@]}" ; do \
|
---|
763 | $(BOOT_DIR)/bin/keytool -delete -alias $(TEST_CERT_ALIAS)_$$which -keystore $$PUBLIC_KEYSTORE -storepass $(PUBLIC_KEYSTORE_PASS) ; \
|
---|
764 | done ;
|
---|
765 | types=($(SIGNED_REPRODUCERS)) ; \
|
---|
766 | for which in "$${types[@]}" ; do \
|
---|
767 | $(BOOT_DIR)/bin/keytool -export -alias $(TEST_CERT_ALIAS)_$$which -file $(EXPORTED_TEST_CERT_PREFIX)_$$which.$(EXPORTED_TEST_CERT_SUFFIX) -storepass $(PRIVATE_KEYSTORE_PASS) -keystore $(PRIVATE_KEYSTORE_NAME) ; \
|
---|
768 | done ;
|
---|
769 | mkdir -p stamps && \
|
---|
770 | touch $@
|
---|
771 |
|
---|
772 | stamps/netx-dist-tests-import-cert-to-public: stamps/exported-test-certs.stamp
|
---|
773 | types=($(SIGNED_REPRODUCERS)) ; \
|
---|
774 | PUBLIC_KEYSTORE=$$XDG_CONFIG_HOME ; \
|
---|
775 | if test "x$$PUBLIC_KEYSTORE" = x; then \
|
---|
776 | PUBLIC_KEYSTORE=${HOME}/.config ; \
|
---|
777 | fi ;\
|
---|
778 | PUBLIC_KEYSTORE=$$PUBLIC_KEYSTORE/$(PUBLIC_KEYSTORE_STUB); \
|
---|
779 | keystoredir=`dirname $(PUBLIC_KEYSTORE)`; \
|
---|
780 | [ ! -d $(keystoredir) ] && mkdir -p $(keystoredir); \
|
---|
781 | for which in "$${types[@]}" ; do \
|
---|
782 | yes | $(BOOT_DIR)/bin/keytool -import -alias $(TEST_CERT_ALIAS)_$$which -keystore $$PUBLIC_KEYSTORE -storepass $(PUBLIC_KEYSTORE_PASS) -file $(EXPORTED_TEST_CERT_PREFIX)_$$which.$(EXPORTED_TEST_CERT_SUFFIX) ;\
|
---|
783 | done ;
|
---|
784 | mkdir -p stamps && \
|
---|
785 | touch $@
|
---|
786 |
|
---|
787 | netx-dist-tests-remove-cert-from-public:
|
---|
788 | -types=($(SIGNED_REPRODUCERS)) ; \
|
---|
789 | PUBLIC_KEYSTORE=$$XDG_CONFIG_HOME ; \
|
---|
790 | if test "x$$PUBLIC_KEYSTORE" = x; then \
|
---|
791 | PUBLIC_KEYSTORE=${HOME}/.config ; \
|
---|
792 | fi ;\
|
---|
793 | PUBLIC_KEYSTORE=$$PUBLIC_KEYSTORE/$(PUBLIC_KEYSTORE_STUB); \
|
---|
794 | keystoredir=`dirname $(PUBLIC_KEYSTORE)`; \
|
---|
795 | [ ! -d $(keystoredir) ] && mkdir -p $(keystoredir); \
|
---|
796 | for which in "$${types[@]}" ; do \
|
---|
797 | $(BOOT_DIR)/bin/keytool -delete -alias $(TEST_CERT_ALIAS)_$$which -keystore $$PUBLIC_KEYSTORE -storepass $(PUBLIC_KEYSTORE_PASS) ; \
|
---|
798 | done ;
|
---|
799 | -rm -rf stamps/netx-dist-tests-import-cert-to-public
|
---|
800 |
|
---|
801 | test-extensions-source-files.txt:
|
---|
802 | find $(TEST_EXTENSIONS_SRCDIR) -name '*.java' | sort > $@
|
---|
803 |
|
---|
804 | stamps/test-extensions-compile.stamp: stamps/netx-dist.stamp stamps/plugin.stamp stamps/junit-jnlp-dist-dirs test-extensions-source-files.txt
|
---|
805 | mkdir -p $(TEST_EXTENSIONS_DIR);
|
---|
806 | mkdir -p $(NETX_TEST_DIR);
|
---|
807 | ln -s $(TEST_EXTENSIONS_DIR) $(TEST_EXTENSIONS_COMPATIBILITY_SYMLINK);
|
---|
808 | $(BOOT_DIR)/bin/javac $(IT_JAVACFLAGS) \
|
---|
809 | -d $(TEST_EXTENSIONS_DIR) \
|
---|
810 | -classpath $(JUNIT_JAR):$(NETX_DIR)/lib/classes.jar:$(abs_top_builddir)/liveconnect/lib/classes.jar \
|
---|
811 | @test-extensions-source-files.txt && \
|
---|
812 | mkdir -p stamps && \
|
---|
813 | touch $@
|
---|
814 |
|
---|
815 | test-extensions-tests-source-files.txt:
|
---|
816 | find $(TEST_EXTENSIONS_TESTS_SRCDIR) -name '*.java' | sort > $@
|
---|
817 |
|
---|
818 | stamps/test-extensions-tests-compile.stamp: stamps/junit-jnlp-dist-dirs test-extensions-tests-source-files.txt stamps/test-extensions-compile.stamp
|
---|
819 | mkdir -p $(TEST_EXTENSIONS_TESTS_DIR);
|
---|
820 | $(BOOT_DIR)/bin/javac $(IT_JAVACFLAGS) \
|
---|
821 | -d $(TEST_EXTENSIONS_TESTS_DIR) \
|
---|
822 | -classpath $(JUNIT_JAR):$(NETX_DIR)/lib/classes.jar:$(TEST_EXTENSIONS_DIR) \
|
---|
823 | @test-extensions-tests-source-files.txt && \
|
---|
824 | mkdir -p stamps && \
|
---|
825 | touch $@
|
---|
826 |
|
---|
827 | stamps/compile-reproducers-testcases.stamp: stamps/netx-dist.stamp stamps/plugin.stamp stamps/junit-jnlp-dist-dirs \
|
---|
828 | test-extensions-source-files.txt stamps/test-extensions-compile.stamp stamps/test-extensions-tests-compile.stamp
|
---|
829 | types=($(ALL_REPRODUCERS)); \
|
---|
830 | for which in "$${types[@]}" ; do \
|
---|
831 | . $(abs_top_srcdir)/NEW_LINE_IFS ; \
|
---|
832 | simpleReproducers=(`cat $(abs_top_builddir)/junit-jnlp-dist-$$which.txt `); \
|
---|
833 | IFS="$$IFS_BACKUP" ; \
|
---|
834 | for dir in "$${simpleReproducers[@]}" ; do \
|
---|
835 | $(BOOT_DIR)/bin/javac $(IT_JAVACFLAGS) \
|
---|
836 | -d $(TEST_EXTENSIONS_TESTS_DIR) \
|
---|
837 | -classpath $(JUNIT_JAR):$(NETX_DIR)/lib/classes.jar:$(TEST_EXTENSIONS_DIR) \
|
---|
838 | "$(REPRODUCERS_TESTS_SRCDIR)/$$which/$$dir/testcases/"*.java ; \
|
---|
839 | if [ -d "$(REPRODUCERS_TESTS_SRCDIR)/$$which/$$dir/testcases" ]; then \
|
---|
840 | pushd "$(REPRODUCERS_TESTS_SRCDIR)/$$which/$$dir/testcases" ; \
|
---|
841 | NONJAVA_RESOURCES=`ls | grep -v ".*\\.java$$"` ; \
|
---|
842 | if [ -n "$$NONJAVA_RESOURCES" ]; then \
|
---|
843 | cp $$NONJAVA_RESOURCES $(TEST_EXTENSIONS_TESTS_DIR)/ ; \
|
---|
844 | fi ; \
|
---|
845 | popd ; \
|
---|
846 | fi ; \
|
---|
847 | done ; \
|
---|
848 | done ; \
|
---|
849 | mkdir -p stamps && \
|
---|
850 | touch $@
|
---|
851 |
|
---|
852 | stamps/copy-reproducers-resources.stamp: stamps/junit-jnlp-dist-dirs
|
---|
853 | types=($(ALL_REPRODUCERS)); \
|
---|
854 | for which in "$${types[@]}" ; do \
|
---|
855 | . $(abs_top_srcdir)/NEW_LINE_IFS ; \
|
---|
856 | simpleReproducers=(`cat $(abs_top_builddir)/junit-jnlp-dist-$$which.txt `); \
|
---|
857 | IFS="$$IFS_BACKUP" ; \
|
---|
858 | for dir in "$${simpleReproducers[@]}" ; do \
|
---|
859 | cp -R "$(REPRODUCERS_TESTS_SRCDIR)/$$which/$$dir/resources/"* $(REPRODUCERS_TESTS_SERVER_DEPLOYDIR)/ ; \
|
---|
860 | done ; \
|
---|
861 | done ; \
|
---|
862 | mkdir -p stamps && \
|
---|
863 | touch $@
|
---|
864 |
|
---|
865 | $(REPRODUCERS_CLASS_NAMES): $(REPRODUCERS_CLASS_WHITELIST)
|
---|
866 | whiteListed=`cat $(REPRODUCERS_CLASS_WHITELIST)`; \
|
---|
867 | cd $(TEST_EXTENSIONS_TESTS_DIR) ; \
|
---|
868 | class_names= ; \
|
---|
869 | for test in `find -type f` ; do \
|
---|
870 | class_name=`echo $$test | sed -e 's|\.class$$||' -e 's|^\./||'` ; \
|
---|
871 | class_name=`echo $$class_name | sed -e 's|/|.|g' ` ; \
|
---|
872 | INLCUDE="NO" ; \
|
---|
873 | for x in $$whiteListed ; do \
|
---|
874 | q=`expr match "$$class_name" "$$x"`; \
|
---|
875 | r=$$? ; \
|
---|
876 | if [ $$r = 0 ]; then \
|
---|
877 | echo "$$class_name will be included in reproducers testcases because of $$x pattern in $(REPRODUCERS_CLASS_WHITELIST). Matching was $$q"; \
|
---|
878 | INLCUDE="YES" ; \
|
---|
879 | fi; \
|
---|
880 | done; \
|
---|
881 | if [ "$$INLCUDE" = "YES" ]; then \
|
---|
882 | class_names="$$class_names $$class_name" ; \
|
---|
883 | else \
|
---|
884 | echo "$$class_name had no match in $(REPRODUCERS_CLASS_WHITELIST). Excluding"; \
|
---|
885 | fi; \
|
---|
886 | done ; \
|
---|
887 | echo $$class_names > $(REPRODUCERS_CLASS_NAMES)
|
---|
888 |
|
---|
889 | $(TESTS_DIR)/$(SOFTKILLER):
|
---|
890 | cd $(TESTS_SRCDIR)/$(SOFTKILLER); \
|
---|
891 | $(MAKE) ; \
|
---|
892 | mv $(SOFTKILLER) $(TESTS_DIR)/
|
---|
893 |
|
---|
894 | stamps/run-netx-dist-tests.stamp: stamps/netx-dist.stamp stamps/plugin.stamp launcher.build/$(javaws) \
|
---|
895 | javaws.desktop stamps/docs.stamp launcher.build/$(itweb_settings) itweb-settings.desktop launcher.build/$(policyeditor) policyeditor.desktop \
|
---|
896 | stamps/netx.stamp stamps/junit-jnlp-dist-dirs stamps/netx-dist-tests-import-cert-to-public $(TESTS_DIR)/softkiller \
|
---|
897 | stamps/test-extensions-compile.stamp stamps/compile-reproducers-testcases.stamp $(JUNIT_RUNNER_JAR) stamps/copy-reproducers-resources.stamp\
|
---|
898 | $(TESTS_DIR)/$(REPORT_STYLES_DIRNAME) $(REPRODUCERS_CLASS_NAMES) stamps/process-custom-reproducers.stamp
|
---|
899 | cd $(TEST_EXTENSIONS_DIR) ; \
|
---|
900 | class_names=`cat $(REPRODUCERS_CLASS_NAMES)` ; \
|
---|
901 | CLASSPATH=$(NETX_DIR)/lib/classes.jar:$(JUNIT_JAR):$(JUNIT_RUNNER_JAR):.:$(TEST_EXTENSIONS_TESTS_DIR):$(TEST_EXTENSIONS_SRCDIR) ; \
|
---|
902 | $(BOOT_DIR)/bin/java $(REPRODUCERS_DPARAMETERS) \
|
---|
903 | -Xbootclasspath/a:$(RUNTIME):$$CLASSPATH CommandLine $$class_names
|
---|
904 | if WITH_XSLTPROC
|
---|
905 | -$(XSLTPROC) --stringparam logs logs_reproducers.html $(TESTS_SRCDIR)/$(REPORT_STYLES_DIRNAME)/jreport.xsl $(TEST_EXTENSIONS_DIR)/tests-output.xml > $(TESTS_DIR)/index_reproducers.html
|
---|
906 | -$(XSLTPROC) $(TESTS_SRCDIR)/$(REPORT_STYLES_DIRNAME)/logs.xsl $(TEST_EXTENSIONS_DIR)/ServerAccess-logs.xml > $(TESTS_DIR)/logs_reproducers.html
|
---|
907 | -$(XSLTPROC) $(TESTS_SRCDIR)/$(REPORT_STYLES_DIRNAME)/textreport.xsl $(TEST_EXTENSIONS_DIR)/tests-output.xml > $(TESTS_DIR)/summary_reproducers.txt
|
---|
908 | endif
|
---|
909 | touch $@
|
---|
910 |
|
---|
911 | stamps/process-custom-reproducers.stamp: stamps/junit-jnlp-dist-dirs stamps/netx-dist-tests-import-cert-to-public \
|
---|
912 | stamps/test-extensions-compile.stamp stamps/compile-reproducers-testcases.stamp $(JUNIT_RUNNER_JAR) stamps/copy-reproducers-resources.stamp\
|
---|
913 | $(TESTS_DIR)/$(REPORT_STYLES_DIRNAME) $(REPRODUCERS_CLASS_NAMES)
|
---|
914 | . $(abs_top_srcdir)/NEW_LINE_IFS ; \
|
---|
915 | customReproducers=(`cat $(abs_top_builddir)/junit-jnlp-dist-custom.txt `); \
|
---|
916 | IFS="$$IFS_BACKUP" ; \
|
---|
917 | for dir in "$${customReproducers[@]}" ; do \
|
---|
918 | pushd $(REPRODUCERS_TESTS_SRCDIR)/$(CUSTOM_REPRODUCERS)/$$dir/srcs; \
|
---|
919 | $(MAKE) prepare-reproducer ; \
|
---|
920 | popd ; \
|
---|
921 | done ; \
|
---|
922 | mkdir -p stamps && \
|
---|
923 | touch $@
|
---|
924 |
|
---|
925 | clean-custom-reproducers: junit-jnlp-dist-custom.txt
|
---|
926 | . $(abs_top_srcdir)/NEW_LINE_IFS ; \
|
---|
927 | customReproducers=(`cat $(abs_top_builddir)/junit-jnlp-dist-custom.txt `); \
|
---|
928 | IFS="$$IFS_BACKUP" ; \
|
---|
929 | for dir in "$${customReproducers[@]}" ; do \
|
---|
930 | pushd $(REPRODUCERS_TESTS_SRCDIR)/custom/$$dir/srcs; \
|
---|
931 | $(MAKE) clean-reproducer ; \
|
---|
932 | popd ; \
|
---|
933 | done ; \
|
---|
934 | rm -f stamps/process-custom-reproducers.stamp
|
---|
935 |
|
---|
936 | #for global-links you must be root, for opera there do not exists user-links
|
---|
937 | #although this targets will indeed create symbolic links to enable
|
---|
938 | #icedtea-web plugin inside browser it is intended for testing purposes
|
---|
939 | if ENABLE_PLUGIN
|
---|
940 | stamps/user-links.stamp: stamps/netx-dist.stamp stamps/plugin.stamp \
|
---|
941 | launcher.build/$(javaws) stamps/netx.stamp $(DESTDIR)$(libdir)/$(BUILT_PLUGIN_LIBRARY)
|
---|
942 | if [ $(MOZILLA_FAMILY_TEST) ] ; then \
|
---|
943 | if [ -e $(MOZILLA_LOCAL_PLUGINDIR)/$(PLUGIN_LINK_NAME) ] ; then \
|
---|
944 | mv -f $(MOZILLA_LOCAL_PLUGINDIR)/$(PLUGIN_LINK_NAME) $(MOZILLA_LOCAL_BACKUP_FILE) ; \
|
---|
945 | echo "$(MOZILLA_LOCAL_PLUGINDIR)/$(PLUGIN_LINK_NAME) backed up as $(MOZILLA_LOCAL_BACKUP_FILE)" ; \
|
---|
946 | else \
|
---|
947 | echo "$(MOZILLA_LOCAL_PLUGINDIR)/$(PLUGIN_LINK_NAME) doesn't exists, nothing to be backed up to $(MOZILLA_LOCAL_BACKUP_FILE)" ; \
|
---|
948 | fi ; \
|
---|
949 | pushd $(MOZILLA_LOCAL_PLUGINDIR) ; \
|
---|
950 | ln -s $(DESTDIR)$(libdir)/$(BUILT_PLUGIN_LIBRARY) $(PLUGIN_LINK_NAME) ; \
|
---|
951 | echo "$(DESTDIR)$(libdir)/$(BUILT_PLUGIN_LIBRARY) linked as $$PWD/$(PLUGIN_LINK_NAME)" ; \
|
---|
952 | popd ; \
|
---|
953 | fi ; \
|
---|
954 | touch $@
|
---|
955 |
|
---|
956 | restore-user-links:
|
---|
957 | if [ $(MOZILLA_FAMILY_TEST) ] ; then \
|
---|
958 | if [ -e $(MOZILLA_LOCAL_BACKUP_FILE) ] ; then \
|
---|
959 | mv -f $(MOZILLA_LOCAL_BACKUP_FILE) $(MOZILLA_LOCAL_PLUGINDIR)/$(PLUGIN_LINK_NAME) ; \
|
---|
960 | echo "$(MOZILLA_LOCAL_BACKUP_FILE) restored as $(MOZILLA_LOCAL_PLUGINDIR)/$(PLUGIN_LINK_NAME)" ; \
|
---|
961 | else \
|
---|
962 | rm -f $(MOZILLA_LOCAL_PLUGINDIR)/$(PLUGIN_LINK_NAME) ; \
|
---|
963 | echo "$(MOZILLA_LOCAL_BACKUP_FILE) do not exists, nothing to be restored. $(MOZILLA_LOCAL_PLUGINDIR)/$(PLUGIN_LINK_NAME) removed" ; \
|
---|
964 | fi ; \
|
---|
965 | fi ;
|
---|
966 | if [ -e stamps/user-links.stamp ] ; then \
|
---|
967 | rm -f stamps/user-links.stamp ; \
|
---|
968 | fi
|
---|
969 |
|
---|
970 | stamps/global-links.stamp: stamps/netx-dist.stamp stamps/plugin.stamp launcher.build/$(javaws) \
|
---|
971 | stamps/netx.stamp $(DESTDIR)$(libdir)/$(BUILT_PLUGIN_LIBRARY)
|
---|
972 | if [ $(MOZILLA_FAMILY_TEST) ] ; then \
|
---|
973 | dir="$(MOZILLA_GLOBAL32_PLUGINDIR)" ; \
|
---|
974 | arch=`arch` ; \
|
---|
975 | if [ "$$arch" = "x86_64" ] ; then \
|
---|
976 | dir="$(MOZILLA_GLOBAL64_PLUGINDIR)" ; \
|
---|
977 | fi ; \
|
---|
978 | if [ -e "$$dir"/$(PLUGIN_LINK_NAME) ] ; then \
|
---|
979 | mv -f "$$dir"/$(PLUGIN_LINK_NAME) $(MOZILLA_GLOBAL_BACKUP_FILE) ; \
|
---|
980 | echo "$$dir/$(PLUGIN_LINK_NAME) backed up as $(MOZILLA_GLOBAL_BACKUP_FILE)" ; \
|
---|
981 | else \
|
---|
982 | echo "$$dir/$(PLUGIN_LINK_NAME) do not exists, nothing to be backed up to $(MOZILLA_GLOBAL_BACKUP_FILE)" ; \
|
---|
983 | fi ; \
|
---|
984 | pushd "$$dir" ; \
|
---|
985 | ln -s $(DESTDIR)$(libdir)/$(BUILT_PLUGIN_LIBRARY) $(PLUGIN_LINK_NAME) ; \
|
---|
986 | echo "$(DESTDIR)$(libdir)/$(BUILT_PLUGIN_LIBRARY) linked as $$PWD/$(PLUGIN_LINK_NAME)" ; \
|
---|
987 | popd ; \
|
---|
988 | fi ;
|
---|
989 | if [ "$(OPERA)" != "" ] ; then \
|
---|
990 | dir="$(OPERA_GLOBAL32_PLUGINDIR)" ; \
|
---|
991 | arch=`arch` ; \
|
---|
992 | if [ "$$arch" = "x86_64" ] ; then \
|
---|
993 | dir="$(OPERA_GLOBAL64_PLUGINDIR)" ; \
|
---|
994 | fi ; \
|
---|
995 | if [ -e "$$dir"/$(PLUGIN_LINK_NAME) ] ; then \
|
---|
996 | mv -f "$$dir"/$(PLUGIN_LINK_NAME) $(OPERA_GLOBAL_BACKUP_FILE) ; \
|
---|
997 | echo "$$dir/$(PLUGIN_LINK_NAME) backed up as $(OPERA_GLOBAL_BACKUP_FILE) "; \
|
---|
998 | else \
|
---|
999 | echo "$$dir/$(PLUGIN_LINK_NAME) do not exists, nothing to be backed up to $(OPERA_GLOBAL_BACKUP_FILE) "; \
|
---|
1000 | fi ; \
|
---|
1001 | pushd "$$dir" ; \
|
---|
1002 | ln -s $(DESTDIR)$(libdir)/$(BUILT_PLUGIN_LIBRARY) $(PLUGIN_LINK_NAME) ; \
|
---|
1003 | echo "$(DESTDIR)$(libdir)/$(BUILT_PLUGIN_LIBRARY) linked as $$PWD/$(PLUGIN_LINK_NAME)" ; \
|
---|
1004 | popd ; \
|
---|
1005 | fi ; \
|
---|
1006 | touch $@
|
---|
1007 |
|
---|
1008 | restore-global-links:
|
---|
1009 | if [ $(MOZILLA_FAMILY_TEST) ] ; then \
|
---|
1010 | dir="$(MOZILLA_GLOBAL32_PLUGINDIR)" ; \
|
---|
1011 | arch=`arch` ; \
|
---|
1012 | if [ "$$arch" = "x86_64" ] ; then \
|
---|
1013 | dir="$(MOZILLA_GLOBAL64_PLUGINDIR)" ; \
|
---|
1014 | fi ; \
|
---|
1015 | if [ -e $(MOZILLA_GLOBAL_BACKUP_FILE) ] ; then \
|
---|
1016 | mv -f $(MOZILLA_GLOBAL_BACKUP_FILE) "$$dir"/$(PLUGIN_LINK_NAME) ; \
|
---|
1017 | echo "$(MOZILLA_GLOBAL_BACKUP_FILE) restored as $$dir/$(PLUGIN_LINK_NAME)" ; \
|
---|
1018 | else \
|
---|
1019 | rm -f "$$dir"/$(PLUGIN_LINK_NAME) ; \
|
---|
1020 | echo "$(MOZILLA_GLOBAL_BACKUP_FILE) do not exists, nothing to be restored. $$dir/$(PLUGIN_LINK_NAME) removed" ; \
|
---|
1021 | fi ; \
|
---|
1022 | fi ;
|
---|
1023 | if [ "$(OPERA)" != "" ] ; then \
|
---|
1024 | dir="$(OPERA_GLOBAL32_PLUGINDIR)" ; \
|
---|
1025 | arch=`arch` ; \
|
---|
1026 | if [ "$$arch" = "x86_64" ] ; then \
|
---|
1027 | dir="$(OPERA_GLOBAL64_PLUGINDIR)" ; \
|
---|
1028 | fi ; \
|
---|
1029 | if [ -e $(OPERA_GLOBAL_BACKUP_FILE) ] ; then \
|
---|
1030 | mv -f $(OPERA_GLOBAL_BACKUP_FILE) "$$dir"/$(PLUGIN_LINK_NAME) ; \
|
---|
1031 | echo "$(OPERA_GLOBAL_BACKUP_FILE) restored as $$dir/$(PLUGIN_LINK_NAME)" ; \
|
---|
1032 | else \
|
---|
1033 | rm -f "$$dir"/$(PLUGIN_LINK_NAME) ; \
|
---|
1034 | echo "$(OPERA_GLOBAL_BACKUP_FILE) do not exist, nothing to be restored. $$dir/$(PLUGIN_LINK_NAME) removed" ; \
|
---|
1035 | fi ; \
|
---|
1036 | fi ;
|
---|
1037 | if [ -e stamps/global-links.stamp ] ; then \
|
---|
1038 | rm -f stamps/global-links.stamp ; \
|
---|
1039 | fi
|
---|
1040 | endif
|
---|
1041 |
|
---|
1042 | netx-unit-tests-source-files.txt:
|
---|
1043 | find $(NETX_UNIT_TEST_SRCDIR) -name '*.java' | sort > $@
|
---|
1044 |
|
---|
1045 | stamps/netx-unit-tests-compile.stamp: stamps/netx.stamp \
|
---|
1046 | netx-unit-tests-source-files.txt stamps/test-extensions-compile.stamp
|
---|
1047 | mkdir -p $(NETX_UNIT_TEST_DIR) && \
|
---|
1048 | $(BOOT_DIR)/bin/javac $(IT_JAVACFLAGS) \
|
---|
1049 | -d $(NETX_UNIT_TEST_DIR) \
|
---|
1050 | -classpath $(JUNIT_JAR):$(abs_top_builddir)/liveconnect/lib/classes.jar:$(NETX_DIR)/lib/classes.jar:$(TEST_EXTENSIONS_DIR):$(TAGSOUP_JAR) \
|
---|
1051 | @netx-unit-tests-source-files.txt && \
|
---|
1052 | mkdir -p stamps && \
|
---|
1053 | touch $@
|
---|
1054 |
|
---|
1055 | $(TESTS_DIR)/$(REPORT_STYLES_DIRNAME):
|
---|
1056 | mkdir $(TESTS_DIR)/$(REPORT_STYLES_DIRNAME)
|
---|
1057 | cp $(TESTS_SRCDIR)/$(REPORT_STYLES_DIRNAME)/*.css $(TESTS_DIR)/$(REPORT_STYLES_DIRNAME)/
|
---|
1058 | cp $(TESTS_SRCDIR)/$(REPORT_STYLES_DIRNAME)/*.js $(TESTS_DIR)/$(REPORT_STYLES_DIRNAME)/
|
---|
1059 |
|
---|
1060 | $(UNIT_CLASS_NAMES):
|
---|
1061 | cd $(NETX_UNIT_TEST_DIR) ; \
|
---|
1062 | class_names= ; \
|
---|
1063 | for test in `find -type f` ; do \
|
---|
1064 | class_name=`echo $$test | sed -e 's|\.class$$||' -e 's|^\./||'` ; \
|
---|
1065 | class_name=`echo $$class_name | sed -e 's|/|.|g' ` ; \
|
---|
1066 | class_names="$$class_names $$class_name" ; \
|
---|
1067 | done ; \
|
---|
1068 | echo $$class_names > $(UNIT_CLASS_NAMES);
|
---|
1069 |
|
---|
1070 | stamps/run-netx-unit-tests.stamp: stamps/netx-unit-tests-compile.stamp $(JUNIT_RUNNER_JAR) \
|
---|
1071 | $(TESTS_DIR)/$(REPORT_STYLES_DIRNAME) $(UNIT_CLASS_NAMES)
|
---|
1072 | filename=" " ; \
|
---|
1073 | cd $(NETX_UNIT_TEST_SRCDIR) ; \
|
---|
1074 | for file in `find . -type f \! -iname "*.java"`; do\
|
---|
1075 | filename=`echo $$file `; \
|
---|
1076 | cp --parents $$filename $(NETX_UNIT_TEST_DIR) ; \
|
---|
1077 | done ; \
|
---|
1078 | cd $(NETX_UNIT_TEST_DIR) ; \
|
---|
1079 | class_names=`cat $(UNIT_CLASS_NAMES)` ; \
|
---|
1080 | CLASSPATH=$(NETX_DIR)/lib/classes.jar:$(abs_top_builddir)/liveconnect/lib/classes.jar:$(JUNIT_JAR):$(JUNIT_RUNNER_JAR):$(TEST_EXTENSIONS_DIR):.:$(TEST_EXTENSIONS_SRCDIR):$(TAGSOUP_JAR) ; \
|
---|
1081 | $(BOOT_DIR)/bin/java -Xbootclasspath/a:$(RUNTIME):$$CLASSPATH CommandLine $$class_names
|
---|
1082 | if WITH_XSLTPROC
|
---|
1083 | -$(XSLTPROC) --stringparam logs logs_unit.html $(TESTS_SRCDIR)/$(REPORT_STYLES_DIRNAME)/jreport.xsl $(NETX_UNIT_TEST_DIR)/tests-output.xml > $(TESTS_DIR)/index_unit.html
|
---|
1084 | -$(XSLTPROC) $(TESTS_SRCDIR)/$(REPORT_STYLES_DIRNAME)/logs.xsl $(NETX_UNIT_TEST_DIR)/ServerAccess-logs.xml > $(TESTS_DIR)/logs_unit.html
|
---|
1085 | -$(XSLTPROC) $(TESTS_SRCDIR)/$(REPORT_STYLES_DIRNAME)/textreport.xsl $(NETX_UNIT_TEST_DIR)/tests-output.xml > $(TESTS_DIR)/summary_unit.txt
|
---|
1086 | endif
|
---|
1087 | mkdir -p stamps && \
|
---|
1088 | touch $@
|
---|
1089 |
|
---|
1090 | #warning, during this target tests.build/netx/unit/tests-output.xml is backup and rewriten (but not coresponding html file)
|
---|
1091 | #xml results run from emma sandbox, however, can be wrong, co the new tests-output.xml is then renamed and orginal one restored
|
---|
1092 | #you can add -ix "-*Test*" -ix "-*test*" to ignore all test cases from statistics
|
---|
1093 | stamps/run-unit-test-code-coverage.stamp: stamps/netx-unit-tests-compile.stamp $(JUNIT_RUNNER_JAR) \
|
---|
1094 | $(TESTS_DIR)/$(REPORT_STYLES_DIRNAME) $(UNIT_CLASS_NAMES)
|
---|
1095 | if WITH_EMMA
|
---|
1096 | cd $(NETX_UNIT_TEST_DIR) ; \
|
---|
1097 | for file in $(EMMA_MODIFIED_FILES) ; do \
|
---|
1098 | mv $(NETX_UNIT_TEST_DIR)/$$file $(NETX_UNIT_TEST_DIR)/"$$file""$(EMMA_BACKUP_SUFFIX)" ; \
|
---|
1099 | done ;\
|
---|
1100 | class_names=`cat $(UNIT_CLASS_NAMES)` ; \
|
---|
1101 | CLASSPATH=$(NETX_DIR)/lib/classes.jar:$(abs_top_builddir)/liveconnect/lib/classes.jar:$(JUNIT_JAR):$(JUNIT_RUNNER_JAR):$(TEST_EXTENSIONS_DIR):.:$(TEST_EXTENSIONS_SRCDIR) ; \
|
---|
1102 | $(BOOT_DIR)/bin/java $(EMMA_JAVA_ARGS) -Xbootclasspath/a:$(RUNTIME):$$CLASSPATH -cp $(EMMA_JAR) -Demma.report.html.out.encoding=UTF-8 emmarun \
|
---|
1103 | -Dreport.html.out.encoding=UTF-8 \
|
---|
1104 | -raw \
|
---|
1105 | -sp $(NETX_SRCDIR) \
|
---|
1106 | -sp $(NETX_UNIT_TEST_SRCDIR) \
|
---|
1107 | -sp $(JUNIT_RUNNER_SRCDIR) \
|
---|
1108 | -r html \
|
---|
1109 | -r xml \
|
---|
1110 | -cp $(NETX_DIR)/lib/classes.jar \
|
---|
1111 | -cp $(JUNIT_JAR) \
|
---|
1112 | -cp $(JUNIT_RUNNER_JAR) \
|
---|
1113 | -cp $(BOOT_DIR)/jre/lib/rt.jar \
|
---|
1114 | -cp $(BOOT_DIR)/jre/lib/jsse.jar \
|
---|
1115 | -cp $(BOOT_DIR)/jre/lib/resources.jar \
|
---|
1116 | -cp $(RHINO_RUNTIME) \
|
---|
1117 | -cp $(TEST_EXTENSIONS_DIR) \
|
---|
1118 | -cp $(TEST_EXTENSIONS_SRCDIR) \
|
---|
1119 | if HAVE_TAGSOUP
|
---|
1120 | -cp $(TAGSOUP_JAR) \
|
---|
1121 | endif
|
---|
1122 | -cp . \
|
---|
1123 | -ix "-org.junit.*" \
|
---|
1124 | -ix "-junit.*" \
|
---|
1125 | CommandLine $$class_names ; \
|
---|
1126 | for file in $(EMMA_MODIFIED_FILES) ; do \
|
---|
1127 | mv $(NETX_UNIT_TEST_DIR)/$$file $(NETX_UNIT_TEST_DIR)/"$$file""$(EMMA_SUFFIX)" ; \
|
---|
1128 | mv $(NETX_UNIT_TEST_DIR)/"$$file""$(EMMA_BACKUP_SUFFIX)" $(NETX_UNIT_TEST_DIR)/$$file ; \
|
---|
1129 | done ;
|
---|
1130 | else
|
---|
1131 | echo "Sorry, coverage report cant be run without emma installed. Try install emma or specify with-emma value" ;
|
---|
1132 | exit 5
|
---|
1133 | endif
|
---|
1134 | touch $@
|
---|
1135 |
|
---|
1136 | stamps/compile-jacoco-operator.stamp: jacoco-operator-source-files.txt
|
---|
1137 | if WITH_JACOCO
|
---|
1138 | mkdir -p $(JACOCO_OPERATOR_DIR) && \
|
---|
1139 | $(BOOT_DIR)/bin/javac $(IT_JAVACFLAGS) \
|
---|
1140 | -d $(JACOCO_OPERATOR_DIR) \
|
---|
1141 | -classpath $(JACOCO_CLASSPATH) \
|
---|
1142 | @jacoco-operator-source-files.txt ;
|
---|
1143 | else
|
---|
1144 | echo "Sorry, jacoco coverage report generator cant be compiled without jacoco installed. Try installing jacoco or specify with-jacoco value" ;
|
---|
1145 | exit 5
|
---|
1146 | endif
|
---|
1147 | touch $@
|
---|
1148 |
|
---|
1149 |
|
---|
1150 | #warning, during this target tests.build/netx/unit/tests-output.xml is backup and rewriten (but not coresponding html file)
|
---|
1151 | #xml results run with jacoco agent however, can be wrong, co the new tests-output.xml is then renamed and orginal one restored
|
---|
1152 | stamps/run-unit-test-code-coverage-jacoco.stamp: stamps/netx-unit-tests-compile.stamp $(JUNIT_RUNNER_JAR) \
|
---|
1153 | $(TESTS_DIR)/$(REPORT_STYLES_DIRNAME) $(UNIT_CLASS_NAMES) stamps/compile-jacoco-operator.stamp
|
---|
1154 | if WITH_JACOCO
|
---|
1155 | filename=" " ; \
|
---|
1156 | cd $(NETX_UNIT_TEST_SRCDIR) ; \
|
---|
1157 | for file in `find . -type f \! -iname "*.java"`; do\
|
---|
1158 | filename=`echo $$file `; \
|
---|
1159 | cp --parents $$filename $(NETX_UNIT_TEST_DIR) ; \
|
---|
1160 | done ; \
|
---|
1161 | cd $(NETX_UNIT_TEST_DIR) ; \
|
---|
1162 | for file in $(EMMA_MODIFIED_FILES) ; do \
|
---|
1163 | mv $(NETX_UNIT_TEST_DIR)/$$file $(NETX_UNIT_TEST_DIR)/"$$file""$(EMMA_BACKUP_SUFFIX)" ; \
|
---|
1164 | done ;\
|
---|
1165 | class_names=`cat $(UNIT_CLASS_NAMES)` ; \
|
---|
1166 | CLASSPATH=$(NETX_DIR)/lib/classes.jar:$(abs_top_builddir)/liveconnect/lib/classes.jar:$(JUNIT_JAR):$(JUNIT_RUNNER_JAR):$(TEST_EXTENSIONS_DIR):$(JACOCO_CLASSPATH):.:$(TEST_EXTENSIONS_SRCDIR):$(TAGSOUP_JAR) ; \
|
---|
1167 | $(BOOT_DIR)/bin/java $(JACOCO_AGENT_SWITCH) -Xbootclasspath/a:$(RUNTIME):$$CLASSPATH CommandLine $$class_names ; \
|
---|
1168 | for file in $(EMMA_MODIFIED_FILES) ; do \
|
---|
1169 | mv $(NETX_UNIT_TEST_DIR)/$$file $(NETX_UNIT_TEST_DIR)/"$$file""$(EMMA_SUFFIX)" ; \
|
---|
1170 | mv $(NETX_UNIT_TEST_DIR)/"$$file""$(EMMA_BACKUP_SUFFIX)" $(NETX_UNIT_TEST_DIR)/$$file ; \
|
---|
1171 | done ; \
|
---|
1172 | $(JACOCO_OPERATOR_EXEC) \
|
---|
1173 | report --die-soon --html-output coverage --xml-output coverage.xml --input-file jacoco.exec \
|
---|
1174 | --input-srcs $(NETX_SRCDIR) $(PLUGIN_SRCDIR)/java $(NETX_UNIT_TEST_SRCDIR) $(JUNIT_RUNNER_SRCDIR) $(TEST_EXTENSIONS_SRCDIR) \
|
---|
1175 | --input-builds $(NETX_DIR)/lib/classes.jar $(abs_top_builddir)/liveconnect/lib/classes.jar $(NETX_UNIT_TEST_DIR) $(JUNIT_RUNNER_JAR) $(TEST_EXTENSIONS_DIR) \
|
---|
1176 | --title "IcedTea-Web unit-tests codecoverage" ;
|
---|
1177 | else
|
---|
1178 | echo "Sorry, coverage report cant be run without jacoco installed. Try installing jacoco or specify with-jacoco value" ;
|
---|
1179 | exit 5
|
---|
1180 | endif
|
---|
1181 | touch $@
|
---|
1182 |
|
---|
1183 | #warning, during this target tests.build/netx/jnlp_testsengine/tests-output.xml is backup and rewriten (but not coresponding html file)
|
---|
1184 | #xml results run from emma sandbox, however, can be wrong, co the new tests-output.xml is then renamed and orginal one restored
|
---|
1185 | stamps/run-reproducers-test-code-coverage.stamp: stamps/run-netx-dist-tests.stamp $(REPRODUCERS_CLASS_NAMES)
|
---|
1186 | if WITH_EMMA
|
---|
1187 | cd $(TESTS_DIR) ; \
|
---|
1188 | for file in $(EMMA_MODIFIED_FILES) ; do \
|
---|
1189 | mv $(TEST_EXTENSIONS_DIR)/$$file $(TEST_EXTENSIONS_DIR)/"$$file""$(EMMA_BACKUP_SUFFIX)" ; \
|
---|
1190 | done ;\
|
---|
1191 | echo "backuping javaws and netx.jar in $(DESTDIR)" ; \
|
---|
1192 | netx_backup=$(DESTDIR)$(datadir)/$(PACKAGE_NAME)/netx_backup.jar ; \
|
---|
1193 | javaws_backup=$(DESTDIR)$(bindir)/javaws_backup ; \
|
---|
1194 | mv $(DESTDIR)$(bindir)/javaws $$javaws_backup ; \
|
---|
1195 | mv $(DESTDIR)$(datadir)/$(PACKAGE_NAME)/netx.jar $$netx_backup ; \
|
---|
1196 | nw_bootclasspath="$(LAUNCHER_BOOTCLASSPATH):$(EMMA_JAR):$$netx_backup" ; \
|
---|
1197 | instructed_dir=$(TESTS_DIR)/instr ; \
|
---|
1198 | echo "instrumenting netx.jar from $$netx_backup through $$instructed_dir" ; \
|
---|
1199 | $(BOOT_DIR)/bin/java -cp $(EMMA_JAR) emma instr -d $$instructed_dir -ip $$netx_backup ; \
|
---|
1200 | pushd $$instructed_dir ; \
|
---|
1201 | $(BOOT_DIR)/bin/jar -cf $(DESTDIR)$(datadir)/$(PACKAGE_NAME)/netx.jar * ; \
|
---|
1202 | popd ; \
|
---|
1203 | rm -rf $$instructed_dir ; \
|
---|
1204 | echo "patching $(javaws)" ; \
|
---|
1205 | cat $$javaws_backup | sed "s,$(LAUNCHER_BOOTCLASSPATH),$$nw_bootclasspath," > $(DESTDIR)$(bindir)/$(javaws) ; \
|
---|
1206 | chmod 777 $(DESTDIR)$(bindir)/$(javaws) ; \
|
---|
1207 | testcases_srcs=( ) ; \
|
---|
1208 | k=0 ; \
|
---|
1209 | types=($(ALL_REPRODUCERS)); \
|
---|
1210 | for which in "$${types[@]}" ; do \
|
---|
1211 | . $(abs_top_srcdir)/NEW_LINE_IFS ; \
|
---|
1212 | simpleReproducers=(`cat $(abs_top_builddir)/junit-jnlp-dist-$$which.txt `); \
|
---|
1213 | IFS="$$IFS_BACKUP" ; \
|
---|
1214 | for dir in "$${simpleReproducers[@]}" ; do \
|
---|
1215 | testcases_srcs[k]="-sp" ; \
|
---|
1216 | k=$$((k+1)) ; \
|
---|
1217 | testcases_srcs[k]="$(REPRODUCERS_TESTS_SRCDIR)/$$which/$$dir/testcases/" ; \
|
---|
1218 | k=$$((k+1)) ; \
|
---|
1219 | done ; \
|
---|
1220 | done ; \
|
---|
1221 | cd $(TEST_EXTENSIONS_DIR) ; \
|
---|
1222 | class_names=`cat $(REPRODUCERS_CLASS_NAMES)` ; \
|
---|
1223 | CLASSPATH=$(NETX_DIR)/lib/classes.jar:$(abs_top_builddir)/liveconnect/lib/classes.jar:$(JUNIT_JAR):$(JUNIT_RUNNER_JAR):$(TEST_EXTENSIONS_DIR):.:$(TEST_EXTENSIONS_SRCDIR) ; \
|
---|
1224 | $(BOOT_DIR)/bin/java \
|
---|
1225 | $(EMMA_JAVA_ARGS) \
|
---|
1226 | $(REPRODUCERS_DPARAMETERS) \
|
---|
1227 | -Xbootclasspath/a:$(RUNTIME):$$CLASSPATH -cp $(EMMA_JAR) emmarun \
|
---|
1228 | -raw \
|
---|
1229 | -cp $(NETX_DIR)/lib/classes.jar \
|
---|
1230 | -cp $(JUNIT_JAR) \
|
---|
1231 | -cp $(JUNIT_RUNNER_JAR) \
|
---|
1232 | -cp $(BOOT_DIR)/jre/lib/rt.jar \
|
---|
1233 | -cp $(BOOT_DIR)/jre/lib/jsse.jar \
|
---|
1234 | -cp $(BOOT_DIR)/jre/lib/resources.jar \
|
---|
1235 | -cp $(RHINO_RUNTIME) \
|
---|
1236 | -cp . \
|
---|
1237 | -cp $(TEST_EXTENSIONS_SRCDIR) \
|
---|
1238 | -cp $(TEST_EXTENSIONS_TESTS_DIR) \
|
---|
1239 | -ix "-org.junit.*" \
|
---|
1240 | -ix "-junit.*" \
|
---|
1241 | CommandLine $$class_names ; \
|
---|
1242 | mv $(TEST_EXTENSIONS_DIR)/coverage.ec $(TEST_EXTENSIONS_DIR)/coverageX.ec ; \
|
---|
1243 | mv $(TEST_EXTENSIONS_DIR)/coverage.es $(TEST_EXTENSIONS_DIR)/coverageX.es ; \
|
---|
1244 | $(BOOT_DIR)/bin/java $(EMMA_JAVA_ARGS) -cp $(EMMA_JAR) emma merge \
|
---|
1245 | -in $(TESTS_DIR)/coverage.em \
|
---|
1246 | -in $(TEST_EXTENSIONS_DIR)/coverageX.ec \
|
---|
1247 | -in $(TEST_EXTENSIONS_DIR)/coverageX.es ; \
|
---|
1248 | $(BOOT_DIR)/bin/java $(EMMA_JAVA_ARGS) -cp $(EMMA_JAR) -Demma.report.html.out.encoding=UTF-8 emma report \
|
---|
1249 | -Dreport.html.out.encoding=UTF-8 \
|
---|
1250 | -in $(TEST_EXTENSIONS_DIR)/coverage.es \
|
---|
1251 | -sp $(NETX_SRCDIR) \
|
---|
1252 | -sp $(NETX_UNIT_TEST_SRCDIR) \
|
---|
1253 | -sp $(JUNIT_RUNNER_SRCDIR) \
|
---|
1254 | -sp $(TEST_EXTENSIONS_SRCDIR) \
|
---|
1255 | -sp $(TEST_EXTENSIONS_TESTS_SRCDIR) \
|
---|
1256 | -r html \
|
---|
1257 | -r xml \
|
---|
1258 | "$${testcases_srcs[@]}" ; \
|
---|
1259 | echo "restoring javaws and netx.jar in $(DESTDIR)" ; \
|
---|
1260 | rm -f $(DESTDIR)$(bindir)/$(javaws) $(DESTDIR)$(datadir)/$(PACKAGE_NAME)/netx.jar ; \
|
---|
1261 | rm -f $(DESTDIR)$(bindir)/$(javaws); \
|
---|
1262 | mv $$javaws_backup $(DESTDIR)$(bindir)/$(javaws); \
|
---|
1263 | mv $$netx_backup $(DESTDIR)$(datadir)/$(PACKAGE_NAME)/netx.jar ; \
|
---|
1264 | for file in $(EMMA_MODIFIED_FILES) ; do \
|
---|
1265 | mv $(TEST_EXTENSIONS_DIR)/$$file $(TEST_EXTENSIONS_DIR)/"$$file""$(EMMA_SUFFIX)" ; \
|
---|
1266 | mv $(TEST_EXTENSIONS_DIR)/"$$file""$(EMMA_BACKUP_SUFFIX)" $(TEST_EXTENSIONS_DIR)/$$file ; \
|
---|
1267 | done ;\
|
---|
1268 | rm $(TEST_EXTENSIONS_DIR)/coverage.txt ;
|
---|
1269 | else
|
---|
1270 | echo "Sorry, coverage report cant be run without emma installed. Try install emma or specify with-emma value" ;
|
---|
1271 | exit 5
|
---|
1272 | endif
|
---|
1273 | touch $@
|
---|
1274 |
|
---|
1275 | $(COVERABLE_PLUGIN_DIR):
|
---|
1276 | mkdir -p $(COVERABLE_PLUGIN_DIR);
|
---|
1277 |
|
---|
1278 | $(COVERABLE_PLUGIN_DIR)/%.o: $(PLUGIN_SRCDIR)/%.cc
|
---|
1279 | cd $(COVERABLE_PLUGIN_DIR) && \
|
---|
1280 | $(CXX) $(CXXFLAGS) \
|
---|
1281 | $(DEFS) $(VERSION_DEFS) \
|
---|
1282 | -DJDK_UPDATE_VERSION="\"$(JDK_UPDATE_VERSION)\"" \
|
---|
1283 | -DPLUGIN_NAME="\"IcedTea-Web Plugin with jacoco coverage agent\"" \
|
---|
1284 | -DPLUGIN_VERSION="\"$(PLUGIN_VERSION)\"" \
|
---|
1285 | -DPACKAGE_URL="\"$(PACKAGE_URL)\"" \
|
---|
1286 | -DMOZILLA_VERSION_COLLAPSED="$(MOZILLA_VERSION_COLLAPSED)" \
|
---|
1287 | -DICEDTEA_WEB_JRE="\"$(SYSTEM_JRE_DIR)\"" \
|
---|
1288 | -DPLUGIN_BOOTCLASSPATH=$(PLUGIN_COVERAGE_BOOTCLASSPATH) \
|
---|
1289 | -DCOVERAGE_AGENT=$(JACOCO_AGENT_PLUGIN_SWITCH) \
|
---|
1290 | $(GLIB_CFLAGS) \
|
---|
1291 | $(MOZILLA_CFLAGS) \
|
---|
1292 | -fvisibility=hidden \
|
---|
1293 | -fPIC -o $@ -c $<
|
---|
1294 |
|
---|
1295 | $(COVERABLE_PLUGIN_DIR)/$(BUILT_PLUGIN_LIBRARY): $(addprefix $(COVERABLE_PLUGIN_DIR)/,$(PLUGIN_OBJECTS))
|
---|
1296 | cd $(COVERABLE_PLUGIN_DIR) && \
|
---|
1297 | $(CXX) $(CXXFLAGS) \
|
---|
1298 | $(PLUGIN_OBJECTS) \
|
---|
1299 | $(GLIB_LIBS) \
|
---|
1300 | $(MOZILLA_LIBS) \
|
---|
1301 | -shared -o $@
|
---|
1302 |
|
---|
1303 | stamps/build-fake-plugin.stamp: $(COVERABLE_PLUGIN_DIR) $(addprefix $(PLUGIN_SRCDIR)/,$(PLUGIN_SRC)) $(addprefix $(COVERABLE_PLUGIN_DIR)/,$(PLUGIN_OBJECTS)) stamps/liveconnect-dist.stamp $(COVERABLE_PLUGIN_DIR)/$(BUILT_PLUGIN_LIBRARY)
|
---|
1304 | touch $@
|
---|
1305 |
|
---|
1306 | #warning, during this target tests.build/netx/jnlp_testsengine/tests-output.xml is backup and rewriten (but not coresponding html file)
|
---|
1307 | #xml results run with jacoco agent, however, can be wrong, co the new tests-output.xml is then renamed and orginal one restored
|
---|
1308 | stamps/run-reproducers-test-code-coverage-jacoco.stamp: stamps/run-netx-dist-tests.stamp $(REPRODUCERS_CLASS_NAMES) \
|
---|
1309 | stamps/compile-jacoco-operator.stamp stamps/build-fake-plugin.stamp
|
---|
1310 | if WITH_JACOCO
|
---|
1311 | cd $(TESTS_DIR) ; \
|
---|
1312 | for file in $(EMMA_MODIFIED_FILES) ; do \
|
---|
1313 | mv $(TEST_EXTENSIONS_DIR)/$$file $(TEST_EXTENSIONS_DIR)/"$$file""$(EMMA_BACKUP_SUFFIX)" ; \
|
---|
1314 | done ;\
|
---|
1315 | echo "backuping javaws in $(DESTDIR)$(bindir)" ; \
|
---|
1316 | javaws_backup=$(DESTDIR)$(bindir)/javaws_backup ; \
|
---|
1317 | mv $(DESTDIR)$(bindir)/javaws $$javaws_backup ; \
|
---|
1318 | echo "patching $(javaws)" ; \
|
---|
1319 | nw_bootclasspath="$(LAUNCHER_BOOTCLASSPATH):$(JACOCO_CLASSPATH)" ; \
|
---|
1320 | cat $$javaws_backup | sed "s|COMMAND.k.=\"..JAVA.\"|COMMAND[k]=\"\\$$\\{JAVA\\}\" ; k=1 ; COMMAND[k]=$(JACOCO_AGENT_JAVAWS_SWITCH)|" | sed "s,$(LAUNCHER_BOOTCLASSPATH),$$nw_bootclasspath," > $(DESTDIR)$(bindir)/$(javaws) ; \
|
---|
1321 | chmod 777 $(DESTDIR)$(bindir)/$(javaws) ; \
|
---|
1322 | echo "backuping plugin in $(DESTDIR)/$(libdir)$(BUILT_PLUGIN_LIBRARY)" ; \
|
---|
1323 | plugin_backup=$(DESTDIR)$(libdir)/$(BUILT_PLUGIN_LIBRARY)_backup ; \
|
---|
1324 | mv $(DESTDIR)$(libdir)/$(BUILT_PLUGIN_LIBRARY) $$plugin_backup ; \
|
---|
1325 | echo "fakeing plugin" ; \
|
---|
1326 | cp $(COVERABLE_PLUGIN_DIR)/$(BUILT_PLUGIN_LIBRARY) $(DESTDIR)$(libdir)/$(BUILT_PLUGIN_LIBRARY) ; \
|
---|
1327 | testcases_srcs=( ) ; \
|
---|
1328 | k=0 ; \
|
---|
1329 | types=($(ALL_REPRODUCERS)); \
|
---|
1330 | for which in "$${types[@]}" ; do \
|
---|
1331 | . $(abs_top_srcdir)/NEW_LINE_IFS ; \
|
---|
1332 | simpleReproducers=(`cat $(abs_top_builddir)/junit-jnlp-dist-$$which.txt `); \
|
---|
1333 | IFS="$$IFS_BACKUP" ; \
|
---|
1334 | for dir in "$${simpleReproducers[@]}" ; do \
|
---|
1335 | testcases_srcs[k]="$(REPRODUCERS_TESTS_SRCDIR)/$$which/$$dir/testcases/" ; \
|
---|
1336 | k=$$((k+1)) ; \
|
---|
1337 | done ; \
|
---|
1338 | done ; \
|
---|
1339 | cd $(TEST_EXTENSIONS_DIR) ; \
|
---|
1340 | class_names=`cat $(REPRODUCERS_CLASS_NAMES)` ; \
|
---|
1341 | CLASSPATH=$(NETX_DIR)/lib/classes.jar:$(JUNIT_JAR):$(JUNIT_RUNNER_JAR):.:$(TEST_EXTENSIONS_DIR):$(JACOCO_CLASSPATH):$(TEST_EXTENSIONS_TESTS_DIR):$(TEST_EXTENSIONS_SRCDIR) ; \
|
---|
1342 | $(BOOT_DIR)/bin/java $(JACOCO_AGENT_SWITCH) $(REPRODUCERS_DPARAMETERS) \
|
---|
1343 | -Xbootclasspath/a:$(RUNTIME):$$CLASSPATH CommandLine $$class_names ; \
|
---|
1344 | if [ -f $(JACOCO_JAVAWS_RESULTS) ] ; then \
|
---|
1345 | jacoco_javaws_results=$(JACOCO_JAVAWS_RESULTS) ; \
|
---|
1346 | $(JACOCO_OPERATOR_EXEC) \
|
---|
1347 | report --die-soon --html-output coverage-javaws --xml-output coverage-javaws.xml --input-file $(JACOCO_JAVAWS_RESULTS) \
|
---|
1348 | --input-srcs $(NETX_SRCDIR) \
|
---|
1349 | --input-builds $(NETX_DIR)/lib/classes.jar \
|
---|
1350 | --title "IcedTea-Web javaws reproducers codecoverage" ; \
|
---|
1351 | fi; \
|
---|
1352 | if [ -f $(JACOCO_PLUGIN_RESULTS) ] ; then \
|
---|
1353 | jacoco_plugin_results=$(JACOCO_PLUGIN_RESULTS) ; \
|
---|
1354 | $(JACOCO_OPERATOR_EXEC) \
|
---|
1355 | report --die-soon --html-output coverage-plugin --xml-output coverage-plugin.xml --input-file $(JACOCO_PLUGIN_RESULTS) \
|
---|
1356 | --input-srcs $(NETX_SRCDIR) $(PLUGIN_SRCDIR)/java \
|
---|
1357 | --input-builds $(NETX_DIR)/lib/classes.jar $(abs_top_builddir)/liveconnect/lib/classes.jar \
|
---|
1358 | --title "IcedTea-Web plugin reproducers codecoverage" ; \
|
---|
1359 | fi; \
|
---|
1360 | $(JACOCO_OPERATOR_EXEC) \
|
---|
1361 | merge --die-soon --input-files jacoco.exec $$jacoco_javaws_results $$jacoco_plugin_results --output-file jacoco-merged-reproducers.exec ; \
|
---|
1362 | $(JACOCO_OPERATOR_EXEC) \
|
---|
1363 | report --html-output coverage --xml-output coverage.xml --input-file jacoco-merged-reproducers.exec \
|
---|
1364 | --input-srcs $(NETX_SRCDIR) $(PLUGIN_SRCDIR)/java $(JUNIT_RUNNER_SRCDIR) $(TEST_EXTENSIONS_SRCDIR) $(TEST_EXTENSIONS_TESTS_SRCDIR) "$${testcases_srcs[@]}" \
|
---|
1365 | --input-builds $(NETX_DIR)/lib/classes.jar $(abs_top_builddir)/liveconnect/lib/classes.jar $(JUNIT_RUNNER_JAR) $(TEST_EXTENSIONS_DIR) $(TEST_EXTENSIONS_TESTS_DIR) \
|
---|
1366 | --title "IcedTea-Web reproducers-tests codecoverage" ; \
|
---|
1367 | echo "restoring javaws in $(DESTDIR)$(bindir)" ; \
|
---|
1368 | rm -f $(DESTDIR)$(bindir)/$(javaws); \
|
---|
1369 | mv $$javaws_backup $(DESTDIR)$(bindir)/$(javaws); \
|
---|
1370 | echo "restoring plugin in $(DESTDIR)/$(libdir)$(BUILT_PLUGIN_LIBRARY)" ; \
|
---|
1371 | mv $$plugin_backup $(DESTDIR)$(libdir)/$(BUILT_PLUGIN_LIBRARY) ; \
|
---|
1372 | for file in $(EMMA_MODIFIED_FILES) ; do \
|
---|
1373 | mv $(TEST_EXTENSIONS_DIR)/$$file $(TEST_EXTENSIONS_DIR)/"$$file""$(EMMA_SUFFIX)" ; \
|
---|
1374 | mv $(TEST_EXTENSIONS_DIR)/"$$file""$(EMMA_BACKUP_SUFFIX)" $(TEST_EXTENSIONS_DIR)/$$file ; \
|
---|
1375 | done ;
|
---|
1376 | else
|
---|
1377 | echo "Sorry, coverage report cant be run without jacoco installed. Try installing jacoco or specify with-jacoco value" ;
|
---|
1378 | exit 5
|
---|
1379 | endif
|
---|
1380 | touch $@
|
---|
1381 |
|
---|
1382 | run-test-code-coverage-jacoco: stamps/run-unit-test-code-coverage-jacoco.stamp stamps/run-reproducers-test-code-coverage-jacoco.stamp
|
---|
1383 | if WITH_JACOCO
|
---|
1384 | cd $(TESTS_DIR) ; \
|
---|
1385 | k=0 ; \
|
---|
1386 | types=($(ALL_REPRODUCERS)); \
|
---|
1387 | for which in "$${types[@]}" ; do \
|
---|
1388 | . $(abs_top_srcdir)/NEW_LINE_IFS ; \
|
---|
1389 | simpleReproducers=(`cat $(abs_top_builddir)/junit-jnlp-dist-$$which.txt `); \
|
---|
1390 | IFS="$$IFS_BACKUP" ; \
|
---|
1391 | for dir in "$${simpleReproducers[@]}" ; do \
|
---|
1392 | testcases_srcs[k]="$(REPRODUCERS_TESTS_SRCDIR)/$$which/$$dir/testcases/" ; \
|
---|
1393 | k=$$((k+1)) ; \
|
---|
1394 | done ; \
|
---|
1395 | done ; \
|
---|
1396 | class_names=`cat $(REPRODUCERS_CLASS_NAMES)` ; \
|
---|
1397 | $(JACOCO_OPERATOR_EXEC) \
|
---|
1398 | merge --die-soon --input-files $(TEST_EXTENSIONS_DIR)/jacoco-merged-reproducers.exec $(NETX_UNIT_TEST_DIR)/jacoco.exec --output-file jacoco-merged.exec; \
|
---|
1399 | $(JACOCO_OPERATOR_EXEC) \
|
---|
1400 | report --html-output coverage --xml-output coverage.xml --input-file jacoco-merged.exec \
|
---|
1401 | --input-srcs $(NETX_SRCDIR) $(PLUGIN_SRCDIR)/java $(JUNIT_RUNNER_SRCDIR) $(TEST_EXTENSIONS_SRCDIR) $(TEST_EXTENSIONS_TESTS_SRCDIR) "$${testcases_srcs[@]}" \
|
---|
1402 | --input-builds $(NETX_DIR)/lib/classes.jar $(abs_top_builddir)/liveconnect/lib/classes.jar $(JUNIT_RUNNER_JAR) $(TEST_EXTENSIONS_DIR) $(TEST_EXTENSIONS_TESTS_DIR) \
|
---|
1403 | --input-srcs $(NETX_UNIT_TEST_SRCDIR) \
|
---|
1404 | --input-builds $(NETX_UNIT_TEST_DIR) \
|
---|
1405 | --title "IcedTea-Web complete codecoverage" ;
|
---|
1406 | else
|
---|
1407 | echo "Sorry, coverage report cant be run without jacoco installed. Try installing jacoco or specify with-jacoco value" ;
|
---|
1408 | exit 5
|
---|
1409 | endif
|
---|
1410 |
|
---|
1411 | run-test-code-coverage: stamps/run-unit-test-code-coverage.stamps stamps/run-reproducers-test-code-coverage.stamps
|
---|
1412 | if WITH_EMMA
|
---|
1413 | cd $(TESTS_DIR) ; \
|
---|
1414 | k=0 ; \
|
---|
1415 | types=($(ALL_REPRODUCERS)); \
|
---|
1416 | for which in "$${types[@]}" ; do \
|
---|
1417 | . $(abs_top_srcdir)/NEW_LINE_IFS ; \
|
---|
1418 | simpleReproducers=(`cat $(abs_top_builddir)/junit-jnlp-dist-$$which.txt `); \
|
---|
1419 | IFS="$$IFS_BACKUP" ; \
|
---|
1420 | for dir in "$${simpleReproducers[@]}" ; do \
|
---|
1421 | testcases_srcs[k]="-sp" ; \
|
---|
1422 | k=$$((k+1)) ; \
|
---|
1423 | testcases_srcs[k]="$(REPRODUCERS_TESTS_SRCDIR)/$$which/$$dir/testcases/" ; \
|
---|
1424 | k=$$((k+1)) ; \
|
---|
1425 | done ; \
|
---|
1426 | done ; \
|
---|
1427 | $(BOOT_DIR)/bin/java $(EMMA_JAVA_ARGS) -cp $(EMMA_JAR) emma merge \
|
---|
1428 | -in $(NETX_UNIT_TEST_DIR)/coverage.es \
|
---|
1429 | -in $(TEST_EXTENSIONS_DIR)/coverage.es ; \
|
---|
1430 | $(BOOT_DIR)/bin/java $(EMMA_JAVA_ARGS) -cp $(EMMA_JAR) -Demma.report.html.out.encoding=UTF-8 emma report \
|
---|
1431 | -Dreport.html.out.encoding=UTF-8 \
|
---|
1432 | -in $(TESTS_DIR)/coverage.es \
|
---|
1433 | -in $(TESTS_DIR)/coverage.em \
|
---|
1434 | -sp $(NETX_SRCDIR) \
|
---|
1435 | -sp $(NETX_UNIT_TEST_SRCDIR) \
|
---|
1436 | -sp $(JUNIT_RUNNER_SRCDIR) \
|
---|
1437 | -sp $(TEST_EXTENSIONS_SRCDIR) \
|
---|
1438 | -sp $(TEST_EXTENSIONS_TESTS_SRCDIR) \
|
---|
1439 | "$${testcases_srcs[@]}" \
|
---|
1440 | -r html \
|
---|
1441 | -r xml ;
|
---|
1442 | else
|
---|
1443 | echo "Sorry, coverage report cant be run without emma installed. Try install emma or specify with-emma value" ;
|
---|
1444 | exit 5
|
---|
1445 | endif
|
---|
1446 |
|
---|
1447 | run-test-server-on-44321: stamps/netx.stamp stamps/junit-jnlp-dist-dirs stamps/netx-dist-tests-import-cert-to-public \
|
---|
1448 | stamps/test-extensions-compile.stamp stamps/compile-reproducers-testcases.stamp $(JUNIT_RUNNER_JAR) stamps/copy-reproducers-resources.stamp
|
---|
1449 | cd $(TEST_EXTENSIONS_DIR) ; \
|
---|
1450 | CLASSPATH=$(NETX_DIR)/lib/classes.jar:$(JUNIT_JAR):$(JUNIT_RUNNER_JAR):.:$(TEST_EXTENSIONS_TESTS_DIR) ; \
|
---|
1451 | $(BOOT_DIR)/bin/java $(REPRODUCERS_DPARAMETERS) \
|
---|
1452 | -Xbootclasspath/a:$(RUNTIME):$$CLASSPATH net.sourceforge.jnlp.ServerAccess
|
---|
1453 |
|
---|
1454 | run-test-server-on-random-port: stamps/netx.stamp stamps/junit-jnlp-dist-dirs stamps/netx-dist-tests-import-cert-to-public \
|
---|
1455 | stamps/test-extensions-compile.stamp stamps/compile-reproducers-testcases.stamp $(JUNIT_RUNNER_JAR) stamps/copy-reproducers-resources.stamp
|
---|
1456 | cd $(TEST_EXTENSIONS_DIR) ; \
|
---|
1457 | CLASSPATH=$(NETX_DIR)/lib/classes.jar:$(JUNIT_JAR):$(JUNIT_RUNNER_JAR):.:$(TEST_EXTENSIONS_TESTS_DIR) ; \
|
---|
1458 | $(BOOT_DIR)/bin/java $(REPRODUCERS_DPARAMETERS) \
|
---|
1459 | -Xbootclasspath/a:$(RUNTIME):$$CLASSPATH net.sourceforge.jnlp.ServerAccess randomport
|
---|
1460 |
|
---|
1461 | clean-netx-tests: clean-netx-unit-tests clean-junit-runner clean-netx-dist-tests clean-test-code-coverage-jacoco clean-test-code-coverage
|
---|
1462 | if [ -e $(TESTS_DIR)/netx ]; then \
|
---|
1463 | rmdir $(TESTS_DIR)/netx ; \
|
---|
1464 | fi
|
---|
1465 |
|
---|
1466 | clean-junit-runner:
|
---|
1467 | rm -f junit-runner-source-files.txt
|
---|
1468 | rm -rf $(JUNIT_RUNNER_DIR)
|
---|
1469 | rm -f $(JUNIT_RUNNER_JAR)
|
---|
1470 |
|
---|
1471 | clean-netx-unit-tests: clean_tests_reports
|
---|
1472 | rm -f netx-unit-tests-source-files.txt
|
---|
1473 | rm -rf $(NETX_UNIT_TEST_DIR)
|
---|
1474 | rm -f $(UNIT_CLASS_NAMES)
|
---|
1475 | rm -f stamps/check-pac-functions.stamp
|
---|
1476 | rm -f stamps/run-netx-unit-tests.stamp
|
---|
1477 | rm -f stamps/netx-unit-tests-compile.stamp
|
---|
1478 |
|
---|
1479 | clean_tests_reports:
|
---|
1480 | rm -rf $(TESTS_DIR)/$(REPORT_STYLES_DIRNAME)/
|
---|
1481 | rm -f $(TESTS_DIR)/*.html
|
---|
1482 | rm -f $(TESTS_DIR)/summary_unit.txt
|
---|
1483 | rm -f $(TESTS_DIR)/summary_reproducers.txt
|
---|
1484 |
|
---|
1485 | clean-$(SOFTKILLER):
|
---|
1486 | rm -f $(TESTS_DIR)/softkiller
|
---|
1487 |
|
---|
1488 | clean-netx-dist-tests: clean_tests_reports netx-dist-tests-remove-cert-from-public clean-custom-reproducers clean-$(SOFTKILLER)
|
---|
1489 | rm -f test-extensions-source-files.txt
|
---|
1490 | rm -f test-extensions-tests-source-files.txt
|
---|
1491 | rm -f $(TEST_EXTENSIONS_COMPATIBILITY_SYMLINK)
|
---|
1492 | rm -rf $(TEST_EXTENSIONS_TESTS_DIR)
|
---|
1493 | rm -rf $(REPRODUCERS_BUILD_DIR)
|
---|
1494 | rm -rf $(REPRODUCERS_TESTS_SERVER_DEPLOYDIR)
|
---|
1495 | rm -rf $(TEST_EXTENSIONS_DIR)
|
---|
1496 | rm -f stamps/junit-jnlp-dist-dirs
|
---|
1497 | rm -f stamps/test-extensions-compile.stamp
|
---|
1498 | rm -f stamps/test-extensions-tests-compile.stamp
|
---|
1499 | rm -f stamps/netx-dist-tests-prepare-reproducers.stamp
|
---|
1500 | rm -f stamps/compile-reproducers-testcases.stamp
|
---|
1501 | rm -f stamps/copy-reproducers-resources.stamp
|
---|
1502 | rm -f stamps/netx-dist-tests-sign-some-reproducers.stamp
|
---|
1503 | rm -f stamps/change-dots-to-paths.stamp
|
---|
1504 | rm -f junit-jnlp-dist-simple.txt
|
---|
1505 | rm -f junit-jnlp-dist-custom.txt
|
---|
1506 | rm -f netx-dist-tests-tests-source-files.txt
|
---|
1507 | types=($(SIGNED_REPRODUCERS)) ; \
|
---|
1508 | for which in "$${types[@]}" ; do \
|
---|
1509 | rm -f junit-jnlp-dist-$$which.txt ; \
|
---|
1510 | rm -f $(EXPORTED_TEST_CERT_PREFIX)_$$which.$(EXPORTED_TEST_CERT_SUFFIX) ; \
|
---|
1511 | done ;
|
---|
1512 | rm -f stamps/exported-test-certs.stamp
|
---|
1513 | rm -f stamps/junit-jnlp-dist-signed.stamp
|
---|
1514 | rm -f $(REPRODUCERS_CLASS_NAMES)
|
---|
1515 | rm -f $(abs_top_builddir)/$(PRIVATE_KEYSTORE_NAME)
|
---|
1516 | rm -f stamps/run-netx-dist-tests.stamp
|
---|
1517 |
|
---|
1518 | clean-unit-test-code-coverage:
|
---|
1519 | if [ -e stamps/run-unit-test-code-coverage.stamp ]; then \
|
---|
1520 | rm -rf $(NETX_UNIT_TEST_DIR)/coverage ; \
|
---|
1521 | rm -f $(NETX_UNIT_TEST_DIR)/coverage.xml ; \
|
---|
1522 | rm -f $(NETX_UNIT_TEST_DIR)/coverageX.es ; \
|
---|
1523 | rm -f $(NETX_UNIT_TEST_DIR)/coverageX.ec ; \
|
---|
1524 | rm -f $(NETX_UNIT_TEST_DIR)/coverage.es ; \
|
---|
1525 | rm -f $(NETX_UNIT_TEST_DIR)/tests-output_withEmma.xml ; \
|
---|
1526 | rm -f stamps/run-unit-test-code-coverage.stamp ; \
|
---|
1527 | fi
|
---|
1528 |
|
---|
1529 | clean-reproducers-test-code-coverage:
|
---|
1530 | if [ -e stamps/run-reproducers-test-code-coverage.stamp ]; then \
|
---|
1531 | rm -rf $(TEST_EXTENSIONS_DIR)/coverage ; \
|
---|
1532 | rm -f $(TEST_EXTENSIONS_DIR)/coverage.xml ; \
|
---|
1533 | rm -f $(TEST_EXTENSIONS_DIR)/coverage.es ; \
|
---|
1534 | rm -f $(TEST_EXTENSIONS_DIR)/tests-output_withEmma.xml ; \
|
---|
1535 | rm -f stamps/run-reproducers-test-code-coverage.stamp ; \
|
---|
1536 | fi
|
---|
1537 |
|
---|
1538 | clean-test-code-coverage: clean-unit-test-code-coverage clean-reproducers-test-code-coverage
|
---|
1539 | if [ -e $(TESTS_DIR)/coverage.xml ]; then \
|
---|
1540 | rm -rf $(TESTS_DIR)/coverage ; \
|
---|
1541 | rm -f $(TESTS_DIR)/coverage.xml ; \
|
---|
1542 | rm -f $(TESTS_DIR)/coverage.es ; \
|
---|
1543 | rm -f $(TESTS_DIR)/coverage.em ; \
|
---|
1544 | fi
|
---|
1545 |
|
---|
1546 | clean-unit-test-code-coverage-jacoco:
|
---|
1547 | if [ -e stamps/run-unit-test-code-coverage-jacoco.stamp ]; then \
|
---|
1548 | rm -rf $(NETX_UNIT_TEST_DIR)/coverage ; \
|
---|
1549 | rm -f $(NETX_UNIT_TEST_DIR)/coverage.xml ; \
|
---|
1550 | rm -f $(NETX_UNIT_TEST_DIR)/jacoco.exec ; \
|
---|
1551 | rm -f $(NETX_UNIT_TEST_DIR)/tests-output_withEmma.xml ; \
|
---|
1552 | rm -f stamps/run-unit-test-code-coverage-jacoco.stamp ; \
|
---|
1553 | fi
|
---|
1554 |
|
---|
1555 | clean-reproducers-test-code-coverage-jacoco:
|
---|
1556 | if [ -e stamps/run-reproducers-test-code-coverage-jacoco.stamp ]; then \
|
---|
1557 | rm -rf $(TEST_EXTENSIONS_DIR)/coverage-javaws ; \
|
---|
1558 | rm -f $(TEST_EXTENSIONS_DIR)/coverage-javaws.xml ; \
|
---|
1559 | rm -f $(TEST_EXTENSIONS_DIR)/jacoco_javaws.exec ; \
|
---|
1560 | rm -rf $(TEST_EXTENSIONS_DIR)/coverage-plugin ; \
|
---|
1561 | rm -f $(TEST_EXTENSIONS_DIR)/coverage-plugin.xml ; \
|
---|
1562 | rm -f $(TEST_EXTENSIONS_DIR)/jacoco_plugin.exec ; \
|
---|
1563 | rm -rf $(TEST_EXTENSIONS_DIR)/coverage ; \
|
---|
1564 | rm -f $(TEST_EXTENSIONS_DIR)/coverage.xml ; \
|
---|
1565 | rm -f $(TEST_EXTENSIONS_DIR)/jacoco-merged-reproducers.exec ; \
|
---|
1566 | rm -f $(TEST_EXTENSIONS_DIR)/tests-output_withEmma.xml ; \
|
---|
1567 | rm -f stamps/run-reproducers-test-code-coverage-jacoco.stamp ; \
|
---|
1568 | fi
|
---|
1569 |
|
---|
1570 | clean-test-code-coverage-jacoco: clean-unit-test-code-coverage-jacoco clean-reproducers-test-code-coverage-jacoco clean-test-code-coverage-tools-jacoco
|
---|
1571 | if [ -e $(TESTS_DIR)/coverage.xml ]; then \
|
---|
1572 | rm -rf $(TESTS_DIR)/coverage ; \
|
---|
1573 | rm -f $(TESTS_DIR)/jacoco-merged.exec; \
|
---|
1574 | fi
|
---|
1575 |
|
---|
1576 | clean-test-code-coverage-tools-jacoco:
|
---|
1577 | rm -rf $(JACOCO_OPERATOR_DIR)
|
---|
1578 | rm -rf $(COVERABLE_PLUGIN_DIR)
|
---|
1579 | rm -f stamps/compile-jacoco-operator.stamp;
|
---|
1580 | rm -f jacoco-operator-source-files.txt
|
---|
1581 | rm -f stamps/build-fake-plugin.stamp
|
---|
1582 |
|
---|
1583 |
|
---|
1584 | # plugin tests
|
---|
1585 |
|
---|
1586 | if ENABLE_PLUGIN
|
---|
1587 | stamps/plugin-tests.stamp: $(PLUGIN_TEST_SRCS) stamps/plugin.stamp
|
---|
1588 | mkdir -p plugin/tests/LiveConnect
|
---|
1589 | $(BOOT_DIR)/bin/javac $(IT_JAVACFLAGS) \
|
---|
1590 | -d plugin/tests/LiveConnect \
|
---|
1591 | -classpath liveconnect/lib/classes.jar \
|
---|
1592 | $(PLUGIN_TEST_SRCS) ;
|
---|
1593 | $(BOOT_DIR)/bin/jar cf plugin/tests/LiveConnect/PluginTest.jar \
|
---|
1594 | plugin/tests/LiveConnect/*.class ;
|
---|
1595 | cp -pPR $(SRC_DIR_LINK) $(abs_top_srcdir)/plugin/tests/LiveConnect/*.{js,html} \
|
---|
1596 | plugin/tests/LiveConnect ;
|
---|
1597 | echo "Done. Now launch \"firefox file://`pwd`/index.html\"" ;
|
---|
1598 | mkdir -p stamps
|
---|
1599 | touch stamps/plugin-tests.stamp
|
---|
1600 | endif
|
---|
1601 |
|
---|
1602 | # Bootstrap Directory Targets
|
---|
1603 | # ===========================
|
---|
1604 |
|
---|
1605 | stamps/native-ecj.stamp:
|
---|
1606 | mkdir -p stamps ; \
|
---|
1607 | if test "x$(GCJ)" != "xno"; then \
|
---|
1608 | $(GCJ) $(IT_CFLAGS) -Wl,-Bsymbolic -findirect-dispatch -o native-ecj \
|
---|
1609 | --main=org.eclipse.jdt.internal.compiler.batch.Main ${ECJ_JAR} ; \
|
---|
1610 | fi ; \
|
---|
1611 | touch stamps/native-ecj.stamp
|
---|
1612 |
|
---|
1613 | clean-native-ecj:
|
---|
1614 | rm -f native-ecj
|
---|
1615 | rm -rf stamps/native-ecj.stamp
|
---|
1616 |
|
---|
1617 | # bootstrap
|
---|
1618 | stamps/bootstrap-directory.stamp: stamps/native-ecj.stamp
|
---|
1619 | mkdir -p $(BOOT_DIR)/bin stamps/
|
---|
1620 | ln -sf $(JAVA) $(BOOT_DIR)/bin/java
|
---|
1621 | ln -sf $(JAR) $(BOOT_DIR)/bin/jar
|
---|
1622 | ln -sf $(abs_top_builddir)/javac $(BOOT_DIR)/bin/javac
|
---|
1623 | ln -sf $(JAVADOC) $(BOOT_DIR)/bin/javadoc
|
---|
1624 | if [ -e "$(KEYTOOL)" ] ; then \
|
---|
1625 | ln -sf $(KEYTOOL) $(BOOT_DIR)/bin/keytool ;\
|
---|
1626 | else \
|
---|
1627 | echo "#! /bin/sh" > $(BOOT_DIR)/bin/keytool ;\
|
---|
1628 | echo "echo \"keytool not exist on your system, signed part of reproducers test will fail\"" >> $(BOOT_DIR)/bin/keytool ;\
|
---|
1629 | chmod 777 $(BOOT_DIR)/bin/keytool ;\
|
---|
1630 | fi
|
---|
1631 | if [ -e "$(JARSIGNER)" ] ; then \
|
---|
1632 | ln -sf $(JARSIGNER) $(BOOT_DIR)/bin/jarsigner ;\
|
---|
1633 | else \
|
---|
1634 | echo "#! /bin/sh" > $(BOOT_DIR)/bin/jarsigner ;\
|
---|
1635 | echo "echo \"jarsigner not exist on your system, signed part of reproducers test will fail\"" >> $(BOOT_DIR)/bin/jarsigner ;\
|
---|
1636 | chmod 777 $(BOOT_DIR)/bin/jarsigner ;\
|
---|
1637 | fi
|
---|
1638 | mkdir -p $(BOOT_DIR)/jre/lib && \
|
---|
1639 | ln -s $(SYSTEM_JRE_DIR)/lib/rt.jar $(BOOT_DIR)/jre/lib && \
|
---|
1640 | if [ -e $(SYSTEM_JRE_DIR)/lib/jsse.jar ] ; then \
|
---|
1641 | ln -s $(SYSTEM_JRE_DIR)/lib/jsse.jar $(BOOT_DIR)/jre/lib ; \
|
---|
1642 | else \
|
---|
1643 | ln -s rt.jar $(BOOT_DIR)/jre/lib/jsse.jar ; \
|
---|
1644 | fi
|
---|
1645 | if [ -e $(SYSTEM_JRE_DIR)/lib/resources.jar ] ; then \
|
---|
1646 | ln -s $(SYSTEM_JRE_DIR)/lib/resources.jar $(BOOT_DIR)/jre/lib ; \
|
---|
1647 | else \
|
---|
1648 | ln -s rt.jar $(BOOT_DIR)/jre/lib/resources.jar ; \
|
---|
1649 | fi
|
---|
1650 | ln -sf $(SYSTEM_JRE_DIR)/lib/$(JRE_ARCH_DIR) \
|
---|
1651 | $(BOOT_DIR)/jre/lib/ && \
|
---|
1652 | if ! test -d $(BOOT_DIR)/jre/lib/$(INSTALL_ARCH_DIR); \
|
---|
1653 | then \
|
---|
1654 | ln -sf ./$(JRE_ARCH_DIR) \
|
---|
1655 | $(BOOT_DIR)/jre/lib/$(INSTALL_ARCH_DIR); \
|
---|
1656 | fi;
|
---|
1657 | mkdir -p $(BOOT_DIR)/include && \
|
---|
1658 | for i in $(SYSTEM_JDK_DIR)/include/*; do \
|
---|
1659 | test -r $$i | continue; \
|
---|
1660 | i=`basename $$i`; \
|
---|
1661 | rm -f $(BOOT_DIR)/include/$$i; \
|
---|
1662 | ln -s $(SYSTEM_JDK_DIR)/include/$$i $(BOOT_DIR)/include/$$i; \
|
---|
1663 | done
|
---|
1664 | mkdir -p stamps
|
---|
1665 | touch stamps/bootstrap-directory.stamp
|
---|
1666 |
|
---|
1667 | clean-bootstrap-directory:
|
---|
1668 | rm -rf $(BOOT_DIR)
|
---|
1669 | if [ -e ${abs_top_builddir}/bootstrap ] ; then \
|
---|
1670 | rmdir ${abs_top_builddir}/bootstrap ; \
|
---|
1671 | fi
|
---|
1672 | rm -f stamps/bootstrap-directory.stamp
|
---|
1673 |
|
---|
1674 | # Target Aliases
|
---|
1675 | # ===============
|
---|
1676 |
|
---|
1677 | add-netx: stamps/add-netx.stamp
|
---|
1678 |
|
---|
1679 | add-netx-debug: stamps/add-netx-debug.stamp
|
---|
1680 |
|
---|
1681 | netx: stamps/netx.stamp
|
---|
1682 |
|
---|
1683 | netx-dist: stamps/netx-dist.stamp
|
---|
1684 |
|
---|
1685 | plugin: stamps/plugin.stamp
|
---|
1686 |
|
---|
1687 | plugin-tests: stamps/plugin-tests.stamp
|
---|
1688 |
|
---|
1689 | check-pac-functions: stamps/check-pac-functions.stamp
|
---|
1690 |
|
---|
1691 | run-netx-unit-tests: stamps/run-netx-unit-tests.stamp
|
---|
1692 |
|
---|
1693 | links: stamps/global-links.stamp
|
---|
1694 |
|
---|
1695 | user-links: stamps/user-links.stamp
|
---|
1696 |
|
---|
1697 | run-netx-dist-tests: stamps/run-netx-dist-tests.stamp
|
---|
1698 |
|
---|
1699 | run-unit-test-code-coverage: stamps/run-unit-test-code-coverage.stamp
|
---|
1700 |
|
---|
1701 | run-reproducers-test-code-coverage: stamps/run-reproducers-test-code-coverage.stamp
|
---|
1702 |
|
---|
1703 | run-unit-test-code-coverage-jacoco: stamps/run-unit-test-code-coverage-jacoco.stamp
|
---|
1704 |
|
---|
1705 | run-reproducers-test-code-coverage-jacoco: stamps/run-reproducers-test-code-coverage-jacoco.stamp
|
---|