summaryrefslogtreecommitdiff
path: root/include/makeinclude/platform_cray.GNU
blob: 30b63d3a089a1ba445716b22262b5f062b11d721 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
# $Id$

# Platform macros for SGI/Cray UNICOS (vector) & UNICOS/mk (mpp) -
#    UNICOS 9.0.2.8
#    UNICOS 10.0.0.5
#    UNICOS/mk 2.0.4.57
#    Cray C++ Version 3.2.0.1
#    Cray Standard C Version 6.2.0.1
#
# Contributed by Doug Anderson <dla@home.com>

debug = 1
exceptions = 1
static_libs_only = 1
quantify =
purify =

# Cray's autoinstantiation seems to be broken, resulting in
# C++ prelinker: error: instantiation loop
# So, we're using ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION
CC              = cc
LDLIB           += -L$(ACE_ROOT)/ace
CXX             = CC
#CFLAGS         +=
CCFLAGS         += -h noautoinstantiate
DCFLAGS         += -g
DCCFLAGS        += $(DCFLAGS)
OCFLAGS         += -O2
OCCFLAGS        += $(OCFLAGS)

ifeq (1,$(exceptions))
  CCFLAGS += -h exceptions
else
  CCFLAGS += -h noexceptions
endif # exceptions

DLD             = $(CXX)
LD              = $(CXX)
LIBS            = -lpthread
PIC             =
AR              = ar
ARFLAGS         = ruv
RANLIB          = /bin/true

# This is necessary to get libraries to contain template info, but only
# necessary when using autoinstantiation
# PRELIB     = @echo ""; \
#  echo "int main() { return 0; }" >dummy.cpp; \
#  echo "$(CXX) $(CCFLAGS) $(CPPFLAGS) $(LDFLAGS) $(LIBS) -o dummy dummy.cpp $?";\
#  $(CXX) $(CCFLAGS) $(CPPFLAGS) $(LDFLAGS) $(LIBS) -o dummy dummy.cpp $?;