Mercurial > repos > jankanis > package_python3_4
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 |
rev | line source |
---|---|
0 | 1 <?xml version="1.0"?> |
2 <tool_dependency> | |
3 <package name="openssl" version="1.0.1g"> | |
7 | 4 <repository changeset_revision="23ebff671a20" name="package_openssl" owner="jankanis" prior_installation_required="True" toolshed="http://toolshed.g2.bx.psu.edu" /> |
0 | 5 </package> |
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 | 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 | 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 | 16 <package name="python3" version="3.4.1"> |
17 <install version="1.0"> | |
18 <actions> | |
1 | 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 | 21 <action type="set_environment_for_install"> |
7 | 22 <repository changeset_revision="23ebff671a20" name="package_openssl" owner="jankanis" toolshed="http://toolshed.g2.bx.psu.edu"> |
0 | 23 <package name="openssl" version="1.0.1g" /> |
24 </repository> | |
7 | 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 | 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 | 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 && make \ |
d3ea5f1b4d79
Another attempt at getting the environment settings right.
jankanis
parents:
8
diff
changeset
|
43 && 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 | 47 <action type="set_environment"> |
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 | 50 <environment_variable action="set_to" name="PYTHONPATH" /> |
51 <environment_variable action="set_to" name="PYTHONHOME">$INSTALL_DIR</environment_variable> | |
4 | 52 <environment_variable action="prepend_to" name="PKG_CONFIG_PATH">$INSTALL_DIR/lib/pkgconfig</environment_variable> |
1 | 53 </action> |
0 | 54 </actions> |
55 </install> | |
56 | |
57 <readme> | |
58 Python 3.4.1. Configured with the default settings, using --prefix=$INSTALL_DIR. | |
59 | |
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: | |
61 | |
62 <action type="set_environment_for_install"> | |
1 | 63 <repository name="python3" owner="jankanis"> |
0 | 64 <package name="python3" version="3.4.1" /> |
1 | 65 </repository> |
0 | 66 </action> |
67 <action type="shell_command"> | |
1 | 68 # Unset any saved environment settings from parent virtual |
69 # environments, e.g. for python 2 or if Galaxy itself is running | |
70 # from within a virtual environment. | |
71 unset _OLD_VIRTUAL_PATH; unset _OLD_VIRTUAL_PYTHONHOME | |
3 | 72 pyvenv {{\$MY_PACKAGE_NAME}} |
73 . {{\$MY_PACKAGE_NAME}}/bin/activate | |
74 pip3 install {{\$PYTHON-PACKAGE}} | |
0 | 75 </action> |
76 <action type="set_environment"> | |
3 | 77 <environment_variable name="PYTHONPATH" action="prepend_to">\$INSTALL_DIR/lib/python3.4/site-packages</environment_variable> |
0 | 78 </action> |
79 | |
80 </readme> | |
81 | |
82 </package> | |
83 </tool_dependency> |