| 1 | # Source directories
 | 
|---|
| 2 | 
 | 
|---|
| 3 | export NETX_DIR = $(abs_top_builddir)/netx.build
 | 
|---|
| 4 | export NETX_SRCDIR = $(abs_top_srcdir)/netx
 | 
|---|
| 5 | export NETX_RESOURCE_DIR=$(NETX_SRCDIR)/net/sourceforge/jnlp/resources
 | 
|---|
| 6 | export NETX_EXTRA_DIR=$(abs_top_srcdir)/extra/net/sourceforge/javaws/about/resources
 | 
|---|
| 7 | export NETX_EXTRA_DIST_DIR=$(abs_top_builddir)/extra-lib/net/sourceforge/javaws/about/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_UNIT_TEST_DIR=$(TESTS_DIR)/netx/unit
 | 
|---|
| 16 | 
 | 
|---|
| 17 | export JUNIT_RUNNER_DIR=$(TESTS_DIR)/junit-runner
 | 
|---|
| 18 | export JUNIT_RUNNER_SRCDIR=$(TESTS_SRCDIR)/junit-runner
 | 
|---|
| 19 | 
 | 
|---|
| 20 | 
 | 
|---|
| 21 | export JNLP_TESTS_ENGINE_SRCDIR=$(TESTS_SRCDIR)/test-extensions
 | 
|---|
| 22 | export JNLP_TESTS_ENGINE_TESTS_SRCDIR=$(TESTS_SRCDIR)/test-extensions-tests
 | 
|---|
| 23 | export JNLP_TESTS_SRCDIR=$(TESTS_SRCDIR)/reproducers
 | 
|---|
| 24 | export JNLP_TESTS_ENGINE_DIR=$(TESTS_DIR)/jnlp_testsengine
 | 
|---|
| 25 | export JNLP_TESTS_ENGINE_TESTS_DIR=$(TESTS_DIR)/netx/jnlp_testsengine_tests
 | 
|---|
| 26 | export JNLP_TESTS_SERVER_DEPLOYDIR=$(TESTS_DIR)/jnlp_test_server
 | 
|---|
| 27 | export JNLP_TESTS_DIR=$(TESTS_DIR)/jnlp_tests
 | 
|---|
| 28 | export PRIVATE_KEYSTORE_NAME=teststore.ks
 | 
|---|
| 29 | export PRIVATE_KEYSTORE_PASS=123456789
 | 
|---|
| 30 | export EXPORTED_TEST_CERT_PREFIX=icedteatests
 | 
|---|
| 31 | export EXPORTED_TEST_CERT_SUFFIX=crt
 | 
|---|
| 32 | export TEST_CERT_ALIAS=icedteaweb
 | 
|---|
| 33 | export PUBLIC_KEYSTORE=${HOME}/.icedtea/security/trusted.certs
 | 
|---|
| 34 | export PUBLIC_KEYSTORE_PASS=changeit
 | 
|---|
| 35 | 
 | 
|---|
| 36 | export JUNIT_RUNNER_JAR=$(abs_top_builddir)/junit-runner.jar
 | 
|---|
| 37 | export UNIT_CLASS_NAMES = $(abs_top_builddir)/unit_class_names
 | 
|---|
| 38 | export REPRODUCERS_CLASS_NAMES = $(abs_top_builddir)/reproducers_class_names
 | 
|---|
| 39 | export REPRODUCERS_CLASS_WHITELIST = $(abs_top_srcdir)/netx-dist-tests-whitelist
 | 
|---|
| 40 | export EMMA_JAVA_ARGS=-Xmx2G
 | 
|---|
| 41 | export EMMA_MODIFIED_FILES=tests-output.xml ServerAccess-logs.xml stdout.log stderr.log all.log
 | 
|---|
| 42 | export EMMA_BACKUP_SUFFIX=_noEmma
 | 
|---|
| 43 | export EMMA_SUFFIX=_withEmma
 | 
|---|
| 44 | export META_MANIFEST = META-INF/MANIFEST.MF
 | 
|---|
| 45 | export SIGNED_REPRODUCERS=signed
 | 
|---|
| 46 | export SIMPLE_REPRODUCERS=simple
 | 
|---|
| 47 | export CUSTOM_REPRODUCERS=custom
 | 
|---|
| 48 | export ALL_NONCUSTOM_REPRODUCERS=$(SIMPLE_REPRODUCERS) $(SIGNED_REPRODUCERS)
 | 
|---|
| 49 | export ALL_REPRODUCERS=$(ALL_NONCUSTOM_REPRODUCERS) $(CUSTOM_REPRODUCERS)
 | 
|---|
| 50 | 
 | 
|---|
| 51 | 
 | 
|---|
| 52 | # linking variables
 | 
|---|
| 53 | export PLUGIN_LINK_NAME=libjavaplugin.so
 | 
|---|
| 54 | export MOZILLA_LOCAL_PLUGINDIR=${HOME}/.mozilla/plugins
 | 
|---|
| 55 | export MOZILLA_GLOBAL64_PLUGINDIR=/usr/lib64/mozilla/plugins
 | 
|---|
| 56 | export MOZILLA_GLOBAL32_PLUGINDIR=/usr/lib/mozilla/plugins
 | 
|---|
| 57 | export OPERA_GLOBAL64_PLUGINDIR=/usr/lib64/opera/plugins
 | 
|---|
| 58 | export OPERA_GLOBAL32_PLUGINDIR=/usr/lib/opera/plugins
 | 
|---|
| 59 | export BUILT_PLUGIN_LIBRARY=IcedTeaPlugin.so
 | 
|---|
| 60 | export MOZILLA_LOCAL_BACKUP_FILE=${HOME}/$(PLUGIN_LINK_NAME).origU
 | 
|---|
| 61 | export MOZILLA_GLOBAL_BACKUP_FILE=${HOME}/$(PLUGIN_LINK_NAME).origMG
 | 
|---|
| 62 | export OPERA_GLOBAL_BACKUP_FILE=${HOME}/$(PLUGIN_LINK_NAME).origOG
 | 
|---|
| 63 | export MOZILLA_FAMILY_TEST= "$(FIREFOX)" != "" -o "$(CHROMIUM)" != "" -o "$(CHROME)" != "" -o "$(MIDORI)" != "" -o "$(EPIPHANY)" != "" 
 | 
|---|
| 64 | # end of linking variables
 | 
|---|
| 65 | 
 | 
|---|
| 66 | # Build directories
 | 
|---|
| 67 | 
 | 
|---|
| 68 | export BOOT_DIR = $(abs_top_builddir)/bootstrap/jdk1.6.0
 | 
|---|
| 69 | 
 | 
|---|
| 70 | if WITH_RHINO
 | 
|---|
| 71 |   RHINO_RUNTIME=:$(RHINO_JAR)
 | 
|---|
| 72 | else
 | 
|---|
| 73 |   RHINO_RUNTIME=
 | 
|---|
| 74 | endif
 | 
|---|
| 75 | 
 | 
|---|
| 76 | export RUNTIME = $(BOOT_DIR)/jre/lib/rt.jar:$(BOOT_DIR)/jre/lib/jsse.jar$(RHINO_RUNTIME):$(BOOT_DIR)/jre/lib/resources.jar
 | 
|---|
| 77 | 
 | 
|---|
| 78 | # Flags
 | 
|---|
| 79 | export IT_CFLAGS=$(CFLAGS) $(ARCHFLAG)
 | 
|---|
| 80 | export IT_JAVAC_SETTINGS=-g -encoding utf-8 $(JAVACFLAGS) $(MEMORY_LIMIT) $(PREFER_SOURCE)
 | 
|---|
| 81 | export IT_LANGUAGE_SOURCE_VERSION=6
 | 
|---|
| 82 | export IT_CLASS_TARGET_VERSION=6
 | 
|---|
| 83 | export IT_JAVACFLAGS=$(IT_JAVAC_SETTINGS) -source $(IT_LANGUAGE_SOURCE_VERSION) -target $(IT_CLASS_TARGET_VERSION)
 | 
|---|
| 84 | 
 | 
|---|
| 85 | #
 | 
|---|
| 86 | # We need the jars in bootclasspath for a couple of reasons
 | 
|---|
| 87 | #  - we use classes (in the sun.applet package) loaded by the bootclassloader
 | 
|---|
| 88 | #    using another classloader to load classes from the same package causes an
 | 
|---|
| 89 | #    IllegalAccessException
 | 
|---|
| 90 | #  - we want full privileges
 | 
|---|
| 91 | #
 | 
|---|
| 92 | export LAUNCHER_BOOTCLASSPATH="-Xbootclasspath/a:$(datadir)/$(PACKAGE_NAME)/netx.jar$(RHINO_RUNTIME)"
 | 
|---|
| 93 | export PLUGIN_BOOTCLASSPATH='"-Xbootclasspath/a:$(datadir)/$(PACKAGE_NAME)/netx.jar:$(datadir)/$(PACKAGE_NAME)/plugin.jar$(RHINO_RUNTIME)"'
 | 
|---|
| 94 | 
 | 
|---|
| 95 | # Fake update version to work with the Deployment Toolkit script used by Oracle
 | 
|---|
| 96 | # http://download.oracle.com/javase/tutorial/deployment/deploymentInDepth/depltoolkit_index.html
 | 
|---|
| 97 | export JDK_UPDATE_VERSION=50
 | 
|---|
| 98 | 
 | 
|---|
| 99 | # Sources list
 | 
|---|
| 100 | 
 | 
