TestMakeBase.gmk revision 1120:ba5645f2735b
1# 2# Copyright (c) 2014, 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 26default: all 27 28include $(SPEC) 29include MakeBase.gmk 30 31THIS_FILE := $(SRC_ROOT)/test/make/TestMakeBase.gmk 32DEPS := $(THIS_FILE) \ 33 $(SRC_ROOT)/make/common/MakeBase.gmk \ 34 # 35 36OUTPUT_DIR := $(TESTMAKE_OUTPUTDIR)/make-base 37 38################################################################################ 39# Escape $ 40ifneq ($(call EscapeDollar, foo$$bar), foo\$$bar) 41 $(error EscapeDollar failed $(call EscapeDollar, foo$$bar) foo\$$bar) 42endif 43 44ESCAPE_DOLLAR_DIR := $(OUTPUT_DIR)/escape-dollar 45 46$(ESCAPE_DOLLAR_DIR)/_escape_dollar: $(DEPS) 47 $(RM) -r $(@D) 48 $(MKDIR) -p $(@D) 49 $(ECHO) foo\$$bar > $(@D)/file1 50 $(ECHO) $(call EscapeDollar, foo$$bar) > $(@D)/file2 51 $(ECHO) $(call EscapeDollar, foo\$$bar) > $(@D)/file3 52 $(DIFF) $(@D)/file1 $(@D)/file2 53 $(DIFF) $(@D)/file1 $(@D)/file3 54 $(TOUCH) $@ 55 56TEST_TARGETS += $(ESCAPE_DOLLAR_DIR)/_escape_dollar 57 58################################################################################ 59 60all: $(TEST_TARGETS) 61