Mercurial > repos > wolma > package_python_3_4_x_lean
view tool_dependencies.xml @ 2:50ffd429060b draft
Uploaded
author | wolma |
---|---|
date | Tue, 26 Apr 2016 12:24:47 -0400 |
parents | 040f60d3c15b |
children | 87b8dcebce9b |
line wrap: on
line source
<?xml version="1.0"?> <tool_dependency> <package name="zlib" version="1.2.8"> <repository changeset_revision="63a4a902cda2" name="package_zlib_1_2_8" owner="iuc" prior_installation_required="True" toolshed="https://toolshed.g2.bx.psu.edu" /> </package> <package name="sqlite" version="3.8.3"> <repository changeset_revision="706b1f3b1fc0" name="package_sqlite_3_8_3" owner="iuc" prior_installation_required="True" toolshed="http://toolshed.g2.bx.psu.edu" /> </package> <package name="python3" version="3.4"> <install version="1.0"> <actions> <action type="download_by_url">https://www.python.org/ftp/python/3.4.4/Python-3.4.4.tgz</action> <action type="set_environment_for_install"> <repository changeset_revision="63a4a902cda2" name="package_zlib_1_2_8" owner="iuc" toolshed="https://toolshed.g2.bx.psu.edu"> <package name="zlib" version="1.2.8" /> </repository> <repository changeset_revision="706b1f3b1fc0" name="package_sqlite_3_8_3" owner="iuc" toolshed="http://toolshed.g2.bx.psu.edu"> <package name="sqlite" version="3.8.3" /> </repository> </action> <action type="shell_command"> # The python build system doesn't check CPATH / C(PLUS)_INCLUDE_PATH which is set by the depended-upon # tool definitions for these sources, but it does check CPPFLAGS / LDFLAGS # Currently not whitespace-safe, I haven't found a way yet to quote the *FLAGS values so that they are # correctly recognized by both the python build process and the compiler. But as galaxy itself isn't # whitespace-safe either it doesn't really matter (currently). oldifs="$IFS" IFS=":" for p in $CPLUS_INCLUDE_PATH do CPPFLAGS="$CPPFLAGS -I$p" done for p in $LD_LIBRARY_PATH do LDFLAGS="$LDFLAGS -L$p" done IFS="$oldifs" export CPPFLAGS export LDFLAGS # Clear variables that may be used in Galaxy's extenal python 2 environment unset PYTHONPATH unset PYTHONHOME ./configure --prefix="$INSTALL_DIR" \ && make \ && make install </action> <action type="set_environment"> <environment_variable action="prepend_to" name="PATH">$INSTALL_DIR/bin</environment_variable> <environment_variable action="prepend_to" name="LD_LIBRARY_PATH">$ENV[LD_LIBRARY_PATH]</environment_variable> <!-- clear PYTHONPATH, otherwise we will get Galaxy's Python 2 libraries in the Python 3 path. --> <environment_variable action="set_to" name="PYTHONPATH" /> <environment_variable action="set_to" name="PYTHONHOME">$INSTALL_DIR</environment_variable> <environment_variable action="prepend_to" name="PKG_CONFIG_PATH">$INSTALL_DIR/lib/pkgconfig</environment_variable> <!-- fix too strict compiler settings under Python 3.4 --> <environment_variable action="set_to" name="CFLAGS">"$ENV[CFLAGS] -Wno-error=declaration-after-statement"</environment_variable> </action> </actions> </install> <readme> The Python programming language version 3.4 http://www.python.org A lean build of Python 3.4.x. This package receives bug fixes within the 3.4 release series! It contains the zlib and sqlite3 modules as the only stdlib modules with external dependencies (handled in here by depending on package_zlib_1_2_8 and package_sqlite_3_8_3). In particular, this build does not compile Python's ssl module (which would cause dependency on openssl and, in turn, on Perl). This means that **the pip installation tool will not be available with this build** !! For a full build (including the ssl module) look at https://toolshed.g2.bx.psu.edu/view/jankanis/package_python3_4 written by jankanis, of which this package is a shameless plagiarism. This version of Python includes a built-in virtual environment manager. To create a Python 3 virtual env, include the following actions in your tool_dependencies.xml, e.g. for a package MY_TOOL_venv: <action type="set_environment_for_install"> <repository name="package_python3_zlib_dependent_1_0" owner="wolma"> <package name="python3" version="3.4" /> </repository> <!-- other install time dependencies --> </action> <action type="shell_command"> # Create virtual environment MY_TOOL_venv # pip cannot be used for installation because it depends on ssl, # which this build does not provide pyvenv --without-pip $INSTALL_DIR/MY_TOOL_venv # install python packages # assuming you are in the download directory of the package $INSTALL_DIR/MY_TOOL_venv/bin/python3 setup.py install </action> For an example of how this could used by a package look at the tool_dependencies file of: https://toolshed.g2.bx.psu.edu/view/wolma/mimodd </readme> </package> </tool_dependency>