Fix EXIF rotation to make the image portrait on demand
[mediagoblin.git] / configure.ac
CommitLineData
e342891a
BI
1dnl configure.ac
2dnl
3dnl Copyright 2012, 2013 Brandon Invergo <brandon@invergo.net>
07778a69 4dnl 2014 MediaGoblin contributors (see MediaGoblin's AUTHORS)
e342891a
BI
5dnl
6dnl Copying and distribution of this file, with or without modification,
7dnl are permitted in any medium without royalty provided the copyright
8dnl notice and this notice are preserved. This file is offered as-is,
9dnl without any warranty.
10
11dnl#########
12dnl README #
13dnl#########
14dnl
15dnl This is a basic Autoconf configure.ac file for Python-based
16dnl projects. It is not intended to be used as-is, but rather to be
17dnl modified to the specific needs of the project.
18dnl
19dnl Lines prefixed with "dnl" are comments that are automatically
20dnl removed by Autoconf/M4, thus they will not appear in the generated
21dnl configure script (see the M4 documentation for more information).
22dnl Such comments are used in this file to communicate information to
23dnl you, the developer. In some cases, the comments contain extra
24dnl macros that you might consider including in your configure script.
25dnl If you wish to include them, simply remove the "dnl" from the
26dnl beginning of the line.
27dnl
28dnl Lines prefixed with "#" are comments that will appear in the
29dnl generated configure script. These comments are thus used to clarify
30dnl to the user what is happening in that script
31dnl
32dnl Wherever pyconfigure-specific macros are used, extra comments are
33dnl included to describe the macros.
34
35dnl######################
36dnl Package Information #
37dnl######################
38
39dnl----
40dnl Initialize Autoconf with the package metadata
41dnl The arguments have been set via the project's PKG-INFO file
42dnl and correspond to:
43dnl
44dnl 1) package name (i.e. foo)
45dnl 2) package version (i.e. 1.2)
46dnl 3) bug/info/project email address (i.e. bug-foo@gnu.org)
47dnl----
48dnl
e6121708
CAW
49
50dnl # valid version formats:
51dnl # * x.y - final release
52dnl # * x.ya1 - alpha 1
53dnl # * x.yb1 - beta 1
54dnl # * x.yrc1 - release candidate 1
55dnl # * x.y.dev - dev
56dnl
57dnl # see http://www.python.org/dev/peps/pep-0386/
58
fbca3074 59AC_INIT([mediagoblin], [1.0.dev], [cwebber@gnu.org])
e342891a 60
a9dc855a 61
e342891a
BI
62dnl----
63dnl Load macros from the m4/ directory. If you plan to write new
64dnl macros, put them in files in this directory.
65dnl----
66dnl
0e58f810 67dnl AC_CONFIG_MACRO_DIR([m4])
e342891a
BI
68
69
07778a69
CAW
70dnl # The default prefix should be changed from /usr/local. Set it, as in
71dnl # the documentation, to /srv/mediagoblin.example.org/mediagoblin/
72dnl AC_PREFIX_DEFAULT([`pwd`])
dc85ee8c
BI
73
74
e342891a
BI
75dnl###########################
76dnl Program/command support #
77dnl###########################
78dnl
79dnl In this section, we check for the presence of important commands
80dnl and programs.
81
50e53328
CAW
82dnl--A bit simpler python init----------------------------------------
83dnl Expect python2.7 or python2.6 unless --with-python3 is given.
84dnl----
85
86
96f9c530
CAW
87AC_ARG_WITH([python3],
88 [AS_HELP_STRING([--with-python3], [Set up to use Python 3 by default.])],
89 [],
90 [with_python3=no])
91AS_IF([test "x$with_python3" != xno],
cf948352 92 AC_CHECK_PROGS([PYTHON], [python3], [none])
41c6732e 93 AC_SUBST([USE_PYTHON3], [true])
96f9c530
CAW
94 AS_IF([test "x$PYTHON" = xnone],
95 [AC_MSG_FAILURE(
cf948352 96 [--with-python3 given but no acceptable python3 could be found])]),
15c5b332 97 AC_CHECK_PROGS([PYTHON], [python2.7], [none])
41c6732e 98 AC_SUBST([USE_PYTHON3], [false])
96f9c530
CAW
99 AS_IF([test "x$PYTHON" = xnone],
100 [AC_MSG_FAILURE(
15c5b332 101 [No acceptable python (2.7) could be found])]))
96f9c530 102
e342891a
BI
103dnl----
104dnl With the following set of macros, we implement an option
105dnl "--with-virtualenv", which the user can pass to the configure
106dnl script in order to install to a Virtualenv (AC_ARG_WITH). If the
107dnl option is specified by the user, then we check if the program is
108dnl available, checking both for "virtualenv" and "virtualenv2"
109dnl (AC_CHECK_PROGS)
110dnl----
111dnl
07778a69 112# Support doing development in a virtualenv via the --with-virtualenv
e342891a
BI
113# configure flag
114AC_ARG_WITH([virtualenv],
94af3587
CAW
115 [AS_HELP_STRING([--without-virtualenv],
116 [don't install a Python virtualenv for the user])],
e342891a 117 [],
07778a69 118 [with_virtualenv=yes])
e342891a
BI
119AS_IF([test "x$with_virtualenv" != xno],
120 AC_CHECK_PROGS([VIRTUALENV], [virtualenv virtualenv3 virtualenv2], [no])
121 AS_IF([test "x$VIRTUALENV" = xno],
122 [AC_MSG_FAILURE(
123 [--with-virtualenv given but virtualenv could not be found])]),
124 AC_SUBST([VIRTUALENV], [no]))
125AC_ARG_VAR([VIRTUALENV_FLAGS], [flags to pass to the virtualenv command])
126
127dnl----
128dnl If the program uses sphinx-build to build documentation, uncomment
129dnl this to create a SPHINXBUILD variable in the Makefile pointing to
130dnl the program. Thus, the user would specify
131dnl SPHINXBUILD=/path/to/sphinx-build as an argument to the configure
132dnl script. Since building the documentation should be optional, just
133dnl print a warning. If the program uses some other documentation
134dnl system, you can do something similar with it.
135dnl----
136dnl
96f9c530
CAW
137dnl # Check for sphinx-build
138dnl AC_CHECK_PROGS([SPHINXBUILD], [sphinx-build sphinx-build3 sphinx-build2], [no])
139dnl AS_IF([test "x$SPHINXBUILD" = xno],
140dnl AC_MSG_WARN(sphinx-build is required to build documentation))
e342891a
BI
141
142
143dnl----
144dnl These two are standard Autoconf macros which check for the
145dnl presence of some programs that we will use in the Makefile.
146dnl----
147dnl
148AC_PROG_MKDIR_P
149AC_PROG_INSTALL
150
96f9c530 151dnl--MediaGoblin specific commands/variables ------------------------
07778a69
CAW
152
153
e342891a
BI
154dnl#########
155dnl Finish #
156dnl#########
157
158dnl Define the files to be configured
eb8a6ba0 159AC_CONFIG_FILES([Makefile])
07778a69 160
e342891a
BI
161dnl Generate config.status
162AC_OUTPUT