# disable parallel make; problem with linking
.NOTPARALLEL:

CPLUSPLUS	= icpc
CC		= icc
AR      = xiar # needed for ipo (e.g., if SYS_OPT=-fast)
ARFLAGS = qc   # xiar doesn't recognize "-qc"

#  Makefile macros.  See `Makefile' for explanations.

# Additional defines:
SYS_DEFS	+= -imacros system/BigFileDefines.h #-pthread
# From user-defined options in Makefile:

ifeq ($(QUIET),yes)
  SYS_WARN	+= -w
else
  SYS_WARN	+= -Wall -Wno-unused -Wno-deprecated
endif

ifeq ($(DEBUG),yes)
  SYS_DEBUG	+= -g
endif

ifeq ($(FAST),yes)
  # Force minor optimizations:
  OPTIM		= -O 
endif

ifeq ($(OPTIM),none)
  SYS_OPT	+=
else
  ifeq ($(OPTIM),)
    SYS_OPT	+= -fast
  else
    SYS_OPT	+= $(OPTIM)
  endif
endif

ifeq ($(PROFILE),yes)
  SYS_DEBUG	+= #-pg TODO: use Intel equivalent
endif

ifeq ($(FORCE_DEBUG),yes)
  SYS_DEFS	+= -DFORCE_DEBUG
endif

ifeq ($(TRACK_MEMORY),yes)
  SYS_DEBUG     += -DTRACK_MEMORY
  SYS_MEMTRACK  += -include system/MemTracker.h
endif

ifeq ($(ASSERT),FAST)
  SYS_DEFS	+= -DFAST_ASSERT
endif

ifeq ($(OPEN_MP),yes)
  OMP_FLAGS	= -openmp
  OMP_LINK	= -openmp
endif

ifeq ($(GCOV),yes)
  SYS_DEBUG	+= #-fprofile-arcs -ftest-coverage
endif

SYS_INCS	+= -I.

SYS_LINK	+= $(SYS_OPT) # in case it's needed for ipo (e.g., with "-fast")
