star-meshtool

Mesh transformation
git clone git://git.meso-star.fr/star-meshtool.git
Log | Files | Refs | README | LICENSE

config.mk (2039B)


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