|---|
| 101 | export PLUGIN_TEST_SRCS = $(abs_top_srcdir)/plugin/tests/LiveConnect/*.java
 | 
|---|
| 102 | 
 | 
|---|
| 103 | export NETX_PKGS = javax.jnlp net.sourceforge.nanoxml net.sourceforge.jnlp \
 | 
|---|
| 104 |         net.sourceforge.jnlp.cache net.sourceforge.jnlp.config \
 | 
|---|
| 105 |         net.sourceforge.jnlp.controlpanel net.sourceforge.jnlp.event \
 | 
|---|
| 106 |         net.sourceforge.jnlp.runtime net.sourceforge.jnlp.security \
 | 
|---|
| 107 |         net.sourceforge.jnlp.security.viewer net.sourceforge.jnlp.services \
 | 
|---|
| 108 |         net.sourceforge.jnlp.tools net.sourceforge.jnlp.util
 | 
|---|
| 109 | 
 | 
|---|
| 110 | # Conditional defintions
 | 
|---|
| 111 | if ENABLE_PLUGIN
 | 
|---|
| 112 | export ICEDTEAPLUGIN_CLEAN = clean-IcedTeaPlugin
 | 
|---|
| 113 | export LIVECONNECT_DIR = netscape sun/applet
 | 
|---|
| 114 | export PLUGIN_DIR=$(abs_top_builddir)/plugin/icedteanp
 | 
|---|
| 115 | export PLUGIN_SRCDIR=$(abs_top_srcdir)/plugin/icedteanp
 | 
|---|
| 116 | export LIVECONNECT_SRCS = $(PLUGIN_SRCDIR)/java
 | 
|---|
| 117 | export ICEDTEAPLUGIN_TARGET = $(PLUGIN_DIR)/$(BUILT_PLUGIN_LIBRARY) stamps/liveconnect-dist.stamp
 | 
|---|
| 118 | export PLUGIN_PKGS = sun.applet netscape.security netscape.javascript
 | 
|---|
| 119 | endif
 | 
|---|
| 120 | 
 | 
|---|
| 121 | if CP_SUPPORTS_REFLINK
 | 
|---|
| 122 |   REFLINK = --reflink=auto
 | 
|---|
| 123 | endif
 | 
|---|
| 124 | 
 | 
|---|
| 125 | if SRC_DIR_HARDLINKABLE
 | 
|---|
| 126 |   SRC_DIR_LINK = -l
 | 
|---|
| 127 | else
 | 
|---|
| 128 |   SRC_DIR_LINK = $(REFLINK)
 | 
|---|
| 129 | endif
 | 
|---|
| 130 | 
 | 
|---|
| 131 | if ENABLE_DOCS
 | 
|---|
| 132 | JAVADOC_OPTS=-use -keywords -encoding UTF-8 -splitIndex \
 | 
|---|
| 133 |  -bottom '<font size="-1"> <a href="http://icedtea.classpath.org/bugzilla">Submit a bug or feature</a></font>'
 | 
|---|
| 134 | if JAVADOC_SUPPORTS_J_OPTIONS
 | 
|---|
| 135 | JAVADOC_MEM_OPTS=-J-Xmx1024m -J-Xms128m -J-XX:PermSize=32m -J-XX:MaxPermSize=160m
 | 
|---|
| 136 | endif
 | 
|---|
| 137 | endif
 | 
|---|
| 138 | 
 | 
|---|
| 139 | if WITH_RHINO
 | 
|---|
| 140 |   RHINO_TESTS=stamps/check-pac-functions.stamp
 | 
|---|
| 141 | else
 | 
|---|
| 142 |   RHINO_TESTS=
 | 
|---|
| 143 | endif
 | 
|---|
| 144 | 
 | 
|---|
| 145 | if WITH_JUNIT
 | 
|---|
| 146 |   JUNIT_TESTS=stamps/run-netx-unit-tests.stamp
 | 
|---|
| 147 | else
 | 
|---|
| 148 |   JUNIT_TESTS=
 | 
|---|
| 149 | endif
 | 
|---|
| 150 | 
 | 
|---|
| 151 | 
 | 
|---|
| 152 | export PLUGIN_VERSION = IcedTea-Web $(FULL_VERSION)
 | 
|---|
| 153 | 
 | 
|---|
| 154 | export EXTRA_DIST = $(top_srcdir)/netx $(top_srcdir)/plugin javaws.png javaws.desktop.in extra launcher \
 | 
|---|
| 155 |  itweb-settings.desktop.in $(top_srcdir)/tests
 | 
|---|
| 156 | 
 | 
|---|
| 157 | # reproducers `D`shortcuts
 | 
|---|
| 158 | export DTEST_SERVER=-Dtest.server.dir=$(JNLP_TESTS_SERVER_DEPLOYDIR)
 | 
|---|
| 159 | export DJAVAWS_BUILD=-Djavaws.build.bin=$(DESTDIR)$(bindir)/$(javaws)
 | 
|---|
| 160 | export DBROWSERS=-Dused.browsers=$(FIREFOX):$(CHROMIUM):$(CHROME):$(OPERA):$(MIDORI):$(EPIPHANY)
 | 
|---|
| 161 | export REPRODUCERS_DPARAMETERS= $(DTEST_SERVER) $(DJAVAWS_BUILD) $(DBROWSERS) $(BROWSER_TESTS_MODIFICATION)
 | 
|---|
| 162 | # end of `D`shortcuts
 | 
|---|
| 163 | 
 | 
|---|
| 164 | #exported autoconf copies
 | 
|---|
| 165 | export EXPORTED_JAVAC=$(BOOT_DIR)/bin/javac
 | 
|---|
| 166 | #end of exported autoconf copies
 | 
|---|
| 167 | 
 | 
|---|
| 168 | # binary names
 | 
|---|
| 169 | javaws:= $(shell echo javaws | sed '@program_transform_name@')
 | 
|---|
| 170 | itweb_settings:= $(shell echo itweb-settings | sed '@program_transform_name@')
 | 
|---|
| 171 | 
 | 
|---|
| 172 | # the launcher needs to know $(bindir) and $(datadir) which can be different at
 | 
|---|
| 173 | # make-time from configure-time
 | 
|---|
| 174 | edit_launcher_script = sed \
 | 
|---|
| 175 |   -e 's|[@]LAUNCHER_BOOTCLASSPATH[@]|$(LAUNCHER_BOOTCLASSPATH)|g' \
 | 
|---|
| 176 |   -e 's|[@]JAVAWS_BIN_LOCATION[@]|$(bindir)/$(javaws)|g' \
 | 
|---|
| 177 |   -e 's|[@]ITWEB_SETTINGS_BIN_LOCATION[@]|$(bindir)/$(itweb_settings)|g' \
 | 
|---|
| 178 |   -e 's|[@]JAVA[@]|$(JAVA)|g' \
 | 
|---|
| 179 |   -e 's|[@]JRE[@]|$(SYSTEM_JRE_DIR)|g'
 | 
|---|
| 180 | 
 | 
|---|
| 181 | # Top-Level Targets
 | 
|---|
| 182 | # =================
 | 
|---|
| 183 | 
 | 
|---|
| 184 | all-local: stamps/netx-dist.stamp extra-lib/about.jar stamps/plugin.stamp launcher.build/$(javaws) \
 | 
|---|
| 185 |  javaws.desktop stamps/docs.stamp launcher.build/$(itweb_settings) itweb-settings.desktop
 | 
|---|
| 186 | 
 | 
|---|
| 187 | check-local: $(RHINO_TESTS) $(JUNIT_TESTS)
 | 
|---|
| 188 | 
 | 
|---|
| 189 | clean-local: clean-netx clean-plugin clean-liveconnect clean-extra  \
 | 
|---|
| 190 |  clean-native-ecj clean-launchers clean-desktop-files clean-docs clean-tests clean-bootstrap-directory
 | 
|---|
| 191 |         if [ -e stamps ] ; then \
 | 
|---|
| 192 |           rmdir stamps ; \
 | 
|---|
| 193 |         fi
 | 
|---|
| 194 | 
 | 
|---|
| 195 | .PHONY: clean-IcedTeaPlugin clean-add-netx clean-add-netx-debug clean-add-plugin clean-add-plugin-debug \
 | 
|---|
| 196 |  clean-bootstrap-directory clean-native-ecj clean-desktop-files clean-netx-docs clean-docs clean-plugin-docs \
 | 
|---|
| 197 |  clean-tests check-local clean-launchers stamps/check-pac-functions.stamp stamps/run-netx-unit-tests.stamp clean-netx-tests \
 | 
|---|
| 198 |  clean-junit-runner clean-netx-unit-tests
 | 
|---|
| 199 | 
 | 
|---|
| 200 | install-exec-local:
 | 
|---|
| 201 |         ${mkinstalldirs} $(DESTDIR)$(bindir) $(DESTDIR)$(datadir)/$(PACKAGE_NAME)/ $(DESTDIR)$(libdir)
 | 
|---|
| 202 | if ENABLE_PLUGIN
 | 
|---|
| 203 |         ${INSTALL_PROGRAM} $(PLUGIN_DIR)/$(BUILT_PLUGIN_LIBRARY) $(DESTDIR)$(libdir)
 | 
|---|
| 204 |         ${INSTALL_DATA} $(abs_top_builddir)/liveconnect/lib/classes.jar $(DESTDIR)$(datadir)/$(PACKAGE_NAME)/plugin.jar
 | 
|---|
| 205 | endif
 | 
|---|
| 206 |         ${INSTALL_DATA} $(NETX_DIR)/lib/classes.jar $(DESTDIR)$(datadir)/$(PACKAGE_NAME)/netx.jar
 | 
|---|
| 207 |         ${INSTALL_PROGRAM} launcher.build/$(javaws) $(DESTDIR)$(bindir)
 | 
|---|
| 208 |         ${INSTALL_DATA} extra-lib/about.jar $(DESTDIR)$(datadir)/$(PACKAGE_NAME)/about.jar
 | 
|---|
| 209 |         ${INSTALL_PROGRAM} launcher.build/$(itweb_settings) $(DESTDIR)$(bindir)
 | 
|---|
| 210 | 
 | 
|---|
| 211 | install-data-local:
 | 
|---|
| 212 |         ${mkinstalldirs} -d $(DESTDIR)$(mandir)/man1
 | 
|---|
| 213 |         ${INSTALL_DATA} $(NETX_SRCDIR)/javaws.1 $(DESTDIR)$(mandir)/man1
 | 
|---|
| 214 |         ${INSTALL_DATA} $(NETX_RESOURCE_DIR)/about.jnlp $(DESTDIR)$(datarootdir)/$(PACKAGE_NAME)
 | 
|---|
| 215 | if ENABLE_DOCS
 | 
|---|
| 216 |         ${mkinstalldirs} $(DESTDIR)$(htmldir)
 | 
|---|
| 217 |         (cd ${abs_top_builddir}/docs/netx; \
 | 
|---|
| 218 |          for files in $$(find . -type f); \
 | 
|---|
| 219 |          do \
 | 
|---|
| 220 |            ${INSTALL_DATA} -D $${files} $(DESTDIR)$(htmldir)/netx/$${files}; \
 | 
|---|
| 221 |          done)
 | 
|---|
| 222 | if ENABLE_PLUGIN
 | 
|---|
| 223 |         (cd ${abs_top_builddir}/docs/plugin; \
 | 
|---|
| 224 |          for files in $$(find . -type f); \
 | 
|---|
| 225 |          do \
 | 
|---|
| 226 |            ${INSTALL_DATA} -D $${files} $(DESTDIR)$(htmldir)/plugin/$${files}; \
 | 
|---|
| 227 |          done)
 | 
|---|
| 228 | endif
 | 
|---|
| 229 | endif
 | 
|---|
| 230 | 
 | 
|---|
| 231 | uninstall-local:
 | 
|---|
| 232 |         rm -f $(DESTDIR)$(libdir)/$(BUILT_PLUGIN_LIBRARY)
 | 
|---|
| 233 |         rm -f $(DESTDIR)$(datadir)/$(PACKAGE_NAME)/plugin.jar
 | 
|---|
| 234 |         rm -f $(DESTDIR)$(datadir)/$(PACKAGE_NAME)/netx.jar
 | 
|---|
| 235 |         rm -f $(DESTDIR)$(datadir)/$(PACKAGE_NAME)/about.jnlp
 | 
|---|
| 236 |         rm -f $(DESTDIR)$(datadir)/$(PACKAGE_NAME)/about.jar
 | 
|---|
| 237 |         rm -f $(DESTDIR)$(mandir)/man1/javaws.1
 | 
|---|
| 238 |         rm -f $(DESTDIR)$(bindir)/$(javaws)
 | 
|---|
| 239 |         rm -f $(DESTDIR)$(bindir)/$(itweb_settings)
 | 
|---|
| 240 |         rm -rf $(DESTDIR)$(htmldir)
 | 
|---|
| 241 | 
 | 
|---|
| 242 | # Plugin
 | 
|---|
| 243 | 
 | 
|---|
| 244 | if ENABLE_PLUGIN
 | 
|---|
| 245 | # IcedTeaPlugin.so.
 | 
|---|
| 246 | # Separate compile and link invocations to ensure intermediate object
 | 
|---|
| 247 | # is listed before -l options.  See:
 | 
|---|
| 248 | # http://developer.mozilla.org/en/docs/XPCOM_Glue
 | 
|---|
| 249 | 
 | 
|---|
| 250 | PLUGIN_SRC=IcedTeaNPPlugin.cc IcedTeaScriptablePluginObject.cc \
 | 
|---|
| 251 |         IcedTeaJavaRequestProcessor.cc IcedTeaPluginRequestProcessor.cc \
 | 
|---|
| 252 |                 IcedTeaPluginUtils.cc
 | 
|---|
| 253 | 
 | 
|---|
| 254 | PLUGIN_OBJECTS=IcedTeaNPPlugin.o IcedTeaScriptablePluginObject.o \
 | 
|---|
| 255 |         IcedTeaJavaRequestProcessor.o IcedTeaPluginRequestProcessor.o \
 | 
|---|
| 256 |                 IcedTeaPluginUtils.o
 | 
|---|
| 257 | 
 | 
|---|
| 258 | $(PLUGIN_DIR)/%.o: $(PLUGIN_SRCDIR)/%.cc
 | 
|---|
| 259 |         mkdir -p $(PLUGIN_DIR) && \
 | 
|---|
| 260 |         cd $(PLUGIN_DIR) && \
 | 
|---|
| 261 |         $(CXX) $(CXXFLAGS) \
 | 
|---|
| 262 |            $(DEFS) $(VERSION_DEFS) \
 | 
|---|
| 263 |           -DJDK_UPDATE_VERSION="\"$(JDK_UPDATE_VERSION)\"" \
 | 
|---|
| 264 |           -DPLUGIN_NAME="\"IcedTea-Web Plugin\"" \
 | 
|---|
| 265 |           -DPLUGIN_VERSION="\"$(PLUGIN_VERSION)\"" \
 | 
|---|
| 266 |           -DPACKAGE_URL="\"$(PACKAGE_URL)\"" \
 | 
|---|
| 267 |           -DMOZILLA_VERSION_COLLAPSED="$(MOZILLA_VERSION_COLLAPSED)" \
 | 
|---|
| 268 |           -DICEDTEA_WEB_JRE="\"$(SYSTEM_JRE_DIR)\"" \
 | 
|---|
| 269 |           -DPLUGIN_BOOTCLASSPATH=$(PLUGIN_BOOTCLASSPATH) \
 | 
|---|
| 270 |           $(GLIB_CFLAGS) \
 | 
|---|
| 271 |           $(GTK_CFLAGS) \
 | 
|---|
| 272 |           $(MOZILLA_CFLAGS) \
 | 
|---|
| 273 |           -fPIC -o $@ -c $<
 | 
|---|
| 274 | 
 | 
|---|
| 275 | $(PLUGIN_DIR)/$(BUILT_PLUGIN_LIBRARY): $(addprefix $(PLUGIN_DIR)/,$(PLUGIN_OBJECTS))
 | 
|---|
| 276 |         cd $(PLUGIN_DIR) && \
 | 
|---|
| 277 |         $(CXX) $(CXXFLAGS) \
 | 
|---|
| 278 |           $(PLUGIN_OBJECTS) \
 | 
|---|
| 279 |           $(GLIB_LIBS) \
 | 
|---|
| 280 |           $(GTK_LIBS) \
 | 
|---|
| 281 |           $(MOZILLA_LIBS)\
 | 
|---|
| 282 |           -shared -o $@
 | 
|---|
| 283 | 
 | 
|---|
| 284 | clean-IcedTeaPlugin:
 | 
|---|
| 285 |         rm -f $(PLUGIN_DIR)/*.o
 | 
|---|
| 286 |         rm -f $(PLUGIN_DIR)/$(BUILT_PLUGIN_LIBRARY)
 | 
|---|
| 287 |         if [ $(abs_top_srcdir) != $(abs_top_builddir) ]; then \
 | 
|---|
| 288 |           if [ -e $(abs_top_builddir)/plugin/icedteanp ] ; then \
 | 
|---|
| 289 |             rmdir $(abs_top_builddir)/plugin/icedteanp ; \
 | 
|---|
| 290 |             rmdir $(abs_top_builddir)/plugin ; \
 | 
|---|
| 291 |           fi ; \
 | 
|---|
| 292 |         fi
 | 
|---|
| 293 | endif
 | 
|---|
| 294 | 
 | 
|---|
| 295 | stamps/plugin.stamp: $(ICEDTEAPLUGIN_TARGET)
 | 
|---|
| 296 |         mkdir -p stamps
 | 
|---|
| 297 |         touch stamps/plugin.stamp
 | 
|---|
| 298 | 
 | 
|---|
| 299 | clean-plugin: $(ICEDTEAPLUGIN_CLEAN)
 | 
|---|
| 300 |         rm -f stamps/plugin.stamp
 | 
|---|
| 301 | 
 | 
|---|
| 302 | liveconnect-source-files.txt:
 | 
|---|
| 303 |         if test "x${LIVECONNECT_DIR}" != x; then \
 | 
|---|
| 304 |           find $(LIVECONNECT_SRCS) -name '*.java' | sort > $@ ; \
 | 
|---|
| 305 |           sed -i '/_OS2/ d' $@
 | 
|---|
| 306 |         fi
 | 
|---|
| 307 |         touch $@
 | 
|---|
| 308 | 
 | 
|---|
| 309 | stamps/liveconnect.stamp: liveconnect-source-files.txt stamps/netx.stamp
 | 
|---|
| 310 |         if test "x${LIVECONNECT_DIR}" != x; then \
 | 
|---|
| 311 |           mkdir -p $(abs_top_builddir)/liveconnect && \
 | 
|---|
| 312 |           $(BOOT_DIR)/bin/javac $(IT_JAVACFLAGS) \
 | 
|---|
| 313 |               -d $(abs_top_builddir)/liveconnect \
 | 
|---|
| 314 |               -bootclasspath $(NETX_DIR):$(RUNTIME) \
 | 
|---|
| 315 |               -sourcepath $(LIVECONNECT_SRCS) \
 | 
|---|
| 316 |               @liveconnect-source-files.txt ; \
 | 
|---|
| 317 |         fi
 | 
|---|
| 318 |         mkdir -p stamps
 | 
|---|
| 319 |         touch $@
 | 
|---|
| 320 | 
 | 
|---|
| 321 | stamps/liveconnect-dist.stamp: stamps/liveconnect.stamp
 | 
|---|
| 322 |         if test "x${LIVECONNECT_DIR}" != x; then \
 | 
|---|
| 323 |           (cd $(abs_top_builddir)/liveconnect ; \
 | 
|---|
| 324 |            mkdir -p lib ; \
 | 
|---|
| 325 |            $(BOOT_DIR)/bin/jar cf lib/classes.jar $(LIVECONNECT_DIR) ; \
 | 
|---|
| 326 |            cp -pPR $(SRC_DIR_LINK) $(LIVECONNECT_SRCS) src; \
 | 
|---|
| 327 |            find src -type f -exec chmod 640 '{}' ';' -o -type d -exec chmod 750 '{}' ';'; \
 | 
|---|
| 328 |            cd src ; \
 | 
|---|
| 329 |            $(ZIP) -qr $(abs_top_builddir)/liveconnect/lib/src.zip $(LIVECONNECT_DIR) ) ; \
 | 
|---|
| 330 |         fi
 | 
|---|
| 331 |         mkdir -p stamps
 | 
|---|
| 332 |         touch $@
 | 
|---|
| 333 | 
 | 
|---|
| 334 | clean-liveconnect:
 | 
|---|
| 335 |         rm -rf $(abs_top_builddir)/liveconnect
 | 
|---|
| 336 |         rm -f stamps/liveconnect-dist.stamp
 | 
|---|
| 337 |         rm -f liveconnect-source-files.txt
 | 
|---|
| 338 |         rm -f stamps/liveconnect.stamp
 | 
|---|
| 339 | 
 | 
|---|
| 340 | # NetX
 | 
|---|
| 341 | # requires availability of OpenJDK source code including
 | 
|---|
| 342 | # a patch applied to sun.plugin.AppletViewerPanel and generated sources
 | 
|---|
| 343 | 
 | 
|---|
| 344 | netx-source-files.txt:
 | 
|---|
| 345 |         find $(NETX_SRCDIR) -name '*.java' | sort > $@
 | 
|---|
| 346 | if !WITH_RHINO
 | 
|---|
| 347 |         sed -i '/RhinoBasedPacEvaluator/ d' $@
 | 
|---|
| 348 | endif
 | 
|---|
| 349 | 
 | 
|---|
| 350 | stamps/netx.stamp: netx-source-files.txt stamps/bootstrap-directory.stamp
 | 
|---|
| 351 |         mkdir -p $(NETX_DIR)
 | 
|---|
| 352 |         $(BOOT_DIR)/bin/javac $(IT_JAVACFLAGS) \
 | 
|---|
| 353 |             -d $(NETX_DIR) \
 | 
|---|
| 354 |             -sourcepath $(NETX_SRCDIR) \
 | 
|---|
| 355 |             -bootclasspath $(RUNTIME) \
 | 
|---|
| 356 |             @netx-source-files.txt
 | 
|---|
| 357 |         (cd $(NETX_RESOURCE_DIR); \
 | 
|---|
| 358 |          for files in $$(find . -type f); \
 | 
|---|
| 359 |          do \
 | 
|---|
| 360 |            ${INSTALL_DATA} -D $${files} \
 | 
|---|
| 361 |            $(NETX_DIR)/net/sourceforge/jnlp/resources/$${files}; \
 | 
|---|
| 362 |          done)
 | 
|---|
| 363 |         cp -a $(NETX_SRCDIR)/net/sourceforge/jnlp/runtime/pac-funcs.js \
 | 
|---|
| 364 |           $(NETX_DIR)/net/sourceforge/jnlp/runtime
 | 
|---|
| 365 |         cp -a build.properties $(NETX_DIR)/net/sourceforge/jnlp/
 | 
|---|
| 366 |         mkdir -p stamps
 | 
|---|
| 367 |         touch $@
 | 
|---|
| 368 | 
 | 
|---|
| 369 | stamps/netx-dist.stamp: stamps/netx.stamp $(abs_top_builddir)/netx.manifest
 | 
|---|
| 370 |         (cd $(NETX_DIR) ; \
 | 
|---|
| 371 |          mkdir -p lib ; \
 | 
|---|
| 372 |          $(BOOT_DIR)/bin/jar cfm lib/classes.jar \
 | 
|---|
| 373 |           $(abs_top_builddir)/netx.manifest javax/jnlp net ; \
 | 
|---|
| 374 |          cp -pPR $(SRC_DIR_LINK) $(NETX_SRCDIR) src; \
 | 
|---|
| 375 |          find src -type f -exec chmod 640 '{}' ';' -o -type d -exec chmod 750 '{}' ';'; \
 | 
|---|
| 376 |          cd src ; \
 | 
|---|
| 377 |          $(ZIP) -qr $(NETX_DIR)/lib/src.zip javax net )
 | 
|---|
| 378 |         mkdir -p stamps
 | 
|---|
| 379 |         touch $@
 | 
|---|
| 380 | 
 | 
|---|
| 381 | clean-netx:
 | 
|---|
| 382 |         rm -rf $(NETX_DIR)
 | 
|---|
| 383 |         rm -f stamps/netx-dist.stamp
 | 
|---|
| 384 |         rm -f netx-source-files.txt
 | 
|---|
| 385 |         rm -f stamps/netx.stamp
 | 
|---|
| 386 | 
 | 
|---|
| 387 | clean-desktop-files:
 | 
|---|
| 388 |         rm -f javaws.desktop
 | 
|---|
| 389 |         rm -f itweb-settings.desktop
 | 
|---|
| 390 | 
 | 
|---|
| 391 | # extras -- used to create about.jar for javaws.
 | 
|---|
| 392 | extra-source-files.txt:
 | 
|---|
| 393 |         find $(abs_top_srcdir)/extra -name '*.java' | sort > $@
 | 
|---|
| 394 | 
 | 
|---|
| 395 | stamps/extra-class-files.stamp: extra-source-files.txt stamps/netx.stamp
 | 
|---|
| 396 |         mkdir -p extra-lib
 | 
|---|
| 397 |         $(BOOT_DIR)/bin/javac $(IT_JAVACFLAGS) -d extra-lib \
 | 
|---|
| 398 |           -sourcepath $(abs_top_srcdir)/extra -cp netx.build \
 | 
|---|
| 399 |           -bootclasspath $(RUNTIME) @extra-source-files.txt
 | 
|---|
| 400 |         (cd $(NETX_EXTRA_DIR); \
 | 
|---|
| 401 |          for files in $$(find . -type f); \
 | 
|---|
| 402 |          do \
 | 
|---|
| 403 |            ${INSTALL_DATA} -D $${files} \
 | 
|---|
| 404 |            $(NETX_EXTRA_DIST_DIR)/$${files}; \
 | 
|---|
| 405 |          done)
 | 
|---|
| 406 |         mkdir -p stamps
 | 
|---|
| 407 |         touch $@
 | 
|---|
| 408 | 
 | 
|---|
| 409 | clean-extra:
 | 
|---|
| 410 |         rm -rf extra-lib
 | 
|---|
| 411 |         rm -f stamps/extra-class-files.stamp
 | 
|---|
| 412 |         rm -f extra-source-files.txt
 | 
|---|
| 413 | 
 | 
|---|
| 414 | extra-lib/about.jar: stamps/extra-class-files.stamp
 | 
|---|
| 415 |         $(BOOT_DIR)/bin/jar cf $@ -C extra-lib net ;
 | 
|---|
| 416 | 
 | 
|---|
| 417 | launcher.build/$(javaws): launcher/javaws.in
 | 
|---|
| 418 |         mkdir -p launcher.build
 | 
|---|
| 419 |         $(edit_launcher_script) < $< > $@
 | 
|---|
| 420 | 
 | 
|---|
| 421 | launcher.build/$(itweb_settings): launcher/itweb-settings.in
 | 
|---|
| 422 |         mkdir -p launcher.build
 | 
|---|
| 423 |         $(edit_launcher_script) < $< > $@
 | 
|---|
| 424 | 
 | 
|---|
| 425 | clean-launchers:
 | 
|---|
| 426 |         rm -f launcher.build/$(javaws)
 | 
|---|
| 427 |         rm -f launcher.build/$(itweb_settings)
 | 
|---|
| 428 |         if [ -e launcher.build ] ; then \
 | 
|---|
| 429 |           rmdir launcher.build ; \
 | 
|---|
| 430 |         fi
 | 
|---|
| 431 | 
 | 
|---|
| 432 | javaws.desktop: javaws.desktop.in
 | 
|---|
| 433 |         sed "s#PATH_TO_JAVAWS#$(bindir)/$(javaws)#" < $(srcdir)/javaws.desktop.in > javaws.desktop
 | 
|---|
| 434 | 
 | 
|---|
| 435 | itweb-settings.desktop: $(srcdir)/itweb-settings.desktop.in
 | 
|---|
| 436 |         sed "s#PATH_TO_ITWEB_SETTINGS#$(bindir)/$(itweb_settings)#" \
 | 
|---|
| 437 |           < $(srcdir)/itweb-settings.desktop.in > itweb-settings.desktop
 | 
|---|
| 438 | 
 | 
|---|
| 439 | # documentation
 | 
|---|
| 440 | 
 | 
|---|
| 441 | stamps/docs.stamp: stamps/netx-docs.stamp stamps/plugin-docs.stamp
 | 
|---|
| 442 |         touch stamps/docs.stamp
 | 
|---|
| 443 | 
 | 
|---|
| 444 | clean-docs: clean-netx-docs clean-plugin-docs
 | 
|---|
| 445 |         if [ -e ${abs_top_builddir}/docs ] ; then \
 | 
|---|
| 446 |           rmdir ${abs_top_builddir}/docs ; \
 | 
|---|
| 447 |         fi
 | 
|---|
| 448 |         rm -f stamps/docs.stamp
 | 
|---|
| 449 | 
 | 
|---|
| 450 | stamps/netx-docs.stamp: stamps/bootstrap-directory.stamp
 | 
|---|
| 451 | if ENABLE_DOCS
 | 
|---|
| 452 |         $(BOOT_DIR)/bin/javadoc $(JAVADOC_MEM_OPTS) $(JAVADOC_OPTS) \
 | 
|---|
| 453 |          -d ${abs_top_builddir}/docs/netx -sourcepath $(NETX_SRCDIR) \
 | 
|---|
| 454 |          -doctitle 'IcedTea-Web: NetX API Specification' \
 | 
|---|
| 455 |          -windowtitle 'IcedTea-Web: NetX ' \
 | 
|---|
| 456 |          -header '<strong>IcedTea-Web<br/>NetX</strong>' \
 | 
|---|
| 457 |          $(NETX_PKGS)
 | 
|---|
| 458 | endif
 | 
|---|
| 459 |         mkdir -p stamps
 | 
|---|
| 460 |         touch stamps/netx-docs.stamp
 | 
|---|
| 461 | 
 | 
|---|
| 462 | clean-netx-docs:
 | 
|---|
| 463 |         rm -rf ${abs_top_builddir}/docs/netx
 | 
|---|
| 464 |         rm -f stamps/netx-docs.stamp
 | 
|---|
| 465 | 
 | 
|---|
| 466 | stamps/plugin-docs.stamp: stamps/bootstrap-directory.stamp
 | 
|---|
| 467 | if ENABLE_DOCS
 | 
|---|
| 468 | if ENABLE_PLUGIN
 | 
|---|
| 469 |         $(BOOT_DIR)/bin/javadoc $(JAVADOC_MEM_OPTS) $(JAVADOC_OPTS) \
 | 
|---|
| 470 |          -d ${abs_top_builddir}/docs/plugin -sourcepath $(NETX_SRCDIR):$(LIVECONNECT_SRCS) \
 | 
|---|
| 471 |          -doctitle 'IcedTea-Web: Plugin API Specification' \
 | 
|---|
| 472 |          -windowtitle 'IcedTea-Web: Plugin ' \
 | 
|---|
| 473 |          -header '<strong>IcedTea-Web<br/>Plugin</strong>' \
 | 
|---|
| 474 |          $(PLUGIN_PKGS)
 | 
|---|
| 475 | endif
 | 
|---|
| 476 | endif
 | 
|---|
| 477 |         mkdir -p stamps
 | 
|---|
| 478 |         touch stamps/plugin-docs.stamp
 | 
|---|
| 479 | 
 | 
|---|
| 480 | clean-plugin-docs:
 | 
|---|
| 481 |         rm -rf ${abs_top_builddir}/docs/plugin
 | 
|---|
| 482 |         rm -f stamps/plugin-docs.stamp
 | 
|---|
| 483 | 
 | 
|---|
| 484 | 
 | 
|---|
| 485 | # check
 | 
|---|
| 486 | # ==========================
 | 
|---|
| 487 | 
 | 
|---|
| 488 | clean-tests: clean-netx-tests
 | 
|---|
| 489 |         if [ -e $(TESTS_DIR) ]; then \
 | 
|---|
| 490 |                 rmdir $(TESTS_DIR) ; \
 | 
|---|
| 491 |         fi
 | 
|---|
| 492 | 
 | 
|---|
| 493 | stamps/check-pac-functions.stamp: stamps/bootstrap-directory.stamp
 | 
|---|
| 494 |         ./jrunscript $(abs_top_srcdir)/tests/netx/pac/pac-funcs-test.js \
 | 
|---|
| 495 |           $$(readlink -f $(abs_top_srcdir)/netx/net/sourceforge/jnlp/runtime/pac-funcs.js) ; \
 | 
|---|
| 496 |         mkdir -p stamps && \
 | 
|---|
| 497 |         touch $@
 | 
|---|
| 498 | 
 | 
|---|
| 499 | junit-runner-source-files.txt:
 | 
|---|
| 500 |         find $(JUNIT_RUNNER_SRCDIR) -name '*.java' | sort > $@
 | 
|---|
| 501 | 
 | 
|---|
| 502 | $(JUNIT_RUNNER_JAR): junit-runner-source-files.txt stamps/netx-dist-tests-compile.stamp
 | 
|---|
| 503 |         mkdir -p $(JUNIT_RUNNER_DIR) && \
 | 
|---|
| 504 |         $(BOOT_DIR)/bin/javac $(IT_JAVACFLAGS) \
 | 
|---|
| 505 |           -d $(JUNIT_RUNNER_DIR) \
 | 
|---|
| 506 |           -classpath $(JUNIT_JAR):$(JNLP_TESTS_ENGINE_DIR) \
 | 
|---|
| 507 |           @junit-runner-source-files.txt && \
 | 
|---|
| 508 |         $(BOOT_DIR)/bin/jar cf $@  -C $(JUNIT_RUNNER_DIR) .
 | 
|---|
| 509 | 
 | 
|---|
| 510 | stamps/junit-jnlp-dist-dirs: junit-jnlp-dist-simple.txt stamps/junit-jnlp-dist-signed.stamp junit-jnlp-dist-custom.txt
 | 
|---|
| 511 |         mkdir -p $(JNLP_TESTS_SERVER_DEPLOYDIR)
 | 
|---|
| 512 |         mkdir -p $(JNLP_TESTS_DIR)
 | 
|---|
| 513 |         touch $@
 | 
|---|
| 514 | 
 | 
|---|
| 515 | junit-jnlp-dist-custom.txt:
 | 
|---|
| 516 |         cd $(JNLP_TESTS_SRCDIR)/$(CUSTOM_REPRODUCERS)/ ; \
 | 
|---|
| 517 |         find .  -maxdepth 1 -mindepth 1 | sed "s/.\/*//" > $(abs_top_builddir)/$@
 | 
