config.mk (3366B)
1 # Copyright (C) 2021-2023 Centre National de la Recherche Scientifique 2 # Copyright (C) 2021-2023 INSA Lyon 3 # Copyright (C) 2021-2023 Institut Mines Télécom Albi-Carmaux 4 # Copyright (C) 2021-2023 |Méso|Star> (contact@meso-star.com) 5 # Copyright (C) 2021-2023 Institut Pascal 6 # Copyright (C) 2021-2023 PhotonLyX (info@photonlyx.com) 7 # Copyright (C) 2021-2023 Université de Lorraine 8 # Copyright (C) 2021-2023 Université Paul Sabatier 9 # Copyright (C) 2021-2023 Université Toulouse - Jean Jaurès 10 # 11 # This program is free software: you can redistribute it and/or modify 12 # it under the terms of the GNU General Public License as published by 13 # the Free Software Foundation, either version 3 of the License, or 14 # (at your option) any later version. 15 # 16 # This program is distributed in the hope that it will be useful, 17 # but WITHOUT ANY WARRANTY; without even the implied warranty of 18 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 19 # GNU General Public License for more details. 20 # 21 # You should have received a copy of the GNU General Public License 22 # along with this program. If not, see <http://www.gnu.org/licenses/>. 23 24 VERSION = 0.0.0 25 PREFIX = /usr/local 26 27 BUILD_TYPE = RELEASE 28 29 ################################################################################ 30 # Tools 31 ################################################################################ 32 BIBTEX = bibtex 33 CC = cc 34 LATEX = pdflatex 35 PKG_CONFIG = pkg-config 36 TANGLE = notangle 37 WEAVE = noweave 38 39 ################################################################################ 40 # Dependencies 41 ################################################################################ 42 RSYS_VERSION = 0.12 43 RSYS_INC = $$($(PKG_CONFIG) --cflags rsys) 44 RSYS_LIB = $$($(PKG_CONFIG) --libs rsys) 45 46 STAR-3D_VERSION = 0.8 47 STAR-3D_INC = $$($(PKG_CONFIG) --cflags s3d) 48 STAR-3D_LIB = $$($(PKG_CONFIG) --libs s3d) 49 50 STAR-MC_VERSION = 0.5 51 STAR-MC_INC = $$($(PKG_CONFIG) --cflags smc) 52 STAR-MC_LIB = $$($(PKG_CONFIG) --libs smc) 53 54 STAR-SP_VERSION = 0.12 55 STAR-SP_INC = $$($(PKG_CONFIG) --cflags star-sp) 56 STAR-SP_LIB = $$($(PKG_CONFIG) --libs star-sp) 57 58 INCS=$(RSYS_INC) $(STAR-3D_INC) $(STAR-MC_INC) $(STAR-SP_INC) 59 LIBS=$(RSYS_LIB) $(STAR-3D_LIB) $(STAR-MC_LIB) $(STAR-SP_LIB) 60 61 ################################################################################ 62 # Compilation options 63 ################################################################################ 64 WFLAGS =\ 65 -Wall\ 66 -Wconversion\ 67 -Wextra\ 68 -Wmissing-declarations\ 69 -Wmissing-prototypes\ 70 -Wshadow 71 72 CFLAGS_COMMON =\ 73 -std=c89\ 74 -pedantic\ 75 -fPIC\ 76 -fvisibility=hidden\ 77 -fstrict-aliasing\ 78 $(WFLAGS)\ 79 $(INCS) 80 81 CFLAGS_RELEASE = -O2 -DNDEBUG $(CFLAGS_COMMON) 82 CFLAGS_DEBUG = -g $(CFLAGS_COMMON) 83 CFLAGS = $(CFLAGS_$(BUILD_TYPE)) 84 85 ################################################################################ 86 # Linker options 87 ################################################################################ 88 LDFLAGS_COMMON = -Wl,--no-undefined $(LIBS) 89 90 LDFLAGS_DEBUG = $(LDFLAGS_COMMON) 91 LDFLAGS_RELEASE = -s $(LDFLAGS_COMMON) 92 LDFLAGS = $(LDFLAGS_$(BUILD_TYPE)) 93 94 ################################################################################ 95 # Compilation options 96 ################################################################################ 97 WEAVE_FLAGS = -index -delay -v 98 99 TANGLE_FLAGS_DEBUG = -L 100 TANGLE_FLAGS_RELEASE = 101 TANGLE_FLAGS = $(TANGLE_FLAGS_$(BUILD_TYPE))