forked from OpenEdition/lodel2
-
Notifications
You must be signed in to change notification settings - Fork 0
/
configure.ac
113 lines (98 loc) · 3.7 KB
/
configure.ac
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
#
# This file is part of Lodel 2 (https://github.com/OpenEdition)
#
# Copyright (C) 2015-2017 Cléo UMS-3287
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published
# by the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
AC_INIT([lodel], [0.1], [contact@openedition.org])
AM_INIT_AUTOMAKE
AC_CONFIG_FILES([Makefile \
lodel/buildconf.py.am \
lodel/Makefile \
lodel/auth/Makefile \
lodel/editorial_model/Makefile \
lodel/editorial_model/translator/Makefile \
lodel/leapi/Makefile \
lodel/leapi/datahandlers/Makefile \
lodel/plugin/Makefile \
lodel/settings/Makefile \
lodel/validator/Makefile \
lodel/mlnamedobject/Makefile \
lodel/utils/Makefile \
progs/Makefile \
progs/slim/Makefile \
lodel/plugins/Makefile \
lodelsites/Makefile \
])
###
#Kind of dangerous mix between default aclocal's macro and pyconfigure macros...
#
#pyconfigure macros are prefixed by PC_
###
AC_PROG_LN_S
m4_include([m4/python.m4]) # Patched version of aclocal python.m4 file
m4_include([m4/python_pyconfigure.m4]) #Renamed because we use a patched version of aclocal python.m4 file
m4_define(python_min_ver, 3.4.2)
AM_PATH_PYTHON([3.4.2]) #init aclocal's default python support
PC_INIT([3.4.2], [3.6]) #init pyconfigure aclocal's macro
PC_PYTHON_VERIFY_VERSION([>=], python_min_ver, ,
[AC_MSG_ERROR(Python interpreter too old)])
AC_ARG_VAR([SITEPACKAGES], [If installed in /usr or /System* specify the name of the site directory (default value "site-packages"])
PC_PYTHON_CHECK_MODULE([lxml], ,
AC_MSG_ERROR([Module lxml not found but mandatory for lodel2]))
#Webui deps
AC_SUBST([WEBUI], 'True')
PC_PYTHON_CHECK_MODULE_VERSION([jinja2], [2.7.3], [], ,
AC_MSG_WARN([Module jinja2 not found but mandatory for default web interface])
AC_SUBST([WEBUI], 'False'))
PC_PYTHON_CHECK_MODULE_VERSION([werkzeug], [0.9], [], ,
AC_MSG_WARN([Module werkzeug not found but mandatory for default web interface])
AC_SUBST([WEBUI], 'False'))
#Mongo datasource deps
AC_SUBST([PYMONGO], 'True') #Can be found in lodel/buildconf.py
PC_PYTHON_CHECK_MODULE_VERSION([pymongo], [2.7], [2.8], ,
AC_MSG_WARN([Module pymongo not found. The mongodb datasource will not be able to work])
AC_SUBST([PYMONGO], 'False')
)
#Documentation checks
AC_SUBST([DOCOK], 'OK')
AC_CHECK_PROGS([DOXYGEN], [doxygen])
if test -z "$DOXYGEN";
then
AC_MSG_WARN([Doxygen not found - You will not be able to generate documentation])
AC_SUBST([DOCOK], '')
fi
AC_CHECK_PROGS([GRAPHVIZ], [dot neato twopi])
if test -z "$GRAPHVIZ";
then
AC_MSG_WARN([Graphviz not found (dot executable missing) - You will not be able to generate documentation])
AC_SUBST([DOCOK], '')
fi
AC_CHECK_PROGS([DOXYPY], [doxypy])
if test -z "$DOXYPY";
then
AC_MSG_WARN([Doxypy script not found (https://pypi.python.org/pypi/doxypy/0.3) - You will not be able to generate documentation])
AC_SUBST([DOCOK], '')
fi
AC_OUTPUT
if test -z "$DOCOK";
then AC_MSG_WARN([You will not be able to generate doxygen documentation. See up for reasons])
fi
if test "$WEBUI" = 'False';
then AC_MSG_WARN([Mandatory components are missing for running default web UI. See up for reasons])
fi
if test "$PYMONGO" = 'False';
then AC_MSG_WARN([You will not be able to user mongodb datasource. See up for reasons])
fi