star-blackbody

Handling the Planck function
git clone git://git.meso-star.fr/star-blackbody.git
Log | Files | Refs | README | LICENSE

config.mk (2003B)


      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 AR = ar
     14 CC = cc
     15 LD = ld
     16 OBJCOPY = objcopy
     17 PKG_CONFIG = pkg-config
     18 RANLIB = ranlib
     19 
     20 ################################################################################
     21 # Dependencies
     22 ################################################################################
     23 PCFLAGS_SHARED =
     24 PCFLAGS_STATIC = --static
     25 PCFLAGS = $(PCFLAGS_$(LIB_TYPE))
     26 
     27 RSYS_VERSION = 0.14
     28 RSYS_CFLAGS = $$($(PKG_CONFIG) $(PCFLAGS) --cflags rsys)
     29 RSYS_LIBS = $$($(PKG_CONFIG) $(PCFLAGS) --libs rsys)
     30 
     31 ################################################################################
     32 # Compilation options
     33 ################################################################################
     34 WFLAGS =\
     35  -Wall\
     36  -Wcast-align\
     37  -Wconversion\
     38  -Wextra\
     39  -Wmissing-declarations\
     40  -Wmissing-prototypes\
     41  -Wshadow
     42 
     43 CFLAGS_HARDENED =\
     44  -D_FORTIFY_SOURCES=2\
     45  -fcf-protection=full\
     46  -fstack-clash-protection\
     47  -fstack-protector-strong
     48 
     49 CFLAGS_COMMON =\
     50  -std=c89\
     51  -pedantic\
     52  -fvisibility=hidden\
     53  -fstrict-aliasing\
     54  $(CFLAGS_HARDENED)\
     55  $(WFLAGS)
     56 
     57 CFLAGS_DEBUG = -g $(CFLAGS_COMMON)
     58 CFLAGS_RELEASE = -O3 -DNDEBUG $(CFLAGS_COMMON)
     59 CFLAGS = $(CFLAGS_$(BUILD_TYPE))
     60 
     61 CFLAGS_SO = $(CFLAGS) -fPIC
     62 CFLAGS_EXE = $(CFLAGS) -fPIE
     63 
     64 ################################################################################
     65 # Linker options
     66 ################################################################################
     67 LDFLAGS_HARDENED = -Wl,-z,relro,-z,now
     68 LDFLAGS_DEBUG = $(LDFLAGS_HARDENED)
     69 LDFLAGS_RELEASE = -s $(LDFLAGS_HARDENED)
     70 LDFLAGS = $(LDFLAGS_$(BUILD_TYPE))
     71 
     72 LDFLAGS_SO = $(LDFLAGS) -shared -Wl,--no-undefined
     73 LDFLAGS_EXE = $(LDFLAGS) -pie
     74 
     75 OCPFLAGS_DEBUG = --localize-hidden
     76 OCPFLAGS_RELEASE = --localize-hidden --strip-unneeded
     77 OCPFLAGS = $(OCPFLAGS_$(BUILD_TYPE))