JtregNative.gmk revision 11707:ad7af1afda7a
1# 2# Copyright (c) 2015, 2016, Oracle and/or its affiliates. All rights reserved. 3# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4# 5# This code is free software; you can redistribute it and/or modify it 6# under the terms of the GNU General Public License version 2 only, as 7# published by the Free Software Foundation. Oracle designates this 8# particular file as subject to the "Classpath" exception as provided 9# by Oracle in the LICENSE file that accompanied this code. 10# 11# This code is distributed in the hope that it will be useful, but WITHOUT 12# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14# version 2 for more details (a copy is included in the LICENSE file that 15# accompanied this code). 16# 17# You should have received a copy of the GNU General Public License version 18# 2 along with this work; if not, write to the Free Software Foundation, 19# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20# 21# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22# or visit www.oracle.com if you need additional information or have any 23# questions. 24# 25 26################################################################################ 27# This file builds the native component of the JTReg tests for Hotspot. 28# It also covers the test-image part, where the built files are copied to the 29# test image. 30################################################################################ 31 32default: all 33 34include $(SPEC) 35include MakeBase.gmk 36include TestFilesCompilation.gmk 37 38################################################################################ 39# Targets for building the native tests themselves. 40################################################################################ 41 42# Add more directories here when needed. 43BUILD_HOTSPOT_JTREG_NATIVE_SRC := \ 44 $(HOTSPOT_TOPDIR)/test/native_sanity \ 45 $(HOTSPOT_TOPDIR)/test/runtime/jni/8025979 \ 46 $(HOTSPOT_TOPDIR)/test/runtime/jni/8033445 \ 47 $(HOTSPOT_TOPDIR)/test/runtime/jni/ToStringInInterfaceTest \ 48 $(HOTSPOT_TOPDIR)/test/runtime/modules/getModuleJNI \ 49 $(HOTSPOT_TOPDIR)/test/runtime/SameObject \ 50 $(HOTSPOT_TOPDIR)/test/runtime/BoolReturn \ 51 $(HOTSPOT_TOPDIR)/test/compiler/floatingpoint/ \ 52 $(HOTSPOT_TOPDIR)/test/compiler/calls \ 53 $(HOTSPOT_TOPDIR)/test/serviceability/jvmti/GetNamedModule \ 54 $(HOTSPOT_TOPDIR)/test/testlibrary/jvmti \ 55 # 56 57# Add conditional directories here when needed. 58ifeq ($(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU_ARCH), solaris-sparc) 59BUILD_HOTSPOT_JTREG_NATIVE_SRC += \ 60 $(HOTSPOT_TOPDIR)/test/runtime/libadimalloc.solaris.sparc \ 61 $(HOTSPOT_TOPDIR)/test/runtime/ThreadSignalMask 62endif 63 64ifeq ($(TOOLCHAIN_TYPE), solstudio) 65 BUILD_HOTSPOT_JTREG_LIBRARIES_LDFLAGS_liboverflow := -lc 66 BUILD_HOTSPOT_JTREG_LIBRARIES_LDFLAGS_libSimpleClassFileLoadHook := -lc 67 BUILD_HOTSPOT_JTREG_LIBRARIES_LDFLAGS_libGetNamedModuleTest := -lc 68endif 69 70BUILD_HOTSPOT_JTREG_OUTPUT_DIR := $(BUILD_OUTPUT)/support/test/hotspot/jtreg/native 71 72BUILD_HOTSPOT_JTREG_IMAGE_DIR := $(TEST_IMAGE_DIR)/hotspot/jtreg 73 74$(eval $(call SetupTestFilesCompilation, BUILD_HOTSPOT_JTREG_LIBRARIES, \ 75 TYPE := LIBRARY, \ 76 SOURCE_DIRS := $(BUILD_HOTSPOT_JTREG_NATIVE_SRC), \ 77 OUTPUT_DIR := $(BUILD_HOTSPOT_JTREG_OUTPUT_DIR), \ 78)) 79 80$(eval $(call SetupTestFilesCompilation, BUILD_HOTSPOT_JTREG_EXECUTABLES, \ 81 TYPE := PROGRAM, \ 82 SOURCE_DIRS := $(BUILD_HOTSPOT_JTREG_NATIVE_SRC), \ 83 OUTPUT_DIR := $(BUILD_HOTSPOT_JTREG_OUTPUT_DIR), \ 84)) 85 86build-test-hotspot-jtreg-native: $(BUILD_HOTSPOT_JTREG_LIBRARIES) $(BUILD_HOTSPOT_JTREG_EXECUTABLES) 87 88################################################################################ 89# Targets for building test-image. 90################################################################################ 91 92# Copy to hotspot jtreg test image 93$(eval $(call SetupCopyFiles,COPY_HOTSPOT_JTREG_NATIVE, \ 94 SRC := $(BUILD_HOTSPOT_JTREG_OUTPUT_DIR), \ 95 DEST := $(TEST_IMAGE_DIR)/hotspot/jtreg/native, \ 96 FILES := $(BUILD_HOTSPOT_JTREG_LIBRARIES) $(BUILD_HOTSPOT_JTREG_EXECUTABLES), \ 97 FLATTEN := true)) 98 99test-image-hotspot-jtreg-native: $(COPY_HOTSPOT_JTREG_NATIVE) 100 101all: build-test-hotspot-jtreg-native 102test-image: test-image-hotspot-jtreg-native 103 104.PHONY: default all build-test-hotspot-jtreg-native test-image-hotspot-jtreg-native test-image 105