Autoconf support for building subsets of components. Thread_db support in autoconf.
[dyninst.git] / testsuite / ppc32_linux / Makefile
1 #
2 # $Id: Makefile,v 1.1 2008/05/08 20:53:29 cooksey Exp $
3 #
4
5 # Define any symbols needed to invoke configuration changes in make.config
6 TO_CORE =       ../..
7 NO_OPT_FLAG=true
8 NO_IMPLICIT_TEMPLATES = true
9 USES_DWARF_DEBUG = true
10 USES_LIBELF = true
11 DEBUG_FLAG = -g
12
13 # Include standard make configuration stuff that applies to everything
14 # in the paradyn tree.
15 include $(TO_CORE)/make.config.local
16 include $(TO_CORE)/make.config 
17
18 # Now make any necessary architecture specific changes to variables:
19
20 #if M_G77 is defined, g77 mutatees will be built
21 M_G77 = g77
22
23 # there is no "native" or OS-provided compiler for Linux!
24 # we use the Portland Group compilers, as that's what we've currently got
25 # (in future we probably also want to test with the KAI/Intel compilers)
26 ifdef PGI
27 NATIVE_CC = pgcc
28 NATIVE_CXX = pgCC
29 COMPILERT_NATIVE_CC = $(shell $(NATIVE_CC) -V 2>/dev/null | grep '^pg' | head -1)
30 COMPILERT_NATIVE_CXX = $(shell $(NATIVE_CXX) -V 2>/dev/null | grep '^pg' | head -1)
31 endif
32
33 GNU_WARNING_FLAGS = -W -Wall
34 MUTATOR_CXXFLAGS += $(GNU_WARNING_FLAGS)
35 MUTATEE_CFLAGS_GNU      = $(UNIFIED_DEF) $(GNU_WARNING_FLAGS)
36 MUTATEE_CXXFLAGS_GNU    = $(UNIFIED_DEF) $(GNU_WARNING_FLAGS)
37
38 # Tests 1, 2, and 12 use libdl. It is only added to their link lines
39 # as we must also test the harder-to-bootstrap general case (mutatee
40 # without the libdl)
41 MUTATEE_USE_LIBDL_SELECTIVELY = true
42 MUTATEE_LIBS =
43 MUTATEE_LDFLAGS_GNU += -Wl,-export-dynamic
44 MUTATEE_LDFLAGS_NATIVE += -Wl,-export-dynamic
45
46 MUTATEE_LDFLAGS_GNU    += -ldl $(LDFLAGS)
47 MUTATEE_LDFLAGS_NATIVE += -ldl $(LDFLAGS)
48
49 COMMA=,
50 MUTATEE_G77_FFLAGS += -Dppc64_linux -DF77 -fno-second-underscore -g
51 MUTATEE_G77_FFLAGS += $(F77FLAGS)
52 MUTATEE_G77_CFLAGS += $(filter-out -Wl$(COMMA)-export-dynamic, $(MUTATEE_CFLAGS_GNU)) 
53 MUTATEE_G77_CFLAGS += -DF77 -DFortran -g $(MUTATEE_FFLAGS) -c
54 MUTATEE_G77_CFLAGS += $(CFLAGS)
55 TEST1_FORTRAN_CSOURCE = test1.mutateeFortC.c
56
57 MUTATEE_G77_LDFLAGS += $(LDFLAGS)
58
59 MUTATEE_CFLAGS_NATIVE   = $(UNIFIED_DEF) -g
60 MUTATEE_CXXFLAGS_NATIVE = $(UNIFIED_DEF) -g
61
62 # Definitions used for test1 assembly
63 TEST1_AS = gcc -c
64 TEST1_ASFLAGS = $(MUTATEE_CFLAGS_GNU)
65 #CALL35_1_SRC = call35_1_x86_linux.s
66
67 # Definition used for test6 assembly
68 NASM = $(GCC)
69 TEST6_AS_GNU = $(NASM)
70 #TEST6_ASFLAGS_GNU = -f elf -dPLATFORM=$(PLATFORM)
71 TEST6_ASFLAGS_GNU = $(CFLAGS) -c
72 TEST6_AS_SRC = test6LS-powerpc.S
73 TEST6_AS_OBJ_BASE = $(basename $(TEST6_AS_SRC))
74
75 TESTLIB_FLAGS = -fpic -shared -g -Wl,-export-dynamic -Wl,-ldl
76 TESTLIB_FLAGS += $(LDFLAGS)
77 TESTSUITE_FLAGS += $(LDFLAGS)
78 MUTATOR_LDFLAGS += $(LDFLAGS)
79
80 # see discussion in make.module.tmpl for the format of this variable
81 MUTATEE_TEST9_EXTRA_LIB = 9.-L./ 9.-lInstMe
82
83 LIBS_LIBTESTSUITE = -ldl
84
85 STRIP_SO = strip -g
86
87 include ../make.module.tmpl
88
89 # Some ppc32_linux distributions require _XOPEN_SOURCE to be defined as 600
90 # to get the functions/types we require
91 CFLAGS   += -D_XOPEN_SOURCE=600
92 CXXFLAGS += -D_XOPEN_SOURCE=600
93 F77FLAGS += -D_XOPEN_SOURCE=600