Commit fe8ad539 authored by Sébastien Luttringer's avatar Sébastien Luttringer
Browse files

Move to autotools

- Remove custom makefile
- Remove setup.py
parent addee15f
Loading
Loading
Loading
Loading

MAINTAINERS

deleted100644 → 0
+0 −1
Original line number Diff line number Diff line
Sébastien Luttringer
+44 −0
Original line number Diff line number Diff line
# -*- python -*-
# -*- coding: utf-8 -*-

# This file is part of Installsystems.
#
# Installsystems is free software: you can redistribute it and/or modify
@@ -16,36 +13,32 @@
# You should have received a copy of the GNU Lesser General Public License
# along with Installsystems.  If not, see <http://www.gnu.org/licenses/>.

from setuptools import setup
import os
import sys
import installsystems
import subprocess

# Build manpage
subprocess.call(['rst2man', 'doc/is.1.rst', 'doc/is.1'])

# Retrieval of version

ldesc = open(os.path.join(os.path.dirname(__file__), 'README')).read()

setup(
    name=installsystems.canonical_name,
    version=installsystems.version,
    description='InstallSystems',
    long_description=ldesc,
    author='Sébastien Luttringer',
    author_email='sebastien.luttringer@smartjog.com',
    license='LGPL3',
    packages=[ 'installsystems' ],
    scripts=[ 'bin/is' ],
    data_files=(
        ('/etc/installsystems/', ('samples/repository.conf',
                                  'samples/installsystems.conf')),
        ('/etc/bash_completion.d/', ('completion/bash/is',)),
        ),
    classifiers=[
        'Operating System :: Unix',
        'Programming Language :: Python',
        ],
    )
bashcompdir=@bashcompdir@
zshcompdir=@zshcompdir@

SUBDIRS = doc

EXTRA_DIST = COPYRIGHT LICENSE \
	misc/installsystems.conf misc/repository.conf \
	misc/zsh-completion misc/bash-completion

dist_doc_DATA = README COPYRIGHT LICENSE AUTHORS DEPENDENCIES

# main binary
dist_bin_SCRIPTS = bin/is

