stardis-solver

Solve coupled heat transfers
git clone git://git.meso-star.fr/stardis-solver.git
Log | Files | Refs | README | LICENSE

config.mk (3749B)


      1 VERSION_MAJOR = 0
      2 VERSION_MINOR = 16
      3 VERSION_PATCH = 2
      4 VERSION = $(VERSION_MAJOR).$(VERSION_MINOR).$(VERSION_PATCH)
      5 PREFIX = /usr/local
      6 
      7 LIB_TYPE = SHARED
      8 #LIB_TYPE = STATIC
      9 
     10 BUILD_TYPE = RELEASE
     11 #BUILD_TYPE = DEBUG
     12 
     13 # Defines whether distributed parallelism  is supported. Any value other
     14 # than MPI disables its supports. So, simply comment the macro to
     15 # deactivate it.
     16 DISTRIB_PARALLELISM = MPI
     17 
     18 # MPI pkg-config file
     19 MPI_PC = ompi
     20 
     21 ################################################################################
     22 # Tools
     23 ################################################################################
     24 AR = ar
     25 CC = cc
     26 LD = ld
     27 OBJCOPY = objcopy
     28 PKG_CONFIG = pkg-config
     29 RANLIB = ranlib
     30 
     31 ################################################################################
     32 # Dependencies
     33 ################################################################################
     34 PCFLAGS_SHARED =
     35 PCFLAGS_STATIC = --static
     36 PCFLAGS = $(PCFLAGS_$(LIB_TYPE))
     37 
     38 MPI_VERSION = 2
     39 MPI_CFLAGS = $$($(PKG_CONFIG) $(PCFLAGS) --cflags $(MPI_PC))
     40 MPI_LIBS = $$($(PKG_CONFIG) $(PCFLAGS) --libs $(MPI_PC))
     41 
     42 RSYS_VERSION = 0.14
     43 RSYS_CFLAGS = $$($(PKG_CONFIG) $(PCFLAGS) --cflags rsys)
     44 RSYS_LIBS = $$($(PKG_CONFIG) $(PCFLAGS) --libs rsys)
     45 
     46 S2D_VERSION = 0.7
     47 S2D_CFLAGS = $$($(PKG_CONFIG) $(PCFLAGS) --cflags s2d)
     48 S2D_LIBS = $$($(PKG_CONFIG) $(PCFLAGS) --libs s2d)
     49 
     50 S3D_VERSION = 0.10
     51 S3D_CFLAGS = $$($(PKG_CONFIG) $(PCFLAGS) --cflags s3d)
     52 S3D_LIBS = $$($(PKG_CONFIG) $(PCFLAGS) --libs s3d)
     53 
     54 SENC2D_VERSION = 0.5
     55 SENC2D_CFLAGS = $$($(PKG_CONFIG) $(PCFLAGS) --cflags senc2d)
     56 SENC2D_LIBS = $$($(PKG_CONFIG) $(PCFLAGS) --libs senc2d)
     57 
     58 SENC3D_VERSION = 0.7.2
     59 SENC3D_CFLAGS = $$($(PKG_CONFIG) $(PCFLAGS) --cflags senc3d)
     60 SENC3D_LIBS = $$($(PKG_CONFIG) $(PCFLAGS) --libs senc3d)
     61 
     62 SSP_VERSION = 0.14
     63 SSP_CFLAGS = $$($(PKG_CONFIG) $(PCFLAGS) --cflags star-sp)
     64 SSP_LIBS = $$($(PKG_CONFIG) $(PCFLAGS) --libs star-sp)
     65 
     66 SWF_VERSION = 0.0
     67 SWF_CFLAGS = $$($(PKG_CONFIG) $(PCFLAGS) --cflags swf)
     68 SWF_LIBS = $$($(PKG_CONFIG) $(PCFLAGS) --libs swf)
     69 
     70 # For tests only
     71 S3DUT_VERSION = 0.4
     72 S3DUT_CFLAGS = $$($(PKG_CONFIG) $(PCFLAGS) --cflags s3dut)
     73 S3DUT_LIBS = $$($(PKG_CONFIG) $(PCFLAGS) --libs s3dut)
     74 
     75 DPDC_CFLAGS =\
     76  $(RSYS_CFLAGS)\
     77  $(S2D_CFLAGS)\
     78  $(S3D_CFLAGS)\
     79  $(SENC2D_CFLAGS)\
     80  $(SENC3D_CFLAGS)\
     81  $(SSP_CFLAGS)\
     82  $(SWF_CFLAGS)\
     83  $($(DISTRIB_PARALLELISM)_CFLAGS)\
     84  -fopenmp
     85 DPDC_LIBS =\
     86  $(RSYS_LIBS)\
     87  $(S2D_LIBS)\
     88  $(S3D_LIBS)\
     89  $(SENC2D_LIBS)\
     90  $(SENC3D_LIBS)\
     91  $(SSP_LIBS)\
     92  $(SWF_LIBS)\
     93  $($(DISTRIB_PARALLELISM)_LIBS)\
     94  -lm\
     95  -fopenmp
     96 
     97 ################################################################################
     98 # Compilation options
     99 ################################################################################
    100 WFLAGS =\
    101  -Wall\
    102  -Wcast-align\
    103  -Wconversion\
    104  -Wextra\
    105  -Wmissing-declarations\
    106  -Wmissing-prototypes\
    107  -Wshadow
    108 
    109 CFLAGS_HARDENED =\
    110  -D_FORTIFY_SOURCES=2\
    111  -fcf-protection=full\
    112  -fstack-clash-protection\
    113  -fstack-protector-strong
    114 
    115 CFLAGS_COMMON =\
    116  -std=c89\
    117  -pedantic\
    118  -fvisibility=hidden\
    119  -fstrict-aliasing\
    120  $(CFLAGS_HARDENED)\
    121  $(WFLAGS)
    122 
    123 CFLAGS_RELEASE = -O3 -DNDEBUG $(CFLAGS_COMMON)
    124 CFLAGS_DEBUG = -g $(CFLAGS_COMMON)
    125 CFLAGS = $(CFLAGS_$(BUILD_TYPE))
    126 
    127 CFLAGS_SO = $(CFLAGS) -fPIC
    128 CFLAGS_EXE = $(CFLAGS) -fPIE
    129 
    130 ################################################################################
    131 # Linker options
    132 ################################################################################
    133 LDFLAGS_HARDENED = -Wl,-z,relro,-z,now
    134 LDFLAGS_DEBUG = $(LDFLAGS_HARDENED)
    135 LDFLAGS_RELEASE = -s $(LDFLAGS_HARDENED)
    136 LDFLAGS = $(LDFLAGS_$(BUILD_TYPE))
    137 
    138 LDFLAGS_SO = $(LDFLAGS) -shared -Wl,--no-undefined
    139 LDFLAGS_EXE = $(LDFLAGS) -pie
    140 
    141 OCPFLAGS_DEBUG = --localize-hidden
    142 OCPFLAGS_RELEASE = --localize-hidden --strip-unneeded
    143 OCPFLAGS = $(OCPFLAGS_$(BUILD_TYPE))