123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222 |
- # Makefile.in
- #
- # Copyright © 2012, 2013 Brandon Invergo <brandon@invergo.net>
- # Copyright © 2014, 2015 Christopher Allan Webber <cwebber@dustycloud.org>
- #
- # Copying and distribution of this file, with or without modification,
- # are permitted in any medium without royalty provided the copyright
- # notice and this notice are preserved. This file is offered as-is,
- # without any warranty.
- # List whatever files you want to include in your source distribution here.
- # You can include whole directories but note that *everything* under that
- # directory will be included
- DISTFILES = PKG-INFO Makefile.in configure setup.py install-sh
- DESTDIR =
- VPATH = @srcdir@
- PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
- PACKAGE_NAME = @PACKAGE_NAME@
- PACKAGE_STRING = @PACKAGE_STRING@
- PACKAGE_TARNAME = @PACKAGE_TARNAME@
- PACKAGE_DISTNAME = ${PACKAGE_NAME}-${PACKAGE_VERSION}
- PACKAGE_URL = @PACKAGE_URL@
- PACKAGE_VERSION = @PACKAGE_VERSION@
- PATH_SEPARATOR = @PATH_SEPARATOR@
- PYTHON = @PYTHON@
- VIRTUALENV = @VIRTUALENV@
- SHELL = @SHELL@
- MKDIR_P = @MKDIR_P@
- INSTALL = @INSTALL@
- INSTALL_PROGRAM = @INSTALL_PROGRAM@
- INSTALL_DATA = @INSTALL_DATA@
- INSTALL_SCRIPT = @INSTALL_SCRIPT@
- docdir = @docdir@
- dvidir = @dvidir@
- exec_prefix = @exec_prefix@
- htmldir = @htmldir@
- includedir = @includedir@
- infodir = @infodir@
- prefix = @prefix@
- srcdir = @srcdir@
- abs_srcdir = @abs_srcdir@
- datadir = @datadir@
- datarootdir = @datarootdir@
- pkgdatadir = $(datadir)/@PACKAGE_NAME@
- pkgincludedir = $(includedir)/@PACKAGE_NAME@
- PYTHONPATH = $(pythondir)$(PATH_SEPARATOR)$(DESTDIR)$(pythondir)
- USE_PYTHON3 = @USE_PYTHON3@
- EXTLIB_INSTALLS = extlib/jquery extlib/video.js extlib/leaflet extlib/tinymce
- # pkgpythondir = @pkgpythondir@
- # pkgpyexecdir = @pkgpyexecdir@
- # pythondir = @pythondir@
- # pyexecdir = @pyexecdir@
- # SPHINXBUILD = @SPHINXBUILD@
- # POSTGRES = @POSTGRES@
- # Maybe add a virtualenv prefix to a command
- ifneq ($(VIRTUALENV),no)
- # virtualenv specified to be included by config (default)
- # ... we only use virtualenv for local development, we don't
- # auto-deploy to it.
- maybe_venved = ./bin/
- maybe_venved_python = ./bin/python
- # Yes, build the virtualenv as a dependency!
- maybe_venv_dep = virtualenv
- # And to clean up!
- maybe_venv_clean = clean-virtualenv
- else
- # --without-virtualenv must have been passed in... don't build
- # a local virtualenv or use such commands
- maybe_venved =
- maybe_venved_python = $(PYTHON)
- # No need for commands to build virtualenv as a dependency!
- maybe_venv_dep =
- # Nor to clean up!
- maybe_venv_clean =
- endif
- .PHONY: all install uninstall distclean info install-html html \
- install-pdf pdf install-dvi dvi install-ps ps clean dist check \
- installdirs i18n virtualenv docs extlib
- # update postgresql
- all: develop
- docs:
- ifneq ($(VIRTUALENV),no)
- source bin/activate && cd docs && make html
- else
- cd docs && make html
- endif
- # In the future we may provide more options than just npm/bower here
- # eg, we may support guix updating.
- extlib:
- ./devtools/update_extlib.sh
- develop: $(maybe_venv_dep) i18n mediagoblin.ini
- # NEVER clobber a user's mediagoblin.ini once they've defined it
- mediagoblin.ini:
- cp -n mediagoblin.example.ini mediagoblin.ini
- # base-configs: paste.ini mediagoblin.example.ini
- install: installdirs
- $(maybe_venved_python) $(srcdir)/setup.py install --prefix=$(DESTDIR)$(prefix)
- # In the future, maybe we can compile the individual .po files here?
- i18n: $(maybe_venv_dep)
- ./devtools/compile_translations.sh
- ifneq ($(VIRTUALENV),no)
- ./bin/python:
- rm -f ./bin/python
- ${VIRTUALENV} --system-site-packages --python=$(PYTHON) .
- ./bin/python setup.py develop --upgrade
- virtualenv: bin/python extlib
- clean-virtualenv:
- rm -rf ./bin/
- rm -rf ./lib/
- rm -rf ./include/
- endif
- # setup.py doesn't (yet) support an uninstall command, so until it does, you
- # must manually remove everything that was installed here. The following example
- # should remove a basic package installed via setup.py, but please double- and
- # triple-check it so that you don't remove something you shouldn't!
- # Be sure to remove any extra files you install, such as binaries or documentation!
- #
- # uninstall:
- # rm -rvf $(pkgpythondir)
- # rm -v $(pythondir)/$(PACKAGE_DISTNAME)-*.egg-info
- #
- # We don't know what this does yet.
- # Originally:
- ## Just use the usual setup.py clean command
- #clean:
- # $(maybe_venved_python) setup.py clean
- clean:
- @echo "No rule to clean house, yet."
- @echo "distclean works but might do more than you want. :)"
- # It's not obvious to me whether the virtualenv/bower/npm things should be
- # auto-cleaned as part of distclean. I'm leaning towards "yes" for now but
- # I'm not really happy about that.
- # Clean up the output of configure
- distclean: $(maybe_venv_clean)
- rm -vf $(srcdir)/config.log
- rm -vf $(srcdir)/config.status
- rm -rvf $(srcdir)/autom4te.cache
- rm -vf $(srcdir)/aclocal.m4
- rm -rf $(EXTLIB_INSTALLS)
- rm -rf node_modules
- rm -vf $(srcdir)/Makefile
- check:
- ./runtests.sh
- ###########################################################################
- # These things aren't really tested / supported yet.
- ###########################################################################
- ## NOTE: We don't use this yet, we use ./devtools/maketarball.sh
- ## We can't switch out ./devtools/maketarball.sh in here because
- ## it requires a git revision as a first argument, which
- ## doesn't always work here
- dist: $(maybe_venv_dep)
- $(maybe_venved_python) setup.py sdist
- # setup.py might complain if a directory doesn't exist so just in case, make the directory
- # here
- installdirs:
- $(MKDIR_P) $(DESTDIR)$(prefix)
- ######################
- # Needs to be updated?
- ######################
- # The following show how to install documentation. In this example,
- # docs are built from a separate Makefile contained in the docs
- # directory which uses the SPHINXBUILD variable to store the location
- # of the sphinx-build (Python doc tool) binary to use.
- $(DESTDIR)$(infodir)/mediagoblin.info: docs/build/texinfo/mediagoblin.info
- $(POST_INSTALL)
- $(INSTALL_DATA) @< $(DESTDIR)$@
- if $(SHELL) -c 'install-info --version' >/dev/null 2>&1; then
- install-info --dir-file=$(DESTDIR)$(infodir)/dir \
- $(DESTDIR)$(infodir)/foo.info;
- else true; fi
- info: docs/build/texinfo/mediagoblin.info
- docs/build/texinfo/mediagoblin.info: $(wildcard docs/source/*)
- ifneq ($(VIRTUALENV),no)
- source bin/activate && cd docs && make info
- else
- cd docs && make info
- endif
- install-html: html installdirs
- $(INSTALL_DATA) docs/build/html/* $(DESTDIR)$(htmldir)
- html: docs
|