|---|
| 518 | 
 | 
|---|
| 519 | junit-jnlp-dist-simple.txt:
 | 
|---|
| 520 |         cd $(JNLP_TESTS_SRCDIR)/simple/ ; \
 | 
|---|
| 521 |         find .  -maxdepth 1 -mindepth 1 | sed "s/.\/*//" > $(abs_top_builddir)/$@
 | 
|---|
| 522 | 
 | 
|---|
| 523 | stamps/junit-jnlp-dist-signed.stamp: 
 | 
|---|
| 524 |         types=($(SIGNED_REPRODUCERS)) ; \
 | 
|---|
| 525 |         for which in "$${types[@]}" ; do \
 | 
|---|
| 526 |           pushd $(JNLP_TESTS_SRCDIR)/$$which/ ; \
 | 
|---|
| 527 |           find .  -maxdepth 1 -mindepth 1 | sed "s/.\/*//" > $(abs_top_builddir)/junit-jnlp-dist-$$which.txt ; \
 | 
|---|
| 528 |           popd ; \
 | 
|---|
| 529 |         done ; \
 | 
|---|
| 530 |         mkdir -p stamps && \
 | 
|---|
| 531 |         touch $@
 | 
|---|
| 532 | 
 | 
|---|
| 533 | stamps/netx-dist-tests-prepare-reproducers.stamp: stamps/junit-jnlp-dist-dirs
 | 
