Skip to content

Commit 38730d0

Browse files
committed
build: Clean up flag handling for examples
Fix ability to build examples from 32-bit builds. Remove the implicit rule usage, so that we know what flags are being used. Make the override of the FLAGS variables additive so that we don't wipe out FLAGS variables set in the environment. Signed-off-by: Brian Barrett <[email protected]> (cherry picked from commit 97294dc)
1 parent 11431a4 commit 38730d0

File tree

1 file changed

+39
-30
lines changed

1 file changed

+39
-30
lines changed

examples/Makefile

Lines changed: 39 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -20,15 +20,12 @@
2020
# $HEADER$
2121
#
2222

23-
# Use the Open MPI-provided wrapper compilers. Note that gmake
24-
# requires the CXX macro, while other versions of make (such as Sun's
25-
# make) require the CCC macro.
26-
27-
CC = mpicc
28-
CXX = mpic++
29-
CCC = mpic++
30-
FC = mpifort
31-
JAVAC = mpijavac
23+
# Use the Open MPI-provided wrapper compilers.
24+
25+
MPICC = mpicc
26+
MPICXX = mpic++
27+
MPIFC = mpifort
28+
MPIJAVAC = mpijavac
3229
SHMEMCC = shmemcc
3330
SHMEMFC = shmemfort
3431

@@ -37,10 +34,10 @@ SHMEMFC = shmemfort
3734
# gmake requires the CXXFLAGS macro, while other versions of make
3835
# (such as Sun's make) require the CCFLAGS macro.
3936

40-
CFLAGS = -g
41-
CXXFLAGS = -g
42-
CCFLAGS = -g
43-
FCFLAGS = -g
37+
CFLAGS += -g
38+
CXXFLAGS += -g
39+
CCFLAGS += -g
40+
FCFLAGS += -g
4441

4542
# Example programs to build
4643

@@ -124,47 +121,59 @@ clean:
124121

125122
# Don't rely on default rules for the Fortran and Java examples
126123

124+
hello_c: hello_c.c
125+
$(MPICC) $(CFLAGS) $(LDFLAGS) $? $(LDLIBS) -o $@
126+
ring_c: ring_c.c
127+
$(MPICC) $(CFLAGS) $(LDFLAGS) $? $(LDLIBS) -o $@
128+
connectivity_c: connectivity_c.c
129+
$(MPICC) $(CFLAGS) $(LDFLAGS) $? $(LDLIBS) -o $@
130+
131+
hello_cxx: hello_cxx.cc
132+
$(MPICXX) $(CXXFLAGS) $(LDFLAGS) $? $(LDLIBS) -o $@
133+
ring_cxx: ring_cxx.cc
134+
$(MPICXX) $(CXXFLAGS) $(LDFLAGS) $? $(LDLIBS) -o $@
135+
127136
hello_mpifh: hello_mpifh.f
128-
$(FC) $(FCFLAGS) $? -o $@
137+
$(MPIFC) $(FCFLAGS) $(LDFLAGS) $? $(LDLIBS) -o $@
129138
ring_mpifh: ring_mpifh.f
130-
$(FC) $(FCFLAGS) $? -o $@
139+
$(MPIFC) $(FCFLAGS) $(LDFLAGS) $? $(LDLIBS) -o $@
131140

132141
hello_usempi: hello_usempi.f90
133-
$(FC) $(FCFLAGS) $? -o $@
142+
$(MPIFC) $(FCFLAGS) $(LDFLAGS) $? $(LDLIBS) -o $@
134143
ring_usempi: ring_usempi.f90
135-
$(FC) $(FCFLAGS) $? -o $@
144+
$(MPIFC) $(FCFLAGS) $(LDFLAGS) $? $(LDLIBS) -o $@
136145

137146
hello_usempif08: hello_usempif08.f90
138-
$(FC) $(FCFLAGS) $? -o $@
147+
$(MPIFC) $(FCFLAGS) $(LDFLAGS) $? $(LDLIBS) -o $@
139148
ring_usempif08: ring_usempif08.f90
140-
$(FC) $(FCFLAGS) $? -o $@
149+
$(MPIFC) $(FCFLAGS) $(LDFLAGS) $? $(LDLIBS) -o $@
141150

142151
Hello.class: Hello.java
143-
$(JAVAC) Hello.java
152+
$(MPIJAVAC) Hello.java
144153
Ring.class: Ring.java
145-
$(JAVAC) Ring.java
154+
$(MPIJAVAC) Ring.java
146155

147156
hello_oshmem: hello_oshmem_c.c
148-
$(SHMEMCC) $(CFLAGS) $? -o $@
157+
$(SHMEMCC) $(CFLAGS) $(LDFLAGS) $? $(LDLIBS) -o $@
149158
hello_oshmemfh: hello_oshmemfh.f90
150-
$(SHMEMFC) $(FCFLAGS) $? -o $@
159+
$(SHMEMFC) $(FCFLAGS) $(LDFLAGS) $? $(LDLIBS) -o $@
151160

152161
ring_oshmem: ring_oshmem_c.c
153-
$(SHMEMCC) $(CFLAGS) $? -o $@
162+
$(SHMEMCC) $(CFLAGS) $(LDFLAGS) $? $(LDLIBS) -o $@
154163
ring_oshmemfh: ring_oshmemfh.f90
155-
$(SHMEMFC) $(FCFLAGS) $? -o $@
164+
$(SHMEMFC) $(FCFLAGS) $(LDFLAGS) $? $(LDLIBS) -o $@
156165

157166
oshmem_shmalloc: oshmem_shmalloc.c
158-
$(SHMEMCC) $(CCFLAGS) $? -o $@
167+
$(SHMEMCC) $(CFLAGS) $(LDFLAGS) $? $(LDLIBS) -o $@
159168

160169
oshmem_circular_shift: oshmem_circular_shift.c
161-
$(SHMEMCC) $(CFLAGS) $? -o $@
170+
$(SHMEMCC) $(CFLAGS) $(LDFLAGS) $? $(LDLIBS) -o $@
162171

163172
oshmem_max_reduction: oshmem_max_reduction.c
164-
$(SHMEMCC) $(CFLAGS) $? -o $@
173+
$(SHMEMCC) $(CFLAGS) $(LDFLAGS) $? $(LDLIBS) -o $@
165174

166175
oshmem_strided_puts: oshmem_strided_puts.c
167-
$(SHMEMCC) $(CFLAGS) $? -o $@
176+
$(SHMEMCC) $(CFLAGS) $(LDFLAGS) $? $(LDLIBS) -o $@
168177

169178
oshmem_symmetric_data: oshmem_symmetric_data.c
170-
$(SHMEMCC) $(CFLAGS) $? -o $@
179+
$(SHMEMCC) $(CFLAGS) $(LDFLAGS) $? $(LDLIBS) -o $@

0 commit comments

Comments
 (0)