From 5ce1bc9b092a7e1ab7fc566c7b558e043bd28c77 Mon Sep 17 00:00:00 2001 From: "nslu2-linux.adm@bkbits.net" Date: Tue, 24 May 2005 10:40:09 +0000 Subject: Merge bk://oe-devel.bkbits.net/openembedded into bkbits.net:/repos/n/nslu2-linux/openembedded 2005/05/24 11:59:06+02:00 void!koen Merge bk://oe-devel@oe-devel.bkbits.net/openembedded into dominion.dominion.void:/data/build/oe/openembedded 2005/05/24 11:58:45+02:00 void!koen gnome-vfs-dbus_2.8.4.4.bb: gconf->gconf-dbus 2005/05/24 11:54:17+02:00 uni-frankfurt.de!mickeyl Compile the Python core as a shared library - this way external programs can embed it. Add python-tests, python-libold, python-tkinter, python-bsddb, and python-devel packages BKrev: 42930489QHbXHtqBQl06VjqwX8iVDw --- packages/gnome/gnome-vfs-dbus_2.8.4.4.bb | 4 +- packages/python/python-2.4.1-manifest.inc | 138 +++++++++++++++++++----------- packages/python/python_2.4.1.bb | 66 ++++++++++++++ 3 files changed, 154 insertions(+), 54 deletions(-) diff --git a/packages/gnome/gnome-vfs-dbus_2.8.4.4.bb b/packages/gnome/gnome-vfs-dbus_2.8.4.4.bb index 992f52e0cd..bb4222e458 100644 --- a/packages/gnome/gnome-vfs-dbus_2.8.4.4.bb +++ b/packages/gnome/gnome-vfs-dbus_2.8.4.4.bb @@ -1,12 +1,12 @@ LICENSE = GPL SECTION = "x11/gnome" -PR = "r0" +PR = "r1" PROVIDES = "gnome-vfs" RPROVIDES = "gnome-vfs" inherit gnome pkgconfig -DEPENDS = "libxml2 gconf dbus bzip2 gnome-mime-data zlib samba" +DEPENDS = "libxml2 gconf-dbus dbus bzip2 gnome-mime-data zlib samba" SRC_URI = "http://ftp.imendio.com/pub/extra/${PN}/${PN}-${PV}.tar.gz \ file://gconftool-lossage.patch;patch=1;pnum=1" diff --git a/packages/python/python-2.4.1-manifest.inc b/packages/python/python-2.4.1-manifest.inc index a2f8f57f8e..ee41c14361 100644 --- a/packages/python/python-2.4.1-manifest.inc +++ b/packages/python/python-2.4.1-manifest.inc @@ -1,208 +1,242 @@ -### AUTO-GENERATED by './generate-oe.py' [(C) 2002-2005 Michael Lauer] on Sun May 22 01:12:21 2005 +######################################################################################################################## +### AUTO-GENERATED by './generate-oe.py' [(C) 2002-2005 Michael 'Mickey' Lauer ] on Tue May 24 11:50:17 2005 +### +### Visit THE Python for Embedded Systems Site => http://www.Vanille.de/projects/python.spy ### ### Warning: Manual edits will be lost! ### +######################################################################################################################## -PACKAGES="python-codecs python-threading python-distutils python-textutils python-curses python-pickle python-core python-io python-compression python-re python-xmlrpc python-terminal python-email python-image python-resource python-math python-hotshot python-unixadmin python-gdbm python-fcntl python-netclient python-pprint python-netserver python-compiler python-syslog python-html python-readline python-pydoc python-xml python-mime python-unittest python-stringold python-compile python-shell python-mmap python-zlib python-db python-crypt python-lang python-audio " - -DESCRIPTION_python-codecs="Python Codecs, Encodings & i18n Support" -PR_python-codecs="ml2" -RDEPENDS_python-codecs="python-core" -FILES_python-codecs="${libdir}/python2.4/codecs.* ${libdir}/python2.4/encodings ${libdir}/python2.4/locale.* ${libdir}/python2.4/lib-dynload/_locale.so ${libdir}/python2.4/lib-dynload/unicodedata.so ${libdir}/python2.4/gettext.* ${libdir}/python2.4/xdrlib.* " +PACKAGES="python-threading python-distutils python-textutils python-codecs python-pickle python-core python-io python-compiler python-compression python-re python-xmlrpc python-terminal python-email python-image python-resource python-devel python-math python-hotshot python-unixadmin python-tkinter python-gdbm python-fcntl python-netclient python-pprint python-netserver python-curses python-syslog python-html python-readline python-pydoc python-xml python-mime python-tests python-unittest python-stringold python-lib-old-and-deprecated python-compile python-shell python-bsddb python-mmap python-zlib python-db python-crypt python-idle python-lang python-audio " DESCRIPTION_python-threading="Python Threading & Synchronization Support" -PR_python-threading="ml2" +PR_python-threading="ml3" RDEPENDS_python-threading="python-core python-lang" FILES_python-threading="${libdir}/python2.4/bisect.* ${libdir}/python2.4/threading.* ${libdir}/python2.4/Queue.* " DESCRIPTION_python-distutils="Python Distribution Utility" -PR_python-distutils="ml2" +PR_python-distutils="ml3" RDEPENDS_python-distutils="python-core" FILES_python-distutils="${libdir}/python2.4/distutils " DESCRIPTION_python-textutils="Python Option Parsing, Text Wrapping and Comma-Separated-Value Support" -PR_python-textutils="ml2" +PR_python-textutils="ml3" RDEPENDS_python-textutils="python-core python-io python-re python-stringold" FILES_python-textutils="${libdir}/python2.4/lib-dynload/_csv.so ${libdir}/python2.4/csv.* ${libdir}/python2.4/optparse.* ${libdir}/python2.4/textwrap.* " -DESCRIPTION_python-curses="Python Curses Support" -PR_python-curses="ml2" -RDEPENDS_python-curses="python-core libncurses5" -FILES_python-curses="${libdir}/python2.4/curses ${libdir}/python2.4/lib-dynload/_curses.so ${libdir}/python2.4/lib-dynload/_curses_panel.so " +DESCRIPTION_python-codecs="Python Codecs, Encodings & i18n Support" +PR_python-codecs="ml3" +RDEPENDS_python-codecs="python-core" +FILES_python-codecs="${libdir}/python2.4/codecs.* ${libdir}/python2.4/encodings ${libdir}/python2.4/locale.* ${libdir}/python2.4/lib-dynload/_locale.so ${libdir}/python2.4/lib-dynload/unicodedata.so ${libdir}/python2.4/gettext.* ${libdir}/python2.4/xdrlib.* " DESCRIPTION_python-pickle="Python Persistence Support" -PR_python-pickle="ml3" +PR_python-pickle="ml4" RDEPENDS_python-pickle="python-core python-codecs python-re" FILES_python-pickle="${libdir}/python2.4/pickle.* ${libdir}/python2.4/shelve.* ${libdir}/python2.4/lib-dynload/cPickle.so " DESCRIPTION_python-core="Python Interpreter and core modules (needed!)" -PR_python-core="ml2" +PR_python-core="ml3" RDEPENDS_python-core="" FILES_python-core="/usr/lib/python2.4/__future__.* /usr/lib/python2.4/copy.* /usr/lib/python2.4/copy_reg.* /usr/lib/python2.4/ConfigParser.py /usr/lib/python2.4/getopt.* /usr/lib/python2.4/new.* /usr/lib/python2.4/os.* /usr/lib/python2.4/posixpath.* /usr/lib/python2.4/warnings.* /usr/lib/python2.4/site.* /usr/lib/python2.4/stat.* /usr/lib/python2.4/UserDict.* /usr/lib/python2.4/lib-dynload/binascii.so /usr/lib/python2.4/lib-dynload/struct.so /usr/lib/python2.4/lib-dynload/time.so /usr/lib/python2.4/lib-dynload/xreadlines.so /usr/lib/python2.4/types.* /usr/bin/python " DESCRIPTION_python-io="Python Low-Level I/O" -PR_python-io="ml2" +PR_python-io="ml3" RDEPENDS_python-io="python-core python-math" FILES_python-io="${libdir}/python2.4/lib-dynload/_socket.so ${libdir}/python2.4/lib-dynload/select.so ${libdir}/python2.4/lib-dynload/termios.so ${libdir}/python2.4/lib-dynload/cStringIO.so ${libdir}/python2.4/pipes.* ${libdir}/python2.4/socket.* ${libdir}/python2.4/tempfile.* ${libdir}/python2.4/StringIO.* " +DESCRIPTION_python-compiler="Python Compiler Support" +PR_python-compiler="ml3" +RDEPENDS_python-compiler="python-core" +FILES_python-compiler="${libdir}/python2.4/compiler " + DESCRIPTION_python-compression="Python High Level Compression Support" -PR_python-compression="ml2" +PR_python-compression="ml3" RDEPENDS_python-compression="python-core python-zlib" FILES_python-compression="${libdir}/python2.4/gzip.* ${libdir}/python2.4/zipfile.* " DESCRIPTION_python-re="Python Regular Expression APIs" -PR_python-re="ml2" +PR_python-re="ml3" RDEPENDS_python-re="python-core python-stringold" FILES_python-re="${libdir}/python2.4/re.* ${libdir}/python2.4/sre.* ${libdir}/python2.4/sre_compile.* ${libdir}/python2.4/sre_constants* ${libdir}/python2.4/sre_parse.* " DESCRIPTION_python-xmlrpc="Python XMLRPC Support" -PR_python-xmlrpc="ml2" +PR_python-xmlrpc="ml3" RDEPENDS_python-xmlrpc="python-core python-xml python-netserver python-lang" FILES_python-xmlrpc="${libdir}/python2.4/xmlrpclib.* ${libdir}/python2.4/SimpleXMLRPCServer.* " DESCRIPTION_python-terminal="Python Terminal Controlling Support" -PR_python-terminal="ml2" +PR_python-terminal="ml3" RDEPENDS_python-terminal="python-core python-io" FILES_python-terminal="${libdir}/python2.4/pty.* ${libdir}/python2.4/tty.* " DESCRIPTION_python-email="Python Email Support" -PR_python-email="ml2" +PR_python-email="ml3" RDEPENDS_python-email="python-core python-io python-re" FILES_python-email="${libdir}/python2.4/email " DESCRIPTION_python-image="Python Graphical Image Handling" -PR_python-image="ml2" +PR_python-image="ml3" RDEPENDS_python-image="python-core" FILES_python-image="${libdir}/python2.4/colorsys.* ${libdir}/python2.4/imghdr.* ${libdir}/python2.4/lib-dynload/imageop.so ${libdir}/python2.4/lib-dynload/rgbimg.so " DESCRIPTION_python-resource="Python Resource Control Interface" -PR_python-resource="ml2" +PR_python-resource="ml3" RDEPENDS_python-resource="python-core" FILES_python-resource="${libdir}/python2.4/lib-dynload/resource.so " +DESCRIPTION_python-devel="Python Development Package" +PR_python-devel="ml3" +RDEPENDS_python-devel="python-core" +FILES_python-devel="/usr/include /usr/lib/python2.4/config " + DESCRIPTION_python-math="Python Math Support" -PR_python-math="ml3" +PR_python-math="ml4" RDEPENDS_python-math="python-core" FILES_python-math="${libdir}/python2.4/lib-dynload/cmath.so ${libdir}/python2.4/lib-dynload/math.so ${libdir}/python2.4/lib-dynload/_random.so ${libdir}/python2.4/random.* ${libdir}/python2.4/sets.* " DESCRIPTION_python-hotshot="Python Hotshot Profiler" -PR_python-hotshot="ml2" +PR_python-hotshot="ml3" RDEPENDS_python-hotshot="python-core" FILES_python-hotshot="${libdir}/python2.4/hotshot ${libdir}/python2.4/lib-dynload/_hotshot.so " DESCRIPTION_python-unixadmin="Python Unix Administration Support" -PR_python-unixadmin="ml2" +PR_python-unixadmin="ml3" RDEPENDS_python-unixadmin="python-core" FILES_python-unixadmin="${libdir}/python2.4/lib-dynload/nis.so ${libdir}/python2.4/lib-dynload/grp.so ${libdir}/python2.4/lib-dynload/pwd.so ${libdir}/python2.4/getpass.* " +DESCRIPTION_python-tkinter="Python Tcl/Tk Bindings" +PR_python-tkinter="ml3" +RDEPENDS_python-tkinter="python-core" +FILES_python-tkinter="${libdir}/python2.4/lib-tk " + DESCRIPTION_python-gdbm="Python GNU Database Support" -PR_python-gdbm="ml2" +PR_python-gdbm="ml3" RDEPENDS_python-gdbm="python-core libgdbm3" FILES_python-gdbm="${libdir}/python2.4/lib-dynload/gdbm.so " DESCRIPTION_python-fcntl="Python's fcntl Interface" -PR_python-fcntl="ml2" +PR_python-fcntl="ml3" RDEPENDS_python-fcntl="python-core" FILES_python-fcntl="${libdir}/python2.4/lib-dynload/fcntl.so " DESCRIPTION_python-netclient="Python Internet Protocol Clients" -PR_python-netclient="ml2" +PR_python-netclient="ml3" RDEPENDS_python-netclient="python-core python-io python-mime" FILES_python-netclient="${libdir}/python2.4/base64.* ${libdir}/python2.4/ftplib.* ${libdir}/python2.4/gopherlib.* ${libdir}/python2.4/hmac.* ${libdir}/python2.4/httplib.* ${libdir}/python2.4/mimetypes.* ${libdir}/python2.4/nntplib.* ${libdir}/python2.4/poplib.* ${libdir}/python2.4/smtplib.* ${libdir}/python2.4/telnetlib.* ${libdir}/python2.4/urllib.* ${libdir}/python2.4/urllib2.* ${libdir}/python2.4/urlparse.* " DESCRIPTION_python-pprint="Python Pretty-Print Support" -PR_python-pprint="ml2" +PR_python-pprint="ml3" RDEPENDS_python-pprint="python-core" FILES_python-pprint="${libdir}/python2.4/pprint.* " DESCRIPTION_python-netserver="Python Internet Protocol Servers" -PR_python-netserver="ml2" +PR_python-netserver="ml3" RDEPENDS_python-netserver="python-core python-netclient" FILES_python-netserver="${libdir}/python2.4/cgi.* ${libdir}/python2.4/BaseHTTPServer.* ${libdir}/python2.4/SimpleHTTPServer.* ${libdir}/python2.4/SocketServer.* " -DESCRIPTION_python-compiler="Python Compiler Support" -PR_python-compiler="ml2" -RDEPENDS_python-compiler="python-core" -FILES_python-compiler="${libdir}/python2.4/compiler " +DESCRIPTION_python-curses="Python Curses Support" +PR_python-curses="ml3" +RDEPENDS_python-curses="python-core libncurses5" +FILES_python-curses="${libdir}/python2.4/curses ${libdir}/python2.4/lib-dynload/_curses.so ${libdir}/python2.4/lib-dynload/_curses_panel.so " DESCRIPTION_python-syslog="Python's syslog Interface" -PR_python-syslog="ml2" +PR_python-syslog="ml3" RDEPENDS_python-syslog="python-core" FILES_python-syslog="${libdir}/python2.4/lib-dynload/syslog.so " DESCRIPTION_python-html="Python HTML Processing" -PR_python-html="ml2" +PR_python-html="ml3" RDEPENDS_python-html="python-core" FILES_python-html="${libdir}/python2.4/formatter.* ${libdir}/python2.4/htmlentitydefs.* ${libdir}/python2.4/htmllib.* ${libdir}/python2.4/markupbase.* ${libdir}/python2.4/sgmllib.* " DESCRIPTION_python-readline="Python Readline Support" -PR_python-readline="ml2" +PR_python-readline="ml3" RDEPENDS_python-readline="python-core libreadline4" FILES_python-readline="${libdir}/python2.4/lib-dynload/readline.so ${libdir}/python2.4/rlcompleter.* " DESCRIPTION_python-pydoc="Python Interactive Help Support" -PR_python-pydoc="ml2" +PR_python-pydoc="ml3" RDEPENDS_python-pydoc="python-core python-lang python-stringold python-re" FILES_python-pydoc="/usr/bin/pydoc /usr/lib/python2.4/pydoc.* " DESCRIPTION_python-xml="Python basic XML support." -PR_python-xml="ml2" +PR_python-xml="ml3" RDEPENDS_python-xml="python-core python-re" FILES_python-xml="${libdir}/python2.4/lib-dynload/pyexpat.so ${libdir}/python2.4/xml ${libdir}/python2.4/xmllib.* " DESCRIPTION_python-mime="Python MIME Handling APIs" -PR_python-mime="ml2" +PR_python-mime="ml3" RDEPENDS_python-mime="python-core python-io" FILES_python-mime="${libdir}/python2.4/mimetools.* ${libdir}/python2.4/rfc822.* " +DESCRIPTION_python-tests="Python Tests" +PR_python-tests="ml3" +RDEPENDS_python-tests="python-core" +FILES_python-tests="${libdir}/python2.4/test " + DESCRIPTION_python-unittest="Python Unit Testing Framework" -PR_python-unittest="ml2" +PR_python-unittest="ml3" RDEPENDS_python-unittest="python-core python-stringold python-lang" FILES_python-unittest="${libdir}/python2.4/unittest.* " DESCRIPTION_python-stringold="Python Deprecated String APIs" -PR_python-stringold="ml2" +PR_python-stringold="ml3" RDEPENDS_python-stringold="python-core" FILES_python-stringold="${libdir}/python2.4/lib-dynload/strop.so ${libdir}/python2.4/string.* " +DESCRIPTION_python-lib-old-and-deprecated="Python Deprecated Libraries" +PR_python-lib-old-and-deprecated="ml3" +RDEPENDS_python-lib-old-and-deprecated="python-core" +FILES_python-lib-old-and-deprecated="${libdir}/python2.4/lib-old " + DESCRIPTION_python-compile="Python Bytecode Compilation Support" -PR_python-compile="ml2" +PR_python-compile="ml3" RDEPENDS_python-compile="python-core" FILES_python-compile="${libdir}/python2.4/py_compile.* ${libdir}/python2.4/compileall.* " DESCRIPTION_python-shell="Python Shell-Like Functionality" -PR_python-shell="ml2" +PR_python-shell="ml3" RDEPENDS_python-shell="python-core python-re" FILES_python-shell="${libdir}/python2.4/commands.* ${libdir}/python2.4/dircache.* ${libdir}/python2.4/fnmatch.* ${libdir}/python2.4/glob.* ${libdir}/python2.4/popen2.* ${libdir}/python2.4/shutil.* " +DESCRIPTION_python-bsddb="Python Berkeley Database Bindings" +PR_python-bsddb="ml3" +RDEPENDS_python-bsddb="python-core" +FILES_python-bsddb="${libdir}/python2.4/bsddb " + DESCRIPTION_python-mmap="Python Memory-Mapped-File Support" -PR_python-mmap="ml2" +PR_python-mmap="ml3" RDEPENDS_python-mmap="python-core python-io" FILES_python-mmap="${libdir}/python2.4/lib-dynload/mmap.so " DESCRIPTION_python-zlib="Python zlib Support." -PR_python-zlib="ml3" +PR_python-zlib="ml4" RDEPENDS_python-zlib="python-core libz1" FILES_python-zlib="${libdir}/python2.4/lib-dynload/zlib.so " DESCRIPTION_python-db="Python File-Based Database Support" -PR_python-db="ml2" +PR_python-db="ml3" RDEPENDS_python-db="python-core" FILES_python-db="${libdir}/python2.4/anydbm.* ${libdir}/python2.4/dumbdbm.* ${libdir}/python2.4/whichdb.* " DESCRIPTION_python-crypt="Python Basic Cryptographic and Hashing Support" -PR_python-crypt="ml2" +PR_python-crypt="ml3" RDEPENDS_python-crypt="python-core" FILES_python-crypt="${libdir}/python2.4/lib-dynload/crypt.so ${libdir}/python2.4/lib-dynload/md5.so ${libdir}/python2.4/lib-dynload/rotor.so ${libdir}/python2.4/lib-dynload/sha.so " +DESCRIPTION_python-idle="Python Integrated Development Environment" +PR_python-idle="ml3" +RDEPENDS_python-idle="python-core python-tkinter" +FILES_python-idle="/usr/bin/idle /usr/lib/python2.4/idlelib " + DESCRIPTION_python-lang="Python Low-Level Language Support" -PR_python-lang="ml3" +PR_python-lang="ml4" RDEPENDS_python-lang="python-core" FILES_python-lang="${libdir}/python2.4/lib-dynload/array.so ${libdir}/python2.4/lib-dynload/parser.so ${libdir}/python2.4/lib-dynload/operator.so ${libdir}/python2.4/lib-dynload/_weakref.so ${libdir}/python2.4/lib-dynload/itertools.so ${libdir}/python2.4/lib-dynload/collections.so ${libdir}/python2.4/atexit.* ${libdir}/python2.4/code.* ${libdir}/python2.4/codeop.* ${libdir}/python2.4/dis.* ${libdir}/python2.4/inspect.* ${libdir}/python2.4/keyword.* ${libdir}/python2.4/opcode.* ${libdir}/python2.4/repr.* ${libdir}/python2.4/token.* ${libdir}/python2.4/tokenize.* ${libdir}/python2.4/traceback.* ${libdir}/python2.4/linecache.* ${libdir}/python2.4/weakref.* " DESCRIPTION_python-audio="Python Audio Handling" -PR_python-audio="ml2" +PR_python-audio="ml3" RDEPENDS_python-audio="python-core" FILES_python-audio="${libdir}/python2.4/wave.* ${libdir}/python2.4/chunk.* ${libdir}/python2.4/lib-dynload/ossaudiodev.so ${libdir}/python2.4/lib-dynload/audioop.so " diff --git a/packages/python/python_2.4.1.bb b/packages/python/python_2.4.1.bb index e69de29bb2..742426976c 100644 --- a/packages/python/python_2.4.1.bb +++ b/packages/python/python_2.4.1.bb @@ -0,0 +1,66 @@ +DESCRIPTION = "Python Programming Language" +HOMEPAGE = "http://www.python.org" +LICENSE = "PSF" +SECTION = "devel/python" +PRIORITY = "optional" +MAINTAINER = "Michael 'Mickey' Lauer " +PROVIDES = "python python-core" +DEPENDS = "python-native zlib gdbm openssl" +PR = "ml1" + +PYTHON_MAJMIN = "2.4" + +SRC_URI = "ftp://www.python.org/pub/python/2.4/Python-2.4.tar.bz2 \ + file://bindir-libdir.patch;patch=1 \ + file://crosscompile.patch;patch=1" +S = "${WORKDIR}/Python-2.4" + +inherit autotools + +EXTRA_OECONF = "--with-threads --with-pymalloc --with-cyclic-gc \ + --without-cxx --with-signal-module --with-wctype-functions \ + --enable-shared" + +# +# copy config.h and an appropriate Makefile for distutils.sysconfig +# which laters uses the information out of these to compile extensions +# +do_compile_prepend() { + install -d ${STAGING_INCDIR}/python${PYTHON_MAJMIN}/ + install -d ${STAGING_LIBDIR}/python${PYTHON_MAJMIN}/config/ + install -m 0644 pyconfig.h ${STAGING_INCDIR}/python${PYTHON_MAJMIN}/ + install -m 0644 Makefile Makefile.orig + install -m 0644 Makefile Makefile.backup + sed -e 's,${includedir},${STAGING_INCDIR},' < Makefile.backup > Makefile + install -m 0644 Makefile Makefile.backup + sed -e 's,${libdir},${STAGING_LIBDIR},' < Makefile.backup > Makefile + install -m 0644 Makefile ${STAGING_LIBDIR}/python${PYTHON_MAJMIN}/config/ +} + +do_compile() { + oe_runmake HOSTPGEN=${STAGING_BINDIR}/pgen \ + HOSTPYTHON=${STAGING_BINDIR}/python \ + STAGING_LIBDIR=${STAGING_LIBDIR} \ + STAGING_INCDIR=${STAGING_INCDIR} \ + BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} +} + +do_stage() { + install -m 0644 Include/*.h ${STAGING_INCDIR}/python${PYTHON_MAJMIN}/ +} + +do_install() { + install -m 0644 Makefile.orig Makefile + oe_runmake HOSTPGEN=${STAGING_BINDIR}/pgen \ + HOSTPYTHON=${STAGING_BINDIR}/python \ + STAGING_LIBDIR=${STAGING_LIBDIR} \ + STAGING_INCDIR=${STAGING_INCDIR} \ + BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \ + DESTDIR=${D} install +} + +include python-${PV}-manifest.inc + +PACKAGES =+ "libpython2" +FILES_libpython2 = "${libdir}/libpython*" + -- cgit v1.2.3