|---|
| 534 |         types=($(ALL_NONCUSTOM_REPRODUCERS)); \
 | 
|---|
| 535 |         for which in "$${types[@]}" ; do \
 | 
|---|
| 536 |           . $(abs_top_srcdir)/NEW_LINE_IFS ; \
 | 
|---|
| 537 |           simpleReproducers=(`cat $(abs_top_builddir)/junit-jnlp-dist-$$which.txt `); \
 | 
|---|
| 538 |           IFS="$$IFS_BACKUP" ; \
 | 
|---|
| 539 |           for dir in "$${simpleReproducers[@]}" ; do \
 | 
|---|
| 540 |             echo "processing: $$dir" ; \
 | 
|---|
| 541 |             mkdir -p "$(JNLP_TESTS_DIR)/$$dir" ; \
 | 
|---|
| 542 |             if [ -e "$(JNLP_TESTS_SRCDIR)/$$which/$$dir/srcs/" ]; then \
 | 
|---|
| 543 |               d=`pwd` ; \
 | 
|---|
| 544 |               cd "$(JNLP_TESTS_SRCDIR)/$$which/$$dir/srcs/" ; \
 | 
|---|
| 545 |               srcFiles=`find . -mindepth 1 -type f -name "*.java" | sed "s/.\/*//"` ; \
 | 
|---|
| 546 |               notSrcFiles=`find . -mindepth 1 -type f \! -name "*.java" | sed "s/.\/*//"` ; \
 | 
|---|
| 547 |               $(BOOT_DIR)/bin/javac -cp $(NETX_DIR)/lib/classes.jar -d "$(JNLP_TESTS_DIR)/$$dir/" $$srcFiles ; \
 | 
|---|
| 548 |               if [ -n "$$notSrcFiles" ] ; then \
 | 
|---|
| 549 |                 cp -R --parents $$notSrcFiles "$(JNLP_TESTS_DIR)/$$dir/" ; \
 | 
|---|
| 550 |               fi ; \
 | 
|---|
| 551 |               cd "$(JNLP_TESTS_DIR)/$$dir/" ; \
 | 
|---|
| 552 |               if [ -f $(META_MANIFEST) ]; \
 | 
|---|
| 553 |               then \
 | 
|---|
| 554 |                 $(BOOT_DIR)/bin/jar cfm "$(JNLP_TESTS_SERVER_DEPLOYDIR)/$$dir.jar" $(META_MANIFEST) * ; \
 | 
|---|
| 555 |               else \
 | 
|---|
| 556 |                 $(BOOT_DIR)/bin/jar cf "$(JNLP_TESTS_SERVER_DEPLOYDIR)/$$dir.jar" * ; \
 | 
|---|
| 557 |               fi; \
 | 
|---|
| 558 |               cd "$$d" ; \
 | 
|---|
| 559 |             fi; \
 | 
|---|
| 560 |           done ; \
 | 
|---|
| 561 |         done ; \
 | 
|---|
| 562 |         mkdir -p stamps && \
 | 
|---|
| 563 |         touch $@
 | 
|---|
| 564 | 
 | 
|---|
| 565 | stamps/netx-dist-tests-sign-some-reproducers.stamp: stamps/netx-dist-tests-prepare-reproducers.stamp
 | 
|---|
| 566 |         keystore=$(abs_top_builddir)/$(PRIVATE_KEYSTORE_NAME); \
 | 
|---|
| 567 |         types=($(SIGNED_REPRODUCERS)) ; \
 | 
|---|
| 568 |         for which in "$${types[@]}" ; do \
 | 
|---|
| 569 |           tcaw=$(TEST_CERT_ALIAS)_$$which ; \
 | 
|---|
| 570 |           $(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" ; \
 | 
|---|
| 571 |             . $(abs_top_srcdir)/NEW_LINE_IFS ; \
 | 
|---|
| 572 |           signedReproducers=(`cat $(abs_top_builddir)/junit-jnlp-dist-$$which.txt `); \
 | 
|---|
| 573 |             IFS="$$IFS_BACKUP" ; \
 | 
|---|
| 574 |           for dir in "$${signedReproducers[@]}" ; do \
 | 
|---|
| 575 |            $(BOOT_DIR)/bin/jarsigner -keystore $$keystore -storepass $(PRIVATE_KEYSTORE_PASS) -keypass $(PRIVATE_KEYSTORE_PASS)  "$(JNLP_TESTS_SERVER_DEPLOYDIR)/$$dir.jar"  $$tcaw ; \
 | 
|---|
| 576 |           done ; \
 | 
|---|
| 577 |         done ; \
 | 
|---|
| 578 |         mkdir -p stamps && \
 | 
|---|
| 579 |         touch $@
 | 
|---|
| 580 | 
 | 
|---|
| 581 | stamps/change-dots-to-paths.stamp: stamps/netx-dist-tests-sign-some-reproducers.stamp
 | 
|---|
| 582 |         pushd  $(JNLP_TESTS_SERVER_DEPLOYDIR); \
 | 
|---|
| 583 |         types=($(ALL_NONCUSTOM_REPRODUCERS)); \
 | 
|---|
| 584 |         for which in "$${types[@]}" ; do \
 | 
|---|
| 585 |           . $(abs_top_srcdir)/NEW_LINE_IFS ; \
 | 
|---|
| 586 |           simpleReproducers=(`cat $(abs_top_builddir)/junit-jnlp-dist-$$which.txt `); \
 | 
|---|
| 587 |           IFS="$$IFS_BACKUP" ; \
 | 
|---|
| 588 |           for dir in "$${simpleReproducers[@]}" ; do \
 | 
|---|
| 589 |             if test "$${dir:0:1}" = "." ; then \
 | 
|---|
| 590 |               echo "reproducer $$dir starts with dot. It is forbidden" ; \
 | 
|---|
| 591 |               exit 5; \
 | 
|---|
| 592 |             fi; \
 | 
|---|
| 593 |             if test "$${dir:(-1)}" = "." ; then \
 | 
|---|
| 594 |               echo "reproducer $$dir ends with dot. It is forbidden" ; \
 | 
|---|
| 595 |               exit 5; \
 | 
|---|
| 596 |             fi; \
 | 
|---|
| 597 |             q=`expr index "$$dir" .`; \
 | 
|---|
| 598 |             r=$$? ; \
 | 
|---|
| 599 |             if [ $$r = 0  ]; then \
 | 
|---|
| 600 |               slashed_dir="./$${dir//.//}" ; \
 | 
|---|
| 601 |               path="`dirname $$slashed_dir`" ; \
 | 
|---|
| 602 |               file="`basename $$slashed_dir`.jar" ; \
 | 
|---|
| 603 |               echo "copying $$dir.jar to $$path as $$file" ; \
 | 
|---|
| 604 |               mkdir --parents $$path ; \
 | 
|---|
| 605 |               cp $$dir".jar" "$$path"/"$$file" ; \
 | 
|---|
| 606 |             fi ; \
 | 
|---|
| 607 |           done ; \
 | 
|---|
| 608 |         done ; \
 | 
|---|
| 609 |         popd ; \
 | 
|---|
| 610 |         mkdir -p stamps && \
 | 
|---|
| 611 |         touch $@
 | 
|---|
| 612 | 
 | 
|---|
| 613 | #this always tries to remove  previous testcert
 | 
|---|
| 614 | #the code is copypasted from netx-dist-tests-remove-cert-from-public, because 
 | 
|---|
| 615 | #with depending to not stamped target we always have to rerun reproducers targets
 | 
|---|
| 616 | stamps/exported-test-certs.stamp: stamps/change-dots-to-paths.stamp
 | 
|---|
| 617 |         -types=($(SIGNED_REPRODUCERS)) ; \
 | 
|---|
| 618 |         for which in "$${types[@]}" ; do \
 | 
|---|
| 619 |           $(BOOT_DIR)/bin/keytool -delete -alias $(TEST_CERT_ALIAS)_$$which -keystore $(PUBLIC_KEYSTORE) -storepass $(PUBLIC_KEYSTORE_PASS) ; \
 | 
|---|
| 620 |         done ;
 | 
|---|
| 621 |         types=($(SIGNED_REPRODUCERS)) ; \
 | 
|---|
| 622 |         for which in "$${types[@]}" ; do \
 | 
|---|
| 623 |           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) ; \
 | 
|---|
| 624 |         done ;
 | 
|---|
| 625 |         mkdir -p stamps && \
 | 
|---|
| 626 |         touch $@
 | 
|---|
| 627 | 
 | 
|---|
| 628 | stamps/netx-dist-tests-import-cert-to-public: stamps/exported-test-certs.stamp
 | 
|---|
| 629 |         types=($(SIGNED_REPRODUCERS)) ; \
 | 
|---|
| 630 |         for which in "$${types[@]}" ; do \
 | 
|---|
| 631 |           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) ;\
 | 
|---|
| 632 |         done ;
 | 
|---|
| 633 |         mkdir -p stamps && \
 | 
|---|
| 634 |         touch $@
 | 
|---|
| 635 | 
 | 
|---|
| 636 | netx-dist-tests-remove-cert-from-public:
 | 
|---|
| 637 |         -types=($(SIGNED_REPRODUCERS)) ; \
 | 
|---|
| 638 |         for which in "$${types[@]}" ; do \
 | 
|---|
| 639 |           $(BOOT_DIR)/bin/keytool -delete -alias $(TEST_CERT_ALIAS)_$$which -keystore $(PUBLIC_KEYSTORE) -storepass $(PUBLIC_KEYSTORE_PASS) ; \
 | 
|---|
| 640 |         done ;
 | 
|---|
| 641 |         -rm -rf stamps/netx-dist-tests-import-cert-to-public
 | 
|---|
| 642 | 
 | 
|---|
| 643 | netx-dist-tests-source-files.txt:
 | 
|---|
| 644 |         find $(JNLP_TESTS_ENGINE_SRCDIR) -name '*.java' | sort > $@
 | 
|---|
| 645 | 
 | 
|---|
| 646 | stamps/netx-dist-tests-compile.stamp: stamps/netx.stamp \
 | 
|---|
| 647 |  stamps/junit-jnlp-dist-dirs netx-dist-tests-source-files.txt
 | 
|---|
| 648 |         mkdir -p $(JNLP_TESTS_ENGINE_DIR);
 | 
|---|
| 649 |         $(BOOT_DIR)/bin/javac $(IT_JAVACFLAGS) \
 | 
|---|
| 650 |          -d $(JNLP_TESTS_ENGINE_DIR) \
 | 
|---|
| 651 |          -classpath $(JUNIT_JAR):$(NETX_DIR)/lib/classes.jar \
 | 
|---|
| 652 |          @netx-dist-tests-source-files.txt && \
 | 
|---|
| 653 |         mkdir -p stamps && \
 | 
|---|
| 654 |         touch $@
 | 
|---|
| 655 | 
 | 
|---|
| 656 | netx-dist-tests-tests-source-files.txt:
 | 
|---|
| 657 |         find $(JNLP_TESTS_ENGINE_TESTS_SRCDIR) -name '*.java' | sort > $@
 | 
|---|
| 658 | 
 | 
|---|
| 659 | stamps/netx-dist-tests-tests-compile.stamp: stamps/junit-jnlp-dist-dirs netx-dist-tests-tests-source-files.txt  stamps/netx-dist-tests-compile.stamp
 | 
|---|
| 660 |         mkdir -p $(JNLP_TESTS_ENGINE_TESTS_DIR);
 | 
|---|
| 661 |         $(BOOT_DIR)/bin/javac $(IT_JAVACFLAGS) \
 | 
|---|
| 662 |          -d $(JNLP_TESTS_ENGINE_TESTS_DIR) \
 | 
|---|
| 663 |          -classpath $(JUNIT_JAR):$(NETX_DIR)/lib/classes.jar:$(JNLP_TESTS_ENGINE_DIR) \
 | 
|---|
| 664 |          @netx-dist-tests-tests-source-files.txt && \
 | 
|---|
| 665 |         mkdir -p stamps && \
 | 
|---|
| 666 |         touch $@
 | 
|---|
| 667 | 
 | 
|---|
| 668 | stamps/netx-dist-tests-compile-testcases.stamp: stamps/netx.stamp stamps/junit-jnlp-dist-dirs \
 | 
|---|
| 669 |  netx-dist-tests-source-files.txt stamps/netx-dist-tests-compile.stamp stamps/netx-dist-tests-tests-compile.stamp
 | 
|---|
| 670 |         types=($(ALL_REPRODUCERS)); \
 | 
|---|
| 671 |         for which in "$${types[@]}" ; do \
 | 
|---|
| 672 |           . $(abs_top_srcdir)/NEW_LINE_IFS ; \
 | 
|---|
| 673 |           simpleReproducers=(`cat $(abs_top_builddir)/junit-jnlp-dist-$$which.txt `); \
 | 
|---|
| 674 |           IFS="$$IFS_BACKUP" ; \
 | 
|---|
| 675 |           for dir in "$${simpleReproducers[@]}" ; do \
 | 
|---|
| 676 |             $(BOOT_DIR)/bin/javac $(IT_JAVACFLAGS) \
 | 
|---|
| 677 |               -d $(JNLP_TESTS_ENGINE_TESTS_DIR) \
 | 
