@@ -17,15 +17,24 @@ NETLIB_LAPACK_DIR = $(TOPDIR)/lapack-netlib
1717# http://stackoverflow.com/questions/4029274/mingw-and-make-variables
1818# - Default value is 'cc' which is not always a valid command (e.g. MinGW).
1919ifeq ($(origin CC),default)
20+
21+ # Check if $(CC) refers to a valid command and set the value to gcc if not
22+ ifneq ($(findstring cmd.exe,$(SHELL)),)
23+ ifeq ($(shell where $(CC) 2>NUL),)
2024CC = gcc
21- # Change the default compile to clang on Mac OSX.
22- # http://stackoverflow.com/questions/714100/os-detecting-makefile
23- UNAME_S := $(shell uname -s)
24- ifeq ($(UNAME_S),Darwin)
25- CC = clang
26- # EXTRALIB += -Wl,-no_compact_unwind
27- endif
2825endif
26+ else # POSIX-ish
27+ ifeq ($(shell command -v $(CC) 2>/dev/null),)
28+ ifeq ($(shell uname -s),Darwin)
29+ CC = clang
30+ # EXTRALIB += -Wl,-no_compact_unwind
31+ else
32+ CC = gcc
33+ endif # Darwin
34+ endif # CC exists
35+ endif # Shell is sane
36+
37+ endif # CC is set to default
2938
3039# Default Fortran compiler (FC) is selected by f_check.
3140
@@ -175,6 +184,10 @@ endif
175184
176185endif
177186
187+ ifndef NUM_PARALLEL
188+ NUM_PARALLEL = 1
189+ endif
190+
178191ifndef NUM_THREADS
179192NUM_THREADS = $(NUM_CORES)
180193endif
@@ -230,7 +243,7 @@ endif
230243MD5SUM = md5 -r
231244endif
232245
233- ifeq ($( OSNAME), FreeBSD)
246+ ifneq (,$(findstring $( OSNAME), FreeBSD OpenBSD DragonFly) )
234247MD5SUM = md5 -r
235248endif
236249
@@ -424,7 +437,7 @@ CCOMMON_OPT += -fopenmp
424437endif
425438
426439ifeq ($(C_COMPILER), INTEL)
427- CCOMMON_OPT += -openmp
440+ CCOMMON_OPT += -fopenmp
428441endif
429442
430443ifeq ($(C_COMPILER), PGI)
@@ -555,9 +568,14 @@ CCOMMON_OPT += -march=mips64
555568FCOMMON_OPT += -march=mips64
556569endif
557570
571+ ifeq ($(CORE), 1004K)
572+ CCOMMON_OPT += -mips32r2 $(MSA_FLAGS)
573+ FCOMMON_OPT += -mips32r2 $(MSA_FLAGS)
574+ endif
575+
558576ifeq ($(CORE), P5600)
559- CCOMMON_OPT += -mips32r5 -mnan=2008 -mtune=p5600 $(MSA_FLAGS)
560- FCOMMON_OPT += -mips32r5 -mnan=2008 -mtune=p5600 $(MSA_FLAGS)
577+ CCOMMON_OPT += -mips32r5 -mnan=2008 -mtune=p5600 $(MSA_FLAGS)
578+ FCOMMON_OPT += -mips32r5 -mnan=2008 -mtune=p5600 $(MSA_FLAGS)
561579endif
562580
563581ifeq ($(CORE), I6400)
@@ -704,7 +722,7 @@ FCOMMON_OPT += -i8
704722endif
705723endif
706724ifeq ($(USE_OPENMP), 1)
707- FCOMMON_OPT += -openmp
725+ FCOMMON_OPT += -fopenmp
708726endif
709727endif
710728
@@ -952,6 +970,8 @@ endif
952970
953971CCOMMON_OPT += -DMAX_CPU_NUMBER=$(NUM_THREADS)
954972
973+ CCOMMON_OPT += -DMAX_PARALLEL_NUMBER=$(NUM_PARALLEL)
974+
955975ifdef USE_SIMPLE_THREADED_LEVEL3
956976CCOMMON_OPT += -DUSE_SIMPLE_THREADED_LEVEL3
957977endif
0 commit comments