stardis-test

Test Stardis behaviors
git clone git://git.meso-star.fr/stardis-test.git
Log | Files | Refs | README | LICENSE

config.mk (2017B)


      1 VERSION = 0.0.0
      2 PREFIX = /usr/local
      3 
      4 LIB_TYPE = SHARED
      5 #LIB_TYPE = STATIC
      6 
      7 BUILD_TYPE = RELEASE
      8 #BUILD_TYPE = DEBUG
      9 
     10 ################################################################################
     11 # Tools
     12 ################################################################################
     13 CC = cc
     14 LD = ld
     15 PKG_CONFIG = pkg-config
     16 
     17 ################################################################################
     18 # Dependencies
     19 ################################################################################
     20 PCFLAGS_SHARED =
     21 PCFLAGS_STATIC = --static
     22 PCFLAGS = $(PCFLAGS_$(LIB_TYPE))
     23 
     24 PC_CFLAGS = $(PKG_CONFIG) $(PCFLAGS) --cflags
     25 PC_LIBS = $(PKG_CONFIG) $(PCFLAGS) --libs
     26 
     27 RSYS_VERSION = 0.14
     28 S3D_VERSION = 0.10
     29 S3DUT_VERSION = 0.4
     30 SSP_VERSION = 0.14
     31 SSTL_VERSION = 0.7
     32 
     33 ################################################################################
     34 # Compilation options
     35 ################################################################################
     36 WFLAGS =\
     37  -Wall\
     38  -Wcast-align\
     39  -Wconversion\
     40  -Wextra\
     41  -Wmissing-declarations\
     42  -Wmissing-prototypes\
     43  -Wshadow
     44 
     45 CFLAGS_HARDENED =\
     46  -D_FORTIFY_SOURCES=2\
     47  -fcf-protection=full\
     48  -fstack-clash-protection\
     49  -fstack-protector-strong
     50 
     51 CFLAGS_COMMON =\
     52  -std=c89\
     53  -pedantic\
     54  -fvisibility=hidden\
     55  -fstrict-aliasing\
     56  $(CFLAGS_HARDENED)\
     57  $(WFLAGS)
     58 
     59 CFLAGS_RELEASE = -O3 -DNDEBUG $(CFLAGS_COMMON)
     60 CFLAGS_DEBUG = -g $(CFLAGS_COMMON)
     61 CFLAGS = $(CFLAGS_$(BUILD_TYPE))
     62 
     63 CFLAGS_SO = $(CFLAGS) -fPIC
     64 CFLAGS_EXE = $(CFLAGS) -fPIE
     65 
     66 ################################################################################
     67 # Linker options
     68 ################################################################################
     69 LDFLAGS_HARDENED = -Wl,-z,relro,-z,now
     70 LDFLAGS_DEBUG = $(LDFLAGS_HARDENED)
     71 LDFLAGS_RELEASE = -s $(LDFLAGS_HARDENED)
     72 LDFLAGS = $(LDFLAGS_$(BUILD_TYPE))
     73 
     74 LDFLAGS_SO = $(LDFLAGS) -shared -Wl,--no-undefined
     75 LDFLAGS_EXE = $(LDFLAGS) -pie
     76 
     77 OCPFLAGS_DEBUG = --localize-hidden
     78 OCPFLAGS_RELEASE = --localize-hidden --strip-unneeded
     79 OCPFLAGS = $(OCPFLAGS_$(BUILD_TYPE))