|---|
| 678 |               -classpath $(JUNIT_JAR):$(NETX_DIR)/lib/classes.jar:$(JNLP_TESTS_ENGINE_DIR) \
 | 
|---|
| 679 |             "$(JNLP_TESTS_SRCDIR)/$$which/$$dir/testcases/"* ; \
 | 
|---|
| 680 |           done ; \
 | 
|---|
| 681 |         done ; \
 | 
|---|
| 682 |         mkdir -p stamps && \
 | 
|---|
| 683 |         touch $@
 | 
|---|
| 684 | 
 | 
|---|
| 685 | stamps/netx-dist-tests-copy-resources.stamp: stamps/junit-jnlp-dist-dirs
 | 
|---|
| 686 |         types=($(ALL_REPRODUCERS)); \
 | 
|---|
| 687 |         for which in "$${types[@]}" ; do \
 | 
|---|
| 688 |           . $(abs_top_srcdir)/NEW_LINE_IFS ; \
 | 
|---|
| 689 |           simpleReproducers=(`cat $(abs_top_builddir)/junit-jnlp-dist-$$which.txt `); \
 | 
|---|
| 690 |           IFS="$$IFS_BACKUP" ; \
 | 
|---|
| 691 |           for dir in "$${simpleReproducers[@]}" ; do \
 | 
|---|
| 692 |             cp -R "$(JNLP_TESTS_SRCDIR)/$$which/$$dir/resources/"*  $(JNLP_TESTS_SERVER_DEPLOYDIR)/ ; \
 | 
|---|
| 693 |           done ; \
 | 
|---|
| 694 |         done ; \
 | 
|---|
| 695 |         mkdir -p stamps && \
 | 
|---|
| 696 |         touch $@
 | 
|---|
| 697 | 
 | 
|---|
| 698 | $(REPRODUCERS_CLASS_NAMES): $(REPRODUCERS_CLASS_WHITELIST)
 | 
|---|
| 699 |         whiteListed=`cat $(REPRODUCERS_CLASS_WHITELIST)`; \
 | 
|---|
| 700 |         cd $(JNLP_TESTS_ENGINE_TESTS_DIR) ; \
 | 
|---|
| 701 |         class_names= ; \
 | 
|---|
| 702 |         for test in `find -type f` ; do \
 | 
|---|
| 703 |           class_name=`echo $$test | sed -e 's|\.class$$||' -e 's|^\./||'` ; \
 | 
|---|
| 704 |           class_name=`echo $$class_name | sed -e 's|/|.|g' ` ; \
 | 
|---|
| 705 |           INLCUDE="NO" ; \
 | 
|---|
| 706 |           for x in $$whiteListed ; do \
 | 
|---|
| 707 |             q=`expr match "$$class_name" "$$x"`; \
 | 
|---|
| 708 |             r=$$? ; \
 | 
|---|
| 709 |             if [ $$r = 0  ]; then \
 | 
|---|
| 710 |               echo "$$class_name will be included in reproducers testcases because of $$x pattern in $(REPRODUCERS_CLASS_WHITELIST). Matching was  $$q"; \
 | 
|---|
| 711 |               INLCUDE="YES" ; \
 | 
|---|
| 712 |             fi; \
 | 
|---|
| 713 |           done; \
 | 
|---|
| 714 |           if [ "$$INLCUDE" = "YES"  ]; then \
 | 
|---|
| 715 |             class_names="$$class_names $$class_name" ; \
 | 
|---|
| 716 |           else \
 | 
|---|
| 717 |             echo "$$class_name had no match in $(REPRODUCERS_CLASS_WHITELIST). Excluding"; \
 | 
|---|
| 718 |           fi; \
 | 
|---|
| 719 |         done ; \
 | 
|---|
| 720 |         echo $$class_names > $(REPRODUCERS_CLASS_NAMES)
 | 
|---|
| 721 | 
 | 
|---|
| 722 | stamps/run-netx-dist-tests.stamp: stamps/netx-dist.stamp extra-lib/about.jar stamps/plugin.stamp launcher.build/$(javaws) \
 | 
|---|
| 723 |  javaws.desktop stamps/docs.stamp launcher.build/$(itweb_settings) itweb-settings.desktop \
 | 
|---|
| 724 |  stamps/netx.stamp stamps/junit-jnlp-dist-dirs stamps/netx-dist-tests-import-cert-to-public \
 | 
|---|
| 725 |  stamps/netx-dist-tests-compile.stamp stamps/netx-dist-tests-compile-testcases.stamp $(JUNIT_RUNNER_JAR) stamps/netx-dist-tests-copy-resources.stamp\
 | 
|---|
| 726 |  $(TESTS_DIR)/$(REPORT_STYLES_DIRNAME) $(REPRODUCERS_CLASS_NAMES) stamps/process-custom-reproducers.stamp
 | 
|---|
| 727 |         cd $(JNLP_TESTS_ENGINE_DIR) ; \
 | 
|---|
| 728 |         class_names=`cat $(REPRODUCERS_CLASS_NAMES)` ; \
 | 
|---|
| 729 |         CLASSPATH=$(NETX_DIR)/lib/classes.jar:$(JUNIT_JAR):$(JUNIT_RUNNER_JAR):.:$(JNLP_TESTS_ENGINE_TESTS_DIR) \
 | 
|---|
| 730 |           $(BOOT_DIR)/bin/java $(REPRODUCERS_DPARAMETERS) \
 | 
|---|
| 731 |          -Xbootclasspath:$(RUNTIME) CommandLine $$class_names
 | 
|---|
| 732 | if WITH_XSLTPROC
 | 
|---|
| 733 |         $(XSLTPROC)  $(TESTS_SRCDIR)/$(REPORT_STYLES_DIRNAME)/logs.xsl $(JNLP_TESTS_ENGINE_DIR)/ServerAccess-logs.xml > $(TESTS_DIR)/logs_reproducers.html
 | 
|---|
| 734 |         $(XSLTPROC)  --stringparam logs logs_reproducers.html $(TESTS_SRCDIR)/$(REPORT_STYLES_DIRNAME)/jreport.xsl $(JNLP_TESTS_ENGINE_DIR)/tests-output.xml > $(TESTS_DIR)/index_reproducers.html
 | 
|---|
| 735 | endif
 | 
|---|
| 736 |         touch $@
 | 
|---|
| 737 | 
 | 
|---|
| 738 | stamps/process-custom-reproducers.stamp: stamps/junit-jnlp-dist-dirs stamps/netx-dist-tests-import-cert-to-public \
 | 
|---|
| 739 |  stamps/netx-dist-tests-compile.stamp stamps/netx-dist-tests-compile-testcases.stamp $(JUNIT_RUNNER_JAR) stamps/netx-dist-tests-copy-resources.stamp\
 | 
|---|
| 740 |  $(TESTS_DIR)/$(REPORT_STYLES_DIRNAME) $(REPRODUCERS_CLASS_NAMES)
 | 
|---|
| 741 |         . $(abs_top_srcdir)/NEW_LINE_IFS ; \
 | 
|---|
| 742 |         customReproducers=(`cat $(abs_top_builddir)/junit-jnlp-dist-custom.txt `); \
 | 
|---|
| 743 |         IFS="$$IFS_BACKUP" ; \
 | 
|---|
| 744 |         for dir in "$${customReproducers[@]}" ; do \
 | 
|---|
| 745 |           pushd $(JNLP_TESTS_SRCDIR)/$(CUSTOM_REPRODUCERS)/$$dir/srcs; \
 | 
|---|
| 746 |           $(MAKE) prepare-reproducer ; \
 | 
|---|
| 747 |           popd ; \
 | 
|---|
| 748 |         done ; \
 | 
|---|
| 749 |         mkdir -p stamps && \
 | 
|---|
| 750 |         touch $@
 | 
|---|
| 751 | 
 | 
|---|
| 752 | clean-custom-reproducers: junit-jnlp-dist-custom.txt
 | 
|---|
| 753 |         . $(abs_top_srcdir)/NEW_LINE_IFS ; \
 | 
|---|
| 754 |         customReproducers=(`cat $(abs_top_builddir)/junit-jnlp-dist-custom.txt `); \
 | 
|---|
| 755 |         IFS="$$IFS_BACKUP" ; \
 | 
|---|
| 756 |         for dir in "$${customReproducers[@]}" ; do \
 | 
|---|
| 757 |           pushd $(JNLP_TESTS_SRCDIR)/custom/$$dir/srcs; \
 | 
|---|
| 758 |           $(MAKE) clean-reproducer ; \
 | 
|---|
| 759 |           popd ; \
 | 
|---|
| 760 |         done ; \
 | 
|---|
| 761 |         rm -f stamps/process-custom-reproducers.stamp
 | 
|---|
| 762 | 
 | 
|---|
| 763 | #for global-links you must be root, for opera there do not exists user-links
 | 
|---|
| 764 | #although this targets will indeed create symbolic links to enable 
 | 
|---|
| 765 | #icedtea-web plugin inside browser it is intended for testing purposes
 | 
|---|
| 766 | if ENABLE_PLUGIN
 | 
|---|
| 767 | stamps/user-links.stamp: stamps/netx-dist.stamp extra-lib/about.jar stamps/plugin.stamp \
 | 
|---|
| 768 |  launcher.build/$(javaws) stamps/netx.stamp $(DESTDIR)$(libdir)/$(BUILT_PLUGIN_LIBRARY) 
 | 
|---|
| 769 |         if [ $(MOZILLA_FAMILY_TEST) ]  ; then  \
 | 
|---|
| 770 |           if [ -e $(MOZILLA_LOCAL_PLUGINDIR)/$(PLUGIN_LINK_NAME) ] ; then \
 | 
|---|
| 771 |             mv -f $(MOZILLA_LOCAL_PLUGINDIR)/$(PLUGIN_LINK_NAME)  $(MOZILLA_LOCAL_BACKUP_FILE) ; \
 | 
|---|
| 772 |             echo "$(MOZILLA_LOCAL_PLUGINDIR)/$(PLUGIN_LINK_NAME) backed up as $(MOZILLA_LOCAL_BACKUP_FILE)" ; \
 | 
|---|
| 773 |           else \
 | 
|---|
| 774 |             echo "$(MOZILLA_LOCAL_PLUGINDIR)/$(PLUGIN_LINK_NAME) doesn't exists, nothing to be backed up to $(MOZILLA_LOCAL_BACKUP_FILE)" ; \
 | 
|---|
| 775 |           fi ; \
 | 
|---|
| 776 |           pushd $(MOZILLA_LOCAL_PLUGINDIR) ; \
 | 
|---|
| 777 |           ln -s $(DESTDIR)$(libdir)/$(BUILT_PLUGIN_LIBRARY) $(PLUGIN_LINK_NAME) ; \
 | 
|---|
| 778 |           echo "$(DESTDIR)$(libdir)/$(BUILT_PLUGIN_LIBRARY) linked as  $$PWD/$(PLUGIN_LINK_NAME)" ; \
 | 
|---|
| 779 |           popd ; \
 | 
|---|
| 780 |         fi ; \
 | 
|---|
| 781 |         touch $@
 | 
|---|
| 782 | 
 | 
|---|
| 783 | restore-user-links:
 | 
|---|
| 784 |         if [ $(MOZILLA_FAMILY_TEST) ]  ; then  \
 | 
|---|
| 785 |           if [ -e $(MOZILLA_LOCAL_BACKUP_FILE) ] ; then \
 | 
|---|
| 786 |             mv -f  $(MOZILLA_LOCAL_BACKUP_FILE)  $(MOZILLA_LOCAL_PLUGINDIR)/$(PLUGIN_LINK_NAME) ; \
 | 
|---|
| 787 |             echo "$(MOZILLA_LOCAL_BACKUP_FILE) restored as $(MOZILLA_LOCAL_PLUGINDIR)/$(PLUGIN_LINK_NAME)" ; \
 | 
|---|
| 788 |           else \
 | 
|---|
| 789 |             rm -f $(MOZILLA_LOCAL_PLUGINDIR)/$(PLUGIN_LINK_NAME) ; \
 | 
|---|
| 790 |             echo "$(MOZILLA_LOCAL_BACKUP_FILE) do not exists, nothing to be restored. $(MOZILLA_LOCAL_PLUGINDIR)/$(PLUGIN_LINK_NAME) removed" ; \
 | 
|---|
| 791 |           fi ; \
 | 
|---|
| 792 |         fi ;
 | 
|---|
| 793 |         if [ -e stamps/user-links.stamp ] ; then \
 | 
|---|
| 794 |           rm -f stamps/user-links.stamp ; \
 | 
|---|
| 795 |         fi
 | 
|---|
| 796 | 
 | 
|---|
| 797 | stamps/global-links.stamp: stamps/netx-dist.stamp extra-lib/about.jar stamps/plugin.stamp launcher.build/$(javaws) \
 | 
|---|
| 798 |  stamps/netx.stamp $(DESTDIR)$(libdir)/$(BUILT_PLUGIN_LIBRARY)
 | 
|---|
| 799 |         if [ $(MOZILLA_FAMILY_TEST) ]  ; then  \
 | 
|---|
| 800 |             dir="$(MOZILLA_GLOBAL32_PLUGINDIR)"  ; \
 | 
|---|
| 801 |             arch=`arch`  ; \
 | 
|---|
| 802 |             if [ "$$arch" = "x86_64" ]  ; then \
 | 
|---|
| 803 |               dir="$(MOZILLA_GLOBAL64_PLUGINDIR)"  ; \
 | 
|---|
| 804 |             fi ; \
 | 
|---|
| 805 |             if [ -e "$$dir"/$(PLUGIN_LINK_NAME) ] ; then \
 | 
|---|
| 806 |               mv -f "$$dir"/$(PLUGIN_LINK_NAME)  $(MOZILLA_GLOBAL_BACKUP_FILE) ; \
 | 
|---|
| 807 |               echo "$$dir/$(PLUGIN_LINK_NAME) backed up as  $(MOZILLA_GLOBAL_BACKUP_FILE)" ; \
 | 
|---|
| 808 |             else \
 | 
|---|
| 809 |               echo "$$dir/$(PLUGIN_LINK_NAME) do not exists, nothing to be backed up to $(MOZILLA_GLOBAL_BACKUP_FILE)" ; \
 | 
|---|
| 810 |             fi ; \
 | 
|---|
| 811 |             pushd "$$dir"  ; \
 | 
|---|
| 812 |             ln -s $(DESTDIR)$(libdir)/$(BUILT_PLUGIN_LIBRARY) $(PLUGIN_LINK_NAME)  ; \
 | 
|---|
| 813 |             echo "$(DESTDIR)$(libdir)/$(BUILT_PLUGIN_LIBRARY) linked as  $$PWD/$(PLUGIN_LINK_NAME)" ; \
 | 
