1 # |
|
2 # Copyright (c) 2012, 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. |
|
8 # |
|
9 # This code is distributed in the hope that it will be useful, but WITHOUT |
|
10 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
|
11 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
|
12 # version 2 for more details (a copy is included in the LICENSE file that |
|
13 # accompanied this code). |
|
14 # |
|
15 # You should have received a copy of the GNU General Public License version |
|
16 # 2 along with this work; if not, write to the Free Software Foundation, |
|
17 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. |
|
18 # |
|
19 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
|
20 # or visit www.oracle.com if you need additional information or have any |
|
21 # questions. |
|
22 # |
|
23 # |
|
24 |
|
25 # Rules to build fix_empty_sec_hdr_flags, used by vm.make on Solaris |
|
26 |
|
27 # Allow $(FIX_EMPTY_SEC_HDR_FLAGS) to be called from any directory. |
|
28 # We don't set or use the GENERATED macro to avoid affecting |
|
29 # other HotSpot Makefiles. |
|
30 TOPDIR = $(shell echo `pwd`) |
|
31 FIX_EMPTY_SEC_HDR_FLAGS = $(TOPDIR)/../generated/fix_empty_sec_hdr_flags |
|
32 |
|
33 FIX_EMPTY_SEC_HDR_FLAGS_DIR = $(GAMMADIR)/src/os/solaris/fix_empty_sec_hdr_flags |
|
34 FIX_EMPTY_SEC_HDR_FLAGS_SRC = $(FIX_EMPTY_SEC_HDR_FLAGS_DIR)/fix_empty_sec_hdr_flags.c |
|
35 FIX_EMPTY_SEC_HDR_FLAGS_FLAGS = |
|
36 LIBS_FIX_EMPTY_SEC_HDR_FLAGS += -lelf |
|
37 |
|
38 ifeq ("${Platform_compiler}", "sparcWorks") |
|
39 # Enable the following FIX_EMPTY_SEC_HDR_FLAGS_FLAGS addition if you need to |
|
40 # compare the built ELF objects. |
|
41 # |
|
42 # The -g option makes static data global and the "-W0,-noglobal" |
|
43 # option tells the compiler to not globalize static data using a unique |
|
44 # globalization prefix. Instead force the use of a static globalization |
|
45 # prefix based on the source filepath so the objects from two identical |
|
46 # compilations are the same. |
|
47 # |
|
48 # Note: The blog says to use "-W0,-xglobalstatic", but that doesn't |
|
49 # seem to work. I got "-W0,-noglobal" from Kelly and that works. |
|
50 #FIX_EMPTY_SEC_HDR_FLAGS_FLAGS += -W0,-noglobal |
|
51 endif # Platform_compiler == sparcWorks |
|
52 |
|
53 $(FIX_EMPTY_SEC_HDR_FLAGS): $(FIX_EMPTY_SEC_HDR_FLAGS_SRC) |
|
54 $(CC) -g -o $@ $< $(FIX_EMPTY_SEC_HDR_FLAGS_FLAGS) $(LIBS_FIX_EMPTY_SEC_HDR_FLAGS) |
|