1 # Copyright 2017, pEp Foundation
2 # This file is part of pEpEngine
3 # This file may be used under the terms of the GNU General Public License version 3
6 # See `doc/build-<your platform>.md` for documentation on how to build, and customize your build.
8 ######### General #########
9 # To use (only) system libraries, set all the *_INC and *_LIB variables to the empty string.
10 # All the *_INC and *_LIB variables are command line flags, not paths.
11 # Thus, all *_INC variables' values must start with "-I", and all *_LIB variables' values must start with "-L".
13 #BUILD_ON:=$(shell uname)
15 # This variable specifies the platform that the engine should be cross-compiled for.
16 #BUILD_FOR=$(BUILD_ON)
18 # Installation path prefix for libraries and binaries, except for system.db
21 # Installation path for system.db
22 #SYSTEM_DB=/usr/local/share/pEp/system.db
24 # Filename of the pEpEngine library
25 #TARGET=libpEpEngine.so
28 ######### C and C++ #########
31 # The following two variables will be appended to.
32 # You can thus not set them to a fixed value here.
41 #CFLAGS=-fPIC -fstrict-aliasing -fdiagnostics-color=always
45 #CFLAGS+= -w -O3 -DNDEBUG
47 # Additional CFLAGS used for compiling ASN1C-generated code
48 #CFLAGS_GENERATED=-D_DEFAULT_SOURCE
51 ######### C++ #########
52 #CXX=g++ -std=gnu++11 -pthread
54 #CXXFLAGS=-fdiagnostics-color=always -I../src -I../asn.1 $(ETPAN_INC) -w -O3 -DNDEBUG
57 ######### YML2 #########
58 #YML2_PATH=$(HOME)/yml2
60 #YML2_PROC=$(YML2_PATH)/yml2proc
62 #YML2_OPTS=--encoding=utf8
65 ######### asn1c #########
69 # asn1c include search flag
70 #ASN1C_INC=-I$(HOME)/include
73 ######### libetpan #########
74 # libetpan library search flag
75 #ETPAN_LIB=-L$(PREFIX)/lib
77 # libetpan include search flag
78 #ETPAN_INC=-I$(PREFIX)/include
81 ######### sqlite3 #########
82 # If empty (or undefined), compile sqlite3 from the sources shipped with the pEp distribution.
83 # Otherwise, use an sqlite3 implementation found in the OS's include/library paths.
84 #SQLITE3_FROM_OS=placeholder
87 ######### OpenPGP #########
89 # gpgconf is not available for old version of GPG, for example GPG 2.0.30. Override this variable, if you compile the engine for such an old version.
90 #GPG_CMD:=$(shell gpgconf --list-components | awk -F: '/^gpg:/ { print $$3; exit 0; }')
92 # Selects OpenPGP implementation. must be either `GPG` or `NETPGP`
95 # Path of libGPGME binary
96 #LIBGPGME=libgpgme.so.11
98 # libGPGME library search flag
101 # libGPGME include search flag
104 # NETPGP library search flag
105 #NETPGP_LIB=-L$(PREFIX)/lib
107 # libGPGME include search flag
108 #NETPGP_INC=-I$(PREFIX)/include
111 ######### Engine internals #########
112 # C macros (not environment variables) that can be overridden:
113 # DEFAULT_KEYSERVER - string with default keyserver
114 # CRASHDUMP_DEFAULT_LINES - number of log lines to deliver for crashdumps
116 # EXTRA_MACROS=-DDEFAULT_KEYSERVER=\"default-server.org\" -DCRASHDUMP_DEFAULT_LINES=23
119 # add this for running tests in debugger
120 #TEST_DEBUGGER=lldb --batch -o r