|---|
| 814 |             popd  ; \
 | 
|---|
| 815 |         fi ; 
 | 
|---|
| 816 |         if [ "$(OPERA)" != "" ]  ; then \
 | 
|---|
| 817 |             dir="$(OPERA_GLOBAL32_PLUGINDIR)"  ; \
 | 
|---|
| 818 |             arch=`arch`  ; \
 | 
|---|
| 819 |             if [ "$$arch" = "x86_64" ] ; then \
 | 
|---|
| 820 |               dir="$(OPERA_GLOBAL64_PLUGINDIR)" ; \
 | 
|---|
| 821 |             fi ; \
 | 
|---|
| 822 |             if [ -e "$$dir"/$(PLUGIN_LINK_NAME) ] ; then \
 | 
|---|
| 823 |               mv -f "$$dir"/$(PLUGIN_LINK_NAME)  $(OPERA_GLOBAL_BACKUP_FILE) ; \
 | 
|---|
| 824 |               echo "$$dir/$(PLUGIN_LINK_NAME) backed up as  $(OPERA_GLOBAL_BACKUP_FILE) "; \
 | 
|---|
| 825 |             else \
 | 
|---|
| 826 |               echo "$$dir/$(PLUGIN_LINK_NAME) do not exists, nothing to be backed up to $(OPERA_GLOBAL_BACKUP_FILE) "; \
 | 
|---|
| 827 |             fi ; \
 | 
|---|
| 828 |             pushd "$$dir"  ; \
 | 
|---|
| 829 |             ln -s $(DESTDIR)$(libdir)/$(BUILT_PLUGIN_LIBRARY) $(PLUGIN_LINK_NAME)  ; \
 | 
|---|
| 830 |             echo "$(DESTDIR)$(libdir)/$(BUILT_PLUGIN_LIBRARY) linked as  $$PWD/$(PLUGIN_LINK_NAME)" ; \
 | 
|---|
| 831 |             popd  ; \
 | 
|---|
| 832 |         fi   ; \
 | 
|---|
| 833 |         touch $@
 | 
|---|
| 834 | 
 | 
|---|
| 835 | restore-global-links:
 | 
|---|
| 836 |         if [ $(MOZILLA_FAMILY_TEST) ]  ; then  \
 | 
|---|
| 837 |             dir="$(MOZILLA_GLOBAL32_PLUGINDIR)"  ; \
 | 
|---|
| 838 |             arch=`arch`  ; \
 | 
|---|
| 839 |             if [ "$$arch" = "x86_64" ]  ; then \
 | 
|---|
| 840 |               dir="$(MOZILLA_GLOBAL64_PLUGINDIR)"  ; \
 | 
|---|
| 841 |             fi ; \
 | 
|---|
| 842 |             if [ -e $(MOZILLA_GLOBAL_BACKUP_FILE) ] ; then \
 | 
|---|
| 843 |               mv -f $(MOZILLA_GLOBAL_BACKUP_FILE) "$$dir"/$(PLUGIN_LINK_NAME) ; \
 | 
|---|
| 844 |               echo "$(MOZILLA_GLOBAL_BACKUP_FILE) restored as $$dir/$(PLUGIN_LINK_NAME)" ; \
 | 
|---|
| 845 |             else \
 | 
|---|
| 846 |               rm -f "$$dir"/$(PLUGIN_LINK_NAME) ; \
 | 
|---|
| 847 |               echo "$(MOZILLA_GLOBAL_BACKUP_FILE) do not exists, nothing to be restored. $$dir/$(PLUGIN_LINK_NAME) removed" ; \
 | 
|---|
| 848 |             fi ; \
 | 
|---|
| 849 |         fi ; 
 | 
|---|
| 850 |         if [ "$(OPERA)" != "" ]  ; then \
 | 
|---|
| 851 |             dir="$(OPERA_GLOBAL32_PLUGINDIR)"  ; \
 | 
|---|
| 852 |             arch=`arch`  ; \
 | 
|---|
| 853 |             if [ "$$arch" = "x86_64" ] ; then \
 | 
|---|
| 854 |               dir="$(OPERA_GLOBAL64_PLUGINDIR)" ; \
 | 
|---|
| 855 |             fi ; \
 | 
|---|
| 856 |             if [ -e $(OPERA_GLOBAL_BACKUP_FILE) ] ; then \
 | 
|---|
| 857 |               mv -f $(OPERA_GLOBAL_BACKUP_FILE) "$$dir"/$(PLUGIN_LINK_NAME) ; \
 | 
|---|
| 858 |               echo "$(OPERA_GLOBAL_BACKUP_FILE)  restored as $$dir/$(PLUGIN_LINK_NAME)" ; \
 | 
|---|
| 859 |             else \
 | 
|---|
| 860 |               rm -f "$$dir"/$(PLUGIN_LINK_NAME) ; \
 | 
|---|
| 861 |               echo "$(OPERA_GLOBAL_BACKUP_FILE) do not exist, nothing to be restored. $$dir/$(PLUGIN_LINK_NAME) removed" ; \
 | 
|---|
| 862 |             fi ; \
 | 
|---|
| 863 |         fi   ;
 | 
|---|
| 864 |         if [ -e stamps/global-links.stamp ] ; then \
 | 
|---|
| 865 |           rm -f stamps/global-links.stamp ; \
 | 
|---|
| 866 |         fi
 | 
|---|
| 867 | endif
 | 
|---|
| 868 | 
 | 
|---|
| 869 | netx-unit-tests-source-files.txt:
 | 
|---|
| 870 |         find $(NETX_UNIT_TEST_SRCDIR) -name '*.java' | sort > $@
 | 
|---|
| 871 | 
 | 
|---|
| 872 | stamps/netx-unit-tests-compile.stamp: stamps/netx.stamp \
 | 
|---|
| 873 |  netx-unit-tests-source-files.txt stamps/netx-dist-tests-compile.stamp
 | 
|---|
| 874 |         mkdir -p $(NETX_UNIT_TEST_DIR) && \
 | 
|---|
| 875 |         $(BOOT_DIR)/bin/javac $(IT_JAVACFLAGS) \
 | 
|---|
| 876 |          -d $(NETX_UNIT_TEST_DIR) \
 | 
|---|
| 877 |          -classpath $(JUNIT_JAR):$(NETX_DIR)/lib/classes.jar:$(JNLP_TESTS_ENGINE_DIR) \
 | 
|---|
| 878 |          @netx-unit-tests-source-files.txt && \
 | 
|---|
| 879 |         mkdir -p stamps && \
 | 
|---|
| 880 |         touch $@
 | 
|---|
| 881 | 
 | 
|---|
| 882 | $(TESTS_DIR)/$(REPORT_STYLES_DIRNAME):
 | 
|---|
| 883 |         mkdir $(TESTS_DIR)/$(REPORT_STYLES_DIRNAME)
 | 
