star-vx

Structuring voxels for ray-tracing
git clone git://git.meso-star.fr/star-vx.git
Log | Files | Refs | README | LICENSE

config.mk (2052B)


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