comparison tool_dependencies.xml @ 3:87b8dcebce9b draft

Uploaded
author wolma
date Fri, 29 Apr 2016 04:20:06 -0400
parents 50ffd429060b
children 5e5653b689ca
comparison
equal deleted inserted replaced
2:50ffd429060b 3:87b8dcebce9b
3 <package name="zlib" version="1.2.8"> 3 <package name="zlib" version="1.2.8">
4 <repository changeset_revision="63a4a902cda2" name="package_zlib_1_2_8" owner="iuc" prior_installation_required="True" toolshed="https://toolshed.g2.bx.psu.edu" /> 4 <repository changeset_revision="63a4a902cda2" name="package_zlib_1_2_8" owner="iuc" prior_installation_required="True" toolshed="https://toolshed.g2.bx.psu.edu" />
5 </package> 5 </package>
6 6
7 <package name="sqlite" version="3.8.3"> 7 <package name="sqlite" version="3.8.3">
8 <repository changeset_revision="706b1f3b1fc0" name="package_sqlite_3_8_3" owner="iuc" prior_installation_required="True" toolshed="http://toolshed.g2.bx.psu.edu" /> 8 <repository changeset_revision="c8a5c11cc921" name="package_sqlite_3_8_3" owner="iuc" prior_installation_required="True" toolshed="https://toolshed.g2.bx.psu.edu" />
9 </package> 9 </package>
10 10
11 <package name="python3" version="3.4"> 11 <package name="python3" version="3.4">
12 <install version="1.0"> 12 <install version="1.0">
13 <actions> 13 <actions>
14 <action type="download_by_url">https://www.python.org/ftp/python/3.4.4/Python-3.4.4.tgz</action> 14 <action type="download_by_url">https://www.python.org/ftp/python/3.4.4/Python-3.4.4.tgz</action>
15 15
16 <action type="set_environment_for_install"> 16 <action type="set_environment_for_install">
17 <repository changeset_revision="63a4a902cda2" name="package_zlib_1_2_8" owner="iuc" toolshed="https://toolshed.g2.bx.psu.edu"> 17 <repository changeset_revision="63a4a902cda2" name="package_zlib_1_2_8" owner="iuc" toolshed="https://toolshed.g2.bx.psu.edu">
18 <package name="zlib" version="1.2.8" /> 18 <package name="zlib" version="1.2.8" />
19 </repository> 19 </repository>
20 20 <repository changeset_revision="c8a5c11cc921" name="package_sqlite_3_8_3" owner="iuc" toolshed="https://toolshed.g2.bx.psu.edu">
21 <repository changeset_revision="706b1f3b1fc0" name="package_sqlite_3_8_3" owner="iuc" toolshed="http://toolshed.g2.bx.psu.edu"> 21 <package name="sqlite" version="3.8.3" />
22 <package name="sqlite" version="3.8.3" /> 22 </repository>
23 </repository> 23 </action>
24 </action> 24
25 25 <action type="shell_command">
26 <action type="shell_command">
27 # The python build system doesn't check CPATH / C(PLUS)_INCLUDE_PATH which is set by the depended-upon 26 # The python build system doesn't check CPATH / C(PLUS)_INCLUDE_PATH which is set by the depended-upon
28 # tool definitions for these sources, but it does check CPPFLAGS / LDFLAGS 27 # tool definitions for these sources, but it does check CPPFLAGS / LDFLAGS
29 # Currently not whitespace-safe, I haven't found a way yet to quote the *FLAGS values so that they are 28 # Currently not whitespace-safe, I haven't found a way yet to quote the *FLAGS values so that they are
30 # correctly recognized by both the python build process and the compiler. But as galaxy itself isn't 29 # correctly recognized by both the python build process and the compiler. But as galaxy itself isn't
31 # whitespace-safe either it doesn't really matter (currently). 30 # whitespace-safe either it doesn't really matter (currently).
45 44
46 # Clear variables that may be used in Galaxy's extenal python 2 environment 45 # Clear variables that may be used in Galaxy's extenal python 2 environment
47 unset PYTHONPATH 46 unset PYTHONPATH
48 unset PYTHONHOME 47 unset PYTHONHOME
49 48
50 ./configure --prefix="$INSTALL_DIR" \ 49 ./configure --prefix="$INSTALL_DIR" --without-ensurepip \
51 &amp;&amp; make \ 50 &amp;&amp; make \
52 &amp;&amp; make install 51 &amp;&amp; make install
53 </action> 52 </action>
54 53
55 <action type="set_environment"> 54 <action type="set_environment">
56 <environment_variable action="prepend_to" name="PATH">$INSTALL_DIR/bin</environment_variable> 55 <environment_variable action="prepend_to" name="PATH">$INSTALL_DIR/bin</environment_variable>
57 <environment_variable action="prepend_to" name="LD_LIBRARY_PATH">$ENV[LD_LIBRARY_PATH]</environment_variable> 56 <environment_variable action="prepend_to" name="LD_LIBRARY_PATH">$ENV[ZLIB_ROOT_PATH]/lib</environment_variable>
58 <!-- clear PYTHONPATH, otherwise we will get Galaxy's Python 2 libraries in the Python 3 path. --> 57 <environment_variable action="prepend_to" name="LD_LIBRARY_PATH">$ENV[SQLITE_ROOT_DIR]/lib</environment_variable>
59 <environment_variable action="set_to" name="PYTHONPATH" /> 58 <!-- clear PYTHONPATH, otherwise we will get Galaxy's Python 2 libraries in the Python 3 path. -->
60 <environment_variable action="set_to" name="PYTHONHOME">$INSTALL_DIR</environment_variable> 59 <environment_variable action="set_to" name="PYTHONPATH" />
61 <environment_variable action="prepend_to" name="PKG_CONFIG_PATH">$INSTALL_DIR/lib/pkgconfig</environment_variable> 60 <environment_variable action="set_to" name="PYTHONHOME">$INSTALL_DIR</environment_variable>
62 <!-- fix too strict compiler settings under Python 3.4 --> 61 <environment_variable action="prepend_to" name="PKG_CONFIG_PATH">$INSTALL_DIR/lib/pkgconfig</environment_variable>
63 <environment_variable action="set_to" name="CFLAGS">"$ENV[CFLAGS] -Wno-error=declaration-after-statement"</environment_variable> 62 </action>
64 </action> 63 </actions>
65 </actions> 64 </install>
66 </install> 65
67 <readme> 66 <readme>
68 The Python programming language version 3.4 67 The Python programming language version 3.4
69 68
70 http://www.python.org 69 http://www.python.org
71 70
72 71
73 A lean build of Python 3.4.x. 72 A lean build of Python 3.4.x.
74 73
75 This package receives bug fixes within the 3.4 release series! 74 This package receives bug fixes within the 3.4 release series!
76 75
77 It contains the zlib and sqlite3 modules as the only stdlib modules with 76 Currently, it contains the zlib and sqlite3 modules as the only stdlib
78 external dependencies (handled in here by depending on package_zlib_1_2_8 77 modules with external dependencies (handled in here by depending on
79 and package_sqlite_3_8_3). 78 package_zlib_1_2_8 and package_sqlite_3_8_3).
80 79
81 In particular, this build does not compile Python's ssl module (which 80 In particular, this build does not compile Python's ssl module (which
82 would cause dependency on openssl and, in turn, on Perl). 81 would cause dependency on openssl and, in turn, on Perl).
83 82
84 This means that **the pip installation tool will not be available with 83 This means that **the pip installation tool will not be available with
85 this build** !! 84 this build** !!
86 85
87 For a full build (including the ssl module) look at 86 For a full build (including the ssl module) look at
88 https://toolshed.g2.bx.psu.edu/view/jankanis/package_python3_4 87 https://toolshed.g2.bx.psu.edu/view/iuc/package_python_3_4/
89 written by jankanis, of which this package is a shameless plagiarism. 88 issued by the IUC.
90 89
91 This version of Python includes a built-in virtual environment manager. 90 This version of Python includes a built-in virtual environment manager.
92 To create a Python 3 virtual env, include the following actions in your 91 To create a Python 3 virtual env, include the following actions in your
93 tool_dependencies.xml, e.g. for a package MY_TOOL_venv: 92 tool_dependencies.xml, e.g. for a package MY_TOOL_venv:
94 93
95 &lt;action type="set_environment_for_install"&gt; 94 &lt;action type="set_environment_for_install"&gt;
96 &lt;repository name="package_python3_zlib_dependent_1_0" owner="wolma"&gt; 95 &lt;repository name="package_python_3_4_x_lean" owner="wolma"&gt;
97 &lt;package name="python3" version="3.4" /&gt; 96 &lt;package name="python3" version="3.4" /&gt;
98 &lt;/repository&gt; 97 &lt;/repository&gt;
99 &lt;!-- other install time dependencies --&gt; 98 &lt;!-- other install time dependencies --&gt;
100 &lt;/action&gt; 99 &lt;/action&gt;
101 100
103 102
104 # Create virtual environment MY_TOOL_venv 103 # Create virtual environment MY_TOOL_venv
105 # pip cannot be used for installation because it depends on ssl, 104 # pip cannot be used for installation because it depends on ssl,
106 # which this build does not provide 105 # which this build does not provide
107 106
108 pyvenv --without-pip $INSTALL_DIR/MY_TOOL_venv 107 python3 -m venv --without-pip $INSTALL_DIR/MY_TOOL_venv
108
109 # optional: install setuptools if required
109 110
110 # install python packages 111 # install python packages
111 # assuming you are in the download directory of the package 112 # assuming you are in the download directory of the package
112 113
113 $INSTALL_DIR/MY_TOOL_venv/bin/python3 setup.py install 114 $INSTALL_DIR/MY_TOOL_venv/bin/python3 setup.py install
114 &lt;/action&gt; 115 &lt;/action&gt;
115 116
116 For an example of how this could used by a package look at the 117 For a full example look at the tool_dependencies file of:
117 tool_dependencies file of:
118 118
119 https://toolshed.g2.bx.psu.edu/view/wolma/mimodd 119 https://toolshed.g2.bx.psu.edu/view/wolma/mimodd
120 120
121 </readme> 121 </readme>
122 </package> 122 </package>
123 </tool_dependency> 123 </tool_dependency>