|---|
| 884 |         cp $(TESTS_SRCDIR)/$(REPORT_STYLES_DIRNAME)/*.css $(TESTS_DIR)/$(REPORT_STYLES_DIRNAME)/
 | 
|---|
| 885 |         cp $(TESTS_SRCDIR)/$(REPORT_STYLES_DIRNAME)/*.js $(TESTS_DIR)/$(REPORT_STYLES_DIRNAME)/
 | 
|---|
| 886 | 
 | 
|---|
| 887 | $(UNIT_CLASS_NAMES):
 | 
|---|
| 888 |         cd $(NETX_UNIT_TEST_DIR) ; \
 | 
|---|
| 889 |         class_names= ; \
 | 
|---|
| 890 |         for test in `find -type f` ; do \
 | 
|---|
| 891 |           class_name=`echo $$test | sed -e 's|\.class$$||' -e 's|^\./||'` ; \
 | 
|---|
| 892 |           class_name=`echo $$class_name | sed -e 's|/|.|g' ` ; \
 | 
|---|
| 893 |           class_names="$$class_names $$class_name" ; \
 | 
|---|
| 894 |         done ; \
 | 
|---|
| 895 |         echo $$class_names > $(UNIT_CLASS_NAMES);
 | 
|---|
| 896 | 
 | 
|---|
| 897 | stamps/run-netx-unit-tests.stamp: stamps/netx-unit-tests-compile.stamp $(JUNIT_RUNNER_JAR)  \
 | 
|---|
| 898 |  $(TESTS_DIR)/$(REPORT_STYLES_DIRNAME)  $(UNIT_CLASS_NAMES)
 | 
|---|
| 899 |         filename=" " ; \
 | 
|---|
| 900 |         cd $(NETX_UNIT_TEST_SRCDIR) ; \
 | 
|---|
| 901 |         for file in `find . -type f \! -iname "*.java"`; do\
 | 
|---|
| 902 |                 filename=`echo $$file `; \
 | 
|---|
| 903 |                 cp --parents $$filename $(NETX_UNIT_TEST_DIR) ; \
 | 
|---|
| 904 |         done ; \
 | 
|---|
| 905 |         cd $(NETX_UNIT_TEST_DIR) ; \
 | 
|---|
| 906 |         class_names=`cat $(UNIT_CLASS_NAMES)` ; \
 | 
|---|
| 907 |         CLASSPATH=$(NETX_DIR)/lib/classes.jar:$(JUNIT_JAR):$(JUNIT_RUNNER_JAR):$(JNLP_TESTS_ENGINE_DIR):. \
 | 
|---|
| 908 |           $(BOOT_DIR)/bin/java -Xbootclasspath:$(RUNTIME) CommandLine $$class_names 
 | 
|---|
| 909 | if WITH_XSLTPROC
 | 
|---|
| 910 |         $(XSLTPROC) $(TESTS_SRCDIR)/$(REPORT_STYLES_DIRNAME)/logs.xsl $(NETX_UNIT_TEST_DIR)/ServerAccess-logs.xml > $(TESTS_DIR)/logs_unit.html
 | 
|---|
| 911 |         $(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
 | 
|---|
| 912 | endif
 | 
|---|
| 913 |         mkdir -p stamps && \
 | 
|---|
| 914 |         touch $@
 | 
|---|
| 915 | 
 | 
|---|
| 916 | #warning,  during this target tests.build/netx/unit/tests-output.xml is backup and rewriten (but not coresponding html file)
 | 
|---|
| 917 | #xml results run from emma sandbox, however, can be wrong, co the new tests-output.xml is then renamed and orginal one restored
 | 
|---|
| 918 | #you can add -ix "-*Test*" -ix "-*test*"  to ignore all test cases from statistics
 | 
|---|
| 919 | stamps/run-unit-test-code-coverage.stamp: stamps/netx-unit-tests-compile.stamp $(JUNIT_RUNNER_JAR)  \
 | 
|---|
| 920 |  $(TESTS_DIR)/$(REPORT_STYLES_DIRNAME)  $(UNIT_CLASS_NAMES)
 | 
|---|
| 921 | if WITH_EMMA
 | 
|---|
| 922 |         cd $(NETX_UNIT_TEST_DIR) ; \
 | 
|---|
| 923 |         for file in $(EMMA_MODIFIED_FILES) ; do \
 | 
|---|
| 924 |           mv $(NETX_UNIT_TEST_DIR)/$$file  $(NETX_UNIT_TEST_DIR)/"$$file""$(EMMA_BACKUP_SUFFIX)" ; \
 | 
|---|
| 925 |         done ;\
 | 
|---|
| 926 |         class_names=`cat $(UNIT_CLASS_NAMES)` ; \
 | 
|---|
| 927 |         $(BOOT_DIR)/bin/java $(EMMA_JAVA_ARGS) -Xbootclasspath:$(RUNTIME) -cp $(EMMA_JAR) -Demma.report.html.out.encoding=UTF-8 emmarun \
 | 
|---|
| 928 |          -Dreport.html.out.encoding=UTF-8 \
 | 
|---|
| 929 |          -raw \
 | 
|---|
| 930 |          -sp $(NETX_SRCDIR) \
 | 
|---|
| 931 |          -sp $(NETX_UNIT_TEST_SRCDIR) \
 | 
|---|
| 932 |          -sp $(JUNIT_RUNNER_SRCDIR) \
 | 
|---|
| 933 |          -r html \
 | 
|---|
| 934 |          -r xml \
 | 
|---|
| 935 |          -cp $(NETX_DIR)/lib/classes.jar \
 | 
|---|
| 936 |          -cp $(JUNIT_JAR) \
 | 
|---|
| 937 |          -cp $(JUNIT_RUNNER_JAR) \
 | 
|---|
| 938 |          -cp $(BOOT_DIR)/jre/lib/rt.jar \
 | 
|---|
| 939 |          -cp $(BOOT_DIR)/jre/lib/jsse.jar \
 | 
|---|
| 940 |          -cp $(BOOT_DIR)/jre/lib/resources.jar \
 | 
|---|
| 941 |          -cp $(RHINO_RUNTIME) \
 | 
|---|
| 942 |          -cp $(JNLP_TESTS_ENGINE_DIR) \
 | 
|---|
| 943 |          -cp . \
 | 
|---|
| 944 |          -ix "-org.junit.*" \
 | 
|---|
| 945 |          -ix "-junit.*" \
 | 
|---|
| 946 |          CommandLine $$class_names ;  \
 | 
|---|
| 947 |         for file in $(EMMA_MODIFIED_FILES) ; do \
 | 
|---|
| 948 |           mv $(NETX_UNIT_TEST_DIR)/$$file  $(NETX_UNIT_TEST_DIR)/"$$file""$(EMMA_SUFFIX)" ; \
 | 
|---|
| 949 |           mv $(NETX_UNIT_TEST_DIR)/"$$file""$(EMMA_BACKUP_SUFFIX)"  $(NETX_UNIT_TEST_DIR)/$$file ; \
 | 
|---|
| 950 |         done ;
 | 
|---|
| 951 | else 
 | 
|---|
| 952 |         echo "Sorry, coverage report cant be run without emma installed. Try install emma or specify with-emma value" ;
 | 
|---|
| 953 |         exit 5
 | 
|---|
| 954 | endif 
 | 
|---|
| 955 |         touch $@
 | 
|---|
| 956 | 
 | 
|---|
| 957 | #warning,  during this target tests.build/netx/jnlp_testsengine/tests-output.xml is backup and rewriten (but not coresponding html file)
 | 
|---|
| 958 | #xml results run from emma sandbox, however, can be wrong, co the new tests-output.xml is then renamed and orginal one restored
 | 
|---|
| 959 | stamps/run-reproducers-test-code-coverage.stamp: stamps/run-netx-dist-tests.stamp $(REPRODUCERS_CLASS_NAMES)
 | 
|---|
| 960 | if WITH_EMMA
 | 
|---|
| 961 |         cd $(TESTS_DIR) ; \
 | 
|---|
| 962 |         for file in $(EMMA_MODIFIED_FILES) ; do \
 | 
|---|
| 963 |           mv $(JNLP_TESTS_ENGINE_DIR)/$$file $(JNLP_TESTS_ENGINE_DIR)/"$$file""$(EMMA_BACKUP_SUFFIX)" ; \
 | 
|---|
| 964 |         done ;\
 | 
|---|
| 965 |         echo "backuping javaws and netx.jar in $(DESTDIR)" ; \
 | 
|---|
| 966 |         netx_backup=$(DESTDIR)$(datadir)/$(PACKAGE_NAME)/netx_backup.jar ; \
 | 
|---|
| 967 |         javaws_backup=$(DESTDIR)$(bindir)/javaws_backup ; \
 | 
|---|
| 968 |         mv $(DESTDIR)$(bindir)/javaws $$javaws_backup ;  \
 | 
|---|
| 969 |         mv $(DESTDIR)$(datadir)/$(PACKAGE_NAME)/netx.jar $$netx_backup ; \
 | 
|---|
| 970 |         nw_bootclasspath="$(LAUNCHER_BOOTCLASSPATH):$(EMMA_JAR):$$netx_backup" ; \
 | 
|---|
| 971 |         instructed_dir=$(TESTS_DIR)/instr ; \
 | 
|---|
| 972 |         echo "instrumenting netx.jar from $$netx_backup through $$instructed_dir" ; \
 | 
|---|
| 973 |         $(BOOT_DIR)/bin/java -cp  $(EMMA_JAR) emma instr -d $$instructed_dir -ip $$netx_backup ; \
 | 
|---|
| 974 |         pushd $$instructed_dir ; \
 | 
|---|
| 975 |         $(BOOT_DIR)/bin/jar -cf $(DESTDIR)$(datadir)/$(PACKAGE_NAME)/netx.jar * ; \
 | 
|---|
| 976 |         popd ; \
 | 
|---|
| 977 |         rm -rf $$instructed_dir ; \
 | 
|---|
| 978 |         echo "patching $(javaws)" ; \
 | 
|---|
| 979 |         cat $$javaws_backup | sed "s,$(LAUNCHER_BOOTCLASSPATH),$$nw_bootclasspath," > $(DESTDIR)$(bindir)/$(javaws) ; \
 | 
|---|
| 980 |         chmod 777 $(DESTDIR)$(bindir)/$(javaws) ; \
 | 
|---|
| 981 |         testcases_srcs=( ) ; \
 | 
|---|
| 982 |         k=0 ; \
 | 
|---|
| 983 |         types=($(ALL_REPRODUCERS)); \
 | 
|---|
| 984 |         for which in "$${types[@]}" ; do \
 | 
|---|
| 985 |           . $(abs_top_srcdir)/NEW_LINE_IFS ; \
 | 
|---|
| 986 |           simpleReproducers=(`cat $(abs_top_builddir)/junit-jnlp-dist-$$which.txt `); \
 | 
|---|
| 987 |           IFS="$$IFS_BACKUP" ; \
 | 
|---|
| 988 |           for dir in "$${simpleReproducers[@]}" ; do \
 | 
|---|
| 989 |             testcases_srcs[k]="-sp" ; \
 | 
|---|
| 990 |             k=$$((k+1)) ; \
 | 
|---|
| 991 |             testcases_srcs[k]="$(JNLP_TESTS_SRCDIR)/$$which/$$dir/testcases/" ; \
 | 
|---|
| 992 |             k=$$((k+1)) ; \
 | 
|---|
| 993 |             done ; \
 | 
|---|
| 994 |           done ; \
 | 
|---|
| 995 |         cd $(JNLP_TESTS_ENGINE_DIR) ; \
 | 
|---|
| 996 |         class_names=`cat $(REPRODUCERS_CLASS_NAMES)` ; \
 | 
|---|
| 997 |         $(BOOT_DIR)/bin/java  \
 | 
|---|
| 998 |          $(EMMA_JAVA_ARGS) \
 | 
|---|
| 999 |           $(REPRODUCERS_DPARAMETERS) \
 | 
|---|
| 1000 |          -Xbootclasspath:$(RUNTIME) -cp $(EMMA_JAR) emmarun  \
 | 
|---|
| 1001 |            -raw \
 | 
|---|
| 1002 |            -cp $(NETX_DIR)/lib/classes.jar \
 | 
|---|
| 1003 |            -cp $(JUNIT_JAR) \
 | 
|---|
| 1004 |            -cp $(JUNIT_RUNNER_JAR) \
 | 
|---|
| 1005 |            -cp $(BOOT_DIR)/jre/lib/rt.jar \
 | 
|---|
| 1006 |            -cp $(BOOT_DIR)/jre/lib/jsse.jar \
 | 
|---|
| 1007 |            -cp $(BOOT_DIR)/jre/lib/resources.jar \
 | 
|---|
| 1008 |            -cp $(RHINO_RUNTIME) \
 | 
|---|
| 1009 |            -cp . \
 | 
|---|
| 1010 |            -cp $(JNLP_TESTS_ENGINE_TESTS_DIR) \
 | 
|---|
| 1011 |            -ix "-org.junit.*" \
 | 
|---|
| 1012 |            -ix "-junit.*" \
 | 
|---|
| 1013 |            CommandLine $$class_names ; \
 | 
|---|
| 1014 |         mv $(JNLP_TESTS_ENGINE_DIR)/coverage.ec $(JNLP_TESTS_ENGINE_DIR)/coverageX.ec ; \
 | 
|---|
| 1015 |         mv $(JNLP_TESTS_ENGINE_DIR)/coverage.es $(JNLP_TESTS_ENGINE_DIR)/coverageX.es ; \
 | 
|---|
| 1016 |         $(BOOT_DIR)/bin/java $(EMMA_JAVA_ARGS) -cp $(EMMA_JAR) emma merge \
 | 
|---|
| 1017 |           -in $(TESTS_DIR)/coverage.em \
 | 
|---|
| 1018 |           -in $(JNLP_TESTS_ENGINE_DIR)/coverageX.ec \
 | 
|---|
| 1019 |           -in $(JNLP_TESTS_ENGINE_DIR)/coverageX.es ; \
 | 
|---|
| 1020 |         $(BOOT_DIR)/bin/java $(EMMA_JAVA_ARGS) -cp $(EMMA_JAR)  -Demma.report.html.out.encoding=UTF-8 emma report \
 | 
|---|
| 1021 |           -Dreport.html.out.encoding=UTF-8 \
 | 
|---|
| 1022 |           -in $(JNLP_TESTS_ENGINE_DIR)/coverage.es  \
 | 
|---|
| 1023 |           -sp $(NETX_SRCDIR) \
 | 
|---|
| 1024 |           -sp $(NETX_UNIT_TEST_SRCDIR) \
 | 
|---|
| 1025 |           -sp $(JUNIT_RUNNER_SRCDIR) \
 | 
|---|
| 1026 |           -sp $(JNLP_TESTS_ENGINE_SRCDIR) \
 | 
|---|
| 1027 |           -sp $(JNLP_TESTS_ENGINE_TESTS_SRCDIR) \
 | 
|---|
| 1028 |           -r html \
 | 
|---|
| 1029 |           -r xml \
 | 
|---|
| 1030 |           "$${testcases_srcs[@]}" ; \
 | 
|---|
| 1031 |         echo "restoring javaws and netx.jar in $(DESTDIR)" ; \
 | 
|---|
| 1032 |         rm -f $(DESTDIR)$(bindir)/$(javaws) $(DESTDIR)$(datadir)/$(PACKAGE_NAME)/netx.jar ; \
 | 
|---|
| 1033 |         rm -f $(DESTDIR)$(bindir)/$(javaws);  \
 | 
|---|
| 1034 |         mv $$javaws_backup $(DESTDIR)$(bindir)/$(javaws);  \
 | 
|---|
| 1035 |         mv $$netx_backup $(DESTDIR)$(datadir)/$(PACKAGE_NAME)/netx.jar ; \
 | 
|---|
| 1036 |         for file in $(EMMA_MODIFIED_FILES) ; do \
 | 
|---|
| 1037 |           mv $(JNLP_TESTS_ENGINE_DIR)/$$file  $(JNLP_TESTS_ENGINE_DIR)/"$$file""$(EMMA_SUFFIX)" ; \
 | 
|---|
| 1038 |           mv $(JNLP_TESTS_ENGINE_DIR)/"$$file""$(EMMA_BACKUP_SUFFIX)"  $(JNLP_TESTS_ENGINE_DIR)/$$file ; \
 | 
|---|
| 1039 |         done ;\
 | 
|---|
| 1040 |         rm $(JNLP_TESTS_ENGINE_DIR)/coverage.txt ; 
 | 
|---|
| 1041 | else
 | 
|---|
| 1042 |         echo "Sorry, coverage report cant be run without emma installed. Try install emma or specify with-emma value" ;
 | 
|---|
| 1043 |         exit 5
 | 
|---|
| 1044 | endif
 | 
|---|
| 1045 |         touch $@
 | 
|---|
| 1046 | 
 | 
|---|
| 1047 | run-test-code-coverage: run-unit-test-code-coverage run-reproducers-test-code-coverage
 | 
|---|
| 1048 | if WITH_EMMA
 | 
|---|
| 1049 |         cd $(TESTS_DIR) ; \
 | 
|---|
| 1050 |         k=0 ; \
 | 
|---|
| 1051 |         types=($(ALL_REPRODUCERS)); \
 | 
|---|
| 1052 |         for which in "$${types[@]}" ; do \
 | 
|---|
| 1053 |           . $(abs_top_srcdir)/NEW_LINE_IFS ; \
 | 
|---|
| 1054 |           simpleReproducers=(`cat $(abs_top_builddir)/junit-jnlp-dist-$$which.txt `); \
 | 
|---|
| 1055 |           IFS="$$IFS_BACKUP" ; \
 | 
|---|
| 1056 |           for dir in "$${simpleReproducers[@]}" ; do \
 | 
|---|
| 1057 |             testcases_srcs[k]="-sp" ; \
 | 
|---|
| 1058 |             k=$$((k+1)) ; \
 | 
|---|
| 1059 |             testcases_srcs[k]="$(JNLP_TESTS_SRCDIR)/$$which/$$dir/testcases/" ; \
 | 
|---|
| 1060 |             k=$$((k+1)) ; \
 | 
|---|
| 1061 |           done ; \
 | 
|---|
| 1062 |         done ; \
 | 
|---|
| 1063 |         $(BOOT_DIR)/bin/java $(EMMA_JAVA_ARGS) -cp $(EMMA_JAR) emma merge \
 | 
|---|
| 1064 |          -in $(NETX_UNIT_TEST_DIR)/coverage.es \
 | 
|---|
| 1065 |          -in $(JNLP_TESTS_ENGINE_DIR)/coverage.es ; \
 | 
|---|
| 1066 |         $(BOOT_DIR)/bin/java $(EMMA_JAVA_ARGS) -cp $(EMMA_JAR)  -Demma.report.html.out.encoding=UTF-8 emma report \
 | 
|---|
| 1067 |          -Dreport.html.out.encoding=UTF-8 \
 | 
|---|
| 1068 |          -in $(TESTS_DIR)/coverage.es \
 | 
|---|
| 1069 |          -in $(TESTS_DIR)/coverage.em \
 | 
|---|
| 1070 |          -sp $(NETX_SRCDIR) \
 | 
|---|
| 1071 |          -sp $(NETX_UNIT_TEST_SRCDIR) \
 | 
|---|
| 1072 |          -sp $(JUNIT_RUNNER_SRCDIR) \
 | 
|---|
| 1073 |          -sp $(JNLP_TESTS_ENGINE_SRCDIR) \
 | 
|---|
| 1074 |          -sp $(JNLP_TESTS_ENGINE_TESTS_SRCDIR) \
 | 
|---|
| 1075 |          "$${testcases_srcs[@]}" \
 | 
|---|
| 1076 |          -r html \
 | 
|---|
| 1077 |          -r xml ; 
 | 
|---|
| 1078 | else
 | 
|---|
| 1079 |         echo "Sorry, coverage report cant be run without emma installed. Try install emma or specify with-emma value" ;
 | 
|---|
| 1080 |         exit 5
 | 
|---|
| 1081 | endif
 | 
|---|
| 1082 | 
 | 
|---|
| 1083 | clean-netx-tests: clean-netx-unit-tests clean-junit-runner clean-netx-dist-tests clean-test-code-coverage
 | 
|---|
| 1084 |         if [ -e $(TESTS_DIR)/netx ]; then \
 | 
|---|
| 1085 |           rmdir $(TESTS_DIR)/netx ; \
 | 
|---|
| 1086 |         fi
 | 
|---|
| 1087 | 
 | 
|---|
| 1088 | clean-junit-runner:
 | 
|---|
| 1089 |         rm -f junit-runner-source-files.txt
 | 
|---|
| 1090 |         rm -rf $(JUNIT_RUNNER_DIR)
 | 
|---|
| 1091 |         rm -f $(JUNIT_RUNNER_JAR)
 | 
|---|
| 1092 | 
 | 
|---|
| 1093 | clean-netx-unit-tests: clean_tests_reports
 | 
|---|
| 1094 |         rm -f netx-unit-tests-source-files.txt
 | 
|---|
| 1095 |         rm -rf $(NETX_UNIT_TEST_DIR)
 | 
|---|
| 1096 |         rm -f $(UNIT_CLASS_NAMES)
 | 
|---|
| 1097 |         rm -f stamps/check-pac-functions.stamp
 | 
|---|
| 1098 |         rm -f stamps/run-netx-unit-tests.stamp
 | 
|---|
| 1099 |         rm -f stamps/netx-unit-tests-compile.stamp
 | 
|---|
| 1100 | 
 | 
|---|
| 1101 | clean_tests_reports:
 | 
|---|
| 1102 |         rm -rf  $(TESTS_DIR)/$(REPORT_STYLES_DIRNAME)/
 | 
|---|
| 1103 |         rm -f  $(TESTS_DIR)/*.html
 | 
|---|
| 1104 | 
 | 
|---|
| 1105 | clean-netx-dist-tests: clean_tests_reports netx-dist-tests-remove-cert-from-public clean-custom-reproducers
 | 
|---|
| 1106 |         rm -f netx-dist-tests-source-files.txt
 | 
|---|
| 1107 |         rm -rf $(JNLP_TESTS_ENGINE_TESTS_DIR)
 | 
|---|
| 1108 |         rm -rf $(JNLP_TESTS_DIR)
 | 
|---|
| 1109 |         rm -rf $(JNLP_TESTS_SERVER_DEPLOYDIR)
 | 
|---|
| 1110 |         rm -rf $(JNLP_TESTS_ENGINE_DIR)
 | 
|---|
| 1111 |         rm -f stamps/junit-jnlp-dist-dirs
 | 
|---|
| 1112 |         rm -f stamps/netx-dist-tests-compile.stamp
 | 
|---|
| 1113 |         rm -f stamps/netx-dist-tests-tests-compile.stamp
 | 
|---|
| 1114 |         rm -f stamps/netx-dist-tests-prepare-reproducers.stamp
 | 
|---|
| 1115 |         rm -f stamps/netx-dist-tests-compile-testcases.stamp
 | 
|---|
| 1116 |         rm -f stamps/netx-dist-tests-copy-resources.stamp
 | 
|---|
| 1117 |         rm -f stamps/netx-dist-tests-sign-some-reproducers.stamp
 | 
|---|
| 1118 |         rm -f stamps/change-dots-to-paths.stamp
 | 
|---|
| 1119 |         rm -f junit-jnlp-dist-simple.txt
 | 
|---|
| 1120 |         rm -f junit-jnlp-dist-custom.txt
 | 
|---|
| 1121 |         rm -f netx-dist-tests-tests-source-files.txt
 | 
|---|
| 1122 |         types=($(SIGNED_REPRODUCERS)) ; \
 | 
|---|
| 1123 |         for which in "$${types[@]}" ; do \
 | 
|---|
| 1124 |           rm -f junit-jnlp-dist-$$which.txt ; \
 | 
|---|
| 1125 |           rm -f $(EXPORTED_TEST_CERT_PREFIX)_$$which.$(EXPORTED_TEST_CERT_SUFFIX) ; \
 | 
|---|
| 1126 |         done ;
 | 
|---|
| 1127 |         rm -f stamps/exported-test-certs.stamp
 | 
|---|
| 1128 |         rm -f stamps/junit-jnlp-dist-signed.stamp
 | 
|---|
| 1129 |         rm -f $(REPRODUCERS_CLASS_NAMES)
 | 
|---|
| 1130 |         rm -f $(abs_top_builddir)/$(PRIVATE_KEYSTORE_NAME)
 | 
|---|
| 1131 |         rm -f stamps/run-netx-dist-tests.stamp
 | 
|---|
| 1132 | 
 | 
|---|
| 1133 | clean-unit-test-code-coverage:
 | 
|---|
| 1134 |         if [ -e stamps/run-unit-test-code-coverage.stamp ]; then \
 | 
|---|
| 1135 |           rm -rf $(NETX_UNIT_TEST_DIR)/coverage ; \
 | 
|---|
| 1136 |           rm -f $(NETX_UNIT_TEST_DIR)/coverage.xml ; \
 | 
|---|
| 1137 |           rm -f $(NETX_UNIT_TEST_DIR)/coverageX.es ; \
 | 
|---|
| 1138 |           rm -f $(NETX_UNIT_TEST_DIR)/coverageX.ec ; \
 | 
|---|
| 1139 |           rm -f $(NETX_UNIT_TEST_DIR)/coverage.es ; \
 | 
|---|
| 1140 |           rm -f $(NETX_UNIT_TEST_DIR)/tests-output_withEmma.xml ; \
 | 
|---|
| 1141 |           rm -f stamps/run-unit-test-code-coverage.stamp ; \
 | 
|---|
| 1142 |         fi
 | 
|---|
| 1143 | 
 | 
|---|
| 1144 | clean-reproducers-test-code-coverage:
 | 
|---|
| 1145 |         if [ -e stamps/run-reproducers-test-code-coverage.stamp ]; then \
 | 
|---|
| 1146 |          rm -rf $(JNLP_TESTS_ENGINE_DIR)/coverage ; \
 | 
|---|
| 1147 |          rm -f $(JNLP_TESTS_ENGINE_DIR)/coverage.xml ; \
 | 
|---|
| 1148 |          rm -f $(JNLP_TESTS_ENGINE_DIR)/coverage.es ; \
 | 
|---|
| 1149 |          rm -f $(JNLP_TESTS_ENGINE_DIR)/tests-output_withEmma.xml ; \
 | 
|---|
| 1150 |          rm -f stamps/run-reproducers-test-code-coverage.stamp ; \
 | 
|---|
| 1151 |         fi
 | 
|---|
| 1152 | 
 | 
|---|
| 1153 | clean-test-code-coverage: clean-unit-test-code-coverage clean-reproducers-test-code-coverage
 | 
|---|
| 1154 |         if [ -e $(TESTS_DIR)/coverage.xml ]; then \
 | 
|---|
| 1155 |           rm -rf $(TESTS_DIR)/coverage  ; \
 | 
|---|
| 1156 |           rm -f $(TESTS_DIR)/coverage.xml  ; \
 | 
|---|
| 1157 |           rm -f $(TESTS_DIR)/coverage.es  ; \
 | 
|---|
| 1158 |           rm -f $(TESTS_DIR)/coverage.em ; \
 | 
|---|
| 1159 |         fi
 | 
|---|
| 1160 | 
 | 
|---|
| 1161 | 
 | 
|---|
| 1162 | # plugin tests
 | 
|---|
| 1163 | 
 | 
|---|
| 1164 | if ENABLE_PLUGIN
 | 
|---|
| 1165 | stamps/plugin-tests.stamp: $(PLUGIN_TEST_SRCS) stamps/plugin.stamp
 | 
|---|
| 1166 |         mkdir -p plugin/tests/LiveConnect
 | 
|---|
| 1167 |         $(BOOT_DIR)/bin/javac $(IT_JAVACFLAGS) \
 | 
|---|
| 1168 |          -d plugin/tests/LiveConnect \
 | 
|---|
| 1169 |          -classpath liveconnect/lib/classes.jar \
 | 
|---|
| 1170 |          $(PLUGIN_TEST_SRCS) ;
 | 
|---|
| 1171 |         $(BOOT_DIR)/bin/jar cf plugin/tests/LiveConnect/PluginTest.jar \
 | 
|---|
| 1172 |           plugin/tests/LiveConnect/*.class ;
 | 
|---|
| 1173 |         cp -pPR $(SRC_DIR_LINK) $(abs_top_srcdir)/plugin/tests/LiveConnect/*.{js,html} \
 | 
|---|
| 1174 |           plugin/tests/LiveConnect ;
 | 
|---|
| 1175 |         echo "Done. Now launch \"firefox file://`pwd`/index.html\"" ;
 | 
|---|
| 1176 |         mkdir -p stamps
 | 
|---|
| 1177 |         touch stamps/plugin-tests.stamp
 | 
|---|
| 1178 | endif
 | 
|---|
| 1179 | 
 | 
|---|
| 1180 | # Bootstrap Directory Targets
 | 
|---|
| 1181 | # ===========================
 | 
|---|
| 1182 | 
 | 
|---|
| 1183 | stamps/native-ecj.stamp: 
 | 
|---|
| 1184 |         mkdir -p stamps ; \
 | 
|---|
| 1185 |         if test "x$(GCJ)" != "xno"; then \
 | 
|---|
| 1186 |           $(GCJ) $(IT_CFLAGS) -Wl,-Bsymbolic -findirect-dispatch -o native-ecj \
 | 
|---|
| 1187 |             --main=org.eclipse.jdt.internal.compiler.batch.Main ${ECJ_JAR} ; \
 | 
|---|
| 1188 |         fi ; \
 | 
|---|
| 1189 |         touch stamps/native-ecj.stamp
 | 
|---|
| 1190 | 
 | 
|---|
| 1191 | clean-native-ecj:
 | 
|---|
| 1192 |         rm -f native-ecj
 | 
|---|
| 1193 |         rm -rf stamps/native-ecj.stamp
 | 
|---|
| 1194 | 
 | 
|---|
| 1195 | # bootstrap
 | 
|---|
| 1196 | stamps/bootstrap-directory.stamp: stamps/native-ecj.stamp
 | 
|---|
| 1197 |         mkdir -p $(BOOT_DIR)/bin stamps/
 | 
|---|
| 1198 |         ln -sf $(JAVA) $(BOOT_DIR)/bin/java
 | 
|---|
| 1199 |         ln -sf $(JAR) $(BOOT_DIR)/bin/jar
 | 
|---|
| 1200 |         ln -sf $(abs_top_builddir)/javac $(BOOT_DIR)/bin/javac
 | 
|---|
| 1201 |         ln -sf $(JAVADOC) $(BOOT_DIR)/bin/javadoc
 | 
|---|
| 1202 |         if [ -e "$(KEYTOOL)" ] ; then \
 | 
|---|
| 1203 |           ln -sf $(KEYTOOL) $(BOOT_DIR)/bin/keytool ;\
 | 
|---|
| 1204 |         else \
 | 
|---|
| 1205 |           echo "#! /bin/sh" > $(BOOT_DIR)/bin/keytool ;\
 | 
|---|
| 1206 |           echo "echo \"keytool not exist on your system, signed part of reproducers test will fail\"" >> $(BOOT_DIR)/bin/keytool ;\
 | 
|---|
| 1207 |           chmod 777 $(BOOT_DIR)/bin/keytool ;\
 | 
|---|
| 1208 |         fi
 | 
|---|
| 1209 |         if [ -e "$(JARSIGNER)" ] ; then \
 | 
|---|
| 1210 |           ln -sf $(JARSIGNER) $(BOOT_DIR)/bin/jarsigner ;\
 | 
|---|
| 1211 |         else \
 | 
|---|
| 1212 |           echo "#! /bin/sh" > $(BOOT_DIR)/bin/jarsigner ;\
 | 
|---|
| 1213 |           echo "echo \"jarsigner not exist on your system, signed part of reproducers test will fail\"" >> $(BOOT_DIR)/bin/jarsigner ;\
 | 
|---|
| 1214 |           chmod 777 $(BOOT_DIR)/bin/jarsigner ;\
 | 
|---|
| 1215 |         fi
 | 
|---|
| 1216 |         mkdir -p $(BOOT_DIR)/jre/lib && \
 | 
|---|
| 1217 |         ln -s $(SYSTEM_JRE_DIR)/lib/rt.jar $(BOOT_DIR)/jre/lib && \
 | 
|---|
| 1218 |         if [ -e $(SYSTEM_JRE_DIR)/lib/jsse.jar ] ; then \
 | 
|---|
| 1219 |           ln -s $(SYSTEM_JRE_DIR)/lib/jsse.jar $(BOOT_DIR)/jre/lib ; \
 | 
|---|
| 1220 |         else \
 | 
|---|
| 1221 |           ln -s rt.jar $(BOOT_DIR)/jre/lib/jsse.jar ; \
 | 
|---|
| 1222 |         fi
 | 
|---|
| 1223 |         if [ -e $(SYSTEM_JRE_DIR)/lib/resources.jar ] ; then \
 | 
|---|
| 1224 |           ln -s $(SYSTEM_JRE_DIR)/lib/resources.jar $(BOOT_DIR)/jre/lib ; \
 | 
|---|
| 1225 |         else \
 | 
|---|
| 1226 |           ln -s rt.jar $(BOOT_DIR)/jre/lib/resources.jar ; \
 | 
|---|
| 1227 |         fi
 | 
|---|
| 1228 |         ln -sf $(SYSTEM_JRE_DIR)/lib/$(JRE_ARCH_DIR) \
 | 
|---|
| 1229 |           $(BOOT_DIR)/jre/lib/ && \
 | 
|---|
| 1230 |         if ! test -d $(BOOT_DIR)/jre/lib/$(INSTALL_ARCH_DIR); \
 | 
|---|
| 1231 |           then \
 | 
|---|
| 1232 |           ln -sf ./$(JRE_ARCH_DIR) \
 | 
|---|
| 1233 |             $(BOOT_DIR)/jre/lib/$(INSTALL_ARCH_DIR); \
 | 
|---|
| 1234 |         fi;
 | 
|---|
| 1235 |         mkdir -p $(BOOT_DIR)/include && \
 | 
|---|
| 1236 |         for i in $(SYSTEM_JDK_DIR)/include/*; do \
 | 
|---|
| 1237 |           test -r $$i | continue; \
 | 
|---|
| 1238 |           i=`basename $$i`; \
 | 
|---|
| 1239 |           rm -f $(BOOT_DIR)/include/$$i; \
 | 
|---|
| 1240 |           ln -s $(SYSTEM_JDK_DIR)/include/$$i $(BOOT_DIR)/include/$$i; \
 | 
|---|
| 1241 |         done
 | 
|---|
| 1242 |         mkdir -p stamps
 | 
|---|
| 1243 |         touch stamps/bootstrap-directory.stamp
 | 
|---|
| 1244 | 
 | 
|---|
| 1245 | clean-bootstrap-directory:
 | 
|---|
| 1246 |         rm -rf $(BOOT_DIR)
 | 
|---|
| 1247 |         if [ -e ${abs_top_builddir}/bootstrap ] ; then \
 | 
|---|
| 1248 |           rmdir ${abs_top_builddir}/bootstrap ; \
 | 
|---|
| 1249 |         fi
 | 
|---|
| 1250 |         rm -f stamps/bootstrap-directory.stamp
 | 
|---|
| 1251 | 
 | 
|---|
| 1252 | # Target Aliases
 | 
|---|
| 1253 | # ===============
 | 
|---|
| 1254 | 
 | 
|---|
| 1255 | add-netx: stamps/add-netx.stamp
 | 
|---|
| 1256 | 
 | 
|---|
| 1257 | add-netx-debug: stamps/add-netx-debug.stamp
 | 
|---|
| 1258 | 
 | 
|---|
| 1259 | netx: stamps/netx.stamp
 | 
|---|
| 1260 | 
 | 
|---|
| 1261 | netx-dist: stamps/netx-dist.stamp
 | 
|---|
| 1262 | 
 | 
|---|
| 1263 | plugin: stamps/plugin.stamp
 | 
|---|
| 1264 | 
 | 
|---|
| 1265 | plugin-tests: stamps/plugin-tests.stamp
 | 
|---|
| 1266 | 
 | 
|---|
| 1267 | check-pac-functions: stamps/check-pac-functions.stamp
 | 
|---|
| 1268 | 
 | 
|---|
| 1269 | run-netx-unit-tests: stamps/run-netx-unit-tests.stamp
 | 
|---|
| 1270 | 
 | 
|---|
| 1271 | links: stamps/global-links.stamp
 | 
|---|
| 1272 | 
 | 
|---|
| 1273 | user-links: stamps/user-links.stamp
 | 
|---|
| 1274 | 
 | 
|---|
| 1275 | run-netx-dist-tests: stamps/run-netx-dist-tests.stamp
 | 
|---|
| 1276 | 
 | 
|---|
| 1277 | run-unit-test-code-coverage: stamps/run-unit-test-code-coverage.stamp
 | 
|---|
| 1278 | 
 | 
|---|
| 1279 | run-reproducers-test-code-coverage: stamps/run-reproducers-test-code-coverage.stamp
 | 
|---|