# python library
installsystemsdir=$(pythondir)/installsystems
installsystems_PYTHON = installsystems/*.py

CLEANFILES = $(bin_SCRIPTS)

install-exec-hook:
	ln -fs is $(DESTDIR)$(bindir)/installsystems
	install -dm755 $(DESTDIR)$(sysconfdir)/installsystems $(DESTDIR)$(bashcompdir) $(DESTDIR)$(zshcompdir)
	install -m644 misc/{repository,installsystems}.conf $(DESTDIR)$(sysconfdir)/installsystems/
	install -m644 misc/bash-completion $(DESTDIR)$(bashcompdir)/is
	install -m644 misc/zsh-completion $(DESTDIR)$(zshcompdir)/_installsystems

dist-hook:
	rm -f $(distdir)/TODO

autogen.sh

0 → 100755
+18 −0
Original line number Diff line number Diff line
#/bin/bash -x

# This file is part of Installsystems.
#
# Installsystems is free software: you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# Installsystems 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 Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with Installsystems.  If not, see <http://www.gnu.org/licenses/>.

autoreconf --force -v --install "$@"
+38 −0
Original line number Diff line number Diff line
#!/usr/bin/make

# Installsystems - Python installation framework
# Copyright © 2011-2012 Smartjog S.A
# Copyright © 2011-2012 Sébastien Luttringer
#
# This file is part of Installsystems.
#
# Installsystems is free software: you can redistribute it and/or modify
@@ -19,42 +13,26 @@
# You should have received a copy of the GNU Lesser General Public License
# along with Installsystems.  If not, see <http://www.gnu.org/licenses/>.

.PHONY: all tar deb clean cleanbuild buildd dsc doc

NAME=installsystems
VERSION=$(shell sed -rn 's/version = "([^"]+)"/\1/p' installsystems/__init__.py)
BUILD_DIR=__build__
DISTRO=squeeze

all:
	echo all is better than nothing

$(NAME)-$(VERSION).tar.gz:
	git archive --prefix=$(NAME)-$(VERSION)/ HEAD | gzip -9 > $(NAME)-$(VERSION).tar.gz

tar: cleantar $(NAME)-$(VERSION).tar.gz

doc:
	cd doc && make html

dsc: cleanbuild $(NAME)-$(VERSION).tar.gz
	mkdir $(BUILD_DIR)
	tar xfC $(NAME)-$(VERSION).tar.gz $(BUILD_DIR)
	cd $(BUILD_DIR) && dpkg-source -I -b $(NAME)-$(VERSION)
AC_INIT([installsystems], [9], [sebastien.luttringer@smartjog.com])

deb: cleanbuild $(NAME)-$(VERSION).tar.gz
	mkdir $(BUILD_DIR)
	tar xfC $(NAME)-$(VERSION).tar.gz $(BUILD_DIR)
	cd $(BUILD_DIR)/$(NAME)-$(VERSION) && dpkg-buildpackage --source-option=-I -us -uc
AM_INIT_AUTOMAKE([foreign dist-xz no-dist-gzip])
AM_PATH_PYTHON([2.6])

buildd: dsc
	chmod 644 $(BUILD_DIR)/$(NAME)_*.dsc $(BUILD_DIR)/$(NAME)_*.gz
	scp $(BUILD_DIR)/$(NAME)_*.dsc $(BUILD_DIR)/$(NAME)_*.gz incoming@buildd.fr.lan:$(DISTRO)
AC_CONFIG_FILES([
	Makefile
	doc/Makefile
])

clean: cleantar cleanbuild
AC_ARG_WITH([bashcompdir],
	AS_HELP_STRING([--with-bashcompdir=DIR], [Bash completion directory]),
	[], [with_bashcompdir=${datadir}/bash-completion/completions]
)
AC_SUBST([bashcompdir], [$with_bashcompdir])

cleanbuild:
	-rm -rf  $(BUILD_DIR)
AC_ARG_WITH([zshcompdir],
	AS_HELP_STRING([--with-zshcompdir=DIR], [Zsh completion directory]),
	[], [with_zshcompdir=${datadir}/zsh/site-functions]
)
AC_SUBST([zshcompdir], [$with_zshcompdir])

cleantar:
	-rm -f $(NAME)-*.tar.gz
AC_OUTPUT

doc/Makefile

deleted100644 → 0
+0 −130
Original line number Diff line number Diff line
# Makefile for Sphinx documentation
#

# You can set these variables from the command line.
SPHINXOPTS    =
SPHINXBUILD   = sphinx-build
PAPER         =
BUILDDIR      = _build

# Internal variables.
PAPEROPT_a4     = -D latex_paper_size=a4
PAPEROPT_letter = -D latex_paper_size=letter
ALLSPHINXOPTS   = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .

.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest

help:
	@echo "Please use \`make <target>' where <target> is one of"
	@echo "  html       to make standalone HTML files"
	@echo "  dirhtml    to make HTML files named index.html in directories"
	@echo "  singlehtml to make a single large HTML file"
	@echo "  pickle     to make pickle files"
	@echo "  json       to make JSON files"
	@echo "  htmlhelp   to make HTML files and a HTML help project"
	@echo "  qthelp     to make HTML files and a qthelp project"
	@echo "  devhelp    to make HTML files and a Devhelp project"
	@echo "  epub       to make an epub"
	@echo "  latex      to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
	@echo "  latexpdf   to make LaTeX files and run them through pdflatex"
	@echo "  text       to make text files"
	@echo "  man        to make manual pages"
	@echo "  changes    to make an overview of all changed/added/deprecated items"
	@echo "  linkcheck  to check all external links for integrity"
	@echo "  doctest    to run all doctests embedded in the documentation (if enabled)"

clean:
	-rm -rf $(BUILDDIR)/*

html:
	$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
	@echo
	@echo "Build finished. The HTML pages are in $(BUILDDIR)/html."

dirhtml:
	$(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml
	@echo
	@echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml."

singlehtml:
	$(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml
	@echo
	@echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml."

pickle:
	$(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle
	@echo
	@echo "Build finished; now you can process the pickle files."

json:
	$(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json
	@echo
	@echo "Build finished; now you can process the JSON files."

htmlhelp:
	$(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp
	@echo
	@echo "Build finished; now you can run HTML Help Workshop with the" \
	      ".hhp project file in $(BUILDDIR)/htmlhelp."

qthelp:
	$(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp
	@echo
	@echo "Build finished; now you can run "qcollectiongenerator" with the" \
	      ".qhcp project file in $(BUILDDIR)/qthelp, like this:"
	@echo "# qcollectiongenerator $(BUILDDIR)/qthelp/InstallSystems.qhcp"
	@echo "To view the help file:"
	@echo "# assistant -collectionFile $(BUILDDIR)/qthelp/InstallSystems.qhc"

devhelp:
	$(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp
	@echo
	@echo "Build finished."
	@echo "To view the help file:"
	@echo "# mkdir -p $$HOME/.local/share/devhelp/InstallSystems"
	@echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/InstallSystems"
	@echo "# devhelp"

epub:
	$(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub
	@echo
	@echo "Build finished. The epub file is in $(BUILDDIR)/epub."

latex:
	$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
	@echo
	@echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex."
	@echo "Run \`make' in that directory to run these through (pdf)latex" \
	      "(use \`make latexpdf' here to do that automatically)."

latexpdf:
	$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
	@echo "Running LaTeX files through pdflatex..."
	$(MAKE) -C $(BUILDDIR)/latex all-pdf
	@echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."

text:
	$(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text
	@echo
	@echo "Build finished. The text files are in $(BUILDDIR)/text."

man:
	$(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man
	@echo
	@echo "Build finished. The manual pages are in $(BUILDDIR)/man."

changes:
	$(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes
	@echo
	@echo "The overview file is in $(BUILDDIR)/changes."

linkcheck:
	$(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck
	@echo
	@echo "Link check complete; look for any errors in the above output " \
	      "or in $(BUILDDIR)/linkcheck/output.txt."

doctest:
	$(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest
	@echo "Testing of doctests in the sources finished, look at the " \
	      "results in $(BUILDDIR)/doctest/output.txt."
Loading