annotate tool_dependencies.xml @ 9:d3ea5f1b4d79 draft

Another attempt at getting the environment settings right.
author jankanis
date Sat, 24 May 2014 17:54:04 -0400
parents a468d4d76af3
children 30e2c5ac5550
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
e9407b729a69 Uploaded
jankanis
parents:
diff changeset
1 <?xml version="1.0"?>
e9407b729a69 Uploaded
jankanis
parents:
diff changeset
2 <tool_dependency>
e9407b729a69 Uploaded
jankanis
parents:
diff changeset
3 <package name="openssl" version="1.0.1g">
7
34e257e3aceb add prior_installation_required
jankanis
parents: 6
diff changeset
4 <repository changeset_revision="23ebff671a20" name="package_openssl" owner="jankanis" prior_installation_required="True" toolshed="http://toolshed.g2.bx.psu.edu" />
0
e9407b729a69 Uploaded
jankanis
parents:
diff changeset
5 </package>
e9407b729a69 Uploaded
jankanis
parents:
diff changeset
6
6
321cacd4ae43 Add dependencies and settings for sqlite and gdbm, so that python can build its packages for those.
jankanis
parents: 5
diff changeset
7 <package name="sqlite" version="3.8.3">
7
34e257e3aceb add prior_installation_required
jankanis
parents: 6
diff changeset
8 <repository changeset_revision="706b1f3b1fc0" name="package_sqlite_3_8_3" owner="iuc" prior_installation_required="True" toolshed="http://toolshed.g2.bx.psu.edu" />
6
321cacd4ae43 Add dependencies and settings for sqlite and gdbm, so that python can build its packages for those.
jankanis
parents: 5
diff changeset
9 </package>
321cacd4ae43 Add dependencies and settings for sqlite and gdbm, so that python can build its packages for those.
jankanis
parents: 5
diff changeset
10
321cacd4ae43 Add dependencies and settings for sqlite and gdbm, so that python can build its packages for those.
jankanis
parents: 5
diff changeset
11 <package name="gdbm" version="1.11">
7
34e257e3aceb add prior_installation_required
jankanis
parents: 6
diff changeset
12 <repository changeset_revision="15e7435c2663" name="package_gdbm_1_11" owner="iuc" prior_installation_required="True" toolshed="http://toolshed.g2.bx.psu.edu" />
6
321cacd4ae43 Add dependencies and settings for sqlite and gdbm, so that python can build its packages for those.
jankanis
parents: 5
diff changeset
13 </package>
321cacd4ae43 Add dependencies and settings for sqlite and gdbm, so that python can build its packages for those.
jankanis
parents: 5
diff changeset
14
321cacd4ae43 Add dependencies and settings for sqlite and gdbm, so that python can build its packages for those.
jankanis
parents: 5
diff changeset
15
0
e9407b729a69 Uploaded
jankanis
parents:
diff changeset
16 <package name="python3" version="3.4.1">
e9407b729a69 Uploaded
jankanis
parents:
diff changeset
17 <install version="1.0">
e9407b729a69 Uploaded
jankanis
parents:
diff changeset
18 <actions>
1
09faf0ae581b Fix some whitespace
jankanis
parents: 0
diff changeset
19 <action type="download_by_url">https://www.python.org/ftp/python/3.4.1/Python-3.4.1.tgz</action>
9
d3ea5f1b4d79 Another attempt at getting the environment settings right.
jankanis
parents: 8
diff changeset
20
0
e9407b729a69 Uploaded
jankanis
parents:
diff changeset
21 <action type="set_environment_for_install">
7
34e257e3aceb add prior_installation_required
jankanis
parents: 6
diff changeset
22 <repository changeset_revision="23ebff671a20" name="package_openssl" owner="jankanis" toolshed="http://toolshed.g2.bx.psu.edu">
0
e9407b729a69 Uploaded
jankanis
parents:
diff changeset
23 <package name="openssl" version="1.0.1g" />
e9407b729a69 Uploaded
jankanis
parents:
diff changeset
24 </repository>
7
34e257e3aceb add prior_installation_required
jankanis
parents: 6
diff changeset
25 <repository changeset_revision="706b1f3b1fc0" name="package_sqlite_3_8_3" owner="iuc" toolshed="http://toolshed.g2.bx.psu.edu">
6
321cacd4ae43 Add dependencies and settings for sqlite and gdbm, so that python can build its packages for those.
jankanis
parents: 5
diff changeset
26 <package name="sqlite" version="3.8.3" />
321cacd4ae43 Add dependencies and settings for sqlite and gdbm, so that python can build its packages for those.
jankanis
parents: 5
diff changeset
27 </repository>
7
34e257e3aceb add prior_installation_required
jankanis
parents: 6
diff changeset
28 <repository changeset_revision="15e7435c2663" name="package_gdbm_1_11" owner="iuc" toolshed="http://toolshed.g2.bx.psu.edu">
6
321cacd4ae43 Add dependencies and settings for sqlite and gdbm, so that python can build its packages for those.
jankanis
parents: 5
diff changeset
29 <package name="gdbm" version="1.11" />
321cacd4ae43 Add dependencies and settings for sqlite and gdbm, so that python can build its packages for those.
jankanis
parents: 5
diff changeset
30 </repository>
0
e9407b729a69 Uploaded
jankanis
parents:
diff changeset
31 </action>
6
321cacd4ae43 Add dependencies and settings for sqlite and gdbm, so that python can build its packages for those.
jankanis
parents: 5
diff changeset
32
9
d3ea5f1b4d79 Another attempt at getting the environment settings right.
jankanis
parents: 8
diff changeset
33 <action type="shell_command">
d3ea5f1b4d79 Another attempt at getting the environment settings right.
jankanis
parents: 8
diff changeset
34 # The python build system doesn't check C_INCLUDE_PATH which is set by the depended-upon tool
d3ea5f1b4d79 Another attempt at getting the environment settings right.
jankanis
parents: 8
diff changeset
35 # definitions for these sources, but it does check CFLAGS.
d3ea5f1b4d79 Another attempt at getting the environment settings right.
jankanis
parents: 8
diff changeset
36 export CFLAGS="$CFLAGS -I$SQLITE_ROOT_DIR/lib -I$GDBM_ROOT_PATH/lib -I$OPENSSL_ROOT_DIR/lib"
d3ea5f1b4d79 Another attempt at getting the environment settings right.
jankanis
parents: 8
diff changeset
37 export LDFLAGS="$LDFLAGS -L$SQLITE_ROOT_DIR/include -L$GDBM_ROOT_PATH/include -L$OPENSSL_ROOT_DIR/include"
d3ea5f1b4d79 Another attempt at getting the environment settings right.
jankanis
parents: 8
diff changeset
38 # Clear variables that may be used in Galaxy's extenal python 2 environment
d3ea5f1b4d79 Another attempt at getting the environment settings right.
jankanis
parents: 8
diff changeset
39 unset PYTHONPATH
d3ea5f1b4d79 Another attempt at getting the environment settings right.
jankanis
parents: 8
diff changeset
40 unset PYTHONHOME
d3ea5f1b4d79 Another attempt at getting the environment settings right.
jankanis
parents: 8
diff changeset
41 ./configure --prefix=$INSTALL_DIR --with-ensurepip --enable-loadable-sqlite-extensions \
d3ea5f1b4d79 Another attempt at getting the environment settings right.
jankanis
parents: 8
diff changeset
42 &amp;&amp; make \
d3ea5f1b4d79 Another attempt at getting the environment settings right.
jankanis
parents: 8
diff changeset
43 &amp;&amp; make instal
6
321cacd4ae43 Add dependencies and settings for sqlite and gdbm, so that python can build its packages for those.
jankanis
parents: 5
diff changeset
44 </action>
9
d3ea5f1b4d79 Another attempt at getting the environment settings right.
jankanis
parents: 8
diff changeset
45 <action type="make_install" />
6
321cacd4ae43 Add dependencies and settings for sqlite and gdbm, so that python can build its packages for those.
jankanis
parents: 5
diff changeset
46
1
09faf0ae581b Fix some whitespace
jankanis
parents: 0
diff changeset
47 <action type="set_environment">
09faf0ae581b Fix some whitespace
jankanis
parents: 0
diff changeset
48 <environment_variable action="prepend_to" name="PATH">$INSTALL_DIR/bin</environment_variable>
6
321cacd4ae43 Add dependencies and settings for sqlite and gdbm, so that python can build its packages for those.
jankanis
parents: 5
diff changeset
49 <!-- empty PYTHONPATH, otherwise we will get Galaxy's Python 2 libraries in the Python 3 path -->
1
09faf0ae581b Fix some whitespace
jankanis
parents: 0
diff changeset
50 <environment_variable action="set_to" name="PYTHONPATH" />
09faf0ae581b Fix some whitespace
jankanis
parents: 0
diff changeset
51 <environment_variable action="set_to" name="PYTHONHOME">$INSTALL_DIR</environment_variable>
4
9491d3c0dbe6 Add --with-ensurepip
jankanis
parents: 3
diff changeset
52 <environment_variable action="prepend_to" name="PKG_CONFIG_PATH">$INSTALL_DIR/lib/pkgconfig</environment_variable>
1
09faf0ae581b Fix some whitespace
jankanis
parents: 0
diff changeset
53 </action>
0
e9407b729a69 Uploaded
jankanis
parents:
diff changeset
54 </actions>
e9407b729a69 Uploaded
jankanis
parents:
diff changeset
55 </install>
e9407b729a69 Uploaded
jankanis
parents:
diff changeset
56
e9407b729a69 Uploaded
jankanis
parents:
diff changeset
57 <readme>
e9407b729a69 Uploaded
jankanis
parents:
diff changeset
58 Python 3.4.1. Configured with the default settings, using --prefix=$INSTALL_DIR.
e9407b729a69 Uploaded
jankanis
parents:
diff changeset
59
e9407b729a69 Uploaded
jankanis
parents:
diff changeset
60 Python as of version 3.3 includes a built-in virtual environment manager. To create a python 3 virtual env, include the following actions in your tool_dependencies.xml:
e9407b729a69 Uploaded
jankanis
parents:
diff changeset
61
e9407b729a69 Uploaded
jankanis
parents:
diff changeset
62 &lt;action type="set_environment_for_install"&gt;
1
09faf0ae581b Fix some whitespace
jankanis
parents: 0
diff changeset
63 &lt;repository name="python3" owner="jankanis"&gt;
0
e9407b729a69 Uploaded
jankanis
parents:
diff changeset
64 &lt;package name="python3" version="3.4.1" /&gt;
1
09faf0ae581b Fix some whitespace
jankanis
parents: 0
diff changeset
65 &lt;/repository&gt;
0
e9407b729a69 Uploaded
jankanis
parents:
diff changeset
66 &lt;/action&gt;
e9407b729a69 Uploaded
jankanis
parents:
diff changeset
67 &lt;action type="shell_command"&gt;
1
09faf0ae581b Fix some whitespace
jankanis
parents: 0
diff changeset
68 # Unset any saved environment settings from parent virtual
09faf0ae581b Fix some whitespace
jankanis
parents: 0
diff changeset
69 # environments, e.g. for python 2 or if Galaxy itself is running
09faf0ae581b Fix some whitespace
jankanis
parents: 0
diff changeset
70 # from within a virtual environment.
09faf0ae581b Fix some whitespace
jankanis
parents: 0
diff changeset
71 unset _OLD_VIRTUAL_PATH; unset _OLD_VIRTUAL_PYTHONHOME
3
d71cfcee2977 Fix openssl search path in setup.py
jankanis
parents: 2
diff changeset
72 pyvenv {{\$MY_PACKAGE_NAME}}
d71cfcee2977 Fix openssl search path in setup.py
jankanis
parents: 2
diff changeset
73 . {{\$MY_PACKAGE_NAME}}/bin/activate
d71cfcee2977 Fix openssl search path in setup.py
jankanis
parents: 2
diff changeset
74 pip3 install {{\$PYTHON-PACKAGE}}
0
e9407b729a69 Uploaded
jankanis
parents:
diff changeset
75 &lt;/action&gt;
e9407b729a69 Uploaded
jankanis
parents:
diff changeset
76 &lt;action type="set_environment"&gt;
3
d71cfcee2977 Fix openssl search path in setup.py
jankanis
parents: 2
diff changeset
77 &lt;environment_variable name="PYTHONPATH" action="prepend_to"&gt;\$INSTALL_DIR/lib/python3.4/site-packages&lt;/environment_variable&gt;
0
e9407b729a69 Uploaded
jankanis
parents:
diff changeset
78 &lt;/action&gt;
e9407b729a69 Uploaded
jankanis
parents:
diff changeset
79
e9407b729a69 Uploaded
jankanis
parents:
diff changeset
80 </readme>
e9407b729a69 Uploaded
jankanis
parents:
diff changeset
81
e9407b729a69 Uploaded
jankanis
parents:
diff changeset
82 </package>
e9407b729a69 Uploaded
jankanis
parents:
diff changeset
83 </tool_dependency>