Initial commit of OpenSPARC T2 architecture model.
[OpenSPARC-T2-SAM] / legion / src / procs / sunsparc / libniagara / Makefile.inc
CommitLineData
920dae64
AT
1# ========== Copyright Header Begin ==========================================
2#
3# OpenSPARC T2 Processor File: Makefile.inc
4# Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved.
5# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES.
6#
7# The above named program is free software; you can redistribute it and/or
8# modify it under the terms of the GNU General Public
9# License version 2 as published by the Free Software Foundation.
10#
11# The above named program is distributed in the hope that it will be
12# useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
13# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14# General Public License for more details.
15#
16# You should have received a copy of the GNU General Public
17# License along with this work; if not, write to the Free Software
18# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
19#
20# ========== Copyright Header End ============================================
21#
22# Copyright 2007 Sun Microsystems, Inc. All rights reserved.
23# Use is subject to license terms.
24#
25# ident "@(#)Makefile.inc 1.16 07/01/18 SMI"
26#
27# We create the libniagara.so loadable module
28# from these source files.
29#
30
31
32NIAGARA_VER=.1
33NIAGARA_COMMON_OBJ=ss_common_n1.o
34NIAGARA_SRC=niagara.c niagara_err_trap.c
35NIAGARA_OBJ=niagara.o niagara_err_trap.o
36ifdef BUILDFPSIM
37NIAGARA_COMMON_OBJ+=fpsim_support_n1.o
38NIAGARA_SRC+=fpsim_bw.c
39NIAGARA_OBJ+=fpsim_bw.o
40else
41NIAGARA_SRC+=fpsim_dummy_bw.c
42NIAGARA_OBJ+=fpsim_dummy_bw.o
43endif
44
45NIAGARA_LIB=libniagara.so
46NIAGARA_LIB_LINK=./plugins/$(NIAGARA_LIB)
47NIAGARA_BIN=$(NIAGARA_LIB_LINK)$(NIAGARA_VER)
48
49NIAGARA_INCLUDES=-I$(SRCDIR)/procs/sunsparc/include
50NIAGARA_CFLAGS=$(NIAGARA_INCLUDES) $(CFLAGS) $(SHAREDLIB_CFLAGS) -DNIAGARA1
51
52NIAGARA_DBG_OBJ=niagara_dbg
53NIAGARA_DBG_BIN=./plugins/lib$(NIAGARA_DBG_OBJ).so
54
55# DBG_SRC defined in src/procs/sunsparc/debug/Makefile.inc
56NIAGARA_DBG_SRC=$(DBG_SRC)
57
58LIBS+=\
59 $(NIAGARA_BIN)
60
61ifdef INTERNAL_BUILD
62 LINK_TO_CRYPRO="-llegion_crypto"
63 NIAGARA_MODARITH_SRC=modarith.c
64 NIAGARA_MODARITH_OBJ=modarith.o
65$(NIAGARA_MODARITH_OBJ) : $(NIAGARA_MODARITH_SRC)
66 @echo "================> Making $(NIAGARA_MODARITH_OBJ)"
67 $(CC) $(NIAGARA_CFLAGS) $(CPPFLAGS) -c -o $@ $<
68else
69 LINK_TO_CRYPRO=
70 NIAGARA_MODARITH_SRC=
71 NIAGARA_MODARITH_OBJ=
72 CRYPTO_BIN=
73$(NIAGARA_MODARITH_OBJ) :
74 @echo "================> Skipping the make of NIAGARA_MODARITH_OBJ for External release"
75endif
76
77ss_common_n1.o: ../common/ss_common.c
78 @echo "================> Making $@"
79 $(CC) $(NIAGARA_CFLAGS) $(CPPFLAGS) -c -o $@ $<
80
81niagara.o : niagara.c
82 @echo "================> Making $@"
83 $(CC) $(NIAGARA_CFLAGS) $(CPPFLAGS) -c -o $@ $<
84
85ifdef BUILDFPSIM
86fpsim_support_n1.o: ../common/fpsim_support.s
87 @echo "================> Making $@"
88 $(AS) $(ASFLAGS) -P -b -o $@ $<
89
90fpsim_bw.o: fpsim_bw.c
91 @echo "================> Making $@"
92 $(CC) $(NIAGARA_CFLAGS) $(CPPFLAGS) -xcode=pic13 -xregs=no%appl -errwarn=%all -c -o $@ $<
93else
94fpsim_dummy_bw.o: ../common/fpsim_dummy.c
95 @echo "================> Making $@"
96 $(CC) $(NIAGARA_CFLAGS) $(CPPFLAGS) -c -o $@ $<
97endif
98
99niagara_err_trap.o : niagara_err_trap.c
100 @echo "================> Making $@"
101 $(CC) $(NIAGARA_CFLAGS) $(CPPFLAGS) -c -o $@ $<
102
103$(NIAGARA_DBG_BIN) : $(NIAGARA_DBG_SRC)
104 @echo "================> Making $(NIAGARA_DBG_BIN)"
105 $(CC) $(CPPFLAGS) $(NIAGARA_CFLAGS) -xs $(SHAREDLIB_FLAGS) -R \$$ORIGIN \
106 -o $(NIAGARA_DBG_BIN) $^
107
108$(NIAGARA_BIN): $(NIAGARA_OBJ) $(NIAGARA_MODARITH_OBJ) $(NIAGARA_COMMON_OBJ) $(NIAGARA_DBG_BIN) $(CRYPTO_BIN)
109 @echo "================> Making $(NIAGARA_BIN)"
110 $(CC) $(CPPFLAGS) $(NIAGARA_CFLAGS) $(SHAREDLIB_FLAGS) -R \$$ORIGIN \
111 -o $(NIAGARA_BIN) $(NIAGARA_OBJ) $(NIAGARA_MODARITH_OBJ) \
112 $(NIAGARA_COMMON_OBJ) -lgeneric -l$(NIAGARA_DBG_OBJ) \
113 $(LINK_TO_CRYPRO)
114 $(RM) $(NIAGARA_LIB_LINK)
115 $(LN) -s $(NIAGARA_LIB)$(NIAGARA_VER) $(NIAGARA_LIB_LINK)
116