Mercurial > repos > jankanis > package_python3_4
annotate tool_dependencies.xml @ 11:bad79cc1a7b1 draft
Use CPPFLAGS instead of CFLAGS
| author | jankanis |
|---|---|
| date | Sat, 24 May 2014 18:38:31 -0400 |
| parents | 30e2c5ac5550 |
| children | 4091cf3b81e5 |
| 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"> |
| 11 | 34 # The python build system doesn't check CPATH / C(PLUS)_INCLUDE_PATH which is set by the depended-upon |
| 35 # tool definitions for these sources, but it does check CPPFLAGS / LDFLAGS | |
| 36 export CPPFLAGS="$CPPFLAGS -I$SQLITE_ROOT_DIR/lib -I$GDBM_ROOT_PATH/lib -I$OPENSSL_ROOT_DIR/lib" | |
|
9
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 \ |
| 10 | 43 && 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
|
44 </action> |
|
321cacd4ae43
Add dependencies and settings for sqlite and gdbm, so that python can build its packages for those.
jankanis
parents:
5
diff
changeset
|
45 |
| 1 | 46 <action type="set_environment"> |
| 47 <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
|
48 <!-- empty PYTHONPATH, otherwise we will get Galaxy's Python 2 libraries in the Python 3 path --> |
| 1 | 49 <environment_variable action="set_to" name="PYTHONPATH" /> |
| 50 <environment_variable action="set_to" name="PYTHONHOME">$INSTALL_DIR</environment_variable> | |
| 4 | 51 <environment_variable action="prepend_to" name="PKG_CONFIG_PATH">$INSTALL_DIR/lib/pkgconfig</environment_variable> |
| 1 | 52 </action> |
| 0 | 53 </actions> |
| 54 </install> | |
| 55 | |
| 56 <readme> | |
| 57 Python 3.4.1. Configured with the default settings, using --prefix=$INSTALL_DIR. | |
| 58 | |
| 59 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: | |
| 60 | |
| 61 <action type="set_environment_for_install"> | |
| 1 | 62 <repository name="python3" owner="jankanis"> |
| 0 | 63 <package name="python3" version="3.4.1" /> |
| 1 | 64 </repository> |
| 0 | 65 </action> |
| 66 <action type="shell_command"> | |
| 1 | 67 # Unset any saved environment settings from parent virtual |
| 68 # environments, e.g. for python 2 or if Galaxy itself is running | |
| 69 # from within a virtual environment. | |
| 70 unset _OLD_VIRTUAL_PATH; unset _OLD_VIRTUAL_PYTHONHOME | |
| 3 | 71 pyvenv {{\$MY_PACKAGE_NAME}} |
| 72 . {{\$MY_PACKAGE_NAME}}/bin/activate | |
| 73 pip3 install {{\$PYTHON-PACKAGE}} | |
| 0 | 74 </action> |
| 75 <action type="set_environment"> | |
| 3 | 76 <environment_variable name="PYTHONPATH" action="prepend_to">\$INSTALL_DIR/lib/python3.4/site-packages</environment_variable> |
| 0 | 77 </action> |
| 78 | |
| 79 </readme> | |
| 80 | |
| 81 </package> | |
| 82 </tool_dependency> |
